Logo

Getting Started

  • Installation
    • Prerequisites
    • Installation Methods
      • Stable Release
    • Troubleshooting
      • Common Issues
    • Getting Help
    • Uninstallation
  • Quick Start Guide
    • Basic Setup
    • Setting Up a System
    • Working with Periodic Orbits
    • Next Steps
    • Troubleshooting
  • Examples
    • Basic Examples
      • Periodic Orbits Example
      • Center Manifold Example
      • Invariant Tori Example
      • Orbit Family Example
    • Advanced Examples
      • Heteroclinic Connection Example
      • Orbit Manifold Example
      • Poincare Map Example
      • Synodic Map Example
    • Benchmark Examples
      • Integrator Benchmark Example
      • Event Integrator Benchmark Example
      • Symplectic Event Integrator Benchmark Example
    • Running Examples
    • Example Data

User Guide

  • System Creation and Configuration
    • Basic System Creation
      • From Predefined Bodies
      • From Mass Parameter
      • Custom Body Creation
    • System Properties
    • Body Configuration
      • Body Properties
    • System Validation
    • Examples
      • Earth-Moon System
      • Sun-Earth System
      • Sun-Jupiter System
      • Custom Binary System
    • Next Steps
  • Libration Point Analysis
    • Accessing Libration Points
    • Libration Point Properties
    • Position Analysis
    • Energy Analysis
    • Stability Analysis
      • Detailed Stability Information
    • Linear Data
    • Collinear Points (L1, L2, L3)
    • Triangular Points (L4, L5)
    • Center Manifold Access
    • Orbit Creation
    • System Integration
    • Examples
      • Earth-Moon L1 Analysis
      • Sun-Earth L2 Analysis
      • Custom System Analysis
    • Next Steps
  • Basic Orbit Propagation
    • System-Level Propagation
    • State Vector Format
    • Time Units
    • Practical Examples
    • Visualization
    • Next Steps
  • Periodic Orbit Creation and Analysis
    • Creating Periodic Orbits
      • Halo Orbits
      • Halo Orbit Parameters
      • Lyapunov Orbits
      • Vertical Orbits
      • Generic Orbits
    • Orbit Correction
      • Basic Correction
      • Advanced Correction
      • Finite Difference Correction
      • Custom Correction
    • Orbit Analysis
      • Period and Stability
      • Trajectory Access
      • Energy Analysis
    • Continuation Methods
      • State Parameter Continuation
    • Examples
      • Earth-Moon L1 Halo Family
      • Sun-Earth L2 Halo Family
      • Common Issues
    • Next Steps
  • Manifold and Tori Creation
    • Invariant Manifolds
      • Creating Manifolds
    • Computing Manifolds
      • Basic Computation
      • Advanced Computation
    • Manifold Results
      • Accessing Trajectories
    • Invariant Tori
      • Creating Tori
      • Torus Parameters
    • Examples
      • Earth-Moon L1 Halo Manifolds
      • Sun-Earth L2 Halo Tori
      • Multiple Manifold Types
    • Next Steps
  • Poincare Sections and Connections
    • Poincare Sections
      • Creating Poincare Sections
      • Synodic Sections
      • Center Manifold Sections
    • Section Configuration
      • Basic Configuration
      • Advanced Configuration
    • Section Analysis
      • Accessing Section Data
      • Section Properties
    • Heteroclinic Connections
      • Creating Connections
    • Connection Analysis
      • Connection Properties
      • Connection Classification
      • Connection Visualization
    • Practical Examples
      • Earth-Moon L1-L2 Connection
      • Sun-Earth L1-L2 Connection
    • Next Steps
  • Center Manifold Analysis
    • Center Manifold Theory
    • Creating Center Manifolds
      • Center Manifold Degrees
    • Center Manifold Properties
      • Basic Properties
      • Coefficients
      • Normal Form Data
    • Center Manifold Coordinates
      • Coordinate Transformations
      • Initial Conditions
    • Poincare Maps
      • Basic Poincare Maps
      • Poincare Map Configuration
    • Poincare Map Analysis
      • Map Properties
      • Map Data
      • Map Visualization
    • Finding Orbits in Center Manifold
      • Analytical Initial Conditions
      • Orbit Creation from Center Manifold
    • Practical Examples
      • Earth-Moon L1 Center Manifold
      • Sun-Earth L2 Center Manifold
      • Custom Center Manifold Analysis
    • Next Steps
  • Polynomial Methods and Algebra
    • Understanding Polynomial Methods
      • Polynomial Representation
    • Polynomial Evaluation
    • Coordinate Transformations
      • Physical to Modal Coordinates
      • Modal to Complex Coordinates
    • Hamiltonian Polynomial Construction
      • CR3BP Hamiltonian
    • Lie Series Transformations
      • Lie Series Application
    • Polynomial Algebra
      • Polynomial Differentiation
      • Polynomial Multiplication
      • Poisson Brackets
    • Working with Polynomial Arrays
    • Next Steps
  • Fourier Analysis and Spectral Methods
  • Bifurcation Analysis
  • Integration Methods and Custom Integrators
    • Available Integrators
      • Integration Methods
      • Runge-Kutta Methods
      • Adaptive Step-Size Methods
      • Symplectic Integrators
      • Background
      • RHS Function Compilation Requirements
      • Event-Based Integration
      • Basic Event Detection
    • Creating Custom Integrators
      • Basic Custom Integrator
      • Custom Symplectic Integrators
      • Basic Symplectic Integrator Structure
    • Next Steps
  • Orbit Correction and Custom Correctors
    • Understanding Orbit Correction
      • Why Correction is Needed
    • Available Correction Methods
      • Newton-Based Correction
      • Finite Difference Correction
    • Correction Parameters
      • Convergence Criteria
      • Step Size Control
      • Line Search Configuration
    • Creating Custom Correctors
      • Basic Custom Corrector
      • Advanced Custom Corrector for Generic Problems
    • Advanced Correction
      • Correction Interfaces
      • Custom Line Search Implementations
      • Advanced Line Search Configuration
      • Custom Jacobian Computation
    • Next Steps
  • Continuation Methods and Custom Steppers
    • Understanding Continuation
      • Basic Continuation Concept
    • Available Continuation Methods
      • Natural Parameter Continuation
      • Pseudo-Arclength Continuation
    • Continuation Parameters
      • Step Size Control
      • Convergence Control
    • Multi-Parameter Continuation
    • Creating Custom Continuation Algorithms
      • Basic Custom Continuation
      • Advanced Custom Continuation
    • Advanced Continuation
      • Continuation Engine Components
      • Event Hooks and Monitoring
    • Next Steps
  • Connection Analysis and Custom Detection
    • Understanding Connections
      • Basic Connection Detection
    • Connection Search Configuration
      • Poincare Section Configuration
      • Search Configuration
    • Finding Connections
    • Connection Analysis
      • Connection Properties
      • Energy Analysis
    • Custom Connection Detection
      • Custom Backend Algorithms
      • Custom Connection Engine
      • Custom Connection Class
    • Connection Visualization
    • Advanced Connection Architecture
      • Connection Framework Components
    • Next Steps
  • Custom Dynamical Systems
    • Understanding the Dynamics Framework
    • Built-in Dynamical Systems
      • CR3BP Systems
      • Generic RHS Systems
      • Hamiltonian Systems
    • Creating Custom Dynamical Systems
      • Basic Custom System
      • Advanced Custom System with Parameters
      • Working with High-Level Systems
    • Integration with HITEN Integrators
      • Using Runge-Kutta Methods
      • Using SciPy Integration
    • Energy and Stability Analysis
      • Energy Analysis
      • Stability Analysis
    • System Testing and Validation
      • System Validation
      • Integration Testing
    • Best Practices
    • Troubleshooting
    • Next Steps

