FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
CableElDynStiff Class Reference
+ Inheritance diagram for CableElDynStiff:
+ Collaboration diagram for CableElDynStiff:

Public Member Functions

 CableElDynStiff ()
 The constructor.
 
 ~CableElDynStiff ()
 The destructor.
 
virtual bool CheckAndInitialize ()
 Does the initialization and checking to make sure that the element is ready for simulation.
 
virtual void UpdateLength (double newLength, double step, bool forceUpdate=false)
 Updates the length of the cable element, and its dependant properties.
 
void UpdateMeanTension (double step)
 Updates the mean tension of the cable element.
 
double GetEFactor () const
 Returns the current stiffness reduction factor (1 = full stiffness, <1 = reduced for numerical stability).
 
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.
 
- Public Member Functions inherited from CableElBasics
 CableElBasics ()
 The constructor.
 
 ~CableElBasics ()
 The destructor.
 
virtual void AddEndForces (const double adPosA[3], const double adVelA[3], const double adPosB[3], const double adVelB[3], const double adFluidVel[3], const double rhoWater, double adForceA[3], double adForceB[3])
 Calculates the end forces on the cable element.
 
virtual void SetConstants ()
 Calculates parameters and sets physical constants.
 
virtual void CalcMassAndWeight ()
 Calculates the mass and weight of the element in water.
 
double GetDampingCoeff () const
 Returns the structural damping coefficient (negative value: -2*dampRatio*area*sqrt(E*rho)).
 
virtual void UpdateLength (double newLength)
 Upates the length of the cable element, and its dependant properties.
 
double GetLength ()
 

Public Attributes

double m_maxStep
 The maximum step of the integration routine.
 
double m_meanTension
 The mean tension of the cable element.
 
double m_eAdaptationPeriod
 The time constant of the adaptation of the mean tension.
 
double m_stepSafetyFactor
 The safety factor when calculating the Young modulus of the element.
 
- Public Attributes inherited from CableElBasics
unsigned long m_iD
 The ID of the element.
 
std::string m_cableName
 The name of the parent cable.
 
double m_dL0
 The relaxed length of the element.
 
double m_dD
 The diameter of the element.
 
double m_dE
 The Young modulus of the element.
 
double m_rho
 The density of the element material.
 
double m_addedWeightInWater
 The weight in water added to the element.
 
double m_tangentialFrictionCoeff
 The tangential drag coefficient of the cable element.
 
double m_normalDragCoeff
 The normal drag coefficient of the cable element.
 
double m_rhoWater
 The density of the surrounding water.
 
double m_minLength
 The minimum length of the element.
 
double m_maxTension
 The maximum tension in the element.
 
double m_dampingRatio
 The relative damping ratio of the cable.
 
double m_eA
 The linear stiffness of the element.
 
double m_dA
 The cross sectional area of the cable.
 
double m_weightInWater [2]
 The weight in water distributed to each node.
 
double m_massInWater [2]
 The mass in water distributed to each node.
 
double m_weightInWaterPerMeter [2]
 The weight in water distributed to each node, per meter cable.
 
double m_massInWaterPerMeter [2]
 The mass in water distributed to each node, per meter cable.
 

Protected Attributes

double ma_dEps
 The stretching of the cable.
 
double m_eFactor
 The factor multiplied by the Young modulus.
 
double m_meanTensionDamp
 The damping of the development of the mean tension.
 
double ma_adMeanTensionForceA [3]
 
double ma_dAdaptationDamping
 
sfh::filters::PID m_MeanTensionController
 
- Protected Attributes inherited from CableElBasics
double ma_adDirection [3]
 Memory allocation to increase the computational efficiency.
 
double ma_dDampingCoeff
 A intermediate damping calculation to increase the computational efficiency.
 
double ma_adVel [3]
 The average hydrodynamic velocity of the element.
 
double ma_dVelAmp
 The scalar average hydrodynamic velocity of the element.
 
double ma_adVt [3]
 The average tangential hydrodynamic velocity of the element.
 
double ma_dVtAmp
 The scalar average tangential hydrodynamic velocity of the element.
 
double ma_adVn [3]
 The average normal hydrodynamic velocity of the element.
 
double ma_dVnAmp
 The scalar average normal hydrodynamic velocity of the element.
 
double ma_adVn_A [3]
 The hydrodynamic normal velocity of the end A.
 
double ma_adVn_B [3]
 The hydrodynamic normal velocity of the end B.
 
double ma_dVnAmp_A
 The scalar hydrodynamic normal velocity of the end A.
 
double ma_dVnAmp_B
 The scalar hydrodynamic normal velocity of the end B.
 
double ma_dLength
 The actual distance between the ends.
 
double ma_dCompressionSpeed
 The speed at which the distance between the two ends decreases.
 
double ma_dTangentialDragFactor
 A factor used when calculating the tangential drag force.
 
double ma_dNormalDragFactor
 A factor used when calculating the normal drag force.
 

Additional Inherited Members

- Protected Member Functions inherited from CableElBasics
void CalcFoundation (const double adPosA[3], const double adVelA[3], const double adPosB[3], const double adVelB[3], const double adFluidVel[3], const double rhoWater)
 
void AddGravityBuoyancy (double adForceA[3], double adForceB[3], const double adPosA[3], const double adPosB[3])
 Adds the forces from gravity and buoyancy to the nodes. CalcFoundation must be run first.
 
void AddHydroForcesCable (double adForceA[3], double adForceB[3])
 Calculates the hydrodynamic forces on the cable and the spheres and disks attached to it. CalcFoundation must be run first.
 

Member Function Documentation

◆ AddStructuralForces()

virtual void CableElDynStiff::AddStructuralForces ( double  adForceA[3],
double  adForceB[3] 
)
virtual

Reimplemented from CableElBasics.

◆ CheckAndInitialize()

virtual bool CableElDynStiff::CheckAndInitialize ( )
virtual

Reimplemented from CableElBasics.

Reimplemented in NetCableElement, and NetCableElementWithConstraints.


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