JUSTUS2/Software/Turbomole: Difference between revisions
K Siegmund (talk | contribs) No edit summary |
|||
(22 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{Softwarepage|chem/turbomole}} |
|||
<!--{| align="right" {{Table|width=40%}} --> |
|||
{|{{Softwarebox}} |
|||
{| width=600px class="wikitable" |
|||
|- |
|- |
||
! Description !! Content |
|||
! colspan="2" style="text-align:center" | Name |
|||
|- |
|- |
||
| module load |
| module load |
||
| chem/turbomole |
| chem/turbomole |
||
|- |
|||
| Availability |
|||
| [[bwUniCluster]], [[bwForCluster_Chemistry]] |
|||
|- |
|- |
||
| License |
| License |
||
| [https://www.turbomole.org/turbomole/order-turbomole/ Commerical] |
|||
| commerical |
|||
|- |
|- |
||
|Citing |
| Citing |
||
| [ |
| [https://www.turbomole.org/turbomole/turbomole-documentation/ See Turbomole manual] |
||
|- |
|- |
||
| Links |
| Links |
||
| [ |
| [https://www.turbomole.com Homepage] | [https://www.turbomole-gmbh.com/turbomole-manuals.html Documentation] |
||
|- |
|||
| Graphical Interface |
|||
| No (Yes, for generating input) |
|||
|- |
|- |
||
| User Forum |
| User Forum |
||
| [ |
| [https://www.turbo-forum.com/ external] |
||
|} |
|} |
||
= Description = |
= Description = |
||
'''Turbomole''' is a general purpose ''quantum chemistry'' software package for ''ab initio'' electronic structure calculations and provides: |
'''Turbomole''' is a general purpose ''quantum chemistry'' software package for ''ab initio'' electronic structure calculations and provides: |
||
Line 33: | Line 27: | ||
* property and spectra calculations such as IR, UV/VIS, Raman, and CD; |
* property and spectra calculations such as IR, UV/VIS, Raman, and CD; |
||
* approximations like resolution-of-the-identity (RI) to speed-up the calculations without introducing uncontrollable or unknown errors; as well as |
* approximations like resolution-of-the-identity (RI) to speed-up the calculations without introducing uncontrollable or unknown errors; as well as |
||
* parallel versions |
* parallel versions for all kind of jobs. |
||
For more information on Turbmole's features please visit [ |
For more information on Turbmole's features please visit [https://www.turbomole-gmbh.com/program-overview.html http://www.turbomole-gmbh.com/program-overview.html]. |
||
<br> |
<br> |
||
<br> |
<br> |
||
Line 40: | Line 34: | ||
= Versions and Availability = |
= Versions and Availability = |
||
A current list of the versions available on the bwUniCluster and bwForClusters can be obtained from the Cluster Information System: [https://cis-hpc.uni-konstanz.de/prod.cis/bwUniCluster/chem/turbomole CIS Information on Turbomole] or here: |
|||
{{#widget:Iframe |
|||
|url=https://cis-hpc.uni-konstanz.de/prod.cis/bwUniCluster/chem/turbomole |
|||
|width=99% |
|||
|height=350 |
|||
|border=1 |
|||
}} |
|||
On the command line interface (CLI) of a particular bwHPC cluster a list of all available Turbomole versions can be inquired as followed |
On the command line interface (CLI) of a particular bwHPC cluster a list of all available Turbomole versions can be inquired as followed |
||
Line 52: | Line 39: | ||
$ module avail chem/turbomole |
$ module avail chem/turbomole |
||
</pre> |
</pre> |
||
<br> |
|||
A current list of the versions available on the bwUniCluster and bwForClusters can be found here: |
|||
https://www.bwhpc.de/software.php |
|||
== bwUniCluster 2.0 == |
|||
* Turbomole 7.4.1 |
|||
== bwForCluster JUSTUS 2 == |
|||
* Turbomole 7.5 |
|||
* Turbomole 7.4.1 |
|||
== Parallel computing == |
== Parallel computing == |
||
Line 58: | Line 57: | ||
* SMP = Shared-memory parallel computing based on OpenMP and Fork() with the latter using separated address spaces. |
* SMP = Shared-memory parallel computing based on OpenMP and Fork() with the latter using separated address spaces. |
||
* MPI = Message passing interface protocol based parallel computing |
* MPI = Message passing interface protocol based parallel computing |
||
However only one of the parallel variants or the sequential variant can be loaded at once and most Turbomole's binaries support only 1 or 2 of the parallelization variants. Like for Turbomole installations without the ''Module'' system of the bwHPC clusters, the variants have to be triggered by the environment variable $PARA_ARCH. |
|||
* GA = Global arrays, API for "shared-memory" programming for distributed-memory computers which can be used e.g. to complement MPI. |
|||
However only one of the 3 parallel variants or the sequential variant can be loaded at once and most Turbomole's binaries support only 1 or 2 of the parallelization variants. Like for Turbomole installations without a ''Module'' system, the variants have to be triggered by the environment variable $PARA_ARCH. |
|||
<br> |
<br> |
||
<br> |
<br> |
||
Line 65: | Line 63: | ||
= Usage = |
= Usage = |
||
== Before loading the Module == |
== Before loading the Module == |
||
Before loading the Turbomole ''Module'' the parallel computing variant has to be defined via the environment variable $PARA_ARCH using the abbreviations SMP |
Before loading the Turbomole ''Module'' the parallel computing variant has to be defined via the environment variable $PARA_ARCH using the abbreviations SMP or MPI, e.g.: |
||
<pre> |
<pre> |
||
$ export PARA_ARCH=MPI |
$ export PARA_ARCH=MPI |
||
Line 71: | Line 69: | ||
will [[#Loading the Module|later load]] the '''MPI binary variants'''. If the variable $PARA_ARCH is not defined or empty, the sequential binary variants will be active once the Turbomole Module is loaded. |
will [[#Loading the Module|later load]] the '''MPI binary variants'''. If the variable $PARA_ARCH is not defined or empty, the sequential binary variants will be active once the Turbomole Module is loaded. |
||
<br> |
<br> |
||
== Loading the Module == |
== Loading the Module == |
||
You can load the default version of ''Turbomole'' with the command: |
You can load the default version of ''Turbomole'' with the command: |
||
Line 77: | Line 74: | ||
$ module load chem/turbomole |
$ module load chem/turbomole |
||
</pre> |
</pre> |
||
The Turbomole ''Module'' does not depend on any other ''Module'', but on the variable $PARA_ARCH. Moreover, Turbomole provides its own libraries regarding ''OpenMP'', ''Fork()'', and ''MPI'' based parallelization. |
|||
The Turbomole ''Module'' does not depend on any other ''Module'', but on the variable $PARA_ARCH. Moreover, Turbomole provides its own libraries regarding ''OpenMP'', ''Fork()'', ''MPI'', and ''Global Array'' based parallelization. |
|||
If you wish to load a specific (older) version you can do so by executing e.g.: |
If you wish to load a specific (older) version you can do so by executing e.g.: |
||
<pre> |
<pre> |
||
$ module load chem/turbomole/ |
$ module load chem/turbomole/7.4.1 |
||
</pre> |
</pre> |
||
to load the version |
to load the version 7.4.1 |
||
<br> |
<br> |
||
== Switching between different parallel variants == |
== Switching between different parallel variants == |
||
To switch between the different parallel variants provided by the Turbomole ''Module'', simply define the new parallel variant via $PARA_ARCH and load the ''Module'' again. Note that for switching between the parallel variants unloading of the Turbomole ''Module'' is not required. For instance to change to the MPI variant, execute: |
To switch between the different parallel variants provided by the Turbomole ''Module'', simply define the new parallel variant via $PARA_ARCH and load the ''Module'' again. Note that for switching between the parallel variants unloading of the Turbomole ''Module'' is not required. For instance to change to the MPI variant, execute: |
||
Line 93: | Line 88: | ||
</pre> |
</pre> |
||
<br> |
<br> |
||
== Turbomole binaries == |
== Turbomole binaries == |
||
The '''Turbomole''' software package consists of a set of stand-alone program binaries providing different features and parallelization support: |
The '''Turbomole''' software package consists of a set of stand-alone program binaries providing different features and parallelization support: |
||
{| width=750px class="wikitable" |
|||
|- style=text-align:left" |
|||
{| style="width:100%; vertical-align:top; background:#f5fffa;border:1px solid #000000;padding:1px" |
|||
! Binary !! Features !! OpenMP !! Fork !! MPI |
|||
|- style="width:20%;height=20px; text-align:left;padding:3px" |
|||
! style="background-color:#AAA;padding:3px"| Binary |
|||
! style="background-color:#AAA;padding:3px"| Features |
|||
! style="background-color:#AAA;padding:3px"| OpenMP |
|||
! style="background-color:#AAA;padding:3px"| Fork |
|||
! style="background-color:#AAA;padding:3px"| MPI |
|||
! style="background-color:#AAA;padding:3px"| GA |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| define |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| define |
|||
| Interactive input generator |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| dscf |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px" | dscf |
|||
| Energy calculations |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| grad |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| grad |
|||
| Gradient calculations |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| ridft |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| ridft |
|||
| Energy calc. with fast Coulomb approximation |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| rdgrad |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| rdgrad |
|||
| Gradient calc. with fast Coulomb approximation |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| ricc2 |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| ricc2 |
|||
| Electronic excitation energies, transition moments and properties of excited states |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| statpt |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| statpt |
|||
| Hessian and coordinate update for stationary point search |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| aoforce |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| aoforce |
|||
| Analytic calculation of force constants, vibrational frequencies and IR intensities |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| escf |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| escf |
|||
| Calc. of time dependent and dielectric properties |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| egrad |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| egrad |
|||
| gradients and first-order properties of excited states |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| odft |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| odft |
|||
| Orbital-dependent energy calc. |
|||
| yes |
|||
| style="height=20px; text-align:left;padding:3px"| yes |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
| style="height=20px; text-align:left;padding:3px"| no |
|||
|} |
|} |
||
For the complete set of binaries and more detailed description of their features read [ |
For the complete set of binaries and more detailed description of their features read [https://www.turbomole.org/turbomole/turbomole-documentation/ here]. |
||
<br> |
<br> |
||
== Turbomole tools == |
== Turbomole tools == |
||
Turbomole's tool set contains scripts and binaries that help to prepare, execute workflows (such as geometry optimisation) and postprocess results. |
Turbomole's tool set contains scripts and binaries that help to prepare, execute workflows (such as geometry optimisation) and postprocess results. |
||
{| width=750px class="wikitable" |
|||
{| style="width:100%; vertical-align:top; background:#f5fffa;border:1px solid #000000;padding:1px" |
|||
|- style=" |
|- style="text-align:left" |
||
! Script !! Type !! Description |
|||
! style="background-color:#AAA;padding:3px"| Script |
|||
! style="background-color:#AAA;padding:3px"| Type |
|||
! style="background-color:#AAA;padding:3px"| Description |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| x2t |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| x2t |
|||
| Preparation |
|||
| Converts XYZ coordinates into ''Turbomole'' coordinates. |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| sdg |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| sdg |
|||
| Preparation |
|||
| Shows data group from ''control'' file: for example<span style="background:#edeae2;margin:10px;padding:1px;border:1px dotted #808080">$ sdg coord</span>shows current Turbomole coordinates used. |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| jobex |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| jobex |
|||
| Optimization workflow |
|||
| Shell script that controls and executes automatic optimizations of molecular geometry parameters. |
|||
<!-- NumForce does currently not work with Moab+Slurm |
<!-- NumForce does currently not work with Moab+Slurm |
||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| NumForce |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| NumForce |
|||
| Workflow |
|||
| style="height=20px; text-align:left;padding:3px"| Workflow |
|||
| Shell script to calculates 2nd derivatives by numerical differentiation of gradients. Supports parallelization of tasks. |
|||
--> |
--> |
||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| tm2molden |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| tm2molden |
|||
| Postprocessing |
|||
| Creates a molden format input file for the [[Molden]] program. |
|||
|- style="vertical-align:top;" |
|- style="vertical-align:top;" |
||
| eiger |
|||
| style="background-color:#d3ddd8;height=20px; text-align:left;padding:3px"| eiger |
|||
| Postprocessing |
|||
| Script front-end of program ''eigerf'' to display HOMO-LUMO gap and MO eigenvalues. |
|||
|} |
|} |
||
For the complete set of tools and more detailed description of their features read [http://www.turbomole-gmbh.com/manuals/version_6_5/Documentation_html/node9.html here]. |
For the complete set of tools and more detailed description of their features read [http://www.turbomole-gmbh.com/manuals/version_6_5/Documentation_html/node9.html here]. |
||
<br> |
<br> |
||
== Disk Usage == |
== Disk Usage == |
||
By default, scratch files of Turbomole binaries are placed in the directory of |
By default, scratch files of Turbomole binaries are placed in the directory of Turbomole binary execution. Please do not run your Turbomole calculations in your $HOME or $WORK directory. |
||
<br> |
|||
<br> |
<br> |
||
= Examples = |
= Examples = |
||
== Single node jobs == |
== Single node jobs == |
||
=== Template provided by Turbomole Module === |
=== Template provided by Turbomole Module === |
||
The Turbomole ''Module'' provides a simple |
The Turbomole ''Module'' provides a simple job script example of Cubane (C8H8) that runs an energy relaxation via MPI parallel ''dscf'' using 4 cores on a single node and its local file system. To simply run the example do the following steps: |
||
<pre> |
<pre> |
||
$ module load chem/turbomole |
$ module load chem/turbomole |
||
Line 237: | Line 210: | ||
$ cd ~/Turbomole-examples/ |
$ cd ~/Turbomole-examples/ |
||
$ cp -r $TURBOMOLE_EXA_DIR/* ~/Turbmole-example/ |
$ cp -r $TURBOMOLE_EXA_DIR/* ~/Turbmole-example/ |
||
$ |
$ sbatch bwHPC_turbomole_single-node_tmpdir_example.sh |
||
</pre> |
</pre> |
||
The last step submits the job example script bwHPC_turbomole_single-node_example.sh to the queueing system. Once started on a compute node, all calculations will be done under an unique directory on the [[BwUniCluster_File_System#File_Systems|local file system]] of that particular compute node. |
The last step submits the job example script bwHPC_turbomole_single-node_example.sh to the queueing system. Once started on a compute node, all calculations will be done under an unique directory on the [[BwUniCluster_File_System#File_Systems|local file system]] of that particular compute node. |
||
<br> |
<br> |
||
=== Geometry optimization === |
=== Geometry optimization === |
||
To do a geometry optimization of the [[#Single node job template provided by Turbomole Module|previous job example]] modify bwHPC_turbomole_single- |
To do a geometry optimization of the [[#Single node job template provided by Turbomole Module|previous job example]] modify bwHPC_turbomole_single-node_tmpdir_example.sh by replacing the following line |
||
<source lang="bash"> |
<source lang="bash"> |
||
time dscf > dscf.out 2>&1 |
time dscf > dscf.out 2>&1 |
||
Line 251: | Line 223: | ||
time jobex -dscf -keep 2>&1 |
time jobex -dscf -keep 2>&1 |
||
</source> |
</source> |
||
and submit the modified script to the queueing system via [[ |
and submit the modified script to the queueing system on bwForCluster JUSTUS 2 via [[Slurm_JUSTUS_2|sbatch]] and bwUniCluster also via [[BwUniCluster_2.0_Slurm_common_Features|sbatch]], respectively. |
||
The Turbomole command ''jobex'' controls the call of all the required Turbomole binaries for the geometry optimization. |
The Turbomole command ''jobex'' controls the call of all the required Turbomole binaries for the geometry optimization. |
||
<br> |
<br> |
||
<br> |
|||
= Turbomole-Specific Environment Variables = |
|||
To see a list of all Turbomole environments set by the 'module load'-command do the following: |
|||
<pre> |
|||
module show chem/turbomole 2>&1 | grep -E '(setenv|prepend-path)' |
|||
</pre> |
|||
= Version-Specific Information = |
= Version-Specific Information = |
||
For specific information |
For specific information about the Turbomole version (e.g. 7.5) to be loaded do the following: |
||
<pre> |
<pre> |
||
module help chem/turbomole/7.5 |
|||
</pre> |
</pre> |
||
<br> |
|||
---- |
---- |
||
[[Category:Chemistry software]][[Category:bwUniCluster]][[Category:bwForCluster_Chemistry]] |
Latest revision as of 11:31, 23 April 2024
The main documentation is available via |
Description | Content |
---|---|
module load | chem/turbomole |
License | Commerical |
Citing | See Turbomole manual |
Links | Homepage | Documentation |
User Forum | external |
Description
Turbomole is a general purpose quantum chemistry software package for ab initio electronic structure calculations and provides:
- ground state calculations for methods such as Hartree-Fock, DFT, MP2, and CCSD(T);
- excited state calculations at different levels such as full RPA, TDDFT, CIS(D), CC2, an ADC(2);
- geometry optimizations, transition state searches, molecular dynamics calculations;
- property and spectra calculations such as IR, UV/VIS, Raman, and CD;
- approximations like resolution-of-the-identity (RI) to speed-up the calculations without introducing uncontrollable or unknown errors; as well as
- parallel versions for all kind of jobs.
For more information on Turbmole's features please visit http://www.turbomole-gmbh.com/program-overview.html.
Versions and Availability
On the command line interface (CLI) of a particular bwHPC cluster a list of all available Turbomole versions can be inquired as followed
$ module avail chem/turbomole
A current list of the versions available on the bwUniCluster and bwForClusters can be found here: https://www.bwhpc.de/software.php
bwUniCluster 2.0
- Turbomole 7.4.1
bwForCluster JUSTUS 2
- Turbomole 7.5
- Turbomole 7.4.1
Parallel computing
The Turbomole Module subsumes all available parallel computing variants of Turbomole's binaries. Turbomole defines the following parallel computing variants:
- SMP = Shared-memory parallel computing based on OpenMP and Fork() with the latter using separated address spaces.
- MPI = Message passing interface protocol based parallel computing
However only one of the parallel variants or the sequential variant can be loaded at once and most Turbomole's binaries support only 1 or 2 of the parallelization variants. Like for Turbomole installations without the Module system of the bwHPC clusters, the variants have to be triggered by the environment variable $PARA_ARCH.
Usage
Before loading the Module
Before loading the Turbomole Module the parallel computing variant has to be defined via the environment variable $PARA_ARCH using the abbreviations SMP or MPI, e.g.:
$ export PARA_ARCH=MPI
will later load the MPI binary variants. If the variable $PARA_ARCH is not defined or empty, the sequential binary variants will be active once the Turbomole Module is loaded.
Loading the Module
You can load the default version of Turbomole with the command:
$ module load chem/turbomole
The Turbomole Module does not depend on any other Module, but on the variable $PARA_ARCH. Moreover, Turbomole provides its own libraries regarding OpenMP, Fork(), and MPI based parallelization. If you wish to load a specific (older) version you can do so by executing e.g.:
$ module load chem/turbomole/7.4.1
to load the version 7.4.1
Switching between different parallel variants
To switch between the different parallel variants provided by the Turbomole Module, simply define the new parallel variant via $PARA_ARCH and load the Module again. Note that for switching between the parallel variants unloading of the Turbomole Module is not required. For instance to change to the MPI variant, execute:
$ export PARA_ARCH=MPI $ module load chem/turbomole
Turbomole binaries
The Turbomole software package consists of a set of stand-alone program binaries providing different features and parallelization support:
Binary | Features | OpenMP | Fork | MPI |
---|---|---|---|---|
define | Interactive input generator | no | no | no |
dscf | Energy calculations | yes | yes | yes |
grad | Gradient calculations | yes | yes | yes |
ridft | Energy calc. with fast Coulomb approximation | no | yes | yes |
rdgrad | Gradient calc. with fast Coulomb approximation | yes | yes | yes |
ricc2 | Electronic excitation energies, transition moments and properties of excited states | yes | no | yes |
statpt | Hessian and coordinate update for stationary point search | no | no | no |
aoforce | Analytic calculation of force constants, vibrational frequencies and IR intensities | yes | yes | yes |
escf | Calc. of time dependent and dielectric properties | yes | yes | yes |
egrad | gradients and first-order properties of excited states | yes | no | yes |
odft | Orbital-dependent energy calc. | yes | no | no |
For the complete set of binaries and more detailed description of their features read here.
Turbomole tools
Turbomole's tool set contains scripts and binaries that help to prepare, execute workflows (such as geometry optimisation) and postprocess results.
Script | Type | Description |
---|---|---|
x2t | Preparation | Converts XYZ coordinates into Turbomole coordinates. |
sdg | Preparation | Shows data group from control file: for example$ sdg coordshows current Turbomole coordinates used. |
jobex | Optimization workflow | Shell script that controls and executes automatic optimizations of molecular geometry parameters. |
tm2molden | Postprocessing | Creates a molden format input file for the Molden program. |
eiger | Postprocessing | Script front-end of program eigerf to display HOMO-LUMO gap and MO eigenvalues. |
For the complete set of tools and more detailed description of their features read here.
Disk Usage
By default, scratch files of Turbomole binaries are placed in the directory of Turbomole binary execution. Please do not run your Turbomole calculations in your $HOME or $WORK directory.
Examples
Single node jobs
Template provided by Turbomole Module
The Turbomole Module provides a simple job script example of Cubane (C8H8) that runs an energy relaxation via MPI parallel dscf using 4 cores on a single node and its local file system. To simply run the example do the following steps:
$ module load chem/turbomole $ mkdir -vp ~/Turbomole-example/ $ cd ~/Turbomole-examples/ $ cp -r $TURBOMOLE_EXA_DIR/* ~/Turbmole-example/ $ sbatch bwHPC_turbomole_single-node_tmpdir_example.sh
The last step submits the job example script bwHPC_turbomole_single-node_example.sh to the queueing system. Once started on a compute node, all calculations will be done under an unique directory on the local file system of that particular compute node.
Geometry optimization
To do a geometry optimization of the previous job example modify bwHPC_turbomole_single-node_tmpdir_example.sh by replacing the following line
time dscf > dscf.out 2>&1
with
time jobex -dscf -keep 2>&1
and submit the modified script to the queueing system on bwForCluster JUSTUS 2 via sbatch and bwUniCluster also via sbatch, respectively.
The Turbomole command jobex controls the call of all the required Turbomole binaries for the geometry optimization.
Turbomole-Specific Environment Variables
To see a list of all Turbomole environments set by the 'module load'-command do the following:
module show chem/turbomole 2>&1 | grep -E '(setenv|prepend-path)'
Version-Specific Information
For specific information about the Turbomole version (e.g. 7.5) to be loaded do the following:
module help chem/turbomole/7.5