OpenFOAM¶
OpenFOAM is the leading free, open source software for CFD, owned by the OpenFOAM Foundation and distributed exclusively under the General Public Licence (GPL). The GPL gives users the freedom to modify and redistribute the software and a guarantee of continued free use, within the terms of the licence.
Σύνδεση στο Nefeli Cluster
Πριν από οποιαδήποτε ενέργεια, θα χρειαστεί να συνδεθείτε στο Nefeli cluster. Οι οδηγίες σύνδεσης είναι διαθέσιμες στο ακόλουθο εγχειρίδιο.
OpenFOAM v2506¶
Παράδειγμα χρήσης¶
Το script υποβολής της εργασίας θα έχει την ακόλουθη μορφή:
SLURM submission script
#!/bin/bash
#SBATCH --job-name=OpenFOAM-2506-case
#SBATCH --partition=highcpu
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=9
#SBATCH --time=00:10:00
module load gcc/15.2.0 openmpi/5.0.8
module load openfoam/2506
source $OPENFOAM_ROOT/etc/bashrc
# Copy cavity example case
# cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity .
cd cavity
blockMesh
decomposePar -force
mpirun -np $SLURM_NTASKS icoFoam -parallel
reconstructPar
Στο $HOME μας στο login node, δημιουργούμε ένα νέο φάκελο όπου τοποθετούμε τα αρχεία εισόδου και το script υποβολής της εργασίας, έστω openfoam-2506-Nefeli.sh.
# mkdir openfoam-2506
# cd openfoam-2506
Θα χρησιμοποιήσουμε ένα από τα παραδείγματα (tutorials) της εφαρμογής. Για το σκοπό αυτό διαμορφώνουμε κατάλληλα το περιβάλλον χρήσης και αντιγράφουμε τα δεδομένα εισόδου του παραδείγματος cavity μέσα στο φάκελο:
# module load gcc/15.2.0 openmpi/5.0.8 openfoam/2506
# cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity .
Μέσα στο φάκελο system επιπλέον τοποθετούμε το αρχείο εισόδου decomposeParDict.
Η υποβολή της εργασίας γίνεται με την εντολή sbatch <filename.sh> ως εξής:
# sbatch openfoam-2506-Nefeli.sh
Παρακολουθούμε με την εντολή squeue την εξέλιξη της εργασίας.
Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:
# tail -f slurm-*.out