tdhf_gradient_C Subroutine

public subroutine tdhf_gradient_C(c_handle) bind(C, name="tdhf_gradient")

Uses

  • proc~~tdhf_gradient_c~~UsesGraph proc~tdhf_gradient_c tdhf_gradient_C module~c_interop c_interop proc~tdhf_gradient_c->module~c_interop module~strings strings proc~tdhf_gradient_c->module~strings iso_c_binding iso_c_binding module~c_interop->iso_c_binding module~messages messages module~c_interop->module~messages module~types types module~c_interop->module~types module~strings->iso_c_binding comm_IOFILE comm_IOFILE module~messages->comm_IOFILE comm_PAR comm_PAR module~messages->comm_PAR module~io_constants io_constants module~messages->module~io_constants module~precision precision module~messages->module~precision module~types->iso_c_binding module~atomic_structure_m atomic_structure_m module~types->module~atomic_structure_m module~basis_tools basis_tools module~types->module~basis_tools module~functionals functionals module~types->module~functionals module~parallel parallel module~types->module~parallel module~types->module~precision tagarray tagarray module~types->tagarray module~atomic_structure_m->iso_c_binding module~basis_tools->module~atomic_structure_m module~basis_tools->module~io_constants module~basis_tools->module~parallel module~basis_tools->module~precision iso_fortran_env iso_fortran_env module~basis_tools->iso_fortran_env module~constants constants module~basis_tools->module~constants module~functionals->iso_c_binding module~functionals->module~precision xc_f03_lib_m xc_f03_lib_m module~functionals->xc_f03_lib_m module~parallel->iso_c_binding module~parallel->module~precision module~parallel->iso_fortran_env mpi mpi module~parallel->mpi module~precision->iso_fortran_env module~constants->module~precision

Arguments

Type IntentOptional Attributes Name
type(oqp_handle_t) :: c_handle

Calls

