The documentation for the container-based 2025 R2 install of ANSYS is still under progress and requires further user feedback. This will replace the earlier ANSYS module after successful testing.
Ansys is a subsidiary of Siemens. Ansys software includes a suite of products for physics and engineering modelling using Finite Element Analysis (FEA) and Computational Fluid Dynamics (CFD). It is used to virtually test and analyze product performance in structural, fluid, thermal, and electromagnetic domains. https://www.ansys.com/en-gb/products
Note, the University has a Ansys Academic Multiphysics Campus Solution license. See the available features that this enables, here: https://ansys.epfl.ch/Ansys_Actual_Academic_features_table.pdf
The entire ANSYS Academic Multiphysics Campus Solution suite is installed on Comet for all users. Currently available versions are:
The ANSYS 2025 R2 installation includes: Blade Modeler, CFD-Post, Electromagnetics Suite, Ensight, FENSAP-ICE, Forte, Fluent, LS-DYNA, Mechanical APDL, Motion, Polyflow, Rocky, Sherlock, Speos HPC, AVxcelerate Sensors, TwinAI and Workbench
We have installed ANSYS 2025 R2 into a container. It is available in the following location(s):
/nobackup/shared/containers/ansys.2025r2.sif
The container is based on an Ubuntu 22 LTS runtime, with all of the necessary ANSYS dependencies. You do not need to take a copy of the container - please leave it in its original location. To make running ANSYS applications easier, we also provide the following runtime helper script(s):
/nobackup/shared/containers/ansys.2025r2.sh
To run any ANSYS application, load the runtime helper script and then use the provided container.run command to start your chosen ANSYS tool. For example, to run ANSYS Fluent:
container.run
$ source /nobackup/shared/containers/ansys.2025r2.sh $ container.run fluent
After using source you can call container.run as many times as you need during the same session. For example:
source
$ source /nobackup/shared/containers/ansys.2025r2.sh $ container.run fluent $ container.run forte $ container.run forte
ANSYS 2025 R1 and earlier
Previous versions of ANSYS were installed as modules on Comet. These are now deprecated and will be removed shortly due to a number of bugs found in their installation. We strongly urge all users to move to ANSYS 2025 R2 or later using the container environments listed here.
A list of all the main ANSYS tools installed within the container and whether they are usable at the command line (Command Line column set to Y) - for example; in a Slurm job - or if they should be run in a desktop environment (Command Line column set to N).
Y
N
In each of the cases below, the command or tool would be launched with: container.run tool_name
container.run tool_name
All CLI commands can also be used in the desktop environment.
/opt/ansys/VER/AnsysEM
3dac AnsysECADXplorer AnsysSIXplorer EDBStride EDBToGDS EDBToHFSSPI Q3DPreProc SIwaveRegionsExtractor SIwaveSimController SUtility ansysedt anstranslater clipdesign emsatEDB hfsExportProc hfss_pi mwcontrol optimize packer sdf2csv siderect_solver siwave speng zukentoanf
Y N N Y Y Y Y Y Y N Y Y Y Y Y Y N Y Y Y Y N Y Y
/opt/ansys/VER/fluent/bin
aero fluent icing post_analysis udil2udil
N Both N N Y
fluent
/opt/ansys/VER/reaction/forte.linuxx8664/bin
forte.sh forte_batch
N Y
forte.sh
/opt/ansys/VER/CFD-Post/bin
cfdpost cfx5 cfx5adapt cfx5cmds cfx5control cfx5dfile cfx5gtmconv cfx5launch cfx5viewer cfxdsdbreader
N N Y Y Y Y Y N N Y
/opt/ansys/VER/ACP
ACP
/opt/ansys/VER/CEI/bin
ensight enve enveconvert envideo envision
N N Y N N
/opt/ansys/VER/CFX/bin
/opt/ansys/VER/polyflow
/opt/ansys/VER/rocky
rocky RockySolver
rocky
/opt/ansys/VER/sherlock
runSherlock
/opt/ansys/VER/TwinAI
TwinAI
/opt/ansys/VER/fensapice/bin
cfdpp2fensap
/opt/ansys/VER/ansys/bin
launcher
lsdyna
/opt/ansys/VER/Framework/bin/Linux64
runwb2
Note: VER represents the ANSYS release number, .e.g. /opt/ansys/v252 for 2025 R2.
/opt/ansys/v252
Using the container.run instructions above, an example Fluent job file may therefore look something like this:
#!/bin/bash #SBATCH --account=my_account_code #SBATCH --ntasks-per-node=32 #SBATCH --cpus-per-task=1 #SBATCH --mem=128G #SBATCH --time=02:30:00 #SBATCH --partition=default_free # Load the ANSYS container environment source /nobackup/shared/containers/ansys.2025r2.sh # Start ANSYS Fluent from inside the container container.run fluent 2d -i myfluentjob.jou -gu -t $SLURM_NTASKS -driver null
You can also run the graphical versions of the ANSYS tools (e.g. the interfaces launched by ANSYS Workbench) on Comet. To do so start a new X11 desktop session using our Open OnDemand service.
Comet GPU nodes and ANSYS
Using a GPU node for ANSYS Workbench display is unsupported. GPU nodes are only to be used for accelerated ANSYS Mechanical APDL solvers or batch-mode Fluent compute jobs.
Unless you are using Workbench to run Mechanical APDL solvers you should therefore not assign a GPU card, and should only ever use the VNC Desktop session option from our Open OnDemand service. Please do not use the VNC Desktop (GPU) session option - this is unsupported.
$ source /nobackup/shared/containers/ansys.2025r2.sh $ container.run runwb2
For help on running the individual ANSYS tools (e.g. Polyflow, Static Structural, etc) on the Comet HPC desktop, please see the links below for further details.
These short pages explain in more detail about how to run the individual ANSYS tools as well as giving sample scripts to get you started:
Important!
This section is for RSE HPC administrators and users interested in how the container environment is built. If you are only interested in using ANSYS, stop reading here.
Build script:
To build the ANSYS container you must have the full set of the ANSYS dvd's extracted to a single directory and mounted using the –bind parameter as shown in the build script below. The resulting image is very large (>50GB), so ensure that the .sif file is created in a location that has enough space. The APPTAINER_TEMPDIR should also have at least double the necessary space to hold temporary files that are expanded during install.
–bind
.sif
APPTAINER_TEMPDIR
#!/bin/bash echo "Loading modules..." module load apptainer echo "" echo "Building container..." export APPTAINER_TMPDIR=/scratch # You must bind the extracted ANSYS installer directory apptainer build --bind /nobackup/shared/SoftwareDropoff/Ansys/extracted:/ansys_installer ansys.2025r2.sif ansys.def 2>&1 | tee ansys.log
Container definition file:
Bootstrap: docker From: ubuntu:jammy %setup mkdir $APPTAINER_ROOTFS/ansys_installer #################################################################### # # Ansys Container # ================== # This is a runtime environment for Ansys # Please see: # https://hpc.researchcomputing.ncl.ac.uk/dokuwiki/dokuwiki/doku.php?id=advanced:software:ansys # #################################################################### %post # Prevent interactive prompts export DEBIAN_FRONTEND=noninteractive #################################################################### # # Basic system packages # #################################################################### ################################################ # # Update & install only necessary packages # ################################################ apt-get update apt-get install -y aptitude wget unzip ################################################ # # Deps as listed by the ANSYS install guide: # https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v252/en/installation/unix_platform_libraries.html # ################################################ # ANSYS uses some i386 deps dpkg --add-architecture i386 apt-get update # Install the ANSYS deps apt-get install -y debianutils freeglut3 gzip libapparmor1 libasound2 libasyncns0 libatk1.0-0 libatk-bridge2.0-0 libatomic1 libatspi2.0-0 libavahi-client3 libavahi-common3 libblkid1 libbrotli1 libbsd0 libbz2-1.0 libc6 libc6-i386 libc6:i386 libcairo2 libcairo-gobject2 libcap2 libcom-err2 libcpprest2.10 libcrypt1 libcups2 libcurl4 libcurl4-gnutls-dev libdatrie1 libdbus-1-3 libdeflate0 libdrm2 libdrm-amdgpu1 libdw1 libegl1 libelf1 libenchant-2-2 libepoxy0 libevdev2 libexpat1 libffi8 libflac8 libfontconfig1 libfontenc1 libfreetype6 libfribidi0 libgbm1 libgcc-s1 libgcc-s1:i386 libgcrypt20 libgdk-pixbuf-2.0-0 libgl1 libglib2.0-0 libglu1-mesa libglvnd0 libglx0 libgmp10 libgnutls30 libgomp1 libgpg-error0 libgraphite2-3 libgssapi-krb5-2 libgstreamer1.0-0 libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0 libgtk2.0-0 libgtk-3-0 libgudev-1.0-0 libharfbuzz0b libharfbuzz-icu0 libhogweed6 libhwloc15 libhyphen0 libibverbs1 libice6 libicu70 libidn2-0 libjavascriptcoregtk-4.0-18 libjbig0 libjpeg62 libjpeg-turbo8 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.5-0 libltdl7 liblz4-1 liblzma5 libmanette-0.2-0 libmd0 libmount1 libncursesw5 libnettle8 libnghttp2-14 libnotify4 libnsl2 libnspr4 libnss3 libnuma1 libnvidia-compute-390 libogg0 libopengl0 libopenjp2-7 libopus0 liborc-0.4-0 libp11-kit0 libpam0g libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpci3 libpciaccess0 libpcre2-8-0 libpcre3 libperl-dev libpixman-1-0 libpng16-16 libpsl5 libpulse0 libpulse-mainloop-glib0 librdmacm1 libre2-9 librtmp1 libsasl2-2 libseccomp2 libsecret-1-0 libselinux1 libsm6 libsndfile1 libsoup2.4-1 libssh-4 libssl3 libstdc++6 libstdc++6:i386 libsystemd0 libtasn1-6 libtbb12 libtbbmalloc2 libthai0 libtheora0 libtiff5 libtinfo6 libtirpc3 libtirpc-dev libucx0 libudev1 libunistring2 libunwind8 libuuid1 libvorbis0a libvorbisenc2 libwayland-client0 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwebkit2gtk-4.0-37 libwebp7 libwebpdemux2 libwebpmux3 libwoff1 libx11-6 libx11-6:i386 libx11-xcb1 libxau6 libxcb1 libxcb-dri3-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render0 libxcb-render-util0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xkb1 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxft2 libxi6 libxinerama1 libxkbcommon0 libxkbcommon-x11-0 libxm4 libxml2 libxmu6 libxrandr2 libxrender1 libxshmfence1 libxslt1.1 libxss1 libxt6 libxt6:i386 libxtst6 libxxf86vm1 libzstd1 lsb-core make ocl-icd-libopencl1 ocl-icd-opencl-dev tar uuid-dev xfonts-100dpi xfonts-75dpi xterm zlib1g # These additional packages are searched for at runtime by various ANSYS tools, but are # not listed in the ANSYS installation guide.... apt-get install -y libgif7 xsltproc openssh-client mesa-utils # Clean up APT cache to save space apt-get clean ################################################################################# # # This is all the custom stuff needed to build the various ISSM tools # ################################################################################# export LANG=en_GB.UTF-8 export LC_ALL=C export LC_CTYPE=C ls /ansys_installer cd /ansys_installer mkdir -p /opt # Run ANSYS installer in silent mode # Note the product options here: # https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v252/en/installation/unix_silent.html ./INSTALL -silent \ -install_dir /opt/ansys \ -blademodeler \ -cfdpost \ -ensight \ -fensapice \ -forte \ -fluent \ -lsdyna \ -mechapdl \ -motion \ -polyflow \ -rocky \ -sherlock \ -speoshpc \ -avxsensors \ -twinai \ -electromagneticssuite # NUIT License Server echo "SERVER=1055@nuitlicense03.ncl.ac.uk" > /opt/ansys/shared_files/licensing/ansyslmd.ini chmod 755 /opt/ansys/shared_files/licensing/ansyslmd.ini # Drop in a wrapper around Forte as it needs a manual load of its shell script setup file first echo '#!/bin/bash' > /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'source /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_setup.ksh' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/reaction/forte.linuxx8664/user_defined_functions/bin' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/reaction/forte.linuxx8664/bin/IntelMPI2018' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/tp/MPI/Intel/2018.3.222/linx64/lib' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/tp/IntelCompiler/2023.1.0/linx64/lib/intel64' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/tp/IntelMKL/2023.1.0/linx64/lib' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/tp/IntelMKL/2023.1.0/linx64/lib/intel64' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/tp/openjre/17/lib:/opt/ansys/v252/tp/openjre/17/lib/server' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch echo '/opt/ansys/v252/reaction/forte.linuxx8664/bin/forte $@' >> /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch chmod +x /opt/ansys/v252/reaction/forte.linuxx8664/bin/forte_batch # Create wrapper around Rocky echo '#!/bin/bash' > /opt/ansys/v252/rocky/rocky echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/tp/nss/3.89/lib' >> /opt/ansys/v252/rocky/rocky echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ansys/v252/Framework/bin/Linux64/' >> /opt/ansys/v252/rocky/rocky echo 'echo | /opt/ansys/v252/rocky/Rocky $@' >> /opt/ansys/v252/rocky/rocky chmod +x /opt/ansys/v252/rocky/rocky # Ensure the ANSYS environment file is read on start # As /etc/bashrc and /etc/environment are not normally # parsed by the default Apptainer init shell echo '#!/bin/sh' > /.singularity.d/env/99-ansys.sh echo '. /etc/environment' >> /.singularity.d/env/99-ansys.sh chmod +x /.singularity.d/env/99-ansys.sh # Some ANSYS functions rely on ANSYS living at /ansys_inc/ cd / ln -s /opt/ansys /ansys_inc # Some hardcoded path to swrast_dri.so ln -sf /usr/lib/x86_64-linux-gnu/dri /usr/lib # Remove all src packages echo "" echo "FINAL CLEAN UP" echo "==============" echo "" cd / rm -rf /src %environment export PATH=/opt/ansys/v252/CFD-Post/bin:$PATH export PATH=/opt/ansys/v252/CFX/bin:$PATH export PATH=/opt/ansys/v252/ACP:$PATH export PATH=/opt/ansys/v252/AnsysEM:$PATH export PATH=/opt/ansys/v252/CEI/bin:$PATH export PATH=/opt/ansys/v252/fensapice/bin:$PATH export PATH=/opt/ansys/v252/fluent/bin:$PATH export PATH=/opt/ansys/v252/reaction/forte.linuxx8664/bin:$PATH export PATH=/opt/ansys/v252/TwinAI:$PATH export PATH=/opt/ansys/v252/Framework/bin/Linux64:$PATH export PATH=/opt/ansys/v252/rocky:$PATH export PATH=/opt/ansys/v252/ansys/bin:$PATH export LANG=en_GB.UTF-8 export LC_ALL=C export LC_CTYPE=C %runscript
Runtime helper script:
The runtime helper script will allocate any GPU card which is assigned, as well as bind the /scratch and /nobackup directories to the container.
/scratch
/nobackup
!/bin/bash module load apptainer IMAGE_NAME=/nobackup/shared/containers/ansys.2025r2.sif container.run() { # Run a command inside the container... # automatically bind the /scratch and /nobackup dirs # pass through any additional parameters given on the command line apptainer exec --nv --bind /run/user/$UID:/run/user/$UID --bind /scratch:/scratch --bind /nobackup:/nobackup ${IMAGE_NAME} $@ }
Back to Software
Table of Contents
HPC Service
Main Content Sections
Documentation Tools