Dalton: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
m (Rdickson moved page DALTON to Dalton without leaving a redirect: web sources suggest all-caps not preferred by package authors)
No edit summary
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Draft}}


= Introduction =
<languages />
<translate>
= Introduction = <!--T:1-->


<!--T:2-->
The kernel of the Dalton2016 suite is the two powerful molecular electronic structure programs, Dalton and LSDalton. Together, the two programs provide extensive functionality for the calculations of molecular properties at the HF, DFT, MCSCF, and CC levels of theory. Many of these properties are only available in the Dalton2016 suite.  
The kernel of the Dalton2016 suite is the two powerful molecular electronic structure programs, Dalton and LSDalton. Together, the two programs provide extensive functionality for the calculations of molecular properties at the HF, DFT, MCSCF, and CC levels of theory. Many of these properties are only available in the Dalton2016 suite.  


<!--T:3-->
* Project web site: http://daltonprogram.org/
* Project web site: http://daltonprogram.org/
* Documentation: http://daltonprogram.org/documentation/
* Documentation: http://daltonprogram.org/documentation/
* Forum: http://forum.daltonprogram.org/
* Forum: http://forum.daltonprogram.org/


= Modules =
= Modules = <!--T:4-->


<!--T:5-->
<source lang="bash">
<source lang="bash">
$ module load openmpi/2.0.2 dalton/2017-alpha
$ module load nixpkgs/16.09 intel/2016.4 openmpi/2.0.2 dalton/2017-alpha
</source>
</source>


<!--T:6-->
Notice that <code>dalton/2017-alpha</code> depends on a non-default version of Open MPI.  
Notice that <code>dalton/2017-alpha</code> depends on a non-default version of Open MPI.  
For more on the <code>module</code> command see [[Utiliser des modules/fr|Using modules]].
For more on the <code>module</code> command see [[Utiliser des modules/fr|Using modules]].


= Usage =
= Usage = <!--T:7-->


<!--T:8-->
Here is an example:
Here is an example:


* Dalton input file: <code>dft_rspexci_nosym.dal</code> (see Examples below)
<!--T:9-->
* Molecule specification: <code>H2O_cc-pVDZ_nosym.mol</code> (see Examples below)
* Dalton input file: <code>dft_rspexci_nosym.dal</code> (see the examples below).
* To use the atomic basis set installed with the program, supply the option <code>-b ${BASLIB}</code>.
* Molecule specification: <code>H2O_cc-pVDZ_nosym.mol</code> (see the examples below).
* To use the atomic basis set installed with the program, supply option <code>-b ${BASLIB}</code> to the command line (see the examples below).
* The number of processes can be set using a command line option or an environment variable:
* The number of processes can be set using a command line option or an environment variable:
** Add the option <code>-N ${SLURM_NTASKS}</code> to the launcher command line.
** Add the option <code>-N ${SLURM_NTASKS}</code> to the launcher command line (refer to '''Script 1''' in the examples below);
** Or, <code>export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}</code>
** or, <code>export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}</code> (refer to '''Script 2''' in the examples below).


<!--T:10-->
To run Dalton, load the module and use the launcher <code>dalton</code>:
To run Dalton, load the module and use the launcher <code>dalton</code>:


<!--T:11-->
<source lang="bash">
<source lang="bash">
dalton -b ${BASLIB} -N ${SLURM_NTASKS}  -dal dft_rspexci_nosym.dal  -mol H2O_cc-pVDZ_nosym.mol  
dalton -b ${BASLIB} -N ${SLURM_NTASKS}  -dal dft_rspexci_nosym.dal  -mol H2O_cc-pVDZ_nosym.mol  
</source>
</source>


<!--T:12-->
or
or


<!--T:13-->
<source lang="bash">
<source lang="bash">
export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}
export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}
Line 42: Line 53:
</source>
</source>


= Examples: scripts and input files =
= Examples: scripts and input files = <!--T:14-->
 
== Example 1: dft_rspexci_nosym ==


