Center Module

The center module provides high-level utilities for computing a polynomial normal form of the centre manifold around a collinear libration point of the spatial circular restricted three body problem (CRTBP).

All heavy algebra is performed symbolically on packed coefficient arrays. Only NumPy is used so the implementation is portable and fast.

CenterManifold()

Centre manifold normal-form builder for libration points.

class hiten.system.center.CenterManifold[source]

Bases: _HitenBase

Centre manifold normal-form builder orchestrating adapter services.

Parameters:
  • point (LibrationPoint) – The libration point.

  • degree (int) – The degree of the center manifold.

property point: LibrationPoint

Return the libration point.

property degree: int

Return the degree of the center manifold.

hamiltonian(degree)[source]

Return the Hamiltonian of the center manifold.

Parameters:

degree (int)

Return type:

Hamiltonian

compute(form='center_manifold_real')[source]

Compute the Hamiltonian of the center manifold.

Parameters:

form (str)

Return type:

Hamiltonian

coefficients(form='center_manifold_real', degree=None)[source]

Return the coefficients of the center manifold.

Parameters:

form (str)

Return type:

str

to_synodic(cm_point, energy=None, section_coord='q3', tol=1e-14)[source]

Convert the center manifold point to synodic coordinates.

Parameters:
to_cm(synodic_6d, tol=1e-14)[source]

Convert the synodic coordinates to center manifold coordinates.

poincare_map(energy)[source]

Return the Poincare map of the center manifold.

Parameters:

energy (float)

Return type:

CenterManifoldMap

__setstate__(state)[source]

Restore the CenterManifold instance after unpickling.

classmethod load(dir_path, **kwargs)[source]

Load a CenterManifold instance from a directory.

This class method deserializes a CenterManifold object and its associated Poincare maps that were saved with the save method.

Parameters:
  • dir_path (str or Path) – The path to the directory from which to load the data.

  • **kwargs – Additional keyword arguments for the load operation.

Returns:

The loaded CenterManifold instance with its Poincare maps.

Return type:

CenterManifold