Model.beamsectionsetdataroot#

Model.beamsectionsetdataroot(beam_sect_id, collector_id, solver, beam_config, line_color, fill_color, flags, torsion_factor, warping_factor, orient_vector1, orient_vector2, orient_origin1, orient_origin2)#

Updating a beam section requires two functions, of which this is the first. This function updates the root data for a beam section and will also clear all other beam section data.

Thus, this function should be followed by Model.beamsectionsetdatastandard(), Model.beamsectionsetdatashell(), Model.beamsectionsetdatasolid(), or Model.beamsectionsetdatageneric() depending on the beam_config selected. Beam section data cannot be updated piecemeal with this function; all data must be known for the beam and sent in as arguments.

Parameters:
  • beam_sect_id (unsigned int) – The ID of the beam section to update.

  • collector_id (unsigned int) – The ID of the beam section collector to update.

  • solver (unsigned int) –

    Integer indicating the solver the section is for. Valid values are:

    0 - HyperBeam

    1 - OptiStruct/Nastran

    2 - Abaqus

    8 - ANSYS

    9 - LS-DYNA

    21 - Permas

  • beam_config (int) –

    Basic configuration of the beam section. Valid values are:

    0 - Solid section

    1 - Generic section

    2 - Standard section

    3 - Shell section

  • line_color (unsigned char) – Currently unused. Must be set to 7.

  • fill_color (unsigned char) – Currently unused. Must be set to 1.

  • flags (unsigned char) – Currently unused. Must be set to 0.

  • torsion_factor (double) – Currently unused. Must be set to 1.

  • warping_factor (double) – Currently unused. Must be set to 1.

  • orient_vector1 (double) – Currently unused. Must be set to 0.

  • orient_vector2 (double) – Currently unused. Must be set to 0.

  • orient_origin1 (double) – Currently unused. Must be set to 0.

  • orient_origin2 (double) – Currently unused. Must be set to 0.

Examples#

Update the root data for a standard section specifying HyperMesh as the solver type#
import hm
import hm.entities as ent

model = hm.Model()

model.beamsectionsetdataroot(
  beam_sect_id=1,
  collector_id=1,
  solver=0,
  beam_config=2,
  line_color=7,
  fill_color=1,
  flags=0,
  torsion_factor=1,
  warping_factor=1,
  orient_vector1=0,
  orient_vector2=0,
  orient_origin1=0,
  orient_origin2=0
)
Note that this function should be used in tandem with one of four beam section update functions such as Model.beamsectionsetdatastandard() as follows#
import hm
import hm.entities as ent

model = hm.Model()

model.beamsectionsetdataroot(
  beam_sect_id=1,
  collector_id=1,
  solver=0,
  beam_config=2,
  line_color=7,
  fill_color=1,
  flags=0,
  torsion_factor=1,
  warping_factor=1,
  orient_vector1=0,
  orient_vector2=0,
  orient_origin1=0,
  orient_origin2=0
)

model.beamsectionsetdatastandard(
  parameter_array=[6.0, 6.0, 6.0, 0.5, 0.5, 0.5, 4.0, 4.0, 4.0, 1.0, 1.0, 1.0],
  beam_sect_id=1,
  beam_sect_type=4,
  orientation_angle=0,
  beam_sect_subtype="HMHat"
)