Abaqus
| Billing | Paid Service. Minor use or test invoices are free of charge. |
| Documentation | - |
| Pre-installed on the cluster |
Yes, but the Linux on the cluster is not officially supported. |
Abaqus is a finite element software from SIMULIA. It is installed on the cluster in version 2021. Attention: The operating system version installed on the OMNI cluster (Rocky Linux 8.6) is not officially supported by Abaqus.
To use Abaqus, the corresponding module must be loaded:
module load abaqusA good starting point is the integrated help function of Abaqus, accessible with the command:
abaqus docThis command opens a window and you must therefore be logged in with X11 forwarding
(ssh -X).
The Abaqus documentation can also be accessed from the program itself.
Licenses
Abaqus may not be used on the cluster without contributing to the costs; use is not free.
Schools IV finances the Abaqus licenses at the University of Siegen. They may only be used for non-commercial purposes in teaching and research. The costs are due in December for the following year and are borne proportionally by the various institutes. The amount of the costs depends on the proportion of use. Minor use or test invoices are free of charge.
The contact person for Abaqus license agreements is Holger Poggel.
The lmstat command can be used to display the available tokens (licenses) for Abaqus. The lmstat command has additional options that can be displayed with the lmstat -h option. For example, the option lmstat -a shows a complete overview of the individual Abaqus modules as well as the number of free licenses for each module.
$ lmstat
lmutil - Copyright (c) 1989-2008 Acresso Software Inc. All Rights Reserved.
Flexible License Manager status on Thu 11/15/2012 16:33
...The environment file of Abaqus has been extended so that the option queue=tokens can be used to determine the required tokens for a job in advance without starting the calculation:
$ abaqus -j myjob -queue tokens
Number of Tokens Required: 5or alternatively:
$ abaqus j=myjob cpus=12 queue=tokens
Number of Tokens Required: 14Utilization
Abaqus has a graphical user interface and a command line mode. The former can be started with
abaqus caecan be called up.
Command line commands usually consist of the word abaqus and at least one other command. Possible command line commands can be displayed with abaqus help:
$ abaqus help
In the following execution procedures, "abaqus" refers to the command
used to run Abaqus.
Obtaining information
abaqus {help | information={environment | local | memory | release |
support | system | all} [job=job-name] | whereami}
...
Computing with Abaqus on the cluster
Abaqus can perform parallel calculations because it uses MPI
internally. However, one license is required per process and the costs are multiplied accordingly. In addition, sufficient free licenses must be available at the time of the calculation.
The usual procedure for Abaqus jobs is to call the Abaqus command with the corresponding input file in the job script:
abaqus job= input= cpus=$SLURM_NTASKS The environment variable $SLURM_NTASKS is set by SLURM
at the beginning of a job. It is used so that you do not have to manually adjust the number of processes that Abaqus is allowed to start for each job.
Alternatively, you can make use of the extensive Python functionality of Abaqus. A Python script can be written that calls Abaqus. In the job script, only Python is then called with the corresponding Python script:
python3 Tip for Numpy/Scipy users: Abaqus uses the data types "int32", "float32" and "float64". If you specify the int data type in Python (e.g. in a Numpy array), Abaqus stops with the error message that 64-bit integers are not supported. The solution recommended in this message to use the "int" data type is misleading because this creates 64-bit integers on the cluster by default. Instead, it is necessary to explicitly use 32-bit integer values (e.g. dtype="int32" in the case of numpy arrays).