38 use,
intrinsic :: iso_c_binding, only : c_ptr
45 real(kind=
rp),
private :: g
62 integer,
intent(in) :: n
63 real(kind=
rp),
intent(inout),
dimension(n) :: x
64 real(kind=
rp),
intent(in),
optional :: t
65 integer,
intent(in),
optional :: tstep
79 integer,
intent(in) :: n
80 real(kind=
rp),
intent(inout),
dimension(n) :: x
81 real(kind=
rp),
intent(inout),
dimension(n) :: y
82 real(kind=
rp),
intent(inout),
dimension(n) :: z
83 real(kind=
rp),
intent(in),
optional :: t
84 integer,
intent(in),
optional :: tstep
102 real(kind=
rp),
intent(in),
optional :: t
103 integer,
intent(in),
optional :: tstep
106 this%g,
size(this%msk))
117 real(kind=
rp),
intent(in),
optional :: t
118 integer,
intent(in),
optional :: tstep
121 this%g,
size(this%msk))
128 real(kind=
rp),
intent(in) :: g
Defines a boundary condition.
subroutine, public device_dirichlet_apply_scalar(msk, x, g, m)
subroutine, public device_dirichlet_apply_vector(msk, x, y, z, g, m)
Defines a dirichlet boundary condition.
subroutine dirichlet_free(this)
Destructor.
subroutine dirichlet_apply_vector_dev(this, x_d, y_d, z_d, t, tstep)
Boundary condition apply for a generic Dirichlet condition to vectors x, y and z (device version)
subroutine dirichlet_apply_scalar_dev(this, x_d, t, tstep)
Boundary condition apply for a generic Dirichlet condition to a vector x (device version)
subroutine dirichlet_set_g(this, g)
Set value of .
subroutine dirichlet_apply_scalar(this, x, n, t, tstep)
Boundary condition apply for a generic Dirichlet condition to a vector x.
subroutine dirichlet_apply_vector(this, x, y, z, n, t, tstep)
Boundary condition apply for a generic Dirichlet condition to vectors x, y and z.
integer, parameter, public rp
Global precision used in computations.
Base type for a boundary condition.
Generic Dirichlet boundary condition on .