Marine systems simulation
CSine Class Reference
+ Inheritance diagram for CSine:
+ Collaboration diagram for CSine:

Public Member Functions

 CSine (std::string sSimObjectName, ISimObjectCreator *pCreator)
 
- Public Member Functions inherited from CSrcBase
 CSrcBase (std::string sSimObjectName, ISimObjectCreator *pCreator)
 The constructor.
 
virtual ~CSrcBase ()
 The destructor.
 
virtual void OdeFcn (const double dT, const double *const adX, double *const adXDot, const bool bIsMajorTimeStep)
 Calculates the state derivatives. More...
 

Protected Member Functions

void CalcOutput (const double dTime, const double *const adX)
 Calculations of the output signals. More...
 
- Protected Member Functions inherited from CSrcBase
void ReadParameter (std::string sTag, double *adVals, double dDefault, ISimObjectCreator *pCreator)
 Utility function to read a parameter.
 
bool ReadTwinParameters (std::string sTagA, double dDefaultA, std::string sTagB, double dDefaultB, double *adVals, ISimObjectCreator *pCreator)
 Utility function to read a parameter with two possible representations or units.
 
virtual void CalcOutput (const double dT, const double *const adX)=0
 Calculations of the output signals. More...
 
virtual const double * Signal (const double dT, const double *const adX)
 The output signal.
 
virtual const double * SignalDot (const double dT, const double *const adX)
 The derivative of the output signal.
 

Protected Attributes

double * m_adAmp
 
double * m_adPhaseRad
 
double * m_adFHz
 
double * m_adOmega
 
double * m_adBias
 
double * m_adStartTimes
 
double * m_adStopTimes
 
- Protected Attributes inherited from CSrcBase
double * m_adOutSignal
 The output signal.
 
double * m_adOutSignalDot
 The derivative of the output signal.
 
int m_iPortWidth
 The width of the output port.
 
sfh::timers::Timer m_OutputTimer
 Timer to ensure that signals are updated only once per timestep.
 

Member Function Documentation

◆ CalcOutput()

void CSine::CalcOutput ( const double  dT,
const double *const  adX 
)
protectedvirtual

Implements CSrcBase.

Member Data Documentation

◆ m_adAmp

double* CSine::m_adAmp
protected

The signal amplitude

◆ m_adBias

double* CSine::m_adBias
protected

The amplitude bias (offset from zero to the mean value of the sine wave)

◆ m_adFHz

double* CSine::m_adFHz
protected

The signal frequency [Hz]. This parameter is overridden by PeriodS

◆ m_adPhaseRad

double* CSine::m_adPhaseRad
protected

The phase of the signal in radians

◆ m_adStartTimes

double* CSine::m_adStartTimes
protected

The time to start the step. This may either be a scalar, or a comma separated list referring to the different elements of the signal.

◆ m_adStopTimes

double* CSine::m_adStopTimes
protected

The time to stop the step. This may either be a scalar, or a comma separated list referring to the different elements of the signal. If this is negative, this is a true step function with unlimited duration. If it is larger than zero, it is a pulse function, which goes back to the StartValue after the StopTime.


The documentation for this class was generated from the following file: