## 3 Control Algorithm Description
### Control Implementation Using Aerodynamic Force  
The calculated control (23) is assumed to be implemented by the aerodynamic force (9). Consider the normal vector \(\mathbf{n}_{i}\) to the \(i\)-th satellite flat surface, which is defined in LVLH reference frame by two angles \(\theta\in[0,\ \pi/2],\ \psi\in[0,\ 2\pi]\), as shown in Figure 4:  
\[\mathbf{n}_{i}=[\sin\vartheta_{i}\quad\cos\vartheta_{i}\cos\psi_{i}\quad\cos \vartheta_{i}\sin\psi_{i}]^{\mathsf{T}}.\]  
Figure 4: Normal vector to the sunlight reflector and angles for its definition. Each flat surface has two normal vectors, and the normal vector, which has a nonnegative projection to the along-track component \((\mathbf{n}_{i},\mathbf{e}_{x})\geq 0\), is considered. Assuming that the unit vector along the velocity \(\mathbf{e}_{V}\) is aligned with the \(\mathbf{e}_{x}\) axis, the aerodynamic acceleration vector (9) can be rewritten as follows:  
\[\mathbf{f}_{i}=k \begin{bmatrix}-2\varepsilon{(\sin\hat{\vartheta}_{i})}^{3}+ \eta{(\varepsilon-1)}{(\sin\hat{\vartheta}_{i})}^{2}+{(\varepsilon-1)}\sin \hat{\vartheta}_{i}\\ -\cos\hat{\vartheta}_{i}\sin\hat{\vartheta}_{i}{(\eta-\varepsilon\eta+2 \varepsilon\sin\hat{\vartheta}_{i})}\cos\psi_{i}\\ -\cos\hat{\vartheta}_{i}\sin\hat{\vartheta}_{i}{(\eta-\varepsilon\eta+2 \varepsilon\sin\hat{\vartheta}_{i})}\sin\psi_{i}\end{bmatrix} , \tag{29}\]  
where \(k=\frac{1}{m_{i}}\rho V_{i}^{2}S_{i}\) is a coefficient considered as constant for a given satellite in a given orbit. In this paper, the parameters \(\varepsilon\) and \(\eta\) are set as \(\varepsilon=0.1\), \(\eta=0.1\) according to estimates by [PERSON] in [29]. From Equation (29), it can be concluded that the components of the aerodynamic acceleration are bounded. The \(f^{x}\) component cannot be positive. The maximum value of the along-track component \(f^{x}_{\max}\) corresponding to aerodynamic drag at \(\vartheta_{i}=0\) is equal to \(f^{x}_{\max}=-1.19k\). At the same time at \(\vartheta_{i}=0\), the other two components are zero \(f^{y}=f^{z}=0\). The maximal value of the projection of the vector \(\mathbf{f}_{i}\) onto the \(Oyz\) plane is \(f^{yz}_{\max}\approx 0.12k\), which is achieved at about \(\vartheta_{i}=52\)deg. At \(\vartheta_{i}=52\)deg, the value of the \(f^{x}=-0.86k\). The maximum aerodynamic drag value \(f^{x}_{\max}\) is about 10 times higher than the maximum value of the \"lift\" components \(f^{yz}_{\max}\). So, the calculated control vector (23), in the common case, cannot be directly implemented using (29). The following implementation strategy is used in this paper. The implemented control acceleration \(\mathbf{f}_{i}\) depends on the calculated control vector \(\mathbf{u}_{i}\) as follows [12]:  
\[\mathbf{f}_{i}=\left\{ \begin{array}{l}\mathbf{f}^{x}_{\max},\text{ if }u^{x}_{i}<f^{x}_{\max};\\ \mathbf{f}^{yz}_{\max},\text{ if }f^{x}_{\max}\leq u^{x}_{i}<0\text{ and }\sqrt{{(u^{y}_{i})}^{2}+{(u^{z}_{i})}^{2}}>f^{yz}_{\max};\\ \mathbf{u}_{i},\text{ if }f^{x}_{\max}\leq u^{x}_{i}<0\text{ and }\sqrt{{(u^{y}_{i})}^{2}+{(u^{z}_{i})}^{2}}\leq f^{yz}_{\max};\\ 0,\text{ if }u^{x}_{i}\geq 0;\end{array} \right. \tag{30}\]  
where \(\mathbf{f}^{x}_{\max}=[f^{x}_{\max}\;\;0\;\;0]^{T}\), \(\mathbf{u}^{yz}_{\max}=k[u^{x}_{i}/k\;\;u^{y}_{i}/f^{yz}_{\max}\;\;u^{z}_{i}/f^ {yz}_{\max}]^{T}\). The implementation strategy (30) prioritizes applying the available value of the aerodynamic drag component first. This results in eliminating the relative drift and relative shift of the trajectories. Then, in cases where the required drag component is less than the maximum value, but the required lift component is high, the maximum available value of the lift component is to be implemented as the second priority. If both required lift and drag components are less than the maximum values, then the control acceleration vector \(\mathbf{u}_{i}\) can be implemented. In [12], it is shown that even in such cases, it may not be possible to find a pair of angles \(\vartheta,\;\;\psi\) to exactly implement the vector \(\mathbf{u}_{i}\).