MBDyn-1.7.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
ResForces Class Referenceabstract

#include <resforces.h>

Inheritance diagram for ResForces:
Collaboration diagram for ResForces:

Public Member Functions

 ResForces (void)
 
virtual ~ResForces (void)
 
virtual void Reset (void)
 
void AddForce (const Vec3 &f)
 
void AddForce (const Vec3 &f, Vec3 &x)
 
void AddMoment (const Vec3 &c)
 
void AddForces (const Vec3 &f, const Vec3 &c, const Vec3 &x)
 
void PutForce (const Vec3 &f)
 
void PutMoment (const Vec3 &c)
 
void PutForces (const Vec3 &f, const Vec3 &c)
 
virtual const Vec3Force (void) const
 
virtual const Vec3Moment (void) const
 
virtual const Vec3Pole (void) const =0
 

Protected Attributes

Vec3 F
 
Vec3 C
 

Detailed Description

Definition at line 43 of file resforces.h.

Constructor & Destructor Documentation

ResForces::ResForces ( void  )

Definition at line 39 of file resforces.cc.

References NO_OP.

40 : F(Zero3), C(Zero3)
41 {
42  NO_OP;
43 }
const Vec3 Zero3(0., 0., 0.)
#define NO_OP
Definition: myassert.h:74
Vec3 C
Definition: resforces.h:46
Vec3 F
Definition: resforces.h:45
ResForces::~ResForces ( void  )
virtual

Definition at line 45 of file resforces.cc.

References NO_OP.

46 {
47  NO_OP;
48 }
#define NO_OP
Definition: myassert.h:74

Member Function Documentation

void ResForces::AddForce ( const Vec3 f,
Vec3 x 
)

Definition at line 64 of file resforces.cc.

References C, grad::Cross(), F, and Pole().

65 {
66  F += f;
67  C += (x-Pole()).Cross(f);
68 }
virtual const Vec3 & Pole(void) const =0
VectorExpression< VectorCrossExpr< VectorLhsExpr, VectorRhsExpr >, 3 > Cross(const VectorExpression< VectorLhsExpr, 3 > &u, const VectorExpression< VectorRhsExpr, 3 > &v)
Definition: matvec.h:3248
Vec3 C
Definition: resforces.h:46
Vec3 F
Definition: resforces.h:45

Here is the call graph for this function:

void ResForces::AddForces ( const Vec3 f,
const Vec3 c,
const Vec3 x 
)

Definition at line 77 of file resforces.cc.

References C, grad::Cross(), F, and Pole().

Referenced by NoRotor::AddForce(), UniformRotor::AddForce(), CyclocopterNoInflow::AddForce(), GlauertRotor::AddForce(), ManglerRotor::AddForce(), CyclocopterUniform1D::AddForce(), DynamicInflowRotor::AddForce(), PetersHeRotor::AddForce(), CyclocopterUniform2D::AddForce(), CyclocopterPolimi::AddForce(), and UniformRotor2::AddSectionalForce().

78 {
79  F += f;
80  C += c + (x-Pole()).Cross(f);
81 }
virtual const Vec3 & Pole(void) const =0
VectorExpression< VectorCrossExpr< VectorLhsExpr, VectorRhsExpr >, 3 > Cross(const VectorExpression< VectorLhsExpr, 3 > &u, const VectorExpression< VectorRhsExpr, 3 > &v)
Definition: matvec.h:3248
Vec3 C
Definition: resforces.h:46
Vec3 F
Definition: resforces.h:45

Here is the call graph for this function:

void ResForces::AddMoment ( const Vec3 c)

Definition at line 71 of file resforces.cc.

References C, and c.

72 {
73  C += c;
74 }
Vec3 C
Definition: resforces.h:46
static std::stack< cleanup * > c
Definition: cleanup.cc:59
virtual const Vec3& ResForces::Pole ( void  ) const
pure virtual

Implemented in NodeResForces, and ExternResForces.

Referenced by AddForce(), and AddForces().

void ResForces::PutForce ( const Vec3 f)

Definition at line 84 of file resforces.cc.

References F.

85 {
86  F = f;
87 }
Vec3 F
Definition: resforces.h:45
void ResForces::PutForces ( const Vec3 f,
const Vec3 c 
)

Definition at line 96 of file resforces.cc.

References C, c, and F.

97 {
98  F = f;
99  C = c;
100 }
Vec3 C
Definition: resforces.h:46
static std::stack< cleanup * > c
Definition: cleanup.cc:59
Vec3 F
Definition: resforces.h:45
void ResForces::PutMoment ( const Vec3 c)

Definition at line 90 of file resforces.cc.

References C, and c.

91 {
92  C = c;
93 }
Vec3 C
Definition: resforces.h:46
static std::stack< cleanup * > c
Definition: cleanup.cc:59
void ResForces::Reset ( void  )
virtual

Reimplemented in ExternResForces.

Definition at line 51 of file resforces.cc.

References C, F, and Zero3.

Referenced by ExternResForces::Reset().

52 {
53  F = Zero3;
54  C = Zero3;
55 }
const Vec3 Zero3(0., 0., 0.)
Vec3 C
Definition: resforces.h:46
Vec3 F
Definition: resforces.h:45

Member Data Documentation

Vec3 ResForces::C
protected
Vec3 ResForces::F
protected

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