Translates Nastran ASCII punch files into HyperMesh binary results files. hmnast can be executed either independently or directly from HyperMesh.


To run hmnast independently, use the following syntax:
hmnast [arguments] <inputfile>




Supported data types include:
  • Displacements, rotations, velocities, and accelerations
  • SPC forces and SPC moments
  • Grid Point Force Balance (totals block only)
  • Real element forces Element name codes: 1, 2, 10, 11, 12, 33, 34, 74, 100
  • Real stresses Element name codes: 1, 2, 4, 10, 33, 34, 39, 64, 67, 68, 70, 74, 75, 82, 85, 88, 90, 91, 93, 144
  • Real strains Element name codes: 4, 33, 39, 64, 67, 68, 70, 74, 75, 82, 85, 88, 90, 91, 93, 144
  • Complex stresses Element name codes: 33, 39, 64, 67, 68, 70, 74, 75, 82
  • Complex strains Element name codes: 33, 39, 64, 67, 68, 70, 74, 75, 82
  • Temperatures
  • Flux
  • Strain energies
  • Time
  • Eigenvectors
  • Frequency
  • To extract displacements and maximum von Mises stresses from the punch file, use the option -d -von_max.
  • To extract only the maximum values of the data types, specify the option -m.
  • For iterative solutions encountered in SOL 106, use the option -iter.
  • For transient solutions encountered in SOL 159, use the option -trans.
  • For nonlinear transient solutions encountered in SOL 129, use the options -trans -iter.
  • Corner stresses:

Use -corner option when STRESS(CORNER) or STRESS(BILIN) is used in the data file.

When using -corner option, hmnast requires the Bulk Data information. This can be done by using ECHO=PUNCH during analysis. Otherwise, use the -bulk <bulkfilename> option.

When using STRESS(CORNER), Nastran gives corner stresses on a per-element basis. However, hmnast averages the corner stresses at the nodes for adjacent elements.
  • HyperMesh converts the nodal displacements into global coordinates if there are non-zero values in the CD field of the GRID cards. To display the results in HyperMesh as they are reported in the punch file, use the option -noconv
  • Simulation names:

hmnast organizes the punch file results into a series of simulation names and data types. The simulation names correspond to the LABEL card of the punch file for SOL101. To create a simulation name, the first 27 characters from the LABEL card are appended with the SUBCASE ID. The corresponding data types are Displacements, von Mises Stress, and so on. If the option -nolabels is selected, the simulation name corresponds to the SUBCASE ID number.

Use -title to use the TITLE card of your punch file as the simulation name.

Use -subtitle to use the SUBTITLE card of your punch file as the simulation name.

The simulation name for SOL106 is SUBCASE # Iter #.

For modal frequency response problems, the simulation name is Mode # f #Hz.

For modal frequency response problems where the complex part of the eigenvalue is used (SOL 107 and SOL 110), the simulation name is:
Mode # f
For direct frequency response, the simulation name is:
Subcase # f

For transient problems (SOL159, SOL129), the simulation name isTime #.

Do not use -nolabels for SOL106, SOL159, and SOL129.
  • If the size of the punch file is too large, use the option -disk -size n -file /temp/scratch.tmp, where n corresponds to the maximum number of nodes/elements in the model and scratch.tmp is the scratch file name that hmnast creates in the /tmp/ directory.
  • hmnast supports punch files for the following solutions:

SOL 101, 103, 105, 106, 107, 108, 109, 110, 111, 112, 129, 153 and 159

Both SORT1 and SORT2 formats are supported.
  • To extract only selected nodes from a punch file, use the option -selmodes <selmodesfile>, where selmodesfile contains the mode numbers that need to be extracted. These numbers must have spaces separating them. Any number of lines can be entered. A line cannot exceed 256 characters. To extract only a selected number of subcases, use the option -selsubc <selsubcfile>.


[arguments] are optional arguments. Arguments such as displacements, stresses and strains are onby default. To obtain these arguments, use the command hmnast -u.

The following options are off by default:
Displacements and maximums
Minimums instead of maximums
Nonlinear iterations (from SOL 106)
Transient thermal
Corner stresses (for CQUAD4 and solid elements)
Reads element connectivity from the bulk file (for use with the corner option)
Do not convert local displacements into global coordinates
Do not use subcase labels
Use title for simulation name
Use subtitle for simulation name
Translation is performed on disk
Number of entities (10000 = default)
Scratch file name
Translates CSA/Nastran
Reads all forces for 1D elements
Reads all stresses for 1D elements
Reads all forces for 2D elements
Replaces R/NaN/nan fields with 0.0 (found in strain energy data types)
Outputs file to an H3D file instead of an hmresults file. The hmresult file includes translated model and results information. The punch file must contain geometry for it to be output to an H3D file. If there is no geometry in the punch file, use –bulk <filename> in addition to –h3d.
hmnast -h3d -bulk myFile.dat myFile.pch myFile.h3d

H3D files can be created either by using hmnast or from HyperMesh.



Run hmnast from HyperMesh

  1. Open HyperMesh.
  2. From the panel area, select the BC page.
  3. Click the Solver panel.
  4. Switch the toggle to hmnast.
  5. Click input file, and select the punch file.
  6. Click output file, and select the output file location and name.
  7. Enter the options accordingly.
    Tip: To create an h3d file for a specific result, add –h3d after the first option. For example, to create an h3d file of the displacement, the option should be: -d –h3d.
  8. Click solve.