description of modules
Descriptions of Modules
Some of developed modules that are currently available include:
- atom_ks_module
In this module, spherical atom calculations are performed by the density functional theory
( DFT ) approach. Using analogy with Dunning's correlation consistent Gaussian basis sets,
numerical basis sets from minimum to augmented with sextuple-zeta can be generated by performing
DFT atomic, atomic ion, excited-state atom and hydrogenic orbital calculations. Optionally, it
can be independently run to generate a file of atomic numerical basis set or with molecular
calculations, at very beginning it will be run to generate atomic numerical basis sets filling
in corresponding basis set objects defined as derived data type with pointers.
- atomic_info_module
In this module, the objects of atomic informations, for example, number of electron,
atomic symbol, nuclear charge, core charge, basis type, coordinates of atom, and so on
are built up with derived data type defined as public variables. The memory for those
objects are dynamically allocated and deallocated.
- memory_module
In this module, the objects of molecular properties, such as molecular orbital wave functions,
orbital energies, density and so on are defined as as public variables with derived data type.
The memory for those objects are also dynamically allocated and deallocated with calling
memory calculation and close subroutines in this module.
- scf_module
This module consists of read scf namelist, allocation for local variables, deallocation
for local variables, density calculation, solving Poisson equation for the charge density,
building Kohn-Sham Hamiltonian, diagonalization of Kohn-Sham Hamiltonian, and optionally
calculation of pseudopotential matrix elements numerically. The direct and indirect SCF
procedures are implemented optionally.
- optimizer_module
The module is to perform a geometry optimization function on the molecule
defined by using geometry file containing molecular structural information.
Optionally, geometry of fragments in the molecule can be optimized. This
module dose either an energy minimization or a transition state optimization.
The algorithms programmed in this module is a quasi-newton optimization
with line searches and approximate energy Hessian updates. More recently,
quadratic steepest descent method of J. Q. Sun and K. Ruedenberg JCP 99, 5257 (1993)
is implemented for both an energy minimization and a transition state optimization.
- nmr_csgt_module
The module is to calculate magnetic susceptibility, magnetic shielding, nuclear
indirect coupling tensors, and their density tensors on Cartesian grids by using
localized orbital/local origin ( LORG ), continuous sets of gauge transformation
( CSGT ) and individual gauge of atom in molecule ( IGAIM ). For CSGT approach,
the methods of single gauge origin, single gauge origin on atom, Becke's
multi-center numerical integration scheme, continuous transformation of the
origin of the current density by making paramagnetic contribution to vanish ( CTODC-PZ ),
for evaluating gauge origins are implemented. Optionally, conductivity density tensors
associated with external magnetic field are calculated by using either current density
response or propagator of electron velocity operators.
- finite_field_polarization_module
Finite field algorithm to calculate polarizabilities, first and second
hyperpolarizabilities, optionally their density tensors on Cartesian grids
are evaluated in this module. The problem of numerical instability in the
calculations of hyperpolarizability is to be avoided with adaptive grid
procedure, which automatically adjusts the grid according to the used basis sets and
the accuracy of reproducing electrostatic energies of atoms in molecules.
- coupled_ks_polarization_module
In this module, density response procedure of Kohn-Sham are implemented to
evaluate static and dynamic polarizabilities and optionally first
polarizabilities, and their density tensors on Cartesian grids. And also
optionally, conductivity density tensors are calculated by using current density
response and propagators of electron velocity operators.
- electron_transfer_module
In this module, the rate of electron transfer are calculated within donor-bridge-acceptor
model in the framework of Green function, propagator and equation-of-motion. With user's definition,
donor-acceptor for scanning tunneling microscopy model is also included. The theory is based on
calculating conductivity density tensors of induced current density when a external electric field
is applied.
- scf_linear_scaling_module
In order to avoid to deal with some values of basis functions, potentials, and Hamiltonian
on grids less than threshold defined by users, grid trimming algorithm to filter out all
those operations are implemented in this module.
- parallel_interface_module
This module contains all the necessary entities to deal with parallel library, MPI or PVM.
Data on all running threads are kept and methods are defined with the variant of MPI so that
it is more convenient for programming with both MPI and PVM. Only few subroutines in the variant of MPI
which are defined in an C subroutine to link with MPI,
are grouped with the interface statement in this module to overload a module procedure so
that they can be executed for different data types with inheritance of f90/f95. Therefore,
it taks away the necessity of external variables and error checks, for instance, in
subroutine calls for parallel library.
Items being developed in the moment:
- qm_mm_module
- polymer_module
- graphical_module
back to F95 Parallel DFT Home Page
Send us your comments to Dr. Anguang Hu, email: ahu@chem.umn.edu