Rigid Body Dynamics Library
Millard2016TorqueMuscleConfig Struct Reference

#include <luastructs.h>

Public Member Functions

 Millard2016TorqueMuscleConfig ()
 

Data Fields

std::string name
 
double angle_sign
 
double torque_sign
 
std::string body
 
unsigned int joint_index
 
double q_scale
 
unsigned int activation_index
 
unsigned int q_index
 
unsigned int qdot_index
 
unsigned int force_index
 
std::string data_set
 
std::string age_group
 
std::string gender
 
double joint_angle_offset
 
double activation_time_constant
 
double deactivation_time_constant
 
double max_isometric_torque
 
double max_angular_velocity
 
double max_isometric_torque_scale
 
double max_angular_velocity_scale
 
double passive_element_damping_coeff
 
double passive_element_torque_scale
 
double passive_element_angle_offset
 
double active_torque_angle_blending
 
double passive_torque_angle_blending
 
double torque_velocity_blending
 
double active_torque_angle_scale
 
RigidBodyDynamics::Math::Vector3d fit_passive_torque_scale
 
RigidBodyDynamics::Math::Vector3d fit_passive_torque_offset
 

Detailed Description

A structure that contains all of the information needed to make a joint specific Millard2016TorqueMuscle (MTG) using the Millard2016TorqueMuscle class and to correctly evaluate its torque and update the model's generalized force vector.

Many of these parameters are used to map the default sign conventions of the Millard2016TorqueMuscle (MTG) to the specific model that it is being applied to. These mappings currently have to be done manually by making use of the model's topology, the default sign conventions of the Millard2016TorqueMuscles (see the diagrams that accompany the doxygen) and the right hand rule. Please note that while the diagrams that appear in the Millard2016TorqueMuscle are in units of degrees this is for intuition and convenience: the curves are used in units of radians.

Parameters
name: [Manditory field] The name of the Millard2016TorqueMuscle to choose from the data_set. This name must contain an entry that appears in the JointTorque enum that appears in Millard2016TOrqueMuscle. Extra text can be added to these names to give each MTG a distinct name. For example "HipExtension" is an MTG that appears in the JointTorque enum and so "HipExtension_R" and "HipExtension_L" are names that will pick out the HipExtention MTG from the data_set.
angle_sign: [Manditory field] see signOfJointAngleRelativeToDoxygenFigures in Millard2016TorqueMuscle
torque_sign[Manditory field] see signOfJointTorqueToDoxygenFigures in Millard2016TorqueMuscle
body: [Manditory field] the MTG applies a torque to the parent joint of this body. For example, if the "thigh" segment has a parent of the "pelvis", then a hip torque would be applied to the "thigh".
joint_index: The index of the joint (to the parent) that this MTG applies torque to. For example if the hip flexion MTG will apply torque to the 0th joint_index of the "thigh" segment if it is attached to the "pelvis" segment through a ball and socket joint with the 0th axis in the flexion/extension direction.
q_scaleLinear scaling applied to the generalized coordinate prior to evaluating the MTG torque. Please note that while the plots of the MTGs for
activation_indexIndex of this MTG's activation signal in the state vector
q_index[Internal parameter] Index of this MTG's generalized position coordinate in the state vector.
qdot_index[Internal parameter] Index of this MTG's generalized velocity coordinate in the state vector
force_index[Internal parameter] Index of this MTG's generalized force in the state vector
data_setThe data set that is used to make the curves : see the DataSet struct in Millard2016TorqueMuscle.h for details. By default the Gymnast data set (the most complete data set) is used.
joint_angle_offset: see jointAngleOffsetRelativeToDoxygenFigures in Millard2016TorqueMuscle
activation_time_constantthe activatation time constaint of this MTG
deactivation_time_constantthe deactivatation time constaint of this MTG
passive_element_damping_coeffManually sets the damping coefficient used for the passive element
passive_element_torque_scaleManually scales the passive curve
passive_element_angle_offsetManually shifts the passive torque angle curve
max_isometric_torqueAn output parameter from the TorqueMuscleFittingToolkit::fitTorqueMuscleParameters
max_angular_velocityAn output parameter from the TorqueMuscleFittingToolkit::fitTorqueMuscleParameters
active_torque_angle_blendingAn output parameter from the TorqueMuscleFittingToolkit::fitTorqueMuscleParameters
passive_torque_angle_blendingAn output parameter from the TorqueMuscleFittingToolkit::fitTorqueMuscleParameters
torque_velocity_blendingAn output parameter from the TorqueMuscleFittingToolkit::fitTorqueMuscleParameters
active_torque_angle_scaleAn output parameter from the TorqueMuscleFittingToolkit::fitTorqueMuscleParameters
fit_passive_torque_scalePass in tuple (an q value, a passive torque, 0) and the passive curve will be scaled so that it passes through this point exactly by calling Millard2016TorqueMuscle::fitPassiveTorqueScale.

