Super Element Generator Script

Will Asproth
Will Asproth New Altair Community Member
edited August 28 in Altair HyperWorks

Introduction

Hello all,

My name is Will Asproth. I’m a aerospace engineering and mechanics student at the University of Minnesota. This is my second year interning as application engineer. One of my intern projects this summer was a script for automating the creation and validation and super elements.

Background

Super elements are used to represent the behavior of a structure at a boundary by reducing the interface degrees of freedom and normal modes. The part of the structure that is not reduced is called the residua, and those that are reduced are called the super element. The nodes shared between the residual and the super element elements are called the aset. There are many methods of approximating the behavior of a structure using a super element, but they can be classified as either dynamic or static condensation methods. Static condensation can approximate static loads in a residual, while dynamic condensation maintains normal modes.

image

Capabilities

The included script is used to generate super elements and their associated residuals in HyperMesh.  The script allows the user to select the desired residual elements, the condensation method, and the loadsteps to include. It also permits choosing a save file directory and a file name suffix, for organization purposes. The script supports the following methods:

  • CBN: Craig-Bampton nodal dynamic condensation method
  • GM: general dynamic condensation method
  • GUYAN: Guyan static condensation method
  • PARAM EXTOUT: static condensation by .pch file (available for NASTRAN solver interface)

While the script is not designed for anything other than the OptiStruct solver interface, the PARAM EXTOUT includes nothing solver specific, so it may work for the NASTRAN solver.

Function

You can run the script by just dragging and dropping the superelement.tcl file into your HyperMesh session with a base model open.

When the script runs, it first checks the residual to ensure that no elements have a dependency on elements outside the residual, this could include 1d elements like rbe3s or MPCs. If no potential conflicts are detected it generates the following files:

  • (_cms.hm): includes sets of elements corresponding to the residual and super element
  • (_super_element.hm): the super element model file
  • (_super_element.fem): an export of the super element solve file
  • (_residual.hm): the residual model file
  • (_residual.fem): an export of the residual file

The method of generation is most similar too the OS-HWX-T: 7000 tutorial, but differs when using the PARAM EXTOUT method.

Validation

After a super element is generated successfully the user interface then provides the option to validate a residual’s eigen values against the base model. For this operation to complete successfully both the residual and the baseline need to be able to generate eigenmode results without modification. Validation also requires running OptiStruct in batch through the same install location as the current HyperMesh session, i.e. you should have the same version of OptiStruct as you do HyperMesh. If validation is completed successfully a new page is generated in the user interface, that allows you to compare eigenvalues between the baseline and the residual. The process generates the following files:

  • (_baseline_validation.hm): an eigenmodes analysis of the starting model
  • (_baseline_validation.fem): an export of the baseline validation model
  • (_baseline_validation.h3d): the results of the baseline validation
  • (_baseline_validation.pch): the punch results of the baseline model, this is what the script uses to detect eigenvalues
  • (_super_element.h3d or _super_element_AX.pch): the result of a super element solve. H3DDMIG methods require the H3D file, while the PARAM EXTOUT method requires a punch. Both include mass and stiffness matrixes.
  • (_residual_validation.hm): an eigenmodes analysis of the residual, referencing the super element solve.
  • (_residual_validation.fem): an export of the residual validation model
  • (_residual_validation.h3d): the results of the residual validation
  • (_residual_validation.pch): the punch results of the residual model, this is what the script uses to detect eigenvalues

Conclusion

With a process as complicated as generating super elements, I can’t guarantee that the script will produce working results for every model, but it should at least be able to create a starting point for further refinement. Some common issues are:

  • The only supported solver interface is OptiStruct
  • References to sets that no longer contain any entities
  • Dependencies between elements crossing the aset boundary
  • The PARAM EXTOUT method not generating the PAX matrix
  • The GUYAN method not preserving loads and spcs

In the zip file I’ve attached an example model that demonstrates the expected inputs and outputs for a dynamic condensation via the CBN method and a static condensation using the PARAM EXTOUT method. The files include the suffixes “_CBM” and “_EXTOUT” respectively. For the residuals to solve on your computer successfully you’ll need to change the path to the super element results.

Finally, the tcl script includes some super-fast list manipulation helper functions. Check them out if you’re working on script yourself.

Download the script on the exchange