# Software

These softwares are under GNU license.

In a nutshell, the GNU license says that you can use this software without restrictions as long
as the software you are developing using my software is again under the
same GNU license. More details concerning the license are found on the Open Source Initiative
webpage.

## A wavelet based DFT electronic structure program

## Fast Fourier Transforms

A library of highly efficient Fourier transformations in Fortran90 and Fortran77. These routines are usually faster than any other free software routines and in the worst case some 20 percent slower than the very best vendor optimized proprietary routines (e.g IBM ESSL library). Available is a three-dimensional complex to complex transform, (fft3d.f90) that runs with very high speed on vector computers, serial computers and shared memory parallel computers (using OpenMP). Two- and four-dimensional F77 versions (fft2d.f, fft4d.f) are available for serial computers. pfft3d.f90 is a FFT package for massively parallel computers. The inter-node communication is done with MPI, the intra-node communication by OpenMP in the case where one node consists of several processors. I contains an ordinary 3-dim FFT as well as routines that are needed in plane wave electronic structure codes (e.g. ABINIT). The optimization techniques of pfft3d.f90 are described in this preprint).

## Silicon Force Fields (Interatomic Potentials)

lenosky_lib.f90, bazant_lib.f90:, tersoff_lib.f90: and stillingerweber_lib.f90: are optimized and user friendly Fortran90 subroutines for the calculation of the Lenosky, EDIP, Tersoff and Stillinger Weber silicon force fields. EDIP is fastest since it is short range. Input is the atomic positions and the lattice constants, output the total energy and forces. Nearest neighbour lists and other work arrays are all allocated and calculated within the subroutine, hiding thus complexity from the user. The nearest neighbor list is calculated with linear scaling. The routines run on serial workstations as well as on shared memory parallel computers using OpenMP. main.f90: is a main program to test the two subroutines.

## A visualization program for atomistic systems

can be downloaded from a website at the CEA in Grenoble.

## Fast Poisson Solver for periodic, free and surface boundary conditions

solver.tgz This package of serial and parallel programs calculates the electrostatic potential for a charge density given on a uniform 3-dim grid. It solves Poisson's equation in its integral form and has thus the correct free boundary conditions. For free boundary conditions the potential tends to zero at infinity and for surface boundary conditions the potential is periodic in two directions and non-periodic in the third dimension. The scaling is N log(N) with a small prefactor.

## CapSol

CapSol.f90 is a finite difference "Capacitance Solver" specialized for simulating the electrostatics of an scanning probe microscope. The probe is a conducting cone terminated by spherical cap and supported by a disk cantilever probing a multilayered dielectric sample.

## Fingerprint

fingerprint.f90 calculates the eigenvalues of an overlap matrix for atom-centered Gaussian type orbitals (GTO) as a structural fingerprint vector. fpdriver.f90 is a main program to test the subroutine. It gets an arbitrary number of structures in a single xyz formated file and gives the fingerprints and pairwise distances. See also the Q&A page. Subroutines with additional functionalities (arbitrary number of GTOs, derivatives of the fingerprints with respect to atomic positions, etc.) are also available upon request.