An extended Lagrangian object that represents an element from the IB tesselation.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=wp), | public | :: | SA |
Sufrace area |
|||
| integer, | public | :: | c(3) |
nearest cell |
|||
| real(kind=wp), | public | :: | f(3) |
marker forcing |
|||
| integer(kind=leapI8), | public | :: | id |
Identifying number (inactive if <0) |
|||
| real(kind=wp), | public | :: | n(3) |
normal at the marker |
|||
| real(kind=wp), | public | :: | p(3) |
position |
|||
| real(kind=wp), | public | :: | pold(3) |
Old position |
|||
| integer, | public | :: | s |
A tag |
|||
| integer, | public | :: | t |
Another tag |
|||
| real(kind=wp), | public | :: | v(3) |
marker velocity |
|||
| real(kind=wp), | public | :: | vold(3) |
Old velocity |
Gets a bump function centered on the lagrangian object.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lagrangian_obj), | intent(in) | :: | this |
A Lagrangian object |
||
| real(kind=wp), | intent(in) | :: | l_filter |
Filter size |
||
| integer, | intent(in) | :: | slo(3) |
Stencil lower bound |
||
| integer, | intent(in) | :: | shi(3) |
Stencil higher bound |
||
| type(block_obj), | intent(in), | pointer | :: | block |
A block object |
|
| procedure(kernel_1D), | intent(in), | pointer | :: | int_g1ex |
Integrated filter kernel |
|
| real(kind=wp), | intent(out), | allocatable | :: | bump(:,:,:) |
The bump function |
Interpolates a field f defined on an Eulerian stencil to the location of a lagrangian object
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lagrangian_obj), | intent(in) | :: | this |
A Lagrangian object |
||
| real(kind=wp), | intent(in) | :: | l_filter |
Filter size |
||
| integer, | intent(in) | :: | slo(3) |
Stencil lower bound |
||
| integer, | intent(in) | :: | shi(3) |
Stencil higher bound |
||
| type(block_obj), | intent(in), | pointer | :: | block |
A block object |
|
| procedure(kernel_1D), | intent(in), | pointer | :: | g1in |
Filter kernel |
|
| real(kind=wp), | intent(in) | :: | f(slo(1):shi(1),slo(2):shi(2),slo(3):shi(3)) |
Quantity to interpolate |
Locates a Lagrangian object on an external grid. Returns the location of the cell containing the object.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(lagrangian_obj), | intent(in) | :: | this |
A Lagrangian object |
||
| class(block_obj), | intent(in) | :: | block |
External block |
Result
Assignment
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(marker_obj), | intent(inout) | :: | this |
An element from the IB tessellation |
||
| class(lagrangian_obj), | intent(in) | :: | val |
An element from the IB tessellation |
Assignment
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(ResPart_obj), | intent(inout) | :: | this | |||
| class(lagrangian_obj), | intent(in) | :: | val |
type, extends (lagrangian_obj) :: marker_obj !> An extended Lagrangian object that represents an element from the IB ! tesselation. integer :: s !! A tag integer :: t !! Another tag real(wp) :: SA !! Sufrace area real(wp) :: n(3) !! normal at the marker real(wp) :: v(3) !! marker velocity real(wp) :: f(3) !! marker forcing real(wp) :: pold(3) !! Old position real(wp) :: vold(3) !! Old velocity contains procedure :: assign => marker_obj_assign end type marker_obj