Περιγραφή¶
SageMath is a free open-source mathematics software system.
Sagemath 9.4¶
Το λογισμικό Sagemath είναι εγκατεστημένο σε ένα περιβάλλον conda κεντρικά διαθέσιμο σε όλους τους χρήστες. Η χρήση περιβάλλοντος conda περιγράφεται εδώ. Για να γίνει χρήση του πρέπει να ενεργοποιηθεί το συγκεκριμένο περιβάλλον που έχει εγκατασταθεί με την εντολή:
# conda activate /mnt/apps/custom/sagemath/9.4
Μπορείτε να επισκεφθείτε το Tutorial documentation του Sagemath για περισσότερες πληροφορίες, καθώς και το Programming documentation με το οποίο μπορείτε να χρησιμοποιείτε το Sagemath στην Υπολογιστική συστοιχία.
Παράδειγμα χρήσης¶
Διαδραστική Χρήση¶
To Sagemath μπορεί να κληθεί στα login nodes αλλά και στην απομακρυσμένη επιφάνεια εργασίας μέσω του terminal με τις παρακάτω εντολές.
# module load gcc miniconda3
# source $CONDA_PROFILE/conda.sh
# conda activate /mnt/apps/custom/sagemath/9.4
# sage
Διαδραστική χρήση
Θα πρέπει να αποφεύγεται η διαδραστική χρήση προγραμμάτων στα login nodes καθώς επηρρεάζει και δυσχεραίνει τη χρήση της Υπολογιστικής συστοιχίας για όλους τους χρήστες.
Υποβολή εργασίας¶
Στο $HOME
μας στο login node, δημιουργούμε ένα νέο φάκελο όπου τοποθετούμε τα αρχεία εισόδου και το script υποβολής της εργασίας.
# mkdir sage-9.4-case
# cd sage-9.4-case
Για το συγκεκριμένο παράδειγμα θα υπολογίσουμε την παράγωγο μιας μη πολυωνυμικής συνάρτησης με το sage script που εμφανίζεται παρακάτω:
Sagemath example script
print('Running sage from script')
f(x)= x^3 +x^5 +sin(x)
print(f(x))
g=f.derivative()
print(g)
result = g(x=5).numerical_approx()
print(result)
Αποθηκεύουμε τα περιεχόμενα του παραδείγματος σε ένα νέο αρχείο (έστω non-poly-example.sage
).
Για να υποβάλουμε την εργασία προς εκτέλεση δημιουργούμε ένα script υποβολής εργασίας με το περιεχόμενο που εμφανίζεται παρακάτω:
SLURM submission script
#!/bin/bash
#SBATCH --job-name=sage-9.4-example
#SBATCH --partition=testing
#SBATCH --time=10:00
module load gcc miniconda3
source $CONDA_PROFILE/conda.sh
conda activate /mnt/apps/custom/sagemath/9.4
sage non-poly-example.sage
Αποθηκεύουμε τα περιεχόμενα του παραδείγματος σε ένα νέο αρχείο (έστω sage-9.4-example.sh
) και υποβάλλουμε την εργασία με την εντολή.
# sbatch sage-9.4-example.sh
Παρακολουθούμε με squeue
την εξέλιξη της εργασίας.
Eφόσον η εργασία έχει εκκινήσει μπορούμε να ελέγχουμε την πρόοδο της επίλυσης μέσω των αρχείων εξόδου. Π.χ.:
# tail -f *.out
Για να δούμε τα διαθέσιμα options του sage, μπορούμε να τρέξουμε την παρακάτω εντολή:
# sage --help