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~photo_ray_macro_weight photo_ray_macro_weight proc~photo_ray_macro_weight->proc~resolve_face_axes proc~photo_ray_macro_weight->proc~compute_face_area_from_bounds proc~sample_photo_ray_slot sample_photo_ray_slot proc~sample_photo_ray_slot->proc~resolve_face_axes proc~sample_reservoir_face_particle_counter sample_reservoir_face_particle_counter proc~sample_reservoir_face_particle_counter->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 injection face"
    end select
  end subroutine resolve_face_axes