sedumipy.getada_psd¶
PSD (K.s != 0) counterpart to getada.py: the one-time pre-main-loop Aord/sparsity-pattern setup (build_aord, mirroring sedumi.m lines ~330-382) and the per-iteration ADA rebuild (getada_psd, mirroring sedumi.m lines ~450-452’s getada1->`getada2`->`getada3` sequence).
SEE ALSO sedumi, incorder, getsymbada, _native.getada1/getada2/getada3.
Functions
|
Ablkjc, Aord, symbada = build_aord(A, K, dense=None): the one-time setup original sedumi.m does before its main loop starts (before symbchol). |
|
q_pattern = build_q_pattern(A, Ablkjc, K, dense=None): the pre-loop Lorentz ddotA structural (0/1) sparsity pattern, None when K has no Lorentz blocks -- the one piece of build_aord()'s setup that getsymbada() actually needs. |
|
(ADA, absd) = getada_psd(ADA, A, Ablkjc, Aord, DAt, d, K): rebuilds ADA = A*P(d)*A' for one main-loop iteration when K.s is nonempty, via getada1 (fresh LP+Lorentz-diagonal part) -> getada2 (+= Lorentz ddotA part) -> getada3 (+= PSD part, then symmetrize), exactly as sedumi.m's main loop calls them. |