Created a spreadsheet of function dependencies for planning Go implementation.

This commit is contained in:
Don Cross
2023-10-03 17:22:17 -04:00
parent 46a3ed4a9b
commit aed52531f0
4 changed files with 921 additions and 0 deletions

627
dependencies/dependencies.txt vendored Normal file
View File

@@ -0,0 +1,627 @@
AstroTime
TerrestrialTime
UniversalTime
UniversalTimeFromCalendar
AddDays
CalendarDateTime
DefineStar
MassProduct
LongitudeOffset
NormalizeLongitude
DeltaT
DeltaT_EspenakMeeus
TerrestrialTime
DeltaT
UniversalTime
TerrestrialTime
CalcVsop
VsopFormulaCalc
VsopSphereToRect
VsopRotate
MajorBodiesAcceleration
MajorBodiesAccelerationIncrement
CalcVsopPosVel
VsopFormulaCalc
VsopSphereToRect
VsopDerivCalc
VsopRotate
AdjustBarycenterPosVel
CalcVsopPosVel
MajorBodyBary
AdjustBarycenterPosVel
GravSim
MajorBodyBary
UpdatePosition
MajorBodiesAcceleration
GravFromState
MajorBodyBary
GetSegment
ClampIndex
GravFromState
GravSim
CalcPlutoOneWay
GravFromState
GravSim
CalcPluto
GetSegment
CalcPlutoOneWay
ClampIndex
UpdatePosition
UpdateVelocity
MajorBodyBary
CalcJupiterMoon
JupiterMoon_elem2pv
JupiterMoons
CalcJupiterMoon
precession
precession_rot
precession_posvel
precession_rot
RotateState
e_tilt
iau2000b
mean_obliq
inverse_terra
SiderealTime
terra
SiderealTime
nutation_rot
e_tilt
nutation
nutation_rot
RotateVector
nutation_posvel
nutation_rot
RotateState
gyration
precession
nutation
gyration_posvel
precession_posvel
nutation_posvel
geo_pos
terra
gyration
ecl2equ_vec
mean_obliq
GeoMoon
CalcMoon
ecl2equ_vec
precession
EclipticGeoMoon
CalcMoon
e_tilt
ecl2equ_vec
nutation
RotateEquatorialToEcliptic
GeoMoonState
AddDays
GeoMoon
GeoEmbState
GeoMoonState
Libration
CalcMoon
NormalizeLongitude
LongitudeOffset
BarycenterContrib
CalcVsop
CalcSolarSystemBarycenter
BarycenterContrib
HelioVector
CalcVsop
CalcPluto
GeoMoon
CalcEarth
CalcSolarSystemBarycenter
UserDefinedStar
VectorFromSphere
HelioDistance
VsopFormulaCalc
UserDefinedStar
HelioVector
CalcEarth
CalcVsop
CorrectLightTravel
AddDays
BackdatePosition
UserDefinedStar
HelioVector
HelioState
CorrectLightTravel
GeoVector
GeoMoon
BackdatePosition
BaryState
CalcPluto
MajorBodyBary
ExportState
CalcVsopPosVel
GeoMoonState
GeoEmbState
CalcVsopPosVel
HelioState
MajorBodyBary
CalcVsopPosVel
ExportState
CalcPluto
GeoMoonState
GeoEmbState
HelioVector
Equator
geo_pos
GeoVector
gyration
EquatorFromVector
ObserverVector
ObserverState
ObserverState
terra
gyration_posvel
VectorObserver
gyration
inverse_terra
ObserverGravity
Horizon
SiderealTime
spin
RefractionAngle
SunPosition
AddDays
CalcEarth
gyration
e_tilt
RotateEquatorialToEcliptic
EquatorialToEcliptic
e_tilt
precession
nutation
RotateEquatorialToEcliptic
Seasons
FindSeasonChange
FindSeasonChange
SearchSunLongitude
SearchSunLongitude
AddDays
Search
Search
AddDays
QuadInterp
PairLongitude
GeoVector
EquatorialToEcliptic
NormalizeLongitude
MoonPhase
PairLongitude
SearchMoonQuarter
MoonPhase
SearchMoonPhase
NextMoonQuarter
AddDays
SearchMoonQuarter
SearchMoonPhase
AddDays
Search
InternalSearchAltitude
MaxAltitudeSlope
AddDays
FindAscent
SearchRiseSet
Atmosphere
HorizonDipAngle
InternalSearchAltitude
SearchAltitude
InternalSearchAltitude
HourAngle
SiderealTime
Equator
SearchHourAngle
SiderealTime
Equator
Horizon
AddDays
SearchRelativeLongitude
SynodicPeriod
IsSuperiorPlanet
RelativeLongitudeOffset
AddDays
RelativeLongitudeOffset
EclipticLongitude
LongitudeOffset
SynodicPeriod
PlanetOrbitalPeriod
EclipticLongitude
HelioVector
EquatorialToEcliptic
Elongation
PairLongitude
AngleFromSun
SearchMaxElongation
SynodicPeriod
EclipticLongitude
LongitudeOffset
AddDays
SearchRelativeLongitude
Search
Elongation
AngleFromSun
GeoVector
AngleBetween
SearchLunarApsis
AddDays
Search
NextLunarApsis
SearchLunarApsis
AddDays
PlanetExtreme
AddDays
HelioDistance
BruteSearchPlanetApsis
PlanetOrbitalPeriod
AddDays
PlanetExtreme
SearchPlanetApsis
BruteSearchPlanetApsis
PlanetOrbitalPeriod
AddDays
Search
HelioDistance
NextPlanetApsis
PlanetOrbitalPeriod
AddDays
SearchPlanetApsis
PeakEarthShadow
AddDays
Search
EarthShadow
SolarEclipseObscuration
AngleBetween
Obscuration
SearchLunarEclipse
SearchMoonPhase
CalcMoon
PeakEarthShadow
ShadowSemiDurationMinutes
Obscuration
AddDays
NextLunarEclipse
AddDays
SearchLunarEclipse
ShadowSemiDurationMinutes
AddDays
Search
SearchGlobalSolarEclipse
SearchMoonPhase
MoonEclipticLatitudeDegrees
PeakMoonShadow
GeoidIntersect
AddDays
NextGlobalSolarEclipse
AddDays
SearchGlobalSolarEclipse
GeoidIntersect
Rotation_EQJ_EQD
RotateVector
SiderealTime
InverseRotation
RotateVector
CalcShadow
EclipseKindFromUmbra
SolarEclipseObscuration
PeakMoonShadow
AddDays
Search
MoonShadow
PeakLocalMoonShadow
AddDays
Search
LocalMoonShadow
PeakPlanetShadow
AddDays
Search
PlanetShadow
EarthShadow
GeoVector
GeoMoon
CalcShadow
MoonShadow
GeoVector
GeoMoon
CalcShadow
LocalMoonShadow
geo_pos
GeoVector
GeoMoon
CalcShadow
PlanetShadow
GeoVector
CalcShadow
MoonEclipticLatitudeDegrees
CalcMoon
SearchLocalSolarEclipse
SearchMoonPhase
MoonEclipticLatitudeDegrees
PeakLocalMoonShadow
LocalEclipse
AddDays
NextLocalSolarEclipse
AddDays
SearchLocalSolarEclipse
LocalEclipse
CalcEvent
LocalEclipseTransition
EclipseKindFromUmbra
SolarEclipseObscuration
LocalEclipseTransition
Search
CalcEvent
SunAltitude
Equator
Horizon
PlanetTransitBoundary
Search
SearchTransit
SearchRelativeLongitude
AngleFromSun
PeakPlanetShadow
AddDays
PlanetTransitBoundary
NextTransit
AddDays
SearchTransit
SearchMoonNode
EclipticGeoMoon
AddDays
Search
NextMoonNode
AddDays
SearchMoonNode
Illumination
CalcEarth
GeoMoon
HelioVector
AngleBetween
MoonMagnitude
SaturnMagnitude
VisualMagnitude
SaturnMagnitude
EquatorialToEcliptic
SearchPeakMagnitude
EclipticLongitude
LongitudeOffset
SynodicPeriod
AddDays
SearchRelativeLongitude
Search
Illumination
LagrangePoint
MassProduct
GeoMoonState
HelioState
LagrangePointFast
LagrangePointFast
CubeRoot
InverseRotation
CombineRotation
IdentityMatrix
Pivot
RotateVector
RotateState
VectorFromSphere
SphereFromVector
EquatorFromVector
HorizonFromVector
SphereFromVector
RefractionAngle
ToggleAzimuthDirection
VectorFromHorizon
VectorFromSphere
InverseRefractionAngle
ToggleAzimuthDirection
RefractionAngle
InverseRefractionAngle
RefractionAngle
EarthRotationAxis
nutation
precession
EquatorFromVector
RotationAxis
EarthRotationAxis
Rotation_EQJ_ECL
Rotation_ECL_EQJ
Rotation_EQJ_EQD
precession_rot
nutation_rot
CombineRotation
Rotation_EQJ_ECT
Rotation_EQJ_EQD
Rotation_EQD_ECT
CombineRotation
Rotation_ECT_EQJ
Rotation_ECT_EQD
Rotation_EQD_EQJ
CombineRotation
Rotation_EQD_EQJ
nutation_rot
precession_rot
CombineRotation
Rotation_EQD_HOR
SiderealTime
spin
Rotation_HOR_EQD
Rotation_EQD_HOR
InverseRotation
Rotation_HOR_EQJ
Rotation_HOR_EQD
Rotation_EQD_EQJ
CombineRotation
Rotation_EQJ_HOR
Rotation_HOR_EQJ
InverseRotation
Rotation_EQD_ECL
Rotation_EQD_EQJ
Rotation_EQJ_ECL
CombineRotation
Rotation_ECL_EQD
Rotation_EQD_ECL
InverseRotation
Rotation_ECL_HOR
Rotation_ECL_EQD
Rotation_EQD_HOR
CombineRotation
Rotation_HOR_ECL
Rotation_ECL_HOR
InverseRotation
Rotation_EQJ_GAL
Rotation_GAL_EQJ
Rotation_ECT_EQD
e_tilt
Rotation_EQD_ECT
e_tilt
Constellation
Rotation_EQJ_EQD
VectorFromSphere
RotateVector
EquatorFromVector

