注入面識別子から法線軸と対応境界座標を返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | box_min(3) | |||
| real(kind=dp), | intent(in) | :: | box_max(3) | |||
| character(len=*), | intent(in) | :: | inject_face | |||
| integer, | intent(out) | :: | axis | |||
| real(kind=dp), | intent(out) | :: | boundary_value |
subroutine resolve_inject_face(box_min, box_max, inject_face, axis, boundary_value) real(dp), intent(in) :: box_min(3), box_max(3) character(len=*), intent(in) :: inject_face integer, intent(out) :: axis real(dp), intent(out) :: boundary_value select case (trim(lower_ascii(inject_face))) case ('x_low') axis = 1; boundary_value = box_min(1) case ('x_high') axis = 1; boundary_value = box_max(1) case ('y_low') axis = 2; boundary_value = box_min(2) case ('y_high') axis = 2; boundary_value = box_max(2) case ('z_low') axis = 3; boundary_value = box_min(3) case ('z_high') axis = 3; boundary_value = box_max(3) case default error stop 'Unknown particles.species.inject_face.' end select end subroutine resolve_inject_face