patch_type_for_face Function

public function patch_type_for_face(mesh, bc, face_id) result(type_id)

Retrieves the master BC type for a given face ID.

Arguments

Type IntentOptional Attributes Name
type(mesh_t), intent(in) :: mesh

The computational mesh.

type(bc_set_t), intent(in) :: bc

The active BC set.

integer, intent(in) :: face_id

Global index of the face.

Return Value integer


Called by

proc~~patch_type_for_face~~CalledByGraph proc~patch_type_for_face mod_bc::patch_type_for_face proc~balance_neumann_outlet_flux mod_flow_projection::balance_neumann_outlet_flux proc~balance_neumann_outlet_flux->proc~patch_type_for_face proc~compute_boundary_flux mod_flow_projection::compute_boundary_flux proc~compute_boundary_flux->proc~patch_type_for_face proc~energy_face_normal_distance mod_energy::energy_face_normal_distance proc~energy_face_normal_distance->proc~patch_type_for_face proc~ensure_pressure_operator_cache mod_flow_projection::ensure_pressure_operator_cache proc~ensure_pressure_operator_cache->proc~patch_type_for_face proc~face_normal_distance mod_flow_projection::face_normal_distance proc~ensure_pressure_operator_cache->proc~face_normal_distance proc~face_effective_neighbor mod_bc::face_effective_neighbor proc~ensure_pressure_operator_cache->proc~face_effective_neighbor proc~face_neighbor_weight mod_flow_projection::face_neighbor_weight proc~face_neighbor_weight->proc~patch_type_for_face proc~face_normal_distance->proc~patch_type_for_face proc~is_periodic_face mod_bc::is_periodic_face proc~is_periodic_face->proc~patch_type_for_face proc~advance_energy_transport mod_energy::advance_energy_transport proc~advance_energy_transport->proc~energy_face_normal_distance proc~advance_energy_transport->proc~face_effective_neighbor proc~advance_projection_step mod_flow_projection::advance_projection_step proc~advance_projection_step->proc~balance_neumann_outlet_flux proc~advance_projection_step->proc~ensure_pressure_operator_cache proc~compute_flow_diagnostics mod_flow_projection::compute_flow_diagnostics proc~advance_projection_step->proc~compute_flow_diagnostics proc~compute_momentum_rhs mod_flow_projection::compute_momentum_rhs proc~advance_projection_step->proc~compute_momentum_rhs proc~correct_face_flux mod_flow_projection::correct_face_flux proc~advance_projection_step->proc~correct_face_flux proc~solve_pressure_correction mod_flow_projection::solve_pressure_correction proc~advance_projection_step->proc~solve_pressure_correction proc~compute_predicted_face_flux mod_flow_projection::compute_predicted_face_flux proc~advance_projection_step->proc~compute_predicted_face_flux proc~correct_cell_velocity mod_flow_projection::correct_cell_velocity proc~advance_projection_step->proc~correct_cell_velocity proc~advance_species_transport mod_species::advance_species_transport proc~advance_species_transport->proc~face_normal_distance proc~advance_species_transport->proc~face_effective_neighbor proc~compute_flow_diagnostics->proc~compute_boundary_flux proc~compute_momentum_rhs->proc~face_normal_distance proc~compute_momentum_rhs->proc~face_effective_neighbor proc~face_linear_vector mod_flow_projection::face_linear_vector proc~compute_momentum_rhs->proc~face_linear_vector proc~pressure_gradient_cell mod_flow_projection::pressure_gradient_cell proc~compute_momentum_rhs->proc~pressure_gradient_cell proc~correct_face_flux->proc~face_normal_distance proc~correct_face_flux->proc~face_effective_neighbor proc~face_effective_neighbor->proc~is_periodic_face proc~face_linear_scalar mod_flow_projection::face_linear_scalar proc~face_linear_scalar->proc~face_neighbor_weight proc~face_linear_vector->proc~face_neighbor_weight proc~pressure_matvec mod_flow_projection::pressure_matvec proc~pressure_matvec->proc~ensure_pressure_operator_cache proc~solve_pressure_correction->proc~ensure_pressure_operator_cache proc~solve_pressure_correction->proc~pressure_matvec proc~compute_predicted_face_flux->proc~face_effective_neighbor proc~compute_predicted_face_flux->proc~face_linear_vector proc~correct_cell_velocity->proc~face_effective_neighbor proc~correct_cell_velocity->proc~face_linear_scalar proc~pressure_gradient_cell->proc~face_effective_neighbor proc~pressure_gradient_cell->proc~face_linear_scalar program~lowmach_react_hex lowmach_react_hex program~lowmach_react_hex->proc~advance_energy_transport program~lowmach_react_hex->proc~advance_projection_step program~lowmach_react_hex->proc~advance_species_transport program~lowmach_react_hex->proc~compute_flow_diagnostics

Source Code

   integer function patch_type_for_face(mesh, bc, face_id) result(type_id)
      type(mesh_t), intent(in) :: mesh
      type(bc_set_t), intent(in) :: bc
      integer, intent(in) :: face_id

      integer :: patch_id

      patch_id = mesh%faces(face_id)%patch
      if (patch_id <= 0) then
         type_id = bc_unknown
      else
         type_id = bc%patches(patch_id)%type_id
      end if
   end function patch_type_for_face