Introduction - If you have any usage issues, please Google them yourself
The architecture of this set of codes and the interaction among them is shown in Figure 1.
The main testing code main code.m calls the code riemann grad unit opt.m that performs
Riemannian optimization under unitary matrix constraint. Steepest Descent/Ascent
(SD/SA) algorithm (see Table 3.2 in [1]), Conjugate Gradient (CG-PR, CG-FR) algo-
rithms (both Fletcher-Reeves and Polak-Ribi`ere formulas, see Table 3.3 in [1]), are im-
plemented. This code further calls the codes implementing line search methods: Armijo
method geod search armijo.m, as well as the polynomial and DFT-based approximation