<!-- source-page: 511 -->

# 3.2.37 EXCHANGING Abaqus DATA WITH ZAERO

Product: Abaqus/Standard

# Reference

• “Execution procedure for Abaqus: overview,” Section 3.1.1

# Overview

The abaqus tozaero interface enables you to exchange aeroelastic data between the Abaqus and ZAERO analysis products. By using this interface between the applications, you can perform structural modal analysis on a model in Abaqus, transfer the model to ZAERO for aeroelastic analysis, then transfer it back to Abaqus for stress analysis.

# Universal file

The universal file is the means of data exchange between Abaqus and ZAERO. It consists of four data sets: 2411, which describes node and coordinate data; 2414, which describes mass-normalized mode shapes; 2420, which describes the global coordinate system; and 2453, which describes the mass matrix in text format, or 2453b, which describes the mass matrix in binary format.

You can specify the universal file’s output format by using the mode parameter. Choosing text format enables you to modify the universal file in a text editor but increases the file size to over twice that of similar files in binary format. Text is the default format and the only format supported by ZAERO. Table 3.2.37–1 and Table 3.2.37–2 describe the mass matrix data set text format and binary format, respectively.

Table 3.2.37–1 Format for data set 2453 (text). 

<table><tr><td>Record</td><td>Field</td><td>Description</td><td>Format</td></tr><tr><td>1</td><td>1</td><td>Matrix Identifier1: DOF131: Mass139: Stiffness147: Back-expansion</td><td>(I10)</td></tr></table>

<!-- source-page: 512 -->

<table><tr><td>Record</td><td>Field</td><td>Description</td><td>Format</td></tr><tr><td rowspan="6">2</td><td>1</td><td>Matrix Data Type1: Integer2: Real4: Double Precision5: Complex6: Complex Double Precision</td><td rowspan="6">(6I10)</td></tr><tr><td>2</td><td>Matrix Form3: General Rectangular</td></tr><tr><td>3</td><td>Number of rows</td></tr><tr><td>4</td><td>Number of columns</td></tr><tr><td>5</td><td>Storage Key1: Row2: Column11: Sparse (not supported for IMAT=1)</td></tr><tr><td>6</td><td>Matrix Size ParameterFor IMAT=1 this is the number of dynamic modes.For sparse this is the number of matrix entries.Otherwise, 0.</td></tr><tr><td>3 for storage keys 1 and 2</td><td>N/A</td><td>Matrix Data</td><td>For data type 1:(8 I10)For data type 2:(4 E20.12)For data type 4:(4 D20.12)For data type 5:(2 (2 E20.12))For data type 6:(2 (2 D20.12))</td></tr></table>

<!-- source-page: 513 -->

<table><tr><td>Record</td><td>Field</td><td>Description</td><td>Format</td></tr><tr><td rowspan="3">3 for storage key 11</td><td>1</td><td>Row</td><td rowspan="3">For data type 1:(2 (2I10 1I10))For data type 2:(2 (2I10 1E20.12))For data type 4:(2 (2I10 1D20.12))For data type 5:(1 (2I10 2E20.12))For data type 6:(1 (2I10 2D20.12))</td></tr><tr><td>2</td><td>Column</td></tr><tr><td>3</td><td>Value at cell</td></tr></table>

Table 3.2.37–2 Format for data set 2453b (binary). 

<table><tr><td>Record</td><td>Field</td><td>Description</td><td>Format</td></tr><tr><td rowspan="7">Header</td><td>1</td><td>2453</td><td>(I6)</td></tr><tr><td>2</td><td>Lowercase b</td><td>(IA1)</td></tr><tr><td>3</td><td>Byte Ordering Method1: Little Endian</td><td>(I6)</td></tr><tr><td>4</td><td>Floating Point Format1: IEEE 754</td><td>(I6)</td></tr><tr><td>5</td><td>Number of ASCII lines following2 for data set 2453b</td><td>(I12)</td></tr><tr><td>6</td><td>Number of bytes following ASCII lines</td><td>(I12)</td></tr><tr><td>7–10</td><td>Not used (fill with zeros)</td><td></td></tr><tr><td>1</td><td>1</td><td>Matrix Identifier1: DOF131: Mass139: Stiffness147: Back-expansion</td><td>(I10)</td></tr></table>

