Step 1: Creating your project folder
W-SLDA codes execute calculations in specifically prepared folders for this, called project folders. In order to create a new project folder you need to make copy of the template folder. For example to create new project for static calculations (of name st-mycalcs
) execute command:
cp -r st-project-template st-mycalcs
Folder with project initially contains following files:
- Makefile - user must modify this file to be compatible with target system (for more see Step 2).
- input.txt - template of input file for W-SLDA codes, must be modified by the user.
- mk.st or mk.td - compilation commands. Do not modify this file.
- predefines.h - here you set compilation parameters of the code.
- problem-definition.h - here you specify your physical problem you want to solve. This is the most important file from user's perspective.
- logger.h - here you customize what information should be printed to wlog file (text file).
Step 2: Updating Makefile (if not provided by admin)
Makefile must be edited in order to be compatible with your target system. You can use one of existing templates for Makefiles in order to speed up this process. For example, if your target system is Piz Daint
then you can simply copy appropriate file:
cp ../Makefiles-templates/Makefile.st.daint ./Makefile
Note that typically you need to set correctly environment before compilation. If you use templates for Makefiles, in the header of Makefile you will find information about modules that needs to be loaded.
Step 3: Setting up compilation predefines.
Before compilation you need to edit predefines.h file and set correctly hpc-engine compilation parameters. Specifically, at this stage you need to specify size of computational lattice.
Step 4: Compiling initial version of the code
Execute
make
to compile W-SLDA codes. Note make
command will compile all available versions of the code, see here for more info. In order to compile only selected version of the code use:
make 3d # to create 3D version of the code only
make 2d # to create 2D version of the code only
make 1d # to create 1D version of the code only
In order to remove files generated by compilation command use:
make clean
Step 5: Define your problem
You need to edit problem-definition.h in order to define your problem. Update also logger.h file if you need to report more refined quantities than only basic statistics (particle number, energy, etc.).
Remember to recompile the code after each modification of problem-definition.h, logger.h, and predefines.h.
Step 6: Edit input file
Prepare input.txt file for computation. Meaning of each tag is provided in comments.
Step 7: Execute code
This step is strongly dependent on the target system. General structure of execution command is (example for st-wslda-2d
code):
mpiexec-command resource-definition ./st-wslda-2d input.txt
See folder job-scripts-templates for examples of submission scrips.