Skip to main content

Rocky Solver SDK 2024 R2

IRockyJointScalarsModel Struct Reference

Last update: 08.07.2024

#include <rocky_joint_scalars.hpp>

Inherits ScalarsModel< rocky20::JointScalarsController >.

Public Member Functions

int find (const char *name)
 
int add (const char *name, const char *unit, bool output=true)
 
void reset (int scalar_index)
 
void set_dimension (int scalar_index, double dimension_factor)
 

Detailed Description

IRockyJointScalarsModel allows users to add new joint scalars, find joint scalars created in other modules or activate joint scalars known to Rocky, during the setup phase of a module. Joint scalars are special variables attached to the joints of flexible multi-element particles, which are able to store values per joint that are preserved between time iterations during a simulation.

Member Function Documentation

◆ add()

int IRockyJointScalarsModel::add ( const char *  name,
const char *  unit,
bool  output = true 
)

This method creates a new scalar variable of type double
for storing custom values during a simulation, preserving them between time iterations.
Parameters
nameThe name given to the scalar variable. The purpose of this name is twofold. First, it enables to find this scalar variable from other module, in order to share their values. Second, if the scalar variable can be displayed in a 3D window as a property, this name will identify it in the Rocky UI.
unitA string specifying the unit in S.I. associated to the scalar variable.
outputEnables/disables the storage in disk at output times, for the visualization and post-processing of the scalar values.
Returns
The index that will uniquely identify the scalar variable during the execution of the simulation.

◆ find()

int IRockyJointScalarsModel::find ( const char *  name)

This method searches for a scalar variable already created by other modules,
in order to allow access to its values, or store new values on it, during the execution of the simulation.
Parameters
nameThe name given to the scalar at the moment of its creation.
Returns
The index that uniquely identifies the wanted scalar if it was actually found. It returns -1 otherwise.

◆ reset()

void IRockyJointScalarsModel::reset ( int  scalar_index)

This method resets to zero all values stored in a scalar variable.
Parameters
scalar_indexThe index attributed to the scalar variable at the moment of its creation.

◆ set_dimension()

void IRockyJointScalarsModel::set_dimension ( int  scalar_index,
double  dimension_factor 
)

The purpose of this method is to associate a dimensional factor
to a scalar variable. This factor will be used to nondimensionalize their values. For instance, if the scalar represents a force, a force dimensional factor must be associated through this method. Dimensional factors for the fundamental magnitudes are provided by functions of a IRockyModel object.
Parameters
scalar_indexThe index attributed to the scalar variable at the moment of its creation.
dimension_factorThe appropriate dimensional factor for the scalar variable.