<!-- source-page: 514 -->

<table><tr><td>Record</td><td>Field</td><td>Description</td><td>Format</td></tr><tr><td rowspan="6">2</td><td>1</td><td>Matrix Data Type1: Integer2: Real4: Double Precision5: Complex6: Complex Double Precision</td><td rowspan="6">(6I10)</td></tr><tr><td>2</td><td>Matrix Form3: General Rectangular</td></tr><tr><td>3</td><td>Number of rows</td></tr><tr><td>4</td><td>Number of columns</td></tr><tr><td>5</td><td>Storage Key1: Row2: Column11: Sparse (not supported for IMAT=1)</td></tr><tr><td>6</td><td>Matrix Size ParameterFor IMAT=1 this is the number of dynamic modes.For sparse this is the number of matrix entries.Otherwise, 0.</td></tr><tr><td rowspan="3">3 (Binary Matrix Data)</td><td>1 (4 bytes)</td><td>Row</td><td rowspan="3">For data type 1:(2 Int32 1 Int32)For data type 2:(2 Int32 1 Flt32)For data type 4:(2 Int32 1 Dbl64)For data type 5:(2 Int32 2 Flt32)For data type 6:(2 Int32 2 Dbl64)</td></tr><tr><td>2 (4 bytes)</td><td>Column</td></tr><tr><td>3</td><td>Value at cell</td></tr></table>

# Preparing the Abaqus analysis input file

Before the interface can create the universal file, you must make the following additions to your Abaqus input (.inp) file, then run Abaqus:

<!-- source-page: 515 -->

• Normalize the eigenvectors in the eigenfrequency extraction analysis with respect to the structure’s mass matrix. This normalization is necessary because the translator assumes the mode shapes are mass normalized; if you skip this step before the Abaqus run, the modes translated will be incorrect and will give incorrect results with no warnings or errors. For more information, see “Natural frequency extraction,” Section 6.3.5.   
• Include the following line in the analysis step:

\*ELEMENT MATRIX OUTPUT, ELSET=allelements, MASS=YES, OUTPUT FILE=USER DEFINED, FILE NAME=mtx-file-name

where allelements is a defined element set containing all the elements that should be included in the global mass matrix. The matrix output will be placed into the file mtx-file-name.mtx; you should not specify the .mtx extension since Abaqus adds it automatically.

# Workflow

This section describes the input and output of the three main steps in the workflow between Abaqus and ZAERO.

# Modal analysis in Abaqus

The Abaqus modal analysis uses an Abaqus input file and outputs the following data to an output database (.odb) file and matrix (.mtx) file: structural model nodes, coordinate systems, mode frequencies, generalized mass, mode shapes, and the mass matrix.

# Aeroelastic analysis in ZAERO

Aeroelastic analysis requires a ZAERO input file and the universal file created by toZAERO. ZAERO outputs force and moment data on structural nodes due to aeroelastic forces to the universal file.

# Stress analysis in Abaqus

The forces and moments output from ZAERO can then be used in a static (linear or nonlinear) Abaqus analysis to calculate deflections, stresses, and loads.

# Command summary

abaqus tozaero

```toml
job=job-name
[unvfile=unv-file-name]
[odbfile=odb-file-name]
[mtxfile=mtx-file-name]
[step=step-number]
[mode={text | binary}] 
```

<!-- source-page: 516 -->

# Command line options

# job

This option is used to specify the name of the Abaqus input file. It is also the default name for the universal output database and mass matrix files.

# unvfile

