Model

Below you will find a comprehensive list of all available features and properties. The model object has the following features:

graph TD A[Model] A --> F0[material] A --> F1[cross_section] A --> F2[beam] A --> F3[bc] A --> F4[post_proc]

Feature: material

description

The material feature is optional and allows to define sets of constant material properties. When defining the properties for a specific beam (or parts of it), you may refer to a material set using its UID. You may define as many sets as you like.

max_items

Maximum number: inf

required

Required: False (0)

required

A UID must be provided.

Property: E

graph LR A[Model] A --> F1[material] F1 --> P1[E]
description

Young’s modulus [N/m²]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Property: G

graph LR A[Model] A --> F1[material] F1 --> P1[G]
description

Shear modulus [N/m²]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Property: rho

graph LR A[Model] A --> F1[material] F1 --> P1[rho]
description

Density [kg/m³]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Feature: cross_section

description

The cross section feature is optional and allows to define sets of constant cross section properties. When defining the properties for a specific beam (or parts of it), you may refer to a cross section set using its UID. You may define as many sets as you like.

max_items

Maximum number: inf

required

Required: False (0)

required

A UID must be provided.

Property: A

graph LR A[Model] A --> F1[cross_section] F1 --> P1[A]
description

Area [m²]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Property: Iy

graph LR A[Model] A --> F1[cross_section] F1 --> P1[Iy]
description

Second moment of area about the local y-axis [m⁴]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Property: Iz

graph LR A[Model] A --> F1[cross_section] F1 --> P1[Iz]
description

Second moment of area about the local z-axis [m⁴]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Property: J

graph LR A[Model] A --> F1[cross_section] F1 --> P1[J]
description

Torsional constant [m⁴]

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘numbers.Number’>

>

0

Feature: beam

description

With the ‘beam’ feature you can add as many beams as needed for your model. The beam geometry is defined with so-called ‘named nodes’. These are special nodes which have a UID and which together make up a polygonal chain. In addition, you must also specify the cross section orientation. Beam properties (material and cross-section data) has to be defined for the entire beam length. Optionally, you can define loads or mass properties for an individual beam.

max_items

Maximum number: inf

required

Required: True (1)

Property: node

graph LR A[Model] A --> F1[beam] F1 --> P1[node]
description

Add a named beam node, and defines its coordinates in a global coordinate system. A beam requires at least two nodes. Note that you must provide a UID.

max_items

Maximum number: inf

required

Required: True (1)

required

A UID must be provided.

schema

Schema:

type

<class ‘list’>

min_len

3

max_len

3

item_types

<class ‘numbers.Number’>

Property: orientation

graph LR A[Model] A --> F1[beam] F1 --> P1[orientation]
description

Define a constant beam cross section orientation for a section of a beam. Refer to the start of the beam section with the key ‘from’ followed by a node UID, and refer to the end of the section with the key ‘to’. The key ‘up’ is followed by a list (vector) indicating the direction of the local z-axis of the beam element. The ‘up’ vector does not have to be a unit vector.

max_items

Maximum number: inf

required

Required: True (1)

schema

Schema:

$required_keys

[‘from’, ‘to’, ‘up’]

from

{‘type’: <class ‘str’>, ‘>’: 0}

to

{‘type’: <class ‘str’>, ‘>’: 0}

up

{‘type’: <class ‘list’>, ‘min_len’: 3, ‘max_len’: 3, ‘item_types’: <class ‘numbers.Number’>}

Property: material

graph LR A[Model] A --> F1[beam] F1 --> P1[material]
description

Define a constant material for a section of a beam. Refer to the start of the beam section with the key ‘from’ followed by a node UID, and refer to the end of the section with the key ‘to’. The key ‘uid’ must refer to a material UID defined in the ‘material’ feature.

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

$required_keys

[‘from’, ‘to’, ‘uid’]

from

{‘type’: <class ‘str’>, ‘>’: 0}

to

{‘type’: <class ‘str’>, ‘>’: 0}

uid

{‘type’: <class ‘str’>, ‘>’: 0}

Property: cross_section

graph LR A[Model] A --> F1[beam] F1 --> P1[cross_section]
description

Define a constant cross section for a section of a beam. Refer to the start of the beam section with the key ‘from’ followed by a node UID, and refer to the end of the section with the key ‘to’. The key ‘uid’ must refer to a cross section UID defined in the ‘cross_section’ feature.

max_items

Maximum number: inf

required

Required: True (1)

schema

Schema:

$required_keys

[‘from’, ‘to’, ‘uid’]

from

{‘type’: <class ‘str’>, ‘>’: 0}

to

{‘type’: <class ‘str’>, ‘>’: 0}

uid

{‘type’: <class ‘str’>, ‘>’: 0}

Property: point_load

graph LR A[Model] A --> F1[beam] F1 --> P1[point_load]
description

Add a point load to a specific node.

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

$required_keys

[‘at’, ‘load’]

at

