***** How to apply the patch3.7.8: *****
cp ./patch3.7.8.tar.gz openmx3.7/source
cd openmx3.7/source
tar zxvf patch3.7.8.tar.gz
make install
***** patch3.7.8.tar.gz *****
contains
openmx_common.h
Band_DFT_Col.c
Band_DFT_kpath.c
Band_DFT_MO.c
Band_DFT_NonCol.c
DFT.c
EigenBand_lapack.c
Eigen_lapack2.c
Eigen_lapack.c
Eigen_PHH.c
Eigen_PReHH.c
Force.c
lapack_dstedc1.c
lapack_dstedc2.c
lapack_dstedc3.c
lapack_dstegr1.c
lapack_dstegr2.c
lapack_dstevx1.c
lapack_dstevx2.c
lapack_dstevx3.c
lapack_dstevx4.c
lapack_dstevx5.c
neb.c
RestartFileDFT.c
Set_Allocate_Atom2CPU.c
Set_Orbitals_Grid.c
***** purpose of patch3.7.8.tar.gz *****
Related to neb.c:
In case that the OpenMP parallelism is disabled by adding
-Dnoomp as compiler option for CC and FC in makefile,
the patch should be applied.
Related to Band_DFT_kpath.c, Band_DFT_MO.c, Force.c, and Set_Orbitals_Grid.c
Variables were not properly assigned for the parallelization using OpenMP
in those routines, which may cause serious problems.
The problem will be resovled by applying the patch.
Also, there was a serious bug in Band_DFT_MO.c, which causes an incorrect output
of LCAO coefficients in *.out. The problem will be resovled by applying the patch.
Related to RestartFileDFT.c:
It seems that a deadlock sometimes happens in the MPI calculation when BullxMPI
is used as MPI library. The problem is resolved by applying the patch.
Related to EigenBand_lapack.c:
In some cases, it is possible that erratic noise appears in the band dispersion.
The problem is resolved by applying the patch.
Related to Set_Allocate_Atom2CPU.c:
In the MPI parallelization, two or more MPI processes are used for a system including
a single atom, the calculation may stop due to segmentation fault.
The problem is resolved by applying the patch.
Related to Eigen_lapack2.c, Eigen_lapack.c, Eigen_PHH.c, Eigen_PReHH.c, lapack_dstedc1.c
lapack_dstedc2.c, lapack_dstedc3.c, lapack_dstegr1.c, lapack_dstegr2.c,
lapack_dstevx1.c, lapack_dstevx2.c, lapack_dstevx3.c, lapack_dstevx4.c
lapack_dstevx5.c, openmx_common.h
An absolute error tolerance for lapack routines is set.
Related to Band_DFT_Col.c and Band_DFT_NonCol.c:
The codes were modified so that the energy density matrix is calculated every SCF step.
Related to DFT.c:
The code was modified so that the restart calculation can be possible for the plus U
calculation and the constraint calculations in the NC-DFT scheme.