AGX Dynamics 2.42.3.0
Loading...
Searching...
No Matches
agx::GenericConstraintComplianceMatrix Class Reference

Compliance matrix data containing the lower triangle (including the diagonal) of the compliance matrix of the constraint. More...

#include <GenericConstraintComplianceMatrix.h>

+ Inheritance diagram for agx::GenericConstraintComplianceMatrix:

Public Member Functions

 GenericConstraintComplianceMatrix (UInt32 maxSize, Bool isStaticSize)
 Construct given maximum size, i.e., when all elementary constraint rows are active and enabled, and if the size is constant, i.e., all elementary constraints are always active and enabled.
 
Real get (UInt32 row, UInt32 col) const
 
const UInt32Vector & getDiagonalUpdates () const
 
Bool isStaticSize () const
 
void reset (UInt32 size)
 Reset this matrix to zero and resize.
 
void set (UInt32 row, UInt32 col, Real value)
 Assign value to given row and column in the matrix.
 
UInt32 size () const
 
- Public Member Functions inherited from agx::Referenced
 Referenced ()
 Default constructor.
 
 Referenced (const Referenced &)
 
template<typename T >
T * as ()
 Subclass casting.
 
template<typename T >
const T * as () const
 
template<typename T >
T * asSafe ()
 Safe subclass casting, return nullptr if template type does not match.
 
template<typename T >
const T * asSafe () const
 
int getReferenceCount () const
 
template<typename T >
bool is () const
 Subclass test.
 
Referenced & operator= (const Referenced &)
 Assignment operator. Will increment the number of references to the referenced object.
 
void reference (void *ptr=nullptr) const
 Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it.
 
void unreference (void *ptr=nullptr) const
 Decrement the reference count by one, indicating that a pointer to this object is referencing it.
 
void unreference_nodelete () const
 Decrement the reference count by one, indicating that a pointer to this object is referencing it.
 

Protected Member Functions

virtual ~GenericConstraintComplianceMatrix ()
 Reference counted object, protected destructor.
 
- Protected Member Functions inherited from agx::Referenced
virtual ~Referenced ()
 Destructor.
 
void allocateObserverVector () const
 
void deleteUsingDeleteHandler () const
 

Additional Inherited Members

- Static Public Member Functions inherited from agx::Referenced
template<typename T >
static bool ValidateCast (const Referenced *object)
 
- Static Protected Member Functions inherited from agx::Referenced
static DeleteHandler * getDeleteHandler ()
 
static void setDeleteHandler (DeleteHandler *handler)
 Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to.
 
- Protected Attributes inherited from agx::Referenced
Mutex m_mutex
 
ObserverContainer m_observers
 
AtomicValue m_refCount
 

Detailed Description

Compliance matrix data containing the lower triangle (including the diagonal) of the compliance matrix of the constraint.

This matrix can be written to by calling self.setSupportComplianceMatrix( True ) and implement:

def updateComplianceMatrix(self, matrix: agx.GenericConstraintComplianceMatrix): matrix.set(1, 0, 1.0E-4)

Definition at line 33 of file GenericConstraintComplianceMatrix.h.

Constructor & Destructor Documentation

◆ GenericConstraintComplianceMatrix()

agx::GenericConstraintComplianceMatrix::GenericConstraintComplianceMatrix ( UInt32  maxSize,
Bool  isStaticSize 
)

Construct given maximum size, i.e., when all elementary constraint rows are active and enabled, and if the size is constant, i.e., all elementary constraints are always active and enabled.

◆ ~GenericConstraintComplianceMatrix()

virtual agx::GenericConstraintComplianceMatrix::~GenericConstraintComplianceMatrix ( )
protectedvirtual

Reference counted object, protected destructor.

Member Function Documentation

◆ get()

Real agx::GenericConstraintComplianceMatrix::get ( UInt32  row,
UInt32  col 
) const
Parameters
row- matrix row number
col- matrix column number
Returns
value at given row and column

◆ getDiagonalUpdates()

const UInt32Vector & agx::GenericConstraintComplianceMatrix::getDiagonalUpdates ( ) const
Returns
vector of diagonal values that has been assigned

◆ isStaticSize()

Bool agx::GenericConstraintComplianceMatrix::isStaticSize ( ) const
Returns
true if this matrix has a static size, otherwise false

◆ reset()

void agx::GenericConstraintComplianceMatrix::reset ( UInt32  size)

Reset this matrix to zero and resize.

If this matrix is of static size and size != current size, an exception is thrown.

Parameters
size- new size of this matrix

◆ set()

void agx::GenericConstraintComplianceMatrix::set ( UInt32  row,
UInt32  col,
Real  value 
)

Assign value to given row and column in the matrix.

Parameters
row- matrix row number
col- matrix column number

◆ size()

UInt32 agx::GenericConstraintComplianceMatrix::size ( ) const
Returns
the size, i.e., N in this N x N matrix

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