105
dependencies/goplan.py vendored Executable file
View File

@@ -0,0 +1,105 @@
#!/usr/bin/env python3
#
# goplan.py - Don Cross - 2023-10-03
#
# Using the dependencies of function calls in the C# version of Astronomy Engine,
# make a plan for the order we should complete functions in the Go version.
#
import sys
from typing import Set, Dict, List, Optional
class Symbol:
def __init__(self, name: str) -> None:
self.name = name
self.children: Set[str] = set()
self.visited = False
def insert(self, child: str) -> None:
self.children.add(child)
def __str__(self) -> str:
text = self.name
for child in sorted(self.children):
text += ',' + child
return text
def LoadDependencies(inFileName: str) -> Dict[str, Symbol]:
with open(inFileName, 'rt') as infile:
all: Dict[str, Symbol] = {}
parent: Optional[Symbol] = None
lnum = 0
for line in infile:
lnum += 1
line = line.rstrip()
name = line.lstrip()
if name == '':
continue # ignore blank lines
if name == line:
# There is no whitespace to the left of the name.
# This name is a parent (caller).
parent = Symbol(name)
if name in all:
print('FATAL({} line {}): parent {} was already defined.'.format(inFileName, lnum, name))
sys.exit(1)
all[name] = parent
else:
# Whitespace exists to the left of the name, so this is a child (called function).
if parent is None:
print('FATAL({} line {}): child {} has no parent.'.format(inFileName, lnum, name))
sys.exit(1)
parent.insert(name)
# Reduce verbosity in the input file by allowing implicit creation
# of a symbol that has no children.
undef: Set[str] = set()
for parent in all.values():
for child in parent.children:
if child not in all:
undef.add(child)
for name in undef:
all[name] = Symbol(name)
return all
def MakePlan(inFileName: str) -> int:
all = LoadDependencies(inFileName)
# Sweep through all symbols repeatedly.
level = 0
while True:
# On each pass, print all unvisited parents that contain no unvisited children.
# Mark each parent visited each time we print a parent.
# Keep going until we fail to print something.
namelist: List[str] = []
for parent in all.values():
if not parent.visited:
blockers = 0
for child in parent.children:
if not all[child].visited:
blockers += 1
if blockers == 0:
namelist.append(parent.name)
if len(namelist) == 0:
break
for name in sorted(namelist):
parent = all[name]
parent.visited = True
print('{},{}'.format(level, parent))
level += 1
# Report an error if any unvisited symbols remain.
undefCount = 0
for symbol in all.values():
if not symbol.visited:
print('UNVISITED: {}'.format(symbol.name))
undefCount += 1
if undefCount > 0:
return 1
return 0
if __name__ == '__main__':
sys.exit(MakePlan('dependencies.txt'))

