pespace.detector.orbit¶
Module for orbit models, used to define a specific detector.
Classes
|
Analytical Keplerian heliocentric orbit model, used for LISA and Taiji. |
|
Analytical Keplerian geocentric orbit model, used for Tianqin. |
Abstract base class for orbit models of detector constellations. |
- class pespace.detector.orbit.OrbitModelBase[source]¶
Bases:
ABCAbstract base class for orbit models of detector constellations.
- abstractmethod get_constellation_vectors(time)[source]¶
Compute constellation vectors used in response computation at a given time.
- Parameters:
time (float) – Time in seconds at which to compute the constellation vectors.
- Returns:
Structure containing unit vectors and position vectors of the three nodes.
- Return type:
ConstellationVectorStruct
- abstract property arm_length_sec: float¶
Get the arm length in units of seconds.
- Returns:
Arm length in seconds (light travel time).
- Return type:
float
Notes
Since currently only analystic Keplerian orbit models where the armlength is a constant are implemented, we define the armlength as a attribute. This may change in future if the armlength is dependent on time.
- _abc_impl = <_abc._abc_data object>¶
- class pespace.detector.orbit.KeplerianGeocentric(arm_length, rotation_initial=0.0, revolution_initial=0.0, omega_rotation=1.9923849908611068e-05, lambda_ref=2.103121748653167, beta_ref=-0.08203047484373349)[source]¶
Bases:
OrbitModelBaseAnalytical Keplerian geocentric orbit model, used for Tianqin.
References
- Parameters:
arm_length (float)
rotation_initial (float)
revolution_initial (float)
omega_rotation (float)
lambda_ref (float)
beta_ref (float)
- AU_sec = 499.00478383615643¶
- sqrt3 = np.float64(1.7320508075688772)¶
- __init__(arm_length, rotation_initial=0.0, revolution_initial=0.0, omega_rotation=1.9923849908611068e-05, lambda_ref=2.103121748653167, beta_ref=-0.08203047484373349)[source]¶
Initialize the Keplerian geocentric orbit model.
- Parameters:
arm_length (float) – Arm length of the detector in meters.
rotation_initial (float, optional) – Initial phase of detector rotation around its center in radians, range \([0, 2\pi]\). Default is 0.0.
revolution_initial (float, optional) – Initial phase of detector revolution around the Sun in radians, range \([0, 2\pi]\). Default is 0.0.
omega_rotation (float, optional) – Angular velocity of detector rotation in rad/s. Default is \(2\pi/(3.65\text{days})\) for TianQin.
lambda_ref (float, optional) – Ecliptic longitude of the reference source in radians. Default is \(120.5/180*\pi\) for RX J0806.3+1527.
beta_ref (float, optional) – Ecliptic latitude of the reference source in radians. Default is \(-4.7/180*\pi\) for RX J0806.3+1527.
- Return type:
None
- property arm_length_sec: float¶
Get the arm length in units of seconds.
- Returns:
Arm length in seconds.
- Return type:
float
- get_constellation_vectors(time)[source]¶
Compute constellation vectors at a given time.
- Parameters:
time (float) – Time in seconds at which to compute the constellation vectors.
- Returns:
Structure containing:
n1, n2, n3: Unit vectors along the three links
x1, x2, x3: Position vectors of the three nodes in SSB frame (in seconds)
- Return type:
ConstellationVectorStruct
- _abc_impl = <_abc._abc_data object>¶
- _data_oriented = True¶
- class pespace.detector.orbit.KaplerianHeliocentric(arm_length, rotation_initial=0.0, revolution_initial=0.0)[source]¶
Bases:
OrbitModelBaseAnalytical Keplerian heliocentric orbit model, used for LISA and Taiji.
References
[1] [2] https://lisa-ldc.in2p3.fr/static/data/pdf/LDC-manual-Sangria.pdf
- Parameters:
arm_length (float)
rotation_initial (float)
revolution_initial (float)
- AU_sec = 499.00478383615643¶
- sqrt3 = np.float64(1.7320508075688772)¶
- __init__(arm_length, rotation_initial=0.0, revolution_initial=0.0)[source]¶
Initialize the Keplerian heliocentric orbit model.
- Parameters:
arm_length (float) – Arm length of the detector in meters.
rotation_initial (float, optional) – Initial phase of detector rotation around its center in radians, range \([0, 2\pi]\). Default is 0.0.
revolution_initial (float, optional) – Initial phase of detector revolution around the Sun in radians, range \([0, 2\pi]\). Default is 0.0.
- Return type:
None
- property arm_length_sec: float¶
Get the arm length in units of seconds.
- Returns:
Arm length in seconds.
- Return type:
float
- get_constellation_vectors(time)[source]¶
Compute constellation vectors at a given time.
- Parameters:
time (float) – Time in seconds at which to compute the constellation vectors.
- Returns:
Structure containing:
n1, n2, n3: Unit vectors along the three links
x1, x2, x3: Position vectors of the three nodes in SSB frame (in seconds)
- Return type:
ConstellationVectorStruct
- _abc_impl = <_abc._abc_data object>¶
- _data_oriented = True¶