1 Introduction

In the present paper, we consider the dynamics of a system of two bodies (satellite and stabilizer) connected by a spherical hinge. The system moves in a central Newtonian force field along a circular orbit. The problem is of practical importance for designing passive gravitational orientation systems of satellites, that can stay on the orbit for a long time without energy consumption. The study of the satellite–stabilizer dynamics under the influence of gravitational torque is an important topic for the application in attitude control systems of the Earth artificial satellites. The dynamics of a satellite–stabilizer subjected to gravitational torque was considered in many papers [1,2,3,4,5,6]. The survey of the investigations of the dynamics of various composite schemes for satellite–stabilizer gravitational orientation systems was presented in detail in [7]. In [8], all equilibrium orientations were found in the case of both an axisymmetric satellite and an axisymmetric stabilizer. The planar equilibrium orientations of two bodies system were found in papers [9, 10] in the special cases, when the spherical hinge is located at the intersection of the satellite and stabilizer principal central axis of inertia and when the hinge is located on the intersection line of the principal central planes of inertia of the satellite and stabilizer. In paper [11], some classes of spatial equilibrium orientations of the satellite–stabilizer system in the orbital reference frame were analyzed, using the combination of computer algebra and linear algebra methods. In [12, 13], the main attention was paid to the study of the conditions of existence of the equilibrium orientations of the system of two bodies refers to special cases when one of the principal axes of inertia of each of the two bodies coincides with either the normal of the orbital plane, the radius vector or the tangent to the orbit. For these special cases we separated the algebraic system of 12 equations, which determines the equilibrium orientations for a system of two bodies into a set of nine simple algebraic subsystems and solve separately each of algebraic subsystem. Some of the indicated algebraic subsystems were solved in paper [12], the other subsystems were solved in paper [13].

The presented paper is a more general then the papers indicated above. At the previous works we tried to separate the initial algebraic system of 12 equations into set of more simple algebraic subsystems using special conditions for the system parameters. Now we tried to solve the initial algebraic system of 12 equations by reducing the number of system parameters. We study the spatial equilibrium orientations of the satellite–stabilizer system in the orbital coordinate frame for the certain combinations of values of inertial and geometrical characteristic of the connected bodies when equations of stationary motions of the system depends on one parameter, using Gröbner basis construction method [14]. The spatial equilibrium orientations were determined by analyzing the roots of algebraic equations from the constructed Gröbner basis.

In mechanics, computer algebra is widely used to study the equilibria of differential and dynamical systems. Some computer algebra algorithms for solving these problems were described in [15]. The study of regions in the parameter space with certain equilibria properties also occurred in relevance to a biology problem was presented in [16].

2 Equations of Motion

We consider the system of two bodies connected by a spherical hinge that moves in a circular orbit [7]. To write the equations of motion of two bodies, we introduce the following right-handed Cartesian coordinate systems (Fig. 1): OXYZ is the orbital coordinate system, the OZ axis is directed along the radius vector connecting the Earth center of mass C and the center of mass O of the two–body system, the OX axis is directed along the linear velocity vector of the center of mass O, and the OY axis coincides with the normal to the orbital plane. The axes of coordinate systems \(O_1x_1y_1z_1\) and \(O_2x_2y_2z_2\), are directed along the principal central axes of inertia of the first and the second body, respectively (Fig. 1). The orientation of the coordinate system \(O_ix_iy_iz_i\) with respect to the orbital coordinate system is determined by the aircraft angles \({\alpha }_i\) (pitch), \({\beta }_i\) (yaw), and \({\gamma }_i\) (roll) (see [7]) in the form

$$\begin{aligned} a_{11}^{(i)}= & {} \cos \alpha _i\cos \beta _i,\nonumber \\ a_{12}^{(i)}= & {} \sin \alpha _i\sin \gamma _i-\cos \alpha _i\sin \beta _i\cos \gamma _i,\nonumber \\ a_{13}^{(i)}= & {} \sin \alpha _i\cos \gamma _i+\cos \alpha _i\sin \beta _i\sin \gamma _i,\nonumber \\ a_{21}^{(i)}= & {} \sin \beta _i, \quad a_{22}^{(i)}=\cos \beta _i\cos \gamma _i,\\ a_{23}^{(i)}= & {} -\cos \beta _i\sin \gamma _i, \quad a_{31}^{(i)}=-\sin \alpha _i\cos \beta _i,\nonumber \\ a_{32}^{(i)}= & {} \cos \alpha _i\sin \gamma _i+\sin \alpha _i\sin \beta _i\cos \gamma _i,\nonumber \\ a_{33}^{(i)}= & {} \cos \alpha _i\cos \gamma _i-\sin \alpha _i\sin \beta _i\sin \gamma _i.\nonumber \end{aligned}$$
(1)

