Bullet Collision Detection & Physics Library: btDantzigLCP.cpp File Reference

Bullet Collision Detection & Physics Library

Classes | Macros | Functions | Variables
btDantzigLCP.cpp File Reference
`#include "btDantzigLCP.h"`
`#include <string.h>`
Include dependency graph for btDantzigLCP.cpp:

Go to the source code of this file.

## Classes
struct | btLCP

## Macros
#define | btLCP_FAST
#define | BTROWPTRS
#define | BTATYPE btScalar **
#define | BTAROW(i) (m_A[i])
#define | BTNUB_OPTIMIZATIONS
#define | _BTGETA(i, j) (A[i][j])
#define | BTGETA(i, j) ((i > j) ? _BTGETA(i,j) : _BTGETA(j,i))

## Functions
static void | btSolveL1_1 (const btScalar *L, btScalar *B, int n, int lskip1)
static void | btSolveL1_2 (const btScalar *L, btScalar *B, int n, int lskip1)
void | btFactorLDLT (btScalar *A, btScalar *d, int n, int nskip1)
void | btSolveL1 (const btScalar *L, btScalar *B, int n, int lskip1)
void | btSolveL1T (const btScalar *L, btScalar *B, int n, int lskip1)
void | btVectorScale (btScalar *a, const btScalar *d, int n)
void | btSolveLDLT (const btScalar *L, const btScalar *d, btScalar *b, int n, int nskip)
static void | btSwapRowsAndCols (BTATYPE A, int n, int i1, int i2, int nskip, int do_fast_row_swaps)
static void | btSwapProblem (BTATYPE A, btScalar *x, btScalar *b, btScalar *w, btScalar *lo, btScalar *hi, int *p, bool *state, int *findex, int n, int i1, int i2, int nskip, int do_fast_row_swaps)
void | btRemoveRowCol (btScalar *A, int n, int nskip, int r)
void | btLDLTAddTL (btScalar *L, btScalar *d, const btScalar *a, int n, int nskip, btAlignedObjectArray< btScalar > &scratch)
size_t | btEstimateLDLTAddTLTmpbufSize (int nskip)
void | btLDLTRemove (btScalar **A, const int *p, btScalar *L, btScalar *d, int n1, int n2, int r, int nskip, btAlignedObjectArray< btScalar > &scratch)
bool | btSolveDantzigLCP (int n, btScalar *A, btScalar *x, btScalar *b, btScalar *outer_w, int nub, btScalar *lo, btScalar *hi, int *findex, btDantzigScratchMemory &scratchMem)

## Variables
bool | s_error = false

## Macro Definition Documentation

## ◆ _BTGETA

#define _BTGETA | ( |  | i,
|  |  | j
| ) |  | (A[i][j])

Definition at line 1543 of file btDantzigLCP.cpp.

## ◆ BTAROW

#define BTAROW | ( |  | i | ) | (m_A[i])

Definition at line 127 of file btDantzigLCP.cpp.

## ◆ BTATYPE

#define BTATYPE btScalar **

Definition at line 126 of file btDantzigLCP.cpp.

## ◆ BTGETA

#define BTGETA | ( |  | i,
|  |  | j
| ) |  | ((i > j) ? _BTGETA(i,j) : _BTGETA(j,i))

Definition at line 1545 of file btDantzigLCP.cpp.

## ◆ btLCP_FAST

#define btLCP_FAST

Definition at line 122 of file btDantzigLCP.cpp.

## ◆ BTNUB_OPTIMIZATIONS

#define BTNUB_OPTIMIZATIONS

Definition at line 134 of file btDantzigLCP.cpp.

## ◆ BTROWPTRS

#define BTROWPTRS

Definition at line 125 of file btDantzigLCP.cpp.

## Function Documentation

## ◆ btEstimateLDLTAddTLTmpbufSize()

size_t btEstimateLDLTAddTLTmpbufSize | ( | int | nskip | ) |
| inline

Definition at line 1547 of file btDantzigLCP.cpp.

## ◆ btFactorLDLT()

void btFactorLDLT | ( | btScalar * | A,
|  | btScalar * | d,
|  | int | n,
|  | int | nskip1
| ) |  |

