12#ifndef WSFATMOSPHERICDRAGTERM_HPP
13#define WSFATMOSPHERICDRAGTERM_HPP
19#include "wsf_space_export.h"
39 const UtCalendar& aTime,
40 const UtVec3d& aPosition,
41 const UtVec3d& aVelocity)
const override;
65 constexpr static const char*
cTYPE{
"atmospheric_drag"};
68 double mDragCoefficient{0.0};
69 double mCrossSectionalArea{0.0};
70 std::string mModelName{};
71 const wsf::space::Atmosphere* mAtmospherePtr{
nullptr};
const char * GetScriptClassName() const override
Definition WsfAtmosphericDragTerm.hpp:36
static constexpr const char * cTYPE
Definition WsfAtmosphericDragTerm.hpp:65
void SetDragCoefficient(double aDragCoefficient)
Set the drag coefficient used by this term.
Definition WsfAtmosphericDragTerm.hpp:49
const std::string & GetAtmosphereModelName() const
Get the name of the atmosphere model used by this term to compute the density.
Definition WsfAtmosphericDragTerm.hpp:58
double GetDragCoefficient() const
Return the drag coefficient used by this term.
Definition WsfAtmosphericDragTerm.hpp:46
double GetCrossSectionalArea() const
Return the cross sectional area in m^2 used by this term.
Definition WsfAtmosphericDragTerm.hpp:52
std::string GetTermType() const override
Return a string indicating the type of term.
Definition WsfAtmosphericDragTerm.hpp:63
~WsfAtmosphericDragTerm() override=default
WsfAtmosphericDragTerm()=default
WsfAtmosphericDragTerm(const WsfAtmosphericDragTerm &aOther)=default
void SetCrossSectionalArea(double aCrossSectionalArea)
Definition WsfAtmosphericDragTerm.hpp:55
void SetAtmosphereModelName(const std::string &aModelName)
Set the name of the atmosphere model used by this term to compute the density.
Definition WsfAtmosphericDragTerm.hpp:61
WsfAtmosphericDragTerm * Clone() const override
Definition WsfAtmosphericDragTerm.hpp:34
virtual bool ProcessInput(UtInput &aInput)
Definition WsfObject.cpp:140
WsfOrbitalDynamicsTerm()
Definition WsfOrbitalDynamicsTerm.hpp:34
virtual bool Initialize(const WsfOrbitalDynamics &aDynamics)
Definition WsfOrbitalDynamicsTerm.hpp:78
virtual UtVec3d ComputeAcceleration(double aMass, const UtCalendar &aTime, const UtVec3d &aPosition, const UtVec3d &aVelocity) const =0
Definition WsfOrbitalDynamics.hpp:32