diff --git a/org/qmckl_local_energy.org b/org/qmckl_local_energy.org index 04bed6e..e5bfd48 100644 --- a/org/qmckl_local_energy.org +++ b/org/qmckl_local_energy.org @@ -357,7 +357,7 @@ qmckl_exit_code qmckl_provide_kinetic_energy(qmckl_context context) { | ~int64_t~ | ~mo_index_alpha[det_num_alpha][walk_num][alpha_num]~ | in | MO indices for electrons | | ~int64_t~ | ~mo_index_beta[det_num_beta][walk_num][beta_num]~ | in | MO indices for electrons | | ~int64_t~ | ~mo_num~ | in | Number of MOs | - | ~double~ | ~mo_vgl[5][walk_num][elec_num][mo_num]~ | in | Value, gradients and Laplacian of the MOs | + | ~double~ | ~mo_vgl[5][elec_num][mo_num]~ | in | Value, gradients and Laplacian of the MOs | | ~double~ | ~det_adj_matrix_alpha[det_num_alpha][walk_num][alpha_num][alpha_num]~ | in | Value, gradients and Laplacian of the Det | | ~double~ | ~det_adj_matrix_beta[det_num_beta][walk_num][beta_num][beta_num]~ | in | Value, gradients and Laplacian of the Det | | ~double~ | ~e_kin[walk_num]~ | out | Kinetic energy | @@ -379,7 +379,7 @@ integer function qmckl_compute_kinetic_energy_f(context, walk_num, & integer*8, intent(in) :: mo_num integer*8, intent(in) :: mo_index_alpha(alpha_num, walk_num, det_num_alpha) integer*8, intent(in) :: mo_index_beta(beta_num, walk_num, det_num_beta) - double precision, intent(in) :: mo_vgl(mo_num, elec_num, walk_num, 5) + double precision, intent(in) :: mo_vgl(mo_num, elec_num, 5) double precision, intent(in) :: det_adj_matrix_alpha(alpha_num, alpha_num, walk_num, det_num_alpha) double precision, intent(in) :: det_adj_matrix_beta(beta_num, beta_num, walk_num, det_num_beta) double precision, intent(inout) :: e_kin(walk_num) @@ -420,7 +420,7 @@ integer function qmckl_compute_kinetic_energy_f(context, walk_num, & do ielec = 1, alpha_num mo_id = mo_index_alpha(ielec, iwalk, idet) e_kin(iwalk) = e_kin(iwalk) - 0.5d0 * det_adj_matrix_alpha(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, ielec, iwalk, 5) + mo_vgl(mo_id, ielec, 5) end do end do ! Beta part @@ -428,7 +428,7 @@ integer function qmckl_compute_kinetic_energy_f(context, walk_num, & do ielec = 1, beta_num mo_id = mo_index_beta(ielec, iwalk, idet) e_kin(iwalk) = e_kin(iwalk) - 0.5d0 * det_adj_matrix_beta(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, alpha_num + ielec, iwalk, 5) + mo_vgl(mo_id, ielec, 5) end do end do end do @@ -492,7 +492,7 @@ end function qmckl_compute_kinetic_energy_f integer (c_int64_t) , intent(in) :: mo_index_alpha(alpha_num,walk_num,det_num_alpha) integer (c_int64_t) , intent(in) :: mo_index_beta(beta_num,walk_num,det_num_beta) integer (c_int64_t) , intent(in) , value :: mo_num - real (c_double ) , intent(in) :: mo_vgl(mo_num,elec_num,walk_num,5) + real (c_double ) , intent(in) :: mo_vgl(mo_num,elec_num,5) real (c_double ) , intent(in) :: det_adj_matrix_alpha(alpha_num,alpha_num,walk_num,det_num_alpha) real (c_double ) , intent(in) :: det_adj_matrix_beta(beta_num,beta_num,walk_num,det_num_beta) real (c_double ) , intent(out) :: e_kin(walk_num) @@ -1447,7 +1447,7 @@ qmckl_exit_code qmckl_provide_drift_vector(qmckl_context context) { | ~int64_t~ | ~mo_index_alpha[det_num_alpha][walk_num][alpha_num]~ | in | MO indices for electrons | | ~int64_t~ | ~mo_index_beta[det_num_beta][walk_num][beta_num]~ | in | MO indices for electrons | | ~int64_t~ | ~mo_num~ | in | Number of MOs | - | ~double~ | ~mo_vgl[5][walk_num][elec_num][mo_num]~ | in | Value, gradients and Laplacian of the MOs | + | ~double~ | ~mo_vgl[5][elec_num][mo_num]~ | in | Value, gradients and Laplacian of the MOs | | ~double~ | ~det_adj_matrix_alpha[det_num_alpha][walk_num][alpha_num][alpha_num]~ | in | Value, gradients and Laplacian of the Det | | ~double~ | ~det_adj_matrix_beta[det_num_beta][walk_num][beta_num][beta_num]~ | in | Value, gradients and Laplacian of the Det | | ~double~ | ~r_drift[walk_num][3]~ | out | Kinetic energy | @@ -1469,7 +1469,7 @@ integer function qmckl_compute_drift_vector_f(context, walk_num, & integer*8, intent(in) :: mo_num integer*8, intent(in) :: mo_index_alpha(alpha_num, walk_num, det_num_alpha) integer*8, intent(in) :: mo_index_beta(beta_num, walk_num, det_num_beta) - double precision, intent(in) :: mo_vgl(mo_num, elec_num, walk_num, 5) + double precision, intent(in) :: mo_vgl(mo_num, elec_num, 5) double precision, intent(in) :: det_adj_matrix_alpha(alpha_num, alpha_num, walk_num, det_num_alpha) double precision, intent(in) :: det_adj_matrix_beta(beta_num, beta_num, walk_num, det_num_beta) double precision, intent(inout) :: r_drift(3,walk_num) @@ -1510,11 +1510,11 @@ integer function qmckl_compute_drift_vector_f(context, walk_num, & do ielec = 1, alpha_num mo_id = mo_index_alpha(ielec, iwalk, idet) r_drift(1,iwalk) = r_drift(1,iwalk) + 2.0d0 * det_adj_matrix_alpha(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, ielec, iwalk, 2) + mo_vgl(mo_id, ielec, 2) r_drift(2,iwalk) = r_drift(2,iwalk) + 2.0d0 * det_adj_matrix_alpha(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, ielec, iwalk, 3) + mo_vgl(mo_id, ielec, 3) r_drift(3,iwalk) = r_drift(3,iwalk) + 2.0d0 * det_adj_matrix_alpha(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, ielec, iwalk, 4) + mo_vgl(mo_id, ielec, 4) end do end do ! Beta part @@ -1522,11 +1522,11 @@ integer function qmckl_compute_drift_vector_f(context, walk_num, & do ielec = 1, beta_num mo_id = mo_index_beta(ielec, iwalk, idet) r_drift(1,iwalk) = r_drift(1,iwalk) + 2.0d0 * det_adj_matrix_beta(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, alpha_num + ielec, iwalk, 2) + mo_vgl(mo_id, ielec, 2) r_drift(2,iwalk) = r_drift(2,iwalk) + 2.0d0 * det_adj_matrix_beta(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, alpha_num + ielec, iwalk, 3) + mo_vgl(mo_id, ielec, 3) r_drift(3,iwalk) = r_drift(3,iwalk) + 2.0d0 * det_adj_matrix_beta(imo, ielec, iwalk, idet) * & - mo_vgl(mo_id, alpha_num + ielec, iwalk, 4) + mo_vgl(mo_id, ielec, 4) end do end do end do @@ -1590,7 +1590,7 @@ end function qmckl_compute_drift_vector_f integer (c_int64_t) , intent(in) :: mo_index_alpha(alpha_num,walk_num,det_num_alpha) integer (c_int64_t) , intent(in) :: mo_index_beta(beta_num,walk_num,det_num_beta) integer (c_int64_t) , intent(in) , value :: mo_num - real (c_double ) , intent(in) :: mo_vgl(mo_num,elec_num,walk_num,5) + real (c_double ) , intent(in) :: mo_vgl(mo_num,elec_num,5) real (c_double ) , intent(in) :: det_adj_matrix_alpha(alpha_num,alpha_num,walk_num,det_num_alpha) real (c_double ) , intent(in) :: det_adj_matrix_beta(beta_num,beta_num,walk_num,det_num_beta) real (c_double ) , intent(out) :: r_drift(3,walk_num)