diff options
Diffstat (limited to 'intern/itasc/UncontrolledObject.cpp')
-rw-r--r-- | intern/itasc/UncontrolledObject.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/intern/itasc/UncontrolledObject.cpp b/intern/itasc/UncontrolledObject.cpp new file mode 100644 index 00000000000..e05a8682d20 --- /dev/null +++ b/intern/itasc/UncontrolledObject.cpp @@ -0,0 +1,43 @@ +/* $Id: UncontrolledObject.cpp 19907 2009-04-23 13:41:59Z ben2610 $ + * UncontrolledObject.cpp + * + * Created on: Jan 5, 2009 + * Author: rubensmits + */ + +#include "UncontrolledObject.hpp" + +namespace iTaSC{ + +UncontrolledObject::UncontrolledObject():Object(UnControlled), + m_nu(0), m_nf(0), m_xudot() +{ +} + +UncontrolledObject::~UncontrolledObject() +{ +} + +void UncontrolledObject::initialize(unsigned int _nu, unsigned int _nf) +{ + assert (_nf >= 1); + m_nu = _nu; + m_nf = _nf; + if (_nu > 0) + m_xudot = e_zero_vector(_nu); + // clear all Jacobian if any + m_JuArray.clear(); + // reserve one more to have an zero matrix handy + if (m_nu > 0) + m_JuArray.resize(m_nf+1, e_zero_matrix(6,m_nu)); +} + +const e_matrix& UncontrolledObject::getJu(unsigned int frameIndex) const +{ + assert (m_nu > 0); + return m_JuArray[(frameIndex>m_nf)?m_nf:frameIndex]; +} + + + +} |