🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
OrbitGeometry.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24
25AST_NAMESPACE_BEGIN
26
44AST_CORE_CAPI void aOrbitPlaneNormal(double inc, double raan, Vector3d& normal);
45
46
54AST_CORE_CAPI double aOrbitRadius(double semiMajorAxis, double eccentricity, double trueAnomaly);
55
56
65AST_CORE_CAPI void aOrbitPerifocalBasis(const OrbElem& e, Vector3d& p, Vector3d& q);
66
67
78AST_CORE_CAPI errc_t aOrbitNodeLineDistances(const OrbElem& orb1, const OrbElem& orb2, double& distPlus, double& distMinus);
79
80
87AST_CORE_CAPI errc_t aOrbitPathMinDistance(const OrbElem& orb1, const OrbElem& orb2, double& dist);
88
89
90
100AST_CORE_CAPI errc_t aOrbitPlaneProximityIntervals(
101 const TimePoint& epoch,
102 const OrbElem& orbit,
103 const OrbElem& other,
104 double gm,
105 double threshold,
106 const TimeInterval& window,
107 TimeIntervalList& result
108);
109
118AST_CORE_CAPI double aOrbitTrueAnomaly(
119 const TimePoint& epoch,
120 const OrbElem& orbit,
121 double gm,
122 const TimePoint& time
123);
124
131AST_CORE_CAPI void aOrbitPosition(
132 const TimePoint& epoch,
133 const OrbElem& orbit,
134 double gm,
135 const TimePoint& time,
136 Vector3d& position
137);
138AST_CORE_CAPI void aOrbitPosition2(
139 const TimePoint& epoch,
140 const OrbElem& orbit,
141 double gm,
142 const TimePoint& time,
143 Vector3d& position
144);
145AST_CORE_CAPI void aOrbitPosition3(
146 const TimePoint& epoch,
147 const OrbElem& orbit,
148 double gm,
149 const TimePoint& time,
150 Vector3d& position
151);
152
164AST_CORE_CAPI errc_t aOrbitPlaneDistance(
165 const TimePoint& epoch,
166 const OrbElem& orbit,
167 const OrbElem& other,
168 double gm,
169 const TimePoint& time,
170 double& dist
171);
172
175AST_NAMESPACE_END
void aOrbitPosition(const TimePoint &epoch, const OrbElem &orbit, double gm, const TimePoint &time, Vector3d &position)
计算给定时刻的轨道位置
定义 OrbitGeometry.cpp:333
void aOrbitPerifocalBasis(const OrbElem &e, Vector3d &p, Vector3d &q)
计算轨道 perifocal 基向量(近拱点/垂直方向)在惯性系中的表达
定义 OrbitGeometry.cpp:100
void aOrbitPlaneNormal(double inc, double raan, Vector3d &normal)
计算轨道面单位法向量(惯性参考系)
定义 OrbitGeometry.cpp:87
double aOrbitTrueAnomaly(const TimePoint &epoch, const OrbElem &orbit, double gm, const TimePoint &time)
计算给定时刻的真近点角(开普勒二体线性推进)
定义 OrbitGeometry.cpp:321
errc_t aOrbitPathMinDistance(const OrbElem &orb1, const OrbElem &orb2, double &dist)
计算两轨道路径之间的最短距离 [m]
定义 OrbitGeometry.cpp:149
double aOrbitRadius(double semiMajorAxis, double eccentricity, double trueAnomaly)
计算真近点角处的轨道半径 [m]
定义 OrbitGeometry.cpp:94
errc_t aOrbitNodeLineDistances(const OrbElem &orb1, const OrbElem &orb2, double &distPlus, double &distMinus)
计算两轨道面公共交线对应的两个路径距离 [m]
定义 OrbitGeometry.cpp:117
errc_t aOrbitPlaneProximityIntervals(const TimePoint &epoch, const OrbElem &orbit, const OrbElem &other, double gm, double threshold, const TimeInterval &window, TimeIntervalList &result)
计算本对象相对于另一对象轨道面距离在指定距离阈值内的时间区间
定义 OrbitGeometry.cpp:165
errc_t aOrbitPlaneDistance(const TimePoint &epoch, const OrbElem &orbit, const OrbElem &other, double gm, const TimePoint &time, double &dist)
计算给定时刻本对象到另一对象轨道面的有符号距离 [m]
定义 OrbitGeometry.cpp:365