Skip to content

Commit

Permalink
Rewrite of some of the chemistry documentation. More to come...
Browse files Browse the repository at this point in the history
  • Loading branch information
eta000 committed Jul 11, 2017
1 parent bdabeff commit 1d28994
Show file tree
Hide file tree
Showing 8 changed files with 101 additions and 105 deletions.
61 changes: 34 additions & 27 deletions applications/chemistry/Gaussian/Gaussian.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,52 +4,59 @@
The GAUSSIAN program system
===========================================

A description of the quantum chemistry program system Gaussian
Information regarding the quantum chemistry program system Gaussian

Related information:
=======================

.. toctree::
:maxdepth: 1

GaussView.rst
firsttime_gaussian.rst
gaussian_on_stallo.rst


General Information:
====================
=====================

Description:
---------------

Gaussian is a computational chemistry software program system initially released in 1970. Gaussian has a rather low user threshold and a tidy user setup, which, together with a broad range of possibilities and a graphical user interface (gaussview), might explain its popularity in academic institutions.

Online info from vendor:
------------------------
--------------------------

* Homepage: http://www.gaussian.com
* Documentation: http://www.gaussian.com/g_tech/g_ur/g09help.htm

The support people in NOTUR, do not provide trouble shooting guides anymore, due to a national agreement that it is better for the community as \
a whole to add to the community info/knowledge pool where such is made available.

Additional online info about Gaussian on Stallo:
-------------------------------------------------

.. toctree::
:maxdepth: 1

GaussView.rst
firsttimegaussian.rst
gaussianonstallo.rst

Citation
--------
When publishing results obtained with the referred software referred, please do check the developers web page in order to find the correct citat\
ion(s).

License information:
--------------------
----------------------

The license of GAUSSIAN is commercial/proprietary.

The license of Gaussian contitutes of 4 site licenses for the 4 current host institutions of NOTUR installations; NTNU, UiB, UiO, UiT. In principle, only person from one of these instituions have access to the Gaussian Software system installed on Stallo.
The license of Gaussian constitutes of 4 site licenses for the 4 current host institutions of NOTUR installations; NTNU, UiB, UiO, UiT. In principle, only person from one of these institutions have access to the Gaussian Software system installed on Stallo.

* To get access to the code, you need to be in the gaussian group of users.
* To be in the gaussian group of users, you need either to be a member of the abovementioned
institutions or provide proof of holding a license on your own.

Citation
----------

When publishing results obtained with the referred software referred, please do check the developers web page in order to find the correct citat\
ion(s).


Additional online info about Gaussian on Stallo:
=================================================

Usage
======
------

Since Gaussian is a rather large and versatile program system with a range of different binaries, we would in general advice users to check whether their jobs are parallelized or not before submitting jobs. It would in general, unless every step is entirely well paralellized, allways be more efficient to split a complex many-step job into smaller paralell and serial parts/jobs so that also the overall utilization of hardware is improved. I you are in doubt whether or not your job will scale outside one node (=shared memory), go to the Gaussian application home folder and check if there is an *.exel version of the executable(s) you will be using. If yes, your job will generally work ok in parallell up to approx 300 cores (this is for the more advanced users).
Since Gaussian is a rather large and versatile program system with a range of different binaries, we would in general advice users to check whether their jobs are parallelized or not before submitting jobs. It would in general, unless every step is entirely well parallelized, always be more efficient to split a complex many-step job into smaller parallel and serial parts/jobs so that also the overall utilization of hardware is improved. I you are in doubt whether or not your job will scale outside one node (=shared memory), go to the Gaussian application home folder and check if there is an *.exel version of the executable(s) you will be using. If yes, your job will generally work ok in parallel up to approx 300 cores (this is for the more advanced users).
We generally wants users to run as many nodes as possible to limit the walltime length of running jobs.

Expand All @@ -76,7 +83,7 @@ Get the information you need here:
.. toctree::
:maxdepth: 1

firsttimegaussian.rst
firsttime_gaussian.rst


About the Gaussian version(s) installed on Stallo
Expand All @@ -89,8 +96,8 @@ this here:
.. toctree::
:maxdepth: 1

gaussianonstallo.rst
gaussian_on_stallo.rst

Here we also adress issues related to running Gaussian in parallel, number of cores to use,
Here we also address issues related to running Gaussian in parallel, number of cores to use,
memory allocation and special issues taken care of at install.

Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,10 @@ Gaussian input example:
.. include:: caffeine.com
:literal:

