Hello everyone,

My question is as follows.

Let X=[A, B; B’, C] be a positive definite matrix, A is k by k. Let S be the schur complement of A in X. I want to solve the problem:

minimize trace_inv(S)

I tried to use matrix_frac(x,Y) to calculate S. (Outside the cvx specification, the function ‘matrix_frac’ works when x is a matrix with proper dimensions. So S= A- matrix_frac (B’,C). But) When I use the matrix_frac function between ‘cvx_begin’ and ‘cvx_end’, there is always an error saying,

??? Error using ==> cvx.matrix_frac at 12

First argument must be a column vector.

Is there anyway that I can calculate the schur complement in cvx objective function?

Another question is ‘trace_inv’ requires that the argument is affine. How can I apply composition of convex functions, so that the argument can be relaxed to a concave function?

Thank you.

Yin Li