Fortran Wiki


Calculates the Euclidean vector norm (L 2L_2 norm) of array along dimension dim.


Fortran 2008 and later


Transformational function?


result = norm2(array[, dim])


  • array - Shall be an array of type real.
  • dim - (Optional) shall be a scalar of type integer with a value in the range from 1 to n, where n equals the rank of array.

Return value

The result is of the same type as array.

If dim is absent, a scalar with the square root of the sum of squares of the elements of array is returned. Otherwise, an array of rank n1n-1, where nn equals the rank of array, and a shape similar to that of array with dimension dim dropped is returned.


program test_norm2
  real :: x(5) = [ real :: 1, 2, 3, 4, 5 ]
  print *, norm2(x) ! = sqrt(55.) ~ 7.416
end program

See also

product, sum, hypot

category: intrinsics