== Example 1: dft_rspexci_nosym == <!--T:15-->
</translate>
<tabs>
<tabs>
<tab name="Script">
{{File
  |name=run_dalton_job.sh
  |lang="bash"
  |contents=
#!/bin/bash
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --mem-per-cpu=3500M
#SBATCH --time=00-30:00
# Load the module:
module load nixpkgs/16.09  intel/2016.4  openmpi/2.0.2 dalton/2017-alpha
# Setting the variables:
dltonlaun=dalton
dltonexec=dalton.x
daltoninput=dft_rspexci_nosym.dal
daltonmol=H2O_cc-pVDZ_nosym.mol
echo "Starting run at: `date`"
echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"
${dltonlaun} -b ${BASLIB} -N ${SLURM_NTASKS}  -dal ${daltoninput}  -mol ${daltonmol}
echo "Program finished with exit code $? at: `date`"
}}
</tab>


<tab name="INPUT">
<tab name="INPUT">
Line 119: Line 98:
</tab>
</tab>


</tabs>
<tab name="Script 1">
 
== Example 2: dft_rspexci_sym.dal ==
 
<tabs>
<tab name="Script">
{{File
{{File
   |name=run_dalton_job.sh
   |name=run_dalton_job.sh
Line 144: Line 118:
dltonlaun=dalton
dltonlaun=dalton
dltonexec=dalton.x
dltonexec=dalton.x
daltoninput=dft_rspexci_sym.dal
daltoninput=dft_rspexci_nosym.dal
daltonmol=H2O_cc-pVDZ_sym.mol
daltonmol=H2O_cc-pVDZ_nosym.mol


echo "Starting run at: `date`"
echo "Starting run at: `date`"
Line 157: Line 131:
</tab>
</tab>


<tab name="INPUT">
<tab name="Script 2">
{{File
  |name=dft_rspexci_sym.dal
  |lang="txt"
  |contents=
**DALTON INPUT
.RUN RESPONSE
**INTEGRALS
.PROPRINT
**WAVE FUNCTIONS
.DFT
B3LYP
**RESPONSE
*LINEAR
.SINGLE RESIDUE
**END OF DALTON INPUT
}}
</tab>
 
<tab name="MOLECULE">
{{File
  |name=H2O_cc-pVDZ_sym.mol
  |lang="txt"
  |contents=
BASIS
cc-pVDZ
H2O
 
    2
        8.    1
O    0.0  0.0000000000 0.0
        1.    2
H1    1.430    0.0  1.1
H2  -1.430    0.0  1.1
}}
</tab>
 
</tabs>
 
== Example 3: dft_rspexci_nosym ==
 
<tabs>
<tab name="Script">
{{File
{{File
   |name=run_dalton_job.sh
   |name=run_dalton_job.sh
Line 235: Line 167:
}}
}}
</tab>
</tab>
</tabs>
<translate>
== Example 2: dft_rspexci_sym.dal == <!--T:16-->
</translate>
<tabs>


<tab name="INPUT">
<tab name="INPUT">
{{File
{{File
   |name=dft_rspexci_nosym.dal
   |name=dft_rspexci_sym.dal
   |lang="txt"
   |lang="txt"
   |contents=
   |contents=
Line 251: Line 189:
*LINEAR
*LINEAR
.SINGLE RESIDUE
.SINGLE RESIDUE
.ROOTS
3
**END OF DALTON INPUT
**END OF DALTON INPUT
}}
}}
Line 259: Line 195:
<tab name="MOLECULE">
<tab name="MOLECULE">
{{File
{{File
   |name=H2O_cc-pVDZ_nosym.mol
   |name=H2O_cc-pVDZ_sym.mol
   |lang="txt"
   |lang="txt"
   |contents=
   |contents=
Line 266: Line 202:
H2O
H2O


     2   0
     2
         8.    1
         8.    1
O    0.0  0.0000000000 0.0
O    0.0  0.0000000000 0.0
Line 275: Line 211:
</tab>
</tab>


</tabs>
<tab name="Script 1">
 
== Example 4: dft_rspexci_sym.dal ==
 
<tabs>
<tab name="Script">
{{File
{{File
   |name=run_dalton_job.sh
   |name=run_dalton_job.sh
Line 302: Line 233:
daltoninput=dft_rspexci_sym.dal
daltoninput=dft_rspexci_sym.dal
daltonmol=H2O_cc-pVDZ_sym.mol
daltonmol=H2O_cc-pVDZ_sym.mol
# Set the number of cores DALTON_NUM_MPI_PROCS to ${SLURM_NTASKS}
export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}


echo "Starting run at: `date`"
echo "Starting run at: `date`"
Line 311: Line 238:
echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"
echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"


${dltonlaun} -b ${BASLIB}  -dal ${daltoninput}  -mol ${daltonmol}
${dltonlaun} -b ${BASLIB} -N ${SLURM_NTASKS}  -dal ${daltoninput}  -mol ${daltonmol}


echo "Program finished with exit code $? at: `date`"
echo "Program finished with exit code $? at: `date`"
Line 317: Line 244:
</tab>
</tab>


<tab name="INPUT">
<tab name="Script 2">
{{File
{{File
   |name=dft_rspexci_sym.dal
   |name=run_dalton_job.sh
   |lang="txt"
   |lang="bash"
   |contents=
   |contents=
**DALTON INPUT
#!/bin/bash
.RUN RESPONSE
 
**INTEGRALS
#SBATCH --nodes=1
.PROPRINT
#SBATCH --ntasks-per-node=4
**WAVE FUNCTIONS
#SBATCH --mem-per-cpu=3500M
.DFT
#SBATCH --time=00-30:00
B3LYP
 
**RESPONSE
# Load the module:
*LINEAR
 
.SINGLE RESIDUE
module load nixpkgs/16.09  intel/2016.4  openmpi/2.0.2 dalton/2017-alpha
**END OF DALTON INPUT
 
}}
# Setting the variables:
</tab>
 
dltonlaun=dalton
dltonexec=dalton.x
daltoninput=dft_rspexci_sym.dal
daltonmol=H2O_cc-pVDZ_sym.mol
 
# Set the number of cores DALTON_NUM_MPI_PROCS to ${SLURM_NTASKS}
 
export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}
 
echo "Starting run at: `date`"
 
echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"


<tab name="MOLECULE">
${dltonlaun} -b ${BASLIB}  -dal ${daltoninput}  -mol ${daltonmol}
{{File
  |name=H2O_cc-pVDZ_sym.mol
  |lang="txt"
  |contents=
BASIS
cc-pVDZ
H2O


    2
echo "Program finished with exit code $? at: `date`"
        8.    1
O    0.0  0.0000000000 0.0
        1.    2
H1    1.430    0.0  1.1
H2  -1.430    0.0  1.1
}}
}}
</tab>
</tab>


</tabs>
</tabs>

Latest revision as of 17:21, 17 September 2018

Other languages:

Introduction[edit]

The kernel of the Dalton2016 suite is the two powerful molecular electronic structure programs, Dalton and LSDalton. Together, the two programs provide extensive functionality for the calculations of molecular properties at the HF, DFT, MCSCF, and CC levels of theory. Many of these properties are only available in the Dalton2016 suite.

Modules[edit]

$ module load nixpkgs/16.09 intel/2016.4 openmpi/2.0.2 dalton/2017-alpha

Notice that dalton/2017-alpha depends on a non-default version of Open MPI. For more on the module command see Using modules.

Usage[edit]

Here is an example:

  • Dalton input file: dft_rspexci_nosym.dal (see the examples below).
  • Molecule specification: H2O_cc-pVDZ_nosym.mol (see the examples below).
  • To use the atomic basis set installed with the program, supply option -b ${BASLIB} to the command line (see the examples below).
  • The number of processes can be set using a command line option or an environment variable:
    • Add the option -N ${SLURM_NTASKS} to the launcher command line (refer to Script 1 in the examples below);
    • or, export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS} (refer to Script 2 in the examples below).

To run Dalton, load the module and use the launcher dalton:

dalton -b ${BASLIB} -N ${SLURM_NTASKS}  -dal dft_rspexci_nosym.dal  -mol H2O_cc-pVDZ_nosym.mol

or

export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}
dalton -b ${BASLIB}  -dal dft_rspexci_nosym.dal  -mol H2O_cc-pVDZ_nosym.mol

Examples: scripts and input files[edit]

Example 1: dft_rspexci_nosym[edit]

File : dft_rspexci_nosym.dal

**DALTON INPUT
.RUN RESPONSE
**INTEGRALS
.PROPRINT
**WAVE FUNCTIONS
.DFT
 B3LYP
**RESPONSE
*LINEAR
.SINGLE RESIDUE
.ROOTS
 3
**END OF DALTON INPUT


File : H2O_cc-pVDZ_nosym.mol

BASIS
cc-pVDZ
H2O

    2    0
        8.    1
O     0.0  0.0000000000 0.0
        1.    2
H1    1.430    0.0  1.1
H2   -1.430    0.0  1.1


File : run_dalton_job.sh

#!/bin/bash

#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --mem-per-cpu=3500M
#SBATCH --time=00-30:00

# Load the module: 

module load nixpkgs/16.09  intel/2016.4  openmpi/2.0.2 dalton/2017-alpha

# Setting the variables:

dltonlaun=dalton
dltonexec=dalton.x
daltoninput=dft_rspexci_nosym.dal
daltonmol=H2O_cc-pVDZ_nosym.mol

echo "Starting run at: `date`"

echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"

${dltonlaun} -b ${BASLIB} -N ${SLURM_NTASKS}  -dal ${daltoninput}  -mol ${daltonmol}

echo "Program finished with exit code $? at: `date`"


File : run_dalton_job.sh

#!/bin/bash

#SBATCH --nodes=1
#SBATCH --ntasks-per-node=2
#SBATCH --mem-per-cpu=3500M
#SBATCH --time=00-30:00

# Load the module: 

module load nixpkgs/16.09  intel/2016.4  openmpi/2.0.2 dalton/2017-alpha

# Setting the variables:

dltonlaun=dalton
dltonexec=dalton.x
daltoninput=dft_rspexci_nosym.dal
daltonmol=H2O_cc-pVDZ_nosym.mol

# Set the number of cores DALTON_NUM_MPI_PROCS to ${SLURM_NTASKS}

export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}

echo "Starting run at: `date`"

echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"

${dltonlaun} -b ${BASLIB}  -dal ${daltoninput}  -mol ${daltonmol}

echo "Program finished with exit code $? at: `date`"


Example 2: dft_rspexci_sym.dal[edit]

File : dft_rspexci_sym.dal

**DALTON INPUT
.RUN RESPONSE
**INTEGRALS
.PROPRINT
**WAVE FUNCTIONS
.DFT
 B3LYP
**RESPONSE
*LINEAR
.SINGLE RESIDUE
**END OF DALTON INPUT


File : H2O_cc-pVDZ_sym.mol

BASIS
cc-pVDZ
H2O

    2
        8.    1
O     0.0  0.0000000000 0.0
        1.    2
H1    1.430    0.0  1.1
H2   -1.430    0.0  1.1


File : run_dalton_job.sh

#!/bin/bash

#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --mem-per-cpu=3500M
#SBATCH --time=00-30:00

# Load the module: 

module load nixpkgs/16.09  intel/2016.4  openmpi/2.0.2 dalton/2017-alpha

# Setting the variables:

dltonlaun=dalton
dltonexec=dalton.x
daltoninput=dft_rspexci_sym.dal
daltonmol=H2O_cc-pVDZ_sym.mol

echo "Starting run at: `date`"

echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"

${dltonlaun} -b ${BASLIB} -N ${SLURM_NTASKS}  -dal ${daltoninput}  -mol ${daltonmol}

echo "Program finished with exit code $? at: `date`"


File : run_dalton_job.sh

#!/bin/bash

#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --mem-per-cpu=3500M
#SBATCH --time=00-30:00

# Load the module:

module load nixpkgs/16.09  intel/2016.4  openmpi/2.0.2 dalton/2017-alpha

# Setting the variables:

dltonlaun=dalton
dltonexec=dalton.x
daltoninput=dft_rspexci_sym.dal
daltonmol=H2O_cc-pVDZ_sym.mol

# Set the number of cores DALTON_NUM_MPI_PROCS to ${SLURM_NTASKS}

export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}

echo "Starting run at: `date`"

echo "Running the example: INPUT=${daltoninput} - Molecule=${daltonmol}"

${dltonlaun} -b ${BASLIB}  -dal ${daltoninput}  -mol ${daltonmol}

echo "Program finished with exit code $? at: `date`"