1 |
! |
module acc_m |
2 |
! $Header: /home/cvsroot/LMDZ4/libf/filtrez/acc.F,v 1.1.1.1 2004/05/19 12:53:09 lmdzadmin Exp $ |
|
3 |
! |
implicit none |
4 |
subroutine acc(vec,d,im) |
|
5 |
dimension vec(im,im),d(im) |
contains |
6 |
do 10 j=1,im |
|
7 |
do 9 i=1,im |
SUBROUTINE acc(vec) |
8 |
9 d(i)=vec(i,j)*vec(i,j) |
|
9 |
sum=ssum(im,d,1) |
! From LMDZ4/libf/filtrez/acc.F, v 1.1.1.1 2004/05/19 12:53:09 |
10 |
sum=sqrt(sum) |
|
11 |
do 10 i=1,im |
! Normalize each column of vec. |
12 |
10 vec(i,j)=vec(i,j)/sum |
|
13 |
return |
real, intent(inout):: vec(:, :) |
14 |
end |
|
15 |
|
! Local: |
16 |
|
integer j |
17 |
|
|
18 |
|
!-------------------------------------------------- |
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 |