The indices \(i=1\) and \(i=2\) refer to body 1 (satellite) and body 2 (stabilizer), respectively. Consider the case when the hinge is located at the intersection point of the \(O_1x_1\) and the \(O_2x_2\) axes.

Fig. 1
figure 1

Basic coordinate systems

Suppose that \((a_i, b_i, c_i)\) are the coordinates of the spherical hinge P in the body coordinate system \(Ox_iy_iz_i\), \(A_i, B_i, C_i\) are principal central moments of inertia; \(M_1M_2/(M_1+M_2)=M\); \(M_i\) is the mass of the ith body; \(a_{ij}=a_{ij}^{(1)}\), \(b_{ij}=a_{ij}^{(2)}\), \(p_i\), \(q_i\), and \(r_i\) are the projections of the absolute angular velocity of the ith body onto the axes \(Ox_i\), \(Oy_i\) and \(Oz_i\); \({\omega }_0\) is the angular velocity for the center of mass of the two-body system moving along a circular orbit. Then we use the expressions for kinetic energy of the system in the case when \(b_1=b_2=c_1=c_2=0\) and the coordinates of the spherical hinge P in the body coordinate systems are \((a_i, 0, 0)\) in the form

$$\begin{aligned} T= & {} 1/2\left( A_1p_1^2+\left( B_1+Ma_1^2\right) q_1^2+\left( C_1+Ma_1^2\right) r_1^2\right) \nonumber \\&+1/2\left( A_2p_1^2+\left( B_2+Ma_2^2\right) q_2^2+\left( C_2+Ma_2^2\right) r_2^2\right) \nonumber \\&- Ma_1a_2\left( \left( r_1a_{12}-q_1a_{13}\right) \left( r_2b_{12}-q_2b_{13}\right) \right. \nonumber \\&\left. + \left( r_1a_{22}-q_1a_{23}\right) \left( r_2b_{22}-q_2b_{23}\right) +\left( r_1a_{32}-q_1a_{33}\right) \left( r_2b_{32}-q_2b_{33}\right) \right) . \end{aligned}$$
(2)

The force function, which determines the effect of the Earth gravitational field on the system of two connected by a hinge bodies, is given by [7]

$$\begin{aligned} U= & {} 3/2{\omega }_0^2\left( \left( C_1 - A_1+Ma_1^2\right) a_{31}^2+\left( C_1 - B_1\right) a_{32}^2\right) \nonumber \\&\left. +3/2{\omega }_0^2\left( \left( C_2 - A_2+Ma_2^2\right) b_{31}^2+\left( C_2-B_2\right) \right) b_{32}^2\right) \nonumber \\&- Ma_1a_2{\omega }_0^2\left( a_{11}b_{11}+a_{21}b_{21}+a_{31}b_{31}\right) . \end{aligned}$$
(3)

By using the kinetic energy expression (2) and the expression (3) for the force function, the equations of motion for this system can be written as Lagrange equations of the second kind by applying symbolic differentiation in the Maple system [17]

$$\begin{aligned} \frac{d}{dt}\frac{\partial T}{\partial \dot{x_i}} - \frac{\partial T}{\partial x_i}-\frac{\partial U}{\partial x_i}=0, \quad i=\overline{1,6}, \end{aligned}$$

where \(x_1=\alpha _1\), \(x_2=\alpha _2\), \(x_3=\beta _1\), \(x_4=\beta _2\), \(x_5=\gamma _1\), \(x_6=\gamma _2\), and this equations have the form

