- The
PEDRA.OUT
cavity generator log now reports the initial and final lists of spheres. The final list only contains those spheres that were actually tesselated and, possibly, the added spheres. - For all solvers, the symmetrization needed to obtain the polarization weights happens directly on the computed charges, instead of symmetrizing the system matrices.
- The
IEFSolver
object stores the unsymmetrized T^-1R matrices. A partially pivoted LU decomposition is used to compute T^-1R. A robust Cholesky decomposition is used to form the R matrix in the anisotropic IEF case. - The
CPCMSolver
object now stores the scaled, unsymmetrized S matrix. The explicit calculation and storage of its inverse is thus avoided. A robust Cholesky decomposition is used to solve the linear equation system. - The
hermitivitize
function can now correctly symmetrize vectors.
- A fix for the initialization of the explicit list of spheres when running the
standalone executable. The bug prevented the generation of the correct
Molecule
object, with subsequent failure in the cavity generator. - A memory leak occuring in the cavity generator PEDRA was fixed. This was uncovered by @shoefener and manifested only with considerably large cavities (> 200 input spheres)
- The function
CPCMMatrix
in theSolverImpl.hpp
header file is no longer available. - The functions
anisotropicIEFMatrix
andisotropicIEFMatrix
in theSolverImpl.hpp
header file are no longer available.
- Signatures for strings in Fortran90 bindings. They have now the proper
C interoperable type
character(kind=c_char, len=1) :: label(lbl_size)
. For the host this means that surface function labels will have to be declared as character arrays, for example:character :: label(7) = (/'T', 'o', 't', 'M', 'E', 'P', char(0)/)
- More informative error messages for runtime crashes caused by access to surface functions.
- The signatures for the interface functions now accept and/or return
int
(c_int
) instead ofsize_t
(c_size_t
). This simplifies interfacing with Fortran hosts.
v1.1.1 (2016-03-10)
- A runtime check to ensure that all atoms have a nonzero radius. API kills program execution if this is the case.
- An API function to retrieve the areas/weights of the cavity finite elements. The values in the returned array are in Bohr^2. Addresses a feature request from @shoefener (Issue #13)
- The standalone executable
run_pcm
is now tested within the unit tests suite. The tests cover the cases where the cavity is given implicitly, explicitly or by substitution of radii on chosen atoms.
- Boundary integral operators classes learnt to accept a scaling factor for the diagonal elements of the approximate collocation matrices. The change is reflected in the Green's funtion classes and in the input parsing. Addresses a feature request from @shoefener (Issue #16)
GePolCavity
learnt to print also the list of spheres used to generate the cavity.- Different internal handling of conversion factors from Bohr to Angstrom.
- CMake minimum required version is 2.8.10
Atom
,Solvent
andSphere
are now PODs. The radii and solvent lists are free functions.PCMSOLVER_ERROR
kills program execution when an error arises but does not use C++ exceptions.include
-s are now specified on a per-directory basis (see programmers' manual for a more detailed explanation)- Default types for template paramters
DerivativeTraits
,IntegratorPolicy
andProfilePolicy
are now given for the Green's functions classes. This reduced the verbosity in instatiating these objects significantly.
- The new printer in
GePolCavity
might not work properly when an explicit list of spheres is provided in the input. - On Ubuntu 12.10, 32 bit the Intel compiler version 2013.1 produces a faulty
library. It is possibly a bug in the implementation of
iso_c_binding
, see Issue #25
SurfaceFunction
as a class is no longer available. We keep track of surface functions at the interface level via a label-vector map.
v1.1.0 (2016-02-07)
- Green's function for diffuse interfaces in spherical symmetry
- CMake minimum required version is 2.8.8 (2016-01-08)
- Documentation is now served here