@@ -24,18 +24,18 @@ As an example, we will solve the following specific CLP in this section as a gen
2424$$
2525\begin{aligned}
2626&\boldsymbol{A}=\left(\begin{array}{cccc}
27- 10 & 4 & 4 & 0 \\
28- 0 & 0 & 0 & - 8 \\
29- 0 & - 8 & - 8 & - 2
27+ - 10 & - 4 & - 4 & 0 \\
28+ 0 & 0 & 0 & 8 \\
29+ 0 & 8 & 8 & 2
3030\end{array}\right), \quad \boldsymbol{b}=\left(\begin{array}{c}
31- 48 \\
32- - 8 \\
33- 20
31+ - 48 \\
32+ 8 \\
33+ - 20
3434\end{array}\right), \quad \boldsymbol{c}=\left(\begin{array}{c}
35- - 11 \\
35+ 11 \\
36360 \\
37370 \\
38- 23
38+ - 23
3939\end{array}\right) \\
4040&\text { J.f }=3, \quad \mathrm{~K} . \mathrm{s}=2,
4141\end{aligned}
@@ -144,22 +144,22 @@ import sdpap
144144import numpy as np
145145
146146A = np.array([
147- [10 , 4 , 4 , 0 ],
148- [0 , 0 , 0 , - 8 ],
149- [0 , - 8 , - 8 , - 2 ]
147+ [- 10 , - 4 , - 4 , 0 ],
148+ [0 , 0 , 0 , 8 ],
149+ [0 , 8 , 8 , 2 ]
150150])
151151
152152b = np.array([
153- [48 ],
154- [- 8 ],
155- [20 ]
153+ [- 48 ],
154+ [8 ],
155+ [- 20 ]
156156])
157157
158158c = np.array([
159- [- 11 ],
159+ [11 ],
160160 [0 ],
161161 [0 ],
162- [23 ]
162+ [- 23 ]
163163])
164164
165165K = sdpap.SymCone(s = (2 ,))
@@ -172,46 +172,46 @@ The output will be as below:
172172
173173```
174174---------- SDPAP Start ----------
175- SDPA start at [Sun Jun 5 10:43:05 2022 ]
175+ SDPA start at [Sun Jan 26 20:41:26 2025 ]
176176NumThreads is set as 12
177177Schur computation : DENSE
178- Entering DMUMPS driver with JOB, N, NZ = -2 0 0
179178Converted to SDPA internal data / Starting SDPA main loop
180179 mu thetaP thetaD objP objD alphaP alphaD beta
181- 0 1.0e+04 1.0e+00 1.0e+00 -0.00e+00 - 1.20e+03 1.0e+00 9.1e-01 2.00e-01
182- 1 1.6e+03 0.0e+00 9.4e-02 +9.23e +02 - 7.51e+01 2.3e+00 9.6e-01 2.00e-01
183- 2 1.7e+02 6.4e-17 3.6e-03 +2.80e +02 + 3.74e+01 1.3e+00 1.0e+00 2.00e-01
184- 3 1.8e+01 6.4e-17 1.5e -17 +7.70e+01 + 4.19e+01 9.9e-01 9.9e- 01 1.00e-01
185- 4 1.9e+00 7.2e-17 7.5e-18 +4.57e +01 + 4.19e+01 1.0e+00 9 .0e+01 1.00e-01
186- 5 1.9e-01 7.3e-17 1.1e-15 +4.23e +01 + 4.19e+01 1.0e+00 1.0e+00 1.00e-01
187- 6 1.9e-02 6.4e-17 2.2e-17 + 4.19e+01 + 4.19e+01 1.0e+00 9.0e+01 1.00e-01
188- 7 1.9e-03 6.3e-17 2.1e -15 + 4.19e+01 + 4.19e+01 1.0e+00 1.0e+00 1.00e-01
189- 8 1.9e-04 8.3e-17 3.0e -17 + 4.19e+01 + 4.19e+01 1.0e+00 1.0e+00 1.00e-01
190- 9 1.9e-05 7.9e-17 1 .5e-17 + 4.19e+01 + 4.19e+01 1.0e+00 9 .0e+01 1.00e-01
191- 10 1.9e-06 6.5e-17 1.6e-15 + 4.19e+01 + 4.19e+01 1.0e+00 9 .0e+01 1.00e-01
180+ 0 1.0e+04 1.0e+00 1.0e+00 -0.00e+00 + 1.20e+03 1.0e+00 9.1e-01 2.00e-01
181+ 1 1.6e+03 0.0e+00 9.4e-02 +8.39e +02 + 7.51e+01 2.3e+00 9.6e-01 2.00e-01
182+ 2 1.7e+02 2.3e-16 3.6e-03 +1.96e +02 - 3.74e+01 1.3e+00 1.0e+00 2.00e-01
183+ 3 1.8e+01 2.9e-16 2.2e -17 -6.84e+00 - 4.19e+01 9.9e-01 9.0e+ 01 1.00e-01
184+ 4 1.9e+00 2.6e-16 1.8e-15 -3.81e +01 - 4.19e+01 1.0e+00 1 .0e+00 1.00e-01
185+ 5 1.9e-01 2.7e-16 7.5e-18 -4.15e +01 - 4.19e+01 1.0e+00 1.0e+00 1.00e-01
186+ 6 1.9e-02 2.8e-16 7.5e-18 - 4.19e+01 - 4.19e+01 1.0e+00 9.0e+01 1.00e-01
187+ 7 1.9e-03 2.9e-16 1.2e -15 - 4.19e+01 - 4.19e+01 1.0e+00 1.0e+00 1.00e-01
188+ 8 1.9e-04 2.8e-16 2.2e -17 - 4.19e+01 - 4.19e+01 1.0e+00 1.0e+00 1.00e-01
189+ 9 1.9e-05 2.7e-16 7 .5e-18 - 4.19e+01 - 4.19e+01 1.0e+00 1 .0e+00 1.00e-01
190+ 10 1.9e-06 2.9e-16 3.7e-18 - 4.19e+01 - 4.19e+01 1.0e+00 1 .0e+00 1.00e-01
192191
193192phase.value = pdOPT
194193 Iteration = 10
195- mu = +1.9180668442023463e -06
196- relative gap = +9.1554458700816248e -08
197- gap = +3.8361319951718542e -06
198- digits = +7.0383205007122669e +00
199- objValPrimal = +4.1900003836133735e +01
200- objValDual = +4.1900000000001739e +01
201- p.feas.error = +7.2685417628031834e-15
202- d.feas.error = +1.5063505998114124e-12
203- total time = 0.016597
204- main loop time = 0.016594
205- total time = 0.016597
194+ mu = +1.9180668442023158e -06
195+ relative gap = +9.1554505917001858e -08
196+ gap = +3.8361336223147191e -06
197+ digits = +7.0383202767393023e +00
198+ objValPrimal = -4.1899996163866383e +01
199+ objValDual = -4.1900000000000006e +01
200+ p.feas.error = +3.5690251616723664e-14
201+ d.feas.error = +3.5527136788005009e-15
202+ total time = 0.003271
203+ main loop time = 0.003268
204+ total time = 0.003271
206205file check time = 0.000000
207206file change time = 0.000003
208207file read time = 0.000000
209208Converting optimal solution to CLP format
210- SDPA end at [Sun Jun 5 10:43:05 2022 ]
209+ SDPA end at [Sun Jan 26 20:41:26 2025 ]
211210Start: getCLPresult
212211Making result infomation...
213- /opt/anaconda3/envs/py310/lib/python3.10/site-packages/scipy/sparse/linalg/_eigen/arpack/arpack.py:1265: RuntimeWarning: k >= N - 1 for N * N square matrix. Attempting to use scipy.linalg.eig instead.
214- warnings.warn("k >= N - 1 for N * N square matrix. "
212+ (Re)calculating feasibility errors for CLP converted solution.
213+ /opt/anaconda3/lib/python3.12/site-packages/sdpap/sdpaputils.py:114: RuntimeWarning: k >= N - 1 for N * N square matrix. Attempting to use scipy.linalg.eig instead.
214+ eig = eigs(mat.toarray(), k=1, which='SM',
215215========================================
216216 SDPAP: Result
217217========================================
@@ -221,15 +221,15 @@ Making result infomation...
221221 frvMethod = split
222222 domainMethod = none
223223 rangeMethod = none
224- primalObj = -4.1900000000001739e +01
225- dualObj = -4.1900003836133735e +01
226- dualityGap = +9.1554458700816248e -08
227- primalError = +1.5063505998114124e-12
224+ primalObj = +4.1900000000000006e +01
225+ dualObj = +4.1899996163866383e +01
226+ dualityGap = +9.1554505917001858e -08
227+ primalError = +3.5527136788005009e-15
228228 dualError = +0.0000000000000000e+00
229- convertTime = 0.000262
230- solveTime = 0.018632
231- retrievingTime = 0.000003
232- totalTime = 0.020157
229+ convertTime = 0.000166
230+ solveTime = 0.011680
231+ retrievingTime = 0.000002
232+ totalTime = 0.011902
233233---------- SDPAP End ----------
234234```
235235
0 commit comments