$$\begin{aligned}&A_1{\dot{p}_1}+(C_1-B_1)q_1r_1 -3{\omega }_0^2(C_1-B_1)a_{32}a_{33}= 0,\nonumber \\&\quad \left( B_1+Ma_1^2\right) {\dot{q}_1}-Ma_1a_2(a_{13}b_{13}+a_{23}b_{23}+ a_{33}b_{33}){\dot{q}_2}\nonumber \\&\quad +Ma_1a_2(a_{13}b_{12}+a_{23}b_{22} +a_{33}b_{32}){\dot{r}_2} + Ma_1a_2\left( a_{13}\left( r_2(p_2b_{13}-r_2b_{11}) \right. \right. \nonumber \\&\quad \left. -q_2(q_2b_{11}-p_2b_{12})\right) +a_{23}\left( r_2\left( p_2b_{23}-r_2b_{21}\right) -q_2(q_2b_{21}-p_2b_{22})\right) \nonumber \\&\quad \left. +a_{33}(r_2(p_2b_{33}-r_2b_{31})-q_2(q_2b_{31}-p_2b_{32}))\right) \nonumber \\&\quad +M{\omega }_0^2a_1\left( a_2(a_{13}b_{11}+a_{23}b_{21}+ a_{33}b_{31})+3a_{33}(a_1a_{31}-a_2b_{31})\right) \nonumber \\&\quad +\left( (A_1-C_1)-Ma_1^2\right) r_1p_1 - 3{\omega }_0^2(A_1-C_1)a_{33}a_{31}=0,\nonumber \\&\quad \left( C_1+Ma_1^2\right) {\dot{r}_1}+Ma_1a_2(a_{12}b_{13}+a_{22}b_{23}+a_{32}b_{33}){\dot{q}_2}\nonumber \\&\quad -Ma_1a_2(a_{12}b_{12}+a_{22}b_{22}+a_{32}b_{32}){\dot{r}_2} - Ma_1a_2\left( a_{12}\left( r_2(p_2b_{13}-r_2b_{11}) \right. \right. \nonumber \\&\quad \left. -q_2(q_2b_{11}-p_2b_{12})\right) +a_{22}(r_2(p_2b_{23}-r_2b_{21}) -q_2(q_2b_{21}-p_2b_{22})) \nonumber \\&\quad \left. +a_{32}(r_2(p_2b_{33}-r_2b_{31})-q_2(q_2b_{31}-p_2b_{32}))\right) \nonumber \\&\quad -M{\omega }_0^2a_1\left( a_2(a_{12}b_{11}+a_{22}b_{21}+a_{32}b_{31}) +3a_{32}(a_1a_{31}-a_2b_{31})\right) \nonumber \\&\quad +\left( (B_1-A_1)+Ma_1^2\right) p_1q_1 -3{\omega }_0^2\left( B_1-A_1\right) a_{31}a_{32}=0,\nonumber \\&\quad A_2{\dot{p}_2}+(C_2-B_2)q_2r_2 -3{\omega }_0^2(C_2-B_2)b_{32}b_{33}= 0,\nonumber \\&\quad \left( B_2+Ma_2^2\right) {\dot{q}_2}-Ma_1a_2(a_{13}b_{13}+a_{23}b_{23}+ a_{33}b_{33}){\dot{q}_1}\nonumber \\&\quad +Ma_1a_2(a_{12}b_{13}+a_{22}b_{23} +a_{32}b_{33}){\dot{r}_1} + Ma_1a_2\left( b_{13}\left( r_1(p_1a_{13}-r_1a_{11}) \right. \right. \nonumber \\&\quad \left. -q_1(q_1a_{11}-p_1a_{12})\right) +b_{23}(r_1(p_1a_{23}-r_1a_{21}) -q_1(q_1a_{21}-p_1a_{22})) \nonumber \\&\quad \left. +b_{33}\left( r_1\left( p_1a_{33}-r_1a_{31}\right) -q_1\left( q_1a_{31}-p_1a_{32}\right) \right) \right) \nonumber \\&\quad +M{\omega }_0^2a_2\left( a_1(a_{11}b_{13}+a_{21}b_{23}+ a_{31}b_{33})+3b_{33}(a_2b_{31}-a_1a_{31})\right) \nonumber \\&\quad +\left( (A_2-C_2)-Ma_2^2\right) r_2p_2 - 3{\omega }_0^2(A_2-C_2)b_{33}b_{31}=0, \nonumber \\&\quad ( C_2+Ma_2^2){\dot{r}_2}+Ma_1a_2(a_{13}b_{12}+a_{23}b_{22}+a_{33}b_{32}){\dot{q}_1}\nonumber \\&\quad -Ma_1a_2(a_{12}b_{12}+a_{22}b_{22}+a_{32}b_{32}){\dot{r}_1} - Ma_1a_2\left( b_{12}\left( r_1(p_1a_{13}-r_1a_{11}) \right. \right. \nonumber \\&\quad \left. -q_1(q_1a_{11}-p_1a_{12})\right) +b_{22}(r_1(p_1a_{23}-r_1a_{21}) -q_1(q_1a_{21}-p_1a_{22})) \nonumber \\&\quad \left. +b_{32}\left( r_1\left( p_1a_{33}-r_1a_{31}\right) -q_1(q_1a_{31}-p_1a_{32})\right) \right) \nonumber \\&\quad -M{\omega }_0^2a_2\left( a_1(a_{11}b_{12}+a_{21}b_{22}+a_{31}b_{32})+ +3b_{32}(a_2b_{31}-a_1a_{31})\right) \nonumber \\&\quad +\left( (B_2-A_2)+Ma_2^2\right) p_2q_2 -3{\omega }_0^2(B_2-A_2)b_{31}b_{32}=0. \end{aligned}$$
(4)