**NB: Pay special attention to the %mem defined in the beginning of the file. Also note that there are no mentioning of Linda and shared memory cores. This is adressed here:**

.. toctree::
:maxdepth: 1
**NB: Pay special attention to the %mem defined in the beginning of the file. Also note that there are no mentioning of Linda and shared memory cores. This is addressed here:** :ref:`gaussian_on_stallo`

gaussianonstallo.rst
You can also download the input file here: :download:`Caffeine-input<caffeine.com>`


Gaussian runscrip example:
Expand All @@ -36,22 +34,29 @@ Gaussian runscrip example:

**NB: Note that we for Gaussian advice to specify both nodes and core/node. This is due to the special way Gaussian sets up parallel jobs!**

These files are also available on Stallo:
------------------------------------------
You can also download the input file here: :download:`Gaussian run script<job_g09.sh>`

To find the jobscript example(s), type the following::

module load notur
cd $runex/Gaussian
ls

Copy the contents of this folder to your home directory.
The runscript example and the input file are also on Stallo:
-------------------------------------------------------------

Then, submit the job by typing::
Type:

sbatch job_g09.sh
.. code-block:: bash
module load Gaussian/9.c01
cd <whereevertestfolderyouhave>
cp -R $RUNEX .
Compare the energy of g09_caffeine.out with the correct energy of HF=-680.4153661 for this calculation.
When you have all the necessary files in the correct folders, submit the job by typing:

.. code-block:: bash
sbatch job_g09.sh
To verify that nothing has gone wrong, compare the energy of g09_caffeine.out with the correct energy of HF=-680.4153661 for this calculation.
The energy should ideally be identical or close to identical. After that, you may alter the varia\
bles in the shell script as much as you like to adapt to your own jobs. Good luck.

39 changes: 12 additions & 27 deletions applications/chemistry/Gaussian/job_g09.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,21 @@
################### Gaussian Job Batch Script Example ###################
# Section for defining queue-system variables:
#-------------------------------------
# This script asks for a given set nodes and cores/node. Stallo has got 20 cores/node,
# asking for full nodes will make your life easier!)
# Runtime for this job is 59 minutes; syntax is dd-hh:mm:ss.
# Memory is set to 1500MB; but does really not matter since you are using full node.
# Though it is worth noting that memory settings for slurm seems to be a hard limit,
# it can be specified pr core or total pr job/node (be carefull with the latter).
# This script asks for a given set of cores. Stallo has got 16 or 20 cores/node,
# asking for something that adds up to both is our general recommodation (80, 160 etc)
# Runtime for this job is 59 minutes; syntax is hh:mm:ss.
# Memory not set since you are using full node,
# it can be specified pr core, virtual or total pr job (be carefull).
#-------------------------------------
# SLURM-section
#SBATCH --job-name=g09_runex
#SBATCH -N 2
#SBATCH -N 2
#SBATCH --ntasks-per-node=20
#SBATCH --time=00-00:59:00
#SBATCH --time=00:59:00
#SBATCH --mem-per-cpu=1500MB
#SBATCH --output=g09_runex.log
#SBATCH --mail-type=ALL
#SBATCH --exclusive
#SBATCH --partition=gaussian
######################################
# Section for defining job variables and settings:
Expand All @@ -30,7 +30,6 @@ extention=com # We use the same naming scheme as the software default

# We load all the default program system settings with module load:

module load notur
module load Gaussian/09.d01

# Check other available versions with "module avail gaussian"
Expand All @@ -41,31 +40,19 @@ module load Gaussian/09.d01
# Necessary variables are defined in the notur and the software modules.

export GAUSS_SCRDIR=/global/work/$USER/$SLURM_JOB_ID
export SUBMITDIR=$SLURM_SUBMIT_DIR

mkdir -p $GAUSS_SCRDIR
echo " The job will use scratch directory ${GAUSS_SCRDIR}." # Message written to log for safety measure.

# Preparing and moving inputfiles to tmp:

cd $SUBMITDIR
cp $input.com $GAUSS_SCRDIR

# Checking for old job files to do restart from:
if [ -f $input.chk ]
then
echo "Copying chk-file to scratch."
cp $input.chk $GAUSS_SCRDIR
else
echo "No chk file found."
echo "Starting the gaussian job without a checkpointfile."
fi

