As for the code that gives me errors, please take a look at the following screenshot of my code:
Here you can see how I am defining the backends and the gradient, as well as the error message I get, which I get when trying to call ∇f_11(M₁₁, testp)
Where M\_11 = M₁₁ = Manifolds.SymmetricPositiveSemidefiniteFixedRank(2, 2, Manifolds.ComplexNumbers())
As for the functions we need to implement the HPD manifold (and possibly also the HPSD manifold), I will dig into the literature and get back to you. I am VERY inexperienced with differential geometry so if you can suggest a general "search direction" for where to look I would really appreciate it.
What I know for my particular problem is that I need to minimize a cost function f that takes an HPD matrix in its argument and that the solution should of course be an HPD matrix, additionally, I am using the Frobenius norm as a distance. I can of course provide more information on the problem if need be.