Μετάβαση στο περιεχόμενο

OpenFOAM

Το OpenFOAM αποτελεί ένα λογισμικό ανοιχτού κώδικα για την Υπολογιστική Ρευστοδυναμική (CFD) και διανέμεται αποκλειστικά υπό τη Γενική Άδεια Δημόσιας Χρήσης (GPL). Η προαναφέρουσα άδεια παρέχει στους χρήστες την ελευθερία τροποποίησης και αναδιανομής του λογισμικού, καθώς και την εγγύηση για συνεχή ελεύθερη χρήση, σύμφωνα με τους όρους της άδειας.

Home Page

Σύνδεση στο 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