Support structure


The support structure is the structure on which the Rotor-nacelle assembly (RNA - Rotor-nacelle assembly ) is mounted. A support structure is composed of one or two Support sections, such as a Tubular tower, a Monopile, etc. For wind turbines with a support structure (i.e. any model created from a template except the RNA only template - see Starting window ), a set of parameterized support sections can be selected in Ashes in the Support Structure part action by clicking the icon highlighted in the image below:



These simple support sections can be modified by changing their respective parameters. In cases where more complex support sections are needed (such as custom made floaters or a multi-rotor WT), the support sections can be exported, modified and then imported by clicking the corresponding icons in the Part action shown in the image below:







The parameters available in the support structure part are listed below. These parameters are relevant for the whole support structure and not to an individual support section.

The different action buttons perform the following tasks:
  •  import a support structure text file into Ashes. See Support section files for more information
  •  export a support structure file. This can typically be used as a template to create your own xupport section
  •  import loads history file. This can be used to import a time series of loads that will be applied to Ashes, see Load history file 
  •  apply loads on the support structure from a Python srcipt. See section below for more information
  •  import a Craig-Bampton superelement. The support section will be replaced by mass, stiffness and damping matrices as defined in the superelement text file
  •  export a Craig-Bampton superelement. This will export the mass, stiffness and damping matrix at the initial state of the support structure. Note that this is not technically a superelement since the number of degrees of freedom has not been reduced, but can be used as a template for generating your own superelement files.

1 Python script

Your model can be coupled with an external Python script that will apply loads to the support section through the Python API in Ashes. This can be useful for example to generate your own hydrodynamic or geotech loads when the interaction with the structure is important to take into account (when it is not, you can just use the Loads history file parameter).

Note: Ashes will need the latest version of the Simis package for the API to work correctly. If you run into issues when running your Python script, always make sure you have the lates version by typing pip install Simis --upgrade   in a command window


In order to select your Python script, go to the relevant support section and click the Python script action button as shown in the figure below: 



This will open a dialog which enables you to select the Python script that will be run. You can run the script in two different ways: 
  • Automatically: you will then have to select the Python script that will be run, and once you start the simulation this script will be automatically called.
  • Manually: you won't have to select the Python script in Ashes. Once you start the simulation, a window will appear with a countdown. You have until the end of the countdown to go to the Python script that you want to run and start it manually. This is useful for example when you want to debug your controller.

Note: some options relative to the use of Python scripts, such as the duration of the countdown (called Waiting time) can be set under Preferences 


Ashes generates a server to connect to your Python script. When you select the Automatic option, this is done automatically, and you do not need to make any changes. When you select the Manual option, you have to ensure that your script has the right server name. Ashes sets the server name to be the same as the name of the support section, so if you are for example applying loads onto the Monopile, the server name will be Monopile . 

An example of Python script is provided in the folder Documents/Ashes X.xx/Python Examples/MorisonLoads.py. This script applies hydrodynamic loads based on the Morison equation and taking into account the kinematics of the support section. If this script is applied manually to a monopile, the name of the server Monopile has to be passed as an argument in the function ashes.connect , as shown in the figure below:



The name of the part is given in the Parts tab. In the example below, the name of the support section is Floater Multirotor 




The name can be specified with the Name keyword in the Support section files