MULTIBODY SIMULATION SOFTWARE - API documentation

chrono::ChLcpConstraintTwo Class Reference

#include <CHlcpConstraintTwo.h>

Inheritance diagram for chrono::ChLcpConstraintTwo:

Inheritance graph
[legend]
Collaboration diagram for chrono::ChLcpConstraintTwo:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ChLcpConstraintTwo ()
 ChLcpConstraintTwo (const ChLcpConstraintTwo &other)
ChLcpConstraintTwooperator= (const ChLcpConstraintTwo &other)
virtual ChMatrix
< float > * 
Get_Cq_a ()=0
virtual ChMatrix
< float > * 
Get_Cq_b ()=0
virtual ChMatrix
< float > * 
Get_Eq_a ()=0
virtual ChMatrix
< float > * 
Get_Eq_b ()=0
ChLcpVariablesGetVariables_a ()
ChLcpVariablesGetVariables_b ()
virtual void SetVariables (ChLcpVariables *mvariables_a, ChLcpVariables *mvariables_b)=0
virtual void StreamIN (ChStreamInBinary &mstream)
virtual void StreamOUT (ChStreamOutBinary &mstream)

Protected Attributes

ChLcpVariablesvariables_a
ChLcpVariablesvariables_b


Detailed Description

This class is inherited by the base ChLcpConstraint(), which does almost nothing. So here this class implements the functionality for a constrint between a COUPLE of TWO objects of type ChLcpVariables(), and defines two constraint matrices, whose column number automatically matches the number of elements in variables vectors. Before starting the LCP solver one must provide the proper values in constraints (and update them if necessary), i.e. must set at least the c_i and b_i values, and jacobians.

Constructor & Destructor Documentation

chrono::ChLcpConstraintTwo::ChLcpConstraintTwo (  ) 

Default constructor.

chrono::ChLcpConstraintTwo::ChLcpConstraintTwo ( const ChLcpConstraintTwo other  ) 

Copy constructor.


Member Function Documentation

ChLcpConstraintTwo & chrono::ChLcpConstraintTwo::operator= ( const ChLcpConstraintTwo other  ) 

Assignment operator: copy from other object.

virtual ChMatrix<float>* chrono::ChLcpConstraintTwo::Get_Cq_a (  )  [pure virtual]

Access jacobian matrix.

Implemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, and chrono::ChLcpConstraintTwoGPUcontT.

virtual ChMatrix<float>* chrono::ChLcpConstraintTwo::Get_Cq_b (  )  [pure virtual]

Access jacobian matrix.

Implemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, and chrono::ChLcpConstraintTwoGPUcontT.

virtual ChMatrix<float>* chrono::ChLcpConstraintTwo::Get_Eq_a (  )  [pure virtual]

Access auxiliary matrix (ex: used by iterative solvers).

Implemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, and chrono::ChLcpConstraintTwoGPUcontT.

virtual ChMatrix<float>* chrono::ChLcpConstraintTwo::Get_Eq_b (  )  [pure virtual]

Access auxiliary matrix (ex: used by iterative solvers).

Implemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, and chrono::ChLcpConstraintTwoGPUcontT.

ChLcpVariables* chrono::ChLcpConstraintTwo::GetVariables_a (  ) 

Access the first variable object.

ChLcpVariables* chrono::ChLcpConstraintTwo::GetVariables_b (  ) 

Access the second variable object.

virtual void chrono::ChLcpConstraintTwo::SetVariables ( ChLcpVariables mvariables_a,
ChLcpVariables mvariables_b 
) [pure virtual]

Set references to the constrained objects, each of ChLcpVariables type, automatically creating/resizing jacobians if needed.

Implemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, and chrono::ChLcpConstraintTwoGPUcontT.

void chrono::ChLcpConstraintTwo::StreamIN ( ChStreamInBinary mstream  )  [virtual]

Method to allow deserializing a persistent binary archive (ex: a file) into transient data.

Reimplemented from chrono::ChLcpConstraint.

Reimplemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoContact, chrono::ChLcpConstraintTwoContactN, chrono::ChLcpConstraintTwoFriction, chrono::ChLcpConstraintTwoFrictionApprox, chrono::ChLcpConstraintTwoFrictionT, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, chrono::ChLcpConstraintTwoGPUcontT, chrono::ChLcpConstraintTwoRollingN, and chrono::ChLcpConstraintTwoRollingT.

void chrono::ChLcpConstraintTwo::StreamOUT ( ChStreamOutBinary mstream  )  [virtual]

Method to allow serializing transient data into a persistent binary archive (ex: a file).

Reimplemented from chrono::ChLcpConstraint.

Reimplemented in chrono::ChLcpConstraintTwoBodies, chrono::ChLcpConstraintTwoContact, chrono::ChLcpConstraintTwoContactN, chrono::ChLcpConstraintTwoFriction, chrono::ChLcpConstraintTwoFrictionApprox, chrono::ChLcpConstraintTwoFrictionT, chrono::ChLcpConstraintTwoGeneric, chrono::ChLcpConstraintTwoGPUcontN, chrono::ChLcpConstraintTwoGPUcontT, chrono::ChLcpConstraintTwoRollingN, and chrono::ChLcpConstraintTwoRollingT.


Member Data Documentation

ChLcpVariables* chrono::ChLcpConstraintTwo::variables_a [protected]

The first constrained object.

ChLcpVariables* chrono::ChLcpConstraintTwo::variables_b [protected]

The second constrained object.


CHRONO::ENGINE
C++ library for multibody simulation, (C) Alessandro Tasora
This API documentation has been generated on 17 Jul 2009 by Doxygen