API  3.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
OpenSim::StaticOptimizationTarget Class Reference

This class provides an interface specification for static optimization Objective Function. More...

+ Inheritance diagram for OpenSim::StaticOptimizationTarget:

Public Member Functions

 StaticOptimizationTarget (const SimTK::State &s, Model *aModel, int aNX, int aNC, const bool useMusclePhysiology=true)
 
void setModel (Model &aModel)
 
void setStatesStore (const Storage *aStatesStore)
 
void setStatesSplineSet (GCVSplineSet aStatesSplineSet)
 
void setNumParams (const int aNP)
 
void setNumConstraints (const int aNC)
 
void setDX (double aVal)
 
void setDX (int aIndex, double aVal)
 
double getDX (int aIndex)
 
double * getDXArray ()
 
void getActuation (SimTK::State &s, const SimTK::Vector &parameters, SimTK::Vector &forces)
 
void setActivationExponent (double aActivationExponent)
 
double getActivationExponent () const
 
void setCurrentState (const SimTK::State *state)
 
const SimTK::StategetCurrentState () const
 
void validatePerturbationSize (double &aSize)
 
virtual void printPerformance (const SimTK::State &s, double *x)
 
void computeActuatorAreas (const SimTK::State &s)
 
bool prepareToOptimize (SimTK::State &s, double *x)
 
int objectiveFunc (const SimTK::Vector &x, bool new_coefficients, SimTK::Real &rP) const
 
int gradientFunc (const SimTK::Vector &x, bool new_coefficients, SimTK::Vector &gradient) const
 
int constraintFunc (const SimTK::Vector &x, bool new_coefficients, SimTK::Vector &constraints) const
 
int constraintJacobian (const SimTK::Vector &x, bool new_coefficients, SimTK::Matrix &jac) const
 
- Public Member Functions inherited from SimTK::OptimizerSystem
 OptimizerSystem ()
 
 OptimizerSystem (int nParameters)
 
virtual ~OptimizerSystem ()
 
virtual int objectiveFunc (const Vector &parameters, bool new_parameters, Real &f) const
 
virtual int gradientFunc (const Vector &parameters, bool new_parameters, Vector &gradient) const
 
virtual int constraintFunc (const Vector &parameters, bool new_parameters, Vector &constraints) const
 
virtual int constraintJacobian (const Vector &parameters, bool new_parameters, Matrix &jac) const
 
virtual int hessian (const Vector &parameters, bool new_parameters, Vector &gradient) const
 
void setNumParameters (const int nParameters)
 
void setNumEqualityConstraints (const int n)
 
void setNumInequalityConstraints (const int n)
 
void setNumLinearEqualityConstraints (const int n)
 
void setNumLinearInequalityConstraints (const int n)
 
void setParameterLimits (const Vector &lower, const Vector &upper)
 
int getNumParameters () const
 
int getNumConstraints () const
 
int getNumEqualityConstraints () const
 
int getNumInequalityConstraints () const
 
int getNumLinearEqualityConstraints () const
 
int getNumNonlinearEqualityConstraints () const
 
int getNumLinearInequalityConstraints () const
 
int getNumNonlinearInequalityConstraints () const
 
bool getHasLimits () const
 
void getParameterLimits (Real **lower, Real **upper) const
 

Static Public Member Functions

static int CentralDifferencesConstraint (const StaticOptimizationTarget *aTarget, double *dx, const SimTK::Vector &x, SimTK::Matrix &jacobian)
 
static int CentralDifferences (const StaticOptimizationTarget *aTarget, double *dx, const SimTK::Vector &x, SimTK::Vector &dpdx)
 

Static Public Attributes

static const double SMALLDX
 Smallest allowable perturbation size for computing derivatives. More...
 

Protected Attributes

double _activationExponent
 
bool _useMusclePhysiology
 
Array< double > _dx
 Perturbation size for computing numerical derivatives. More...
 
Array< int > _accelerationIndices
 

Detailed Description

This class provides an interface specification for static optimization Objective Function.

Author
Jeff Reinbolt

Constructor & Destructor Documentation

OpenSim::StaticOptimizationTarget::StaticOptimizationTarget ( const SimTK::State s,
Model aModel,
int  aNX,
int  aNC,
const bool  useMusclePhysiology = true 
)

Member Function Documentation

static int OpenSim::StaticOptimizationTarget::CentralDifferences ( const StaticOptimizationTarget aTarget,
double *  dx,
const SimTK::Vector x,
SimTK::Vector dpdx 
)
static
static int OpenSim::StaticOptimizationTarget::CentralDifferencesConstraint ( const StaticOptimizationTarget aTarget,
double *  dx,
const SimTK::Vector x,
SimTK::Matrix jacobian 
)
static
void OpenSim::StaticOptimizationTarget::computeActuatorAreas ( const SimTK::State s)
int OpenSim::StaticOptimizationTarget::constraintFunc ( const SimTK::Vector x,
bool  new_coefficients,
SimTK::Vector constraints 
) const
int OpenSim::StaticOptimizationTarget::constraintJacobian ( const SimTK::Vector x,
bool  new_coefficients,
SimTK::Matrix jac 
) const
double OpenSim::StaticOptimizationTarget::getActivationExponent ( ) const
inline
void OpenSim::StaticOptimizationTarget::getActuation ( SimTK::State s,
const SimTK::Vector parameters,
SimTK::Vector forces 
)
const SimTK::State* OpenSim::StaticOptimizationTarget::getCurrentState ( ) const
inline
double OpenSim::StaticOptimizationTarget::getDX ( int  aIndex)
double* OpenSim::StaticOptimizationTarget::getDXArray ( )
int OpenSim::StaticOptimizationTarget::gradientFunc ( const SimTK::Vector x,
bool  new_coefficients,
SimTK::Vector gradient 
) const
int OpenSim::StaticOptimizationTarget::objectiveFunc ( const SimTK::Vector x,
bool  new_coefficients,
SimTK::Real rP 
) const
bool OpenSim::StaticOptimizationTarget::prepareToOptimize ( SimTK::State s,
double *  x 
)
virtual void OpenSim::StaticOptimizationTarget::printPerformance ( const SimTK::State s,
double *  x 
)
virtual
void OpenSim::StaticOptimizationTarget::setActivationExponent ( double  aActivationExponent)
inline
void OpenSim::StaticOptimizationTarget::setCurrentState ( const SimTK::State state)
inline
void OpenSim::StaticOptimizationTarget::setDX ( double  aVal)
void OpenSim::StaticOptimizationTarget::setDX ( int  aIndex,
double  aVal 
)
void OpenSim::StaticOptimizationTarget::setModel ( Model aModel)
void OpenSim::StaticOptimizationTarget::setNumConstraints ( const int  aNC)
void OpenSim::StaticOptimizationTarget::setNumParams ( const int  aNP)
void OpenSim::StaticOptimizationTarget::setStatesSplineSet ( GCVSplineSet  aStatesSplineSet)
void OpenSim::StaticOptimizationTarget::setStatesStore ( const Storage aStatesStore)
void OpenSim::StaticOptimizationTarget::validatePerturbationSize ( double &  aSize)

Member Data Documentation

Array<int> OpenSim::StaticOptimizationTarget::_accelerationIndices
protected
double OpenSim::StaticOptimizationTarget::_activationExponent
protected
Array<double> OpenSim::StaticOptimizationTarget::_dx
protected

Perturbation size for computing numerical derivatives.

bool OpenSim::StaticOptimizationTarget::_useMusclePhysiology
protected
const double OpenSim::StaticOptimizationTarget::SMALLDX
static

Smallest allowable perturbation size for computing derivatives.


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