FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
+ Collaboration diagram for Ring:
Author
Jørgen Haavind Jensen
Date
Q3 2011 JHJ: Initial version.

Hydrodynamics

The simulation must include an Environment (fhsim_environment): a model without one is a setup error (MARE-0315). Each element is a cylinder loaded by the water on its wet part, as RbCable/Cable loads it (ElementWaterLoad.h, MARE-0227, MARE-0315):

Example configuration excerpt

<Lib
LibName = "marine_elements"
SimObject = "RbCable/Ring"
Name = "C"
Length = "20"
numElements = "7"
AlphaN = "1.0"
BetaN = "1.0"
EpsilonN = "0.0001"
AlphaM = "1.0"
BetaM = "1.0"
EpsilonM = "0.0001"
AlphaT = "1.0"
BetaT = "1.0"
EpsilonT = "0.0001"
Weight = "200"
Radius = "0.1"
BuoyancyFactor = "0.1"
CentrePosInit = "0.0,0.0,0.0"
Damping_Tangential = "0.01"
Damping_Normal = "1.2"
/>

Input Ports

If addinional connections are specified in configuration parameters, then the following are the simObjects input ports:

Name Width Description
Force<1>...Force<NumConnectors> 3 Force applied at additional connector i

Output Ports

If addinional connections are specified in configuration parameters, then the following are the simObjects output ports:

Name Width Description
ConnectorPos<1>...ConnectorPos<NumConnectors> 3 Position of additional connector i
ConnectorVel<1>...ConnectorVel<NumConnectors> 3 Velocity of additional connector i

Configuration parameters

Name Width Description
Length 1 Length of cable
numElements 1 Number of internal mass elements.
AlphaN 1 ...
BetaN 1 ...
EpsilonN 1 ...
AlphaM 1 ...
BetaM 1 ...
EpsilonM 1 ...
AlphaT 1 ...
BetaT 1 ...
EpsilonT 1 ...
Weight 1 Weight of the cable.
Radius 1 Radius of the cable.
Cm_IsAddedMassHack 1 A stopgap for added mass (MARE-0017): the translational mass of each ring element is increased by this factor times the mass of the water it displaces (1025 kg/m^3 times pi Radius^2 times the element length). The weight and the rotational inertia do not change. 0 leaves the mass as it is (Default: 0)
BuoyancyFactor 1 ... (Default: 0.1)
CentrePosInit 3 Initial position of the ring centre (Default: "0.0,0.0,0.0")
AdditionalConnectors 1 Whether or not there are additional connectors. If there are, NumConnectors needs to be set (Default: false)
NumConnectors 1 Number of additional connectors (Default: 0)
Damping_Tangential 1 Tangential damping coefficient. (Default: 0)
Damping_Normal 1 Normal damping coefficient. (Default: 0)

Initial conditions

Name Width Description
pos<i> 3 Position of point \(i \in {0\cdots\text{numElements}-1}\).
vel<i> 3 Velocity of point \(i \in {0\cdots\text{numElements}-1}\).
theta<i> 4 Orientation in quaternion of point \(i \in {0\cdots\text{numElements}-1}\)..
omega<i> 3 Angular velocity in rad per second of point \(i \in {0\cdots\text{numElements}-1}\)..

Full example file

<Contents>
<OBJECTS>
<Lib
LibName="environment"
SimObject="Environment"
Name="Env"
Waves.Model="Component"
Waves.NumWaves="0"
Bathymetry.Depth="500"
Current.Model = "Constant"
Current.Vector = "0,0,0"
/>
<Lib
LibName = "marine_elements"
SimObject = "RbCable/Ring"
Name = "C"
Length = "20"
numElements = "7"
AlphaN = "1.0"
BetaN = "1.0"
EpsilonN = "0.0001"
AlphaM = "1.0"
BetaM = "1.0"
EpsilonM = "0.0001"
AlphaT = "1.0"
BetaT = "1.0"
EpsilonT = "0.0001"
Weight = "200"
Radius = "0.1"
BuoyancyFactor = "0.1"
CentrePosInit = "0.0,0.0,0.0"
Damping_Tangential = "0.01"
Damping_Normal = "1.2"
/>
</OBJECTS>
<INTERCONNECTIONS>
<Connection
/>
</INTERCONNECTIONS>
<INITIALIZATION>
<InitialCondition
/>
</INITIALIZATION>
<SIMULATION>
<Timing TStart="0" TEnd="10"/>
<Integrator Method="RK45_i" NumCores="1" LogStates="0" UseRSSNorm="0">
<StepControl Step="1e-4" StepMax="100" StepMin="1e-6" AbsTol="1e-7" RelTol="1e-7"/>
</Integrator>
<!-- TODO migrate_v3: FileOutput="objects:all" -> configure via <OBSERVERS> section -->
</SIMULATION>
</Contents>