Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
scalar_residual_sx.f90
Go to the documentation of this file.
1
4 use ax_product, only : ax_t
5 use field, only : field_t
6 use coefs, only : coef_t
7 use space, only : space_t
8 use mesh, only : mesh_t
9 use num_types, only : rp
10 use math, only : copy, cfill
11 use field, only : field_t
12 use mesh, only : mesh_t
13 use ax_product, only : ax_t
14 use space, only : space_t
15 use coefs, only : coef_t
16 implicit none
17 private
18
19 type, public, extends(scalar_residual_t) :: scalar_residual_sx_t
20 contains
21 procedure, nopass :: compute => scalar_residual_sx_compute
23
24contains
25
26 subroutine scalar_residual_sx_compute(Ax, s, s_res, f_Xh, c_Xh, msh, Xh, &
27 lambda, rhocp, bd, dt, n)
28 class(ax_t), intent(in) :: Ax
29 type(mesh_t), intent(inout) :: msh
30 type(space_t), intent(inout) :: Xh
31 type(field_t), intent(inout) :: s
32 type(field_t), intent(inout) :: s_res
33 type(field_t), intent(in) :: f_Xh
34 type(coef_t), intent(inout) :: c_Xh
35 type(field_t), intent(in) :: lambda
36 real(kind=rp), intent(in) :: rhocp
37 real(kind=rp), intent(in) :: bd
38 real(kind=rp), intent(in) :: dt
39 integer, intent(in) :: n
40 integer :: i
41
42 call copy(c_xh%h1, lambda%x, n)
43 call cfill(c_xh%h2, rhocp * bd / dt, n)
44 c_xh%ifh2 = .true.
45
46 call ax%compute(s_res%x, s%x, c_xh, msh, xh)
47
48 do i = 1, n
49 s_res%x(i,1,1,1) = (-s_res%x(i,1,1,1)) + f_xh%x(i,1,1,1)
50 end do
51
52 end subroutine scalar_residual_sx_compute
53
54end module scalar_residual_sx
Defines a Matrix-vector product.
Definition ax.f90:34
Coefficients.
Definition coef.f90:34
Defines a field.
Definition field.f90:34
Definition math.f90:60
subroutine, public cfill(a, c, n)
Set all elements to a constant c .
Definition math.f90:347
subroutine, public copy(a, b, n)
Copy a vector .
Definition math.f90:238
Defines a mesh.
Definition mesh.f90:34
integer, parameter, public rp
Global precision used in computations.
Definition num_types.f90:12
Residuals in the Pn-Pn formulation (SX version)
subroutine scalar_residual_sx_compute(ax, s, s_res, f_xh, c_xh, msh, xh, lambda, rhocp, bd, dt, n)
Defines the residual for the scalar transport equation.
Defines a function space.
Definition space.f90:34
Base type for a matrix-vector product providing .
Definition ax.f90:43
Coefficients defined on a given (mesh, ) tuple. Arrays use indices (i,j,k,e): element e,...
Definition coef.f90:55
Abstract type to compute scalar residual.
The function space for the SEM solution fields.
Definition space.f90:62