Cleaned m_filter.f90 routine

The filtering used an ancient diagonalization routine of rdiag which
forced the use of the overlap matrix, however the implementation
always used a diagonal basis in which case there was never a need for S.

This plus removal of redundant matrices have been implemented.
The dtrsm call has been removed since S was always diagonal.

This commit introduces no code changes other than clean-ups.
This commit is contained in:
Nick Papior 2018-07-13 20:31:43 +02:00
parent cb00aa4540
commit 1b68cad480
15 changed files with 74 additions and 148 deletions

View File

@ -815,7 +815,7 @@ m_efield.o: precision.o siesta_cml.o siesta_geom.o sys.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o precision.o radfft.o sorting.o sys.o
m_filter.o: bessph.o precision.o radfft.o sys.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -2364,7 +2364,7 @@ C
call filter(l=0,nr=nrcore,r=rofi(1:nrcore),
. f=chcore(1:nrcore),
. kc=sqrt(kmax2),
. norm_opt=0,n_eigen=n_eigen)
. norm_opt=0)
!Store chcore*r2
do ir=2,nrval
@ -3787,7 +3787,6 @@ C
. dlt, d, dn, norm(nsemx),
. kmax, kmax_tol, etol, paoFilterFactor,
. spln_min
integer :: n_eigen
real(dp),allocatable,dimension(:) :: forb !filtered orbital
logical :: filterOrbitals
logical :: new_split_code, fix_split_table, split_tail_norm
@ -4290,7 +4289,7 @@ C
endif
call filter(l=l,nr=nrc,r=rofi(1:nrc),f=forb(1:nrc),
. kc=kmax,norm_opt=2,n_eigen=n_eigen)
. kc=kmax,norm_opt=2)
filter_cutoff_orbitals =
. max(filter_cutoff_orbitals,kmax**2)
@ -5380,7 +5379,6 @@ C
. nrc,ir, l, ncocc
real(dp), allocatable :: ve_backup(:)
integer n_eigen
do ir=1,nrval
rho(ir)=0.0d0
@ -5515,7 +5513,7 @@ C
. kmax2,' Ry'
call filter(l=0,nr=nVna,r=rofi(1:nVna),
. f=Ve(1:nVna),kc=sqrt(kmax2),
. norm_opt=0,n_eigen=n_eigen)
. norm_opt=0)
deallocate(ve_backup)
endif
@ -5696,7 +5694,6 @@ C
logical :: fix_split_table
logical :: old_style_pol
real(dp):: kmax, kmax_tol, etol, paoFilterFactor, spln_min
integer :: n_eigen
real(dp),allocatable,dimension(:) :: forb !filtered orbital
old_style_pol = fdf_boolean('PAO.OldStylePolorbs',.true.)
@ -5944,7 +5941,7 @@ C
call filter(l=l+1,nr=nrc,r=rofi(1:nrc),
. f=forb(1:nrc),
. kc=kmax,norm_opt=2,n_eigen=n_eigen)
. kc=kmax,norm_opt=2)
filter_cutoff_orbitals = max(filter_cutoff_orbitals,
. kmax**2)

View File

