Model.vabs#

Model.vabs(collection, beam_collection, exportvabs=0, filepath='', createelements=0)#

Generates cross-sectional ply mesh information along with an solver file, taking shell elements and beam elements as input. The ply mesh is generated by cutting a plane passing through the center of the beam element and intersecting the shell elements. The mesh is propagated from the cutting points of the shell along the smoothed normals by extracting the numbers of the layers and thicknesses of the plies.

Parameters:
  • collection (Collection) – The collection containing the shell element entities.

  • beam_collection (Collection) – The collection containing the beam element entities.

  • exportvabs (int) –

    The flag to write the VABS input files in user defined path.

    Valid values are:

    0 - False

    1 - True

  • filepath (hwString) – The path where VABS input file are written. The argument is mandatory when exportvabs=1.

  • createelements (int) –

    Defines whether real elements are created on each section and stored in component for debug purpose.

    Valid values are:

    0 - False

    1 - True

Examples#

Generate the VABS mesh use shell elements with IDs 100 to 1001 and beam elements with IDs 5 to 8 as input#
import hm
import hm.entities as ent

model = hm.Model()

# Creating a collection that contains the shell elements
filter_shell_elements = hm.FilterByEnumeration(ent.Element, list(range(100, 1002)))
collection_shell_elements = hm.Collection(model, filter_shell_elements)

# Creating a collection that contains the beam elements
filter_beam_elements = hm.FilterByEnumeration(ent.Element, list(range(5, 9)))
collection_beam_elements = hm.Collection(model, filter_beam_elements)

model.vabs(
    collection=collection_shell_elements, beam_collection=collection_beam_elements
)
Generate the VABS mesh and export the VABS input files to a folder D:/vabs#
import hm
import hm.entities as ent

model = hm.Model()

# Creating a collection that contains the shell elements
filter_shell_elements = hm.FilterByEnumeration(ent.Element, list(range(100, 1002)))
collection_shell_elements = hm.Collection(model, filter_shell_elements)

# Creating a collection that contains the beam elements
filter_beam_elements = hm.FilterByEnumeration(ent.Element, list(range(5, 9)))
collection_beam_elements = hm.Collection(model, filter_beam_elements)

model.vabs(
    collection=collection_shell_elements,
    beam_collection=collection_beam_elements,
    exportvabs=1,
    filepath="D:/vabs",
    createelements=1,
)