How to deal trace(X^H*A*X) in cvx

As we know, when A is a hermitian semidefinite matrix, trace(X^HAX) is convex,but cvx can’t deal this expression, so how can i deal with it ? Thank you !
About this question: X^H denotes conjugate transpose operation; X is a matrix; A is a hermitian semidefinite matrix.

trace(X'*A*X) = trace(X'*sqrtm(A)*sqrtm(A)*X) = norm(sqrtm(A)*X,'fro')^2

So use square_pos(norm(sqrtm(A)*X,'fro'))

If it appears by itself in the objective function, there is no need to square, and it is numerically better to use norm(sqrtm(A)*X,'fro'), which has the same argmin.

If A is strictly positive definite, then its Colesky factorization can be used instead of sqrtm(A),resulting in square_pos(norm(chol(A)*X,'fro')) . However, the formulation with sqrtm can always be used.

Thank you very much for you reply, it’s helpful.