resolve_face_axes Subroutine

public pure subroutine resolve_face_axes(inject_face, axis_t1, axis_t2)

注入面名から接線2軸を返す。

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: inject_face

注入面識別子(x_low/x_high/y_low/y_high/z_low/z_high)。

integer, intent(out) :: axis_t1

注入面の第1接線軸インデックス(1:x, 2:y, 3:z)。

integer, intent(out) :: axis_t2

注入面の第1接線軸インデックス(1:x, 2:y, 3:z)。 注入面の第2接線軸インデックス(1:x, 2:y, 3:z)。


Called by

proc~~resolve_face_axes~~CalledByGraph proc~resolve_face_axes resolve_face_axes proc~compute_face_area_from_bounds compute_face_area_from_bounds proc~compute_face_area_from_bounds->proc~resolve_face_axes proc~sample_photo_raycast_particles sample_photo_raycast_particles proc~sample_photo_raycast_particles->proc~resolve_face_axes proc~sample_photo_raycast_particles->proc~compute_face_area_from_bounds proc~sample_reservoir_face_particles sample_reservoir_face_particles proc~sample_reservoir_face_particles->proc~resolve_face_axes proc~sample_reservoir_velocity_grid_particles sample_reservoir_velocity_grid_particles proc~sample_reservoir_velocity_grid_particles->proc~resolve_face_axes proc~compute_macro_particles_for_batch compute_macro_particles_for_batch proc~compute_macro_particles_for_batch->proc~compute_face_area_from_bounds proc~compute_macro_particles_from_flux compute_macro_particles_from_flux proc~compute_macro_particles_from_flux->proc~compute_face_area_from_bounds proc~compute_macro_particles_for_species compute_macro_particles_for_species proc~compute_macro_particles_for_species->proc~compute_macro_particles_for_batch proc~compute_macro_particles_for_species->proc~compute_macro_particles_from_flux

Source Code

  pure subroutine resolve_face_axes(inject_face, axis_t1, axis_t2)
    character(len=*), intent(in) :: inject_face
    integer, intent(out) :: axis_t1, axis_t2

    select case (trim(adjustl(inject_face)))
    case ('x_low', 'x_high')
      axis_t1 = 2
      axis_t2 = 3
    case ('y_low', 'y_high')
      axis_t1 = 3
      axis_t2 = 1
    case ('z_low', 'z_high')
      axis_t1 = 1
      axis_t2 = 2
    case default
      error stop "unknown inject_face"
    end select
  end subroutine resolve_face_axes