The kinematic Euler equations have the form

$$\begin{aligned} p_1= & {} (\dot{\alpha _1}+1)a_{21}+\dot{\gamma _1}, \quad p_2=(\dot{\alpha _2}+1)b_{21}+\dot{\gamma _2}, \nonumber \\ q_1= & {} (\dot{\alpha _1}+1)a_{22}+\dot{\beta _1}\sin \gamma _1, \quad q_2=(\dot{\alpha _2}+1)b_{22}+\dot{\beta _2}\sin \gamma _2, \nonumber \\ r_1= & {} (\dot{\alpha _1}+1)a_{23}+\dot{\beta _1}\cos \gamma _1, \quad r_2=(\dot{\alpha _2}+1)b_{23}+\dot{\beta _2}\cos \gamma _2. \end{aligned}$$
(5)

3 Equilibrium Orientations of Satellite–Stabilizer System

Assuming the initial condition \(({\alpha }_i, {\beta }_i, {\gamma }_i)=({\alpha }_{i0}=\text{ const }, {\beta }_{i0}=\text{ const }\), \({\gamma }_{i0}= \text{ const})\), also \(A_i\ne B_i \ne C_i\), we obtain from (4) and (5) the stationary equations

$$\begin{aligned}&a_{22}a_{23} - 3a_{32}a_{33}=0,\nonumber \\&\left( a_{23} a_{21} - 3a_{33}a_{31}\right) + m_1(a_{23}b_{21}-3a_{33}b_{31})=0,\nonumber \\&\left( a_{22} a_{21} - 3a_{32}a_{31}\right) -n_1(a_{22}b_{21}-3a_{32}b_{31})=0,\nonumber \\&b_{22} b_{23} - 3b_{32}b_{33}=0, \nonumber \\&(b_{23} b_{21}-3b_{33}b_{31}) + m_2(b_{23} a_{21} - 3b_{33}a_{31}) =0,\nonumber \\&(b_{22}b_{21}- 3b_{32}b_{31}) - n_2(b_{22}a_{21} - 3b_{32}a_{31}) =0, \end{aligned}$$
(6)

which allow us to determine the equilibrium orientations of the system of two bodies connected by a spherical hinge in the orbital coordinate system.

In (6): \(m_1=Ma_1a_2/\left( (A_1-C_1)-Ma_1^{2}\right) \); \(m_2=Ma_1a_2/\left( (A_2-C_2)-Ma_2^{2}\right) \); \(n_1=Ma_1a_2/\left( (B_1-A_1)+Ma_1^{2}\right) \); \(n_2=Ma_1a_2/\left( (B_2-A_2)+Ma_2^{2}\right) .\)

Taking into account the expressions for the direction cosines from (1), system (6) can be considered as a system of six trigonometric equations for six (angular) unknowns \(\alpha _{i0}, \beta _{i0}\), and \(\gamma _{i0}\) \((i=1, 2)\). However, we do not know methods how to solve this trigonometric system.

Therefore, we consider system (6) as the system of six algebraic equations for 12 direction cosines unknowns. To solve algebraic equations (6) we add to this system six orthogonality conditions for the direction cosines

$$\begin{aligned} \begin{aligned}&a^2_{21}+a^2_{22}+a^2_{23} - 1=0,\\&a^2_{31}+a^2_{32}+a^2_{33} -1=0,\\&a_{21}a_{31}+a_{22}a_{32}+a_{23}a_{33}=0,\\&b^2_{21}+b^2_{22}+b^2_{23} - 1=0,\\&b^2_{31}+b^2_{32}+b^2_{33} -1=0,\\&b_{21}a_{31}+b_{22}b_{32}+b_{23}b_{33}=0, \end{aligned} \end{aligned}$$
(7)

and obtain closed algebraic system of 12 equations for 12 unknowns.

For system (6), (7) the following problem is formulated: for given four parameters, determine all twelve direction cosines. The other six direction cosines \((a_{1i}\) and \(b_{1i})\) can be obtained from the orthogonality conditions.

In [9, 10] planar oscillations of the two-body system were analyzed, all equilibrium orientations were determined, and sufficient conditions for the stability of the equilibrium orientations were obtained, using the energy integral as a Lyapunov function. In [11], system (6), (7) was decomposed into homogeneous subsystems, using linear algebra methods and algorithms for constructing Gröbner basis. Some classes of spatial equilibrium solutions were obtained from the algebraic equations included in the Gröbner basis.

