m_cuda_kernels_fieldops Module


Uses

  • module~~m_cuda_kernels_fieldops~~UsesGraph module~m_cuda_kernels_fieldops m_cuda_kernels_fieldops cudafor cudafor module~m_cuda_kernels_fieldops->cudafor module~m_common m_common module~m_cuda_kernels_fieldops->module~m_common module~m_cuda_common m_cuda_common module~m_cuda_kernels_fieldops->module~m_cuda_common mpi mpi module~m_common->mpi

Used by

  • module~~m_cuda_kernels_fieldops~~UsedByGraph module~m_cuda_kernels_fieldops m_cuda_kernels_fieldops module~m_cuda_backend m_cuda_backend module~m_cuda_backend->module~m_cuda_kernels_fieldops program~xcompact xcompact program~xcompact->module~m_cuda_backend

Subroutines

public subroutine copy(n, dst, src)

Arguments

Type IntentOptional Attributes Name
integer, intent(in), value :: n
real(kind=dp), intent(out), device, dimension(:, :, :) :: dst
real(kind=dp), intent(in), device, dimension(:, :, :) :: src

public subroutine axpby(n, alpha, x, beta, y)

Arguments

Type IntentOptional Attributes Name
integer, intent(in), value :: n
real(kind=dp), intent(in), value :: alpha
real(kind=dp), intent(in), device, dimension(:, :, :) :: x
real(kind=dp), intent(in), value :: beta
real(kind=dp), intent(inout), device, dimension(:, :, :) :: y

public subroutine pwmul(y, x, n)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device, dimension(:, :, :) :: y
real(kind=dp), intent(in), device, dimension(:, :, :) :: x
integer, intent(in), value :: n

public subroutine buffer_copy(u_send_s, u_send_e, u, n, n_halo)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device, dimension(:, :, :) :: u_send_s
real(kind=dp), intent(inout), device, dimension(:, :, :) :: u_send_e
real(kind=dp), intent(in), device, dimension(:, :, :) :: u
integer, intent(in), value :: n
integer, intent(in), value :: n_halo

public subroutine field_scale(f, alpha, n)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device, dimension(:, :, :) :: f
real(kind=dp), intent(in), value :: alpha
integer, intent(in), value :: n

public subroutine field_shift(f, const, n)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device, dimension(:, :, :) :: f
real(kind=dp), intent(in), value :: const
integer, intent(in), value :: n

public subroutine scalar_product(s, x, y, n, n_i_pad, n_j)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device :: s
real(kind=dp), intent(in), device, dimension(:, :, :) :: x
real(kind=dp), intent(in), device, dimension(:, :, :) :: y
integer, intent(in), value :: n
integer, intent(in), value :: n_i_pad
integer, intent(in), value :: n_j

public subroutine field_max_sum(max_f, sum_f, f, n, n_i_pad, n_j)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device :: max_f
real(kind=dp), intent(inout), device :: sum_f
real(kind=dp), intent(in), device, dimension(:, :, :) :: f
integer, intent(in), value :: n
integer, intent(in), value :: n_i_pad
integer, intent(in), value :: n_j

public subroutine field_set_y_face(f, c_start, c_end, flow_rate_diff, nx, ny, nz)

Set domain Y_FACE boundary values. c_start: Dirichlet value applied at the bottom face (j = 1) c_end: Dirichlet value applied at the top face (j = ny)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device, dimension(:, :, :) :: f
real(kind=dp), intent(in), value :: c_start
real(kind=dp), intent(in), value :: c_end
real(kind=dp), intent(in), value :: flow_rate_diff
integer, intent(in), value :: nx
integer, intent(in), value :: ny
integer, intent(in), value :: nz

public subroutine field_set_x_face(f, c_start, c_end, bc_start, bc_end, flow_rate_diff, nx, ny, nz)

Set domain X_FACE boundary values. c_start: Dirichlet value applied at the left face (i = 1) c_end: convective velocity Uc = uxmax * gdt / dx, used as multiplier in the outflow scheme du/dt + Uc*du/dx = 0

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device, dimension(:, :, :) :: f
real(kind=dp), intent(in), value :: c_start
real(kind=dp), intent(in), value :: c_end
integer, intent(in), value :: bc_start
integer, intent(in), value :: bc_end
real(kind=dp), intent(in), value :: flow_rate_diff
integer, intent(in), value :: nx
integer, intent(in), value :: ny
integer, intent(in), value :: nz

public subroutine volume_integral(s, f, n, n_i_pad, n_j)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), device :: s
real(kind=dp), intent(in), device, dimension(:, :, :) :: f
integer, intent(in), value :: n
integer, intent(in), value :: n_i_pad
integer, intent(in), value :: n_j