Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Globals | Related Pages

dsdp5.h

00001 #if !defined(__DSDP_INTERFACE_H) 
00002 #define __DSDP_INTERFACE_H
00003 
00008 #include "dsdpbasictypes.h"
00009 #include "dsdpsys.h"
00010 
00026 typedef struct SDPCone_C* SDPCone;
00027 typedef struct LPCone_C* LPCone;
00028 typedef struct BCone_C* BCone;
00029 extern FILE *dsdpoutputfile;
00030 
00031 extern int DSDPLogInfoAllow(int, char*);
00032 
00033 extern int DSDPCreate(int, DSDP *);
00034 extern int DSDPSetup(DSDP);
00035 extern int DSDPSolve(DSDP);
00036 extern int DSDPComputeX(DSDP);
00037 extern int DSDPComputeAndFactorS(DSDP,DSDPTruth*);
00038 extern int DSDPDestroy(DSDP);
00039 
00040 extern int DSDPCreateBCone(DSDP, BCone*);
00041 extern int BConeAllocateBounds(BCone,int);
00042 extern int BConeSetLowerBound(BCone,int, double);
00043 extern int BConeSetUpperBound(BCone,int, double);
00044 extern int BConeSetPSlackVariable(BCone,int);
00045 extern int BConeSetPSurplusVariable(BCone,int);
00046 extern int BConeScaleBarrier(BCone,double);
00047 extern int BConeView(BCone);
00048 extern int BConeSetXArray(BCone,double[], int);
00049 extern int BConeCopyX(BCone,double[],double[],int);
00050 
00051 extern int DSDPBoundDualVariables(DSDP,double, double);
00052 extern int DSDPSetYBounds(DSDP,double,double);
00053 extern int DSDPGetYBounds(DSDP,double*,double*);
00054 
00055 extern int DSDPCreateLPCone(DSDP,LPCone*);
00056 extern int LPConeSetData(LPCone,int,const int[],const int[],const double[]);
00057 extern int LPConeSetData2(LPCone,int,const int[],const int[],const double[]);
00058 extern int LPConeGetData(LPCone,int,double[],int);
00059 extern int LPConeScaleBarrier(LPCone,double);
00060 extern int LPConeGetXArray(LPCone,double*[], int*);
00061 extern int LPConeGetSArray(LPCone,double*[], int*);
00062 extern int LPConeGetDimension(LPCone,int*);
00063 extern int LPConeView(LPCone lpcone);
00064 extern int LPConeView2(LPCone lpcone);
00065 extern int LPConeCopyS(LPCone,double[],int);
00066 
00067 extern int DSDPCreateSDPCone(DSDP, int, SDPCone*);
00068 extern int SDPConeSetBlockSize(SDPCone, int, int);
00069 extern int SDPConeGetBlockSize(SDPCone, int, int*);
00070 extern int SDPConeSetStorageFormat(SDPCone, int, char);
00071 extern int SDPConeGetStorageFormat(SDPCone, int, char*);
00072 extern int SDPConeCheckStorageFormat(SDPCone, int, char);
00073 extern int SDPConeSetSparsity(SDPCone, int, int);
00074 extern int SDPConeView(SDPCone);
00075 extern int SDPConeView2(SDPCone);
00076 extern int SDPConeView3(SDPCone);
00077 
00078 extern int SDPConeSetASparseVecMat(SDPCone,int,int,int,double,int,const int[],const double[],int);
00079 extern int SDPConeSetADenseVecMat(SDPCone,int,int,int,double,double[],int);
00080 /* extern int SDPConeSetDenseMatWSparseData(SDPCone,int, int, int, double*, int*, int*); */
00081 extern int SDPConeSetARankOneMat(SDPCone,int,int,int,double,int,const int[],const double[],int);
00082 extern int SDPConeSetConstantMat(SDPCone,int,int,int,double); 
00083 extern int SDPConeSetZeroMat(SDPCone,int,int,int);
00084 extern int SDPConeSetIdentity(SDPCone,int,int,int,double);
00085 extern int SDPConeViewDataMatrix(SDPCone,int,int);
00086 extern int SDPConeMatrixView(SDPCone,int);
00087 
00088 extern int SDPConeAddASparseVecMat(SDPCone,int,int,int,double,int,const int[],const double[],int);
00089 extern int SDPConeAddADenseVecMat(SDPCone,int,int,int,double,double[],int);
00090 extern int SDPConeAddConstantMat(SDPCone,int,int,int,double); 
00091 extern int SDPConeAddIdentity(SDPCone,int,int,int,double);
00092 extern int SDPConeAddARankOneMat(SDPCone,int,int,int,double,int,const int[],const double[],int);
00093 
00094 /* For backward compatibility */
00095 extern int SDPConeAddSparseVecMat(SDPCone,int,int,int,int,const int[],const double[],int);
00096 extern int SDPConeAddDenseVecMat(SDPCone,int,int,int,double[],int);
00097 extern int SDPConeSetSparseVecMat(SDPCone,int,int,int,int,const int[],const double[],int);
00098 extern int SDPConeSetDenseVecMat(SDPCone,int,int,int,double[],int);
00099 
00100 extern int SDPConeSetXMat(SDPCone,int,int);
00101 extern int SDPConeSetXArray(SDPCone,int,int,double[], int);
00102 extern int SDPConeGetXArray(SDPCone,int,double*[],int*);
00103 extern int SDPConeRestoreXArray(SDPCone,int,double*[],int*);
00104 extern int SDPConeCheckData(SDPCone);
00105 extern int SDPConeRemoveDataMatrix(SDPCone,int,int);
00106 extern int SDPConeGetNumberOfBlocks(SDPCone, int*);
00107 extern int SDPConeComputeS(SDPCone, int, double,double[], int, double,int,double[],int);
00108 extern int SDPConeComputeX(SDPCone,int,int,double[],int);
00109 extern int SDPConeAddADotX(SDPCone,int,double,double[],int,double[],int);
00110 extern int SDPConeViewX(SDPCone,int,int,double[],int);
00111 extern int SDPConeSetLanczosIterations(SDPCone,int);
00112 extern int SDPConeScaleBarrier(SDPCone,int,double); 
00113 extern int SDPConeXVMultiply(SDPCone,int,double[],double[],int);
00114 extern int SDPConeComputeXV(SDPCone,int,int*);
00115 extern int SDPConeAddXVAV(SDPCone,int,double[],int,double[],int);
00116 extern int SDPConeUseLAPACKForDualMatrix(SDPCone,int);
00117 
00118 extern int DSDPSetDualObjective(DSDP,int,double);
00119 extern int DSDPAddObjectiveConstant(DSDP,double);
00120 extern int DSDPGetDObjective(DSDP,double*);
00121 extern int DSDPGetDDObjective(DSDP,double*);
00122 extern int DSDPGetPObjective(DSDP,double*);
00123 extern int DSDPGetPPObjective(DSDP,double*);
00124 /*
00125 extern int DSDPGetDualObjective(DSDP,double*); 
00126 extern int DSDPGetPrimalObjective(DSDP,double*); 
00127 */
00128 #define DSDPGetDualObjective   DSDPGetDDObj
00129 #define DSDPGetPrimalObjective DSDPGetPPObj
00130 extern int DSDPGetDualityGap(DSDP,double*); 
00131 extern int DSDPGetScale(DSDP,double*);
00132 extern int DSDPSetScale(DSDP,double);
00133 extern int DSDPGetPenaltyParameter(DSDP,double*);
00134 extern int DSDPGetPenalty(DSDP,double*);
00135 extern int DSDPCopyB(DSDP,double[], int);
00136 
00137 extern int DSDPSetR0(DSDP,double);
00138 extern int DSDPGetR(DSDP, double *);
00139 extern int DSDPSetRTolerance(DSDP,double);
00140 extern int DSDPGetRTolerance(DSDP,double*);
00141 
00142 extern int DSDPSetY0(DSDP,int, double);
00143 extern int DSDPGetY(DSDP, double[], int);
00144 extern int DSDPGetYMakeX(DSDP, double[], int);
00145 extern int DSDPGetDYMakeX(DSDP, double[], int);
00146 extern int DSDPGetMuMakeX(DSDP, double*);
00147 
00148 #define DSDPSetInitialBarrierParameter DSDPSetBarrierParameter
00149 #define DSDPGetInitialBarrierParameter DSDPGetBarrierParameter
00150 extern int DSDPGetBarrierParameter(DSDP, double *);
00151 extern int DSDPSetBarrierParameter(DSDP, double);
00152 extern int DSDPReuseMatrix(DSDP,int);
00153 extern int DSDPGetReuseMatrix(DSDP,int*);
00154 extern int DSDPGetDimension(DSDP, double*);
00155 
00156 extern int DSDPSetMaxIts(DSDP,int); 
00157 extern int DSDPGetMaxIts(DSDP,int*); 
00158 extern int DSDPSetStepTolerance(DSDP,double);
00159 extern int DSDPGetStepTolerance(DSDP,double*);
00160 extern int DSDPSetGapTolerance(DSDP,double);
00161 extern int DSDPGetGapTolerance(DSDP,double*);
00162 extern int DSDPSetPNormTolerance(DSDP,double);
00163 extern int DSDPGetPNormTolerance(DSDP,double*);
00164 extern int DSDPSetDualBound(DSDP,double);
00165 extern int DSDPGetDualBound(DSDP,double*);
00166 extern int DSDPSetPTolerance(DSDP,double);
00167 extern int DSDPGetPTolerance(DSDP,double*);
00168 extern int DSDPGetPInfeasibility(DSDP,double*);
00169 extern int DSDPSetMaxTrustRadius(DSDP,double);
00170 extern int DSDPGetMaxTrustRadius(DSDP,double*);
00171 extern int DSDPStopReason(DSDP,DSDPTerminationReason *); 
00172 extern int DSDPGetSolutionType(DSDP,DSDPSolutionType*);
00173 extern int DSDPSetPotentialParameter(DSDP, double);
00174 extern int DSDPGetPotentialParameter(DSDP, double*);
00175 extern int DSDPUseDynamicRho(DSDP, int);
00176 extern int DSDPGetPotential(DSDP,double*);
00177 extern int DSDPUseLAPACKForSchur(DSDP,int);
00178 extern int DSDPGetNumberOfVariables(DSDP,int*);
00179 extern int DSDPGetFinalErrors(DSDP,double[6]);
00180 extern int DSDPGetGapHistory(DSDP, double[], int); 
00181 extern int DSDPGetRHistory(DSDP, double[], int); 
00182 extern int DSDPGetIts(DSDP,int *); 
00183 extern int DSDPGetPnorm(DSDP, double *);
00184 extern int DSDPGetStepLengths(DSDP, double*,double*);
00185 extern int DSDPSetMonitor(DSDP, int (*)(DSDP,void*),void*);
00186 extern int DSDPSetStandardMonitor(DSDP,int);
00187 extern int DSDPSetFileMonitor(DSDP,int);
00188 extern int DSDPSetPenaltyParameter(DSDP,double);
00189 extern int DSDPUsePenalty(DSDP,int);
00190 extern int DSDPPrintLogInfo(int);
00191 extern int DSDPComputeMinimumXEigenvalue(DSDP, double*);
00192 extern int DSDPGetTraceX(DSDP dsdp, double*);
00193 extern int DSDPSetZBar(DSDP,double); 
00194 extern int DSDPSetDualLowerBound(DSDP, double);
00195 extern int DSDPGetDataNorms(DSDP, double[3]);
00196 extern int DSDPGetYMaxNorm(DSDP, double*);
00197 extern int SDPConeUseFullSymmetricFormat(SDPCone, int);
00198 extern int SDPConeUsePackedFormat(SDPCone, int);
00199 extern int DSDPSetFixedVariable(DSDP,int,double);
00200 extern int DSDPSetFixedVariables(DSDP,double[],double[],double[],int);
00201 extern int DSDPGetFixedYX(DSDP,int,double*);
00202 extern int DSDPView(DSDP);
00203 extern int DSDPPrintOptions();
00204 extern int DSDPPrintData(DSDP,SDPCone,LPCone);
00205 extern int DSDPSetOptions(DSDP,char*[], int);
00206 extern int DSDPReadOptions(DSDP, char[]);
00207 extern int DSDPSetDestroyRoutine(DSDP, int (*)(void*), void*);
00208 #endif

Generated on Sat Oct 15 11:05:34 2005 for DSDP by  doxygen 1.4.2