-
Notifications
You must be signed in to change notification settings - Fork 0
Running EPOCH
ShaunD137 edited this page Nov 8, 2024
·
2 revisions
git clone --recursive https://github.com/Warwick-Plasma/epoch.git
- Install libraries
- (ON MAC)
brew install open-mpi
- (LINUX)
sudo apt install gfortran openmpi-bin openmpi-common libopenmpi-dev libgtk2.0-dev
- (ON MAC)
- Open one of the epoch folders
- Modify the Makefile to do have the correct flags using
gedit Makefile
- Run command to compile:
make COMPILER=gfortran MPIF90=mpif90 -j4
- Copy over the wanted deck from the
/epochxd/example_decks
to a new folder with the deck inside renamed toinput.deck
- Finally run the simulation using
mpirun -n 8 ./bin/epoch1d <<< /path/to/deck
- To review
*.sdf
files there are two options:- (Recommended) Install
sdf_xarray
: See https://github.com/PlasmaFAIR/sdf-xarray - Building
sdf_helper
: Runpip install numpy matplotlib and setup tools
- (Recommended) Install
cd scratch
git clone --recursive https://github.com/Warwick-Plasma/epoch.git
cd epoch/epoch2d
nano Makefile
- [OPTIONAL] Remove the
#
at the start of the#DEFINES += $(D)PHOTONS
for QED module load OpenMPI/3.1.3-GCC-8.2.0-2.31.1
make COMPILER=gfortran --debug -j4
- Create a new simulation folder for epoch
mkdir test1
- Copy an existing deck file over (e.g.
example_decks/qed_rese.deck
)cp example_decks/qed_rese.deck test1/input.deck
. NOTE: deck must always be calledinput.deck
- Navigate to the
~/scratch
directory and create a jobscript usingnano jobscript.sh
and copy in the bash script attached at the bottom of this file. NOTE: Please change theuser.email
to be your normal username - Finally run
sbatch jobscript.sh
and wait for completion
#!/usr/bin/env bash
#SBATCH --job-name=muon_test_1
#SBATCH --ntasks=96
#SBATCH --partition=nodes
#SBATCH --time=02-00:00:00 # Time limit (DD-HH:MM:SS)
#SBATCH --account=pet-pic-2022
#SBATCH --output=%x-%j.log
#SBATCH [email protected]
#SBATCH --mail-type=ALL # Mail events (NONE, BEGIN, END, FAIL, ALL)
# Abort if any command fails
set -e
# Purge any previously loaded modules
module purge
# Load modules
module load OpenMPI/3.1.3-GCC-8.2.0-2.31.1
# Prestart
cd epoch/epoch2d
echo Working directory: `pwd`
echo Running job on host:
echo -e '\t'`hostname` at `date`'\n'
# Script initialisation
srun ~/scratch/epoch/epoch2d/bin/epoch2d <<< ~/scratch/epoch/epoch2d/test1
# Job completed
echo '\n'Job completed at `date`