Complete Update regarding the new Input Config
The Configuration File contains all information necessary for the algorithm to run through the optimisation. It is subdivided into different areas regarding the Geometry, Loads and Constraints, Cases (Events) and optimisation parameterConfiguration, Schedule, Material, Failure Criterion, Event, Boundary Conditions, Design, Geometry, Machining Allowance, Non-Design Spaces and Coordinate System. The file is written in the JSON-file format.
Based on the geometry data (STL-files) and the Configuration File, the algorithm can run fully autonomous and generate saves the result files in one subfolder each time it is started in the main folder.
The configuration file Configuration File starts with the creation timestamp and also indicates the used unit systemgeneral request to perform an optimisation and the Version number for which the configuration file was created.
applicationRequest | OptimizationLoop | Indicates that the regular optimisation loop is executed |
automaticFunctionalFacesDetection.positiveNonDesignDirection
true
Functional Surfaces are automatically detected. These areas grow during an optimisation to guarantee sharp edges and functional surfaces after the intersection.
If all functional surfaces have a Machining Allowance applied to them, this option should be deactivated.
Loads and Constraints
The Loads and Constraints section collects all information regarding the loads and fixations applied to the different geometries.
...
boundaryCondition.<name>.geometryName
...
Name of a geometry entry to associate with.
...
boundaryCondition.<name>.coordinateSystem
...
Name of a coordinate system described in the same file, used for describing constraints in local coordinates.
...
boundaryCondition.<name>.load.x
boundaryCondition.<name>.load.y
boundaryCondition.<name>.load.z
...
x-direction of load
y-direction of load
z-direction of load
...
boundaryCondition.<name>.displacement.x
boundaryCondition.<name>.displacement.y
boundaryCondition.<name>.displacement.z
...
x-direction of displacement
y-direction of displacement
z-direction of displacement
...
boundaryCondition.<name>.moment.x
boundaryCondition.<name>.moment.y
boundaryCondition.<name>.moment.z
...
x-direction of moment
y-direction of moment
z-direction of moment
...
boundaryCondition.<name>.acceleration.x
boundaryCondition.<name>.acceleration.y
boundaryCondition.<name>.acceleration.z
...
x-direction of acceleration
y-direction of acceleration
z-direction of acceleration
...
boundaryCondition.<name>.pointOfApplication.x
boundaryCondition.<name>.pointOfApplication.y
boundaryCondition.<name>.pointOfApplication.z
...
x-direction of point of application
y-direction of point of application
z-direction of point of application
...
boundaryCondition.<name>.pointOfApplication.coordinateSystem
...
Coordinate system related to the point of application
...
boundaryCondition.<name>.pressure
...
value of the pressure force
Example
Info |
---|
"boundaryCondition": { |
Configuration
configuration.symmetry.x
configuration.symmetry.y
configuration.symmetry.z
x-axis as symmetry plane (Y-Z-Plane).
y-axis as symmetry plane (X-Z-Plane).
z-axis as symmetry plane (X-Y-Plane).
configuration.symmetry.coordinateSystem
If the symmetry is to refer to a local coordinate system, the following command must also be entered (Coordinate_system_1 is the name of the local coordinate system and can vary).
configuration.maxConcurrentGPUSolvers
Maximum number of GPUs used by the optimisation (support GPUs: Nvidia Quadro Graphics Cards supported by CUDA Driver)
configuration.buildSpace
engine_version | 2021.2 | Indicates the version number with which the configuration file was created |
Configuration
The Configuration section defines the Design Space and general optimization parameters.
configuration.offsetSpace | Geometry used for the intersection with the Design Space to receive the |
print geometry |
configuration. |
buildSpace | Geometry used for the intersection with the Design Space to receive the |
nominal geometry |
configuration. |
complexity | Defines how complex the design is getting. More information here. |
configuration.eigenThreads | Number of CPU threads that can be used to build the matrix. At least two cores should always remain free. We recommend using 2-6 threads. |
configuration. |
maxConcurrentGPUSolvers | Maximum number of GPUs used by the optimisation (support GPUs: Nvidia Quadro Graphics Cards supported by CUDA Driver) |
configuration.solver.<name>.strategy | InternalCPU: CPU based solver ExternLegacy: External (GPU) solver |
configuration.solver.<name>.host | IP of the external solver, localhost for the same workstation. IP for cloud, for what the matrix is built locally and sent to the calculation unit. Large amounts of data can be moved with a corresponding amount of time. |
configuration.solver.<name>.port | Port which is used to access the CudaSolver. This can be selected arbitrarily, according to the specified value when starting the solver. (The default port for the Cuda service is 42001). |
Example
Info |
---|
"configuration": { |
Coordinate System
...
coordinateSystem.<name>.alpha
coordinateSystem.<name>.beta
coordinateSystem.<name>.gamma
...
The coordinate system is located/orientated with coordinate values and Euler angles regarding the global coordinate system.
...
coordinateSystem.<name>.origin.x
coordinateSystem.<name>.origin.y
coordinateSystem.<name>.origin.z
...
The coordinate system has a point of origin.
...
coordinateSystem.<name>.base
...
Each coordinate system is given a unique name Coordinate_System_1
Example
Info |
---|
"coordinateSystem": { |
Design
...
design.<name>.geometryName
...
Definition of the Design Space.
...
design.<name>.materialName
...
Definition of material for the Design Space.
Example
Info |
---|
"design": { |
Engine Version
Info |
---|
"engine_version": "2021.2", |
Event
...
event.<name>.eventName
...
Specified name of the event.
...
event.<name>.safetyFactor
...
Event specific Safety Factor
Example
Info |
---|
"event": { |
...
configuration.symmetry.x configuration.symmetry.y configuration.symmetry.z | x-axis as symmetry plane (Y-Z-Plane) y-axis as symmetry plane (X-Z-Plane) z-axis as symmetry plane (X-Y-Plane) |
configuration.symmetry.coordinateSystem | If the symmetry is to refer to a local coordinate system, the following command must also be entered (Coordinate_system_1 is the name of the local coordinate system and can vary) |
automaticFunctionalFacesDetection.positiveNonDesignDirection=true false | Functional Surfaces are automatically detected. These areas grow during an optimisation to guarantee sharp edges and functional surfaces after the intersection. If all functional surfaces have a Machining Allowance applied to them, this option should be deactivated. |
configuration.unitSystem | Used unit system |
Schedule
The schedule section contains the information regarding the levels and iterations during the optimisation.
schedule.prefabricated.shapeQuality | |
schedule.prefabricated.strutDensity |
You can influence these values further using the Advanced User Settings and the commands listed here.
Material
The Material section includes all relevant information regarding the material used during the optimisation. Three different material types can be entered.
material.<name>.failureCriterionName | Name of the Failure Criterion |
material.<name>.coordinateSystem | Coordinate system related to the material |
material.<name>.density | Material density |
material.<name>.material | Material name |
Isotropic Material
material.<name>.elementMode | Name of an element type |
material.<name>.young | Young’s modulus |
material.<name>.poisson | Poisson ratio |
3D Transversely Isotropic Material
material.<name>.elementMode | Specified material name |
material.<name>.exx material.<name>.eyy | Axial Young’s Modulus x Transversal Young’s modulus yz |
material.<name>.gxy | Shear modulus of parallel planes. |
material.<name>.vxy material.<name>.vyz | Axial Poisson ratio Transversal Poisson ratio |
3D Orthotropic Material
material.<name>.elementMode | Specified material name |
material.<name>.exx material.<name>.eyy material.<name>.ezz | Young’s modulus x Young’s modulus y Young’s modulus z |
material.<name>.gxy material.<name>.gxz material.<name>.gyz | Shear modulus of xy plane Shear modulus of xz plane Shear modulus of yz plane |
material.<name>.vxy material.<name>.vyx material.<name>.vxz material.<name>.vzx material.<name>.vyz material.<name>.vzy | xy component of Poisson ratio tensor yx component of Poisson ratio tensor xz component of Poisson ratio tensor zx component of Poisson ratio tensor yz component of Poisson ratio tensor zy component of Poisson ratio tensor |
Failure Criterion
The Failure Criterion section contains all information regarding the goal of the optimisation.
Von Mises
failureCriterion.<name>.failureCriterion | Specified name of the Failure Criterion |
failureCriterion.<name>.tensileStrength | Tensile Strength of the material |
Example von Mises
...
...
Tsai Hill Failure Criterion
Failure Criterion for directional dependent Stress Goals (max. allowable Stress)
failureCriterion.<name>.failureCriterion | Specified name of the Failure Criterion. |
failureCriterion.<name>.x_t | Axial Tensile Strength |
failureCriterion.<name>.y_t | Transversal Tensile Strength |
failureCriterion.<name>.x_c | Axial Compression Strength (3D Orthotropic Material) |
failureCriterion.<name>.y_c | Transversal Compression Strength (3D Orthotropic Material) |
failureCriterion.<name>.s | Shear Strength |
Example Tsai Hill
...
Tsai Wu Failure CriterionTsai Wu Failure Criterion
Failure Criterion for directional dependent Stress Goals (max. allowable Stress)
failureCriterion.<name>.failureCriterion | Specified name of the Failure Criterion |
failureCriterion.<name>.x_t | Tensile Strength x |
failureCriterion.<name>.y_t | Tensile Strength y |
failureCriterion.<name>. |
Tensile Strength z (3D Orthotropic Material)
x_c | Compression Strength x |
failureCriterion.<name>.y_c | Compression Strength y |
failureCriterion.<name>.z_c
failureCriterion.<name>.s_xy | Shear Strength in XY |
failureCriterion.<name>.s_yz
Shear Strength in YZ (3D Orthotropic Material)
failureCriterion.<name>.s_zx
Shear Strength in ZX (3D Orthotropic Material)
Example Tsai Wu
...
Geometry
In the Geometry section, all geometries and their paths are defined. For each geometry used in the optimisation an STL-file needs to be available in the optimisation folder.
...
geometry.<name>.isOpenSurface
geometry.<name>.useSurfaceOnly
geometry.<name>.useSurfaceCentroid
...
Indicates that the geometry is a surface and not a volume.
...
geometry.<name>.path
...
Path to the geometry file
Example
Info |
---|
"geometry": { |
Machining Allowance
The Machining Allowances section collects all information regarding the Machining Allowances and the Design Space including the Machining Allowances to guarantee a correct intersection.
...
machiningOffset.<name>.geometryName
...
Specified name of the Machining Allowance reference geometry.
...
machiningOffset.<name>.offset
...
Defines the thickness of the Machining Allowance in the chosen unit.
Example
Info |
---|
"machiningOffset": { |
In the Geometry section, all geometries and their paths are defined. For each geometry used in the optimisation an STL-file needs to be saved in the optimisation folder.
Material
...
material.<name>.failureCriterionName
...
Name of the Failure Criterion
...
material.<name>.density
...
Material density
...
material.<name>.coordinateSystem
...
Coordinate system related to the material
Isotropic Material
...
material.<name>.elementMode
...
Specified material name
...
material.<name>.young
...
Young’s modulus
...
material.<name>.poisson
...
Poisson ratio
Example Isotropic Material
Info |
---|
"material": { |
3D Transversely Isotropic Material
...
material.<name>.elementMode
...
Specified material name
...
material.<name>.exx
material.<name>.eyy
...
Axial Young’s Modulus x
Transversal Young’s modulus yz
...
material.<name>.gxy
...
Shear modulus of parallel planes.
...
material.<name>.vxy
material.<name>.vyz
...
Axial Poisson ratio
Transversal Poisson ratio
Example 3D Transversely Isotropic Material
Info |
---|
"material": { |
3D Orthotropic Material
...
material.<name>.elementMode
...
Specified material name
...
material.<name>.exx
material.<name>.eyy
material.<name>.ezz
...
Young’s modulus x
Young’s modulus y
Young’s modulus z
...
material.<name>.gxy
material.<name>.gxz
material.<name>.gyz
...
Shear modulus of xy plane
Shear modulus of xz plane
Shear modulus of yz plane
...
material.<name>.vxy
material.<name>.vyx
material.<name>.vxz
material.<name>.vzx
material.<name>.vyz
material.<name>.vzy
...
xy component of Poisson ratio tensor
yx component of Poisson ratio tensor
xz component of Poisson ratio tensor
zx component of Poisson ratio tensor
yz component of Poisson ratio tensor
zy component of Poisson ratio tensor
Example 3D Orthotropic Material
Info |
---|
"material": { |
...
Event
The Event section sorts all Loads & Boundary Conditions to load cases and also defines the goal for each load case during the optimisation.
event.<name>.eventName | Specified name of the event |
event.<name>.safetyFactor | Event specific Safety Factor |
event.<name>.condition.<name> | Collection of boundary conditions considered for this event |
Boundary Conditions
The Boundary Conditions section contains all information regarding the different loads and constraints.
boundaryCondition.<name>.geometryName | Name of a geometry entry to associate with. |
boundaryCondition.<name>.coordinateSystem | Name of a coordinate system described in the same file, used for describing constraints in local coordinates |
boundaryCondition.<name>.load.x boundaryCondition.<name>.load.y boundaryCondition.<name>.load.z | x-direction of load y-direction of load z-direction of load |
boundaryCondition.<name>.displacement.x boundaryCondition.<name>.displacement.y boundaryCondition.<name>.displacement.z | x-direction of displacement y-direction of displacement z-direction of displacement |
boundaryCondition.<name>.moment.x boundaryCondition.<name>.moment.y boundaryCondition.<name>.moment.z | x-direction of moment y-direction of moment z-direction of moment |
boundaryCondition.<name>.acceleration.x boundaryCondition.<name>.acceleration.y boundaryCondition.<name>.acceleration.z | x-direction of acceleration y-direction of acceleration z-direction of acceleration |
boundaryCondition.<name>.pointOfApplication.x boundaryCondition.<name>.pointOfApplication.y boundaryCondition.<name>.pointOfApplication.z | x-direction of point of application y-direction of point of application z-direction of point of application |
boundaryCondition.<name>.pointOfApplication.coordinateSystem | Coordinate system related to the point of application |
boundaryCondition.<name>.pressure | value of the pressure force |
Design
The Design section defines the geometry for the Design Space and connects this with the defined Material.
design.<name>.geometryName | Definition of the Design Space. |
design.<name>.materialName | Definition of material for the Design Space. |
Geometry
In the Geometry section, all geometries and their paths are defined. For each geometry used in the optimisation an STL-file needs to be available in the optimisation folder.
geometry.<name>.isOpenSurface geometry.<name>.useSurfaceOnly geometry.<name>.useSurfaceCentroid | Indicates that the geometry is a surface and not a volume |
geometry.<name>.path | Path to the geometry file |
Machining Allowance
The Machining Allowances section collects all information regarding the Machining Allowances.
machiningOffset.<name>.geometryName | Specified name of the Machining Allowance reference geometry |
machiningOffset.<name>.offset | Defines the thickness of the Machining Allowance in the chosen unit |
Non-Design Spaces
The Non-Design Spaces section defines the preserve behaviour of specific regions and includes the information regarding retained Volumes.
nonDesign.<name>.geometryName | Specified geometry name |
nonDesign.<name>.preserveGeometry | The volume cannot be removed during the optimisation and will keep a connection to the rest of the design |
nonDesign.<name>.retainedVolume | A Retained Volumes specifies an area of the optimisation model which is included in the analysis but not in the design. |
Example
Info |
---|
"nonDesign": { |
Schedule
Example
...
Coordinate System
In the Coordinate System section all used coordinate systems are listed and defined.
coordinateSystem.<name>.alpha coordinateSystem.<name>.beta coordinateSystem.<name>.gamma | The coordinate system is located/orientated with coordinate values and Euler angles regarding the global coordinate system. |
coordinateSystem.<name>.origin.x coordinateSystem.<name>.origin.y coordinateSystem.<name>.origin.z | The coordinate system has a point of origin. |
Advanced User Settings
Have a look here for more information and commands that can be used.