Main Content Region


Prerequisites - getting access to Fluent

Fluent (version 6.3.26) is installed and available on the Lonsdale, IITAC and Parsons clusters. To use Fluent, you must first apply for an account on one of these machines.

Before you run Fluent, you must ensure that the fluent module is loaded in your environment settings.  To add the fluent module to your environment, run the command:

module load apps fluent

You can also add this line to your ~/.bashrc file which will automatically load fluent next time you log in.

Licenses - Fair Usage Policy

There are a limited number of Fluent licenses, at present there are 16. A fair usage policy applies to these use of these licenses and no one users should check out more than 4 licenses at any time.  It is important to note that College holds an academic license for Fluent. If you wish to carry out commercial work using the software you must contact the Centre to commence a process and obtain an appropriate license.

Fluent Documentation

Staff and Students at Trinity College can gain access to Fluent Software and Training material at: this page

Note: This material is available to TCD stuff and students for non-commercial research only.

How do I run Fluent on TCHPC systems

Fluent can be run in either interactive mode or batch more. In interactive mode, you open an X terminal and run a user driven simulation using the Fluent GUI, much as you would run Fluent from your Desktop. In batch mode, you set up a fluent journal file and run a batch driven simulation.

  • To find out more about running interactive GUI jobs see here.
  • To find out more about running batch jobs see here.

Running Fluent Interactively from Windows

Once you have following the instructions here, you should be logged into one of the compute nodes (e.g. 'lonsdale-n143').

Now, run the following to start fluent:

[neil@lonsdale-n143 ~]$ module load apps fluent
[neil@lonsdale-n143 ~]$ fluent
[neil@lonsdale-n143 ~]$

Batch processing

To run Fluent in batch mode, you need to decide what compute resources you require and set up a journal file with all the commands needed for Fluent to run. 


Joe has set up a 3D Fluent model to simulate steady state airflow over an aircraft wing on his Desktop. He has read in a mesh file "aircraft.msh", selected appropriate materials, specified initial and boundary conditions, a solver, etc., and initialised the problem. He has then saved a case and data file of his complete setup as "aircraft.cas" and "aircraft.dat".

Joe wants to iterate until his model converges to steady state airflow. From past experience, he predicts that this simulation can be performed without human intervention, and he estimates that it will take 800 iterations to converge. However, Joe also knows that there is a possibility that the problem will not converge in 800 iterations, and that it may need some human intervention to, say, refine selected cells if the gradient of variables in some regions are too high.

So, Joe decides to iterate for 1000 steps and save the output of the iteration every 250 steps.  If the simulation fails to converge, Joe will be able to compare the residuals after 250, 500, 750 and 1000 steps, pick the most advantageous one, and carry out any adjustments necessary to ensure future convergence.

Fluent Journal Script

Joe's Fluent journal script (e.g. "journalfile.jou") might look like this:

file/read-case-data aircraft.cas
it 250
wcd "aircraft250.cas"
it 250
wcd "aircraft500.cas"
it 250
wcd "aircraft750.cas"
it 250
wcd "aircraft1000.cas"

Submitting a Batch Fluent Job to Slurm

With the correct journal file set up, the final step is to submit this to the Slurm queuing system.

This will involve creating a Slurm batch file like the following (please see here for more general details on the options in Slurm):

#SBATCH -n 1            # 1 core
#SBATCH -t 1-03:00:00   # 1 day and 3 hours
#SBATCH -p compute      # parition name
#SBATCH -J fluent_batch # sensible name for the job

# load the relevant module files. NB: if unsure about
# what you need, please contact ops
source /etc/profile.d/
module load apps fluent

# run slurm in batch on the allocated node(s)
# the '-t4' specifies 4 cores (academic licensing)
fluent 2d -g -t4 -i journalfile.jou > outputfile.out

The fluent options in the above Slurm script are:

2dthe fluent version used
-gno graphical environment
-i journalfile.jouread the journal file provided

Running fluent in parallel

Example submission script:

#SBATCH -n 16           # cores
#SBATCH -t 1-00:00:00     # 1 day walltime
#SBATCH -p compute      # partition name
#SBATCH -J paraFluent    # sensible name for the job

# load the relevant module files
source /etc/profile.d/
module load apps fluent default-intel-impi

FLUENTNODES="$(scontrol show hostnames)"

fluent 3ddp -t 16 -mpi=intel -ssh -pinfiniband -cnf=$FLUENTNODES -g -i test.jou > output.`date '+%F_%H-%M-%S'`

Notes on the example script:

  • In order for MPI to work the default-intel-impi module or similar are required and must be loaded in the batch script
  • -t 16 specifies 16 cores
  • -mpi=intel ensures the correct mpi is used
  • -ssh forces fluent to use ssh instead of rsh which isn't available
  • -cnf=$FLUENTNODES - fluent requires a hosts list, which can be acquired from the slurm environment.