| 
    Neko 0.9.1
    
   A portable framework for high-order spectral element flow simulations 
   | 
 
A shear stress boundary condition, computing the stress values using a wall model. More...


Public Member Functions | |
| procedure, pass(this) | apply_scalar (this, x, n, t, tstep) | 
| Apply shear stress for a scalar field x.   | |
| procedure, pass(this) | apply_vector (this, x, y, z, n, t, tstep) | 
| Apply the boundary condition to the right-hand side.   | |
| procedure, pass(this) | apply_scalar_dev (this, x_d, t, tstep) | 
| Boundary condition apply for a generic wall_model_bc condition to a vector x (device version)   | |
| procedure, pass(this) | apply_vector_dev (this, x_d, y_d, z_d, t, tstep) | 
| Boundary condition apply for a generic wall_model_bc condition to vectors x, y and z (device version)   | |
| procedure, pass(this) | init_wall_model_bc (this, json, nu) | 
| Constructor.   | |
| procedure, pass(this) | apply_scalar (this, x, n, t, tstep) | 
| Apply shear stress for a scalar field x.   | |
| procedure(bc_apply_scalar), deferred, pass | apply_scalar (this, x, n, t, tstep) | 
| Apply the boundary condition to a scalar field.   | |
| procedure, pass(this) | apply_vector (this, x, y, z, n, t, tstep) | 
| Boundary condition apply for a generic shear_stress condition to vectors x, y and z.   | |
| procedure(bc_apply_vector), deferred, pass | apply_vector (this, x, y, z, n, t, tstep) | 
| Apply the boundary condition to a vector field.   | |
| procedure, pass(this) | apply_scalar_dev (this, x_d, t, tstep) | 
| Boundary condition apply for a generic shear_stress condition to a vector x (device version)   | |
| procedure(bc_apply_scalar_dev), deferred, pass | apply_scalar_dev (this, x_d, t, tstep) | 
| Device version of apply_scalar.   | |
| procedure, pass(this) | apply_vector_dev (this, x_d, y_d, z_d, t, tstep) | 
| Boundary condition apply for a generic shear_stress condition to vectors x, y and z (device version)   | |
| procedure(bc_apply_vector_dev), deferred, pass | apply_vector_dev (this, x_d, y_d, z_d, t, tstep) | 
| Device version of apply_vector.   | |
| procedure, pass(this) | init_shear_stress (this, coef) | 
| Additional constructor that should be run after the finalization of the bc. Similar to the symmetry condition.   | |
| procedure, pass(this) | set_stress_scalar (this, tau_x, tau_y, tau_z) | 
| Set the value of the shear stress vector using 3 scalars.   | |
| procedure, pass(this) | set_stress_array (this, tau_x, tau_y, tau_z) | 
| Set the shear stress components.   | |
| generic | set_stress (this, tau_x, tau_y, tau_z) | 
| Set the value of the shear stress vector using 3 scalars.   | |
| generic | set_stress (this, tau_x, tau_y, tau_z) | 
| Set the shear stress components.   | |
| procedure, pass(this) | free (this) | 
| Destructor.   | |
| procedure(bc_destructor), deferred, pass | free (this) | 
| Destructor.   | |
| procedure, pass(this) | init_base (this, coef) | 
| Constructor.   | |
| procedure, pass(this) | free_base (this) | 
| Destructor.   | |
| procedure, pass(this) | mark_facet (this, facet, el) | 
| Mark a facet on an element as part of the boundary condition.   | |
| procedure, pass(this) | mark_facets (this, facet_list) | 
| Mark all facets from a (facet, element) tuple list.   | |
| procedure, pass(this) | mark_zones_from_list (this, bc_zones, bc_key, bc_labels) | 
| Mark all facets from a list of zones, also marks type of bc in the mesh.   | |
| procedure, pass(this) | mark_zone (this, bc_zone) | 
| Mark all facets from a zone.   | |
| procedure, pass(this) | finalize (this) | 
| Finalize the construction of the bc by populting the msk and facet arrays.   | |
Public Attributes | |
| class(wall_model_t), allocatable | wall_model | 
| The wall model to compute the stress.   | |
| type(symmetry_t) | symmetry | 
| type(neumann_t) | neumann_x | 
| Neumann condition for the x direction.   | |
| type(neumann_t) | neumann_y | 
| Neumann condition for the y direction.   | |
| type(neumann_t) | neumann_z | 
| Neumann condition for the z direction.   | |
| integer, dimension(:), allocatable | msk | 
| The linear index of each node in each boundary facet.   | |
| integer, dimension(:), allocatable | facet | 
| A list of facet ids (1 to 6), one for each element in msk.   | |
| type(dofmap_t), pointer | dof | 
| Map of degrees of freedom.   | |
| type(coef_t), pointer | coef | 
| SEM coefficients.   | |
| type(mesh_t), pointer | msh | 
| The mesh.   | |
| type(space_t), pointer | xh | 
| The function space.   | |
| type(stack_i4t2_t) | marked_facet | 
| Index tuples (facet, element) marked as part of the boundary condition.   | |
| type(c_ptr) | msk_d = C_NULL_PTR | 
| Device pointer for msk.   | |
| type(c_ptr) | facet_d = C_NULL_PTR | 
| Device pointer for facet.   | |
Definition at line 52 of file wall_model_bc.f90.
      
  | 
  inherited | 
