Defines a Neumann boundary condition.
|
type | neumann_t |
| A Neumann boundary condition for scalar fields. Sets the flux of the field to the chosen value. More...
|
|
|
subroutine | neumann_apply_scalar (this, x, n, t, tstep) |
| Boundary condition apply for a generic Neumann condition to a vector x. More...
|
|
subroutine | neumann_apply_vector (this, x, y, z, n, t, tstep) |
| Boundary condition apply for a generic Neumann condition to vectors x, y and z. More...
|
|
subroutine | neumann_apply_scalar_dev (this, x_d, t, tstep) |
| Boundary condition apply for a generic Neumann condition to a vector x (device version) More...
|
|
subroutine | neumann_apply_vector_dev (this, x_d, y_d, z_d, t, tstep) |
| Boundary condition apply for a generic Neumann condition to vectors x, y and z (device version) More...
|
|
subroutine | neumann_free (this) |
| Destructor. More...
|
|
pure real(kind=rp) function, dimension(this%msk(0)) | neumann_flux (this) |
| Get the flux. More...
|
|
subroutine | neumann_set_flux_scalar (this, flux) |
| Set the flux using a scalar. More...
|
|
subroutine | neumann_set_flux_array (this, flux) |
| Set the flux using an array of values. More...
|
|
subroutine | neumann_finalize_neumann (this, flux) |
| Finalize by setting the flux. More...
|
|
◆ neumann_apply_scalar()
subroutine neumann::neumann_apply_scalar |
( |
class(neumann_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
x, |
|
|
integer, intent(in) |
n, |
|
|
real(kind=rp), intent(in), optional |
t, |
|
|
integer, intent(in), optional |
tstep |
|
) |
| |
◆ neumann_apply_scalar_dev()
subroutine neumann::neumann_apply_scalar_dev |
( |
class(neumann_t), intent(inout), target |
this, |
|
|
type(c_ptr) |
x_d, |
|
|
real(kind=rp), intent(in), optional |
t, |
|
|
integer, intent(in), optional |
tstep |
|
) |
| |
|
private |
◆ neumann_apply_vector()
subroutine neumann::neumann_apply_vector |
( |
class(neumann_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
x, |
|
|
real(kind=rp), dimension(n), intent(inout) |
y, |
|
|
real(kind=rp), dimension(n), intent(inout) |
z, |
|
|
integer, intent(in) |
n, |
|
|
real(kind=rp), intent(in), optional |
t, |
|
|
integer, intent(in), optional |
tstep |
|
) |
| |
|
private |
◆ neumann_apply_vector_dev()
subroutine neumann::neumann_apply_vector_dev |
( |
class(neumann_t), intent(inout), target |
this, |
|
|
type(c_ptr) |
x_d, |
|
|
type(c_ptr) |
y_d, |
|
|
type(c_ptr) |
z_d, |
|
|
real(kind=rp), intent(in), optional |
t, |
|
|
integer, intent(in), optional |
tstep |
|
) |
| |
|
private |
◆ neumann_finalize_neumann()
subroutine neumann::neumann_finalize_neumann |
( |
class(neumann_t), intent(inout) |
this, |
|
|
real(kind=rp), intent(in) |
flux |
|
) |
| |
|
private |
◆ neumann_flux()
pure real(kind=rp) function, dimension(this%msk(0)) neumann::neumann_flux |
( |
class(neumann_t), intent(in) |
this | ) |
|
|
private |
◆ neumann_free()
subroutine neumann::neumann_free |
( |
class(neumann_t), intent(inout), target |
this | ) |
|
|
private |
◆ neumann_set_flux_array()
subroutine neumann::neumann_set_flux_array |
( |
class(neumann_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(this%msk(0)), intent(in) |
flux |
|
) |
| |
|
private |
◆ neumann_set_flux_scalar()
subroutine neumann::neumann_set_flux_scalar |
( |
class(neumann_t), intent(inout) |
this, |
|
|
real(kind=rp), intent(in) |
flux |
|
) |
| |
|
private |