 |
JSBSim Flight Dynamics Model
1.1.11 (13 Feb 2022)
An Open Source Flight Dynamics and Control Software Library in C++
|
42 #include "FGJSBBase.h"
43 #include "math/FGColumnVector3.h"
44 #include "models/propulsion/FGForce.h"
45 #include "math/FGFunction.h"
181 const struct Inputs& input);
200 double GetXYZ(
int idx)
const {
return vXYZ(idx);}
226 const struct Inputs& in;
230 enum GasType {ttUNKNOWN, ttHYDROGEN, ttHELIUM, ttAIR};
234 unsigned int CellNum;
237 double MaxOverpressure;
238 FGColumnVector3 vXYZ;
239 double Xradius, Yradius, Zradius;
240 double Xwidth, Ywidth, Zwidth;
241 double ValveCoefficient;
242 typedef std::vector <FGFunction*> CoeffArray;
243 CoeffArray HeatTransferCoeff;
244 typedef std::vector <FGBallonet*> BallonetArray;
245 BallonetArray Ballonet;
257 FGColumnVector3 gasCellM;
259 FGMassBalance* MassBalance;
260 void Debug(
int from);
263 const static double R;
264 const static double M_air;
265 const static double M_hydrogen;
266 const static double M_helium;
319 double GetXYZ(
int idx)
const {
return vXYZ(idx);}
323 double GetMass(
void)
const {
return Contents * M_air;}
340 unsigned int CellNum;
343 double MaxOverpressure;
345 double Xradius, Yradius, Zradius;
346 double Xwidth, Ywidth, Zwidth;
347 double ValveCoefficient;
348 typedef std::vector <FGFunction*> CoeffArray;
349 CoeffArray HeatTransferCoeff;
363 void Debug(
int from);
366 const static double R;
367 const static double M_air;
368 const static double Cv_air;
Encapsulates the JSBSim simulation executive.
void Calculate(double dt)
Runs the gas cell model; called by BuoyantForces.
Represents a mathematical function.
This class implements a 3 element column vector.
double GetXYZ(int idx) const
Get the center of gravity location of the gas cell (including any ballonets)
double GetHeatFlow(void) const
Get the current heat flow into the ballonet.
int GetIndex(void) const
Get the index of this gas cell.
const FGMatrix33 & GetInertia(void) const
Get the moments of inertia of the gas cell (including any ballonets)
Models weight, balance and moment of inertia information.
double GetVolume(void) const
Get the current volume of the ballonet.
const FGColumnVector3 & GetXYZ(void) const
Get the center of gravity location of the ballonet.
const FGMatrix33 & GetInertia(void) const
Get the moments of inertia of the ballonet.
Models a ballonet inside a gas cell.
double GetTemperature(void) const
Get the current gas temperature inside the gas cell.
double GetMass(void) const
Get the current mass of the gas cell (including any ballonets)
Handles matrix math operations.
Utility class that aids in the conversion of forces between coordinate systems and calculation of mom...
const FGColumnVector3 & GetMassMoment(void) const
Get the moment due to mass of the gas cell (including any ballonets)
double GetXYZ(int idx) const
Get the center of gravity location of the ballonet.
FGGasCell(FGFDMExec *exec, Element *el, unsigned int num, const struct Inputs &input)
Constructor.
const FGColumnVector3 & GetXYZ(void) const
Get the center of gravity location of the gas cell (including any ballonets)
double GetPressure(void) const
Get the current gas pressure inside the gas cell.
double GetMass(void) const
Get the current mass of the ballonets.
void Calculate(double dt)
Runs the ballonet model; called by FGGasCell.