Skip to content
LIBRARY
tests.PointGravityOrbit.md

tests.PointGravityOrbit

Free-floating body in a point-gravity field (structural point_gravity = true on Body): started on a circular orbit, the orbital radius must stay constant. Also serves as a regression test that the unused uniform-field branch (and the point_gravity symbol itself) never enters the equations.

Usage

MultibodyComponents.tests.PointGravityOrbit(r_orbit=7e6, v_orbit=sqrt(3.986004418e14 / r_orbit))

Parameters:

NameDescriptionUnitsDefault value
r_orbitOrbit radius [m] (LEO-ish)7e6

Behavior

Source

dyad
"""
Free-floating body in a point-gravity field (structural `point_gravity = true`
on `Body`): started on a circular orbit, the orbital radius must stay constant.
Also serves as a regression test that the unused uniform-field branch (and the
`point_gravity` symbol itself) never enters the equations.
"""
example component PointGravityOrbit
  world = MultibodyComponents.World() {}
  body = MultibodyComponents.Body(m = 1, orientation_state = OrientationState.Euler(), statePriority = 1000, linearStatePriority = 1000, point_gravity = true, render = false, r_0(initial = [r_orbit, 0, 0]), v_0(initial = [0, v_orbit, 0])) {}
  "Orbit radius [m] (LEO-ish)"
  parameter r_orbit::Real = 7e6
  "Circular orbit speed for the default field constant"
  final parameter v_orbit::Real = sqrt(3.986004418e14 / r_orbit)
relations
end
Flattened Source
dyad
"""
Free-floating body in a point-gravity field (structural `point_gravity = true`
on `Body`): started on a circular orbit, the orbital radius must stay constant.
Also serves as a regression test that the unused uniform-field branch (and the
`point_gravity` symbol itself) never enters the equations.
"""
example component PointGravityOrbit
  world = MultibodyComponents.World() {}
  body = MultibodyComponents.Body(m = 1, orientation_state = OrientationState.Euler(), statePriority = 1000, linearStatePriority = 1000, point_gravity = true, render = false, r_0(initial = [r_orbit, 0, 0]), v_0(initial = [0, v_orbit, 0])) {}
  "Orbit radius [m] (LEO-ish)"
  parameter r_orbit::Real = 7e6
  "Circular orbit speed for the default field constant"
  final parameter v_orbit::Real = sqrt(3.986004418e14 / r_orbit)
relations
metadata {}
end


Test Cases

No test cases defined.

  • Examples

  • Experiments

  • Analyses