4
dependencies/plan vendored Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
mypy --strict goplan.py || exit 1
python3 goplan.py > plan.csv || exit 1
exit 0

185
dependencies/plan.csv vendored Normal file
View File

@@ -0,0 +1,185 @@
0,AddDays
0,AngleBetween
0,Atmosphere
0,CalcEvent
0,CalcMoon
0,CalcShadow
0,CalendarDateTime
0,ClampIndex
0,CombineRotation
0,CubeRoot
0,DefineStar
0,DeltaT_EspenakMeeus
0,EclipseKindFromUmbra
0,EquatorFromVector
0,ExportState
0,FindAscent
0,HorizonDipAngle
0,IdentityMatrix
0,InverseRotation
0,IsSuperiorPlanet
0,JupiterMoon_elem2pv
0,LongitudeOffset
0,MajorBodiesAccelerationIncrement
0,MassProduct
0,MaxAltitudeSlope
0,MoonMagnitude
0,NormalizeLongitude
0,Obscuration
0,ObserverGravity
0,Pivot
0,PlanetOrbitalPeriod
0,QuadInterp
0,RefractionAngle
0,RotateEquatorialToEcliptic
0,RotateState
0,RotateVector
0,Rotation_ECL_EQJ
0,Rotation_EQJ_ECL
0,Rotation_EQJ_GAL
0,Rotation_GAL_EQJ
0,SiderealTime
0,SphereFromVector
0,ToggleAzimuthDirection
0,UniversalTimeFromCalendar
0,UpdatePosition
0,UpdateVelocity
0,UserDefinedStar
0,VectorFromSphere
0,VisualMagnitude
0,VsopDerivCalc
0,VsopFormulaCalc
0,VsopRotate
0,VsopSphereToRect
0,iau2000b
0,mean_obliq
0,precession_rot
0,spin
1,CalcJupiterMoon,JupiterMoon_elem2pv
1,CalcVsop,VsopFormulaCalc,VsopRotate,VsopSphereToRect
1,CalcVsopPosVel,VsopDerivCalc,VsopFormulaCalc,VsopRotate,VsopSphereToRect
1,CorrectLightTravel,AddDays
1,DeltaT,DeltaT_EspenakMeeus
1,Horizon,RefractionAngle,SiderealTime,spin
1,HorizonFromVector,RefractionAngle,SphereFromVector,ToggleAzimuthDirection
1,InternalSearchAltitude,AddDays,FindAscent,MaxAltitudeSlope
1,InverseRefractionAngle,RefractionAngle
1,LagrangePointFast,CubeRoot
1,Libration,CalcMoon,LongitudeOffset,NormalizeLongitude
1,MajorBodiesAcceleration,MajorBodiesAccelerationIncrement
1,MoonEclipticLatitudeDegrees,CalcMoon
1,Rotation_EQD_HOR,SiderealTime,spin
1,Search,AddDays,QuadInterp
1,SolarEclipseObscuration,AngleBetween,Obscuration
1,SynodicPeriod,PlanetOrbitalPeriod
1,e_tilt,iau2000b,mean_obliq
1,ecl2equ_vec,mean_obliq
1,inverse_terra,SiderealTime
1,precession,precession_rot
1,precession_posvel,RotateState,precession_rot
1,terra,SiderealTime
2,AdjustBarycenterPosVel,CalcVsopPosVel
2,BarycenterContrib,CalcVsop
2,CalcEarth,CalcVsop
2,GeoMoon,CalcMoon,ecl2equ_vec,precession
2,JupiterMoons,CalcJupiterMoon
2,LocalEclipseTransition,CalcEvent,Search
2,PlanetTransitBoundary,Search
2,Rotation_ECT_EQD,e_tilt
2,Rotation_EQD_ECT,e_tilt
2,Rotation_HOR_EQD,InverseRotation,Rotation_EQD_HOR
2,SearchAltitude,InternalSearchAltitude
2,SearchLunarApsis,AddDays,Search
2,SearchMoonPhase,AddDays,Search
2,SearchRiseSet,Atmosphere,HorizonDipAngle,InternalSearchAltitude
2,SearchSunLongitude,AddDays,Search
2,ShadowSemiDurationMinutes,AddDays,Search
2,TerrestrialTime,DeltaT
2,VectorFromHorizon,InverseRefractionAngle,ToggleAzimuthDirection,VectorFromSphere
2,nutation_rot,e_tilt
3,CalcSolarSystemBarycenter,BarycenterContrib
3,FindSeasonChange,SearchSunLongitude
3,GeoMoonState,AddDays,GeoMoon
3,LocalEclipse,CalcEvent,EclipseKindFromUmbra,LocalEclipseTransition,SolarEclipseObscuration
3,MajorBodyBary,AdjustBarycenterPosVel
3,NextLunarApsis,AddDays,SearchLunarApsis
3,Rotation_EQD_EQJ,CombineRotation,nutation_rot,precession_rot
3,Rotation_EQJ_EQD,CombineRotation,nutation_rot,precession_rot
3,UniversalTime,TerrestrialTime
3,nutation,RotateVector,nutation_rot
3,nutation_posvel,RotateState,nutation_rot
4,AstroTime,AddDays,CalendarDateTime,TerrestrialTime,UniversalTime,UniversalTimeFromCalendar
4,Constellation,EquatorFromVector,RotateVector,Rotation_EQJ_EQD,VectorFromSphere
4,EarthRotationAxis,EquatorFromVector,nutation,precession
4,EclipticGeoMoon,CalcMoon,RotateEquatorialToEcliptic,e_tilt,ecl2equ_vec,nutation
4,EquatorialToEcliptic,RotateEquatorialToEcliptic,e_tilt,nutation,precession
4,GeoEmbState,GeoMoonState
4,GeoidIntersect,CalcShadow,EclipseKindFromUmbra,InverseRotation,RotateVector,Rotation_EQJ_EQD,SiderealTime,SolarEclipseObscuration
4,GravFromState,MajorBodyBary
4,GravSim,MajorBodiesAcceleration,MajorBodyBary,UpdatePosition
4,Rotation_ECT_EQJ,CombineRotation,Rotation_ECT_EQD,Rotation_EQD_EQJ
4,Rotation_EQD_ECL,CombineRotation,Rotation_EQD_EQJ,Rotation_EQJ_ECL
4,Rotation_EQJ_ECT,CombineRotation,Rotation_EQD_ECT,Rotation_EQJ_EQD
4,Rotation_HOR_EQJ,CombineRotation,Rotation_EQD_EQJ,Rotation_HOR_EQD
4,Seasons,FindSeasonChange
4,gyration,nutation,precession
4,gyration_posvel,nutation_posvel,precession_posvel
5,CalcPlutoOneWay,GravFromState,GravSim
5,GetSegment,ClampIndex,GravFromState,GravSim
5,ObserverState,gyration_posvel,terra
5,RotationAxis,EarthRotationAxis
5,Rotation_ECL_EQD,InverseRotation,Rotation_EQD_ECL
5,Rotation_EQJ_HOR,InverseRotation,Rotation_HOR_EQJ
5,SaturnMagnitude,EquatorialToEcliptic
5,SearchMoonNode,AddDays,EclipticGeoMoon,Search
5,SunPosition,AddDays,CalcEarth,RotateEquatorialToEcliptic,e_tilt,gyration
5,VectorObserver,gyration,inverse_terra
5,geo_pos,gyration,terra
6,CalcPluto,CalcPlutoOneWay,ClampIndex,GetSegment,MajorBodyBary,UpdatePosition,UpdateVelocity
6,NextMoonNode,AddDays,SearchMoonNode
6,ObserverVector,ObserverState
6,Rotation_ECL_HOR,CombineRotation,Rotation_ECL_EQD,Rotation_EQD_HOR
7,BaryState,CalcPluto,CalcVsopPosVel,ExportState,GeoEmbState,GeoMoonState,MajorBodyBary
7,HelioVector,CalcEarth,CalcPluto,CalcSolarSystemBarycenter,CalcVsop,GeoMoon,UserDefinedStar,VectorFromSphere
7,Rotation_HOR_ECL,InverseRotation,Rotation_ECL_HOR
8,EclipticLongitude,EquatorialToEcliptic,HelioVector
8,HelioDistance,HelioVector,UserDefinedStar,VsopFormulaCalc
8,HelioState,CalcPluto,CalcVsopPosVel,ExportState,GeoEmbState,GeoMoonState,HelioVector,MajorBodyBary
8,Illumination,AngleBetween,CalcEarth,GeoMoon,HelioVector,MoonMagnitude,SaturnMagnitude,VisualMagnitude
9,BackdatePosition,CorrectLightTravel,HelioState,HelioVector,UserDefinedStar
9,LagrangePoint,GeoMoonState,HelioState,LagrangePointFast,MassProduct
9,PlanetExtreme,AddDays,HelioDistance
9,RelativeLongitudeOffset,EclipticLongitude,LongitudeOffset
10,BruteSearchPlanetApsis,AddDays,PlanetExtreme,PlanetOrbitalPeriod
10,GeoVector,BackdatePosition,GeoMoon
10,SearchRelativeLongitude,AddDays,IsSuperiorPlanet,RelativeLongitudeOffset,SynodicPeriod
11,AngleFromSun,AngleBetween,GeoVector
11,EarthShadow,CalcShadow,GeoMoon,GeoVector
11,Equator,EquatorFromVector,GeoVector,geo_pos,gyration
11,LocalMoonShadow,CalcShadow,GeoMoon,GeoVector,geo_pos
11,MoonShadow,CalcShadow,GeoMoon,GeoVector
11,PairLongitude,EquatorialToEcliptic,GeoVector,NormalizeLongitude
11,PlanetShadow,CalcShadow,GeoVector
11,SearchPeakMagnitude,AddDays,EclipticLongitude,Illumination,LongitudeOffset,Search,SearchRelativeLongitude,SynodicPeriod
11,SearchPlanetApsis,AddDays,BruteSearchPlanetApsis,HelioDistance,PlanetOrbitalPeriod,Search
12,Elongation,AngleFromSun,PairLongitude
12,HourAngle,Equator,SiderealTime
12,MoonPhase,PairLongitude
12,NextPlanetApsis,AddDays,PlanetOrbitalPeriod,SearchPlanetApsis
12,PeakEarthShadow,AddDays,EarthShadow,Search
12,PeakLocalMoonShadow,AddDays,LocalMoonShadow,Search
12,PeakMoonShadow,AddDays,MoonShadow,Search
12,PeakPlanetShadow,AddDays,PlanetShadow,Search
12,SearchHourAngle,AddDays,Equator,Horizon,SiderealTime
12,SunAltitude,Equator,Horizon
13,SearchGlobalSolarEclipse,AddDays,GeoidIntersect,MoonEclipticLatitudeDegrees,PeakMoonShadow,SearchMoonPhase
13,SearchLocalSolarEclipse,AddDays,LocalEclipse,MoonEclipticLatitudeDegrees,PeakLocalMoonShadow,SearchMoonPhase
13,SearchLunarEclipse,AddDays,CalcMoon,Obscuration,PeakEarthShadow,SearchMoonPhase,ShadowSemiDurationMinutes
13,SearchMaxElongation,AddDays,EclipticLongitude,Elongation,LongitudeOffset,Search,SearchRelativeLongitude,SynodicPeriod
13,SearchMoonQuarter,MoonPhase,SearchMoonPhase
13,SearchTransit,AddDays,AngleFromSun,PeakPlanetShadow,PlanetTransitBoundary,SearchRelativeLongitude
14,NextGlobalSolarEclipse,AddDays,SearchGlobalSolarEclipse
14,NextLocalSolarEclipse,AddDays,SearchLocalSolarEclipse
14,NextLunarEclipse,AddDays,SearchLunarEclipse
14,NextMoonQuarter,AddDays,SearchMoonQuarter
14,NextTransit,AddDays,SearchTransit
1 0 AddDays
2 0 AngleBetween
3 0 Atmosphere
4 0 CalcEvent
5 0 CalcMoon
6 0 CalcShadow
7 0 CalendarDateTime
8 0 ClampIndex
9 0 CombineRotation
10 0 CubeRoot
11 0 DefineStar
12 0 DeltaT_EspenakMeeus
13 0 EclipseKindFromUmbra
14 0 EquatorFromVector
15 0 ExportState
16 0 FindAscent
17 0 HorizonDipAngle
18 0 IdentityMatrix
19 0 InverseRotation
20 0 IsSuperiorPlanet
21 0 JupiterMoon_elem2pv
22 0 LongitudeOffset
23 0 MajorBodiesAccelerationIncrement
24 0 MassProduct
25 0 MaxAltitudeSlope
26 0 MoonMagnitude
27 0 NormalizeLongitude
28 0 Obscuration
29 0 ObserverGravity
30 0 Pivot
31 0 PlanetOrbitalPeriod
32 0 QuadInterp
33 0 RefractionAngle
34 0 RotateEquatorialToEcliptic
35 0 RotateState
36 0 RotateVector
37 0 Rotation_ECL_EQJ
38 0 Rotation_EQJ_ECL
39 0 Rotation_EQJ_GAL
40 0 Rotation_GAL_EQJ
41 0 SiderealTime
42 0 SphereFromVector
43 0 ToggleAzimuthDirection
44 0 UniversalTimeFromCalendar
45 0 UpdatePosition
46 0 UpdateVelocity
47 0 UserDefinedStar
48 0 VectorFromSphere
49 0 VisualMagnitude
50 0 VsopDerivCalc
51 0 VsopFormulaCalc
52 0 VsopRotate
53 0 VsopSphereToRect
54 0 iau2000b
55 0 mean_obliq
56 0 precession_rot
57 0 spin
58 1 CalcJupiterMoon JupiterMoon_elem2pv
59 1 CalcVsop VsopFormulaCalc VsopRotate VsopSphereToRect
60 1 CalcVsopPosVel VsopDerivCalc VsopFormulaCalc VsopRotate VsopSphereToRect
61 1 CorrectLightTravel AddDays
62 1 DeltaT DeltaT_EspenakMeeus
63 1 Horizon RefractionAngle SiderealTime spin
64 1 HorizonFromVector RefractionAngle SphereFromVector ToggleAzimuthDirection
65 1 InternalSearchAltitude AddDays FindAscent MaxAltitudeSlope
66 1 InverseRefractionAngle RefractionAngle
67 1 LagrangePointFast CubeRoot
68 1 Libration CalcMoon LongitudeOffset NormalizeLongitude
69 1 MajorBodiesAcceleration MajorBodiesAccelerationIncrement
70 1 MoonEclipticLatitudeDegrees CalcMoon
71 1 Rotation_EQD_HOR SiderealTime spin
72 1 Search AddDays QuadInterp
73 1 SolarEclipseObscuration AngleBetween Obscuration
74 1 SynodicPeriod PlanetOrbitalPeriod
75 1 e_tilt iau2000b mean_obliq
76 1 ecl2equ_vec mean_obliq
77 1 inverse_terra SiderealTime
78 1 precession precession_rot
79 1 precession_posvel RotateState precession_rot
80 1 terra SiderealTime
81 2 AdjustBarycenterPosVel CalcVsopPosVel
82 2 BarycenterContrib CalcVsop
83 2 CalcEarth CalcVsop
84 2 GeoMoon CalcMoon ecl2equ_vec precession
85 2 JupiterMoons CalcJupiterMoon
86 2 LocalEclipseTransition CalcEvent Search
87 2 PlanetTransitBoundary Search
88 2 Rotation_ECT_EQD e_tilt
89 2 Rotation_EQD_ECT e_tilt
90 2 Rotation_HOR_EQD InverseRotation Rotation_EQD_HOR
91 2 SearchAltitude InternalSearchAltitude
92 2 SearchLunarApsis AddDays Search
93 2 SearchMoonPhase AddDays Search
94 2 SearchRiseSet Atmosphere HorizonDipAngle InternalSearchAltitude
95 2 SearchSunLongitude AddDays Search
96 2 ShadowSemiDurationMinutes AddDays Search
97 2 TerrestrialTime DeltaT
98 2 VectorFromHorizon InverseRefractionAngle ToggleAzimuthDirection VectorFromSphere
99 2 nutation_rot e_tilt
100 3 CalcSolarSystemBarycenter BarycenterContrib
101 3 FindSeasonChange SearchSunLongitude
102 3 GeoMoonState AddDays GeoMoon
103 3 LocalEclipse CalcEvent EclipseKindFromUmbra LocalEclipseTransition SolarEclipseObscuration
104 3 MajorBodyBary AdjustBarycenterPosVel
105 3 NextLunarApsis AddDays SearchLunarApsis
106 3 Rotation_EQD_EQJ CombineRotation nutation_rot precession_rot
107 3 Rotation_EQJ_EQD CombineRotation nutation_rot precession_rot
108 3 UniversalTime TerrestrialTime
109 3 nutation RotateVector nutation_rot
110 3 nutation_posvel RotateState nutation_rot
111 4 AstroTime AddDays CalendarDateTime TerrestrialTime UniversalTime UniversalTimeFromCalendar
112 4 Constellation EquatorFromVector RotateVector Rotation_EQJ_EQD VectorFromSphere
113 4 EarthRotationAxis EquatorFromVector nutation precession
114 4 EclipticGeoMoon CalcMoon RotateEquatorialToEcliptic e_tilt ecl2equ_vec nutation
115 4 EquatorialToEcliptic RotateEquatorialToEcliptic e_tilt nutation precession
116 4 GeoEmbState GeoMoonState
117 4 GeoidIntersect CalcShadow EclipseKindFromUmbra InverseRotation RotateVector Rotation_EQJ_EQD SiderealTime SolarEclipseObscuration
118 4 GravFromState MajorBodyBary
119 4 GravSim MajorBodiesAcceleration MajorBodyBary UpdatePosition
120 4 Rotation_ECT_EQJ CombineRotation Rotation_ECT_EQD Rotation_EQD_EQJ
121 4 Rotation_EQD_ECL CombineRotation Rotation_EQD_EQJ Rotation_EQJ_ECL
122 4 Rotation_EQJ_ECT CombineRotation Rotation_EQD_ECT Rotation_EQJ_EQD
123 4 Rotation_HOR_EQJ CombineRotation Rotation_EQD_EQJ Rotation_HOR_EQD
124 4 Seasons FindSeasonChange
125 4 gyration nutation precession
126 4 gyration_posvel nutation_posvel precession_posvel
127 5 CalcPlutoOneWay GravFromState GravSim
128 5 GetSegment ClampIndex GravFromState GravSim
129 5 ObserverState gyration_posvel terra
130 5 RotationAxis EarthRotationAxis
131 5 Rotation_ECL_EQD InverseRotation Rotation_EQD_ECL
132 5 Rotation_EQJ_HOR InverseRotation Rotation_HOR_EQJ
133 5 SaturnMagnitude EquatorialToEcliptic
134 5 SearchMoonNode AddDays EclipticGeoMoon Search
135 5 SunPosition AddDays CalcEarth RotateEquatorialToEcliptic e_tilt gyration
136 5 VectorObserver gyration inverse_terra
137 5 geo_pos gyration terra
138 6 CalcPluto CalcPlutoOneWay ClampIndex GetSegment MajorBodyBary UpdatePosition UpdateVelocity
139 6 NextMoonNode AddDays SearchMoonNode
140 6 ObserverVector ObserverState
141 6 Rotation_ECL_HOR CombineRotation Rotation_ECL_EQD Rotation_EQD_HOR
142 7 BaryState CalcPluto CalcVsopPosVel ExportState GeoEmbState GeoMoonState MajorBodyBary
143 7 HelioVector CalcEarth CalcPluto CalcSolarSystemBarycenter CalcVsop GeoMoon UserDefinedStar VectorFromSphere
144 7 Rotation_HOR_ECL InverseRotation Rotation_ECL_HOR
145 8 EclipticLongitude EquatorialToEcliptic HelioVector
146 8 HelioDistance HelioVector UserDefinedStar VsopFormulaCalc
147 8 HelioState CalcPluto CalcVsopPosVel ExportState GeoEmbState GeoMoonState HelioVector MajorBodyBary
148 8 Illumination AngleBetween CalcEarth GeoMoon HelioVector MoonMagnitude SaturnMagnitude VisualMagnitude
149 9 BackdatePosition CorrectLightTravel HelioState HelioVector UserDefinedStar
150 9 LagrangePoint GeoMoonState HelioState LagrangePointFast MassProduct
151 9 PlanetExtreme AddDays HelioDistance
152 9 RelativeLongitudeOffset EclipticLongitude LongitudeOffset
153 10 BruteSearchPlanetApsis AddDays PlanetExtreme PlanetOrbitalPeriod
154 10 GeoVector BackdatePosition GeoMoon
155 10 SearchRelativeLongitude AddDays IsSuperiorPlanet RelativeLongitudeOffset SynodicPeriod
156 11 AngleFromSun AngleBetween GeoVector
157 11 EarthShadow CalcShadow GeoMoon GeoVector
158 11 Equator EquatorFromVector GeoVector geo_pos gyration
159 11 LocalMoonShadow CalcShadow GeoMoon GeoVector geo_pos
160 11 MoonShadow CalcShadow GeoMoon GeoVector
161 11 PairLongitude EquatorialToEcliptic GeoVector NormalizeLongitude
162 11 PlanetShadow CalcShadow GeoVector
163 11 SearchPeakMagnitude AddDays EclipticLongitude Illumination LongitudeOffset Search SearchRelativeLongitude SynodicPeriod
164 11 SearchPlanetApsis AddDays BruteSearchPlanetApsis HelioDistance PlanetOrbitalPeriod Search
165 12 Elongation AngleFromSun PairLongitude
166 12 HourAngle Equator SiderealTime
167 12 MoonPhase PairLongitude
168 12 NextPlanetApsis AddDays PlanetOrbitalPeriod SearchPlanetApsis
169 12 PeakEarthShadow AddDays EarthShadow Search
170 12 PeakLocalMoonShadow AddDays LocalMoonShadow Search
171 12 PeakMoonShadow AddDays MoonShadow Search
172 12 PeakPlanetShadow AddDays PlanetShadow Search
173 12 SearchHourAngle AddDays Equator Horizon SiderealTime
174 12 SunAltitude Equator Horizon
175 13 SearchGlobalSolarEclipse AddDays GeoidIntersect MoonEclipticLatitudeDegrees PeakMoonShadow SearchMoonPhase
176 13 SearchLocalSolarEclipse AddDays LocalEclipse MoonEclipticLatitudeDegrees PeakLocalMoonShadow SearchMoonPhase
177 13 SearchLunarEclipse AddDays CalcMoon Obscuration PeakEarthShadow SearchMoonPhase ShadowSemiDurationMinutes
178 13 SearchMaxElongation AddDays EclipticLongitude Elongation LongitudeOffset Search SearchRelativeLongitude SynodicPeriod
179 13 SearchMoonQuarter MoonPhase SearchMoonPhase
180 13 SearchTransit AddDays AngleFromSun PeakPlanetShadow PlanetTransitBoundary SearchRelativeLongitude
181 14 NextGlobalSolarEclipse AddDays SearchGlobalSolarEclipse
182 14 NextLocalSolarEclipse AddDays SearchLocalSolarEclipse
183 14 NextLunarEclipse AddDays SearchLunarEclipse
184 14 NextMoonQuarter AddDays SearchMoonQuarter
185 14 NextTransit AddDays SearchTransit