DSDP
Typedefs | Enumerations | Functions
dsdpbasictypes.h File Reference

Solver, solution types, termination codes,. More...

Go to the source code of this file.

Typedefs

typedef struct DSDP_CDSDP
 An implementation of the dual-scaling algorithm for semidefinite programming. More...
 

Enumerations

enum  DSDPDualFactorMatrix {
  DUAL_FACTOR = 1,
  PRIMAL_FACTOR = 2
}
 DSDP requires two instances of the data structures S. More...
 
enum  DSDPSolutionType {
  DSDP_PDUNKNOWN = 0,
  DSDP_PDFEASIBLE = 1,
  DSDP_UNBOUNDED = 3,
  DSDP_INFEASIBLE = 4
}
 Formulations (P) and (D) can be feasible and bounded, feasible and unbounded, or infeasible. More...
 
enum  DSDPTerminationReason {
  DSDP_CONVERGED = 1,
  DSDP_INFEASIBLE_START = -6,
  DSDP_SMALL_STEPS = -2,
  DSDP_INDEFINITE_SCHUR_MATRIX = -8,
  DSDP_MAX_IT = -3,
  DSDP_NUMERICAL_ERROR = -9,
  DSDP_UPPERBOUND = 5,
  DSDP_USER_TERMINATION = 7,
  CONTINUE_ITERATING = 0
}
 There are many reasons to terminate the solver. More...
 
enum  DSDPTruth {
  DSDP_FALSE = 0,
  DSDP_TRUE = 1
}
 Boolean variables. More...
 

Functions

int DSDPSetConvergenceFlag (DSDP, DSDPTerminationReason)
 Monitor each iteration of the solver. More...
 

Detailed Description

Solver, solution types, termination codes,.

Definition in file dsdpbasictypes.h.

Typedef Documentation

◆ DSDP

struct DSDP_C * DSDP

An implementation of the dual-scaling algorithm for semidefinite programming.

Definition at line 13 of file dsdpbasictypes.h.

Enumeration Type Documentation

◆ DSDPDualFactorMatrix

DSDP requires two instances of the data structures S.

Enumerator
DUAL_FACTOR 

First instance for dual variable S

PRIMAL_FACTOR 

Second instance used to compute X

Definition at line 25 of file dsdpbasictypes.h.

◆ DSDPSolutionType

enum enum DSDPSolutionType

Formulations (P) and (D) can be feasible and bounded, feasible and unbounded, or infeasible.

See also
DSDPGetSolutionType()
Enumerator
DSDP_PDUNKNOWN 

Not sure whether (D) or (P) is feasible, check y bounds

DSDP_PDFEASIBLE 

Both (D) and (P) are feasible and bounded

DSDP_UNBOUNDED 

(D) is unbounded and (P) is infeasible

DSDP_INFEASIBLE 

(D) in infeasible and (P) is unbounded

Definition at line 38 of file dsdpbasictypes.h.

◆ DSDPTerminationReason

There are many reasons to terminate the solver.

See also
DSDPStopReason()
Enumerator
DSDP_CONVERGED 

Good news: Solution found.

DSDP_INFEASIBLE_START 

The initial points y and r imply that S is not positive

DSDP_SMALL_STEPS 

Short step lengths created by numerical difficulties prevent progress

DSDP_INDEFINITE_SCHUR_MATRIX 

Theoretically this matrix is positive definite

DSDP_MAX_IT 

Reached maximum number of iterations

DSDP_NUMERICAL_ERROR 

Another numerical error occurred. Check solution

DSDP_UPPERBOUND 

Objective (DD) big enough to stop

DSDP_USER_TERMINATION 

DSDP didn't stop it, did you?

CONTINUE_ITERATING 

Don't Stop

Definition at line 50 of file dsdpbasictypes.h.

◆ DSDPTruth

enum enum DSDPTruth

Boolean variables.

Enumerator
DSDP_FALSE 

0

DSDP_TRUE 

1

Definition at line 19 of file dsdpbasictypes.h.