43  use, 
intrinsic :: iso_c_binding, only : c_ptr
 
   50     procedure(
prs_res), 
nopass, 
deferred :: compute
 
 
   56     procedure(
vel_res), 
nopass, 
deferred :: compute
 
 
   60     subroutine prs_res(p, p_res, u, v, w, u_e, v_e, w_e, f_x, f_y, f_z, c_xh,&
 
   61          gs_Xh, bc_prs_surface, bc_sym_surface, Ax, bd, dt, mu, rho, event)
 
   69       type(
field_t), 
intent(inout) :: p, u, v, w
 
   70       type(
field_t), 
intent(in) :: u_e, v_e, w_e
 
   71       type(
field_t), 
intent(inout) :: p_res
 
   73       type(
field_t), 
intent(in) :: f_x, f_y, f_z
 
   74       type(
coef_t), 
intent(inout) :: c_Xh
 
   75       type(
gs_t), 
intent(inout) :: gs_Xh
 
   78       class(
ax_t), 
intent(inout) :: Ax
 
   79       real(kind=
rp), 
intent(in) :: bd
 
   80       real(kind=
rp), 
intent(in) :: dt
 
   82       type(
field_t), 
intent(in) :: rho
 
   83       type(c_ptr), 
intent(inout) :: event
 
 
   88     subroutine vel_res(Ax, u, v, w, u_res, v_res, w_res, &
 
   89          p, f_x, f_y, f_z, c_Xh, msh, Xh, mu, rho, bd, dt, n)
 
   98       class(
ax_t), 
intent(in) :: Ax
 
   99       type(
mesh_t), 
intent(inout) :: msh
 
  100       type(
space_t), 
intent(inout) :: Xh
 
  101       type(
field_t), 
intent(inout) :: p, u, v, w
 
  102       type(
field_t), 
intent(inout) :: u_res, v_res, w_res
 
  103       type(
field_t), 
intent(in) :: f_x, f_y, f_z
 
  104       type(
coef_t), 
intent(inout) :: c_Xh
 
  105       type(
field_t), 
intent(in) :: mu
 
  106       type(
field_t), 
intent(in) :: rho
 
  107       real(kind=
rp), 
intent(in) :: bd
 
  108       real(kind=
rp), 
intent(in) :: dt
 
  109       integer, 
intent(in) :: n
 
 
  120     module subroutine pnpn_prs_res_factory(object)
 
  121       class(pnpn_prs_res_t), 
allocatable, 
intent(inout) :: object
 
  122     end subroutine pnpn_prs_res_factory
 
  128     module subroutine pnpn_vel_res_factory(object)
 
  129       class(pnpn_vel_res_t), 
allocatable, 
intent(inout) :: object
 
  130     end subroutine pnpn_vel_res_factory
 
  136     module subroutine pnpn_prs_res_stress_factory(object)
 
  137       class(pnpn_prs_res_t), 
allocatable, 
intent(inout) :: object
 
  138     end subroutine pnpn_prs_res_stress_factory
 
  144     module subroutine pnpn_vel_res_stress_factory(object)
 
  145       class(pnpn_vel_res_t), 
allocatable, 
intent(inout) :: object
 
  146     end subroutine pnpn_vel_res_stress_factory
 
  150  public :: pnpn_prs_res_factory, pnpn_vel_res_factory, &
 
  151       pnpn_prs_res_stress_factory, pnpn_vel_res_stress_factory
 
Defines a Matrix-vector product.
 
Dirichlet condition applied in the facet normal direction.
 
integer, parameter, public rp
Global precision used in computations.
 
Defines Pressure and velocity residuals in the Pn-Pn formulation.
 
Defines a function space.
 
Base type for a matrix-vector product providing .
 
Coefficients defined on a given (mesh, ) tuple. Arrays use indices (i,j,k,e): element e,...
 
Dirichlet condition in facet normal direction.
 
Abstract type to compute pressure residual.
 
Abstract type to compute velocity residual.
 
The function space for the SEM solution fields.