In [12, 13] system (6), (7) was solved in the special cases, when one of the principal axes of inertia of each of the two bodies coincides with either the normal to the orbital plane, the radius vector or the tangent to the orbit. In [12], algebraic system (6), (7) was divided on the set of nine subsystems, then some distinct solutions of these subsystems was founded. Another part of the subsystems from [12] was solved in paper [13].

Solving the system of 12 algebraic equations (6) and (7) depending on four parameters by applying methods for constructing Gröbner bases is a very complicated algorithmic problem. Experiments on the construction of a Gröbner basis for the system of polynomials (6) and (7) by applying the Groebner[Basis] package implemented in Maple [17] and GroebnerBasis package implemented in CAS Wolfram Mathematica [18] were performed on a personal computer with 8 GB of RAM and 2.9 GHz Intel(R) Core(TM) i7 CPU running 64-bit MS Windows 10. The computation of a Gröbner basis with the lexicographic ordering option took more than 10 h of CPU time, after which the run was terminated because of exceeding the admissible memory size available in Maple. A Gröbner basis for the system of polynomials (6) and (7) was constructed only in the special cases when \(m_1=m, m_2=n_1=n_2=1\), \(m_1=n_1=m, m_2=n_2=1\) and when all parameters were identical: \(m_1= m_2=n_1=n_2=m\). In the first and the second case, the computation of a Gröbner basis required more than 2 h of CPU time on a personal computer, while, in the third case, the computation of a Gröbner basis required more than 24 h of CPU time on a server with 16 Intel Xeon processors and 128 GB of RAM with the use of Maple 18, and more than 31 h on a PC when used GroebnerBasis package implemented in Mathematica. The results of the experiments are presented in the Table 1. The computation of the Gröbner basis of Maple package with the lexicographic ordering often was terminated because of exceeding the admissible memory size available in Maple. When calculating the Gröbne basis in Mathematica system, such a problem with memory did not arise, although the time for calculating the basis on the same computer in some cases was longer than in Maple. In the general case, we failed to construct a Gröbner basis for this system.

4 Investigation of Equilibria

We carry out a detailed study of the solution of the system of algebraic equations (6) and (7) for the case when \(m_1= m_2=n_1=n_2=m\). To solve this algebraic system, the Groebner[Basis] package for Maple 18 [17] was used. For Gröbner bases construction first, we applied the FGLM algorithm, developed by J.C. Faugere, P. Gianni, P. Lazard, and T. Mora [19] with the option of the lexicographic order of variables. The total time of the Gröbner basis computation amounts to 24 h of CPU time on a server with 16 Intel Xeon processors and 128 GB of RAM with the use of Maple 18. The time of the Gröbner basis computation using the Wolfram Mathematica 11 GroebnerBasis package for this case amounted to 31 h of CPU time on a PC with 2.9 GHz Intel Core i7 processor and 8 GB of RAM.

We tried to use different variable orderings. Since the change of variables \(a_{ij}\) to \(b_{ij}\) and vice versa does not change the form of system (6), (7), we used the different \(a_{ij}\) variable orderings when constructing the Gröbner basis. The result for the variables \(b_{ij}\) was the same.

We also have used other monomial orderings in our task. For the simpler case \(m_1= n_1=m, n_2=m_2=1\) the Gröbner basis was constructed in power order of variable only with the tdeg option. We were unable to compute the Gröbner basis of the lexicographic order with the FGLM algorithm because of a program interruption caused by exceeding the allowable memory limit. In Mathematica system the result for this case was obtained.

For the case \(m_1=m, m_2=n_1=n_2=1\) the Gröbner basis was constructed using the Walk algorithm [20] with the lexdeg option. The number of polynomials in the resulting Gröbner basis was 170, and the number of 120 character lines in the basis exceeded one million. The calculating the Gröbner basis in Mathematica system on the same computer was faster than in Maple (see Table 1).

Table 1 Time required to compute Gröbner basis for particular cases of the system parameters in Maple and Mathematica

For the more general case when \(m_1= m_2=n_1=n_2=m\). we constructed the Gröbner basis of the system of 12 second-order polynomials (6),(7) with 12 variables \(a_{ij}\) \((i=2,3; j=1,2,3)\), \(b_{ij}\) \((i=2,3; j=1,2,3)\) on high performance server with respect to the lexicographic ordering of variables by using the Groebner[Basis] package for Maple 18 option plex, and in the list of polynomials we include the polynomials from the left-hand sides \(f_i\) \( (i=1,2,\ldots 12)\) of the algebraic equations (6), (7). The number of polynomials in the constructed Gröbner basis was 160, the size of which occupies more than 1 million 120 character lines. Then we repeated this result of the construction the Gröbner basis using the Wolfram Mathematica 11 GroebnerBasis package on PC.