cp $SUBMITDIR/caffeine.com $GAUSS_SCRDIR
cd $GAUSS_SCRDIR

# Preparation of inputfile is done by G09.prep.slurm in folder $g09tooldir
# Preparation of inputfile is done by G09.prep in folder $g09tooldir
# If you want to inspect it, cd $g09tooldir after loading the gaussian module

G09.prep $input
G09.prep.slurm $input

######################################
# Section for running the program and cleaning up:
Expand All @@ -88,8 +75,6 @@ cp $input.chk $SUBMITDIR
echo `pwd`
echo `ls -ltr`



# ALLWAYS clean up after yourself. Please do uncomment the following line
#cd $SUBMITDIR
#rm $GAUSS_SCRDIR/*
Expand Down
42 changes: 21 additions & 21 deletions applications/chemistry/VASP/VASP.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ VASP (Vienna Ab initio Simulation Package)
Information regarding the Vienna Ab initio Simulation Package (VASP) installed on Stallo.

Related information:
---------------------
=====================

.. toctree::
:maxdepth: 1

Expand All @@ -18,24 +19,6 @@ Related information:
General information:
=====================

Policy:
-------
The Vasp program is not distributed via site licences. However, HPC-staff in NOTUR have access to the VASP code to be able to support any research groups that have a valid VASP license.

VASP is a commercial software package that requires a license for all who wants to run on Stallo. To get access you would need to prove that the group you are a m\
ember of holds a valid licence; a representative for the research group needs to contact VASP and ask for an aknowledgement of you connection to the license. A VASP representative sends this acknowledgement to support@notur.no. Then your name is put into the VASP group, granting you access to the VASP 5 release of VASP on Stallo.

The support people in NOTUR, do not provide trouble shooting guides anymore, due to a national agreement that it is better for the community as a whole to add to the community info/knowledge pool where such is made a\
vailable. Also, HPC staff from UiT does not provide any support to VASP 4 anymore, basically due to age of the code.

Citation
---------
When publishing results obtained with the referred software referred, please do check the developers web page in order to find the correct citation(s).

License information:
---------------------
The VASP license is proprietary and commercial. It is based on group license policy, and for NOTUR systems VASP packages falls in the "bring your own license" category. (ref...)

Description
------------
VASP is a complex package for performing ab-initio quantum-mechanical molecular dynamics (MD) simulations using pseudopotentials or the projector-augmented wave method and a plane wave basis set. The approach implemented in VASP is based on the (finite-temperature) local-density approximation with the free energy as variational quantity and an exact evaluation of the instantaneous electronic ground state at each MD time step.
Expand All @@ -44,14 +27,31 @@ VASP uses efficient matrix diagonalisation schemes and an efficient Pulay/Broyde

The interaction between ions and electrons is described by ultra-soft Vanderbilt pseudopotentials (US-PP) or by the projector-augmented wave (PAW) method. US-PP (and the PAW method) allow for a considerable reduction of the number of plane-waves per atom for transition metals and first row elements. Forces and the full stress tensor can be calculated with VASP and used to relax atoms into their instantaneous ground-state.

There are various type plug ins and added funktionality to VASP. On Stallo, we have added support for the Texas transition state tools (`vTST <http://theory.cm.utexas.edu/vtsttools/>`), the `VASPsol <http://vaspsol.mse.ufl.edu>` implicit solvation model made by Hennig and Mathew from University of Florida and the `Bayesian Error Estimation Functionals <http://suncat.stanford.edu/about/facilities/software>` from the SUNCAT center, Standford.
There are various type plug ins and added functionality to VASP. On Stallo, we have added support for the Texas transition state tools (`vTST <http://theory.cm.utexas.edu/vtsttools/>`), the `VASPsol <http://vaspsol.mse.ufl.edu>` implicit solvation model made by Hennig and Mathew from University of Florida and the `Bayesian Error Estimation Functionals <http://suncat.stanford.edu/about/facilities/software>` from the SUNCAT center, Standford.

Online iformation from vendor:
Online information from vendor:
-------------------------------
* Homepage: http://www.vasp.at
* Documentation: http://cms.mpi.univie.ac.at/wiki/index.php/The_VASP_Manual


License and access policy:
----------------------------

The VASP license is proprietary and commercial. It is based on group license policy, and for NOTUR systems VASP packages falls in the "bring your own license" category. See :ref:`About_licenses`.


