Dear Dirac developers,
Thank you for the new version of DIRAC!
Regarding my previous thread about the linear response performance:
Starting from DIRAC17 to DIRAC22 the calculations of current densities and related properties are taking too much time (three times slower). This is most notorious for production calculations when I must use larger basis sets. I THINK I have detected where the problem arises from. Look in the file:
src/london_direct.F90
in subroutine xc_contrib_2el_lao, after the comment line
! spin density contributions (xc kernel)
There is a new code:
if (.not. dft_cfg_no_sdft) then
#ifdef VAR_MPI
if (parcal) call dirac_parctl(XCINT_PAR)
#endif
if (expped) then
! s_b_lao and gs_b_lao export (used in fde)
call integrate_xc(xc_mat_dim = ntbas(0), &
xc_nz = nz, &
xc_dmat_0 = dmat, &
xc_nr_dmat = 0, &
xc_nr_fmat = max_nr_xyz_comp, &
xc_fmat = fmat, &
xc_fmat_pg_sym = isym_2el_lao, &
xc_do_london_rhs_direct_der2 = .true., &
xc_london_direct_export = .true.)
else
call integrate_xc(xc_mat_dim = ntbas(0), &
xc_nz = nz, &
xc_dmat_0 = dmat, &
xc_nr_dmat = 0, &
xc_nr_fmat = max_nr_xyz_comp, &
xc_fmat = fmat, &
xc_fmat_pg_sym = isym_2el_lao, &
xc_do_london_rhs_direct_der2 = .true.)
end if
end if
Upon deactivation of this part, everything works fine and I can reproduce my DIRAC2016 calculations, even a little faster that before. I don't know what does this code chunk do, but I noticed that before the title "<<< SOLVING SETS OF LINEAR EQUATIONS FOR LINEAR RESPONSE PROPERTY >>>" this code generates two additional integration that take a long time.
Am I messing up with other property calculations in DIRAC?
Best regards.
Luis