This option is used to specify the name of the universal file if it is different from job-name. If the .unv extension is not supplied, Abaqus adds it automatically.

# odbname

This option is used to specify the name of the Abaqus output database file if it is different from job-name. If the .odb extension is not supplied, Abaqus adds it automatically.

# mtxfile

This option is used to specify the file containing the element mass matrices generated by Abaqus. If the .mtx extension is not supplied, Abaqus adds it automatically.

# step

This option specifies the step number containing the eigenfrequency extraction results from Abaqus. The default value is 1.

Note: You must normalize the eigenvectors in the eigenfrequency extraction analysis with respect to the structure’s mass matrix. For more information, see “Natural frequency extraction,” Section 6.3.5.

# mode

This option specifies the output format of the universal file. If this option is set equal to binary, Abaqus writes a portion of the universal file in binary format to save space. If this option is set equal to text, Abaqus writes the entire file in all text format. The default value is text, which is the only mode currently supported by ZAERO.

<!-- source-page: 517 -->

# 3.2.38 TRANSLATING Abaqus DATA TO MSC.ADAMS MODAL NEUTRAL FILES

Product: Abaqus/Standard

# References

• “Execution procedure for Abaqus: overview,” Section 3.1.1   
• “Translating Abaqus data to modal neutral file format for analysis in MSC.ADAMS,” Section 15.1.7 of the Abaqus Example Problems Guide

# Overview

The ADAMS/Flex product from MSC.Software Corporation can be used to account for flexibility in a component when performing a dynamic analysis in MSC.ADAMS. ADAMS/Flex relies on a finite element analysis code such as Abaqus to provide the component’s flexibility information in a form that is usable by MSC.ADAMS. The abaqus adams translator can be used to create Abaqus models of MSC.ADAMS components and to convert the Abaqus results into an MSC.ADAMS modal neutral (.mnf) file, the format required by ADAMS/Flex.

# Using the translator

The following procedure summarizes the typical usage of the abaqus adams translator:

1. Create an Abaqus model for each flexible component of the MSC.ADAMS model. Each component is modeled as an Abaqus substructure.   
2. Run the Abaqus analysis. For more information, see “Preparing the substructure SIM database file.”   
3. Run the abaqus adams translator to read the substructure SIM database produced by the analysis and to create the modal neutral (.mnf) file for MSC.ADAMS.   
4. Read the modal neutral file into MSC.ADAMS. A separate modal neutral file must be created for each flexible part in MSC.ADAMS.

# Preparing the substructure SIM database file

This section describes the preparation of a substructure SIM database that will produce the results quantities required by ADAMS/Flex.

# The Abaqus substructure model

The first step in accounting for a component’s flexibility in MSC.ADAMS is to model that component as an Abaqus substructure. This process involves creating an Abaqus finite element model of the component. General guidelines for building Abaqus models with substructures are described in “Using substructures,” Section 10.1.1.

<!-- source-page: 518 -->

# Setting up the Abaqus model to create a modal neutral file

When you create a substructure to be translated to MSC.ADAMS, the substructure generation step must include the following options:

```txt
*SUBSTRUCTURE GENERATE, MASS MATRIX=YES, RECOVERY MATRIX=YES
*FLEXIBLE BODY, TYPE=ADAMS 
```

In addition, you can add the following data to translate stress and/or strain to MSC.ADAMS:

```csv
* ELEMENT RECOVERY MATRIX, POSITION=AVERAGED AT NODES
S,
E, 
```

# Units

The MSC.ADAMS programs require that you define the units used in the component model, while Abaqus does not. Therefore, during the creation of the modal neutral file you must declare the units used in the model explicitly. The approach to doing this in the abaqus adams execution procedure is very similar to the way it is done in the ADAMS/View Units Settings dialog box. A predefined units system can be specified by using the units option on the abaqus adams execution procedure. Alternatively, the individual length, mass, force, and time units can be specified by using the length, mass, force, and time options on the abaqus adams execution procedure. Any individual units that are specified override the corresponding units in the units system. The default units system is mks. The valid units systems for the units option are listed in Table 3.2.38–1.

