SAPRE
Model API name: sapre
The SPENVIS orbit generator computes trajectory osculatory orbital elements using a numerical Runge-Kutta integration method. The independent variable is the eccentric anomaly. Osculatory elements are computed at constant equidistant eccentric anomaly steps. Orbits around three planets are currenly available (Earth, Mars and Jupiter).
Version: v1
Input group: mission / multiplicity: one
mission definition
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
planet |
Flag for definition of the central body
Earth, Mars or Jupiter |
3=Earth 4=Mars 5=Jupiter |
3 | number |
missionEndDateFlag | Flag for the definition of the mission end date |
0=By mission duration 1=Date of mission end |
0 | number |
missionDuration |
Mission duration
Only used if missionEndDateFlag [IMISD] = 0. Used if missionEndDateFlag==0 |
min: 0 max: unbounded |
1.0 | dt_duration |
missionDurationUnits |
Units for mission duration
In years(0) or days(1) Used if missionEndDateFlag==0 |
0=Years 1=Days |
0 | number |
missionEndYear |
Mission end year
Between 1950 and 2100 Used if missionEndDateFlag==1 |
min: 1950 max: 2100 |
2000 | number |
missionEndMonth |
Mission end month
Only used if missionEndDateFlag [IMISD] = 1 (by calendar date) Used if missionEndDateFlag==1 |
1=Jan 2=Feb 3=Mar 4=Apr 5=May 6=Jun 7=Jul 8=Aug 9=Sep 10=Oct 11=Nov 12=Dec |
1 | number |
missionEndDay |
Mission end day
Only used if missionEndDateFlag [IMISD] = 1 (by calendar date) Used if missionEndDateFlag==1 |
min: 1 max: 31 |
1 | number |
missionEndHour |
Mission end hours
Only used if missionEndDateFlag [IMISD] = 1 (by calendar date) Used if missionEndDateFlag==1 |
min: 0 max: 23 |
0 | number |
missionEndMinute |
Mission end minute
Only used if missionEndDateFlag [IMISD] = 1 (by calendar date) Used if missionEndDateFlag==1 |
min: 0 max: 59 |
0 | number |
missionEndSecond |
Mission end second
Only used if missionEndDateFlag [IMISD] = 1 (by calendar date) Used if missionEndDateFlag==1 |
min: 0 max: 59 |
0.0 | number |
trajectory
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
missionEndMJD |
Modified Julian day since 1950.0 of the mission end.
Only used if missionEndDateFlag [IMISD] = 2 (by MJD) Used if missionEndDateFlag==2 |
min: 0 max: unbounded note: MJD date format |
18293.0 | dt_mjd |
lastSegmentDuration |
Last segment duration
Only used if missionEndDateFlag [IMISD] = 3 (duration of last segment) Used if missionEndDateFlag==3 |
min: 0 max: unbounded |
31 | dt_duration |
advanced
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
satelliteOrientationFlag |
Satellite orientation
One axis points to zenith:1, one axis parallel to velocity vector:2, axes parallel to GEI axis:3, one axis points to the sun:4 |
1=One axis points to zenith 2=One axis parallel to velocity vector 3=Axes parallel to GEI axis 4=One axis points to the sun |
2 | number |
includeAirDrag |
Include air drag.
No:0, Yes:1 Used if trajectoryType==1 |
0=No 1=Yes |
0 | number |
airDragParam |
Air drag parameter
Only used if includeAirDrag[IDRAG]=1 Used if includeAirDrag==1 and trajectoryType==1 |
min: 0 max: unbounded |
0.0 | drag |
f10_7Average |
F10.7 solar radio flux 90-day average.
Used if includeAirDrag==1 and trajectoryType==1 |
min: 0 max: unbounded |
50.0 | flux |
f10_7 |
Value of F10.7 solar radio flux.
Used if includeAirDrag==1 and trajectoryType==1 |
min: 0 max: unbounded |
70.0 | flux |
AP |
Daily average of Ap
Used if includeAirDrag==1 and trajectoryType==1 |
min: 0 max: unbounded |
20.0 | number |
includeSolarPressure |
Include air drag.
No:0, Yes:1 Used if trajectoryType==1 |
0=No 1=Yes |
0 | number |
solarRadiationPressure1AU |
Solar radiation pressure at 1AU.
Used if includeSolarPressure==1 & trajectoryType==1 |
min: 0 max: unbounded |
0.0 | pressure |
Input group: trajectory / multiplicity: one
trajectory
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
title | Orbit title |
note: text |
Orbit segment # | text |
orbitType |
Orbit type
Used if trajectoryType==1 |
GEN=General HYP=Hyperbolic GEO=Geostationary HEL=Heliosynchronous NEI=Near Earth interplanetary TLE=Two line elements |
GEN | number |
trajectoryFlag |
Representative trajectory flag.
Number of orbits: 0, trajectory duration: 1 Used if trajectoryType==1 |
0=Number of orbits 1=Trajectory duration |
1 | number |
trajectoryOrbits |
Trajectory orbits.
Only used if trajectoryFlag[IDUR] = 0 Used if trajectoryFlag==0 and trajectoryType==1 |
min: 1 max: unbounded |
1.0 | number |
trajectoryDuration |
Trajectory duration (days).
Only used if trajectoryFlag[IDUR] = 1 Used if trajectoryFlag==1 & trajectoryType==1 |
min: 1 max: unbounded |
1.0 | dt_duration |
epoch
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
orbitStartFlag |
Flag to define orbit start
Calendar date: 1, end of previous segment: -1 (if previous segment type is not near-Earth interplanetary). Used if not orbitType==TLE & trajectoryType==1 |
1=Calendar date -1=End of previous segment |
1 | number |
orbitStartDay |
Orbit start day
Used if not orbitType==TLE and trajectoryType==1 |
min: 1 max: 31 |
1 | number |
orbitStartMonth |
Orbit start month
Used if not orbitType==TLE & trajectoryType==1 |
min: 1 max: 12 |
1 | number |
orbitStartYear |
Orbit start year
Used if not orbitType==TLE & trajectoryType==1 |
min: 0 max: 2050 |
2020 | number |
orbitStartHours |
Orbit start hour
Used if not orbitType==TLE & trajectoryType==1 |
min: 0 max: 23 |
0 | number |
orbitStartMinutes |
Orbit start min
Used if not orbitType==TLE & trajectoryType==1 |
min: 0 max: 59 |
0 | number |
orbitStartSeconds |
Orbit start second
Used if not orbitType==TLE & trajectoryType==1 |
min: 0 max: 59 |
0 | number |
ephemera
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
altitudeSpecification |
Flag for altitude for general orbit.
Used if (orbitType==GEN or orbitType==HYP) & trajectoryType==1 |
0=Perigee and apogee altitudes 1=Semi-major axis and eccentricity 2=Altitude for a circular orbit |
0 | number |
perigeeAltitude |
Perigee altitude.
Used if orbitType==GEN and altitudeSpecification==0 and trajectoryType==1 |
min: 0 max: unbounded |
300 | altitude |
apogeeAltitude |
Apogee altitude.
Used if orbitType==GEN and altitudeSpecification==0 and trajectoryType==1 |
min: 0 max: unbounded |
36000 | altitude |
semiMajorAxis |
Semi-major axis
Used if orbitType==GEN and altitudeSpecification==1 and trajectoryType==1 |
min: 0 max: unbounded |
6671 | length |
eccentricity |
Eccentricity
Used if orbitType==GEN and altitudeSpecification==1 and trajectoryType==1 |
min: 0 max: 1 |
0 | number |
inclination |
Orbit inclination
The angle between the plane of an orbit and the equator Used if orbitType==GEN and trajectoryType==1 |
min: 0 max: 180 |
0.0 | plane_angle |
raanFlag |
Flag for specifying right ascension of ascending node.
only used if TYPE=’GEN’ or ’HYP’; options 1 and 2 are not applicable for circular or hyperbolic orbits Used if (orbitType==GEN or orbitType==HYP) and trajectoryType==1 |
0=Ascending node 1=Longitude of apogee 2=Longitude of perigee |
0 | plane_angle |
raan |
Right ascension of the ascending node.
The angle from a reference direction, called the origin of longitude, to the direction of the ascending node, measured in a reference plane Used if (orbitType==GEN or orbitType==HYP) and trajectoryType==1 |
min: 0 max: 360 |
0 | plane_angle |
altitude |
Altitude for circular orbit (km).
Used if (orbitType==GEN or orbitType==HYP) and altitudeSpecification==2 and trajectoryType==1 |
min: 0 max: unbounded |
6671.0 | altitude |
longitude |
Longitude for GEO orbit.
Used if orbitType==GEO |
min: 0 max: 360 |
0 | plane_angle |
argumentOfPerigee |
Argument of perigee.
Used if (orbitType==GEN or orbitType==HYP) and trajectoryType==1 |
min: 0 max: 360 |
0.0 | plane_angle |
localTimeAscendingNode |
Local time of the ascending node.
Used if (orbitType==GEN or orbitType==HYP) and trajectoryType==1 |
min: 0 max: 360 |
0 | number |
trueAnomaly |
True anomaly.
Used if (orbitType==GEN or orbitType==HYP) and trajectoryType==1 |
min: 0 max: 360 |
0.0 | plane_angle |
sunDistance |
Distance from Sun
Used if orbitType==NEI and trajectoryType==1 |
min: 0 max: unbounded |
1.0 | length |
output
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
DT1 |
Output resolution (s) for altitudes below DH2.
Used if not orbitType==HEL and trajectoryType==1 |
min: 0 max: unbounded |
60.0 | number |
DH2 |
Altitude separation (km) between regions of high and intermediate output resolution.
Used if not orbitType==HEL and trajectoryType==1 |
min: 0 max: unbounded |
20000.0 | number |
DT2 |
Output resolution (s) for altitudes between DH2 and DH3.
Used if not orbitType==HEL and trajectoryType==1 |
min: 0 max: unbounded |
240.0 | number |
DH3 |
Altitude separation (km) between regions of high and intermediate output resolution.
Used if not orbitType==HEL and trajectoryType==1 |
min: 0 max: unbounded |
80000.0 | number |
DT3 |
Output resolution (s) for altitudes above DH3.
Used if not orbitType==HEL and trajectoryType==1 |
min: 0 max: unbounded |
3600.0 | number |
step |
Eccentric anomaly step (deg).
Used if not orbitType==HEL and trajectoryType==1 |
min: 0 max: unbounded |
0.5 | number |
TLE
Input | Description | Valid values | Default | Quantity |
---|---|---|---|---|
tle1 |
TLE line 1.
Used if orbitType==TLE and trajectoryType==1 |
note: text |
text | |
tle2 |
TLE line 2.
Used if orbitType==TLE and trajectoryType==1 |
note: text |
text |
|
Model example
from nom_client.nom_client import NoMClient
nom_client = NoMClient("sapre model example")
sapre_model_gto = nom_client.get_model('sapre')
sapre_model_gto.set_params(orbitType="GEN")
sapre_gto_result = nom_client.run_model(sapre_model_gto)
print(sapre_gto_result)
Model references
No references