The Vasp program is not distributed via site licences. However, HPC-staff in NOTUR have access to the VASP code to be able to support any research groups that have a valid VASP license.

VASP is a commercial software package that requires a license for all who wants to run on Stallo. To get access you would need to prove that the group you are a m\
ember of holds a valid licence; a representative for the research group needs to contact VASP and ask for an aknowledgement of you connection to the license. A VASP representative sends this acknowledgement to support@notur.no. Then your name is put into the VASP group, granting you access to the VASP 5 release of VASP on Stallo.

The support people in NOTUR, do not provide trouble shooting guides anymore, due to a national agreement that it is better for the community as a whole to add to the community info/knowledge pool where such is made available. Also, HPC staff from UiT does not provide any support to VASP 4 anymore, basically due to age of the code.

Citation
---------
When publishing results obtained with the referred software referred, please do check the developers web page in order to find the correct citation(s).

Usage
=====

Expand Down
4 changes: 2 additions & 2 deletions applications/chemistry/VASP/firsttime_vasp.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ into your test job folder (which I assume you have created in advance).
VASP input example:
--------------------

Download the tarred job example folder here :download: `CeO2job-files <CeO2.tar.gz>`.
Download the tarred job :download:`CeO2job-files <CeO2.tar.gz>`.

move this file to your test job folder on Stallo and type

Expand All @@ -31,7 +31,7 @@ Then; download the job-script as seen here:
.. include:: job_vasp.sh
:literal:

Download it here :download: `job_vasp.sh <job_vasp.sh>`.
Download it here :download:`job_vasp.sh <../job_vasp.sh>`.


These files are also available on Stallo:
Expand Down
22 changes: 12 additions & 10 deletions applications/chemistry/VASP/vasp_on_stallo.rst
Original file line number Diff line number Diff line change
Expand Up @@ -50,17 +50,15 @@ These are familiar from the standard build system that is provided with the code

* vasp_tbdyn
* vasp_gam_tbdyn
_
.. fpp_vasp_settings:

FPP settings for each binary:_
FPP settings for each binary:
------------------------------

# vasp_std is compiled with the following additional FPP flag(s): -DNGZhalf
# vasp_gam is compiled with the following additional FPP flag(s): -DNGZhalf -DwNGZhalf
# vasp_ncl is compiled with the following additional FPP flag(s): no modifcations in FPP settings
# vasp_tbdyn is compiled with the following additional FPP flag(s): -DNGZhalf -Dtbdyn
# vasp_gam_tbdyn is compiled with the following additional FPP flag(s): -DNGZhalf -DwNGZhalf -Dtbdyn
#. vasp_std is compiled with the following additional FPP flag(s): -DNGZhalf
#. vasp_gam is compiled with the following additional FPP flag(s): -DNGZhalf -DwNGZhalf
#. vasp_ncl is compiled with the following additional FPP flag(s): no modifcations in FPP settings
#. vasp_tbdyn is compiled with the following additional FPP flag(s): -DNGZhalf -Dtbdyn
#. vasp_gam_tbdyn is compiled with the following additional FPP flag(s): -DNGZhalf -DwNGZhalf -Dtbdyn

We would be happy to provide a copy of our build scripts (patches) upon request.

Expand All @@ -69,12 +67,16 @@ About memory allocation for VASP:

VASP is known to be potentially memory demanding. Quite often, you might experience to use less than the full number of cores on the node, but still all of the memory.

For core-count, node-count and amounts of memory on Stallo, see :ref: about_stallo_
For core-count, node-count and amounts of memory on Stallo, see :ref:`about_stallo`.

There are two important considerations to make:

First: Make sure that you are using the SBATCH --exclusive flag in your run script.
Second: Read about how to allocate all the memory on the node, see :ref: all_mem_
Second: How to allocate all the memory:

.. literalinclude:: ../../../jobs/files/slurm-big-memory.sh
:language: bash
:linenos:



Expand Down
5 changes: 1 addition & 4 deletions jobs/examples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -123,10 +123,7 @@ Observe that they all started (approximately) at the same time::
output_9.txt:start at 14:43:59


_
.. all_mem:
Example on how to allocate entire memory on one node_
Example on how to allocate entire memory on one node
----------------------------------------------------

.. literalinclude:: files/slurm-big-memory.sh
Expand Down

0 comments on commit 1d28994

Please sign in to comment.