FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
CableElDynStiff.h
1
10
11#ifndef CCableElDynStiff_H
12#define CCableElDynStiff_H
13
14// Includes
15// #include <string>
16#include "cable/subroutines/CableElBasics.h"
17
18
19// #define USE_OLD_MEAN_TENSION_CALC
20#define CCableElDynStiff_USE_MEAN_TENSION_FILTER
21
22#ifdef FH_VISUALIZATION
23# include "Ogre.h"
24
25# include "sfh/ogre/CDynamicLines.h"
26
27#endif
28
29// Class definition
31{
32public:
35
38
40 virtual bool CheckAndInitialize();
41
43 virtual void UpdateLength(double newLength, bool forceUpdate = false);
44
46 void UpdateMeanTension(double step);
47
59 void UpdateMeanTensionAt(const double adPosA[3], const double adPosB[3], double step);
60
62 double GetEFactor() const { return m_eFactor; }
63
64 double m_maxStep;
68 // protected: HACK kga
70 virtual void AddStructuralForces(double adForceA[3], double adForceB[3]);
71
72protected:
73 double ma_dEps;
74 double m_eFactor;
76 // double m_meanTensionProp; ///< The mean tension of the cable element.
77
78 double ma_adMeanTensionForceA[3];
79 double ma_dAdaptationDamping;
80};
81
82
83#endif
Definition CableElBasics.h:34
Definition CableElDynStiff.h:31
double m_meanTensionDamp
The damping of the development of the mean tension.
Definition CableElDynStiff.h:75
double m_eAdaptationPeriod
The time constant of the adaptation of the mean tension.
Definition CableElDynStiff.h:66
double m_stepSafetyFactor
The safety factor when calculating the Young modulus of the element.
Definition CableElDynStiff.h:67
double GetEFactor() const
Returns the current stiffness reduction factor (1 = full stiffness, <1 = reduced for numerical stabil...
Definition CableElDynStiff.h:62
void UpdateMeanTensionAt(const double adPosA[3], const double adPosB[3], double step)
double ma_dEps
The stretching of the cable.
Definition CableElDynStiff.h:73
~CableElDynStiff()
The destructor.
double m_maxStep
The maximum step of the integration routine.
Definition CableElDynStiff.h:64
virtual bool CheckAndInitialize()
Does the initialization and checking to make sure that the element is ready for simulation.
double m_eFactor
The factor multiplied by the Young modulus.
Definition CableElDynStiff.h:74
CableElDynStiff()
The constructor.
virtual void AddStructuralForces(double adForceA[3], double adForceB[3])
Adds the forces from tension and internal damping to the nodes. CalcFoundation must be run first.
void UpdateMeanTension(double step)
Updates the mean tension of the cable element.
double m_meanTension
The mean tension of the cable element.
Definition CableElDynStiff.h:65
virtual void UpdateLength(double newLength, bool forceUpdate=false)
Updates the length of the cable element, and its dependant properties; not the mean tension.