How to write this in CVX?

LHS == semidefinite(n) constrains LHS to be symmetric psd. By construction, the LHS in my suggested possible constraint is symmetric by construction, and allows A to be a non-symmetric matrix.

To enforce strict positive definiteness of A + A', choose a value, min_eigenvalue , as the minimum allowed eigenvalue. If min_eigenvalue is not large enough, such as at least 1 e-6 to provide ample solver tolerance cushion, strict positive definiteness may not be achieved.

Then
A + A' - min_eigenvalue*eye(n) == semidefinite(n)
or
lambda_min(A+A') >= min_eigenvalue

A couple of sec of googling gave me https://math.stackexchange.com/questions/83134/does-non-symmetric-positive-definite-matrix-have-positive-eigenvalues , which you might want to read to help you determine what you really want to do. There’s plenty more material you can find.

1 Like