Module: ExtPulsedTorque

Module: dynamicEffector Class used to provide a direct pulsed external torque on body The module PDF Description contains further information on this module’s function, how to run it, as well as testing.


class ExtPulsedTorque : public SysModel, public DynamicEffector

Public Functions

ExtPulsedTorque()

This is the constructor. It sets some default initializers that can be overriden by the user.

~ExtPulsedTorque()

The destructor. Nothing of note is performed here

void SelfInit()

No Action is performed in this function.

Return

void

void CrossInit()

This method is used to connect the input message. It sets the message ID based on what it finds for the input string. If the message is not successfully linked, it will warn the user.

Return

void

void UpdateState(uint64_t CurrentSimNanos)
void linkInStates(DynParamManager &statesIn)
void writeOutputMessages(uint64_t currentClock)

This module does not write any output messages.

Return

void

Parameters
  • CurrentClock: The current time used for time-stamping the message

void readInputMessages()

This method is used to read the incoming message and set the associated buffer structure.

Return

void

void computeForceTorque(double integTime)

This method is used to compute the RHS forces and torques. Note: the module can set any of these three vecors, or a subset. Regarding the external force, the matrix represnetations in the body (B) and inerial (N) frame components are treated as 2 separate vectors. Only set both if you mean to, as both vectors will be included.

Public Members

Eigen::Vector3d pulsedTorqueExternalPntB_B

pulsed torque vector about point B, in B frame components

int countOnPulse

number of integration time steps to simulate a pulse

int countOff

number of integration time steps to have no pulses

BSKLogger bskLogger

BSK Logging

Private Members

int c

numer of time steps for pulse