# How to create a variable that is Hermitian but not PSD?

**URL:** <https://discourse.julialang.org/t/how-to-create-a-variable-that-is-hermitian-but-not-psd/96170>\
**Category:** Optimization (Mathematical)\
**Tags:** jump, complex-numbers\
**Created:** [March 16, 2023, 10:09am UTC](https://discourse.julialang.org/t/how-to-create-a-variable-that-is-hermitian-but-not-psd/96170 "2023-03-16T10:09:48Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![araujoms](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/araujoms/32/217734_2.png) [@araujoms](https://discourse.julialang.org/u/araujoms)\
**Post date:** [March 16, 2023, 10:09am UTC](https://discourse.julialang.org/t/how-to-create-a-variable-that-is-hermitian-but-not-psd/96170/1 "2023-03-16T10:09:48Z")

</div>

I need to create a Hermitian matrix that is not PSD for solving a specific problem. How do I do that? The obvious syntax `@variable(model, x[1:d,1:d], Hermitian)` gives an error, unlike `@variable(model, x[1:d,1:d], Symmetric)`.

I suppose I could do `@variable(model, x[1:d,1:d] in ComplexPlane())` followed by `@constraint(model, x .== x')` but that’s terribly inefficient.

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [March 16, 2023, 7:43pm UTC](https://discourse.julialang.org/t/how-to-create-a-variable-that-is-hermitian-but-not-psd/96170/2 "2023-03-16T19:43:00Z")

</div>

There is no syntax support for this yet. Open a feature request in the JuMP repo.
