triangle_inequality_holds Function

public function triangle_inequality_holds(x, y, z) result(holds)

check if the triangle inequality for 3 variables hols

Arguments

Type IntentOptional Attributes Name
integer(kind=int32), intent(in) :: x

variables to check the triangle inequality

integer(kind=int32), intent(in) :: y

variables to check the triangle inequality

integer(kind=int32), intent(in) :: z

variables to check the triangle inequality

Return Value logical

(out) result: true/false


Called by

proc~~triangle_inequality_holds~~CalledByGraph proc~triangle_inequality_holds triangle_inequality_holds proc~zero_projections_3j_condition zero_projections_3j_condition proc~zero_projections_3j_condition->proc~triangle_inequality_holds proc~check_nonzero_pes_matrix_elements check_nonzero_pes_matrix_elements proc~check_nonzero_pes_matrix_elements->proc~zero_projections_3j_condition proc~process_single_matrix_element process_single_matrix_element proc~process_single_matrix_element->proc~zero_projections_3j_condition proc~initialize_pes_matrix initialize_pes_matrix proc~initialize_pes_matrix->proc~check_nonzero_pes_matrix_elements proc~prepare_pes_matrix_elements prepare_pes_matrix_elements proc~initialize_pes_matrix->proc~prepare_pes_matrix_elements proc~prepare_pes_matrix_elements->proc~process_single_matrix_element program~scattering SCATTERING program~scattering->proc~initialize_pes_matrix

Contents


Source Code

      function triangle_inequality_holds(x, y, z) result(holds)
         !! check if the triangle inequality for 3 variables hols
         !---------------------------------------------------------------------!
         integer(int32), intent(in) :: x, y, z
            !! variables to check the triangle inequality
         logical :: holds
            !! (out) result: true/false
         !---------------------------------------------------------------------!
         holds = ( (x + y >= z) .and. (x + z >= y) .and. (y + z >= x) )
         !---------------------------------------------------------------------!
      end function triangle_inequality_holds