Definition at line 304 of file btDantzigLCP.cpp.

## ◆ btLDLTAddTL()

void btLDLTAddTL | ( | btScalar * | L,
|  | btScalar * | d,
|  | const btScalar * | a,
|  | int | n,
|  | int | nskip,
|  | btAlignedObjectArray< btScalar > & | scratch
| ) |  |

Definition at line 1465 of file btDantzigLCP.cpp.

## ◆ btLDLTRemove()

void btLDLTRemove | ( | btScalar ** | A,
|  | const int * | p,
|  | btScalar * | L,
|  | btScalar * | d,
|  | int | n1,
|  | int | n2,
|  | int | r,
|  | int | nskip,
|  | btAlignedObjectArray< btScalar > & | scratch
| ) |  |

Definition at line 1553 of file btDantzigLCP.cpp.

## ◆ btRemoveRowCol()

void btRemoveRowCol | ( | btScalar * | A,
|  | int | n,
|  | int | nskip,
|  | int | r
| ) |  |

Definition at line 1428 of file btDantzigLCP.cpp.

## ◆ btSolveDantzigLCP()

bool btSolveDantzigLCP | ( | int | n,
|  | btScalar * | A,
|  | btScalar * | x,
|  | btScalar * | b,
|  | btScalar * | outer_w,
|  | int | nub,
|  | btScalar * | lo,
|  | btScalar * | hi,
|  | int * | findex,
|  | btDantzigScratchMemory & | scratchMem
| ) |  |

Definition at line 1781 of file btDantzigLCP.cpp.

## ◆ btSolveL1()

void btSolveL1 | ( | const btScalar * | L,
|  | btScalar * | B,
|  | int | n,
|  | int | lskip1
| ) |  |

Definition at line 526 of file btDantzigLCP.cpp.

## ◆ btSolveL1_1()

static void btSolveL1_1 | ( | const btScalar * | L,
|  | btScalar * | B,
|  | int | n,
|  | int | lskip1
| ) |  |
| static

Definition at line 148 of file btDantzigLCP.cpp.

## ◆ btSolveL1_2()

static void btSolveL1_2 | ( | const btScalar * | L,
|  | btScalar * | B,
|  | int | n,
|  | int | lskip1
| ) |  |
| static

Definition at line 220 of file btDantzigLCP.cpp.

## ◆ btSolveL1T()

void btSolveL1T | ( | const btScalar * | L,
|  | btScalar * | B,
|  | int | n,
|  | int | lskip1
| ) |  |

Definition at line 819 of file btDantzigLCP.cpp.

## ◆ btSolveLDLT()

void btSolveLDLT | ( | const btScalar * | L,
|  | const btScalar * | d,
|  | btScalar * | b,
|  | int | n,
|  | int | nskip
| ) |  |

Definition at line 1018 of file btDantzigLCP.cpp.

## ◆ btSwapProblem()

static void btSwapProblem | ( | BTATYPE | A,
|  | btScalar * | x,
|  | btScalar * | b,
|  | btScalar * | w,
|  | btScalar * | lo,
|  | btScalar * | hi,
|  | int * | p,
|  | bool * | state,
|  | int * | findex,
|  | int | n,
|  | int | i1,
|  | int | i2,
|  | int | nskip,
|  | int | do_fast_row_swaps
| ) |  |
| static

Definition at line 1104 of file btDantzigLCP.cpp.

## ◆ btSwapRowsAndCols()

static void btSwapRowsAndCols | ( | BTATYPE | A,
|  | int | n,
|  | int | i1,
|  | int | i2,
|  | int | nskip,
|  | int | do_fast_row_swaps
| ) |  |
| static

Definition at line 1036 of file btDantzigLCP.cpp.

## ◆ btVectorScale()

void btVectorScale | ( | btScalar * | a,
|  | const btScalar * | d,
|  | int | n
| ) |  |

Definition at line 1010 of file btDantzigLCP.cpp.

## Variable Documentation

## ◆ s_error

bool s_error = false

Definition at line 116 of file btDantzigLCP.cpp.