Dynamics
Overview
The dynamics functions give the time derivative of a state in specific systems and are of the form ẋ = f(x). Corresponding in-place methods have names that end with !.
Functions
ThreeBodyProblem.R2BPdynamics — FunctionR2BPdynamics(rv, μ, t)Compute time derivative of state vector in the restricted two-body system. rv is the state vector [r; v] {km; km/s}, μ is the gravitational parameter {km³/s²}, and t is time {s}.
R2BPdynamics(rv, prim::Body, t)Compute time derivative of state vector in the restricted two-body system. rv is the state vector [r; v] {km; km/s}, prim is the central body, and t is time {s}.
ThreeBodyProblem.R2BPdynamics! — FunctionR2BPdynamics!(rvdot, rv, μ, t)In-place version of R2BPdynamics(rvdot, rv, μ, t).
R2BPdynamics!(rvdot, rv, prim::Body, t)In-place version of R2BPdynamics!(rvdot, rv, prim::Body, t).
ThreeBodyProblem.CR3BPdynamics — FunctionCR3BPdynamics(rv, μ, t)Compute time derivative of state vector rv = [r; v] {NON, NON} in the rotating frame of the normalized CR3BP where μ is the CR3BP mass parameter μ₂/(μ₁+μ₂) {NON} and t is time {NON}.
CR3BPdynamics(rv, sys::System, t)Compute time derivative of state vector rv = [r; v] {NON, NON} in the rotating frame of the normalized CR3BP where sys is the CR3BP system and t is time {NON}.
CR3BPdynamics(rv, p::Array, t)Compute time derivative of state vector rv = [r; v] {km, km/s} in the rotating frame of the non-normalized CR3BP where p = [μ₁;μ₂;d] {km³/s²; km³/s²; km} contains the gravitational parameters of the first and second primary bodies as well as the distance between them. t is time {s}.
ThreeBodyProblem.CR3BPdynamics! — FunctionCR3BPdynamics!(rvdot, rv, μ, t)In-place version of CR3BPdynamics(rv, μ, t).
CR3BPdynamics!(rvdot, rv, sys::System, t)In-place version of CR3BPdynamics(rv, sys::System, t).
CR3BPdynamics!(rvdot, rv, p::Array, t)In-place version of CR3BPdynamics(rv, p::Array, t).
ThreeBodyProblem.CR3BPstm — FunctionCR3BPstm(w, μ, t)Compute time derivative of state vector w = [r; v; vec(Φ)] {NON; NON; NON} in the rotating frame of the normalized CR3BP. vec(Φ) is the vectorized state transition matrix while μ is the CR3BP mass parameter μ₂/(μ₁+μ₂) {NON} and t is time {NON}.
CR3BPstm(w, sys, t)Compute time derivative of state vector w = [r; v; vec(Φ)] {NON; NON; NON} in the rotating frame of the normalized CR3BP. vec(Φ) is the vectorized state transition matrix while sys is the CR3BP system and t is time {NON}.
ThreeBodyProblem.CR3BPstm! — FunctionCR3BPstm!(wdot, w, μ, t)In-place version of CR3BPstm(w, μ, t).
CR3BPstm!(wdot, w, sys::System, t)In-place version of CR3BPstm(w, sys::System, t).
ThreeBodyProblem.CR3BPinert — FunctionCR3BPinert(rv,μ,t)Compute time derivative of state vector rv = [r; v] {NON, NON} in the inertial frame of the normalized CR3BP where μ is the CR3BP mass parameter μ₂/(μ₁+μ₂) {NON} and t is time {NON}.
CR3BPinert(rv, sys::System, t)Compute time derivative of state vector rv = [r; v] {NON, NON} in the inertial frame of the normalized CR3BP where sys is the CR3BP system and t is time {NON}.
CR3BPinert(rvdot, rv, p::Array, t)Compute time derivative of state vector rv = [r; v] {NON, NON} in the inertial frame of the non-normalized CR3BP where p = [μ₁;μ₂;d] {km³/s²; km³/s²; km} contains the gravitational parameters of the first and second primary bodies as well as the distance between them. t is time {s}.
ThreeBodyProblem.CR3BPinert! — FunctionCR3BPinert!(rvdot, rv, μ, t)In-place version of CR3BPinert(rv, μ, t).
CR3BPinert!(rvdot, rv, sys::System, t)In-place version of CR3BPinert(rv, sys::System, t).
CR3BPinert!(rvdot, rv, p::Array, t)In-place version of CR3BPinert(rv, p::Array, t).
ThreeBodyProblem.CWdynamics — FunctionCWdynamics(rv, n, t)Clohessy-Wiltshire equations. Compute time derivative of state vector rv = [δr; δv] {km; km/s} where n {rad/s} is the mean motion of the chief and t is time {s}.
ThreeBodyProblem.CWdynamics! — FunctionCWdynamics!(rvdot,rv,n,t)Clohessy-Wiltshire equations
Inputs: n (scalar) mean motion
ThreeBodyProblem.BCPdynamics — FunctionSee G. Gómez, C. Simó, J. Llibre, and R. Martínez, Dynamics and mission design near libration points. Vol. II, vol. 3. 2001.
BCPdynamics(rv, μ, m₃, n₃, t)Compute time derivative of state vector rv = [r; v] {km; km/s} in the normalized Bicircular Four-Body Problem (BCP). μ {NON} is the BCP mass parameter and m₃ {NON} and n₃ {NON} are the normalized mass and mean motion of the tertiary body. t is time {NON}.
BCPdynamics(rv, sys::BicircularSystem, t)Compute time derivative of state vector rv = [r; v] {km; km/s} in the normalized Bicircular Four-Body Problem (BCP). sys is the BCP system and t is time {NON}.
ThreeBodyProblem.BCPdynamics! — FunctionBCPdynamics!(rvdot, rv, μ, m₃, n₃, t)In-place version of BCPdynamics(rv, μ, m₃, n₃, t).
BCPdynamics!(rvdot, rv, sys::BicircularSystem, t)In-place version of BCPdynamics(rv, sys::BicircularSystem, t).
ThreeBodyProblem.BCPstm — FunctionBCPstm(wdot, w, μ, m₃, n₃, t)Compute time derivative of state vector w = [r; v; vec(Φ)] {NON; NON; NON} in the normalized Bicircular Four-Body Problem (BCP). vec(Φ) is the vectorized state transition matrix. μ {NON} is the BCP mass parameter and m₃ {NON} and n₃ {NON} are the normalized mass and mean motion of the tertiary body. t is time {NON}.
BCPstm(wdot, w, μ, m₃, n₃, t)Compute time derivative of state vector w = [r; v; vec(Φ)] {NON; NON; NON} in the normalized Bicircular Four-Body Problem (BCP). vec(Φ) is the vectorized state transition matrix, sys is the BCP system and t is time {NON}.
ThreeBodyProblem.BCPstm! — FunctionBCPstm!(wdot, w, μ, m₃, n₃, t)In-place version of BCPstm(w, μ, m₃, n₃, t).
BCPstm!(wdot, w, sys::BicircularSystem, t)In-place version of BCPstm(w, sys::BicircularSystem, t).