@@ -19,10 +19,10 @@ function RobotDynamics.dynamics(model::SatellitePair, x, u)
1919 q2 = qs[2 ]
2020
2121 J1, J2 = model. J1, model. J2
22- u1 = u[SA[1 ,2 , 3 ]]
23- u2 = u[SA[4 ,5 , 6 ]]
24- ω1dot = J1\ (u1 - ω1 × (J1 * ω1))
25- ω2dot = J2\ (u2 - ω2 × (J2 * ω2))
22+ u1 = u[SA[1 , 2 , 3 ]]
23+ u2 = u[SA[4 , 5 , 6 ]]
24+ ω1dot = J1 \ (u1 - ω1 × (J1 * ω1))
25+ ω2dot = J2 \ (u2 - ω2 × (J2 * ω2))
2626 q1dot = Rotations. kinematics (q1, ω1)
2727 q2dot = Rotations. kinematics (q2, ω2)
2828 SA[
3535
3636RobotDynamics. control_dim (:: SatellitePair ) = 6
3737
38- RobotDynamics. LieState (:: SatellitePair{R} ) where R = RobotDynamics. LieState (R, (0 ,3 , 3 ))
38+ RobotDynamics. LieState (:: SatellitePair{R} ) where {R} = RobotDynamics. LieState (R, (0 , 3 , 3 ))
3939
4040J1 = SMatrix {3,3} (Diagonal (fill (1.0 , 3 )))
4141J2 = SMatrix {3,3} (Diagonal (fill (2.0 , 3 )))
42- model = SatellitePair {UnitQuaternion {Float64}, Float64} (J1, J2)
43- x,u = rand (model)
42+ model = SatellitePair {QuatRotation {Float64},Float64} (J1, J2)
43+ x, u = rand (model)
4444@test norm (x[1 : 4 ]) ≈ 1
4545@test norm (x[8 : 11 ]) ≈ 1
4646s = RobotDynamics. LieState (model)
4747@test length (s) == 14
4848
4949ω1 = x[5 : 7 ]
5050ω2 = x[12 : 14 ]
51- q1 = UnitQuaternion (x[1 : 4 ],false )
52- q2 = UnitQuaternion (x[8 : 11 ],false )
51+ q1 = QuatRotation (x[1 : 4 ], false )
52+ q2 = QuatRotation (x[8 : 11 ], false )
5353@test all (RobotDynamics. vec_states (s, x)[2 : 3 ] .≈ (ω1, ω2))
54- @test all (RobotDynamics. rot_states (s, x) .≈ (q1,q2))
54+ @test all (RobotDynamics. rot_states (s, x) .≈ (q1, q2))
5555
5656
57- model = SatellitePair {MRP{Float64}, Float64} (J1, J2)
58- x,u = rand (model)
57+ model = SatellitePair {MRP{Float64},Float64} (J1, J2)
58+ x, u = rand (model)
5959@test length (x) == 12
6060s = RobotDynamics. LieState (model)
6161@test length (s) == 12
@@ -65,4 +65,4 @@ s = RobotDynamics.LieState(model)
6565q1 = MRP (x[1 : 3 ]. .. )
6666q2 = MRP (x[7 : 9 ]. .. )
6767@test all (RobotDynamics. vec_states (s, x)[2 : 3 ] .≈ (ω1, ω2))
68- @test all (RobotDynamics. rot_states (s, x) .≈ (q1,q2))
68+ @test all (RobotDynamics. rot_states (s, x) .≈ (q1, q2))
0 commit comments