## 3 Simulations
### Simulation Settings and Results  
Simulations of the problem in (38) with the conditions expressed in (39) and (43) were conducted in the MATLAB 2024a environment with the aid of the Symbolic Math Toolbox and the Optimization Toolbox: the first was used to write the optimization problem on the objective function (i.e., the PDOP) in terms of symbolic variables, the latter was used to solve the problem written in terms of symbolic variables and obtain the optimal solution (i.e., the set of angles of the right ascension of the ascending node and the true anomaly for each satellite). To solve the problem, the interior point algorithm was chosen; this was because it is mathematically proven that it is able to effectively solve a nonlinear objective function subject to nonlinear inequality constraints converging to an approximate solution defined by the user-defined tolerances; furthermore, it always satisfies the boundary conditions at all iterations and can recover from possible NaN (i.e., not a number) or Inf (i.e., infinite) results in every iteration. As expected, from the conducted campaign of simulations, the algorithm was demonstrated to be always convergent. Mathematical details of the algorithm can be found in [39]. In particular, considering \(\mathbf{x}\) as the solution to the problem, \(g(\mathbf{x})\) as the nonlinear objective function, \(w_{1}(\mathbf{x})\leq 0,w_{2}(\mathbf{x})\leq 0,\cdots,w_{1}(\mathbf{x})\leq 0,w_{ \text{m}}(\mathbf{x})\leq 0\) as the \(m\) nonlinear inequality constraint conditions, and \(\mathbf{x}_{\text{j}}\) as the solution calculated at \(j\)-th iteration, the tolerances are defined in relative terms: the condition on step tolerance is defined as shown in (45), where \(T_{\text{s}}>0\) is the step tolerance; the optimality condition is defined as shown in (46), where \(T_{\text{o}}>0\) is the optimality tolerance, \(\lambda_{1}\geq 0,\lambda_{2}\geq 0,\cdots,\lambda_{1},\cdots,\lambda_{\text{m}}\geq 0\) are the Lagrange multipliers, and \(\|\cdot\|_{\infty}\) denotes the infinity norm; the constraint condition is defined as shown in (47), where \(T_{\text{c}}>0\) is the constraint tolerance. \[\left\|\mathbf{x}_{\text{j}}-\mathbf{x}_{\text{j}+1}\right\|<T_{\text{s}} \big{(}1+\left\|\mathbf{x}_{\text{j}}\right\|\big{)} \tag{45}\]  
\[\left\|\
abla g\big{(}\mathbf{x}_{\text{j}+1}\big{)}+\sum_{1=1}^{m}\big{(} \lambda_{1}w_{1}\big{(}\mathbf{x}_{\text{j}+1}\big{)}\big{)}\right\|<T_{\text {o}}\big{\|}\
abla g\big{(}\mathbf{x}_{\text{j}+1}\big{)}\big{\|}_{\infty} \tag{46}\]  
\[\left\{ \begin{aligned} \left\|w_{1}\big{(}\mathbf{x}_{\text{j}} \big{)}\right\|&<T_{\text{c}}\\ \left\|w_{2}\big{(}\mathbf{x}_{\text{j}}\big{)}\right\|& <T_{\text{c}}\\ \vdots\\ \left\|w_{l}\big{(}\mathbf{x}_{\text{j}}\big{)}\right\|& <T_{\text{c}}\\ \vdots\\ \left\|w_{\text{m}}\big{(}\mathbf{x}_{\text{j}}\big{)}\right\|& <T_{\text{c}}\\ \end{aligned} \right. \tag{47}\]  
It can be recalled that the left hand of (46) is a particular case of the more general Lagrangian of the Karush-Kuhn-Tucker (KKT) conditions [40], which considers both equality and inequality constraints for convex and nonconvex problems; as can be seen from (38), the optimization problem that this study aims to solve involves only inequality constraints. The iterations are stopped on a certain fixed number (e.g., the default value is 1000) when one of the conditions on step tolerance (45) (i.e., the relative difference in values) or optimality tolerance (46) (that is, the values of the first-order derivatives, KKT condition) is met; in this latter case, the constraint tolerance (47) is always satisfied. Details on the numerical implementation of the optimization algorithm, stopping criteria, and derivation of formulas used for the calculation of tolerances can be found in the MATLAB User Guide for the Optimization Toolbox [41] and the dedicated literature.