{‘type’: <class ‘str’>, ‘>’: 0}

load

{‘type’: <class ‘list’>, ‘min_len’: 6, ‘max_len’: 6, ‘item_types’: <class ‘numbers.Number’>}

local_sys

{‘type’: <class ‘bool’>}

Property: point_mass

graph LR A[Model] A --> F1[beam] F1 --> P1[point_mass]
description

Add a point mass to a specific node.

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

$required_keys

[‘at’, ‘mass’]

at

{‘type’: <class ‘str’>, ‘>’: 0}

mass

{‘type’: <class ‘int’>, ‘>’: 0}

Property: distr_load

graph LR A[Model] A --> F1[beam] F1 --> P1[distr_load]
description

Add a distributed load.

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

$required_keys

[‘from’, ‘to’, ‘load’]

from

{‘type’: <class ‘str’>, ‘>’: 0}

to

{‘type’: <class ‘str’>, ‘>’: 0}

load

{‘type’: <class ‘list’>, ‘min_len’: 6, ‘max_len’: 6, ‘item_types’: <class ‘numbers.Number’>}

local_sys

{‘type’: <class ‘bool’>}

Property: nelem

graph LR A[Model] A --> F1[beam] F1 --> P1[nelem]
description

Define the number of element for the beam object. The number will apply to the whole polygonal chain. Note that the number is only approximate, and the actual element number is determined by the number and location of the named nodes.

max_items

Maximum number: 1

required

Required: True (1)

schema

Schema:

type

<class ‘int’>

>

0

Feature: bc

description

The boundary condition (bc) feature allows you to constrain the beam model. Both single point and multipoint constraints (MPC) can be set up. Note that the beam structure must be at least ‘statically determined’ (i.e. no rigid body motion) to run a static analysis.

max_items

Maximum number: 1

required

Required: True (1)

Property: fix

graph LR A[Model] A --> F1[bc] F1 --> P1[fix]
description

Fix degrees of freedom (DOF) at a specific named beam node. Specify which node to fix with the correct node UID. In addition, you must also speficy which DOFs to fix. To constrain all DOFs, set ‘fix’ to [‘all’].

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

$required_keys

[‘node’, ‘fix’]

node

{‘type’: <class ‘str’>, ‘>’: 0}

fix

{‘type’: <class ‘list’>, ‘min_len’: 1, ‘max_len’: 6, ‘item_types’: <class ‘str’>, ‘allowed_items’: [‘ux’, ‘uy’, ‘uz’, ‘thx’, ‘thy’, ‘thz’, ‘all’]}

Property: connect

graph LR A[Model] A --> F1[bc] F1 --> P1[connect]
description

Connect two beam nodes with a rigid connection. Specify the two nodes to connect with the keys ‘node1’ and ‘node2’ followed by the respective UIDs. Use the ‘fix’ key to constrain ‘all’ DOFs, or just specific DOFs. The two nodes may belong to the same beam, or two separate beams.

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

$required_keys

[‘node1’, ‘node2’, ‘fix’]

node1

{‘type’: <class ‘str’>, ‘>’: 0}

node2

{‘type’: <class ‘str’>, ‘>’: 0}

fix

{‘type’: <class ‘list’>, ‘min_len’: 1, ‘max_len’: 6, ‘item_types’: <class ‘str’>, ‘allowed_items’: [‘ux’, ‘uy’, ‘uz’, ‘thx’, ‘thy’, ‘thz’, ‘all’]}

Feature: post_proc

description

Post-processing.

max_items

Maximum number: 1

required

Required: True (1)

Property: plot_settings

graph LR A[Model] A --> F1[post_proc] F1 --> P1[plot_settings]
description

Define general plot settings.

max_items

Maximum number: 1

required

Required: False (0)

schema

Schema:

show

{‘type’: <class ‘bool’>}

save

{‘type’: <class ‘str’>, ‘is_dir’: ‘dummy’}

linewidth

{‘type’: <class ‘numbers.Number’>, ‘>’: 0}

markersize

{‘type’: <class ‘numbers.Number’>, ‘>’: 0}

fontsize

{‘type’: <class ‘int’>, ‘>’: 0}

scale_forces

{‘type’: <class ‘numbers.Number’>, ‘>’: 0}

scale_moments

{‘type’: <class ‘numbers.Number’>, ‘>’: 0}

scale_deformation

{‘type’: <class ‘numbers.Number’>, ‘>’: 0}

deform_loads

{‘type’: <class ‘bool’>}

Property: plot

graph LR A[Model] A --> F1[post_proc] F1 --> P1[plot]
description

Add a plot. You may add as many plots as you like. List the parts to show in the plot.

max_items

Maximum number: inf

required

Required: False (0)

schema

Schema:

type

<class ‘list’>

allowed_items

[‘bc’, ‘bc_id’, ‘beam_index’, ‘deformed’, ‘forces’, ‘global_axes’, ‘moments’, ‘node_uids’, ‘nodes’, ‘undeformed’]