dsdpdualmat.h File Reference

The interface between the SDPCone and the matrix S. More...

Go to the source code of this file.

Data Structures

struct  DSDPDualMat_C
 Represents an S matrix for one block in the semidefinite cone. More...

Typedefs

typedef struct DSDPDualMat_C DSDPDualMat
 Represents an S matrix for one block in the semidefinite cone.

Functions

int DSDPDualMatCholeskyBackwardMultiply (DSDPDualMat, SDPConeVec, SDPConeVec)
 Multiply by triangular matrix.
int DSDPDualMatCholeskyFactor (DSDPDualMat, DSDPTruth *)
 Factor the matrix.
int DSDPDualMatCholeskyForwardMultiply (DSDPDualMat, SDPConeVec, SDPConeVec)
 Multiply by triangular matrix.
int DSDPDualMatCholeskySolveBackward (DSDPDualMat, SDPConeVec, SDPConeVec)
 Backward triangular solve.
int DSDPDualMatCholeskySolveForward (DSDPDualMat, SDPConeVec, SDPConeVec)
 Forward triangular solve.
int DSDPDualMatDestroy (DSDPDualMat *)
 Free the matrix structure.
int DSDPDualMatGetSize (DSDPDualMat, int *)
 Free the matrix structure.
int DSDPDualMatInitialize (DSDPDualMat *)
 Set pointers to null.
int DSDPDualMatInverseAdd (DSDPDualMat, double, DSDPVMat)
 Add a multiple of the inverse to T.
int DSDPDualMatInverseMultiply (DSDPDualMat, DSDPIndex, SDPConeVec, SDPConeVec)
 Multiply the inverse by a vector or solve the system of equations.
int DSDPDualMatInvert (DSDPDualMat)
 Invert the matrix.
int DSDPDualMatIsFull (DSDPDualMat, DSDPTruth *)
 Factor the matrix.
int DSDPDualMatLogDeterminant (DSDPDualMat, double *)
 Free the matrix structure.
int DSDPDualMatSetArray (DSDPDualMat, DSDPVMat)
 Print the matrix.
int DSDPDualMatSetData (DSDPDualMat *, struct DSDPDualMat_Ops *, void *)
 Set the opaque pointer and function pointers to the matrix.
int DSDPDualMatView (DSDPDualMat)
 Print the matrix.

Detailed Description

The interface between the SDPCone and the matrix S.

Definition in file dsdpdualmat.h.


Typedef Documentation

Represents an S matrix for one block in the semidefinite cone.

Definition at line 27 of file dsdpdualmat.h.


Function Documentation

int DSDPDualMatCholeskyBackwardMultiply ( DSDPDualMat  S,
SDPConeVec  B,
SDPConeVec  X 
)

Multiply by triangular matrix.

Parameters:
S dual matrix
B in vector
X product Assumes Cholesky factorization successful.

Definition at line 373 of file dsdpdualmat.c.

Referenced by SDPConeXVMultiply().

int DSDPDualMatCholeskyFactor ( DSDPDualMat  S,
DSDPTruth psdefinite 
)

Factor the matrix.

Parameters:
S dual matrix
psdefinite true if S is positive definite and factorization successful.

Definition at line 320 of file dsdpdualmat.c.

Referenced by SDPConeComputeX3(), and SDPConeComputeXV().

int DSDPDualMatCholeskyForwardMultiply ( DSDPDualMat  S,
SDPConeVec  B,
SDPConeVec  X 
)

Multiply by triangular matrix.

Parameters:
S dual matrix
B in vector
X product Assumes Cholesky factorization successful.

Definition at line 346 of file dsdpdualmat.c.

Referenced by SDPConeXVMultiply().

int DSDPDualMatCholeskySolveBackward ( DSDPDualMat  S,
SDPConeVec  B,
SDPConeVec  X 
)

Backward triangular solve.

Parameters:
S dual matrix
B Right-hand side of triangular system
X Solution to triangular system. Assumes Cholesky factorization successful.

Definition at line 295 of file dsdpdualmat.c.

