Abaqus

Abaqus should be run using the following command:

abaqus job=<job> cpus=$RESCALE_CORES_PER_SLOT mp_mode=mpi interactive

This will run Abaqus on all cores specified in the hardware settings for the job. Note that is the filename of your .inp input file (.inp - without the extension).

You can also set the scratch directory by appending the command: scratch = path/to/file. For example:

abaqus job=s4b cpus=$RESCALE_CORES_PER_SLOT mp_mode=mpi scratch=$PWD/tmp interactive

Some common (optional) additional commands include: [gpus=number-of-gpgpus], [memory=memory-size], [output_precision={single | full}], [resultsformat={odb | sim | both}]. You can also SSH into your cluster and run abaqus -help to get the complete list of commands.

To execute a global + local (2 stage) model job, you must upload both the global and local .inp files as input files. Run the global and local models using the general command illustrated below:

Global Model: abaqus job=<global> interactive

Local Model: abaqus job=<local> globalmodel=<global> interactive

For example, if your global and local model is named input_global.inp and input_local.inp respectively, and you need it run in parallel with full output precision and double precision, the command would be:

#Global Model 
abaqus job=input_global cpus=$RESCALE_CORES_PER_SLOT mp_mode=mpi output_precision=full double=both parallel=domain interactive
 
#Local Model 
abaqus job=input_local cpus=$RESCALE_CORES_PER_SLOT mp_mode=mpi output_precision=full double=both parallel=domain globalmodel=input_global interactive

Rescale will run the commands sequentially, executing the global model followed by the local model.

In order to use the Dassault Systemes License Server (DSLS) instead of a FlexLM license server, prepend the following before your command on the "Software Settings" page:

export ABQLMIMPL=DSLS
export DSLS_CONFIG=$(IFS=:; DSLS=$HOME/DSLS ; if [ ! -f $DSLS ] ; then for i in $LM_LICENSE_FILE ; do echo ${i#*@}:${i%@*} >> $DSLS;done;fi;echo $DSLS)

An Abaqus user subroutine can be used to extend the functionality of several capabilities in Abaqus where the usual data input methods may be too restrictive. For example, user defined material properties that are generally not available on Abaqus, can be defined using subroutines. User subroutines are written as FORTRAN code during an analysis, Abaqus refers to this code to calculate and define the user specified properties or conditions. A subroutine must be compiled and attached to a model when you submit a job.

Further information on the interface and requirements for each user subroutine can be found in the Abaqus User Subroutines Reference Manual.

Note: Rescale platform has Abaqus linked with gfortran compilers only.

To run an Abaqus simulation with a FORTRAN subroutine, change the command to the following:

abaqus job=<input-file.inp> user=<fortran-subroutine.for> cpus=$RESCALE_CORES_PER_SLOT mp_mode=mpi interactive

Replace:

<input-file.inp> with the Abaqus input file

<fortran-subroutine.for> with the FORTRAN subroutine.

For more information, you can find an example job setup and results on page abaqus simulation with user-subroutine.

Note: Before including a user subroutine in an analysis, you must compile the subroutine using the Abaqus make utility. You can use only one compiled user subroutine file when you submit a job. If your model involves more than one user subroutine, then you must combine the user subroutines and compile them into a single .dll file.