-
Notifications
You must be signed in to change notification settings - Fork 11
Getting Started with AARON
This tutorial will walk you through setting up AARON on an HPC cluster.
AARON is essentially a driver for running Gaussian on a high-performance computing (HPC) cluster. Each computation is run as a separate job on the queue.
As such, it requires the following:
- Gaussian09 or Gaussian16
- Moab/Torque (PBS), LSF, or Slurm queuing software (If you would like to use Aaron on a cluster with another queuing system, please contact us at [email protected])
- Perl (reasonably recent version)
- Perl modules Math::Vector::Real and Math::MatrixReal (available from CPAN)
- AaronTools
(below, we assume you are using BASH or a related shell)
Follow these directions for a full install of AaronTools: https://github.com/QChASM/AaronTools/wiki/Setting-up-AaronTools
Confirm that all AaronTools tests are passed before proceeding:
cd $QCHASM/AaronTools/tests ./test_full_install
cd $QCHASM git clone https://github.com/QChASM/Aaron.git
echo 'export PATH=$PATH:$QCHASM/AARON/bin' >> ~/.bashrc
Defaults for all AARON users are specified in $QCHASM/.aaronrc. This includes both default levels of theory but also job parameters such as default wall times and number of processors (cores). A typical .aaronrc file is as follows:
gen=/home/group/wheeler/basis/ Default solvent=Dichloromethane solvent_model=PCM temperature=298 low_method=PM6 method=B97D basis=def2tzvp denfit=1 charge=0 mult=1 wall=12 n_procs=20 short_wall=2 short_procs=2
The first line specifies the path to basis set files for 'gen' basis sets. Even if you don't plan to use gen basis sets, just put some path here.
The remaining keywords specify the following defaults for all jobs:
solvent: solvent (dichloromethane in this case) solvent_model: solvent model (pcm in this case) temperature: temperature at which thermodynamic quantities and selectivities are computed low_method: method used for Step 1 optimizations method: method used for Step 2-3 optimizations basis: basis set for Step 2-3 optimizations denfit: whether to use density fitting ('denfit' keyword) charge: total molecular charge mult: multiplicity wall: walltime in hours n_procs: number of processors/cores (all jobs run on a single node) short_wall: walltime in hours for step1 (quick semi-empirical optimization) short_procs: number of processors/cores for step1
All of these defaults can be overridden by specifying the corresponding keyword in the AARON input file or by creating .aaronrc in $HOME (see below).
While note required, we strongly recommend creating a file called .aaronrc in $HOME for each user. This will allow users to specify their own default levels of theory and other job-related parameters (number of cores, etc), which allows for the simplification of AARON input files.
For instance, you can set default levels of theory and job parameters by putting the following in .aaronrc
gen=/scratch/group/wheeler/basis Default solvent=gas temperature=298 low_method=PM6 method=M062X basis=6-31G denfit=0 charge=0 mult=1 wall=24 n_procs=20 short_wall=2 short_procs=2
You can also create custom levels of theory that are commonly used. For example, you could define a default for computations of transition metal-containing compounds by adding the following to the end of $HOME/.aaronrc:
TM_Default solvent=gas temperature=298 low_method=PM6 method=M06 basis=tm lanl2dz basis=6-31G ecp=tm lanl2dz denfit=1 charge=0 mult=1 wall=48 n_procs=20 short_wall=2 short_procs=2