This instruction assumes that the Toolkit was already installed, and $WSLDA system variable is exported. If not, follow the instructions from here.
- Step 1: Creating your project folder
- Step 2: Setting up compilation predefines.
- Step 3: Compiling the initial version of the code
- Step 4: Define your problem
- Step 5: Edit input file
- Step 6: Execute code
Step 1: Creating your project folder
W-SLDA codes execute calculations in specifically prepared folders for this, called project folders. To create a new project folder, make a copy of the template folder. For example, to create a new project for static calculations (of name st-mycalcs) execute the command:
cp -r $WSLDA/st-project-template st-mycalcs
The folder with the project initially contains the following files:
- Makefile - instructions on how to compile the code.
- input.txt - template of the input file for W-SLDA codes, must be modified by the user.
- predefines.h - here you set compilation parameters of the code.
- problem-definition.h - here you specify the physical problem you want to solve. This is the most important file from the user's perspective.
- logger.h - here you customize what information should be printed to wlog file (text file).
- machine.h - here you define settings that are machine-dependent.
- [env.(https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/st-project-template/env.sh) - list of commands that need to be executed before compilation or execution. Usually, it contains exports of system variables or loads appropriate modules. (optionally)
- README.md - further instructions to users that are provided by the admin of a computing system. (optionally)
Step 2: Setting up compilation predefines.
Before compilation, you need to edit predefines.h file and set generic parameters of your simulation. Specifically, at this stage, you need to specify the size of the computational lattice.
Step 3: Compiling the initial version of the code
Execute
# optionally load before modules, e.g
# source env.sh
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 a 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 the compilation command, use:
make clean
Step 4: Define your problem
You need to edit problem-definition.h in order to define your problem. In particular, in this file, you define the external potential. Update also [logger.h (https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/st-project-template/logger.h) file if you want to customize the output format, and add new observables that are not included in the default form of the logger.
Remember to recompile the code after each modification of problem-definition.h, logger.h, and predefines.h.
Step 5: Edit input file
Prepare input.txt file for your computation. The meaning of each tag is provided in the comments.
Step 6: Execute code
This step is strongly dependent on the target system. Most likely content of the submission script will be provided by the admin. General structure of execution command is (example for st-wslda-2d code):
mpiexec-command resource-definition ./st-wslda-2d input.txt
See folder templates for examples of submission scripts.