dynLattice
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
ForceOutputModule Class Reference

Module for outputting internal, external, and gyroscopic forces. More...

#include "ForceOutputModule.h"

Inheritance diagram for ForceOutputModule:
Inheritance graph
[legend]
Collaboration diagram for ForceOutputModule:
Collaboration graph
[legend]

Public Member Functions

 ForceOutputModule (const String &name="ForceOutput")
 Constructor.
 
virtual Status init (const Properties &conf, const Properties &props, const Properties &globdat) override
 Initialize the module.
 
virtual Status run (const Properties &globdat) override
 Run the force output operation.
 
virtual void shutdown (const Properties &globdat) override
 Shutdown the module and close output files.
 

Static Public Member Functions

static Ref< Module > makeNew (const String &name, const Properties &conf, const Properties &props, const Properties &globdat)
 Factory method for creating new ForceOutputModule instances.
 
static void declare ()
 Register ForceOutputModule type with ModuleFactory.
 

Static Public Attributes

Property identifiers
static const char * TYPE_NAME = "ForceOutput"
 Module type name.
 
static const char * INT_PROP = "writeIntForce"
 Internal force output property.
 
static const char * EXT_PROP = "writeExtForce"
 External force output property.
 
static const char * GYRO_PROP = "writeGyroForce"
 Gyroscopic force output property.
 
static const char * NODE_PROP = "nodeSet"
 Node set property.
 

Protected Member Functions

virtual ~ForceOutputModule ()
 Protected destructor.
 

Detailed Description

Writes force vectors to output files during simulation for post-processing and analysis. Supports selective output of internal, external, and gyroscopic forces with configurable sampling conditions. The gyroscopic forces are evaluated on demand with the mass matrix an explicit integrator with consistent mass publishes (ExplicitModule::MASS_MATRIX); without one they are not written. Only the DOFs selected via the dofs property are written, in the order of the header.

Constructor & Destructor Documentation

◆ ForceOutputModule()

ForceOutputModule::ForceOutputModule ( const String &  name = "ForceOutput")
explicit
Parameters
[in]nameModule name

◆ ~ForceOutputModule()

ForceOutputModule::~ForceOutputModule ( )
protectedvirtual

Member Function Documentation

◆ declare()

void ForceOutputModule::declare ( )
static

◆ init()

Module::Status ForceOutputModule::init ( const Properties &  conf,
const Properties &  props,
const Properties &  globdat 
)
overridevirtual
Parameters
[out]confActually used configuration properties (output)
[in]propsUser-specified module properties
[in]globdatGlobal data container
Returns
Module status

◆ makeNew()

Ref< Module > ForceOutputModule::makeNew ( const String &  name,
const Properties &  conf,
const Properties &  props,
const Properties &  globdat 
)
static
Parameters
[in]nameModule name
[out]confActually used configuration properties (output)
[in]propsUser-specified module properties
[in]globdatGlobal data container
Returns
Reference to new ForceOutputModule instance

◆ run()

Module::Status ForceOutputModule::run ( const Properties &  globdat)
overridevirtual
Parameters
[in]globdatGlobal data container
Returns
Module status

◆ shutdown()

void ForceOutputModule::shutdown ( const Properties &  globdat)
overridevirtual
Parameters
[in]globdatGlobal data container

Member Data Documentation

◆ EXT_PROP

const char * ForceOutputModule::EXT_PROP = "writeExtForce"
static

◆ GYRO_PROP

const char * ForceOutputModule::GYRO_PROP = "writeGyroForce"
static

◆ INT_PROP

const char * ForceOutputModule::INT_PROP = "writeIntForce"
static

◆ NODE_PROP

const char * ForceOutputModule::NODE_PROP = "nodeSet"
static

◆ TYPE_NAME

const char * ForceOutputModule::TYPE_NAME = "ForceOutput"
static