Referenced by SDPConeXVMultiply().

int DSDPDualMatCholeskySolveForward ( DSDPDualMat  S,
SDPConeVec  B,
SDPConeVec  X 
)

Forward triangular solve.

Parameters:
S dual matrix
B Right-hand side of triangular system
X Solution to triangular system. Assumes Cholesky factorization successful.

Definition at line 267 of file dsdpdualmat.c.

Referenced by SDPConeXVMultiply().

int DSDPDualMatDestroy ( DSDPDualMat S  ) 

Free the matrix structure.

Parameters:
S dual matrix

Definition at line 65 of file dsdpdualmat.c.

Referenced by DSDPBlockTakeDown().

int DSDPDualMatGetSize ( DSDPDualMat  S,
int *  n 
)

Free the matrix structure.

Parameters:
S dual matrix
n dimension

Definition at line 87 of file dsdpdualmat.c.

int DSDPDualMatInitialize ( DSDPDualMat S  ) 

Set pointers to null.

Parameters:
S dual matrix

Definition at line 471 of file dsdpdualmat.c.

Referenced by DSDPBlockInitialize().

int DSDPDualMatInverseAdd ( DSDPDualMat  S,
double  alpha,
DSDPVMat  T 
)

Add a multiple of the inverse to T.

Parameters:
S dual matrix
alpha scalar
T destination. Assumes matrix already inverted.

Definition at line 209 of file dsdpdualmat.c.

Referenced by SDPConeComputeRHS(), and SDPConeComputeXX().

int DSDPDualMatInverseMultiply ( DSDPDualMat  S,
DSDPIndex  IS,
SDPConeVec  B,
SDPConeVec  X 
)

Multiply the inverse by a vector or solve the system of equations.

Parameters:
S dual matrix
IS Sparsity pattern of B
B Right-hand side of linear system
X product, or solution to linear system. Assumes matrix already inverted.

Definition at line 236 of file dsdpdualmat.c.

Referenced by SDPConeComputeHessian(), SDPConeComputeRHS(), SDPConeComputeXX(), and SDPConeMultiply().

int DSDPDualMatInvert ( DSDPDualMat  S  ) 

Invert the matrix.

Parameters:
S dual matrix Assumes Cholesky factorization was successful. This routine may not actually invert the matrix. It give the matrix the opportunity to invert it.

Definition at line 186 of file dsdpdualmat.c.

Referenced by SDPConeComputeX3().

int DSDPDualMatIsFull ( DSDPDualMat  S,
DSDPTruth full 
)

Factor the matrix.

Parameters:
S dual matrix
full true if S is a dense structure.

Definition at line 397 of file dsdpdualmat.c.

Referenced by SDPConeComputeX3().

int DSDPDualMatLogDeterminant ( DSDPDualMat  S,
double *  logdet 
)

Free the matrix structure.

Parameters:
S dual matrix
logdet logarithm of the determinant Assumes Cholesky factorization was successful.

Definition at line 122 of file dsdpdualmat.c.

int DSDPDualMatSetArray ( DSDPDualMat  S,
DSDPVMat  T 
)

Print the matrix.

Parameters:
S dual matrix
T Dense array matrix.

Definition at line 160 of file dsdpdualmat.c.

Referenced by SDPConeComputeX3(), and SDPConeComputeXV().

int DSDPDualMatSetData ( DSDPDualMat S,
struct DSDPDualMat_Ops ops,
void *  data 
)

Set the opaque pointer and function pointers to the matrix.

Parameters:
S dual matrix
ops pointer to a structure of function pointers
data pointer to a matrix structure

Definition at line 49 of file dsdpdualmat.c.

Referenced by DSDPDualMatDestroy(), and DSDPDualMatInitialize().

int DSDPDualMatView ( DSDPDualMat  S  ) 

Print the matrix.

Parameters:
S dual matrix

Definition at line 140 of file dsdpdualmat.c.


Generated on Wed Nov 11 20:41:02 2009 for DSDP by  doxygen 1.6.1