8 #include "sll_working_precision.h"
25 procedure(signature_compute_phi_from_rho_2d),
deferred, pass(poisson) :: &
29 procedure(signature_compute_e_from_rho_2d),
deferred, pass(poisson) :: &
33 procedure(signature_norm_squared),
deferred :: &
36 procedure(signature_update_dofs_function),
deferred :: &
37 compute_rhs_from_function
39 procedure(signature_empty),
deferred :: &
49 sll_real64,
intent(in) :: x(:)
53 #ifndef DOXYGEN_SHOULD_SKIP_THIS
59 subroutine signature_compute_phi_from_rho_2d(poisson, phi, rho)
65 sll_real64,
dimension(:, :),
intent(in) :: rho
66 sll_real64,
dimension(:, :),
intent(out) :: phi
68 end subroutine signature_compute_phi_from_rho_2d
74 subroutine signature_compute_e_from_rho_2d(poisson, E1, E2, rho)
80 sll_real64,
dimension(:, :),
intent(in) :: rho
81 sll_real64,
dimension(:, :),
intent(out) :: e1
82 sll_real64,
dimension(:, :),
intent(out) :: e2
84 end subroutine signature_compute_e_from_rho_2d
89 function signature_norm_squared(poisson, coefs_dofs)
result(r)
93 sll_real64,
intent(in) :: coefs_dofs(:, :)
95 end function signature_norm_squared
100 subroutine signature_update_dofs_function(poisson, func, coefs_dofs)
106 sll_real64,
intent(out) :: coefs_dofs(:)
107 end subroutine signature_update_dofs_function
114 subroutine signature_empty(poisson)
118 end subroutine signature_empty
122 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
Module interface to solve Poisson equation in 2D.
Module to select the kind parameter.