Defines inflow dirichlet conditions.
|
type | field_dirichlet_t |
| User defined dirichlet condition, for which the user can work with an entire field. The type stores a separate dummy field field_bc , which is passed to the user routine and can be populated with arbitrary values. The boundary condition then copy-pastes these values to the actual solution field using the mask of the boundary condition. So, in the end, only the relevant boundary values are updated. More...
|
|
interface | field_dirichlet_update |
| Abstract interface defining a dirichlet condition on a list of fields. More...
|
|
|
subroutine | field_dirichlet_init (this, bc_name) |
| Initializes thisfield_bc.
|
|
subroutine | field_dirichlet_free (this) |
| Destructor. Currently thisfield_bc is being freed in fluid_scheme::free
|
|
subroutine | field_dirichlet_apply_scalar (this, x, n, t, tstep) |
| Apply scalar by performing a masked copy.
|
|
subroutine | field_dirichlet_apply_scalar_dev (this, x_d, t, tstep) |
| Apply scalar (device).
|
|
subroutine | field_dirichlet_apply_vector (this, x, y, z, n, t, tstep) |
| (No-op) Apply vector.
|
|
subroutine | field_dirichlet_apply_vector_dev (this, x_d, y_d, z_d, t, tstep) |
| (No-op) Apply vector (device).
|
|
◆ field_dirichlet_apply_scalar()
subroutine field_dirichlet::field_dirichlet_apply_scalar |
( |
class(field_dirichlet_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 |
|
) |
| |
|
private |
- Parameters
-
x | Field onto which to copy the values (e.g. u,v,w,p or s). |
n | Size of the array x . |
t | Time. |
tstep | Time step. |
Definition at line 146 of file field_dirichlet.f90.
◆ field_dirichlet_apply_scalar_dev()
- Parameters
-
x_d | Device pointer to the field onto which to copy the values. |
t | Time. |
tstep | Time step. |
Definition at line 163 of file field_dirichlet.f90.
◆ field_dirichlet_apply_vector()
subroutine field_dirichlet::field_dirichlet_apply_vector |
( |
class(field_dirichlet_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 |
- Parameters
-
x | x-component of the field onto which to apply the values. |
y | y-component of the field onto which to apply the values. |
z | z-component of the field onto which to apply the values. |
n | Size of the x , y and z arrays. |
t | Time. |
tstep | Time step. |
Definition at line 183 of file field_dirichlet.f90.
◆ field_dirichlet_apply_vector_dev()
subroutine field_dirichlet::field_dirichlet_apply_vector_dev |
( |
class(field_dirichlet_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 |
- Parameters
-
x | x-component of the field onto which to apply the values. |
y | y-component of the field onto which to apply the values. |
z | z-component of the field onto which to apply the values. |
t | Time. |
tstep | Time step. |
Definition at line 203 of file field_dirichlet.f90.
◆ field_dirichlet_free()
◆ field_dirichlet_init()