OpenSim::StaticOptimization Class Reference

This class implements static optimization to compute Muscle Forces and activations. More...

#include <StaticOptimization.h>

Inheritance diagram for OpenSim::StaticOptimization:
OpenSim::Analysis OpenSim::Object

List of all members.

Public Member Functions

 StaticOptimization (Model *aModel=0)
 StaticOptimization (const StaticOptimization &aObject)
 Copy constructor.
virtual Objectcopy () const
 Clone.
virtual ~StaticOptimization ()
 Destructor.
StaticOptimizationoperator= (const StaticOptimization &aStaticOptimization)
 Assign this object to the values of another.
void setStorageCapacityIncrements (int aIncrement)
 Set the capacity increments of all storage instances.
StoragegetActivationStorage ()
 Get the activation storage.
StoragegetForceStorage ()
 Get the force storage.
bool getUseModelForceSet ()
void setUseModelForceSet (bool aUseModelActuatorSet)
virtual void setModel (Model &aModel)
 Set the model for which the static optimization is to be computed.
void setActivationExponent (const double aExponent)
double getActivationExponent () const
void setUseMusclePhysiology (const bool useIt)
bool getUseMusclePhysiology () const
virtual int begin (const SimTK::State &s)
 This method is called at the beginning of an analysis so that any necessary initializations may be performed.
virtual int step (const SimTK::State &s)
 This method is called to perform the analysis.
virtual int end (const SimTK::State &s)
 This method is called at the end of an analysis so that any necessary finalizations may be performed.
virtual int printResults (const std::string &aBaseName, const std::string &aDir="", double aDT=-1.0, const std::string &aExtension=".sto")
 Print the results of the analysis.

Protected Member Functions

virtual int record (const SimTK::State &s)
 Record the results.

Protected Attributes

PropertyBool _useModelForceSetProp
 Use force set from model.
bool & _useModelForceSet
PropertyDbl _activationExponentProp
double & _activationExponent
PropertyBool _useMusclePhysiologyProp
bool & _useMusclePhysiology
Storage_activationStorage
Storage_forceStorage
GCVSplineSet _statesSplineSet
Array< int > _accelerationIndices
SimTK::Vector _parameters
bool _ownsForceSet
ForceSet_forceSet
double _optimizerDX
std::string _optimizerAlgorithm
int _printLevel
double _convergenceCriterion
int _maxIterations
Model_modelWorkingCopy

Detailed Description

This class implements static optimization to compute Muscle Forces and activations.

Author:
Jeff Reinbolt

Constructor & Destructor Documentation

StaticOptimization::StaticOptimization ( Model aModel = 0  ) 
StaticOptimization::StaticOptimization ( const StaticOptimization aObject  ) 

Copy constructor.

StaticOptimization::~StaticOptimization (  )  [virtual]

Destructor.


Member Function Documentation

int StaticOptimization::begin ( const SimTK::State &  s  )  [virtual]

This method is called at the beginning of an analysis so that any necessary initializations may be performed.

This method is meant to be called at the begining of an integration

Parameters:
s Current state .
Returns:
-1 on error, 0 otherwise.

Reimplemented from OpenSim::Analysis.

Object * StaticOptimization::copy (  )  const [virtual]

Clone.

Reimplemented from OpenSim::Analysis.

int StaticOptimization::end ( const SimTK::State &  s  )  [virtual]

This method is called at the end of an analysis so that any necessary finalizations may be performed.

Parameters:
s Current state
Returns:
-1 on error, 0 otherwise.

Reimplemented from OpenSim::Analysis.

double OpenSim::StaticOptimization::getActivationExponent (  )  const [inline]
Storage * StaticOptimization::getActivationStorage (  ) 

Get the activation storage.

Returns:
Activation storage.
Storage * StaticOptimization::getForceStorage (  ) 

Get the force storage.

Returns:
Force storage.
bool OpenSim::StaticOptimization::getUseModelForceSet (  )  [inline]
bool OpenSim::StaticOptimization::getUseMusclePhysiology (  )  const [inline]
StaticOptimization & StaticOptimization::operator= ( const StaticOptimization aStaticOptimization  ) 

Assign this object to the values of another.

Returns:
Reference to this object.

Reimplemented from OpenSim::Analysis.

virtual int OpenSim::StaticOptimization::printResults ( const std::string &  aBaseName,
const std::string &  aDir = "",
double  aDT = -1.0,
const std::string &  aExtension = ".sto" 
) [virtual]

Print the results of the analysis.

Parameters:
aFileName File to which to print the data.
aDT Time interval between results (linear interpolation is used). If not included as an argument or negative, all time steps are printed without interpolation.
Returns:
-1 on error, 0 otherwise.

Reimplemented from OpenSim::Analysis.

int StaticOptimization::record ( const SimTK::State &  s  )  [protected, virtual]

Record the results.

void OpenSim::StaticOptimization::setActivationExponent ( const double  aExponent  )  [inline]
void StaticOptimization::setModel ( Model aModel  )  [virtual]

Set the model for which the static optimization is to be computed.

Parameters:
aModel Model pointer

Reimplemented from OpenSim::Analysis.

void StaticOptimization::setStorageCapacityIncrements ( int  aIncrement  ) 

Set the capacity increments of all storage instances.

Parameters:
aIncrement Increment by which storage capacities will be increased when storage capacities run out.
void OpenSim::StaticOptimization::setUseModelForceSet ( bool  aUseModelActuatorSet  )  [inline]
void OpenSim::StaticOptimization::setUseMusclePhysiology ( const bool  useIt  )  [inline]
int StaticOptimization::step ( const SimTK::State &  s  )  [virtual]

This method is called to perform the analysis.

It can be called during the execution of a forward integrations or after the integration by feeding it the necessary data.

This method should be overriden in derived classes. It is included here so that the derived class will not have to implement it if it is not necessary.

Parameters:
s Current state .
Returns:
-1 on error, 0 otherwise.

Reimplemented from OpenSim::Analysis.


Member Data Documentation

SimTK::Vector OpenSim::StaticOptimization::_parameters [protected]

Use force set from model.


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

Generated on Wed Dec 16 15:03:39 2009 for OpenSim by  doxygen 1.6.1