|
🛰️航天仿真算法库 SpaceAST 0.0.1
|
#include <BlockDrag.hpp>
类 ast::BlockDrag 继承关系图:Public 成员函数 | |
| BlockDrag (const BlockDrag &)=delete | |
| BlockDrag & | operator= (const BlockDrag &)=delete |
| BlockDrag (Atmosphere *atmosphere, double dragCoefficient, double dragArea, Frame *propagationFrame) | |
| errc_t | run (const SimTime &simTime) override |
Public 成员函数 继承自 ast::BlockDerivative | |
| ~BlockDerivative () override=default | |
| const std::vector< DataPort > & | getDerivativePorts () const |
| std::vector< DataPort > & | getDerivativePorts () |
Public 成员函数 继承自 ast::FuncBlock | |
| const std::vector< DataPort > & | getInputPorts () const |
| std::vector< DataPort > & | getInputPorts () |
| const std::vector< DataPort > & | getOutputPorts () const |
| std::vector< DataPort > & | getOutputPorts () |
| size_t | getNumInputPorts () const |
| size_t | getNumOutputPorts () const |
| DataPort * | getInputPort (StringView portName) |
| DataPort * | getOutputPort (StringView portName) |
| DataPort * | getInputPort (size_t portIndex) |
| DataPort * | getOutputPort (size_t portIndex) |
| DataPort::EValueType | getInputPortDataType (size_t portIndex) |
| DataPort::EValueType | getOutputPortDataType (size_t portIndex) |
| void * | getInputPortSignal (size_t portIndex) |
| void * | getOutputPortSignal (size_t portIndex) |
| double * | getInputPortRealSignal (size_t portIndex) |
| double * | getOutputPortRealSignal (size_t portIndex) |
| int | getInputPortWidth (size_t portIndex) |
| int | getOutputPortWidth (size_t portIndex) |
Protected 属性 | |
| Vector3d * | position_ {&vectorBuffer_} |
| Vector3d * | velocity_ {&vectorBuffer_} |
| Vector3d * | accDrag_ {&vectorBuffer_} |
| Vector3d * | velocityDerivative_ {&vectorBuffer_} |
| double * | mass_ {&doubleBuffer_} |
| double | doubleBuffer_ {} |
| Vector3d | vectorBuffer_ {} |
| Atmosphere * | atmosphere_ {} |
| double | dragCoefficient_ {} |
| double | dragArea_ {} |
| Frame * | propagationFrame_ {} |
Protected 属性 继承自 ast::BlockDerivative | |
| std::vector< DataPort > | derivativePorts_ {} |
Protected 属性 继承自 ast::FuncBlock | |
| std::vector< DataPort > | inputPorts_ {} |
| std::vector< DataPort > | outputPorts_ {} |
额外继承的成员函数 | |
静态 Public 成员函数 继承自 ast::FuncBlock | |
| static errc_t | connect (FuncBlock *src, StringView srcPortName, FuncBlock *dst, StringView dstPortName) |
| static errc_t | connect (FuncBlock *src, size_t srcPortIndex, FuncBlock *dst, size_t dstPortIndex) |
大气阻力函数块
计算大气阻力加速度,用于低轨道航天器的大气阻力摄动建模。
方程: a_drag = -½ · Cd · (A/m) · ρ · |v_rel| · v_rel
其中: Cd = 阻力系数(dragCoefficient_) A = 阻力参考面积(dragArea_) m = 航天器质量(来自 Mass 输入端口) ρ = 大气密度(由大气模型根据位置计算) v_rel = 航天器相对于大气的速度(已减去大气旋转速度)
输入端口:
输出端口:
导数端口:
|
overridevirtual |