<!-- source-page: 391 -->

# 3.2.5 Dymola MODEL EXECUTION

Products: Abaqus/Standard Abaqus/Explicit

# References

• “Execution procedure for Abaqus: overview,” Section 3.1.1   
• “SIMULIA Co-Simulation Engine director execution,” Section 3.2.3

# Overview

You can perform a co-simulation between an Abaqus/Standard or Abaqus/Explicit model and a model exported from Dymola. This procedure requires that you have the following two files available in your current working directory: dymosim.dll, which contains the Dymola export of your model details, and libdsdll.dll, which contains a basic collection of Dymola libraries. See “Structural-to-logical co-simulation,” Section 17.4.1, for details on creating or obtaining these files.

Command summary 

<table><tr><td>abaqus dymola</td><td>input=Dymola map file nameport=co-simulation port numberhost=co-simulation host name</td></tr><tr><td colspan="2">Command line options</td></tr></table>

# input

This option is used to specify the map file name. The map file has a .sgn file extension.

# port

This option is used to specify the TCP/UDP port number for co-simulation between solvers using the direct coupling interface, which includes co-simulation between Abaqus and certain third-party analysis programs. Set port equal to the port number used for the connection. The default value is 48000. The default port number that Abaqus uses to initiate communication can be set with the cosimulation\_port parameter in the environment file (see “Using the Abaqus environment settings,” Section 3.3.1). This option is used in conjunction with the host option. For more information, see “Selecting TCP/UDP port numbers” in “Execution procedure for Abaqus: overview,” Section 3.1.1.

# host

This option is used to specify the host name for co-simulation between solvers using the direct coupling interface, which includes co-simulation between Abaqus and certain third-party analysis programs. This option specifies the name of the machine that is hosting the connection. Refer to the third-party program

<!-- source-page: 392 -->

documentation to determine if the host option is required. This option is used in conjunction with the port option.

# Example

The following example illustrates use of the Dymola execution procedure in a co-simulation involving Abaqus/Explicit and an exported Dymola model.

# Running the Dymola simulation

Use the following command to start the Dymola simulation, which will listen on port 44444 for a connection from Abaqus/Explicit:

abaqus dymola input=inverted\_pend\_map port=44444

# Running the Abaqus/Explicit simulation

Use the following command for the Abaqus/Explicit analysis, which will connect to the Dymola simulation on machine “mecury,” via port 44444:

abaqus job=inverted\_pend\_xpl host=mercury port=44444

<!-- source-page: 393 -->

# 3.2.6 SIMULIA Co-Simulation Engine FMU EXECUTION

Products: Abaqus/Standard Abaqus/Explicit

WARNING: Use of this procedure is recommended only in cases where the more general co-simulation execution procedure (“Abaqus/Standard, Abaqus/Explicit, Abaqus/CFD, AND FMU co-simulation execution,” Section 3.2.4) does not support your co-simulation use of FMUs.

# References

• “Execution procedure for Abaqus: overview,” Section 3.1.1   
• “SIMULIA Co-Simulation Engine director execution,” Section 3.2.3

# Overview

Any number of Functional Mockup Unit (FMU) files can be used in a signals/actuators co-simulation with Abaqus/Standard or Abaqus/Explicit. FMU files conform to the Functional Mockup Interface (FMI) standard defined by the Modelisar organization. For more information on this standard or for a list of tools that provide the FMU file export capability, refer to www.modelisar.org. You will use separate invocations of the FMU execution procedure for each FMU instance participating in your co-simulation.

Command summary 

<table><tr><td>abaqus fmu</td><td>csedirector=CSE director hosts:port-numberfmu=fmu-file-nameinstance=co-simulation-instance-name[interactive][timeout=timeout value in seconds]</td></tr><tr><td colspan="2">Command line options</td></tr></table>

# csedirector

This option is used to specify the connection for co-simulation messages between the CSE director and the FMU execution. The CSE director entry consists of a host name and the listener TCP/UDP port number separated by a colon (e.g., earth:30000 indicates that the CSE director is running on machine “earth” and using a listener port of “30000”).

# fmu

This option specifies the FMU file name to be used in the co-simulation.

