NBO 2016

From HPC users
Jump to navigationJump to search


The Natural Bond Orbital (NBO) program NBO 6.0 is a discovery tool for chemical insights from complex wavefunctions. NBO 6.0 is the current version of the broad suite of 'natural' algorithms for optimally expressing numerical solutions of Schrödinger's wave equation in the chemically intuitive language of Lewis-like bonding patterns and associated resonance-type 'donor-acceptor' interactions.

Installed version

NBO is currently installed in version 6.0.

Using NBO as a standalone tool

If you want to use NBO on the HPC Cluster as a standalone tool, you have to load the corresponding module with the command

module load nbo/6.0

In order to use NBO as standalone you need an input file. An example can be obtained with this command (module nbo/6.0 must be loaded):

cp $NBO6DIR/ch3nh2.47 .

This will copy the example input file to your current directory. The example can be run on the login host (as it runs less than a second) with the command:

gennbo ch3nh2

After that, a file named ch4nh2.nbo should appear and it contains the output of the NBO analysis.

Larger problems should of course be submitted to SLURM. A complete job script could look like this:


###SLURM job requirements
#SBATCH --nodes=1                    
#SBATCH --ntasks=1                  
#SBATCH --mem=2G                  
#SBATCH --time=0-2:00                
#SBATCH --output=nbo_example.%j.out        
#SBATCH --error=nbo_example.%j.err          

###load the needed modules
module load nbo/6.0

###settings (you will probably need to make your own modifications here)

###Run NBO as standalone
gennbo $MODEL

The jobscript can then be submitted by the command

sbatch -p carl.p nbo_example.job

Using NBO together with Gaussian 09

If you are using Gaussian 09 Rev. D.01, NBO can be called from Gaussian by choosing the right options in the input file. An example can be obtained with these commands (not sure if the second one is needed):

cp $NBO6DIR/tests/gaussian/ch3nh2.g09 ./ch3nh2.com
cp $NBO6DIR/tests/gaussian/ch3nh2.g09 .

After that you can call Gaussian directly:

g09 ch3nh2

This will create a log file which includes the results from the NBO analysis. Refer the Gaussian 09 documentation for creating a job script for this example (in the job script you would use g09run <input-file> as usual instead of g09). Do not forget to include an extra line to load the modules for NBO 6.0 as explained above.

Users request NBO6 analysis using Gaussian keywords of the following forms:

   pop=nbo6             -- default NBO6 analysis, no $NBO input
   pop=nbo6read         -- NBO6 analysis with $NBO input
   pop=nbo6del          -- NBO6 analysis with deletions
   pop=(nbo6,savenbos)  -- default NBO6 analysis, save NBOs,
      sorted by energy, on the checkpoint file
   pop=(nbo6,savenlmos) -- default NBO6 analysis, save NLMOs on
      the checkpoint file

Note that these keywords are analogous to the pop=nbo, pop=nboread, etc. keywords that are used to run the old NBO 3.1 analysis (Link 607) of G09.

Technical details

By default, the NBO6 distribution is configured to handle up to the following numbers of atoms, basis functions, shells, and exponents:

                   maximum number of atoms =  500
         maximum number of basis functions = 5000
   maximum number of basis function shells = 2000
maximum number of basis function exponents = 5000

NBO6 is also configured to use up to 100 MWords of dynamically allocated memory (~760MB).

Please contact Scientific Computing if these limits are too restrictive for your purposes.


The full manual for NBO 6.0 can be found here (PDF-Viewer required).