Computes the real part of the cross-section contribution for given indices.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int32), | intent(in) | :: | initial_index_ | index pointing to the basis element involving initial state | ||
| integer(kind=int32), | intent(in) | :: | final_index_ | index pointing to the basis element involving final state | ||
| integer(kind=int32), | intent(in) | :: | l_initial_ | pre-collisional \(l\) value | ||
| integer(kind=int32), | intent(in) | :: | l_final_ | post-collisional \(l\) value | ||
| real(kind=dp), | intent(in) | :: | s_matrix_real_(:,:) | real part of the S-matrix | 
(output) contribution to the cross-section from real part of the S-matrix
      function compute_real_component(initial_index_, final_index_, l_initial_,&
         l_final_, s_matrix_real_) result(real_contribution_)
         !! Computes the real part of the cross-section contribution
         !! for given indices.
         !---------------------------------------------------------------------!
         integer(int32), intent(in) :: initial_index_
            !! index pointing to the basis element involving initial state
         integer(int32), intent(in) :: final_index_
            !! index pointing to the basis element involving final state
         integer(int32), intent(in) :: l_initial_
            !! pre-collisional \\(l\\) value
         integer(int32), intent(in) :: l_final_
            !! post-collisional \\(l\\) value
         real(dp), intent(in) :: s_matrix_real_(:,:)
            !! real part of the S-matrix
         real(dp) :: real_contribution_
            !! (output) contribution to the cross-section from real part
            !! of the S-matrix
         !---------------------------------------------------------------------!
         if (l_initial_ == l_final_) then
           if (initial_index_ == final_index_) then
               real_contribution_ = 1.0_dp - s_matrix_real_(initial_index_, final_index_)
           else
               real_contribution_ = - s_matrix_real_(initial_index_, final_index_)
           endif
         else
           real_contribution_ = - s_matrix_real_(initial_index_, final_index_)
         endif
      end function compute_real_component