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

Περιγραφή

Ansys Mechanical enables you to solve complex structural engineering problems and make better, faster design decisions. With the finite element analysis (FEA) solvers available in the suite, you can customize and automate solutions for your structural mechanics problems and parameterize them to analyze multiple design scenarios.

ANSYS Ansys Parametric Design Language (APDL) is a scripting language used for communicating with the ANSYS solver. Every model that is run on the solver consists of a set of commands written using APDL commands.

Διαχείριση αδειών

Το πανεπιστήμιο διαθέτει συγκεκριμένο αριθμό αδειών για τη χρήση του Ansys, επισκόπηση των οποίων μπορεί να γίνει από ένα login node (aristotle.it.auth.gr) μέσω της εντολής:

# module load ansys
# $ANSYS_ROOT/licensingclient/linx64/lmutil lmstat -c 1055@ansys.it.auth.gr -f anshpc

Σε αρκετές περιπτώσεις και ιδιαίτερα όταν οι εργασίες που υποβάλλονται απαιτούν πολλούς πόρους (nodes και cores), καθώς ο scheduler (slurm) δεν λαμβάνει υπόψιν τις διαθέσιμες άδειες λογισμικού ενδέχεται μία εργασία να τερματίσει απροσδόκητα λόγω μην επαρκών αδειών anshpc στο license server.

Μια λύση για τη παράκαμψη της συγκεκριμένης ιδιαιτερότητας είναι η χρήση της μεταβλητής #SBATCH --licenses=ansys@ansys.it.auth.gr:X όπου μπορεί να οριστεί και ο απαιτούμενος αριθμός αδειών X που επιθυμούμε για να την εργασία που θέλουμε να υποβάλουμε. Ο αριθμός αυτός υπολογίζεται εαν εκτιμήσουμε τον συνολικό αριθμό των πυρήνων (nodes*tasks_per_node) που ζητάμε απο την εργασία και αφαιρέσουμε τους 4 πυρήνες για τους οποίους δεν χρεώνει ο license manager καμία άδεια.

Παράδειγμα

Για ένα job με τις παρακάτω ρυθμίσεις:

#SBATCH --ntasks-per-node=16
#SBATCH --nodes=2
ο συνολικός αριθμός αδειών που θα χρειαστεί είναι 2*16-4=28, τον οποιο και ορίζουμε με την παρακάτω μεταβλητή:
#SBATCH --licenses=ansys@ansys.it.auth.gr:28
Αυτό δεσμεύει εσωτερικά το slurm από το να ξεκινήσει το job εως ότου υπάρχουν όντως διαθέσιμες άδειες στον license server προκειμένου να ξεκινήσει.

ANSYS Mechanical ADPL 2021R1

Παλαιότερες εκδόσεις

Για να χρησιμοποιήσετε κάποια παλιότερη έκδοση του ANSYS Fluent θα χρειαστεί να τροποποιήσετε στα παρακάτω την module load εντολή κατάλληλα (π.χ. module load ansys/2021R1 για την έκδοση 2021R1 κοκ)

Παράδειγμα χρήσης

Στο $HOME μας στο login node, δημιουργούμε ένα νέο φάκελο όπου τοποθετούμε τα αρχεία εισόδου και το script υποβολής της εργασίας.

# mkdir ANSYS_MECHANICAL-2023R2-case
# cd ANSYS_MECHANICAL-2023R2-case

Μέσα στο φάκελο τοποθετούμε το αρχείο εισόδου mechanical_input.dat.

Το script που θα χρησιμοποιήσουμε εμφανίζεται παρακάτω:

SLURM submission script
#!/bin/bash
#SBATCH --job-name=ansys_mechanical-2023R2-case
#SBATCH --partition=batch
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=8
#SBATCH --licenses=ansys@ansys.it.auth.gr:4
#SBATCH --time=10:00

module load ansys/2023R2

ansys232 -dis -np $SLURM_NTASKS -b < mechanical_input.dat >  output.log 2>&1

# The command 'ansys232' and more specifically the three numbers '232' in the command depend on the version of ANSYS you are using. (ansys/20XYRZ --> ansysXYZ)

Αποθηκεύουμε τα περιεχόμενα σε ένα νέο αρχείο (έστω ANSYS_MECHANICAL-2023R2-case.sh) και το υποβάλλουμε προς εκτέλεση με την εντολή:

# sbatch ANSYS_MECHANICAL-2023R2-case.sh

Παρακολουθούμε με squeue την εξέλιξη της εργασίας.

Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:

# tail -f output.log