Keywords


This section gives a brief explanation of all the keywords used in input files for Ashes. In Ashes, an input file contains several sections defined by a keyword followed by a table with the parameters corresponding to the keyword. In addition, line beginning by the '#' sign will not be read by Ashes and can be used to write comment on the file. An example of a section within an input file is given in Support section files.

Note that in the keyword sections,
  • Parameters written in square brackets ([ ]) are optional
  • If optional parameters are left empty, a default value (shown in parenthesis) is applied
  • Some keyword sections contain mainy instances of the object created in that section. For example, the Nodes section contains many different nodes, each with its own set of parameters. In that case, each instance starts at a new line.
  • Required parameters are the parameters that are necessary to implement an instance within the corresponding keyword section. For example, within the Mooring lines section: if you want your support structure to be connected to mooring lines, you will have to enter a Node name, and an Azimuth angle, as all these two parameters are required. However, you can decide to not have any mooring lines connected to your structure. In that case, the whole Mooring lines section will be left empty.

A list of all the keywords used in the different input files is given here. To see what keywords compose different input file, see the Support section examples section.

1 Name

The given name appears on the support section that is based on this file. 

Parameter nameRequiredTypeUnitValue if emptyNote
NameyesString-None-

If this section is left empty the support section will be named Support section

2 Orientation

A zero rotation will align the axes in the Ashes standard coordinate system; with y pointing upwind and z pointing up. One method of oriented can be chosen among the following two:
  • Heading: You specify the heading of the y axis (the forward direction) relative to north.  A typical case: if you want the structure to have a heading 30 degrees towards the east, enter
    Heading 30
  • Angles: You can specify up to three angles, one for rotation about each axis. Each angle represents a right-handed rotation about the axes, in the following order: x (roll), y (pitch), z (yaw). The angles are hence Euler angles. Rotations are intrinsic, which means that successive rotations are performed about the previously rotated axes. To reproduce the previous example where the structure is oriented 30 degrees towards the east, enter
    Angles 0 0 30
YesNote that only one type of orientation can be chosen: either Heading or Angles

 
Parameter nameRequiredTypeUnitValue if emptyNote
Orientation typeYesString-NoneYou can enter 2 options: Heading or Angles
HeadingYesScalardegreesNoneYou can only enter a value for Heading if the Orientation type is set to Heading
Roll angleYesScalardegreesNoneYou can only enter a value for Roll angle if the Orientation type is set to Angles
Pitch angleYesScalardegreesNoneYou can only enter a value for Pitch angle if the Orientation type is set to Angles
Yaw angleYesScalardegreesNoneYou can only enter a value for Yaw angle if the Orientation type is set to Angles


If this section is left empty, the Heading will be zero. This means that the coordinate system (x, y, z) in which the nodes are defined is the same as the global coordinate system of Ashes, in which the z-axis points upwards and the y-axis points upwind.

3 RNA nodes

RNA is an acronym for Rotor-Nacelle-Assembly. In this section, you can specify which existing nodes (defined in the Nodes section) have an RNA. For example, for an RNA connected to the node with the name '10', enter 10 (The node name is alpha-numeric without white space). The normal case is a tubular tower with one RNA on top. To create multi-rotor turbines, you can add new lines, each with the name of a node.


Parameter nameRequiredTypeUnitValue if emptyNote
Node nameYesString-NoneMust be an existing node, defined in the Nodes section

If this section is left empty, this support structure will have no RNAs. This is generally the case for floaters or other substructures like monopiles, which are connected to a tubular tower but not to an RNA.

4 Tubular tower nodes

A non-tubular tower support section (such as a floater or a monopile) can have one or more tubular towers that are put on top of it. A support section with one or more tubular towers on top is typically called substructure. In this section, you can specify which nodes have a tubular tower on top. For example, for an RNA connected to the node with the name '10', enter 10 (the node name is alpha-numeric without white space).


Parameter nameRequiredTypeUnitValue if emptyNote
Node nameYesString-NoneMust be an existing nide, defined in the Nodes section

If this section is left empty, this support structure will have no tubular tower. Note that a tubular tower cannot have another tubular tower attached to it.

5 Substructure node

A tubular tower on a substructure is connected to the substructure at the Substructure node. This is generally the case for tubular towers connected to monopiles or floaters.

Parameter nameRequiredTypeUnitValue if emptyNote
Node nameYesString-NoneMust be an existing nide, defined in the Nodes section

