diff --git a/plugins/DFT_Utils/EZFIO.cfg b/plugins/DFT_Utils/EZFIO.cfg deleted file mode 100644 index 21cc5b98..00000000 --- a/plugins/DFT_Utils/EZFIO.cfg +++ /dev/null @@ -1,4 +0,0 @@ -[energy] -type: double precision -doc: Calculated energy -interface: ezfio diff --git a/plugins/DFT_Utils/grid_density.irp.f b/plugins/DFT_Utils/grid_density.irp.f index 03a0ace5..3f4f1183 100644 --- a/plugins/DFT_Utils/grid_density.irp.f +++ b/plugins/DFT_Utils/grid_density.irp.f @@ -5,7 +5,7 @@ BEGIN_PROVIDER [integer, n_points_radial_grid] implicit none - n_points_radial_grid = 10 + n_points_radial_grid = 100000 END_PROVIDER @@ -26,7 +26,7 @@ END_PROVIDER accu = 0.d0 do i = 1, n_points_integration_angular_lebedev accu += weights_angular_integration_lebedev(i) - weights_angular_points(i) = weights_angular_integration_lebedev(i) * 2.d0 * pi + weights_angular_points(i) = weights_angular_integration_lebedev(i) * 4.d0 * pi angular_quadrature_points(i,1) = dcos ( degre_rad * theta_angular_integration_lebedev(i)) & * dsin ( degre_rad * phi_angular_integration_lebedev(i)) angular_quadrature_points(i,2) = dsin ( degre_rad * theta_angular_integration_lebedev(i)) & @@ -115,7 +115,6 @@ BEGIN_PROVIDER [double precision, weight_functions_at_grid_points, (n_points_int enddo accu = 1.d0/accu weight_functions_at_grid_points(l,k,j) = tmp_array(j) * accu -! print*,weight_functions_at_grid_points(l,k,j) enddo enddo enddo @@ -131,7 +130,7 @@ END_PROVIDER double precision :: r(3) double precision :: aos_array(ao_num),mos_array(mo_tot_num) do j = 1, nucl_num - do k = 1, n_points_radial_grid -1 + do k = 1, n_points_radial_grid do l = 1, n_points_integration_angular_lebedev one_body_dm_mo_alpha_at_grid_points(l,k,j) = 0.d0 one_body_dm_mo_beta_at_grid_points(l,k,j) = 0.d0 @@ -139,18 +138,9 @@ END_PROVIDER r(2) = grid_points_per_atom(2,l,k,j) r(3) = grid_points_per_atom(3,l,k,j) -! call give_all_aos_at_r(r,aos_array) -! do i = 1, ao_num -! do m = 1, ao_num -! contrib = aos_array(i) * aos_array(m) -! one_body_dm_mo_alpha_at_grid_points(l,k,j) += one_body_dm_ao_alpha(i,m) * contrib -! one_body_dm_mo_beta_at_grid_points(l,k,j) += one_body_dm_ao_beta(i,m) * contrib -! enddo -! enddo - call give_all_mos_at_r(r,mos_array) - do i = 1, mo_tot_num - do m = 1, mo_tot_num + do m = 1, mo_tot_num + do i = 1, mo_tot_num contrib = mos_array(i) * mos_array(m) one_body_dm_mo_alpha_at_grid_points(l,k,j) += one_body_dm_mo_alpha_average(i,m) * contrib one_body_dm_mo_beta_at_grid_points(l,k,j) += one_body_dm_mo_beta_average(i,m) * contrib diff --git a/plugins/DFT_Utils/integration_3d.irp.f b/plugins/DFT_Utils/integration_3d.irp.f index 43eb1ab8..4b8d27e8 100644 --- a/plugins/DFT_Utils/integration_3d.irp.f +++ b/plugins/DFT_Utils/integration_3d.irp.f @@ -4,18 +4,12 @@ double precision function step_function_becke(x) double precision :: f_function_becke integer :: i,n_max_becke -!if(x.lt.-1.d0)then -! step_function_becke = 0.d0 -!else if (x .gt.1)then -! step_function_becke = 0.d0 -!else step_function_becke = f_function_becke(x) -!!n_max_becke = 1 - do i = 1, 4 + do i = 1, 3 step_function_becke = f_function_becke(step_function_becke) enddo step_function_becke = 0.5d0*(1.d0 - step_function_becke) -!endif +! step_function_becke = (1.d0 - step_function_becke) end double precision function f_function_becke(x) diff --git a/plugins/DFT_Utils/integration_radial.irp.f b/plugins/DFT_Utils/integration_radial.irp.f index e9500ded..aeeaf144 100644 --- a/plugins/DFT_Utils/integration_radial.irp.f +++ b/plugins/DFT_Utils/integration_radial.irp.f @@ -27,7 +27,6 @@ ! x = grid_points_radial(i) ! x value for the mapping of the [0, +\infty] to [0,1] double precision :: contrib_integration -! print*,m_knowles contrib_integration = derivative_knowles_function(alpha_knowles(int(nucl_charge(j))),m_knowles,x) & *knowles_function(alpha_knowles(int(nucl_charge(j))),m_knowles,x)**2 integral_density_alpha_knowles_becke_per_atom(j) += contrib_integration *f_average_angular_alpha diff --git a/plugins/DFT_Utils/test_integration_3d_density.irp.f b/plugins/DFT_Utils/test_integration_3d_density.irp.f index 93ce58f4..9ff15621 100644 --- a/plugins/DFT_Utils/test_integration_3d_density.irp.f +++ b/plugins/DFT_Utils/test_integration_3d_density.irp.f @@ -19,6 +19,18 @@ subroutine routine print*,'Nalpha = ',elec_alpha_num print*,'accu(2) = ',accu(2) print*,'Nalpha = ',elec_beta_num + + accu = 0.d0 + do i = 1, mo_tot_num + accu(1) += one_body_dm_mo_alpha_average(i,i) + accu(2) += one_body_dm_mo_beta_average(i,i) + enddo + + + print*,' ' + print*,' ' + print*,'accu(1) = ',accu(1) + print*,'accu(2) = ',accu(2) end diff --git a/plugins/MRPT_Utils/ezfio_interface.irp.f b/plugins/MRPT_Utils/ezfio_interface.irp.f deleted file mode 100644 index 9d2305b6..00000000 --- a/plugins/MRPT_Utils/ezfio_interface.irp.f +++ /dev/null @@ -1,42 +0,0 @@ -! DO NOT MODIFY BY HAND -! Created by $QP_ROOT/scripts/ezfio_interface/ei_handler.py -! from file /home/giner/qp_fork/quantum_package/src/MRPT_Utils/EZFIO.cfg - - -BEGIN_PROVIDER [ logical, do_third_order_1h1p ] - implicit none - BEGIN_DOC -! If true, compute the third order contribution for the 1h1p - END_DOC - - logical :: has - PROVIDE ezfio_filename - - call ezfio_has_mrpt_utils_do_third_order_1h1p(has) - if (has) then - call ezfio_get_mrpt_utils_do_third_order_1h1p(do_third_order_1h1p) - else - print *, 'mrpt_utils/do_third_order_1h1p not found in EZFIO file' - stop 1 - endif - -END_PROVIDER - -BEGIN_PROVIDER [ logical, save_heff_eigenvectors ] - implicit none - BEGIN_DOC -! If true, save the eigenvectors of the dressed matrix at the end of the MRPT calculation - END_DOC - - logical :: has - PROVIDE ezfio_filename - - call ezfio_has_mrpt_utils_save_heff_eigenvectors(has) - if (has) then - call ezfio_get_mrpt_utils_save_heff_eigenvectors(save_heff_eigenvectors) - else - print *, 'mrpt_utils/save_heff_eigenvectors not found in EZFIO file' - stop 1 - endif - -END_PROVIDER diff --git a/src/MO_Basis/utils.irp.f b/src/MO_Basis/utils.irp.f index 750e3420..8afa8744 100644 --- a/src/MO_Basis/utils.irp.f +++ b/src/MO_Basis/utils.irp.f @@ -272,21 +272,13 @@ subroutine give_all_mos_at_r(r,mos_array) implicit none double precision, intent(in) :: r(3) double precision, intent(out) :: mos_array(mo_tot_num) - call give_specific_mos_at_r(r,mos_array, mo_coef) -end - -subroutine give_specific_mos_at_r(r,mos_array, mo_coef_specific) - implicit none - double precision, intent(in) :: r(3) - double precision, intent(in) :: mo_coef_specific(ao_num_align, mo_tot_num) - double precision, intent(out) :: mos_array(mo_tot_num) double precision :: aos_array(ao_num),accu integer :: i,j call give_all_aos_at_r(r,aos_array) do i = 1, mo_tot_num accu = 0.d0 do j = 1, ao_num - accu += mo_coef_specific(j,i) * aos_array(j) + accu += mo_coef(j,i) * aos_array(j) enddo mos_array(i) = accu enddo diff --git a/src/Utils/angular_integration.irp.f b/src/Utils/angular_integration.irp.f index 1efd4abc..a0a7207d 100644 --- a/src/Utils/angular_integration.irp.f +++ b/src/Utils/angular_integration.irp.f @@ -4,7 +4,7 @@ BEGIN_PROVIDER [integer, degree_max_integration_lebedev] ! needed for the angular integration according to LEBEDEV formulae END_DOC implicit none - degree_max_integration_lebedev= 15 + degree_max_integration_lebedev= 3 END_PROVIDER