1 |
|
module acc_m |
2 |
|
|
3 |
! $Header: /home/cvsroot/LMDZ4/libf/filtrez/acc.F,v 1.1.1.1 2004/05/19 |
implicit none |
|
! 12:53:09 lmdzadmin Exp $ |
|
4 |
|
|
5 |
SUBROUTINE acc(vec, d, im) |
contains |
|
DIMENSION vec(im, im), d(im) |
|
6 |
|
|
7 |
DO j = 1, im |
SUBROUTINE acc(vec) |
8 |
DO i = 1, im |
|
9 |
d(i) = vec(i, j)*vec(i, j) |
! From LMDZ4/libf/filtrez/acc.F, v 1.1.1.1 2004/05/19 12:53:09 |
10 |
END DO |
|
11 |
sum = ssum(im, d, 1) |
! Normalize each column of vec. |
12 |
sum = sqrt(sum) |
|
13 |
DO i = 1, im |
real, intent(inout):: vec(:, :) |
14 |
vec(i, j) = vec(i, j)/sum |
|
15 |
END DO |
! Local: |
16 |
END DO |
integer j |
17 |
RETURN |
|
18 |
END SUBROUTINE acc |
!-------------------------------------------------- |
19 |
|
|
20 |
|
forall (j = 1:size(vec, 2)) vec(:, j) = vec(:, j) / sqrt(sum(vec(:, j)**2)) |
21 |
|
|
22 |
|
END SUBROUTINE acc |
23 |
|
|
24 |
|
end module acc_m |