Convert Abaqus Cross-Section to VABS#

Problem Description#

Given a 2D beam cross-section mesh created in Abaqus (.inp format), convert it to a VABS input file for beam property homogenization using the Timoshenko beam model.

Solution#

SGIO provides two approaches: a one-step convert() call, or the explicit read() + write() pair.

import sgio

# There are two ways to call functions to convert the data.

# Method 1: Use the `convert` function to do this in one step.

sgio.convert(
    'sg2_airfoil.inp',  # Name of the Abaqus inp file.
    'sg2_airfoil_2.sg',  # Name of the VABS file.
    'abaqus', # Format of the CS data converted from.
    'vabs', # Format of the CS data converted to.
    model_type='bm2', # Structural model: Timoshenko.
)


# Method 2: Use the `read` and `write` functions to do this in two steps.

# sg = sgio.read(
#     'sg2_airfoil.inp',  # Name of the SG file.
#     'abaqus', # Format of the SG data. See doc for more info.
#     model='bm2', # Structural model: Timoshenko.
# )

# sgio.write(
#     sg,  # SG data
#     'sg2_airfoil.sg',  # Name of the SG file.
#     'vabs', # Format of the SG data. See doc for more info.
# )


model_type='bm2' selects the Timoshenko beam model (includes shear deformation). Use 'bm1' for the classical Euler-Bernoulli model.

Result#

A VABS input file sg2_airfoil_2.sg is written to the working directory and can be passed directly to VABS for homogenization.

File List#