Table 3.2.38–1 Valid units systems. 

<table><tr><td>Units System</td><td>Length Units</td><td>Mass Units</td><td>Force Units</td><td>Time Units</td></tr><tr><td>mks</td><td>meters</td><td>kilograms</td><td>newtons</td><td>seconds</td></tr><tr><td>mmks</td><td>millimeters</td><td>kilograms</td><td>newtons</td><td>seconds</td></tr><tr><td>cgs</td><td>centimeters</td><td>grams</td><td>dyne</td><td>seconds</td></tr><tr><td>ips</td><td>inches</td><td>pound-mass</td><td>pound-force</td><td>seconds</td></tr></table>

The valid options for each of the length, mass, force, and time options are as follows:

# Length units

Valid options for the length units are

• meters   
• millimeters, mm   
• centimeters, cm   
• kilometers, km

<!-- source-page: 519 -->

• inches, inch, in   
• feet, foot, ft   
• mile

# Mass units

Valid options for the mass units are

• kilograms, kg   
• megagram, tonne   
• gram, g   
• pound\_mass, lbm, pound   
• slug   
• kpound\_mass   
• ounce\_mass

# Force units

Valid options for the force units are

• newtons, N   
• knewton, kN   
• kilogram\_force, kgf   
• dyne   
• ounce\_force   
• pound\_force, lbf, pound   
• kpound\_force

# Time units

Valid options for the time units are

• seconds, sec   
• milliseconds, ms   
• minutes, min   
• hours

Default values for the units options can be defined in the Abaqus environment file. The default for the units option can be defined with the adams\_units\_family parameter. The defaults for the length, mass, time, and force options can be defined with the adams\_length\_units, adams\_mass\_units, adams\_time\_units, and adams\_force\_units parameters, respectively.

# Translating modes with negative eigenvalues

Typically, for a non-prestressed, unrestrained substructure in three dimensions, you expect to find six rigid body modes with associated zero eigenvalues. The situation is, in general, different for prestressed

<!-- source-page: 520 -->

substructures, which may have fewer than six modes with zero eigenvalues. Prestressing may change some expected zeroes into values that are significantly positive or negative, depending on the sign of the prestress.

By default, the translator deletes modes with negative eigenvalues and reorthogonalizes the reduced basis. If you want to retain modes with negative eigenvalues, define the environment variable MDI\_MNFWRITE\_OPTIONS.

• On Linux platforms type the following command:

```txt
setenv MDI_MNFWRITE_OPTIONS negative_roots_OK 
```

• On Windows platforms type the following command:

```batch
set MDI_MNFWRITE_OPTIONS=negative_roots_OK 
```

In this case the translator will treat modes with negative eigenvalues in the same manner as all other modes.

To determine if a model will have negative eigenvalues when translated by the translator, you can add an eigenfrequency extraction step with no boundary conditions to the input file.

Command summary   
abaqus adams
job=job-name
[substructure_sim=filename]
[units=mmks | mks | cgs | ips]
[length=length-units-name]
[mass=mass-units-name]
[time=time-units-name]
[force=force-units-name]
[mnf_elset=elset-name]

Command line options

# job

This option specifies the input and output file names to use during results translation. The job-name value is used to construct the default substructure SIM database file name, job-name.sim. The output modal neutral file is given the name job-name.mnf.

If this option is omitted from the command line, the user will be prompted for this value.

# substructure\_sim

This option specifies the name of the substructure SIM database (.sim) file if it is different from jobname.sim. The file will usually be named job-name\_Znn.sim.

# units

This option specifies the units system for the model. The possible values are mmks, mks, cgs, or ips, which correspond to the ADAMS/View options with the same names. The default value is mks.
