|
Neko 1.99.7
A portable framework for high-order spectral element flow simulations
|
Implements the boundary_data_t type.
Data Types | |
| type | boundary_data_t |
| Collects data on the boundary points of one or more labelled zones and perform some bounary operations. More... | |
Functions/Subroutines | |
| subroutine | boundary_data_init (this, coef, zone_indices, outward_normals) |
| Build the boundary point mask and gather the geometry. | |
| subroutine | boundary_data_free (this) |
| Destructor. | |
| subroutine | boundary_data_update_geometry (this) |
| Re-gather the coordinates, normals and surface weights. | |
| pure logical function | boundary_data_is_geometry (name) |
Whether name refers to one of the geometry attributes. | |
| subroutine | boundary_data_get_vector_by_name (this, name, v) |
| Sample a named quantity at the boundary points into a vector. | |
| subroutine | boundary_data_get_vector_by_field (this, f, v) |
| Sample a field at the boundary points into a vector. | |
| subroutine | boundary_data_scatter_to_field_by_vector (this, v, f, clear) |
| Scatter a boundary vector back into a full field. | |
| subroutine | boundary_data_scatter_to_field_by_name (this, name, f, clear) |
| Scatter a named boundary quantity into a full field. | |
| subroutine | boundary_data_tangential_inplace (this, vx, vy, vz) |
Keep only the wall tangential part of a vector at the boundary points, in place. Each component is overwritten with v - (v . n) n. | |
| subroutine | boundary_data_tangential_split (this, vx, vy, vz, tx, ty, tz) |
Wall tangential part of a vector at the boundary points, out of place. The input (vx, vy, vz) is left unchanged and (tx, ty, tz) receive v - (v . n) n. | |
| subroutine | boundary_data_normal_inplace (this, vx, vy, vz) |
Keep only the wall normal part of a vector at the boundary points, in place. Each component is overwritten with (v . n) n. | |
| subroutine | boundary_data_normal_split (this, vx, vy, vz, nx, ny, nz) |
Wall normal part of a vector at the boundary points, out of place. The input (vx, vy, vz) is left unchanged and (nx, ny, nz) receive (v . n) n. | |
| real(kind=rp) function | boundary_data_integrate_by_name (this, name) |
| Surface integral of a named quantity over the zones. | |
| real(kind=rp) function | boundary_data_integrate_by_field (this, f) |
| Surface integral of a field over the zones. | |
| real(kind=rp) function | boundary_data_surface_area (this) |
| Total surface area of the zones. | |
| real(kind=rp) function | boundary_data_average_by_name (this, name) |
| Area weighted average of a named quantity over the zones. | |
| real(kind=rp) function | boundary_data_average_by_field (this, f) |
| Area weighted average of a field over the zones. | |
| real(kind=rp) function, dimension(3) | boundary_data_centroid (this) |
| Area weighted geometric centre of the zones. | |
| real(kind=rp) function, dimension(3) | boundary_data_point_average (this) |
| Unweighted mean of the boundary point coordinates. | |
| real(kind=rp) function, dimension(3) | boundary_data_integrate_vector_by_field (this, fx, fy, fz) |
| Surface integral of a vector quantity, component by component. | |
| real(kind=rp) function, dimension(3) | boundary_data_integrate_vector_by_name (this, fx, fy, fz) |
| Surface integral of a named vector quantity, component by component. | |
| real(kind=rp) function | boundary_data_flux_by_field (this, u, v, w) |
| Flux of a vector quantity through the zones. | |
| real(kind=rp) function | boundary_data_flux_by_name (this, u, v, w) |
| Flux of a named vector quantity through the zones. | |
| real(kind=rp) function, dimension(3) | boundary_data_integrate_normal_by_field (this, f) |
| Surface integral of a scalar quantity times the normal. | |
| real(kind=rp) function, dimension(3) | boundary_data_integrate_normal_by_name (this, name) |
| Surface integral of a named scalar quantity times the normal. | |
|
private |
| f | The field to average. |
Definition at line 582 of file boundary_data.f90.
|
private |
| name | The quantity to average. |
Definition at line 565 of file boundary_data.f90.
|
private |
| u | The x component. |
| v | The y component. |
| w | The z component. |
Definition at line 663 of file boundary_data.f90.

|
private |
| u | The name of the x component. |
| v | The name of the y component. |
| w | The name of the z component. |
Definition at line 681 of file boundary_data.f90.

|
private |
Definition at line 221 of file boundary_data.f90.
|
private |
| f | The source field, which must live on the same dofmap. |
| v | The vector to fill. |
Definition at line 344 of file boundary_data.f90.

|
private |
The name is either one of the geometry attributes x, y, z, n_x, n_y, n_z, area, or the name of a field in the registry.
| name | The requested quantity. |
| v | The vector to fill. |
Definition at line 302 of file boundary_data.f90.

| subroutine boundary_data::boundary_data_init | ( | class(boundary_data_t), intent(inout) | this, |
| type(coef_t), intent(inout), target | coef, | ||
| integer, dimension(:), intent(in) | zone_indices, | ||
| logical, intent(in), optional | outward_normals | ||
| ) |
| coef | The SEM coefficients. |
| zone_indices | The labelled zones to include. |
| outward_normals | Whether the normals should point out of the wall into the fluid, which is the default. Pass false to keep the coef convention, where they point out of the fluid domain. |
Definition at line 161 of file boundary_data.f90.
|
private |
| f | The field to integrate, on the same dofmap. |
Definition at line 544 of file boundary_data.f90.

|
private |
| name | The quantity to integrate. |
Definition at line 532 of file boundary_data.f90.

|
private |
outward_normals. | f | The scalar field. |
Definition at line 699 of file boundary_data.f90.

|
private |
| name | The scalar quantity. |
Definition at line 713 of file boundary_data.f90.

|
private |
| fx | The x component. |
| fy | The y component. |
| fz | The z component. |
Definition at line 630 of file boundary_data.f90.
|
private |
| fx | The name of the x component. |
| fy | The name of the y component. |
| fz | The name of the z component. |
Definition at line 646 of file boundary_data.f90.
|
private |
| name | The requested name. |
Definition at line 284 of file boundary_data.f90.
|
private |
| vx | The x component, overwritten with its normal part. |
| vy | The y component, overwritten with its normal part. |
| vz | The z component, overwritten with its normal part. |
Definition at line 482 of file boundary_data.f90.

|
private |
| vx | The input x component. |
| vy | The input y component. |
| vz | The input z component. |
| nx | The output x component of the normal part. |
| ny | The output y component of the normal part. |
| nz | The output z component of the normal part. |
Definition at line 511 of file boundary_data.f90.

|
private |
| name | The requested quantity. |
| f | The destination field. |
| clear | If true, zero the whole field before writing the boundary points; defaults to false. |
Definition at line 400 of file boundary_data.f90.
|
private |
| v | The boundary point values. |
| f | The destination field. |
| clear | If true, zero the whole field before writing the boundary points; defaults to false. |
Definition at line 371 of file boundary_data.f90.

|
private |
| vx | The x component, overwritten with its tangential part. |
| vy | The y component, overwritten with its tangential part. |
| vz | The z component, overwritten with its tangential part. |
Definition at line 423 of file boundary_data.f90.

|
private |
| vx | The input x component. |
| vy | The input y component. |
| vz | The input z component. |
| tx | The output x component of the tangential part. |
| ty | The output y component of the tangential part. |
| tz | The output z component of the tangential part. |
Definition at line 452 of file boundary_data.f90.

|
private |