API Reference

  • System Module
    • Base Module
      • System()
        • System
    • Body Module
      • Body()
        • Body
    • Center Module
      • CenterManifold()
        • CenterManifold
    • Family Module
      • OrbitFamily()
        • OrbitFamily
    • Maps
      • Center Manifold Maps
        • Main Classes
      • Synodic Maps
        • Main Classes
    • Manifold Module
      • Manifold()
        • Manifold
      • ManifoldResult()
    • Orbits Module
      • Base Classes
        • PeriodicOrbit()
      • Halo Orbits
        • HaloOrbit()
      • Lyapunov Orbits
        • LyapunovOrbit()
      • Vertical Orbits
        • VerticalOrbit()
    • Libration Points Module
      • Base Classes
        • LibrationPoint()
      • Collinear Points
        • CollinearPoint()
        • L1Point()
        • L2Point()
        • L3Point()
      • Triangular Points
        • TriangularPoint()
        • L4Point()
        • L5Point()
    • Hamiltonian Module
      • Base Classes
        • Hamiltonian()
        • LieGeneratingFunction()
    • Tori Module
      • Base Classes
        • Torus()
        • InvariantTori()
  • Algorithms Module
    • Dynamics Module
      • Base Dynamical Systems
        • _DynamicalSystem()
        • _DirectedSystem()
        • _propagate_dynsys()
        • _validate_initial_state()
      • Dynamical System Protocols
        • _DynamicalSystemProtocol()
        • _HamiltonianSystemProtocol()
      • Right-Hand Side Systems
        • _RHSSystem()
        • create_rhs_system()
      • Hamiltonian Systems
        • _HamiltonianSystemProtocol()
        • _HamiltonianSystem()
        • _hamiltonian_rhs()
        • create_hamiltonian_system()
      • Restricted Three-Body Problem
        • _RTBPRHS()
        • _VarEqRHS()
        • _JacobianRHS()
        • rtbp_dynsys()
        • variational_dynsys()
        • _compute_stm()
        • _compute_monodromy()
        • _stability_indices()
        • _crtbp_accel()
        • _jacobian_crtbp()
        • _var_equations()
        • rtbp_dynsys()
        • variational_dynsys()
        • jacobian_dynsys()
      • Dynamics Utilities
        • Energy Functions
        • _max_rel_energy_error()
        • crtbp_energy()
        • effective_potential()
        • kinetic_energy()
        • gravitational_potential()
        • hill_region()
        • energy_to_jacobi()
        • jacobi_to_energy()
        • primary_distance()
        • secondary_distance()
        • pseudo_potential_at_point()
        • Linear Algebra Functions
        • eigenvalue_decomposition()
        • _stability_indices()
        • Other Utility Functions
        • _zero_small_imag_part()
        • _remove_infinitesimals_in_place()
        • _remove_infinitesimals_array()
        • _totime()
    • Integrators
      • Integrators Base
        • Base Classes
      • Integrators Types
        • Result Classes
      • Integrators Configuration
        • Configuration Classes
      • Runge-Kutta Integrators
        • Base Classes
        • Fixed-Step Classes
        • Adaptive Classes
        • Factory Classes
        • Kernel Functions
        • Dense Output Functions
        • Event Functions
      • Symplectic Integrators
        • Main Classes
        • Factory Classes
        • Functions
        • Event Functions
      • Integrators Coefficients
        • Coefficient Arrays
      • Integrators Utilities
        • Event Functions
        • Step Control Functions
        • PI Controller Functions
        • Error Functions
    • Continuation Module
      • Continuation Configuration
        • Base Configuration
        • Orbit Continuation Configuration
      • Continuation Backends
        • Base Backend
        • Predict-Correct Backend
      • Continuation Engine
        • Base Engine
        • Orbit Continuation Engine
      • Continuation Interfaces
        • Periodic Orbit Continuation Interface
      • Continuation Base
        • Continuation Pipeline
      • Continuation Stepping Strategies
        • Base Step Interface
        • Plain Stepping
        • Natural Parameter Stepping
        • Secant Stepping
        • Factory Functions
      • Continuation Types
        • Continuation Result
        • Continuation Problem
      • Continuation Protocols
        • Continuation Step Protocol
        • Continuation Engine Protocol
    • Corrector Module
      • Corrector Configuration
        • Base Configuration
        • Orbit Correction Configuration
        • Line Search Configuration
      • Corrector Backends
        • Base Backend
        • Newton-Raphson Backend
      • Corrector Interfaces
        • Periodic Orbit Corrector Interface
      • Corrector Stepping
        • Base Step Interface
        • Plain Stepping
        • Armijo Line Search
        • Factory Functions
        • Utility Functions
      • Corrector Protocols
        • Corrector Step Protocol
        • Corrector Backend Protocol
      • Corrector Engine
        • Base Engine
        • Orbit Correction Engine
      • Corrector Types
        • Correction Result
        • Orbit Correction Result
        • Correction Problem
        • Orbit Correction Problem
        • Type Aliases
    • Bifurcation Module
      • Base Module
      • Analysis Module
      • Transformation Functions
        • _nf2aa_ee()
        • _nf2aa_sc()
    • Connections
      • Connections Base
        • Main Classes
      • Connections Backends
        • Backend Classes
        • Functions
      • Connections Configuration
        • Configuration Classes
      • Connections Engine
        • Engine Classes
        • Problem Classes
      • Connections Interfaces
        • Interface Classes
      • Connections Types
        • Result Classes
        • Problem Classes
    • Fourier Module
      • Base Functions
        • _pack_fourier_index()
        • _decode_fourier_index()
        • _init_fourier_tables()
        • _create_encode_dict_fourier()
        • _encode_fourier_index()
      • Algebra Functions
        • _fpoly_add()
        • _fpoly_scale()
        • _fpoly_mul()
        • _fpoly_diff_action()
        • _fpoly_diff_angle()
        • _fpoly_poisson()
        • _fpoly_block_evaluate()
        • _fpoly_block_gradient()
        • _fpoly_block_hessian()
      • Operations Functions
        • _make_fourier_poly()
        • _fourier_evaluate()
        • _fourier_evaluate_with_grad()
        • _fourier_hessian()
    • Hamiltonian Module
      • hamiltonian.py
      • lie.py
      • transforms.py
      • wrappers.py
      • center/
        • Center Manifold Normal Forms
      • normal/
        • Full Normal Forms
    • Linear Algebra
      • Linear Algebra Base
        • Main Classes
      • Linear Algebra Backend
        • Backend Classes
      • Linear Algebra Configuration
        • Configuration Classes
      • Linear Algebra Engine
        • Engine Classes
      • Linear Algebra Interfaces
        • Interface Classes
      • Linear Algebra Types
        • Enums
        • Result Classes
        • Problem Classes
    • Poincare Maps
      • Core Poincare Infrastructure
        • Backend Classes
        • Engine Classes
        • Configuration Classes
        • Event Classes
        • Interface Classes
        • Strategy Classes
        • Type Classes
      • Center Manifold Poincare Maps
        • Main Classes
        • Configuration Classes
        • Backend Classes
        • Engine Classes
        • Interface Classes
        • Strategy Classes
        • Type Classes
      • Synodic Poincare Maps
        • Main Classes
        • Configuration Classes
        • Backend Classes
        • Engine Classes
        • Interface Classes
        • Strategy Classes
        • Event Classes
        • Type Classes
      • Single-Hit Poincare Sections
        • Backend Classes
        • Functions
      • Poincare Events
        • Core Events
        • Synodic Events
      • Poincare Interfaces
        • Center Manifold Interfaces
        • Synodic Interfaces
      • Poincare Seeding
        • Core Seeding Protocol
        • Center Manifold Seeding
      • Poincare Strategies
        • Core Strategies
        • Center Manifold Strategies
        • Synodic Strategies
      • Poincare Types
        • Core Types
        • Center Manifold Types
        • Synodic Types
      • Poincare Utilities
        • Functions
    • Polynomial Module
      • Polynomial Representation
        • Polynomial Base Functions
        • Polynomial Algebra Functions
        • Polynomial Operations
        • Polynomial Conversion Functions
        • Polynomial Coordinate Functions
    • Types Module
      • Core Types
        • Base Classes
        • Problem and Result Types
        • Backend Call
      • State Types
        • Reference Frames
        • Coordinate Enumerations
        • State Vector Containers
        • Trajectory
      • Services Module
        • Base Services
        • Body Services
        • Center Manifold Services
        • Family Services
        • Hamiltonian Services
        • Libration Services
        • Manifold Services
        • Map Services
        • Orbit Services
        • System Services
        • Torus Services
      • Exceptions
        • Exception Hierarchy
      • Serialization
        • Serialize Base
    • Algorithms Utilities Module
      • Configuration
      • Coordinate Transformations
        • _rotating_to_inertial()
        • _inertial_to_rotating()
        • _get_mass_parameter()
        • _get_angular_velocity()
        • _to_crtbp_units()
        • _to_si_units()
        • _dimless_time()
        • _si_time()
        • _velocity_scale_si_per_canonical()
        • _get_distance()
  • Utilities Module
    • Constants Module
      • Constants
        • Constants
    • Plotting Module
      • Animation Functions
        • animate_trajectories()
      • Orbit Plotting Functions
        • plot_rotating_frame()
        • plot_inertial_frame()
        • plot_orbit_family()
      • Manifold Plotting Functions
        • plot_manifold()
        • plot_manifolds()
      • Poincare Map Functions
        • plot_poincare_map()
        • plot_poincare_connections_map()
        • plot_poincare_map_interactive()
      • Invariant Torus Functions
        • plot_invariant_torus()
      • Helper Functions
        • _get_body_color()
        • _plot_body()
        • _set_axes_equal()
        • _set_dark_mode()
    • Printing Module
      • Formatting Functions
        • _monomial_to_string()
        • _fmt_coeff()
        • _format_poly_table()
    • Testing Module
      • Test Discovery Functions
        • find_test_files()
        • main()
    • Input/Output Module
      • Common I/O Utilities
        • _ensure_dir()
        • _write_dataset()
      • Center Manifold I/O
        • save_center_manifold()
        • load_center_manifold()
        • load_center_manifold_inplace()
      • Hamiltonian I/O
        • save_hamiltonian()
        • load_hamiltonian()
        • save_lie_generating_function()
        • load_lie_generating_function()
        • load_hamiltonian_inplace()
        • load_lie_generating_function_inplace()
      • Manifold I/O
        • save_manifold()
        • load_manifold()
      • Poincare Map I/O
        • save_poincare_map()
        • load_poincare_map_inplace()
        • load_poincare_map()
      • Periodic Orbit I/O
        • save_periodic_orbit()
        • load_periodic_orbit_inplace()
        • load_periodic_orbit()
      • Body I/O
        • save_body()
        • load_body()
        • load_body_inplace()
      • Family I/O
        • save_family()
        • load_family()
        • load_family_inplace()
      • Libration Point I/O
        • save_libration_point()
        • load_libration_point()
        • load_libration_point_inplace()
      • System I/O
        • save_system()
        • load_system()
        • load_system_inplace()
      • Torus I/O
        • save_torus()
        • load_torus()
        • load_torus_inplace()
    • Logging Module
      • Logging Configuration
        • setup_logging()

