Home

PENSDP User's Guide (Version 2.2)

image

Contents

1. int Inform 0 function value double Ex 0L array reserved for block sizes of matrix constraints int ms es 0 array reserved for initial iterate input and optimal primal variables output double x0 0 array reserved for optimal dual variables output double xuoutput 0 objective x double xfobj 0 vhs of linear constraints double zci 0 x arrays for linear constraints ine sbi dim 0 bi idx 0 double zbi yal 0 arrays for matrix constraints int sal dim 0 di rax 0 xal nzs 0 xal col 0 xali row 0 double ai_val 0 arrays reserved for results int results a 0 00 int double EresWwlites S 00 070 2 07 003 11 x default options x ime operen iS fl SO WHO ae Oi 1 Os Ole Os O 0 OO 17177 double fopticons i2 10 0 770 1 1 O0E T7 1 0E 6 1 0E 14 1 0E 2 1 0e0 DO SE 20 Third the user should specify the problem dimensions by assigning values to variables vars Mmeonstr conser bi lai macau luoutp t Using these numbers the user should allocate memory as it is shown below msizes INTEGER mconstr xi DOUBLE vars gt uoutput DOUBLE luoutput fob DOURLE vars Teteometi 4 ci DOUBLE conste bi_dim INTEGER constr bu idx INTEGER bi_val DOUBLE 1bi if mconstr ai_dim INTEGER mconstr ai_idx INTEGER lai al nas INTEGER ian
2. al col INTEGER nasa gt ai_row INTEGER nzsail ai val DOUBLE nzsai Next the problem data should be assigned to arrays x0 Pob ei x0 bi dim bi 1dx bDi val ali dim ar idx al nzs al val al col ali row and some non default options could be set by changing entries in the arrays ioptions foptions The meaning of the input output parameters and the options are explaned in detail in section 5 3 Finally the user should call PENSDP like Call pensdp pensdp vars constr mconstr msizes AER RO Oy OEI tol aI bpi dim bi idx bDi val ai dam al 10x di AZS ai val al col al TOW loptions foptions iresults fresults Gintorm and free memory A sample implementation is included in the file driver_sdp _c c in directory c 12 5 2 Calling PENSDP from a FORTRAN program Given the upper bounds on values varsi meonstri constr f o vars MCONStr constr and dimensions Ibi lai nzsai luoutput f o ba idx ail Mas al col wourpwe either from outer call or declared as parameters the user can call subroutine pensdpf as in the following piece of code integer vars constr mconstr msizes mconstr1 integer bi dim constrl bi idx 161 integer ai_dim mconstr1 ai_idx lai ai_nzs lai integer ai_col nzsai ai_row nzsai integer ioptions 15 iresults 4 info reales fx xO varsl usvtput dluoutput tab ca constr real 8 bi_v
3. 2 0 1 0 2 0 2 0 2 0 1 0 2 0 2 0 1 0 1 0 1 0 3 0 3 0 ai col 0 1 1 2 0 2 1 2 1 0101 ai_row 0 0 1 2 0 0 1 2 1 0 1 0 1 20 7 General recommendations 7 1 Dense versus Sparse For the efficiency of PENSDP it is important to know if the problem has sparse or dense Hessian The program can check this automatically The check may take some time and memory so if you know that the Hessian is dense and this is the case of most problems you can avoid the check The check is switched on and off by parameter CHECKDENSITY in in txt SDPA version or by option DENSE in ioptions MATLAB version The default is on do the check 7 2 High accuracy The default values of the parameters in file in txt are set to achieve relatively high accuracy in the primal and dual solutions The program first tries to reach PRECISION and then switches to PRECISION2 Parameter PRECISION2 directly controls the DIMACS error criteria setting e g PRECISIONZ2 to 1 0e 7 means that all DIMACS criteria will be equal to or smaller than 1077 if the code fin ishes successfully The DIMACS criteria measure the I st order optimality primal and dual feasibility and complementary slackness If you require lower accuracy just set PRECISION to 1 0e 4 and PRECISTON2 to e g 1 0 so that it is ignored For higher accuracy set PRECISION to 1 0e 4 1 0e 6 and PRECISION2 to
4. OUTPUT Outputlevel 0 Silent Mode No output is written to the standard output 1 Summary Mode Only the final result is written to the standard output 2 Iteration Mode After every outer iteration the status is written to standard output 3 Verbose Mode After every iteration result the current status is written to the standard output 2 CHECKDENSITY sparse dense data handling of Hessian 0 Automatic 1 Dense 2 Sparse 0 USELS Use Linesearch 0 No 1 Yes 0 XOUT Write primal solution to file x dat 0 No 1 Yes 0 UOUT Write dual solution to file u dat 0 No 1 Yes NWT_SYS_MODE Use Conjugate Gradient approach instead of Cholesky for solution of linear systems No Cholesky is used CG with exact Hessian CG with approximated Hessian CG with exact Hessian not explicitly assembled CG_TOL_DIR Stopping criterion for conjugate gradient algorithm 5 0e 2 SS a eS eee eee ee ee Lees PRECTYPE Which preconditioner for CG If USECG 2 only values 0 2 are accepted 0 No 1 diagonal 2 LBFGS 3 approximate inverse 4 SGS 2 o OS a E a a ee e DIMACS Print Dimacs error measures 0 No 1 Yes 0 A PENUP Penalty update 0 Automatic recommended gt 0 Manual 0 0 doses resisten reese a eee Se ee eee eS ee ees HYBRIDMODE Switch to Cholesky if PCG causes troubles 0 No 1 Yes use diagonal pr
5. and invoke Makefile by command make f make g77 txt Win32 version Go to directory fortran and invoke Makefile by command nmake f make_df txt To build a MATLAB dynamic link library pensdpm Start MATLAB go to directory mat lab and invoke link command by make_pensdpm In case the user wants to use his her own LAPACK BLAS or ATLAS implementations the makefiles resp M files in directories c fortran and matlab have to be modified appropriately 2 The problem We solve the SDP problem with linear matrix inequality constraints n min T TER De fr i k 1 n s t Sas Salle ite k 1 n ra Gel pom k 1 The matrix constraints can be written as one constraint with block diagonal matrices as follows Aj Aj Here we use the abbreviations n vars mg constr and m mconstr 3 The algorithm For a detailed description of the algorithm see 2 The algorithm is based on a choice of penalty barrier function Pp that penalizes the in equality constraints This function satisfies a number of properties that guarantee that for any P gt 0 we have A x 3 0 lt gt p A z lt 0 This means that for any P gt 0 problem SDP has the same solution as the following augmented problem min 2 Fut SDP5 s t p A xz lt 0 The Lagrangian of SDPs can be viewed as a generalized augmented Lagrangian of SDP P F z U P Y fix U p A 2 s 1 k 1 here d is the dimension of the matrix
6. indices of nonzero values in the upper triangle of each nonzero ed block Aas aust Aas iax 2 au Ay ea for each matrix con straint 1 2 mconstr integer array length ainzs 1 aimnzs 2 tainzs length ai_nzs 14 Tope ions integer array foptions double array iresults on exit integer valued output information see below Not referenced if iresults 0 on entry integer array length 4 fresults on exit real valued output information see below Not referenced if fresults 0 on entry double array length 3 status on exit error flag see below integer array length 1 6 MATLAB interface 6 1 Calling PENSDPM from MATLAB In MATLAB PENSDPM is called with the following arguments f x u iflag niter feas pensdpm pen where pen the input structure described in the next section f the value of the objective function at the computed optimum x the value of the dual variable at the computed optimum u the value of the primal variable at the computed optimum iflag exit information No errors Cholesky factorization of Hessian failed The result may still be usefull No progress in objective value problem probably infeasible Linesearch failed The result may still be usefull Maximum iteration limit exceeded The result may still be usefull Wrong input parameters ioptions foptions Memory error Unknown error pl
7. operator A and U St are Lagrangian multipliers associated with the inequality constraints The algorithm combines ideas of the exterior penalty and interior barrier methods with the Augmented Lagrangian method Algorithm 3 1 Let x andU be given Let Pt gt 0 Fork 1 2 repeat till a stopping criterium is reached i Find such that V Fla UF PR lt K ii UF DAD A x U o Pe P The details of the implementation can be found in 2 4 SDPA interface The problem data are written in an ASCII input file in a SDPA sparse format as introduced in 1 4 1 Running pensdp2 2 e Goto directory bin e Prepare a data file with your problem data in SDPA sparse format e Rename this file to sdpa dat and place it in directory bin e If required change parameters in in txt see next page e From the command line run pensdp2 2 without any arguments Depending on the output options XOUT and UOUT in in txt the solution may be written in ASCII files x out primal and u out dual in the working directory 4 2 SDPA input file sdpa dat is an ASCII file consisting of six parts 1 Comments The file can begin with arbitrarily many lines of comments Each line of comments must begin with or x 2 The first line after the comments contains n the number of variables i e number of constraint matrices 3 The second line after the comments contains m the number of blocks in the block diagon
8. the required DIMACS accuracy The choice of too high accuracy may lead to an inefficient code 7 3 Cholesky versus iterative solvers When computing the search direction in the Newton method we have to solve a system of linear equations with a symmetric positive definite matrix Hessian of the augmented La grangian This system can either be solved by possibly sparse Cholesky decomposition or by the preconditioned conjugate gradient method The choice is done by parameter NWT_SYS_MODE When this parameter is set to 1 2 or 3 CG method is used in connection with a precondi tioner chosen by parameter PRECTYPE We recommend to use CG when the number of variables is large and in particular when additionally the size of the matrix constraint is relatively small While PENSDP with CG can reach the same high accuracy as with Cholesky decomposition the code becomes much more efficient when the required accuracy is decreased by setting PRECISIONZ2 to le 2 The choice of a preconditioner depends to a large extent on the problem We recommend to try several preconditioners in the order 2 4 1 3 0 Warning For certain kind of problems the choice of CG method may lead to a rather inefficient code compared to Cholesky decomposition New in version 2 2 We have implemented a hybrid mode for the solution of the Newton system When the option HYBRIDMODE is set to 2 21 and NWT_SYS_MODE is set to 3 the code starts to solve the syst
9. when starting from a feasible point foptions 8 PEN_UP penalty update when set to 0 0 it is computed automati cally foptions 9 ALPHA_UP update of a should either be equal to 1 0 no update or smaller than 1 0 e g 0 7 foptions 10 PRECISION_2 precision of the KKT conditions foptions 11 CG_TOL_DIR stopping criterion for the conjugate gradient algorithm RESULTS iresults 0 number of outer iterations iresults 1 number of Newton steps iresults 2 number of linesearch steps iresults 3 ellapsed time in seconds FRESULTS fresults 0 relative precision at Zopt fresults 1 feasibility of linear inequalities at Topt fresults 2 feasibility of matrix inequalities at opt fresults 3 complementary slackness of linear inequalities at Zopt fresults 4 complementary slackness of matrix inequalities at Zopt meaning No errors Cholesky factorization of Hessian failed The result may still be usefull No progress in objective value problem probably infeasible Linesearch failed The result may still be usefull Maximum iteration limit exceeded The result may still be usefull Wrong input parameters Loptions foptions Memory error Unknown error please contact PENOPT Gbr contact penopt com NTHWUBWN EF O 17 6 2 pen input structure in MATLAB The user must create a MATLAB structure array with fields described in Section 5 3 18 Example 2 Let f 1 2 3 7 Assume that w
10. NWT_SYS_MODE 3 e Stopping criteria now based on the DIMACS error measures resulting in more reli able results e Minor bugs fixed Changes to version 2 1 e Hybrid mode for the solution of the Newton system included 1 Installation 1 1 Unpacking The distribution is packed in file pensdp tar gz Put this file in an arbitrary directory After uncompressing the file to pensdp tar by command gunzip pensdp tar gz the files are extracted by command tar xvf pensdp tar Win32 version The distribution is packed in file pensdp zip Put this file in an arbitrary directory and extract the files by PKZIP In both cases the directory PENSDP2 2 containing the following files and subdirectories will be created LICENSE a file containing the PENSDP license agreement bin a directory containing the files pensdp2 2 exe a binary executable with SDPA interface in txt an ASCII file with code parameters sdpa dat a sample problem in SDPA format c a directory containing the files driver_sdp c c a sample driver implemented in C pensdp h a header file to included by C driver penout c sample implementation of Pensdp output functions make_ CC txt a makefile to build a sample C program doc a directory containing this User s Guide and a User s Guide for the MATLAB program penfeas_lmi m fortran a directory containing the files driver_sdp_f f sample driver implemented in FORTRAN penout c see above penou
11. PENSDP User s Guide Version 2 2 Michal Ko vara Michael Stingl PENOPT GbR www penopt com March 5 2006 Contents 1 Installation 1 1 12 Unpack na A A A A E A Compo e a A al e Sd The problem The algorithm SDPA interface 4 1 4 2 4 3 Rune peas opa ES pts A Berea ae SDPA inputhle 222 42 id eee Ge Sas A EE E anaes eae OR at acne ee cy pee C C FORTRAN interface 51 oe 5 3 Calling PENSDP from a C C program Calling PENSDP from a FORTRAN program The input output structure ee esk ee ee MATLAB interface 6 1 6 2 Calling PENSDPM from MATLAB o o pen input structure in MATLAB o e General recommendations 7 1 7 2 13 7 4 Dense versus Sparse so a E Is A cs econ ea rae ens ads Geaas Setar os seve aS te Cholesky versus iterative SO VerS o o Exact versus approximate Hessian Copyright 2002 2005 Kocvara amp Sting PENOPT GbR Changes to old versions Changes to version 1 1 e Iterative solvers of the Newton equation added e Optional approximate Hessian of the Augmented Lagrangian e DIMACS error measures printed e Changes in handling the parameter ALPHA with the goal to increase the final preci sion Changes to version 2 0 e New option for Newton system solution added which in connection with the CG method requires no storage of the full Hessian option
12. al lbi ai_val nzsai foptions 12 fresults 5 call pensdpf vars constr mconstr msizes fx KO 0 Uoutput fobj El bi dim pi idz Di val ai dim ai idx ail nzs ai val ai col ai row loptions foptions resultes tres lia Into ee The input output parameters are explained below A sample implementation is included in the file driver_sdp f f in directory fortran 5 3 The input output structure We assume that the linear constraint vectors b can be sparse so we give them in standard sparse format We further assume that the matrix constraints data can be sparse Here we distinguish two cases Some of the matrices Aj for the k th constraint can be empty so we only give those matrices for each matrix constraint that are nonempty Each of the nonempty matrices A can still be sparse hence they are given in sparse format value column index row index As all the matrices are symmetric we only give the upper triangle All index arrays i e idx col and row are zero based as in the C language vars number of variables integer number constr number of linear constraints integer number mconstr integer number number of matrix constraints diagonal blocks in each Ax msizes integer array sizes of the diagonal blocks A Az AZ S length mconstr on exit objective function value double array length 1 x0 on entry initial guess for the solution on exit solut
13. al structure of the matrices 4 The third line after the comments contains a vector of numbers that give the sizes of the individual blocks The special characters and can be used as punctuation and are ignored Negative numbers may be used to indicate that a block is actually a diagonal submatrix Thus a block size of 5 indicates a 5 x 5 block in which only the diagonal elements are nonzero 5 The fourth line after the comments contains the objective function vector f 6 The remaining lines of the file contain entries in the constraint matrices with one entry per line The format for each line is lt matno gt lt blkno gt lt i gt lt j gt lt entry gt Here lt matno gt is the number of the matrix to which this entry belongs lt b1kno gt specifies the block within this matrix lt i gt and lt j gt specify a location within the block and lt entry gt gives the value of the entry in the matrix Note that since all matrices are assumed to be symmetric only entries in the upper triangle of a matrix are given 4 3 Filein txt Below we give the parameter file in txt with the default setting of parameters Recom mended setting of parameters for different situations are given in Section 7 a ee a ae a U0 multiplier parameter The initial vector of multipliers is computed by u0 UG 1 1l 1 TOHO 22 Se MN See Ss Se SS Sa DRA See See Ses NS ENE EAA EN 22 e
14. e Se N eS E S AEN PO multiplier parameter 1 0E0 SR a a E E EE E E ya ry a a ep MU restrictions for multiplier update By the factor MU the multiplier update 5 is restricted from above and below in the following way MU key lt Uk lt ly Mur URI 7 0E 1 ae a ee ee eee ene ee MU2 restrictions for matrix multiplier update By the factor MU the multiplier update 5 is restricted from above and below as MU2 lambda_min U k lt lambda_min U k 1 and lambda_max U k lt 1 MU2 lambda_max U k PRECISION Stopping criterion for outer iteration Depending on the problem type the difference in objective values the feasibility and the duality gap are taken into account ALPHA Stop criterion for unconstrained minimization The unconstrained minimization 4 stops if grad F X U P lt ALPHA or the descent of the augmented Lagrangian in the last step is less than min P_i ALPHA ALPHA_UP update of ALPHA ALPHA_NEW ALPHA ALPHA_UP PRECISION2 Precision of KKT conditions MAX_OUTER_ITER maximal outer iterations He Se OR HR HEHE SE HEHEHE HEHE se OSE H HEHE Se H HEE H H H OSE H H H H H OSE E H H H H OR H H H H Se H EOE OE H HH The global algorithm stops after maximal PBM_MAX_ITER iterations 50 MAX INER OTTERS marinei Deer iterations O O a The unconstrained minimization 4 stops after maximal UM_MAX_ITER iterations 100
15. e have no linear constraints Assume further that we have two linear matrix inequality constraints first of size 3x3 second of size 2x2 The first constraint contains full matrices the second one diagonal matrices Al Al Al Al i a Jal j 43 DOE The blocks AL have then 6 nonzero elements block A only two nonzero elements recall that we only give elements of the upper triangular matrix In this case vars 3 constr 0 mMmeonstr 2 msizes 32 x0 0 0 0 0 0 8 for example fobj 1 0 2 0 3 0 ci 0 0 bi_dim 0 bi_idx 0 bi_val 0 0 ai_dim 4 4 ai idx 023012315 ainzs 6 6 6 6 2 2 2 2 ei pred AN O AND ng O cece Aj 1 432 AT 1 A3 2 A3 1 A3 2 A3 1 A3 2 A MAR O A 0 1 0 1 0 1 0 1 ai_row 0 0 0 1 1 2 0 0 0 1 1 2 0 1 0 1 0 1 0 1 19 Example 3 Let again f 1 2 3 We have two linear constraints with nO 56 0 c 3 3 Assume further that we have two linear matrix inequality constraints first of size 3x3 second of size 2x2 The first constraint contains sparse matrices the second one diagonal matrices Some of the matrices are empty as shown below T3 In this case vars 3 constr 2 meonstr 2 msizes 3 2 x0 0 0 0 0 0 0 for example fobj 1 0 2 0 3 0 ci 3 0 3 0 pi dim 1 21 prota 2 0415 bi_val 1 0 5 0 6 0 aran R3 ai_idx 1 3 0 1 2 ainzs 4 4 1 2 2 ai_val
16. ease contact PENOPT GbR contact penopt com AAA fw NY FE SC niter a 4x1 matrix with elements niter 1 number of outer iterations niter 2 number of Newton steps niter 3 number of linesearch steps niter 4 ellapsed time in seconds feas a 3x1 matrix with stopping criteria values feas 1 relative precision at Topt feas 2 feasibility of linear inequalities at Zopt feas 3 feasibility of matrix inequalities at Topt feas 4 complementary sleckness of linear inequalities at opt feas 5 complementary sleckness of matrix inequalities at Zopt 15 OPTIONS Toptroni 0N DEF 0 use default values for all options 1 use user defined values ioption MAX_OUTER_ITER maximum number of iterations of the overall al 50 Pp a MO TOPE10M MAX_INNER_ITER maximum number of iterations for the uncon 100 ioption OUTPUT output level 0 no output 1 summary output 2 brief output 3 full output 2 3 ioption 4 DENSE check density of the Hessian 0 automatic check For very large problems with dense Hessian this may lead to memory difficul ties dense Hessian assumed 2 sparse Hessian assumed 1 ie 1 HG oie wernin 5 LS linesearch in unconstrained minimization 0 do not use linesearch 1 use linesearch ioption 6 XOUT write solution vector x in the output file 0 no 1 yes 0 ioption PREC_TYPE preconditioner type for the CG method 0 no preconditioner diagonal 2 LBFGS 3 appoximate inv
17. econditioner after Cholesky step 2 Yes use inverse Cholesky precond after Cholesky step 2 a ee E E e E S AUTOINIT 0 No 1 Yes 1 ie E Ceol eee Clee ero cece eee Se ee Sess Se ce ee Sees E aes eae ae esate aes STOPMODE 0 strict 1 heuristic 1 Be eee Se oe SSS SSeS See SSeS Se SSS See Sees SS SUS ab eee ee ee eee Example 1 Let f 1 2 3 7 Assume that we have two linear matrix inequality con straints first of size 3x3 second of size 2x2 The second constraint contains only diag onal matrices T3 In SDPA sparse format this problem can be written as Example 1 l N Ww S Qu SOE INS NS IE IS Gh iS l mR NSM NS OS SS tS Ni OOG 19010 10 19 Oe S SSS 10 WWWWNNPRPRPPRPPORWNW PPRPPNNNNFRFRNO SS Se SE hs ds 10 5 C C FORTRAN interface PENSDP can also be called as a function or subroutine from a C or FORTRAN program In this case the user should link the PENSDP library to his her program 5 1 Calling PENSDP from a C C program For the implementation of a C interface the user should perform the following steps First the user must include the PENSDP header file as in the following line include pensdp h Second the variables for the problem data have to be declared as in the following piece of code basic problem dimensions x inge vars 0 conste 0 mconstr 0 ine luoutput 0 Ibi 0 Wen 0 aras 0 error flag
18. em using the CG method When the number of CG steps becomes too large the codes switches to the Cholesky solver to solve the current system For the next system the code tries again CG method with the Cholesky factor from the previous system as a preconditioner This mode is only active when the number of variables is significantly larger than the size of the matrix constraint otherwise the code switches to the Cholesky solver We recommend to use this mode as default mode for general problems 7 4 Exact versus approximate Hessian The use of the CG method allows us to use an exact or an approximate formula for the Hessian vector product This may be particularly efficient when the Hessian evaluation is expensive Further as the Hessian does not have to be stored the memory requirements of the approximate version are much smaller The option is chosen by setting NWT_SYS_MODE to 2 approximate Hessian vector product NWT_SYS_MODE to 3 exact Hessian vector product The use of exact Hessian vector product option 3 is generally preferable As above to increase the efficiency we recommend to set PRECISTON2 to le 2 For NWT_SYS_MODE set to 2 or 3 only PRECTYPE set to 0 or 2 is allowed Warning For certain kind of problems the choice of CG method with approximate Hessian may lead to a rather inefficient code compared to Cholesky decomposition with exact Hessian References 1 K Fujisawa M Kojima and K Nakata SDPA S
19. emidefinite Programming Algo rithm User s Manual Technical Report B 308 Department of Mathematical and Computing Sciences Tokyo Institute of Technology Revised May 1998 2 M Ko vara and M Stingl PENNON a code for convex nonlinear and semidefinite programming Optimization Methods and Software 8 3 317 333 2003 22
20. erse 4 symmetric Gauss Seidel 0 0 8 9 ioption 10 DIMACS print DIMACS error measures no yes 1 1 Lon Lon Lon Lon Lon Loption UOUT write computed multipliers in the output file 0 no 1 yes j ion Lon Lon Lon Lon Lon ioption HYBRIDMODE Switch to Cholesky if PCG causes troubles 0 No Yes use diagonal preconditioner after Cholesky step 2 Yes use inverse Cholesky precond after Cholesky step Hope ron 1s AUTOINIT 1 0 No es 1 1 Tope ron TR_MODE Trust Region mode modified Newton method 1 Trust Region method 2 1 1 loption 14 STOPMODE 1 0 strict 1 heuristic ioption NWT_SYS_MODE mode of solution of the Newton system 0 Cholesky method preconditioned conjugate gradient method preconditioned CG method with approximate Hessian calculation preconditioned CG method with exact Hessian not explicitly assembled FOPTIONS foptions 0 scaling factor for linear constraints must be positive foptions 1 ae restriction for multiplier update for linear constraints foptions 2 MU2 restriction for multiplier update for matrix constraints 33 4 foptions PRECISION stopping criterium for the overall algorithm foptions P_EPS lower bound for the penalty parameters foptions 5 U_EPS lower bound for the multipliers foptions 6 ALPHA stopping criterium for unconstrained minimization foptions 7 PO initial penalty value set it lower 0 01 0 1 to maintain feasibility
21. ion vector x Not referenced if x0 0 on entry double array uoutput on exit linear multipliers u i 1 constr followed by up per triangular parts stored row wise of matrix multipliers UY j 1 mconstr Not referenced if uoutput 0 on entry double array length constr msizes 1 msizes 1 1 2 msizes 2 msizes 2 41 2 msizes mconstr msizes mconstr 1 2 length vars right hand side vector of the linear constraint c in full format length constr number of nonzeros in vector b for each linear constraint length constr indices of nonzeros in each vector b length bi dim 1 bi dim 2 bi dim constr length bi dim 1 bi_dim 2 bi dim constr number of nonzero blocks Af 41 Atar for each matrix constraint e 1D oe cons be length ai_dim 1 aidim 2 ai_dim mconstr ai_nzs number of nonzero values in each nonzero block E nde pyres A for each matrix constraint CS1 Ze Eos LE length ai dim 1 a1 dim 2 ai dim mconstr nonzero values in the upper triangle of each nonzero block A ax 1 ee ay ee dx ai_dim i for each matrix constraint ee one tr double array length ainzs 1 aimzs 2 jad tainzs length ai_nzs ai col column indices of nonzero values in the upper triangle of each nonzero aa block Aj ax 1 Ales ao Aa sai for each matrix con straint 1 2 mconstr integer array length ainzs 1 aimnzs 2 leita tainzs length ainzs ai_row row
22. t o bj precompiled version of penout c make_ FC txt a makefile to build a sample FORTRAN program libs a directory containing the Pensdp library and Atlas libraries matlab a directory containing the files pensdpm c the MATLAB interface file penoutm c MATLAB version of penout c make_pensdpm m M file containing MEX link command Imi m M file containing a sample problem in PEN format penfeas_Imi m checks feasibility of a system of LMIs sdpa2pen m a SDPA to PEN converter 1 2 Compilation Requirements For successful compilation and linkage depending on the operating system and the pro gram to be created the following software packages have to be installed UNIX versions e gcc compiler package C driver program e 977 compiler package FORTRAN driver program e MATLAB version 5 0 or later including MEX compiler package and gcc compiler package MATLAB dynamic link library pensdpm x e VISUAL C version 6 0 or later C driver program e VISUAL FORTRAN version 6 0 or later FORTRAN driver program e MATLAB version 5 0 or later including MEX compiler package and VISUAL C version 6 0 or later MATLAB dynamic link library pensdpm x To build a C driver program UNIX versions Go to directory c and invoke Makefile by command make f make_gcc txt Win32 version Go to directory c and invoke Makefile by command nmake f make_vc txt To build a FORTRAN driver program Go to directory fortran

Download Pdf Manuals

image

Related Search

Related Contents

Capteur de température RF ZigBee sans fil, à montage mural  UD405RSB - Napoleon Products  2,66 MB  site:fr intitle:"User guide"  User Guide  GE DPSE810EGWT User's Manual  仕様書  

Copyright © All rights reserved.
Failed to retrieve file