Definition at line 61 of file shear_stress.f90.
| procedure, pass(this) wall_model_bc::wall_model_bc_t::apply_scalar | ( | class(wall_model_bc_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 | ||
| ) | 
Definition at line 56 of file wall_model_bc.f90.
      
  | 
  inherited | 
Definition at line 63 of file shear_stress.f90.
| procedure, pass(this) wall_model_bc::wall_model_bc_t::apply_scalar_dev | ( | class(wall_model_bc_t), intent(inout), target | this, | 
| type(c_ptr) | x_d, | ||
| real(kind=rp), intent(in), optional | t, | ||
| integer, intent(in), optional | tstep | ||
| ) | 
Definition at line 58 of file wall_model_bc.f90.
      
  | 
  pure virtualinherited | 
      
  | 
  inherited | 
Definition at line 62 of file shear_stress.f90.
| procedure, pass(this) wall_model_bc::wall_model_bc_t::apply_vector | ( | class(wall_model_bc_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 | ||
| ) | 
| x | The x component of the right-hand side | 
| y | The y component of the right-hand side | 
| z | The z component of the right-hand side | 
| n | The size of the right-hand side arrays. | 
| t | The time value. | 
| tstep | The time step. | 
Definition at line 57 of file wall_model_bc.f90.
      
  | 
  inherited | 
Definition at line 64 of file shear_stress.f90.
| procedure, pass(this) wall_model_bc::wall_model_bc_t::apply_vector_dev | ( | class(wall_model_bc_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 | ||
| ) | 
Definition at line 60 of file wall_model_bc.f90.
      
  | 
  inherited | 
Definition at line 72 of file shear_stress.f90.
      
  | 
  inherited | 
| coef | The SEM coefficients. | 
Definition at line 65 of file shear_stress.f90.
| procedure, pass(this) wall_model_bc::wall_model_bc_t::init_wall_model_bc | ( | class(wall_model_bc_t), intent(inout) | this, | 
| type(json_file), intent(inout) | json, | ||
| real(kind=rp), intent(in) | nu | ||
| ) | 
| coef | The SEM coefficients. | 
Definition at line 62 of file wall_model_bc.f90.
      
  | 
  inherited | 
Definition at line 71 of file shear_stress.f90.
      
  | 
  inherited | 
Definition at line 71 of file shear_stress.f90.
      
  | 
  inherited | 
Definition at line 69 of file shear_stress.f90.
      
  | 
  inherited | 
Definition at line 67 of file shear_stress.f90.
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
Definition at line 55 of file shear_stress.f90.
      
  | 
  inherited | 
Definition at line 57 of file shear_stress.f90.
      
  | 
  inherited | 
Definition at line 59 of file shear_stress.f90.
      
  | 
  inherited | 
Definition at line 52 of file shear_stress.f90.
| class(wall_model_t), allocatable wall_model_bc::wall_model_bc_t::wall_model | 
Definition at line 54 of file wall_model_bc.f90.