Developer Guide

  • Contributing to HITEN
  • Changelog
    • [Unreleased]
  • HITEN Documentation
    • Building the Documentation
      • Prerequisites
      • Building HTML Documentation
      • Live Development
      • Building Other Formats
    • Documentation Structure
    • Adding New Documentation
    • Configuration
    • Troubleshooting
      • Common Issues
      • Getting Help
    • Contributing

Additional Information

  • References
    • Primary References
    • Mathematical Foundations
    • Numerical Methods
    • Bifurcation Theory
    • Hamiltonian Systems
    • Fourier Analysis
    • Software and Tools
    • Online Resources
    • Additional Reading
  • Glossary
    • A
    • B
    • C
    • D
    • E
    • F
    • G
    • H
    • I
    • J
    • L
    • M
    • N
    • O
    • P
    • R
    • S
    • T
    • U
    • V
    • W
    • Z
hiten
  • Algorithms Module
  • Dynamics Module
  • View page source

Dynamics Module

The dynamics module provides a comprehensive framework for defining, analyzing, and integrating dynamical systems with emphasis on applications in astrodynamics.

The module is organized into several submodules:

  • Base Dynamical Systems
    • _DynamicalSystem()
    • _DirectedSystem()
    • _propagate_dynsys()
    • _validate_initial_state()
  • Dynamical System Protocols
    • _DynamicalSystemProtocol()
    • _HamiltonianSystemProtocol()
  • Right-Hand Side Systems
    • _RHSSystem()
    • create_rhs_system()
  • Hamiltonian Systems
    • _HamiltonianSystemProtocol()
    • _HamiltonianSystem()
    • _hamiltonian_rhs()
    • create_hamiltonian_system()
  • Restricted Three-Body Problem
    • _RTBPRHS()
    • _VarEqRHS()
    • _JacobianRHS()
    • rtbp_dynsys()
    • variational_dynsys()
    • _compute_stm()
    • _compute_monodromy()
    • _stability_indices()
    • _crtbp_accel()
    • _jacobian_crtbp()
    • _var_equations()
    • rtbp_dynsys()
    • variational_dynsys()
    • jacobian_dynsys()
  • Dynamics Utilities
    • Energy Functions
    • _max_rel_energy_error()
    • crtbp_energy()
    • effective_potential()
    • kinetic_energy()
    • gravitational_potential()
    • hill_region()
    • energy_to_jacobi()
    • jacobi_to_energy()
    • primary_distance()
    • secondary_distance()
    • pseudo_potential_at_point()
    • Linear Algebra Functions
    • eigenvalue_decomposition()
    • _stability_indices()
    • Other Utility Functions
    • _zero_small_imag_part()
    • _remove_infinitesimals_in_place()
    • _remove_infinitesimals_array()
    • _totime()
Previous Next

© Copyright 2025, Gad Marconi.

Built with Sphinx using a theme provided by Read the Docs.