.. index::
   single: Program; MBPT2
   single: MP2

.. _TUT\:sec\:mbpt2:

:program:`MBPT2`-- A Second-Order Many-Body PT RHF Program
==========================================================

The :program:`MBPT2` program performs second-order Many Body Perturbation
Theory calculations based on a RHF-type of wave function (MP2 method).
The calculation is to some extent defined by the SCF
calculation which must be performed before running the :program:`MBPT2`
program. Therefore, there is no difficulty related to the input file
unless an analysis of the correlation energies of specific electron
pairs or contribution from external orbitals wants to be performed.
In this case keywords :kword:`SFROzen` and :kword:`SDELeted` have to
be used as described in
section :ref:`UG:sec:mbpt2`
of the user's guide.


To run the program the :file:`ORDINT` integral file(s)
generated by the :program:`SEWARD` program and the :file:`RUNFILE` file generated
by the :program:`SCF` program are needed. The program can be otherwise run in a
direct manner. Therefore the :program:`SEWARD` program can be run
with the option :kword:`DIREct` included in its input. Only the :file:`ONEINT`
will then be generated and used by the :program:`SCF` module.
The input file used to run an :program:`MBPT2` calculation on the ground state
of the water molecule is displayed in :numref:`block:mbpt2_input`. For large
molecules it is also possible to use the Cholesky decomposition technique to
speed up the calculations. This will be described in another section of the
tutorials.

.. code-block:: none
   :caption: Sample input requested by the :program:`MBPT2` module to
             calculate the MP2 energy for the ground state of the water in :math:`C_{2v}` symmetry.
   :name: block:mbpt2_input

   &MBPT2
   Title= MP2 of ground state of C2v Water
   Frozen= 1 0 0 0

The output of :program:`MBPT2` is self-explanatory.

.. :program:`MBPT2` --- Basic and Most Common Keywords
   ---------------------------------------------------

   .. class:: keywordlist

   :kword:`FROZEN`
     By symmetry: non-correlated orbitals (default: core)
