If you use
trace_inv(X*inv(A^H)) <= C
I believe that would constrain
X*inv(A^H) to be psd, which I think. you don’t want, but if you do, great.
But I think you can modify the Schur complement approach to
trace_inv, as found in the code
Then incorporate into Schur complement by changing
[Y,eye(n);eye(n),X] >= 0;
[Y sqrtm(inv(A^H));sqrtm(inv(A^H)) X] >= 0;
I.e., Add an extra argument to
trace_inv, and apart from any error checking, use this extra argument in place of
eye(n). I don’t guarantee that this is correct. Consider this post to be for entertainment purposes only.
Edit: Other than the assumed dimensions, I guess what I describe is pretty much the same as what is done in
matrix_frac, which is at