@ -25,8 +25,6 @@
! USED module routines:
! use m_bessph, only bessph ! Spherical bessel functions
! use m_radfft, only radfft ! Radial fast Fourier transform
! use sorting, only order ! Orders a vector by increasing values
! use sorting, only ordix ! Index of a vector by increasing values
!
!******************************************************************************
!! subroutine filter( l, nr, r, f, kc, norm_opt, n_eigen )
@ -71,8 +69,6 @@ MODULE m_filter
! Used module routines (presently contained within the module, to be moved out):
USE m_bessph, only: bessph ! Spherical bessel functions
USE m_radfft, only: radfft ! Radial fast Fourier transform
USE sorting, only: order ! Orders a vector by increasing values
USE sorting, only: ordix ! Index of a vector by increasing values
implicit none
@ -96,8 +92,6 @@ PRIVATE ! Nothing is declared public beyond this point
! real(dp),parameter:: k2mix = 1.e-6_dp ! Mix weight of k2 in 'Hamiltonian'
real(dp),parameter:: k2mix = 0.10_dp ! Mix weight of k2 in 'Hamiltonian'
real(dp), save :: kc_needed = 0.0_dp
CONTAINS
!------------------------------------------------------------------------------
@ -194,16 +188,15 @@ subroutine filter( l, nr, r, f, kc, norm_opt, n_eigen)
integer, intent(out), optional :: n_eigen ! Number of eigenvectors of the filtering kernel
! Internal variables and arrays
integer :: i, ierror, ij, ij1, ij2, ik, ir, n, nj, m
integer :: i, ij, ij1, ij2, ik, ir, n, nj, m
real(dp):: cij, dk, dkr, dr, f0norm, fg, fnorm, jl0, jl1, jl2, &
k, k4j1(0:nmesh), kmesh(0:nmesh), kr, kr0, kr1, kr2, &
pi, rc, rmesh(0:nmesh)
! k, k4j1(0:nmesh), kmesh(0:2*nmesh), kr, kr0, kr1, kr2, &
! pi, rc, rmesh(0:2*nmesh)
integer, allocatable:: indx(:)
real(dp),allocatable:: aux(:), c(:,:), e(:), fm(:), g(:,:), gr(:,:), &
h(:,:), jl(:,:), jlk(:,:), jlnorm(:), jlr(:), &
kj(:), s(:,:)
kj(:)
! Fix number of basis Bessel functions by empirical rule
pi = acos(-1._dp)
@ -221,9 +214,9 @@ subroutine filter( l, nr, r, f, kc, norm_opt, n_eigen)
! Allocate arrays
allocate( aux(n), c(n,n), e(n), fm(0:nmesh), &
g(0:nmesh,n), gr(nr,n), h(n,n), indx(n), &
jl(0:nmesh,n), jlk(0:nmesh,n), jlnorm(n), jlr(n), kj(n), s(n,n) )
! jl(0:nmesh,n), jlk(0:2*nmesh,n), jlnorm(n), jlr(n), kj(n), s(n,n) )
g(0:nmesh,n), gr(nr,n), h(n,n), &
jl(0:nmesh,n), jlk(0:nmesh,n), jlnorm(n), jlr(n), kj(n) )
! jl(0:nmesh,n), jlk(0:2*nmesh,n), jlnorm(n), jlr(n), kj(n) )
! Find roots of spherical Bessel functions
dkr = pi/2 ! Safe enough not to miss any root
@ -312,12 +305,8 @@ subroutine filter( l, nr, r, f, kc, norm_opt, n_eigen)
end do
! Initialize unity overlap matrix to call rdiag
s = 0
forall(i=1:n) s(i,i) = 1
! Diagonalize 'Hamiltonian'
call filter_rdiag( h, s, n, n, n, e, c, n, 0, ierror )
call filter_rdiag( h, n, e, c )
! Subtract mixing weight of total kinetic energy from 'Hamiltonian'
! do ij = 1,n
@ -401,7 +390,7 @@ subroutine filter( l, nr, r, f, kc, norm_opt, n_eigen)
end if
! Deallocate arrays
deallocate( aux, c, e, fm, g, gr, h, indx, jl, jlk, jlnorm, jlr, kj, s )
deallocate( aux, c, e, fm, g, gr, h, jl, jlk, jlnorm, jlr, kj )
end subroutine filter
@ -429,14 +418,13 @@ subroutine gen_filteret( l, nr, maxfilteret, r, f, kc, norm_opt, nfilteret, filt
integer, intent(out) :: nfilteret ! Number of filterets created
! Internal variables and arrays
integer :: i, ierror, ij, ij1, ij2, ik, ir, n, nj, m, j
integer :: i, ij, ij1, ij2, ik, ir, n, nj, m
real(dp):: cij, dk, dkr, dr, f0norm, fnorm, fg, jl0, jl1, jl2, &
k, k4j1(0:nmesh), kmesh(0:nmesh), kr, kr0, kr1, kr2, &
pi, rc, rmesh(0:nmesh), co1
integer, allocatable:: indx(:)
real(dp),allocatable:: aux(:), c(:,:), e(:), fm(:), g(:,:), gr(:,:), &
h(:,:), jl(:,:), jlk(:,:), jlnorm(:), jlr(:), &
kj(:), s(:,:), filtertmp(:,:)
kj(:), filtertmp(:,:)
! Fix number of basis Bessel functions by empirical rule
pi = acos(-1._dp)
@ -452,8 +440,8 @@ subroutine gen_filteret( l, nr, maxfilteret, r, f, kc, norm_opt, nfilteret, filt
end do
! Allocate arrays
allocate( aux(n), c(n,n), e(n), fm(0:nmesh), g(0:nmesh,n), gr(nr,n), h(n,n), indx(n), &
jl(0:nmesh,n), jlk(0:nmesh,n), jlnorm(n), jlr(n), kj(n), s(n,n) )
allocate( aux(n), c(n,n), e(n), fm(0:nmesh), g(0:nmesh,n), gr(nr,n), h(n,n), &
jl(0:nmesh,n), jlk(0:nmesh,n), jlnorm(n), jlr(n), kj(n) )
allocate( filtertmp(nr,maxfilteret) )
! Find roots of spherical Bessel functions
@ -536,12 +524,8 @@ subroutine gen_filteret( l, nr, maxfilteret, r, f, kc, norm_opt, nfilteret, filt
h(ij,ij) = (1-k2mix) * h(ij,ij) + k2mix * kj(ij)**2
end do
! Initialize unity overlap matrix to call rdiag
s = 0
forall(i=1:n) s(i,i) = 1
! Diagonalize 'Hamiltonian'
call filter_rdiag( h, s, n, n, n, e, c, n, 0, ierror )
call filter_rdiag( h, n, e, c )
! Find how many eigenvalues are within filter tolerance
m = 0
@ -618,7 +602,7 @@ subroutine gen_filteret( l, nr, maxfilteret, r, f, kc, norm_opt, nfilteret, filt
! Deallocate arrays
deallocate( filtertmp )
deallocate( aux, c, e, fm, g, gr, h, indx, jl, jlk, jlnorm, jlr, kj, s )
deallocate( aux, c, e, fm, g, gr, h, jl, jlk, jlnorm, jlr, kj )
end subroutine gen_filteret
@ -643,14 +627,13 @@ subroutine gen_pol_filteret( l, nr, maxfilteret, r, kc, nfilteret, filteret )
integer, intent(out) :: nfilteret ! Number of filterets created
! Internal variables and arrays
integer :: i, ierror, ij, ij1, ij2, ik, ir, n, nj, m, j
real(dp):: cij, dk, dkr, dr, f0norm, fnorm, fg, jl0, jl1, jl2, &
integer :: i, ij, ij1, ij2, ik, ir, n, nj, m
real(dp):: cij, dk, dkr, dr, jl0, jl1, jl2, &
k, k4j1(0:nmesh), kmesh(0:nmesh), kr, kr0, kr1, kr2, &
pi, rc, rmesh(0:nmesh)
integer, allocatable:: indx(:)
real(dp),allocatable:: c(:,:), e(:), g(:,:), gr(:,:), &
h(:,:), jl(:,:), jlk(:,:), jlnorm(:), jlr(:), &
kj(:), s(:,:)
kj(:)
! Fix number of basis Bessel functions by empirical rule
pi = acos(-1._dp)
@ -666,8 +649,8 @@ subroutine gen_pol_filteret( l, nr, maxfilteret, r, kc, nfilteret, filteret )
end do
! Allocate arrays
allocate( c(n,n), e(n), g(0:nmesh,n), gr(nr,n), h(n,n), indx(n), &
jl(0:nmesh,n), jlk(0:nmesh,n), jlnorm(n), jlr(n), kj(n), s(n,n) )
allocate( c(n,n), e(n), g(0:nmesh,n), gr(nr,n), h(n,n), &
jl(0:nmesh,n), jlk(0:nmesh,n), jlnorm(n), jlr(n), kj(n) )
! Find roots of spherical Bessel functions
dkr = pi/2 ! Safe enough not to miss any root
@ -749,12 +732,8 @@ subroutine gen_pol_filteret( l, nr, maxfilteret, r, kc, nfilteret, filteret )
h(ij,ij) = (1-k2mix) * h(ij,ij) + k2mix * kj(ij)**2
end do
! Initialize unity overlap matrix to call rdiag
s = 0
forall(i=1:n) s(i,i) = 1
! Diagonalize 'Hamiltonian'
call filter_rdiag( h, s, n, n, n, e, c, n, 0, ierror )
call filter_rdiag( h, n, e, c )
! Find how many eigenvalues are within filter tolerance
m = 0
@ -786,7 +765,7 @@ subroutine gen_pol_filteret( l, nr, maxfilteret, r, kc, nfilteret, filteret )
endif
! Deallocate arrays
deallocate( c, e, g, gr, h, indx, jl, jlk, jlnorm, jlr, kj, s )
deallocate( c, e, g, gr, h, jl, jlk, jlnorm, jlr, kj )
end subroutine gen_pol_filteret
@ -877,61 +856,39 @@ end subroutine gen_pol_filteret
! Written by G.Fabricius and J.Soler, March 1998
! Rewritten by Julian Gale, August 2004
! ************************** INPUT ******************************************
! real*8 H(nml,nm) : Symmetric H matrix
! real*8 S(nml,nm) : Symmetric S matrix
! real*8 H(n,n) : Symmetric H matrix
! integer n : Order of the generalized system
! integer nm : Right hand dimension of H and S matrices
! integer nml : Left hand dimension of H and S matrices
! which is greater than or equal to nm
! integer neigvec : No. of eigenvectors to calculate
! integer iscf : SCF cycle
! ************************** OUTPUT *****************************************
! real*8 w(nml) : Eigenvalues
! real*8 Z(nml,nm) : Eigenvectors
! integer ierror : Flag indicating success code for routine
! : 0 = success
! : -1 = repeat call as memory is increased
! : 1 = fatal error
! real*8 w(n) : Eigenvalues
! real*8 Z(n,n) : Eigenvectors
! ***************************************************************************
subroutine filter_rdiag(H,S,n,nm,nml,w,Z,neigvec,iscf,ierror)
subroutine filter_rdiag(H,n,w,Z)
! Modules
use precision
use sys, only : die
use sys, only : die
implicit none
! Passed variables
integer :: ierror
integer :: iscf
integer :: n
integer :: neigvec
integer :: nm
integer :: nml
real(dp) :: H(nml,nm)
real(dp) :: S(nml,nm)
real(dp) :: w(nml)
real(dp) :: Z(nml,nm)
integer :: n
real(dp) :: H(n,n)
real(dp) :: w(n)
real(dp) :: Z(n,n)
! Local variables
character :: jobz
character :: range
integer :: ilaenv
integer :: info
integer :: liwork
integer :: lwork
integer :: nb
integer :: neigok
real(dp) :: vl
real(dp) :: vu
! Local variables
integer :: ilaenv
integer :: info
integer :: liwork, lwork
integer :: nb
integer :: neigok
real(dp) :: vl, vu
real(dp), parameter :: abstol = 1.0e-8_dp
real(dp), parameter :: orfac = 1.0e-3_dp
real(dp), parameter :: zero = 0.0_dp
real(dp), parameter :: one = 1.0_dp
real(dp), parameter :: MemoryFactor = 1.5_dp
real(dp), parameter :: abstol = 1.0e-8_dp
real(dp), parameter :: orfac = 1.0e-3_dp
real(dp), parameter :: MemoryFactor = 1.5_dp
integer, allocatable :: ifail(:), iwork(:)
real(dp),allocatable :: work(:)
@ -940,31 +897,22 @@ end subroutine gen_pol_filteret
! Setup *
!****************************************************************************
! Initialise error flag
ierror = 0
! Trap n=1 case, which is not handled correctly otherwise (JMS 2011/07/19)
if (n==1) then
if ( n == 1 ) then
w(:) = 0._dp
w(1) = H(1,1) / S(1,1)
w(1) = H(1,1)
Z(:,:) = 0._dp
Z(1,1) = 1._dp / sqrt(S(1,1))
goto 1000 ! exit point
Z(1,1) = 1._dp
return
end if
! vl and vu are not currently used, but they must be initialized
vl = 0
vu = n
! Set general Lapack parameters
if (neigvec.gt.0) then
jobz = 'V'
range = 'A'
else
jobz = 'N'
range = 'A'
endif
! Calculate memory requirements
nb = ilaenv(1,'DSYTRD','U',n,-1,-1,-1)
lwork = max(8*n,(nb+3)*n)
@ -981,12 +929,11 @@ end subroutine gen_pol_filteret
!****************************************************************************
! Solve standard eigenvalue problem *
!****************************************************************************
call dsyevx(jobz,range,'U',n,H,n,vl,vu,1,neigvec,abstol, &
call dsyevx('V','A','U',n,H,n,vl,vu,1,n,abstol, &
neigok,w,Z,n,work,lwork,iwork,ifail,info)
! Check error flag
if (info.ne.0) then
ierror = 1
if (info.lt.0) then
call die('Illegal argument to standard eigensolver')
elseif (info.gt.0) then
@ -997,37 +944,19 @@ end subroutine gen_pol_filteret
call die('Failure to converge standard eigenproblem')
endif
endif
if (neigok.lt.neigvec) then
if (neigok.lt.n) then
call die('Insufficient eigenvalues converged in filter_rdiag')
endif
!****************************************************************************
! Back transformation *
!****************************************************************************
if (neigvec.gt.0) then
call dtrsm('Left','U','N','Non-unit',n,neigvec,one,S,n,Z,n)
endif
if (info.ne.0) then
call die('Error in back transformation in filter_rdiag')
endif
!***************************************************************************
! Clean up *
!***************************************************************************
! Common exit point
999 continue
! Deallocate workspace arrays
deallocate( work )
deallocate( iwork )
deallocate( ifail )
! Exit point, excluding deallocations
1000 continue
return
end subroutine filter_rdiag
END MODULE m_filter

View File

@ -267,7 +267,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -330,7 +330,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -341,7 +341,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -404,7 +404,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -331,7 +331,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -394,7 +394,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -332,7 +332,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -335,7 +335,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -354,7 +354,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -417,7 +417,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -283,7 +283,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -346,7 +346,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -539,7 +539,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -602,7 +602,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -276,7 +276,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -339,7 +339,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -342,7 +342,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -405,7 +405,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -302,7 +302,7 @@ initatom.o: old_atmfuncs.o precision.o pseudopotential.o
initparallel.o: alloc.o class_OrbitalDistribution.o domain_decom.o local_sys.o
initparallel.o: parallel.o parallelsubs.o precision.o siesta_options.o
initparallel.o: sparse_matrices.o spatial.o
io.o: local_sys.o
io.o: m_io.o
iocg.o: files.o local_sys.o precision.o
iodm.o: alloc.o files.o local_sys.o parallel.o parallelsubs.o precision.o
iodm_netcdf.o: alloc.o local_sys.o parallel.o parallelsubs.o precision.o
@ -365,7 +365,7 @@ m_efield.o: parallel.o precision.o siesta_cml.o siesta_geom.o units.o
m_energies.o: precision.o
m_eo.o: precision.o
m_exp_coord.o: files.o m_os.o parallel.o precision.o units.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o sorting.o
m_filter.o: bessph.o local_sys.o precision.o radfft.o
m_fire.o: parallel.o precision.o
m_fire_mixing.o: alloc.o m_fire_para.o m_mpi_utils.o parallel.o precision.o
m_fire_para.o: m_mpi_utils.o parallel.o precision.o

View File

@ -1 +1 @@
siesta-4.1--945
siesta-4.1--946