<!-- source-page: 394 -->

# instance

This option specifies the instance name for the FMU. This instance name will correspond to the componentInstance name in the co-simulation configuration file provided to the CSE director. You can employ a single FMU file multiple times in a co-simulation by making repeated use of the FMI execution procedure with unique instance names.

# interactive

This option causes the director to run interactively.

# timeout

This option is used to specify a timeout value in seconds for the co-simulation director connection. The FMI execution terminates if it does not receive any communication from the CSE director during the time specified. The default value is 3600 seconds.

# Example

The following example illustrates using the FMU execution procedure in a co-simulation involving Abaqus/Standard, Abaqus/CFD, and an FMU file. This example considers the FMU to be interacting with the Abaqus/Standard job; Abaqus/Standard provides an interface to FMUs, while Abaqus/CFD does not.

# Running the Co-Simulation director

Use the following command for the co-simulation director running on machine “mercury” to operate according to the co-simulation configuration defined in the file cosim\_config.xml and to receive communication via port 44444:

```txt
abaqus cse job=cosim listenerport=44444
configure=cosim_config.xml 
```

Based on the contents of the file cosim\_config.xml the director will await connections from Abaqus/Standard, Abaqus/CFD, and an FMU file.

# Running the first FMU-based simulation

Use the following command for the FMI analysis, which will connect to the CSE director on machine “mercury” via port 44444.

```txt
abaqus fmu fmu=controller.fmu instance=controller1
csedirector=mercury:44444 
```

# Running the second FMU-based simulation

Use the following command for the FMI analysis, which will connect to the CSE director on machine “mercury” via port 44444.

```txt
abaqus fmu fmu=controller.fmu instance=controller2
csedirector=mercury:44444 
```

<!-- source-page: 395 -->

# Running the Abaqus/Standard simulation

Use the following command for the Abaqus/Standard analysis, which will connect to the CSE director on machine “mercury” via port 44444.

abaqus job=standard csedirector=mercury:44444

# Running the Abaqus/CFD simulation

Use the following command for the Abaqus/CFD analysis, which will connect to the CSE director on machine “mercury” via port 44444.

abaqus job=cfd csedirector=mercury:44444

<!-- source-page: 396 -->

<!-- source-page: 397 -->

# 3.2.7 Abaqus/CAE EXECUTION

Product: Abaqus/CAE

# Reference

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

# Overview

Abaqus/CAE, an interactive environment for creating, submitting, monitoring, and evaluating results from Abaqus simulations, is executed by running the Abaqus execution procedure and specifying the cae parameter.

# Command summary

abaqus cae

```ini
[database=database-file] [replay=replay-file] [recover=journal-file]
[startup=startup-file] [script=script-file] [noGUI[=noGUI-file]]
[noenvstartup] [noSavedOptions] [noSavedGuiPrefs]
[noStartupDialog] [custom=script-file] [guiTester[=GUI-script]]
[guiRecord] [guiNoRecord] 
```

# Command line options

# database

This option specifies the name of the model database file or output database file to open. To specify a model database file, include either the .cae file extension or no file extension in the file name. To specify an output database file, include the .odb file extension in the file name.

# replay

This option specifies the name of the file from which Abaqus/CAE commands are to be replayed. The commands in replay-file will execute immediately upon startup of Abaqus/CAE. If no file extension is given, the default extension is .rpy. You cannot use the replay option to execute a script with control flow statements.

# recover

This option specifies the name of the file from which a model database is to be rebuilt. The commands in journal-file will execute immediately upon startup of Abaqus/CAE. If no file extension is given, the default extension is .jnl.

# startup

This option specifies the name of the file containing Python configuration commands to be run at application startup. Commands in this file are run after any configuration commands that have been

<!-- source-page: 398 -->

set in the environment file. Abaqus/CAE does not echo the commands to the replay file when they are executed.

# script

This option specifies the name of the file containing Python configuration commands to be run at application startup. Commands in this file are run after any configuration commands that have been set in the environment file.

Arguments can be passed into the file by entering -- on the command line, followed by the arguments separated by one or more spaces. These arguments will be ignored by the Abaqus/CAE execution procedure, but they will be accessible within the script.

