WIEN2k
WIEN2k will perform electronic structure calculations of solids using density functional theory (DFT). It is based on the full-potential (linearized) augmented plane-wave ((L)APW) + local orbitals (lo) method, one among the most accurate schemes for band structure calculations. WIEN2k is an all-electron scheme including relativistic effects.
Installed version
Wien2K 17 stable
$ module avail wien2k
Parallel version
In WIEN2k only lapw0
, lapw1
, and lapw2
are parallelized.
There are three ways to parallelize WIEN2k. First is k-point parallelization, second is hybrid mode, third is mpi-only. We support only MPI mode.
A machines files is automatically generated, see SGE script).
- For MPI we use
$TMPDIR
/machines.wien2k-mpi file
Execution
- Only MPI mode (a.k.a) fained grained parallelism is supported in mesocentre
- Don't modify the generated
.machines
file
wien2k.q
) is created to test and validate Wien2k in the mesocentre. Once validated, we will move to the main parallel queue (a.k.a parallel.q)
SGE script
Here is simple script for MPI Parallelization using 32 cores.
- wien2k_meso.sge
#!/bin/bash #$ -N test_Gold ## the name of script #$ -o $JOB_NAME.o$JOB_ID ## output file #$ -q wien2k.q ## queue to use #$ -l h_vmem=4G ## we request 4G/core (the maximum) ### Notice that we request 32 core #$ -pe wien2k 32 # Ensure that wien2k 17 is loaded module load wien2k/17 # Set Scratch dir export SCRATCH=$PWD # Copy machines file in working directory cp $TMPDIR/machines.wien2k .machines # Use -p to specify a parallel calculation run_lapw -p -ec 0.000i1 -NI
Save this file in the same directory where isyour data model. Submit your job with:
$qsub wien2k_meso.sge
Example
Let's start by an example showing Wien2k with MPI in action.
We will use Gold_23l.struct
provided with Wien2k.
Load Wien2k module
$module load wien2k/intel/17
Create folder and copy files
$ mkdir Gold_23l $ cd Gold_23l
Copy Gold_23l.struct
file to this folder
$ cp $WIEROOT/example_struct_files/Gold_23l.struct .
Run Wien2k initialization, we use 100 K point <cod bash> $ init_lapw -b -numk 100 </code>
Finally, use SGE script above to run the simulation.