The degree of the largest variable \(a_{33}\) in the first polynomial in the constructed Gröbner basis is equal to 29, in the second polynomial the degree of the largest variable \(a_{33}\) is equal to 13, in the third polynomial the degree of the largest variable \(a_{33}\) is equal to 21. In the remaining polynomials, the degree of the variables varies from 20 to 2.

Calculating the Gröbner basis over the field of rational functions in m we compute the generic solutions of our problem. In the case of algebraic system with parameters solving, when the parameters reach non-generic solutions, the symbolic application based on comprehensive Gröbner bases [21], discriminant varieties [22], and comprehensive triangular decomposition [15, 23] methods are used. In our task, we did not use these methods because we did not consider the cases of bifurcation values of the parameters and for our problem, these methods are rather complicated.

Here we write down the first polynomial in the Gröbner basis that depends only on one variable \(x=a_{33}\). This polynomial after factorization has the form

$$\begin{aligned} P(x) = x(x^2-1) P_1(x)P_2(x) P_3(x)P_4(x) P_5(x)P_6(x) P_7(x)P_8(x)=0, \end{aligned}$$
(8)

where

$$\begin{aligned} P_1(x)= & {} x^2+m^2-1,\\ P_2(x)= & {} 16x^{4}+8\left( m^2-2\right) x^{2}+m^2,\\ P_3(x)= & {} 16m^4\left( m^2-1\right) x^4+8m^2\left( 2+m^2-3m^4\right) x^2+9m^6\\&+3m^4-8m^2-16, \\ P_4(x)= & {} 12x^2-m^3-4m^2-5m-2,\\ P_5(x)= & {} 12x^2+m^3-4m^2+5m-2,\\ P_6(x)= & {} 144m^8x^4-24m^4\left( m^2-1\right) \left( 7m^2+4\right) x^2\\&-3m^{10}+22m^8-63m^6+124m^4-144m^2+4,\\ P_7(x)= & {} 144m^8\left( m^2-1\right) x^4-24m^4\left( m^2-1\right) \left( 4m^4+3m^2-4\right) x^2\\&-\left( m^6+m^4-m^2-4\right) \left( 3m^4+5m^2+4\right) \left( m^2-4\right) ,\\ P_8(x)= & {} 16\left( m^2+1\right) \left( m^2+4\right) x^4+8\left( m^2+1\right) \left( m^2+4\right) \left( m^2-2\right) x^2\\&+m^2\left( m^2-2\right) ^2. \end{aligned}$$

It is necessary to consider two cases \(a_{33} = 0\), \(a^2_{33} =1\), and eight cases \( P_i(a_{33})=0\) \((i=1,2,3,4,5,6,7,8)\) to investigate the solutions of system (6), (7).

Cases \(a_{33} =0\) and \(a^2_{33} =1\) were considered in detail in [12].

Case 1: \(P_1(a_{33}) =0\). The satellite–stabilizer equilibrium solutions are determined by the real roots of the equation \( a^2_{33}=1- m^2\). The real roots of this equation exist under the conditions \(-1 \le m \le 1\).

Case 2: \(P_2(a_{33})=0\). The solutions of this equation have the form

$$\begin{aligned} a_{33}^2=\frac{2-m^2\pm \sqrt{\left( m^2- 1\right) (m^2-4)}}{4} \end{aligned}$$
(9)

and they exist under the conditions \(-1 \le m \le 1\) (\(0 \le a_{33}^2 \le 1\)).

Case 3: \(P_3(a_{33})=0\). The solutions of this equation have the form

$$\begin{aligned} a_{33}^2=\frac{3m^4-m^2-2\pm 2\sqrt{3\left( m^2- 1\right) }}{4m^2\left( m^2-1\right) }. \end{aligned}$$
(10)

Solutions (10) exist when the numerator has the sign “\(+\)” in front of the radical, and when \(0 \le a_{33}^2 \le 1\) under the conditions \(m \le -2\) or \(m \ge 2\). When the numerator in (10) has the sign “−” in front of the radical and when \(0 \le a_{33}^2 \le 1\), the solutions (10) exist under the conditions \(m \le -2/\sqrt{3}\) or \(m \ge 2/\sqrt{3}\).

Case 4: \(P_4(a_{33}) =0\). The solutions are determined by the real roots of the equation \(a^2_{33}=\big (2(2m^2+1)+m(m^2+5)\big )/12m^2\). The real roots of this equation exist under the conditions \(-2 \le m \le \frac{7-\sqrt{57}}{2}\); \(1 \le m \le \frac{7+\sqrt{57}}{2}\) .

