55 type(
field_t),
intent(inout) :: s
56 real(kind=
rp),
intent(in) :: ref_value
57 real(kind=
rp),
intent(in) :: g(3)
58 real(kind=
rp),
intent(in) :: beta
59 integer :: n_fields, i, n
61 n_fields = fields%size()
62 n = fields%item_size(1)
66 call device_cadd(fields%x_d(i), -g(i)*beta*ref_value, n)
Implements the device kernel for the boussinesq_source_term_t type.
subroutine, public boussinesq_source_term_compute_device(fields, s, ref_value, g, beta)
Computes the Boussinesq source term on the device.
subroutine, public device_add2s2(a_d, b_d, c1, n)
Vector addition with scalar multiplication (multiplication on first argument)
subroutine, public device_cadd(a_d, c, n)
Add a scalar to vector .
integer, parameter, public rp
Global precision used in computations.
field_list_t, To be able to group fields together