Applications/Siesta

From HPC
Revision as of 09:07, 11 April 2017 by Pysdlb (talk | contribs)

Jump to: navigation , search

Application Details

  • Description: SIESTA is both a method and its computer program implementation, to perform efficient electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids.
  • Version: 3.2p5 (compiled with gcc and intel)
  • Modules: siesta/gcc/3.2p5 and siesta/intel/3.2p5
  • Licence: Free, open-source

Usage Examples

From the NERSC website: SIESTA is an O (N) DFT code for electronic structure calculations and ab initio molecular dynamics simulations for molecules and solids. It uses norm-conserving pseudo potentials and linear combination of numerical atomic orbitals (LCAO) basis set.

SIESTA's efficiency stems from the use of strictly localized basis sets and from the implementation of linear-scaling algorithms which can be applied to suitable systems. A very important feature of the code is that its accuracy and cost can be tuned in a wide range, from quick exploratory calculations to highly accurate simulations matching the quality of other approaches, such as plane-wave and all-electron methods.

The possibility of treating large systems with some first-principles electronic-structure methods has opened up new opportunities in many disciplines. The SIESTA program is distributed freely to academics and has become quite popular, being increasingly used by researchers in geosciences, biology, and engineering (apart from those in its natural habitat of materials physics and chemistry).

Interactive Jobs

This example shows an interactive job running on one of the high memory nodes, with input file input.in.


[username@c232] module load siesta/gcc/3.2p5
[username@c232] siesta < input.in

Non-interactive Jobs

With a SIESTA input file named inputs.in, you would set up a submit script like this:

The script below (called siesta.job) and then can be submitted to SLURM:


#!/bin/bash
#
#SBATCH --comment=siesta-test
#SBATCH -p highmem
#SBATCH -N 2
#SBATCH --ntasks-per-node=40
#SBATCH -o %N.%j.%a.out
#SBATCH -e %N.%j.%a.err
#SBATCH --exclusive
#SBATCH -t 03:00:00

module purge
module add openmpi/gcc/1.10.5
module add siesta/gcc/3.2p5

mpirun siesta < input.in

Running the job with the scheduler SLURM as below:


[username@login01 ~]$ sbatch siesta.job
Submitted Job 432783


Further Information

Icon home.png