proc~~tdhf_gradient_c~~CallsGraph proc~tdhf_gradient_c tdhf_gradient_C interface~oqp_handle_get_info oqp_handle_get_info proc~tdhf_gradient_c->interface~oqp_handle_get_info proc~tdhf_gradient tdhf_gradient proc~tdhf_gradient_c->proc~tdhf_gradient interface~data_has_tags data_has_tags proc~tdhf_gradient->interface~data_has_tags interface~show_message show_message proc~tdhf_gradient->interface~show_message interface~tagarray_get_data tagarray_get_data proc~tdhf_gradient->interface~tagarray_get_data interface~unpack_matrix unpack_matrix proc~tdhf_gradient->interface~unpack_matrix proc~dft_initialize dft_initialize proc~tdhf_gradient->proc~dft_initialize proc~dftclean dftclean proc~tdhf_gradient->proc~dftclean proc~iatogen iatogen proc~tdhf_gradient->proc~iatogen proc~measure_time measure_time proc~tdhf_gradient->proc~measure_time proc~orthogonal_transform orthogonal_transform proc~tdhf_gradient->proc~orthogonal_transform proc~print_gradient print_gradient proc~tdhf_gradient->proc~print_gradient proc~print_module_info print_module_info proc~tdhf_gradient->proc~print_module_info proc~symmetrize_matrix symmetrize_matrix proc~tdhf_gradient->proc~symmetrize_matrix proc~tddft_xc_gradient tddft_xc_gradient proc~tdhf_gradient->proc~tddft_xc_gradient proc~tdhf_1e_grad tdhf_1e_grad proc~tdhf_gradient->proc~tdhf_1e_grad proc~tdhf_2e_grad tdhf_2e_grad proc~tdhf_gradient->proc~tdhf_2e_grad proc~unpack_f90 UNPACK_F90 interface~unpack_matrix->proc~unpack_f90 proc~dft_initialize->interface~show_message none~add_atomic_grid dft_grid_t%add_atomic_grid proc~dft_initialize->none~add_atomic_grid none~add_grid sorted_grid_t%add_grid proc~dft_initialize->none~add_grid none~compress dft_grid_t%compress proc~dft_initialize->none~compress none~find_neighbours dft_grid_t%find_neighbours proc~dft_initialize->none~find_neighbours none~reset dft_grid_t%reset proc~dft_initialize->none~reset none~set_screening basis_set%set_screening proc~dft_initialize->none~set_screening proc~c_f_char c_f_char proc~dft_initialize->proc~c_f_char proc~dft_fc_blk dft_fc_blk proc~dft_initialize->proc~dft_fc_blk proc~get_radial_grid get_radial_grid proc~dft_initialize->proc~get_radial_grid proc~libxc_input libxc_input proc~dft_initialize->proc~libxc_input proc~set_bragg_slater set_bragg_slater proc~dft_initialize->proc~set_bragg_slater proc~libxc_destroy libxc_destroy proc~dftclean->proc~libxc_destroy proc~orthogonal_transform->interface~show_message proc~oqp_dgemm_i64 oqp_dgemm_i64 proc~orthogonal_transform->proc~oqp_dgemm_i64 none~clean~23 xc_consumer_tdg_t%clean proc~tddft_xc_gradient->none~clean~23 none~init~14 par_env_t%init proc~tddft_xc_gradient->none~init~14 proc~run_xc run_xc proc~tddft_xc_gradient->proc~run_xc proc~tdhf_1e_grad->interface~data_has_tags proc~tdhf_1e_grad->interface~show_message proc~tdhf_1e_grad->interface~tagarray_get_data proc~eijden eijden proc~tdhf_1e_grad->proc~eijden proc~grad_1e_ecp grad_1e_ecp proc~tdhf_1e_grad->proc~grad_1e_ecp proc~grad_ee_kinetic grad_ee_kinetic proc~tdhf_1e_grad->proc~grad_ee_kinetic proc~grad_ee_overlap grad_ee_overlap proc~tdhf_1e_grad->proc~grad_ee_overlap proc~grad_en_hellman_feynman grad_en_hellman_feynman proc~tdhf_1e_grad->proc~grad_en_hellman_feynman proc~grad_en_pulay grad_en_pulay proc~tdhf_1e_grad->proc~grad_en_pulay proc~grad_nn grad_nn proc~tdhf_1e_grad->proc~grad_nn proc~tdhf_2e_grad->interface~show_message clean clean proc~tdhf_2e_grad->clean init init proc~tdhf_2e_grad->init proc~grd2_driver grd2_driver proc~tdhf_2e_grad->proc~grd2_driver none~add_slices dft_grid_t%add_slices none~add_atomic_grid->none~add_slices none~get~5 list_grid_3d_t%get none~add_grid->none~get~5 none~set~4 list_grid_3d_t%set none~add_grid->none~set~4 proc~lebedev_get_grid lebedev_get_grid none~add_grid->proc~lebedev_get_grid none~set~2 partition_function%set none~find_neighbours->none~set~2 mpi_comm_rank mpi_comm_rank none~init~14->mpi_comm_rank mpi_comm_size mpi_comm_size none~init~14->mpi_comm_size none~init~21 sorted_grid_t%init none~reset->none~init~21 none~getbyid list_grid_3d_t%getByID proc~dft_fc_blk->none~getbyid proc~dft_fc_blk->none~set~2 proc~eijden->interface~data_has_tags proc~eijden->interface~tagarray_get_data proc~eijden->interface~unpack_matrix proc~orthogonal_transform_sym orthogonal_transform_sym proc~eijden->proc~orthogonal_transform_sym set set proc~get_radial_grid->set transform transform proc~get_radial_grid->transform proc~grad_1e_ecp->none~init~14 none~bcast par_env_t%bcast proc~grad_1e_ecp->none~bcast proc~add_ecpder add_ecpder proc~grad_1e_ecp->proc~add_ecpder proc~grad_ee_kinetic->interface~unpack_matrix interface~bas_norm_matrix bas_norm_matrix proc~grad_ee_kinetic->interface~bas_norm_matrix none~alloc~2 shpair_t%alloc proc~grad_ee_kinetic->none~alloc~2 none~fetch_by_id shell_t%fetch_by_id proc~grad_ee_kinetic->none~fetch_by_id none~shell_pair shpair_t%shell_pair proc~grad_ee_kinetic->none~shell_pair proc~comp_kinetic_der1 comp_kinetic_der1 proc~grad_ee_kinetic->proc~comp_kinetic_der1 proc~grad_ee_overlap->interface~unpack_matrix proc~grad_ee_overlap->interface~bas_norm_matrix proc~grad_ee_overlap->none~alloc~2 proc~grad_ee_overlap->none~fetch_by_id proc~grad_ee_overlap->none~shell_pair proc~comp_overlap_der1 comp_overlap_der1 proc~grad_ee_overlap->proc~comp_overlap_der1 proc~grad_en_hellman_feynman->interface~unpack_matrix proc~grad_en_hellman_feynman->interface~bas_norm_matrix proc~grad_en_hellman_feynman->none~alloc~2 proc~grad_en_hellman_feynman->none~fetch_by_id proc~grad_en_hellman_feynman->none~shell_pair proc~comp_coulomb_helfeyder1 comp_coulomb_helfeyder1 proc~grad_en_hellman_feynman->proc~comp_coulomb_helfeyder1 proc~grad_en_pulay->interface~unpack_matrix proc~grad_en_pulay->interface~bas_norm_matrix proc~grad_en_pulay->none~alloc~2 proc~grad_en_pulay->none~fetch_by_id proc~grad_en_pulay->none~shell_pair proc~comp_coulomb_der1 comp_coulomb_der1 proc~grad_en_pulay->proc~comp_coulomb_der1 proc~grd2_driver->interface~show_message proc~grd2_driver->none~init~14 get_density get_density proc~grd2_driver->get_density none~alloc int2_pair_storage%alloc proc~grd2_driver->none~alloc none~allreduce par_env_t%allreduce proc~grd2_driver->none~allreduce none~clean~24 grd2_int_data_t%clean proc~grd2_driver->none~clean~24 none~compute int2_pair_storage%compute proc~grd2_driver->none~compute none~set int2_cutoffs_t%set proc~grd2_driver->none~set none~set_ids~2 grd2_int_data_t%set_ids proc~grd2_driver->none~set_ids~2 proc~grd2_rys_compute grd2_rys_compute proc~grd2_driver->proc~grd2_rys_compute proc~ints_exchange ints_exchange proc~grd2_driver->proc~ints_exchange none~destroy~2 functional_t%destroy proc~libxc_destroy->none~destroy~2 proc~libxc_input->interface~show_message none~add_functional functional_t%add_functional proc~libxc_input->none~add_functional none~can_calculate functional_t%can_calculate proc~libxc_input->none~can_calculate xc_f03_reference xc_f03_reference proc~libxc_input->xc_f03_reference xc_f03_reference_doi xc_f03_reference_doi proc~libxc_input->xc_f03_reference_doi xc_f03_version_string xc_f03_version_string proc~libxc_input->xc_f03_version_string proc~oqp_dgemm_i64->interface~show_message dgemm dgemm proc~oqp_dgemm_i64->dgemm proc~run_xc->none~allreduce none~compaos xc_engine_t%compAOs proc~run_xc->none~compaos none~compxc xc_engine_t%compXC proc~run_xc->none~compxc none~getslicenonzero dft_grid_t%getSliceNonZero proc~run_xc->none~getslicenonzero none~getstats xc_engine_t%getStats proc~run_xc->none~getstats none~init~18 xc_engine_t%init proc~run_xc->none~init~18 none~pruneaos xc_engine_t%pruneAOs proc~run_xc->none~pruneaos none~resetpointers xc_engine_t%resetPointers proc~run_xc->none~resetpointers parallel_start parallel_start proc~run_xc->parallel_start parallel_stop parallel_stop proc~run_xc->parallel_stop postUpdate postUpdate proc~run_xc->postUpdate update update proc~run_xc->update proc~unpack_f90->interface~show_message proc~oqp_dtpttr_i64 oqp_dtpttr_i64 proc~unpack_f90->proc~oqp_dtpttr_i64 none~add_functional->interface~show_message xc_f03_func_get_info xc_f03_func_get_info none~add_functional->xc_f03_func_get_info xc_f03_func_info_get_family xc_f03_func_info_get_family none~add_functional->xc_f03_func_info_get_family xc_f03_func_info_get_flags xc_f03_func_info_get_flags none~add_functional->xc_f03_func_info_get_flags xc_f03_func_info_get_kind xc_f03_func_info_get_kind none~add_functional->xc_f03_func_info_get_kind xc_f03_func_info_get_name xc_f03_func_info_get_name none~add_functional->xc_f03_func_info_get_name xc_f03_func_info_get_references xc_f03_func_info_get_references none~add_functional->xc_f03_func_info_get_references xc_f03_func_init xc_f03_func_init none~add_functional->xc_f03_func_init xc_f03_func_reference_get_doi xc_f03_func_reference_get_doi none~add_functional->xc_f03_func_reference_get_doi xc_f03_func_reference_get_ref xc_f03_func_reference_get_ref none~add_functional->xc_f03_func_reference_get_ref xc_f03_func_set_ext_params xc_f03_func_set_ext_params none~add_functional->xc_f03_func_set_ext_params xc_f03_hyb_cam_coef xc_f03_hyb_cam_coef none~add_functional->xc_f03_hyb_cam_coef xc_f03_hyb_exx_coef xc_f03_hyb_exx_coef none~add_functional->xc_f03_hyb_exx_coef none~add_slices->none~get~5 none~extend dft_grid_t%extend none~add_slices->none~extend none~setslice dft_grid_t%setSlice none~add_slices->none~setslice none~par_env_t_allreduce_byte par_env_t%par_env_t_allreduce_byte none~allreduce->none~par_env_t_allreduce_byte none~par_env_t_allreduce_c_bool par_env_t%par_env_t_allreduce_c_bool none~allreduce->none~par_env_t_allreduce_c_bool none~par_env_t_allreduce_dp_1d par_env_t%par_env_t_allreduce_dp_1d none~allreduce->none~par_env_t_allreduce_dp_1d none~par_env_t_allreduce_dp_2d par_env_t%par_env_t_allreduce_dp_2d none~allreduce->none~par_env_t_allreduce_dp_2d none~par_env_t_allreduce_dp_3d par_env_t%par_env_t_allreduce_dp_3d none~allreduce->none~par_env_t_allreduce_dp_3d none~par_env_t_allreduce_dp_4d par_env_t%par_env_t_allreduce_dp_4d none~allreduce->none~par_env_t_allreduce_dp_4d none~par_env_t_allreduce_dp_scalar par_env_t%par_env_t_allreduce_dp_scalar none~allreduce->none~par_env_t_allreduce_dp_scalar none~par_env_t_allreduce_int32_1d par_env_t%par_env_t_allreduce_int32_1d none~allreduce->none~par_env_t_allreduce_int32_1d none~par_env_t_allreduce_int32_scalar par_env_t%par_env_t_allreduce_int32_scalar none~allreduce->none~par_env_t_allreduce_int32_scalar none~par_env_t_allreduce_int64_1d par_env_t%par_env_t_allreduce_int64_1d none~allreduce->none~par_env_t_allreduce_int64_1d none~par_env_t_allreduce_int64_scalar par_env_t%par_env_t_allreduce_int64_scalar none~allreduce->none~par_env_t_allreduce_int64_scalar none~par_env_t_bcast_byte par_env_t%par_env_t_bcast_byte none~bcast->none~par_env_t_bcast_byte none~par_env_t_bcast_c_bool par_env_t%par_env_t_bcast_c_bool none~bcast->none~par_env_t_bcast_c_bool none~par_env_t_bcast_dp_1d par_env_t%par_env_t_bcast_dp_1d none~bcast->none~par_env_t_bcast_dp_1d none~par_env_t_bcast_dp_2d par_env_t%par_env_t_bcast_dp_2d none~bcast->none~par_env_t_bcast_dp_2d none~par_env_t_bcast_dp_3d par_env_t%par_env_t_bcast_dp_3d none~bcast->none~par_env_t_bcast_dp_3d none~par_env_t_bcast_dp_4d par_env_t%par_env_t_bcast_dp_4d none~bcast->none~par_env_t_bcast_dp_4d none~par_env_t_bcast_dp_scalar par_env_t%par_env_t_bcast_dp_scalar none~bcast->none~par_env_t_bcast_dp_scalar none~par_env_t_bcast_int32_1d par_env_t%par_env_t_bcast_int32_1d none~bcast->none~par_env_t_bcast_int32_1d none~par_env_t_bcast_int32_scalar par_env_t%par_env_t_bcast_int32_scalar none~bcast->none~par_env_t_bcast_int32_scalar none~par_env_t_bcast_int64_1d par_env_t%par_env_t_bcast_int64_1d none~bcast->none~par_env_t_bcast_int64_1d none~par_env_t_bcast_int64_scalar par_env_t%par_env_t_bcast_int64_scalar none~bcast->none~par_env_t_bcast_int64_scalar none~aoval basis_set%aoval none~compaos->none~aoval none~compmos xc_engine_t%compMOs none~compxc->none~compmos none~comprhoall xc_engine_t%compRhoAll none~compxc->none~comprhoall proc~compute~2 xc_libxc_t%compute none~compxc->proc~compute~2 xc_f03_func_end xc_f03_func_end none~destroy~2->xc_f03_func_end none~getslicenonzero->none~getbyid none~getenergy xc_lib_t%getEnergy none~getstats->none~getenergy none~check grid_3d_t%check none~get~5->none~check proc~init xc_libxc_t%init none~init~18->proc~init none~init~22 list_grid_3d_t%init none~init~21->none~init~22 none~resetprunedpointers xc_engine_t%resetPrunedPointers none~pruneaos->none~resetprunedpointers none~resetorbpointers~2 xc_engine_t%resetOrbPointers none~resetpointers->none~resetorbpointers~2 none~resetxcpointers xc_engine_t%resetXCPointers none~resetpointers->none~resetxcpointers proc~setpts xc_libxc_t%setPts none~resetpointers->proc~setpts none~set~4->none~get~5 none~push list_grid_3d_t%push none~set~4->none~push interface~compute_first_derivs compute_first_derivs proc~add_ecpder->interface~compute_first_derivs interface~free_integrator free_integrator proc~add_ecpder->interface~free_integrator interface~free_result free_result proc~add_ecpder->interface~free_result interface~init_integrator init_integrator proc~add_ecpder->interface~init_integrator interface~init_integrator_instance init_integrator_instance proc~add_ecpder->interface~init_integrator_instance interface~set_ecp_basis set_ecp_basis proc~add_ecpder->interface~set_ecp_basis none~bf_to_shell basis_set%bf_to_shell proc~add_ecpder->none~bf_to_shell none~evaluate rys_root_t%evaluate proc~comp_coulomb_der1->none~evaluate proc~comp_coulomb_helfeyder1->none~evaluate proc~doquadgausshermite doQuadGaussHermite proc~comp_kinetic_der1->proc~doquadgausshermite proc~comp_overlap_der1->proc~doquadgausshermite proc~grd2_rys_compute->none~evaluate proc~ints_exchange->interface~show_message proc~ints_exchange->none~alloc proc~ints_exchange->none~compute proc~ints_exchange->none~set libint2_cleanup_eri libint2_cleanup_eri proc~ints_exchange->libint2_cleanup_eri libint2_init_eri libint2_init_eri proc~ints_exchange->libint2_init_eri none~clean~2 int2_rys_data_t%clean proc~ints_exchange->none~clean~2 none~init~2 int2_rys_data_t%init proc~ints_exchange->none~init~2 none~set_ids int2_rys_data_t%set_ids proc~ints_exchange->none~set_ids proc~genr22 genr22 proc~ints_exchange->proc~genr22 proc~int2_rys_compute int2_rys_compute proc~ints_exchange->proc~int2_rys_compute proc~libint_compute_eri libint_compute_eri proc~ints_exchange->proc~libint_compute_eri proc~lebedev_get_grid->interface~show_message proc~oqp_dtpttr_i64->interface~show_message dtpttr dtpttr proc~oqp_dtpttr_i64->dtpttr proc~orthogonal_transform_sym->interface~show_message proc~orthogonal_transform_sym->proc~oqp_dgemm_i64 proc~orthogonal_transform_sym->proc~oqp_dtpttr_i64 proc~oqp_dsymm_i64 oqp_dsymm_i64 proc~orthogonal_transform_sym->proc~oqp_dsymm_i64 proc~oqp_dtrttp_i64 oqp_dtrttp_i64 proc~orthogonal_transform_sym->proc~oqp_dtrttp_i64 none~compaov basis_set%compAOv none~aoval->none~compaov none~compaovg basis_set%compAOvg none~aoval->none~compaovg none~compaovgg basis_set%compAOvgg none~aoval->none~compaovgg proc~mo_tran_gemm_ mo_tran_gemm_ none~compmos->proc~mo_tran_gemm_ proc~mo_tran_symm_ mo_tran_symm_ none~compmos->proc~mo_tran_symm_ none~clear~2 list_grid_3d_t%clear none~init~22->none~clear~2 mpi_allreduce mpi_allreduce none~par_env_t_allreduce_byte->mpi_allreduce none~par_env_t_allreduce_c_bool->mpi_allreduce none~par_env_t_allreduce_dp_1d->mpi_allreduce none~par_env_t_allreduce_dp_2d->mpi_allreduce none~par_env_t_allreduce_dp_3d->mpi_allreduce none~par_env_t_allreduce_dp_4d->mpi_allreduce none~par_env_t_allreduce_dp_scalar->mpi_allreduce none~par_env_t_allreduce_int32_1d->mpi_allreduce none~par_env_t_allreduce_int32_scalar->mpi_allreduce none~par_env_t_allreduce_int64_1d->mpi_allreduce none~par_env_t_allreduce_int64_scalar->mpi_allreduce mpi_bcast mpi_bcast none~par_env_t_bcast_byte->mpi_bcast none~par_env_t_bcast_c_bool->mpi_bcast none~par_env_t_bcast_dp_1d->mpi_bcast none~par_env_t_bcast_dp_2d->mpi_bcast none~par_env_t_bcast_dp_3d->mpi_bcast none~par_env_t_bcast_dp_4d->mpi_bcast none~par_env_t_bcast_dp_scalar->mpi_bcast none~par_env_t_bcast_int32_1d->mpi_bcast none~par_env_t_bcast_int32_scalar->mpi_bcast none~par_env_t_bcast_int64_1d->mpi_bcast none~par_env_t_bcast_int64_scalar->mpi_bcast none~calc_evfxc functional_t%calc_evfxc proc~compute~2->none~calc_evfxc none~calc_evxc functional_t%calc_evxc proc~compute~2->none~calc_evxc none~calc_xc functional_t%calc_xc proc~compute~2->none~calc_xc none~scalexc xc_lib_t%scalexc proc~compute~2->none~scalexc abrt abrt proc~doquadgausshermite->abrt fgrid fgrid proc~genr22->fgrid rfinc rfinc proc~genr22->rfinc rmr rmr proc~genr22->rmr xgrid xgrid proc~genr22->xgrid none~clean~13 xc_lib_t%clean proc~init->none~clean~13 none~resetenergy xc_lib_t%resetEnergy proc~init->none~resetenergy proc~int2_rys_compute->none~evaluate ab_x ab_x proc~libint_compute_eri->ab_x ab_y ab_y proc~libint_compute_eri->ab_y ab_z ab_z proc~libint_compute_eri->ab_z alpha1over_zetapluseta alpha1over_zetapluseta proc~libint_compute_eri->alpha1over_zetapluseta alpha1rho_over_zeta2 alpha1rho_over_zeta2 proc~libint_compute_eri->alpha1rho_over_zeta2 alpha2over_zetapluseta alpha2over_zetapluseta proc~libint_compute_eri->alpha2over_zetapluseta alpha2rho_over_zeta2 alpha2rho_over_zeta2 proc~libint_compute_eri->alpha2rho_over_zeta2 alpha3over_zetapluseta alpha3over_zetapluseta proc~libint_compute_eri->alpha3over_zetapluseta alpha3rho_over_eta2 alpha3rho_over_eta2 proc~libint_compute_eri->alpha3rho_over_eta2 alpha4over_zetapluseta alpha4over_zetapluseta proc~libint_compute_eri->alpha4over_zetapluseta alpha4rho_over_eta2 alpha4rho_over_eta2 proc~libint_compute_eri->alpha4rho_over_eta2 cd_x cd_x proc~libint_compute_eri->cd_x cd_y cd_y proc~libint_compute_eri->cd_y cd_z cd_z proc~libint_compute_eri->cd_z f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_0 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_0 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_0 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_1 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_1 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_1 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_10 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_10 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_10 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_11 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_11 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_11 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_12 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_12 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_12 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_13 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_13 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_13 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_14 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_14 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_14 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_15 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_15 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_15 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_16 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_16 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_16 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_17 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_17 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_17 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_18 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_18 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_18 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_19 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_19 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_19 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_2 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_2 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_2 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_20 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_20 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_20 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_3 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_3 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_3 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_4 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_4 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_4 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_5 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_5 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_5 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_6 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_6 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_6 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_7 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_7 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_7 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_8 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_8 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_8 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_9 f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_9 proc~libint_compute_eri->f_ab_s___0__s___1___twoprep_s___0__s___1___ab__up_9 proc~libint_compute_eri->fgrid igrid igrid proc~libint_compute_eri->igrid irgrd irgrd proc~libint_compute_eri->irgrd oo2e oo2e proc~libint_compute_eri->oo2e oo2z oo2z proc~libint_compute_eri->oo2z oo2ze oo2ze proc~libint_compute_eri->oo2ze pa_x pa_x proc~libint_compute_eri->pa_x pa_y pa_y proc~libint_compute_eri->pa_y pa_z pa_z proc~libint_compute_eri->pa_z qc_x qc_x proc~libint_compute_eri->qc_x qc_y qc_y proc~libint_compute_eri->qc_y qc_z qc_z proc~libint_compute_eri->qc_z proc~libint_compute_eri->rfinc rho12_over_alpha1 rho12_over_alpha1 proc~libint_compute_eri->rho12_over_alpha1 rho12_over_alpha2 rho12_over_alpha2 proc~libint_compute_eri->rho12_over_alpha2 rho34_over_alpha3 rho34_over_alpha3 proc~libint_compute_eri->rho34_over_alpha3 rho34_over_alpha4 rho34_over_alpha4 proc~libint_compute_eri->rho34_over_alpha4 proc~libint_compute_eri->rmr roe roe proc~libint_compute_eri->roe roz roz proc~libint_compute_eri->roz two_alpha0_bra two_alpha0_bra proc~libint_compute_eri->two_alpha0_bra two_alpha0_ket two_alpha0_ket proc~libint_compute_eri->two_alpha0_ket two_alpha1bra two_alpha1bra proc~libint_compute_eri->two_alpha1bra two_alpha1ket two_alpha1ket proc~libint_compute_eri->two_alpha1ket wp_x wp_x proc~libint_compute_eri->wp_x wp_y wp_y proc~libint_compute_eri->wp_y wp_z wp_z proc~libint_compute_eri->wp_z wq_x wq_x proc~libint_compute_eri->wq_x wq_y wq_y proc~libint_compute_eri->wq_y wq_z wq_z proc~libint_compute_eri->wq_z proc~oqp_dsymm_i64->interface~show_message dsymm dsymm proc~oqp_dsymm_i64->dsymm proc~oqp_dtrttp_i64->interface~show_message dtrttp dtrttp proc~oqp_dtrttp_i64->dtrttp none~calc_evfxc->interface~show_message none~calc_evfxc->xc_f03_func_info_get_family none~calc_evfxc->xc_f03_func_info_get_kind none~calc_evfxc->xc_f03_func_info_get_name xc_f03_gga_exc_vxc_fxc xc_f03_gga_exc_vxc_fxc none~calc_evfxc->xc_f03_gga_exc_vxc_fxc xc_f03_lda_exc_vxc_fxc xc_f03_lda_exc_vxc_fxc none~calc_evfxc->xc_f03_lda_exc_vxc_fxc xc_f03_mgga_exc_vxc_fxc xc_f03_mgga_exc_vxc_fxc none~calc_evfxc->xc_f03_mgga_exc_vxc_fxc none~calc_evxc->interface~show_message none~calc_evxc->xc_f03_func_info_get_family none~calc_evxc->xc_f03_func_info_get_kind none~calc_evxc->xc_f03_func_info_get_name xc_f03_gga_exc_vxc xc_f03_gga_exc_vxc none~calc_evxc->xc_f03_gga_exc_vxc xc_f03_lda_exc_vxc xc_f03_lda_exc_vxc none~calc_evxc->xc_f03_lda_exc_vxc xc_f03_mgga_exc_vxc xc_f03_mgga_exc_vxc none~calc_evxc->xc_f03_mgga_exc_vxc none~calc_xc->interface~show_message none~calc_xc->xc_f03_func_info_get_family none~calc_xc->xc_f03_func_info_get_kind none~calc_xc->xc_f03_func_info_get_name xc_f03_gga_exc_vxc_fxc_kxc xc_f03_gga_exc_vxc_fxc_kxc none~calc_xc->xc_f03_gga_exc_vxc_fxc_kxc xc_f03_lda_exc_vxc_fxc_kxc xc_f03_lda_exc_vxc_fxc_kxc none~calc_xc->xc_f03_lda_exc_vxc_fxc_kxc xc_f03_mgga_exc_vxc_fxc_kxc xc_f03_mgga_exc_vxc_fxc_kxc none~calc_xc->xc_f03_mgga_exc_vxc_fxc_kxc proc~mo_tran_gemm_->proc~oqp_dgemm_i64 proc~mo_tran_symm_->proc~oqp_dsymm_i64

Source Code

  subroutine tdhf_gradient_C(c_handle) bind(C, name="tdhf_gradient")

    use c_interop, only: oqp_handle_t, oqp_handle_get_info
    use strings, only: Cstring

    implicit none

    type(oqp_handle_t) :: c_handle
    type(information), pointer :: inf

    inf => oqp_handle_get_info(c_handle)
    call tdhf_gradient(inf)

  end subroutine tdhf_gradient_c