@@ -132,85 +132,85 @@ math::Matrix<6, 6> CalcSabatiniStm(double orbit_radius_m, double gravity_constan
132132math::Matrix<6 , 6 > CalcStateTransformationMatrixLvlhToTschaunerHampel (const double gravity_constant_m3_s2, const double eccentricity,
133133 const double angular_momentum_kg_m2_s, const double true_anomaly_rad) {
134134 math::Matrix<6 , 6 > transition_matrix;
135- transition_matrix[0 ][0 ] = gravity_constant_m3_s2 * ( 1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 1.5 );
135+ transition_matrix[0 ][0 ] = 1.0 + eccentricity * cos (true_anomaly_rad);
136136 transition_matrix[0 ][1 ] = 0.0 ;
137137 transition_matrix[0 ][2 ] = 0.0 ;
138138 transition_matrix[0 ][3 ] = 0.0 ;
139139 transition_matrix[0 ][4 ] = 0.0 ;
140140 transition_matrix[0 ][5 ] = 0.0 ;
141141 transition_matrix[1 ][0 ] = 0.0 ;
142- transition_matrix[1 ][1 ] = gravity_constant_m3_s2 * ( 1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 1.5 );
142+ transition_matrix[1 ][1 ] = 1.0 + eccentricity * cos (true_anomaly_rad);
143143 transition_matrix[1 ][2 ] = 0.0 ;
144144 transition_matrix[1 ][3 ] = 0.0 ;
145145 transition_matrix[1 ][4 ] = 0.0 ;
146146 transition_matrix[1 ][5 ] = 0.0 ;
147147 transition_matrix[2 ][0 ] = 0.0 ;
148148 transition_matrix[2 ][1 ] = 0.0 ;
149- transition_matrix[2 ][2 ] = gravity_constant_m3_s2 * ( 1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 1.5 );
149+ transition_matrix[2 ][2 ] = 1.0 + eccentricity * cos (true_anomaly_rad);
150150 transition_matrix[2 ][3 ] = 0.0 ;
151151 transition_matrix[2 ][4 ] = 0.0 ;
152152 transition_matrix[2 ][5 ] = 0.0 ;
153- transition_matrix[3 ][0 ] = -gravity_constant_m3_s2 * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 1.5 );
153+ transition_matrix[3 ][0 ] = -eccentricity * sin (true_anomaly_rad);
154154 transition_matrix[3 ][1 ] = 0.0 ;
155155 transition_matrix[3 ][2 ] = 0.0 ;
156- transition_matrix[3 ][3 ] = pow (angular_momentum_kg_m2_s, 1.5 ) / gravity_constant_m3_s2 / (1.0 + eccentricity * cos (true_anomaly_rad));
156+ transition_matrix[3 ][3 ] = pow (angular_momentum_kg_m2_s, 3.0 ) / pow ( gravity_constant_m3_s2, 2.0 ) / (1.0 + eccentricity * cos (true_anomaly_rad));
157157 transition_matrix[3 ][4 ] = 0.0 ;
158158 transition_matrix[3 ][5 ] = 0.0 ;
159159 transition_matrix[4 ][0 ] = 0.0 ;
160- transition_matrix[4 ][1 ] = -gravity_constant_m3_s2 * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 1.5 );
160+ transition_matrix[4 ][1 ] = -eccentricity * sin (true_anomaly_rad);
161161 transition_matrix[4 ][2 ] = 0.0 ;
162162 transition_matrix[4 ][3 ] = 0.0 ;
163- transition_matrix[4 ][4 ] = pow (angular_momentum_kg_m2_s, 1.5 ) / gravity_constant_m3_s2 / (1.0 + eccentricity * cos (true_anomaly_rad));
163+ transition_matrix[4 ][4 ] = pow (angular_momentum_kg_m2_s, 3.0 ) / pow ( gravity_constant_m3_s2, 2.0 ) / (1.0 + eccentricity * cos (true_anomaly_rad));
164164 transition_matrix[4 ][5 ] = 0.0 ;
165165 transition_matrix[5 ][0 ] = 0.0 ;
166166 transition_matrix[5 ][1 ] = 0.0 ;
167- transition_matrix[5 ][2 ] = -gravity_constant_m3_s2 * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 1.5 );
167+ transition_matrix[5 ][2 ] = -eccentricity * sin (true_anomaly_rad);
168168 transition_matrix[5 ][3 ] = 0.0 ;
169169 transition_matrix[5 ][4 ] = 0.0 ;
170- transition_matrix[5 ][5 ] = pow (angular_momentum_kg_m2_s, 1.5 ) / gravity_constant_m3_s2 / (1.0 + eccentricity * cos (true_anomaly_rad));
170+ transition_matrix[5 ][5 ] = pow (angular_momentum_kg_m2_s, 3.0 ) / pow ( gravity_constant_m3_s2, 2.0 ) / (1.0 + eccentricity * cos (true_anomaly_rad));
171171
172172 return transition_matrix;
173173}
174174
175175math::Matrix<6 , 6 > CalcStateTransformationMatrixTschaunerHampelToLvlh (const double gravity_constant_m3_s2, const double eccentricity,
176176 const double angular_momentum_kg_m2_s, const double true_anomaly_rad) {
177177 math::Matrix<6 , 6 > transition_matrix;
178- transition_matrix[0 ][0 ] = pow (angular_momentum_kg_m2_s, 1.5 ) / gravity_constant_m3_s2 / (1.0 + eccentricity * cos (true_anomaly_rad));
178+ transition_matrix[0 ][0 ] = 1.0 / (1.0 + eccentricity * cos (true_anomaly_rad));
179179 transition_matrix[0 ][1 ] = 0.0 ;
180180 transition_matrix[0 ][2 ] = 0.0 ;
181181 transition_matrix[0 ][3 ] = 0.0 ;
182182 transition_matrix[0 ][4 ] = 0.0 ;
183183 transition_matrix[0 ][5 ] = 0.0 ;
184184 transition_matrix[1 ][0 ] = 0.0 ;
185- transition_matrix[1 ][1 ] = pow (angular_momentum_kg_m2_s, 1.5 ) / gravity_constant_m3_s2 / (1.0 + eccentricity * cos (true_anomaly_rad));
185+ transition_matrix[1 ][1 ] = 1.0 / (1.0 + eccentricity * cos (true_anomaly_rad));
186186 transition_matrix[1 ][2 ] = 0.0 ;
187187 transition_matrix[1 ][3 ] = 0.0 ;
188188 transition_matrix[1 ][4 ] = 0.0 ;
189189 transition_matrix[1 ][5 ] = 0.0 ;
190190 transition_matrix[2 ][0 ] = 0.0 ;
191191 transition_matrix[2 ][1 ] = 0.0 ;
192- transition_matrix[2 ][2 ] = pow (angular_momentum_kg_m2_s, 1.5 ) / gravity_constant_m3_s2 / (1.0 + eccentricity * cos (true_anomaly_rad));
192+ transition_matrix[2 ][2 ] = 1.0 / (1.0 + eccentricity * cos (true_anomaly_rad));
193193 transition_matrix[2 ][3 ] = 0.0 ;
194194 transition_matrix[2 ][4 ] = 0.0 ;
195195 transition_matrix[2 ][5 ] = 0.0 ;
196- transition_matrix[3 ][0 ] = gravity_constant_m3_s2 * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 1.5 );
196+ transition_matrix[3 ][0 ] = pow ( gravity_constant_m3_s2, 2.0 ) * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 3.0 );
197197 transition_matrix[3 ][1 ] = 0.0 ;
198198 transition_matrix[3 ][2 ] = 0.0 ;
199- transition_matrix[3 ][3 ] = gravity_constant_m3_s2 * (1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 1.5 );
199+ transition_matrix[3 ][3 ] = pow ( gravity_constant_m3_s2, 2.0 ) * (1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 3.0 );
200200 transition_matrix[3 ][4 ] = 0.0 ;
201201 transition_matrix[3 ][5 ] = 0.0 ;
202202 transition_matrix[4 ][0 ] = 0.0 ;
203- transition_matrix[4 ][1 ] = gravity_constant_m3_s2 * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 1.5 );
203+ transition_matrix[4 ][1 ] = pow ( gravity_constant_m3_s2, 2.0 ) * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 3.0 );
204204 transition_matrix[4 ][2 ] = 0.0 ;
205205 transition_matrix[4 ][3 ] = 0.0 ;
206- transition_matrix[4 ][4 ] = gravity_constant_m3_s2 * (1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 1.5 );
206+ transition_matrix[4 ][4 ] = pow ( gravity_constant_m3_s2, 2.0 ) * (1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 3.0 );
207207 transition_matrix[4 ][5 ] = 0.0 ;
208208 transition_matrix[5 ][0 ] = 0.0 ;
209209 transition_matrix[5 ][1 ] = 0.0 ;
210- transition_matrix[5 ][2 ] = gravity_constant_m3_s2 * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 1.5 );
210+ transition_matrix[5 ][2 ] = pow ( gravity_constant_m3_s2, 2.0 ) * eccentricity * sin (true_anomaly_rad) / pow (angular_momentum_kg_m2_s, 3.0 );
211211 transition_matrix[5 ][3 ] = 0.0 ;
212212 transition_matrix[5 ][4 ] = 0.0 ;
213- transition_matrix[5 ][5 ] = gravity_constant_m3_s2 * (1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 1.5 );
213+ transition_matrix[5 ][5 ] = pow ( gravity_constant_m3_s2, 2.0 ) * (1.0 + eccentricity * cos (true_anomaly_rad)) / pow (angular_momentum_kg_m2_s, 3.0 );
214214
215215 return transition_matrix;
216216}
0 commit comments