6 Mooring lines

A floating wind turbine must have a mooring system consisting of mooring lines.

Parameter nameRequiredTypeUnitValue if emptyNote
Node nameYesString-NoneMust be an existing node, defined in the Nodes section
Azimuth angleYesScalarDegreesNoneAngle of the line relative to the support section

If no mooring line is specified, the support section will have no mooring lines. This can be relevant for floaters when the lines are replaced by linear springs, for example.

7 Materials

The elements composing the finite element model defined in the support section file each have material properties. The sets of material properties are called Materials and are defined in this section.

For each material line, the name, elastic modulus (Young's modulus), Poisson's ratio, and density must be given. Optionally, the stiffness-proportional damping coefficient (lambda) can be given (if it is not given then there is no material damping). The name of a material must be unique - and the names are used for the cross sections.
The damping method implemented is the stiffness part of Rayleigh damping (also called proportional damping). When a material is defined by the user (you) in the Material tool, the damping ratio (ksi) at a particular frequency are given. The lambda coefficient is calculated as: lambda = 2*damping ratio/frequency, with frequency as rad/s.  In the Materials tool, however, you can specify the frequency as [Hz].

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-None-
Elastic modulusYesScalarPaNoneAlso called Young's modulus. Must be positive.
Poisson's ratioYesScalar-NoneMust be between 0 and 1
DensityYesScalarkg.m-3NoneMust be positive
Stiffness proportional damping coefficient (lambda)NoScalars0Must be positive

At least one material per support section must be specified.

8 Cross sections

The cross sections define the properties of the members of the finite element model..

Five kinds of cross sections can be imported/exported, each with their own keyword:Circular hollow cross sections, Circular solid cross sections, Circular shape cross sectionsRectangular hollow cross sections, Rectangular shape cross sections and H cross sections.
The different kinds have some mandatory parameters that are given first in each line. Additionally, all cross sections have some parameters in common that are all optional and are given after the mandatory parameters.

The following effects can be taken into account with optional parameters:
  • Marine growth: to model marine growth, the growth density and its dimater must be defined
  • Aerodynamic drag: the aerodynamic drag resulting from the wind and the motion of the structure can be modelled by entering a drag coefficient. A default value of 1 is used in the templates
  • Hydrodynamic coefficient: the hydrodynamic inertia and drag forces as calculated from the Morison equation can be modelled by entering the corresponding coefficient. 
  • Heave plate coefficient: the hydrodynamic inertia and drag forces in the axial direction of the element can be modelled by entering heave plate coefficient. 
  • Buoyancy tuning: this coefficient multiplies the volume of all members using this cross section. This coefficient is typically used when you are trying to match a given buoyancy with your model and helps accounting for overlapping members, added structures, etc.
At least one cross section must be specified.

8.1 Circular hollow cross section

This is the most widely used type of cross section, especially for tubular towers, monopiles and truss towers. For this type of cross sections, the beam propoerties such as stiffness, moment of inertia or linear mass are calculated depending on the geometric properties and the material.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-N/A-
DiameterYesScalarmN/AMust be positive
ThicknessYesScalarmN/ACannot be more than half the diameter
MaterialYesString-N/AMust correspond to an existing material
Growth densityNoScalarkg.m-30-
Growth thicknessNoScalarm0-
Aerodynamic drag coefficientNoScalar-0-
Hydrodynamic drag coefficientNoScalar-0-
Hydrodynamic mass coefficientNoScalar-0-
Heave plate drag coefficientNoScalar-0-
Heave plate mass coefficientNoScalar-0-
Buoyancy tuning factorNoScalar-1-

8.2 Circular shape cross section

In this type of cross section, the beam properties such as stiffness or linear mass are entered by the user. Therefore, knowledge of the geometry of the cross section is not required.

Note that the diameter of the cross section must also be entered. This will be used for visualization and to compute the aerodynamic and hydrodynamic loads, if required. If no aero or hydrodynamic loads need to be included, the corresponding coefficient must be set to 0 and the diameter will have no influence on the simulation results.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-N/A-
DiameterYesScalarmN/AMust be positive
Linear massYesScalarkg.m-1N/AMass per meter of the cross section
EIYesScalarNm2N/ABending stiffness per unit length. Equal to the Young modulus of the material multiplied by the second moment of area. Also called flexural rigidity (https://en.wikipedia.org/wiki/Flexural_rigidity)
GJYesScalarNm2N/ATorsional stiffness per unit length. Equal to the shear modulus of the material multiplied by the torsional constant. Also called torsional rigidity (https://en.wikipedia.org/wiki/Stiffness#Relationship_to_elasticity)
EAYesScalarNN/AAxial stiffness per unit length. Equal to the Young modulus multiplied by the area of the cross section (https://en.wikipedia.org/wiki/Stiffness#Relationship_to_elasticity)
Growth densityNoScalarkg.m-30-
Growth thicknessNoScalarm0-
Aerodynamic drag coefficientNoScalar-0-
Hydrodynamic drag coefficientNoScalar-0-
Hydrodynamic mass coefficientNoScalar-0-
Heave plate drag coefficientNoScalar-0-
Heave plate mass coefficientNoScalar-0-
Buoyancy tuning factorNoScalar-1-

8.3 Circular solid cross section

This type of cross section is typically used for cables or risers. It is similar to the circular hollow cross section but is solid. Therefore, no thickness is required to define this cross section.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-N/A-
DiameterYesScalarmN/AMust be positive
MaterialYesString-N/AMust correspond to an existing material
Growth densityNoScalarkg.m-30-
Growth thicknessNoScalarm0-
Aerodynamic drag coefficientNoScalar-0-
Hydrodynamic drag coefficientNoScalar-0-
Hydrodynamic mass coefficientNoScalar-0-
Heave plate drag coefficientNoScalar-0-
Heave plate mass coefficientNoScalar-0-
Buoyancy tuning factorNoScalar-1-


8.4 Rectangular hollow cross section

This type of cross section is similar to the circular hollow cross section but has a rectangular shape. Therefore, many if the parameters must be given in the width and length direction of the cross section. For example, the Aerodynamic drag coefficient, height specifies the drag coefficient used to compute the drag force for an airflow coming perpendicularly to the Height side of the rectangle.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-N/A-
HeightYesScalarmN/AMust be positive
WidthYesScalarmN/AMust be positive
ThicknessYesScalarmN/ACannot be more than half the diameter
MaterialYesString-N/AMust correspond to an existing material
Growth densityNoScalarkg.m-30-
Growth thicknessNoScalarm0-
Aerodynamic drag coefficient, heightNoScalar-0-
Aerodynamic drag coefficient, widthNoScalar-0-
Hydrodynamic drag coefficient, heightNoScalar-0-
Hydrodynamic coefficient, widthNoScalar-0-
Hydrodynamic mass coefficient, heightNoScalar-0-
Hydrodynamic mass coefficient, widthNoScalar-0-
Heave plate drag coefficientNoScalar-0-
Heave plate mass coefficientNoScalar-0-
Buoyancy tuning factorNoScalar-1-

8.5 Rectangular solid cross section

This cross section is similar to the rectangular hollow cross section, but no thickness is required.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-N/A-
HeightYesScalarmN/AMust be positive
WidthYesScalarmN/AMust be positive
MaterialYesString-N/AMust correspond to an existing material
Growth densityNoScalarkg.m-30-
Growth thicknessNoScalarm0-
Aerodynamic drag coefficient, heightNoScalar-0-
Aerodynamic drag coefficient, widthNoScalar-0-
Hydrodynamic drag coefficient, heightNoScalar-0-
Hydrodynamic coefficient, widthNoScalar-0-
Hydrodynamic mass coefficient, heightNoScalar-0-
Hydrodynamic mass coefficient, widthNoScalar-0-
Heave plate drag coefficientNoScalar-0-
Heave plate mass coefficientNoScalar-0-
Buoyancy tuning factorNoScalar-1-

8.6 Rectangular shape cross section

In this type of cross section, the beam properties such as stiffness or linear mass are entered by the user. Therefore, knowledge of the geometry of the cross section is not required. Rectangular cross sections are used in Ashes to model any cross section that does not have a point symmetry (typically any cross section that is not a circle). In particular, the Rectangular shape cross section is used to model the structural properties of blades (however, the blade structural properties are defined in a Blade structure file).

Note that the height and width of the rectangular cross section must also be entered. This will be used for visualization and to compute the aerodynamic and hydrodynamic loads, if required. If no aerodynamic or hydrodynamic loads need to be included, the corresponding coefficient must be set to 0 and the height and width parameters will have no influence on the simulation results.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-N/A-
HeightYesScalarmN/AMust be positive
WidthYesScalarmN/AMust be positive
MassYesScalarkg.m-1N/AMass per meter of the cross section
EI1stYesScalarNm2N/ABending stiffness per unit length in the height direction. Equal to the Young modulus of the material multiplied by the second moment of area in the height direction. Also called flexural rigidity (https://en.wikipedia.org/wiki/Flexural_rigidity)
EI2ndYesScalarNm2N/ABending stiffness per unit length in the width direction. Equal to the Young modulus of the material multiplied by the second moment of area in the width direction. Also called flexural rigidity (https://en.wikipedia.org/wiki/Flexural_rigidity)
GJYesScalarNm2N/ATorsional stiffness per unit length. Equal to the shear modulus of the material multiplied by the torsional constant. Also called torsional rigidity (https://en.wikipedia.org/wiki/Stiffness#Relationship_to_elasticity)
EAYesScalarNN/AAxial stiffness per unit length. Equal to the Young modulus of the material multiplied by the area of the cross section (https://en.wikipedia.org/wiki/Stiffness#Relationship_to_elasticity)
GAs, 1stNoScalarNNoneShear modulus multipled by the shear area in the first principal direction. This is relevant when using Timoshenko beam theory (see the Analysis tab)
GAs, 2ndNoScalarNNoneIdem, 2nd principal direction
S_offset, 1stNoScalarm0Offset of the shear center with respect to the centroid of the cross section in the 1st principal direction.
S_offset, 2ndNoScalarm0Offset of the shear center with respect to the centroid of the cross section in the 2nd principal direction
m_offset, 1stNoScalarm0Offset of the center of mass with respect to the centroid of the cross section in the 1st principal direction
m_offset, 2ndNoScalarm0Offset of the center of mass with respect to the centroid of the cross section in the 2nd principal direction
Growth densityNoScalarkg.m-30-
Growth thicknessNoScalarm0-
Aerodynamic drag coefficient, heightNoScalar-0-
Aerodynamic drag coefficient, widthNoScalar-0-
Hydrodynamic drag coefficient, heightNoScalar-0-
Hydrodynamic coefficient, widthNoScalar-0-
Hydrodynamic mass coefficient, heightNoScalar-0-
Hydrodynamic mass coefficient, widthNoScalar-0-
Heave plate drag coefficientNoScalar-0-
Heave plate mass coefficientNoScalar-0-
Buoyancy tuning factorNoScalar-1-

8.7 H cross section

For this cross section, the dimensions as well as the material must be entered. The cross section and its dimensions is illustrated in the figure below:



Optionally, explicit stiffnesses can be given (typically found in standard tables), in which case these explicit values are used in the simulations. If they are not given, then the geometry is used to calculate stiffness.


Note: H cross sections cannot be loaded with aero- or hydrodynamical loading



Parameter name RequiredTypeUnitValue if emptyNote
NameYesString-N/A-
HeightYesScalarmN/AMust be positive
Flange widthYesScalarmN/AMust be positive
Web thicknessYesScalarmN/AMust be less than the Flange width
Flange thicknessYesScalarmN/AMust be less than half the Height
MaterialYesStringmN/AMust be an existing material
AreaNoScalarm2Calculated-
I1NoScalarm4Calculated2nd moment of inertia about the height axis
I2NoScalarm4Calculated2nd moment of inertia about the width axis
IxyNoScalarm4

8.8 Angle cross section

For this cross section, the dimensions as well as the material must be entered. The cross section and its dimensions is illustrated in the figure below:



Optionally, explicit stiffnesses can be given (typically found in standard tables), in which case these explicit values are used in the simulations. The explicit stiffnesses can either be given for the geometric axes or for the principal axes. The choice is made by the Axes parameter that can be either 'Geometry' or 'Principal'.
If explicit stiffnesses are not given, then the geometry is used to calculate stiffness (this is the case where no value is given for the parameter Axes)


Note: angle cross sections cannot be loaded with aero- or hydrodynamical loading



Parameter nameRequiredTypeUnitValue if emptyNote
NameyesString-N/A
Length 1st legyesScalarmN/AMust be positive
Length 2nd legyesScalarmN/AMust be positive
ThicknessyesScalarmN/A
MaterialyesString-N/AMust be an existing material
AxesnoString-NoneCan be either Geometry or Principal
e1stnoScalarmNoneOffset of the centroid from the 2nd leg
e2ndnoScalarmNoneOffset of the centroid from the 1st leg
AreanoScalarm2Calculated
I1noScalarm4Calculated2nd moment of inertia about the 1st principal axis (if Principal)  or the 1st leg axis (if Geometry)
I2noScalarm4Calculated2nd moment of inertia about the 2nd principal axis (if Principal) or the 2nd leg axis (if Geometry)
Ixy or alphanoScalarm4 or degreesCalculatedProduct moment of inertia (if Geometry) or  (if Principal)

9 All sensors

Sensors can be added to nodes, members and supports in the support section text file. The keyword 'All sensors' offers a shortcut to add sensors to all objects of a particular kind. The available kinds of object are: elements, nodes, loads, fluid kinematics and supports. If any of these is set to a different value than (the default) 0, then all objects of the kind in question gets a sensor. If instead sensors are wanted for only of a portion of the object in question, the value should be kept at 0 here. The sensors that are wanted are set for the relevant objects at the respective portions of the input file.

Parameter nameRequiredTypeUnitValue if emptyNote
All element sensorsNoString-0Any string but 0 means true.
All node sensorsNoString-0Any string but 0 means true.
All node loads sensorsNoString-0Any string but 0 means true.
All node fluid kinematic sensorsNoString-0Any string but 0 means true.
All support sensorsNoString-0Any string but 0 means true.
All linear spring sensorsNoString-0Any string but 0 means true.
All nonlinear spring sensorsNoString-0Any string but 0 means true.


10 Nodes

This section defines all the nodes that compose the finite element model. Members of the support section can only be defined as going between two nodes.

The node names can be arbitrary alpha-numeric strings without white space. When exporting a support section, nodes are given increasing integers as names, starting with 1.
The last column [Point mass (kg) = 0] contains point mass for the node in question. Point mass is optional with a default value of 0. It can be used to define ballast on a floater.

Note:
  • Node names must be unique: no two nodes can have the same name
  • Node coordinates must be unique: to set up slave nodes, see the Slave nodes section
The coordinates and the rotational point inertias are given in the coordinate system defined in the Orientation section.

Parameter nameRequiredTypeUnitValue if emptyNote
Node nameYesString-NoneMust be any alpha-numeric string. Whithe spaces are not allowed
xYesScalarmNoneCoordinate in the x-direction 
yYesScalarmNoneCoordinate in the y-direction
zYesScalarmNoneCoordinate in the z-direction
Point massNoScalarkg0Nodes with a point mass will appear grey (and blue if they have no mass)
Rotational point inertia, xNoScalarkg.m20Rotational point inertia around the x-axis
Rotational point inertia, yNoScalarkg.m20Rotational point inertia around the y-axis
Rotational point inertia, zNoScalarkg.m20Rotational point inertia around the z-axis
Node sensorNoString-0If set to 1, the node witll have a Node sensor when the file is imported 
Node load sensorNoString-0If set to 1, the node will have a Loads on node sensor when the file is imported
Node fluid kinematic sensorNoString-0If set to 1, the node will have a Fluid kinematics sensor when the file is imported

At least one node must be defined.

11 Slave nodes

Slave nodes are typically used to create hinges. If a member is connected to a node by a hinge then the member's start or end node should be a slave node of the (master) node in question.

Parameter nameRequiredTypeUnitValue if emptyNote
Slave node nameYesString-NoneCannot be the same as the name of another node (master or salve)
Master nodeYesString-NoneMust be the name of an existing node 

12 Members

The members define the elements of the finite element model. A member is not the same as an element, as a member can be divided into many elements. If a member is divided into elements in the input file, Ashes will automatically create the necessary nodes when importing the file. If the support section is then exported from Ashes, all the newly created nodes and members will appear in the exported text file.

It can be necessary to rotate members along their axis for rectangular elements or to adjust the element sensor to a given requirement. When checking an Beam element sensor, the results are given within the element coordinate system defined by the axial direction (red vector), first principal direction (green vector) and the second principal direction (blue vector. To visualize the element coordinate system check the Display settings). The member and its coordinate system can be rotated around the axial direction by changing the value of the Initial direction optional parameter. By default, the initial position is such that
  • the axial direction is from the first node defining the member to the second node
  • the second principal axis is horizontal 
  • the first principal axis forms a right-handed coordinate system. Therefore, the first principal axis has the maximum gradient upwards or downwards, depending on the axial direction..
If the axis of the element is vertical, the first principal axis point in the x-direction as defined in the Orientation section of the input file. See Coordinate systems for more information.
Filling of a member (parameters Filling density and Filling portion) is specified per member (see table below) as opposed to (external) growth that is specified for the cross section.


Parameter nameRequiredTypeUnitValue if emptyNote
Member nameYesString-NoneMust be an alphanumeric string. White spaces are not allowed
Start nodeYesString-None-
End nodeYesString-None-
Cross sectionYesString-NoneMust be an existing cross section, defined in the input file
Number of elementsNoInteger-1The member will be divided into this number of elements in Ashes
Initial rotationNoScalarDegrees0-
Filling densityNoScalarkg.m-30For hollow elements, the hollow part can be filled with a material which density is given here. Typically, this is used for waterfilling in offshore structures.
Filling portionNoScalar-1The portion of the hollow part that is filled. 1.0 means that it is completely filled (100%), 0.0 means that it is completely empty.
Beam SensorNoString-0If set to 1, the corresponding member will have a sensor when the file is imported.
Fatigue sensorNoString-0The string will define where on the member the stresses will be computed. See note below for an explanation of the format


Note: the format of the string defining the fatigue sensor is node_name&position1@position2@position3@... 
  • the node name will be either i , j  or ij (corresponding to the nodes composing the element, which can be seen by right-clicking the element)
  • the position corresponds to the angular position in degrees where the stress will be computed. The angle is given from the 1st principal axis of the element and with a positive angle being towards the 2nd principal axis (see section 3. Element coordinate system of the Coordinate systems document)
A fatigue sensor string can therefore look like ij&0@180 , or like i&10@20@30@40 



If no members are defined, the model will only be composed of nodes and no elements.

13 Supports

Supports enable you to define how the support section is attached to the non-moving reference frame. A support is defined by constraining some of the degrees of freedom of a node chosen by the user. Two type of supports can be defined:
  • Fixed: the translations and rotations of the node are constrained
  • Pinned: the translation of the node are constrained, the rotations are free.
Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-NoneMust be an alphanumeric string. White spaces are not allowed
TypeYesString-NoneMust be either Pinned or Fixed
Node nameYesString-NoneMust be an existing node name
SensorNoString-0If set to 1, the corresponding support will have a sensor when the file is imported

If no support is defined, none of the nodes of the support section will have its degrees of freedom constrained. However, it is still possible to define an interaction between the support section and the non-moving referenece frame by using Mooring lines or Springs.

14 Springs

The support section can be attached to the non-moving reference frame by adding linear springs to given nodes. This springs can be of two types:
  • Springs: linear translational spring
  • RotationalSpring: linear rotational spring
Note: the stiffnesses and rotational stiffnesses are given in the global coordinate system

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-NoneMust be an alphanumeric string. White spaces are not allowed
TypeYesString-NoneMust be either Spring or RotationalSpring
Node nameYesString-NoneMust be an existing node name
Stiffness x-directionYesScalarN.m-1 or Nm.rad-1NoneStiffness along the x-direction for a translational spring, around the x-direction for a rotational spring
Stiffness y-directionYesScalarN.m-1 or Nm.rad-1NoneStiffness along the y-direction for a translational spring, around the y-direction for a rotational spring
Stiffness z-directionYesScalarN.m-1 or Nm.rad-1NoneStiffness along the z-direction for a translational spring, around the z-direction for a rotational spring
IsPy?NoBoolean-0Tags a spring as Py if set to 1. This does not influence the simulation but is used to track which loads come from P-y curves in the Total loads sensor
SensorNoString-0If set to 1, the corresponding support will have a sensor when the file is imported

15 Nonlinear springs

It is possible to implement non-linear springs as p-y curves. In order to do that, a new section named Table must be created for each p-y curve. This section will contain the different tables that define the non-linear stiffness curves. Then, the section Nonlinear springs will link each node where a p-y curve must be applied to those tables.

The code snippet below shows an example of how p-y curves can be defined (such an example can be found by clicking Help-> Open Examples Folder)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# About Nonlinear springs 
# Nonlinear translational springs with the given direction in global coordinates and where the stiffness relation is given in
#  a table in a Table section.

Nonlinear springs
# Name    Type 	Node name	x-direction (m) 	y-direction (m). 	z-direction (m)	Stiffness table name 	[IsPy ? = 0 (-)]
Nonlin1x   Spring	M1	1	0	0	PyCurve1	1	
Nonlin1y   Spring	M1	0	1	0	PyCurve2	1	

# About tables
# A table can contain various data that can be used in multiple contexts.
#
# A table entry should specify the header in the following layout:
#
# Table
# <UniqueName>
# <Key label>	<Value1 label>	<Value2 label>	...
# <[Key dimensions]>	<[Unit1 dimensions]>	<[Unit2 dimension]>	...
# <Key1>	<Value1_1>	<Value1_2>	...
# <Key2>	<Value2_1>	<Value2_2>	...
# ...	...	...	...
#
# Refer to the documentation for help with specifying units. Optionally, insert a "[]" string
# for each column to define the values as unitless. Note: The unit does not matter for a nonlinear
# spring stiffness table.
# The table data should follow after the header as a table of values with the same
# number of columns as specified in the header.

# First table
Table
PyCurve1
Displacement	SpringLoad
0	0
0.5	10000
1.0	500000

# Second table
Table
PyCurve2
Displacement	SpringLoad
0	0
0.5	20000
1.0	100000


Note: a linear interpolation is performed to obtain the force at a given displacement. This is equivalent to taking a linear spring with an effective stiffness between two points defined in the table. In the example in the picture above, if the displacement of node 'M1' in the y-direction is between 0 and 0.5 m, the table PyCurve2 shows that the effective stiffness will be (20 000 - 0)/(0.5 - 0) = 40 000N.m-1


The directions in which the p-y curves are applied to the different nodes are given in the global coordinates system.

Parameter nameRequiredTypeUnitValue if emptyNote
NameYesString-NoneMust be an alphanumeric string. White spaces are not allowed
TypeYesString-NoneMust be either Spring or RotationalSpring
Node nameYesString-NoneMust be an existing node name
x-directionYesScalarmNonex-coordinate for the non-linear spring
y-directionYesScalarmNoney-coordinate for the non-linear spring
z-directionYesScalar-mNonez-coordinate for the non-linear spring
Stiffness table nameYesString-NoneRefers to a table defined in the Table section
IsPy?NoBoolean-0Tags a spring as p-y if set to 1. This does not influence the simulation but is used to track which loads come from P-y curves in the Total loads sensor
SensorNoBoolean-0If set to 1, the corresponding spring will have a sensor when imported

For a nonlinear translational spring, the units of the table are meters and Newtons.
For a nonlinear rotational spring, the units of the table are radians and Newton-meters.

16 Damping loads

Damping can be implemented as (nonlinear) loads. The damping factor is multiplied with the velocity of the node in question to give a damping load in the opposite direction.

Parameter nameRequiredTypeUnitValue if emptyNote
Node nameYesString-NoneMust be an existing node name
Damping factorYesScalarNs.m-1None-

17 Transforms

The support section structure can be scaled, translated or rotated by defining one or more transformations. Valid transforms are scale, translate and rotate. The transformations will be applied in the order specified.
Note that if this structure is imported onto another structure, translations will be ignored, since the structure will be connected to the existing one.

Examples
  • To translate the structure 20 meters in the x-direction and 10 meters in the y-direction, type
    1
    2
    Transforms
    Translate   20   10   0

  • To rotate the structure 90 degrees around the x-axis, type
    1
    2
    Transforms
    Rotate   90   0   0

  • To scale the structure to 50% while keeping the node 12 fixed, type
    1
    2
    Transforms
    Scale   0.5   Node 12

18 Line sections

This section is only used for mooring lines input files.
Each text line defines the position (in meters) for nodes along the mooring line, starting from the anchor node to the fairlead node connected to the floating platform. As a minimum, one station for the 0 position and one for the end position (with position equal to the line length) should be specified. Note: Only the x value (the position along the line) is used in this section, y and z is ignored. Ashes will lay out the line structure in a catenary shape when imported.

It is recommended to check the final length on the information pane on the generated line to see if it is sufficiently close to the length you have specified. If it's not, try to increase the number of stations

 
Parameter nameRequiredTypeUnitValue if emptyNote
Line positionYesScalarmNonePosition along the line
Cross sectionYesString-NoneMust be an existing cross section defined in the Cross sections section
Point massYesScalarkgNoneNodes with a point mass will appear grey in Ashes (and blue otherwise)