Smilei
Smilei est un code de type Particle-In-Cell (PIC) pour la simulation de plasmas. Open-source, collaboratif, convivial et conçu pour des performances élevées sur supercalculateurs, il est appliqué à un large éventail d'études en physique : de l'interaction laser-plasma relativiste à l'astrophysique.
Exécution de Smilei
Module | Version |
---|---|
Smilei | std |
Pour voir les versions disponibles lorsque vous êtes connecté à eXplor, exécutez la commande :
module spider Smilei
Pour utiliser Smilei, tapez :
module load Smilei/<version>
en spécifiant l'une des versions disponibles.
Exemple de Script slurm de Job Smilei
#!/bin/bash
#SBATCH --account=<group>
#SBATCH --partition=std
## Resource Request
#SBATCH --nodes=1
#SBATCH --ntasks=8
#SBATCH --cpus-per-task=1
#SBATCH --ntasks-per-node=8
#SBATCH --time=0-10:00:00
# Set the file for output (stdout)
#SBATCH --output=slurm-%x.%N.%j.out
# Set the file for error log (stderr)
#SBATCH --error=slurm-%x.%N.%j.err
# Display SLURM environment variables
env | grep -i slurm
# Load necessary modules
module purge
module load Smilei/std
# Change to the submission directory
cd $SLURM_SUBMIT_DIR
# Create a temporary working directory in the scratch space
WORKDIR="$SCRATCHDIR/job.$SLURM_JOB_ID.$USER"
mkdir -p "$WORKDIR"
# Copy Python scripts to the working directory
cp "$SLURM_SUBMIT_DIR"/*.py "$WORKDIR"
# Change to the working directory
cd "$WORKDIR"
# Run the code using mpirun
mpirun -n 8 python input.py
# Copy results back to the submission directory
cp "$WORKDIR"/* "$SLURM_SUBMIT_DIR"
# Optionally, clean up the working directory
# rm -rf "$WORKDIR"