Dalton: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
(Created page with "{{Draft}} = Introduction = The kernel of the Dalton2016 suite is the two powerful molecular electronic structure programs, Dalton and LSDalton. Together, the two programs pr...")
 
No edit summary
 
(26 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Draft}}


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


The kernel of the Dalton2016 suite is the two powerful molecular electronic structure programs, Dalton and LSDalton. Together, the two programs provide an 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: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.  


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


= Modules = <!--T:4-->
<!--T:5-->
<source lang="bash">
$ module load nixpkgs/16.09 intel/2016.4 openmpi/2.0.2 dalton/2017-alpha
</source>
<!--T:6-->
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]].
= Usage = <!--T:7-->
<!--T:8-->
Here is an example:
<!--T:9-->
* Dalton input file: <code>dft_rspexci_nosym.dal</code> (see the examples below).
* 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:
** 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> (refer to '''Script 2''' in the examples below).
<!--T:10-->
To run Dalton, load the module and use the launcher <code>dalton</code>:
<!--T:11-->
<source lang="bash">
dalton -b ${BASLIB} -N ${SLURM_NTASKS}  -dal dft_rspexci_nosym.dal  -mol H2O_cc-pVDZ_nosym.mol
</source>
<!--T:12-->
or
<!--T:13-->
<source lang="bash">
<source lang="bash">
$ module load nixpkgs/16.09 intel/2016.4 openmpi/2.0.2 dalton/2017-alpha
export DALTON_NUM_MPI_PROCS=${SLURM_NTASKS}
dalton -b ${BASLIB} -dal dft_rspexci_nosym.dal -mol H2O_cc-pVDZ_nosym.mol
</source>
</source>


= Examples of input files =
= Examples: scripts and input files = <!--T:14-->
 
== Example 1: dft_rspexci_nosym == <!--T:15-->
</translate>
<tabs>
 
<tab name="INPUT">
{{File
  |name=dft_rspexci_nosym.dal
  |lang="txt"
  |contents=
**DALTON INPUT
.RUN RESPONSE
**INTEGRALS
.PROPRINT
**WAVE FUNCTIONS
.DFT
B3LYP
**RESPONSE
*LINEAR
.SINGLE RESIDUE
.ROOTS
3
**END OF DALTON INPUT
}}
</tab>
 
<tab name="MOLECULE">
{{File
  |name=H2O_cc-pVDZ_nosym.mol
  |lang="txt"
  |contents=
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
}}
</tab>
 
<tab name="Script 1">
{{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="Script 2">
{{File
  |name=run_dalton_job.sh
  |lang="bash"
  |contents=
#!/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`"
}}
</tab>
 
</tabs>
<translate>
== Example 2: dft_rspexci_sym.dal == <!--T:16-->
</translate>
<tabs>
 
<tab name="INPUT">
{{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>
 
<tab name="Script 1">
{{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_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`"
}}
</tab>
 
<tab name="Script 2">
{{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_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}


== Example 1 ==
echo "Program finished with exit code $? at: `date`"
}}
</tab>


== Example 2 ==
</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`"