Manifold Services

Services for manifold objects in the Hiten framework.

Manifold Persistence Service

_ManifoldPersistenceService()

Handle persistence for manifold objects.

class hiten.algorithms.types.services.manifold._ManifoldPersistenceService[source]

Bases: _PersistenceServiceBase

Persistence helpers for manifold objects.

Parameters:
  • save_fn (Callable[[Manifold, Path, Any], None]) – The function to save the manifold.

  • load_fn (Callable[[Path, Any], Manifold]) – The function to load the manifold.

Manifold Dynamics Service

_ManifoldDynamicsService()

Provide numerical operations for manifold computations.

class hiten.algorithms.types.services.manifold._ManifoldDynamicsService(manifold)[source]

Bases: _DynamicsServiceBase

Manage STM computation and manifold trajectory generation.

Parameters:
stable

The stability of the manifold.

Type:

int

direction

The direction of the manifold.

Type:

int

forward

The forward direction of the manifold.

Type:

int

manifold_result

The manifold result.

Type:

Tuple[float, float, List[np.ndarray], List[np.ndarray], int, int]

generator

The stability pipeline.

Type:

StabilityPipeline

property generator: StabilityPipeline

The stability pipeline.

property orbit: PeriodicOrbit

The generatingorbit of the manifold.

property period: float

The period of the orbit.

property stable: bool

The stability of the manifold.

property direction: bool

The direction of the manifold.

property forward: bool

The forward direction of the manifold.

property libration_point: LibrationPoint

The libration point of the manifold.

property system: System

The system of the manifold.

property mu: float

The mu of the system.

property dynsys: _DynamicalSystem

The dynsys of the system.

property var_dynsys: _DynamicalSystem

The var_dynsys of the system.

property jacobian_dynsys: _DynamicalSystem

The jacobian_dynsys of the system.

property stm: Tuple[ndarray, ndarray, ndarray, ndarray]

The stm of the manifold.

property eigenvalues: Tuple[ndarray, ndarray, ndarray]

The eigenvalues of the system.

property eigenvectors: Tuple[ndarray, ndarray, ndarray]

The eigenvectors of the system.

property sn: ndarray

The stable eigenvectors of the system.

property un: ndarray

The unstable eigenvectors of the system.

property cn: ndarray

The center eigenvectors of the system.

property wsn: ndarray

The real stable eigenvectors of the system.

property wun: ndarray

The real unstable eigenvectors of the system.

property wcn: ndarray

The complex center eigenvectors of the system.

property stability: StabilityPipeline

The stability of the manifold.

property manifold_result: Tuple[float, float, List[ndarray], List[ndarray], int, int]

The manifold result.

property trajectories: List[Trajectory]

The trajectories of the manifold.

compute_stm(*, steps)[source]

The stm of the manifold.

This function computes the state transition matrix (STM) of the manifold.

Parameters:

steps (int) – The number of steps to take.

Returns:

The stm of the manifold.

Return type:

Tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray]

compute_manifold(*, step, integration_fraction, NN, displacement, method, order, dt, energy_tol, safe_distance, show_progress)[source]
Parameters:
Return type:

Tuple[float, float, List[ndarray], List[ndarray], int, int]

compute_stability()[source]

Compute the stability of the manifold.

Return type:

StabilityPipeline

property eigendecomposition_config: _EigenDecompositionConfig

The eigen decomposition configuration.

Manifold Services

_ManifoldServices()

Encapsulate services for manifold objects.

class hiten.algorithms.types.services.manifold._ManifoldServices(manifold, persistence, dynamics)[source]

Bases: _ServiceBundleBase

Bundle all manifold services together.

Parameters:
classmethod default(manifold)[source]

Create a default service bundle.

Parameters:

manifold (Manifold) – The manifold.

Returns:

The service bundle.

Return type:

_ManifoldServices

classmethod with_shared_dynamics(dynamics)[source]

Create a service bundle with a shared dynamics service.

Parameters:

dynamics (_ManifoldDynamicsService) – The dynamics service.

Returns:

The service bundle.

Return type:

_ManifoldServices