File tree Expand file tree Collapse file tree 1 file changed +1
-19
lines changed
src/Bridges/Variable/bridges Expand file tree Collapse file tree 1 file changed +1
-19
lines changed Original file line number Diff line number Diff line change @@ -189,30 +189,12 @@ function MOI.get(
189189 return MOI. HermitianPositiveSemidefiniteConeTriangle (bridge. n)
190190end
191191
192- function _matrix_indices (k)
193- # If `k` is a diagonal index, `s(k)` is odd and 1 + 8k is a perfect square.
194- n = 1 + 8 k
195- s = isqrt (n)
196- j = if s^ 2 == n
197- div (s, 2 )
198- else
199- # Otherwise, if it is after the diagonal index `k` but before the
200- # diagonal index `k'` with `s(k') = s(k) + 2`, we have
201- # `s(k) <= s < s(k) + 2`.
202- # By shifting by `+1` before `div`, we make sure to have the right
203- # column.
204- div (s + 1 , 2 )
205- end
206- i = k - MOI. dimension (MOI. PositiveSemidefiniteConeTriangle (j - 1 ))
207- return i, j
208- end
209-
210192function _variable_map (idx:: MOI.Bridges.IndexInVector , n)
211193 N = MOI. dimension (MOI. PositiveSemidefiniteConeTriangle (n))
212194 if idx. value <= N
213195 return idx. value
214196 end
215- i, j = _matrix_indices (idx. value - N)
197+ i, j = MOI . Utilities . inverse_trimap (idx. value - N)
216198 d = MOI. dimension (MOI. PositiveSemidefiniteConeTriangle (j))
217199 return N + j * n + d + i
218200end
You can’t perform that action at this time.
0 commit comments