arrays_equal_internal Function

private pure function arrays_equal_internal(a, b, n) result(equal)

Check if two arrays are equal

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: a(:)
integer, intent(in) :: b(:)
integer, intent(in) :: n

Return Value logical


Called by

proc~~arrays_equal_internal~~CalledByGraph proc~arrays_equal_internal arrays_equal_internal proc~fragment_lookup_find fragment_lookup_t%fragment_lookup_find proc~fragment_lookup_find->proc~arrays_equal_internal proc~compute_mbe_delta compute_mbe_delta proc~compute_mbe_delta->proc~fragment_lookup_find proc~compute_mbe_dipole compute_mbe_dipole proc~compute_mbe_dipole->proc~fragment_lookup_find proc~compute_mbe_dipole_derivatives compute_mbe_dipole_derivatives proc~compute_mbe_dipole_derivatives->proc~fragment_lookup_find proc~compute_mbe_gradient compute_mbe_gradient proc~compute_mbe_gradient->proc~fragment_lookup_find proc~compute_mbe_hessian compute_mbe_hessian proc~compute_mbe_hessian->proc~fragment_lookup_find proc~compute_mbe compute_mbe proc~compute_mbe->proc~compute_mbe_delta proc~compute_mbe->proc~compute_mbe_dipole proc~compute_mbe->proc~compute_mbe_dipole_derivatives proc~compute_mbe->proc~compute_mbe_gradient proc~compute_mbe->proc~compute_mbe_hessian proc~global_coordinator global_coordinator proc~global_coordinator->proc~compute_mbe proc~serial_fragment_processor serial_fragment_processor proc~serial_fragment_processor->proc~compute_mbe interface~global_coordinator global_coordinator interface~global_coordinator->proc~global_coordinator interface~serial_fragment_processor serial_fragment_processor interface~serial_fragment_processor->proc~serial_fragment_processor

Variables

Type Visibility Attributes Name Initial
integer, private :: i

Source Code

   pure function arrays_equal_internal(a, b, n) result(equal)
      !! Check if two arrays are equal
      integer, intent(in) :: a(:), b(:), n
      logical :: equal
      integer :: i

      equal = .true.
      if (size(a) /= n .or. size(b) /= n) then
         equal = .false.
         return
      end if

      do i = 1, n
         if (a(i) /= b(i)) then
            equal = .false.
            return
         end if
      end do
   end function arrays_equal_internal