SOFA API  7226d276
Open source framework for multi-physics simuation
sofa::component::linearsolver::GraphScatteredVector Class Reference

#include <GraphScatteredTypes.h>

Inheritance diagram for sofa::component::linearsolver::GraphScatteredVector:

Public Member Functions

 GraphScatteredVector (core::behavior::BaseVectorOperations *p, core::VecDerivId id)
 
 GraphScatteredVector (core::behavior::BaseVectorOperations *p)
 
void set (core::MultiVecDerivId id)
 
void reset ()
 
void add (int, SReal)
 TO IMPLEMENT. More...
 
void set (int, SReal)
 TO IMPLEMENT. More...
 
SReal element (int)
 
void resize (int)
 
void operator= (const MultExpr< GraphScatteredMatrix, GraphScatteredVector > &expr)
 
- Public Member Functions inherited from sofa::core::behavior::TMultiVec< vtype >
 TMultiVec (BaseVectorOperations *bvop, MyMultiVecId mvecid)
 Refers to a state vector with the given ID (VecId::position(), VecId::velocity(), etc). More...
 
 TMultiVec ()
 Refers to a not yet allocated state vector. More...
 
 TMultiVec (BaseVectorOperations *bvop, bool bdynamic=true, const VecIdProperties &properties={})
 Allocate a new temporary vector with the given type (sofa::core::V_COORD or sofa::core::V_DERIV). More...
 
 ~TMultiVec ()
 
 operator MyMultiVecId ()
 Automatic conversion to the underlying VecId. More...
 
 operator ConstMyMultiVecId ()
 
 operator AllMultiVecId ()
 
 operator ConstAllMultiVecId ()
 
const MyMultiVecId & id () const
 
MyMultiVecId & id ()
 
BaseVectorOperations * ops ()
 
void setOps (BaseVectorOperations *op)
 
void realloc (BaseVectorOperations *_vop, bool interactionForceField=false, bool propagate=false, const VecIdProperties &properties={})
 
void clear ()
 v = 0 More...
 
void eq (MyMultiVecId a)
 v = a More...
 
void eq (MyMultiVecId a, SReal f)
 v = a*f More...
 
void peq (AllMultiVecId a, SReal f=1.0)
 v += a*f More...
 
void teq (SReal f)
 v *= f More...
 
void eq (AllMultiVecId a, AllMultiVecId b, SReal f=1.0)
 v = a+b*f More...
 
SReal dot (MyMultiVecId a)
 
void threshold (SReal threshold)
 nullify values below given threshold More...
 
SReal norm ()
 
SReal norm (unsigned l)
 
void operator= (MyMultiVecId a)
 v = a More...
 
void operator= (const TMultiVec< vtype > &a)
 v = a More...
 
void operator+= (MyMultiVecId a)
 v += a More...
 
void operator-= (MyMultiVecId a)
 v -= a More...
 
void operator*= (SReal f)
 v *= f More...
 
void operator/= (SReal f)
 v /= f More...
 
SReal operator* (MyMultiVecId a)
 return the scalar product dot(v,a) More...
 
size_t size () const
 

Static Public Member Functions

static const char * Name ()
 

Friends

class GraphScatteredMatrix
 

Additional Inherited Members

- Protected Attributes inherited from sofa::core::behavior::TMultiVec< vtype >
BaseVectorOperations * vop
 Solver who is using this vector. More...
 
MyMultiVecId v
 Identifier of this vector. More...
 
bool dynamic
 Flag indicating if this vector was dynamically allocated. More...
 

Constructor details

◆ GraphScatteredVector() [1/2]

sofa::component::linearsolver::GraphScatteredVector::GraphScatteredVector ( core::behavior::BaseVectorOperations *  p,
core::VecDerivId  id 
)
inline

◆ GraphScatteredVector() [2/2]

sofa::component::linearsolver::GraphScatteredVector::GraphScatteredVector ( core::behavior::BaseVectorOperations *  p)
inline

Function details

◆ add()

void sofa::component::linearsolver::GraphScatteredVector::add ( int  ,
SReal   
)
inline

TO IMPLEMENT.

◆ element()

SReal sofa::component::linearsolver::GraphScatteredVector::element ( int  )
inline

◆ Name()

static const char* sofa::component::linearsolver::GraphScatteredVector::Name ( )
inlinestatic

◆ operator=()

void sofa::component::linearsolver::GraphScatteredVector::operator= ( const MultExpr< GraphScatteredMatrix, GraphScatteredVector > &  expr)

◆ reset()

void sofa::component::linearsolver::GraphScatteredVector::reset ( )
inline

◆ resize()

void sofa::component::linearsolver::GraphScatteredVector::resize ( int  )
inline

◆ set() [1/2]

void sofa::component::linearsolver::GraphScatteredVector::set ( core::MultiVecDerivId  id)
inline

◆ set() [2/2]

void sofa::component::linearsolver::GraphScatteredVector::set ( int  ,
SReal   
)
inline

TO IMPLEMENT.

Related details

◆ GraphScatteredMatrix

friend class GraphScatteredMatrix
friend