Case 5: \(P_5(a_{33}) =0\). The solutions are determined by the real roots of the equation \( a^2_{33}=\big (2\left( 2m^2+1\right) -m\left( m^2+5\right) \big )/12m^2\). The real roots of this equation exist under the conditions \(-\frac{7+\sqrt{57}}{2} \le m \le -1\); \(\frac{-7+\sqrt{57}}{2} \le m \le 2\) .

Case 6: \(P_6(a_{33})=0\). The solutions of this equation have the form

$$\begin{aligned} a_{33}^2=\frac{(7m^2+4)(m^2-1)\pm (m^4+5m^2-4)\sqrt{3(m^2- 1)}}{12m^4}. \end{aligned}$$
(11)

Solutions (11) exist in the case when the numerator has the sign“\(+\)” in front of the radical and when \(0 \le a_{33}^2 \le 1\) under the conditions \(-2 \le m \le -1\) or \(1 \le m \le 2\). In the case when the numerator in (11) has the sign “−” in front of the radical and when \(0 \le a_{33}^2 \le 1\) solutions (11) exist under the conditions \(-2 \le m \le -2/\sqrt{3}\); \(m=\pm 1\); \( 2/\sqrt{3} \le m \le 2\).

Case 7: \(P_7(a_{33})=0\). The solutions of this equation have the form

$$\begin{aligned} a_{33}^2=\frac{\left( 4m^4+3m^2-4\right) \left( m^2-1\right) \pm \left( m^6+2m^4-5m^2-4\right) \sqrt{3\left( m^2- 1\right) }}{12m^4\left( m^2-1\right) }. \end{aligned}$$
(12)

Solutions (12) exist in the case when the numerator has the sign “\(+\)” in front of the radical, and when \(0 \le a_{33}^2 \le 1\) under the conditions \(m \le -2/\sqrt{3}\) or \(m \ge 2/\sqrt{3}\). In the case when the numerator in (12) has the sign “−” in front of the radical and when \(0 \le a_{33}^2 \le 1\) the solutions exist under the conditions \(-2< m < -1\); \( 1< m < 2\).

Case 8: \(P_8(a_{33})=0\). The solutions of this equation have the form