# noGUI

This option specifies that Abaqus/CAE is to be run without the graphical user interface (GUI). If no file name is specified, an Abaqus/CAE license is checked out and the Python interpreter is initialized to allow interactive entry of Python or Abaqus Scripting Interface commands.

If a file name is specified, Abaqus/CAE runs the commands in the file and exits upon their completion. If no file extension is given, the default extension is .py. This option is useful for automating pre- or post-analysis processing tasks without the added expense of running a display. Since no interface is provided, the scripts cannot include any user interaction. If you use the noGUI option, Abaqus/CAE ignores any other command line options that you provide.

Arguments can be passed into the file by entering -- on the command line, followed by the arguments separated by one or more spaces. These arguments will be ignored by the Abaqus/CAE execution procedure, but they will be accessible within the Python script. If you are using the noGUI option, you can use an argument to pass in a variable that would otherwise be provided by a command line option. For example, you can pass in the name of a file that would otherwise be specified by the script option.

# noenvstartup

This option specifies that all configuration commands in the environment files should not be run at application startup. This option can be used in conjunction with the script command to suppress all configuration commands except those in the script file.

# noSavedOptions

This option specifies that Abaqus/CAE should not apply the display options settings stored in abaqus\_2016.gpr (for example, the render style and the display of datum planes). For more information, see “Saving your display options settings,” Section 76.16 of the Abaqus/CAE User’s Guide.

# noSavedGuiPrefs

This option specifies that Abaqus/CAE should not apply the GUI settings stored in abaqus\_2016.gpr (for example, the size and location of the Abaqus/CAE main window or its dialog boxes).

<!-- source-page: 399 -->

# noStartupDialog

This option specifies that the Start Session dialog box for Abaqus/CAE should not be displayed.

# custom

This option specifies the name of the file containing Abaqus GUI Toolkit commands. This option executes an application that is a customized version of Abaqus/CAE. For more information, see Chapter 1, “Introduction,” of the Abaqus GUI Toolkit User’s Guide.

# guiTester

This option starts a separate user interface containing the Abaqus Python development environment along with Abaqus/CAE. The Abaqus Python development environment allows you to create, edit, step through, and debug Python scripts. For more information, see Part III, “The Abaqus Python development environment,” of the Abaqus Scripting User’s Guide.

You can specify a script as the argument for this option, which prompts Abaqus/CAE to run a GUI script. Abaqus/CAE closes when the end of the script is reached.

# guiRecord

This option enables you to record your actions in the Abaqus/CAE user interface in a file named abaqus.guiLog. You can also set this option at startup by using the environment variable ABQ\_CAE\_GUIRECORD. The guiRecord option cannot be used with the guiTester option.

# guiNoRecord

This option enables you to disable user interface recording when the environment variable ABQ\_CAE\_GUIRECORD is set.

# Examples

The following examples illustrate the command line options of the cae execution procedure and how arguments are passed to Abaqus/CAE.

# Opening a model database

The following command will execute Abaqus/CAE and load the model database file called “beam”:

abaqus cae database=beam

# Passing arguments to a script

The following command will run the Python script in a file named “try.py” at application startup and pass “argument1” to the script:

abaqus cae script=try.py -- argument1

The above command will print argument1 if “try.py” is defined as

import sys

print sys.argv[-1]

<!-- source-page: 400 -->

# Running Abaqus/CAE without the graphical user interface

The following command will run the Python script in a file named “checkPartValidity.py” and pass arguments to the script specifying the model database, the model, and the part. The script is executed by Abaqus/CAE; however, the graphical user interface is never displayed.

```txt
abaqus cae noGui=checkPartValidity.py -- test.cae Model-1 Part-1 
```

The above command will print Part-1 is valid if “checkPartValidity.py” is defined as

```python
import sys
import os

myMdb = sys.argv[-3]
myModel = sys.argv[-2]
myPart = sys.argv[-1]

mdb = openMdb(myMdb)
model = mdb.models[myModel]
part = model.parts[myPart]

if part.geometryValidity:
    sys.__stderr__.write('%s is valid\n' % myPart)
else:
    sys.__stderr__.write('%s is invalid\n' % myPart) 
```
