35  use, 
intrinsic :: iso_c_binding, only: c_ptr, c_int
 
   45          gamma, p_d, rho_d, n) &
 
   46          bind(c, name = 
'hip_compute_max_wave_speed')
 
   47       use, 
intrinsic :: iso_c_binding
 
   49       type(c_ptr), 
value :: max_wave_speed_d, u_d, v_d, w_d, p_d, rho_d
 
 
   57          bind(c, name = 
'hip_compute_entropy')
 
   58       use, 
intrinsic :: iso_c_binding
 
   60       type(c_ptr), 
value :: S_d, p_d, rho_d
 
 
   69          gamma, p_d, rho_d, n) &
 
   70          bind(c, name = 
'cuda_compute_max_wave_speed')
 
   71       use, 
intrinsic :: iso_c_binding
 
   73       type(c_ptr), 
value :: max_wave_speed_d, u_d, v_d, w_d, p_d, rho_d
 
   81          bind(c, name = 
'cuda_compute_entropy')
 
   82       use, 
intrinsic :: iso_c_binding
 
   84       type(c_ptr), 
value :: S_d, p_d, rho_d
 
   93          gamma, p_d, rho_d, n) &
 
   94          bind(c, name = 
'opencl_compute_max_wave_speed')
 
   95       use, 
intrinsic :: iso_c_binding
 
   97       type(c_ptr), 
value :: max_wave_speed_d, u_d, v_d, w_d, p_d, rho_d
 
   98       real(c_rp), 
value :: gamma
 
   99       integer(c_int), 
value :: n
 
  105          bind(c, name = 
'opencl_compute_entropy')
 
  106       use, 
intrinsic :: iso_c_binding
 
  108       type(c_ptr), 
value :: S_d, p_d, rho_d
 
  109       real(c_rp), 
value :: gamma
 
  110       integer(c_int), 
value :: n
 
  122    integer, 
intent(in) :: n
 
  123    real(kind=
rp), 
intent(in) :: gamma
 
  124    type(
field_t), 
intent(inout) :: max_wave_speed
 
  125    type(
field_t), 
intent(in) :: u, v, w, p, rho
 
  134    call neko_error(
'No device backend configured')
 
 
  140    integer, 
intent(in) :: n
 
  141    real(kind=
rp), 
intent(in) :: gamma
 
  142    type(
field_t), 
intent(inout) :: s
 
  143    type(
field_t), 
intent(in) :: p, rho
 
  152    call neko_error(
'No device backend configured')
 
 
void opencl_compute_entropy(void *S_d, void *p_d, void *rho_d, real gamma, int n)
 
void cuda_compute_entropy(void *S_d, void *p_d, void *rho_d, real *gamma, int *n)
 
void opencl_compute_max_wave_speed(void *max_wave_speed, void *u, void *v, void *w, real gamma, void *p, void *rho, int n)
 
void cuda_compute_max_wave_speed(void *max_wave_speed_d, void *u_d, void *v_d, void *w_d, real *gamma, void *p_d, void *rho_d, int *n)
 
Device implementation of compressible flow operations.
 
subroutine, public compressible_ops_device_compute_entropy(s, p, rho, gamma, n)
Compute entropy field S = 1/(gamma-1) * rho * (log(p) - gamma * log(rho)) on device.
 
subroutine, public compressible_ops_device_compute_max_wave_speed(max_wave_speed, u, v, w, gamma, p, rho, n)
Compute maximum wave speed for compressible flows on device.
 
integer, parameter, public c_rp
 
integer, parameter, public rp
Global precision used in computations.