Note: use fit_passive_torque_scale or fit_passive_torque_offset but not both

Parameters
fit_passive_torque_offsetPass in tuple (an q value, a passive torque, 0) and the passive curve will be shifted so that it passes through this point exactly Millard2016TorqueMuscle::fitPassiveCurveAngleOffset

Note: use fit_passive_torque_scale or fit_passive_torque_offset but not both

Definition at line 266 of file luastructs.h.

Constructor & Destructor Documentation

◆ Millard2016TorqueMuscleConfig()

Definition at line 267 of file luastructs.h.

Field Documentation

◆ activation_index

unsigned int activation_index

Definition at line 310 of file luastructs.h.

◆ activation_time_constant

double activation_time_constant

Definition at line 319 of file luastructs.h.

◆ active_torque_angle_blending

double active_torque_angle_blending

Definition at line 328 of file luastructs.h.

◆ active_torque_angle_scale

double active_torque_angle_scale

Definition at line 331 of file luastructs.h.

◆ age_group

std::string age_group

Definition at line 315 of file luastructs.h.

◆ angle_sign

double angle_sign

Definition at line 305 of file luastructs.h.

◆ body

std::string body

Definition at line 307 of file luastructs.h.

◆ data_set

std::string data_set

Definition at line 314 of file luastructs.h.

◆ deactivation_time_constant

double deactivation_time_constant

Definition at line 320 of file luastructs.h.

◆ fit_passive_torque_offset

RigidBodyDynamics::Math::Vector3d fit_passive_torque_offset

Definition at line 335 of file luastructs.h.

◆ fit_passive_torque_scale

RigidBodyDynamics::Math::Vector3d fit_passive_torque_scale

Definition at line 334 of file luastructs.h.

◆ force_index

unsigned int force_index

Definition at line 313 of file luastructs.h.

◆ gender

std::string gender

Definition at line 316 of file luastructs.h.

◆ joint_angle_offset

double joint_angle_offset

Definition at line 318 of file luastructs.h.

◆ joint_index

unsigned int joint_index

Definition at line 308 of file luastructs.h.

◆ max_angular_velocity

double max_angular_velocity

Definition at line 322 of file luastructs.h.

◆ max_angular_velocity_scale

double max_angular_velocity_scale

Definition at line 324 of file luastructs.h.

◆ max_isometric_torque

double max_isometric_torque

Definition at line 321 of file luastructs.h.

◆ max_isometric_torque_scale

double max_isometric_torque_scale

Definition at line 323 of file luastructs.h.

◆ name

std::string name

Definition at line 304 of file luastructs.h.

◆ passive_element_angle_offset

double passive_element_angle_offset

Definition at line 327 of file luastructs.h.

◆ passive_element_damping_coeff

double passive_element_damping_coeff

Definition at line 325 of file luastructs.h.

◆ passive_element_torque_scale

double passive_element_torque_scale

Definition at line 326 of file luastructs.h.

◆ passive_torque_angle_blending

double passive_torque_angle_blending

Definition at line 329 of file luastructs.h.

◆ q_index

unsigned int q_index

Definition at line 311 of file luastructs.h.

◆ q_scale

double q_scale

Definition at line 309 of file luastructs.h.

◆ qdot_index

unsigned int qdot_index

Definition at line 312 of file luastructs.h.

◆ torque_sign

double torque_sign

Definition at line 306 of file luastructs.h.

◆ torque_velocity_blending

double torque_velocity_blending

Definition at line 330 of file luastructs.h.


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