- Getting started
- Design method selection {#design-method-selection}
- Aircraft exchange file requirements {#aircraft-exchange-file}
- Configuring tank design parameters in the aircraft exchange file {#configuring-tank-design-parameters-in-the-aircraft-exchange-file}
- The ID tank_element
- Kerosene driven aircraft configurations {#kerosene-driven}
- Valid tank location and tank position combinations
- Possible tank configurations: Aircraft with kinked wing
- Possible tank configurations: Aircraft with singe trapezoidal wing
- Example: Minimum tank configuration
- Liquid hydrogen driven aircraft configurations {#lh2-driven}
- Module configuration file {#module-configuration-file}
- Additional requirements {#additional-requirements}
- Next steps {#next-steps}
Getting started
This section will guide you through the necessary steps to get the tank_design module up and running. It contains information on tool requirements and design parameters.
- Design method selection - How to set the design method?
- Aircraft exchange file - Get information on necessary parameters from the acXML.
- Tank design configuration - Learn about parameters used to set the tank configuration.
- Module configuration file - Dive into tank design specific parameters.
- Additional requirements - Is anything else necessary to get the module running?
- Next steps - How to proceed?
!!! note
It is assumed that you have the UNICADO package
installed including the executables and UNICADO libraries.
Generally, we use two files to set or configure modules in UNICADO:
-
The aircraft exchange file (or acXML) includes
- data related inputs (e.g., required energy, component design data) and
- data related outputs (e.g., tank positions).
-
The module configuration file
tank_design_conf.xml
(also configXML) includes- control settings (e.g., enable/disable generating plots) and
- program settings (e.g., information on buffers).
In the following sections you will find more information on how to configure these files to suit your needs.
Design method selection {#design-method-selection}
The calculation method is automatically chosen based on the following data from the aircraft exchange and module configuration file:
Parameter | File | Example * |
---|---|---|
Configuration type | acXML | tube_and_wing |
Calculation fidelity | configXML | empirical |
Method name | configXML | tank_design_tu_berlin |
Energy carrier type | acXML | kerosene |
* This example defines a generic short and medium range tube-and-wing aircraft.
Thus, it must be ensured that this data is available. More information on required data can be found in the following sections.
Aircraft exchange file requirements {#aircraft-exchange-file}
To single execute the tank_design module, we need an acXML file that already contains the output data from the following tools:
- wing_design
- empennage_design
- fuselage_design
- mission_analysis *
* The tank_design execution is also possible without mission analysis data. Alternatively, the following assumption is used to calculate the mission fuel amount:
$ m_{fuel} = n_{PAX} \cdot R \cdot \frac{E}{100 \text{ km}} $
In which
- n_{PAX} - number of passengers
- R - range in km
- E - energy demand (3.35 liter per PAX per 100 km)
The following data should then be available in the acXML:
- Requirements and specifications
- Design specification
- Configuration information: Configuration type, tank definition (see below)
- Energy carrier(s)
- Requirements
- Top level aircraft requirements: Range (req. for design mission only)
- Design specification
- Analysis
- Mission energy (req. for design mission only): Consumed energy, energy carrier ID
- Component design: Geometrical data of
- Fuselage
- Wing
- Empennage
!!! note When the UNICADO workflow is executed the tool is run automatically. In this case, all the required data should be available anyway.
Configuring tank design parameters in the aircraft exchange file {#configuring-tank-design-parameters-in-the-aircraft-exchange-file}
The desired tank configuration is defined by the user in the aircraft exchange file. The information can be found in the aircraft_exchange_file/requirements_and_specifications/design_specification/configuration/tank_definition
block.
tank_element
The ID Each tank is configured in the acXML as one element (ID element) with the following parameters:
-
energy_carrier_ID
: ID of energy carrier to obtain which fuel is to be stored in the tanks. -
location
: Aircraft component where the tank is located (valid options depend on the energy carrier). -
position
: Position at the desired location (valid options depend on location and energy carrier). -
energy_share
: Share of this tanks energy in relation to required mission energy (of same energy carrier). Only relevant for liquid hydrogen tanks. Not used for the calculation of kerosene tanks. Should therefore equal0.0
for kerosene tanks.
The following sections give an overview on valid tank configurations for kerosene and liquid hydrogen driven aircraft configurations.
Kerosene driven aircraft configurations {#kerosene-driven}
For a valid tank configuration, you must first define each tank entity by setting the parameters of the ID element. You must specify a correct parameter combination of tank position and location for each ID element.
Subsequently, you must define a valid overall tank configuration for the aircraft. In other words, the combination of the individual ID elements must be valid. The following sections will guide you through the process.
Valid tank location and tank position combinations
For aircraft configurations with a kinked wing, the "wing tank configuration" consist of an inner and outer tank on each side of the aircraft and a wing center tank by default. This corresponds to numbers 1-5 in the following table that provides an overview on possible tank location and tank position combinations. Furthermore, there is the option to design a trim tank and an additional center tank.
No. | Location | Position | Note |
---|---|---|---|
1 | Wing | Center | |
2 | Wing | Inner left | |
3 | Wing | Outer left | No outer tanks available for single trapezoidal wing, only valid for kinked wing. |
4 | Wing | Inner right | |
5 | Wing | Outer right | No outer tanks available for single trapezoidal wing, only valid for kinked wing. |
6 | Horizontal stabilizer | Total | Also referred to as 'trim tank'. |
7 | Fuselage | Center | Also referred to as 'additional center tank'. |
For example, to define a valid combination for the wing center tank, set the following parameters for the ID element ID="0"
:
-
energy_carrier_ID
to0
(it is assumed that0
equals kerosene) -
location
towing
-
position
tocenter
-
energy_share
equals0.0
Furthermore, give it a clear description
tag, for example wing center tank
.
To define more tanks, continue by subsequently defining those parameters for the ID elements with the ID="1"
, ID="2"
, and so on. Please ensure to always keep an eye on valid tank configurations described in the next sections.
Possible tank configurations: Aircraft with kinked wing
The following table provides an overview on possible tank configurations. As can be seen, the "wing tank configuration" also corresponds to the minimum tank configuration wing_all_tanks
that is similar to a tank configuration that can be found at a common medium range aircraft. The maximum number of tanks is 7. This means that the last ID element should have the ID="6"
.
Tanks 1-5 | Tank 6 | Tank 7 | Configuration name |
---|---|---|---|
Wing | - | - | wing_all_tanks |
Wing | Horizontal stabilizer - Total | - | wing_with_trim_tank |
Wing | Fuselage - Center | - | wing_with_additional_center_tank |
Wing | Horizontal stabilizer - Total | Fuselage - Center | wing_with_additional_center_and_trim_tank |
Wing | Fuselage - Center | Horizontal stabilizer - Total | wing_with_additional_center_and_trim_tank |
Note: "Wing" always refers to either the combinations 1 to 5 of the table in the previous section ("wing tank configuration"). |
Possible tank configurations: Aircraft with singe trapezoidal wing
The following table provides an overview on possible tank configurations. As can be seen, the "wing tank configuration" also corresponds to the minimum tank configuration wing_all_tanks
. The maximum number of tanks is 5. This means that the last ID element should have the ID="4"
.
Tanks 1-3 | Tank 4 | Tank 5 | Configuration name |
---|---|---|---|
Wing | - | - | wing_all_tanks |
Wing | Horizontal stabilizer - Total | - | wing_with_trim_tank |
Wing | Fuselage - Center | - | wing_with_additional_center_tank |
Wing | Horizontal stabilizer - Total | Fuselage - Center | wing_with_additional_center_and_trim_tank |
Wing | Fuselage - Center | Horizontal stabilizer - Total | wing_with_additional_center_and_trim_tank |
Note: "Wing" always refers to the combinations 1, 2, and 4 of the table in the previous section ("wing tank configuration"). |
Example: Minimum tank configuration
The following tank_definition
code block snippet shows how to configure a standard "wing tank configuration" for an aircraft with a kinked wing that is similar to the one of a common commercial medium range aircraft.
<tank_definition description="Energy tanks information">
<tank ID="0" description="Inner left wing tank">
<energy_carrier_ID description="see energy carrier specification node">
<value>0</value>
<unit>1</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5</upper_boundary>
</energy_carrier_ID>
<location description="Component where the tank is located: fuselage, wing, horizontal_stabilizer">
<value>wing</value>
</location>
<position description="Position of tank in location: tailcone, rear, front, top, bottom, center, inner_left, outer_left, inner_right, outer_right, total">
<value>inner_left</value>
</position>
<energy_share description="Share of this tanks energy in relation to required mission energy (of same energy carrier). Only relevant for liquid hydrogen tanks. Equals 0.0 for kerosene tanks.">
<value>0.0</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</energy_share>
</tank>
<tank ID="1" description="Outer left wing tank">
<energy_carrier_ID description="see energy carrier specification node">
<value>0</value>
<unit>1</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5</upper_boundary>
</energy_carrier_ID>
<location description="Component where the tank is located: fuselage, wing, horizontal_stabilizer">
<value>wing</value>
</location>
<position description="Position of tank in location: tailcone, rear, front, top, bottom, center, inner_left, outer_left, inner_right, outer_right, total">
<value>outer_left</value>
</position>
<energy_share description="Share of this tanks energy in relation to required mission energy (of same energy carrier). Only relevant for liquid hydrogen tanks. Equals 0.0 for kerosene tanks.">
<value>0.0</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</energy_share>
</tank>
<tank ID="2" description="Inner right wing tank">
<energy_carrier_ID description="see energy carrier specification node">
<value>0</value>
<unit>1</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5</upper_boundary>
</energy_carrier_ID>
<location description="Component where the tank is located: fuselage, wing, horizontal_stabilizer">
<value>wing</value>
</location>
<position description="Position of tank in location: tailcone, rear, front, top, bottom, center, inner_left, outer_left, inner_right, outer_right, total">
<value>inner_right</value>
</position>
<energy_share description="Share of this tanks energy in relation to required mission energy (of same energy carrier). Only relevant for liquid hydrogen tanks. Equals 0.0 for kerosene tanks.">
<value>0.0</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</energy_share>
</tank>
<tank ID="3" description="Outer right wing tank">
<energy_carrier_ID description="see energy carrier specification node">
<value>0</value>
<unit>1</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5</upper_boundary>
</energy_carrier_ID>
<location description="Component where the tank is located: fuselage, wing, horizontal_stabilizer">
<value>wing</value>
</location>
<position description="Position of tank in location: tailcone, rear, front, top, bottom, center, inner_left, outer_left, inner_right, outer_right, total">
<value>outer_right</value>
</position>
<energy_share description="Share of this tanks energy in relation to required mission energy (of same energy carrier). Only relevant for liquid hydrogen tanks. Equals 0.0 for kerosene tanks.">
<value>0.0</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</energy_share>
</tank>
<tank ID="4" description="Wing center tank">
<energy_carrier_ID description="see energy carrier specification node">
<value>0</value>
<unit>1</unit>
<lower_boundary>0</lower_boundary>
<upper_boundary>5</upper_boundary>
</energy_carrier_ID>
<location description="Component where the tank is located: fuselage, wing, horizontal_stabilizer">
<value>wing</value>
</location>
<position description="Position of tank in location: tailcone, rear, front, top, bottom, center, inner_left, outer_left, inner_right, outer_right, total">
<value>center</value>
</position>
<energy_share description="Share of this tanks energy in relation to required mission energy (of same energy carrier). Only relevant for liquid hydrogen tanks. Equals 0.0 for kerosene tanks.">
<value>0.0</value>
<unit>1</unit>
<lower_boundary>0.0</lower_boundary>
<upper_boundary>1.0</upper_boundary>
</energy_share>
</tank>
</tank_definition>
!!! note
For aircraft with a single trapezoidal wing, please delete the Outer left tank
and Outer right tank
elements and adjust the other tank IDs accordingly.
Liquid hydrogen driven aircraft configurations {#lh2-driven}
tbd.
Module configuration file {#module-configuration-file}
The configXML is structured into two blocks: the control and program settings.
The control settings are standardized in UNICADO and will not be described in detail here. But to get started, you have to change at least
- the
aircraft_exchange_file_name
andaircraft_exchange_file_directory
to your respective settings, - the
console_output
at least tomode_1
, and - the
plot_output
to false (or defineinkscape_path
andgnuplot_path
).
!!! note If the tool is executed via the workflow, those settings are set by the workflow settings.
The program settings are structured like this (descriptions can be found in the tank_design_conf.xml
):
Program Settings
|- Configuration (ID="tube_and_wing")
| |- Fidelity name
| |- Method name
| |- Fidelity (ID="empirical")
| | |- Tank design tu berlin
| | | |- General
| | | | |- Mass technology factor
| | | |- Specific
| | | | |- Kerosene tank design parameter
| | | | | |- Obelisk calculation method
| | | | | |- A/D factor
| | | | | |- Factor volume usable
| | | | | |- Temperature expansion allowance
| | | | | |- Buffer inner tank segment
| | | | | |- Buffer outer tank segment
| | | | | |- Buffer center tank segment
| | | | |- Liquid hydrogen tank design parameter
| | | | | |- End cap type
| | | | | |- Internal pressure
| | | | | |- Insulation type
| | | | | |- Insulation material
| | | | | |- Insulation thickness
| | | | | |- Insulation density
| | | | | |- Material wall
| | | | | |- Density wall
| | | | | |- Wall thickness calculation method
| | | | | |- Mass baffle
| | | | | |- Mass pumps
| | | | |- Miscellaneous
| | | | | |- Factor usable diameter
| | | | | |- Factor volume allowance
Additional requirements {#additional-requirements}
There is no additional data required at the moment.
Next steps {#next-steps}
The next step is to run the tank_design module.