$$\begin{aligned} a_{33}^2=\frac{(m^2-2)\left( -\left( m^2+1\right) \left( m^2+4\right) \pm \left( m^2+2\right) \sqrt{\left( m^2+1\right) \left( m^2+1\right) }\right. }{4\left( m^2+1\right) \left( m^2+4\right) }. \end{aligned}$$
(13)

Solutions (13) exist if \(-\sqrt{2} \le m \le \sqrt{2}\) (\(0 \le a_{33}^2 \le 1\)).

For each solution of the cases 1–8, one can find from the third polynomial of the constructed Gröbner basis two values of \(a_{32}\). This polynomial has the following structure \(6(3m+1)a_{32}^2P_9(m)+P_{10}(a_{33},m)\), where \(P_9(m)\) is the polynomial of the 67th degree in variable m, and \(P_{10}(a_{33},m)\) is the polynomial of the 68th degree in variable m and the 20th degree in variable \(a_{33}\). Since the values \(a_{32}\) depend on the parameter m, then for \(a_{32}\) there are no more than two real values. We will get two values of \(a_{32}\), which lie between \(-1\) and 1 only for the certain values of m that can be obtained numerically. Then we can obtain respective two values \(a_{31}\) from the second condition (7) These will be real, if and only if the values of \(a_{33}\) and \(a_{32}\) are real and lie between \(-1\)1 and 1. For each set of values \(a_{31}\), \(a_{32}\), \(a_{33}\) one can find two values of \(a_{23}\) and, next, their respective values \(a_{21}\) and \(a_{22}\). For each set of values \(a_{2i}\) and \(a_{3i}\) one can unambiguously determine from the original system (6), (7) the values of the other direction cosines. Thus, each real root of the equations in the cases 1–8 corresponds to no more than 8 equilibrium orientations of the system of two bodies connected by a spherical hinge on a circular orbit.

To study the evolution of the conditions of the existence of a different number of equilibrium orientations depending on the magnitude of parameter m we perform a detailed analysis of the inequalities of the cases above.

The symbolic computations of the system of inequalities that determines the existence of the real roots of the equations \( P_i(a_{33})=0\) were obtained with the help of Mathematica function Reduce, which reduces the statement by solving inequalities. The calculated ranges of the values of parameter m with an equal number of equilibrium solutions for the 8 cases are shown in the Table 2.

The resulting partition of the range of parameter m into 13 intervals with equal numbers of equilibria for all eight cases can be summarized as follows.

In the intervals \( m < -\frac{7+\sqrt{57}}{2}; m > \frac{7+\sqrt{57}}{2}\) there are no more than 6 equilibrium solutions (48 equilibrium orientations). Four solutions (10) in case 3 and two solutions in case 7, when in (12) the numerator has the sign “\(+\)” in front of the radical.

Table 2 Equilibrium solutions

In the intervals \( -\frac{7+\sqrt{57}}{2} \le m \le -2; 2 \le m \le \frac{7+\sqrt{57}}{2}\) there are no more than 8 equilibrium solutions (64 equilibrium orientations). Four solutions (10) in case 3, two solutions in case 4 in the interval \(2 \le m \le \frac{7+\sqrt{57}}{2}\), two solutions in case 5 in the interval \( -\frac{7+\sqrt{57}}{2} \le m \le -2\) and two solutions in case 7, when in (12) the numerator has the sign “\(+\)” in front of the radical.

In the intervals \( -2< m \le -\sqrt{2}; \sqrt{2} \le m < 2\) there are no more than 14 equilibrium solutions (112 equilibrium orientations). Two solutions (10) in case 3, when in (11) the numerator has the sign“−” in front of the radical. Two solutions in case 4, two solutions in case 5, four solutions in case 6 and four solutions in case 7.

In the intervals \( -\sqrt{2}< m \le -2/\sqrt{3}; 2/\sqrt{3} \le m < \sqrt{2}\) there are no more than 18 equilibrium solutions (144 equilibrium orientations). Two solutions (10) in case 3, when in (10) the numerator has the sign“−” in front of the radical. two solutions in case 4, two solutions in case 5, four solutions in case 6, four solutions in case 7 and four solutions in case 8.

In the intervals \( -2/\sqrt{3}< m< -1; 1< m < 2/\sqrt{3}\) there are no more than 12 equilibrium solutions (96 equilibrium orientations). Two solutions in case 4, two solutions in case 5, two solutions (11) in case 6, when in (11) the numerator has the sign“\(+\)” in front of the radical, two solutions (12) in case 7, when in (12) the numerator has the sign“−” in front of the radical and four solutions in case 8.

In the intervals \( -1 \le m < \frac{7-\sqrt{57}}{2}\); \(\frac{-7+\sqrt{57}}{2} < m \le 1\) there are no more than 12 equilibrium solutions (96 equilibrium orientations). Two solutions in case 1, four solutions in case 2, two solutions in case 4 in the interval (\(-1 \le m < \frac{7-\sqrt{57}}{2}\)), two solutions in case 5 in the interval \( \frac{-7+\sqrt{57}}{2} < m \le 1 \) and four solutions in case 8.

In the final interval \(\frac{7-\sqrt{57}}{2} \le m \le \frac{-7+\sqrt{57}}{2}\) there are no more than 10 equilibrium solutions (80 equilibrium orientations). Two solutions in case 1, four solutions in case 2 and four solutions in case 8.

Equation (8) and system (6), (7) make it possible to determine all the spatial equilibrium configurations of the satellite–stabilizer, due to the action of the gravity torque for the given values of system parameter m. Special case when all four parameters \(m_1=m_2=n_1=n_2\) are equal make technically sense because these parameters depend on 9 physical parameters (\(M, A_i, B_i, C_i, a_i\)) as indicated below the system (6). To obtain condition when all four parameters are equal, it is possible to choose such 9 physical parameters values, so that equalities \(((A_1-C_1)-Ma_1^{2})=((A_2-C_2)-Ma_2^{2})= ((B_1-A_1)-Ma_1^{2})=((B_2-A_2)-Ma_2^{2})\) hold.

5 Conclusion

In the present paper we have considered the rotational motion of a satellite–stabilizer system relative to its center of mass in a circular orbit under the action of gravitational torque. The computer algebra method based on the construction of Gröbner basis has been used to determine all the equilibrium orientations of the satellite–stabilizer system in the orbital coordinate frame for the given values of the parameter m in the special case when \(m= m_1=m_2=n_1=n_2.\) This configuration makes sense from an engineering point of view. The conditions for the existence of these equilibria were obtained. We have classified the ranges of the parameter m where an equal number of equilibrium solutions of the satellite–stabilizer system can take place.

We have estimated the size of a problem, that can be solved by the application of the Gröbner basis construction method. The obtained results can be used at the stage of preliminary design of gravitational systems to control the orientation of the artificial Earth satellites.