1 |
guez |
185 |
module cv30_tracer_m |
2 |
guez |
47 |
|
3 |
|
|
implicit none |
4 |
|
|
|
5 |
guez |
97 |
contains |
6 |
guez |
47 |
|
7 |
guez |
185 |
SUBROUTINE cv30_tracer(nloc, ncum, na, ment, sij, da, phi) |
8 |
guez |
47 |
|
9 |
guez |
189 |
! Passive tracers. |
10 |
guez |
47 |
|
11 |
guez |
139 |
integer, intent(in):: ncum, na, nloc |
12 |
guez |
189 |
real, intent(in):: ment(nloc, na, na), sij(nloc, na, na) |
13 |
guez |
47 |
|
14 |
guez |
97 |
! Ouputs: |
15 |
guez |
189 |
real, intent(out):: da(nloc, na) |
16 |
|
|
real phi(nloc, na, na) |
17 |
guez |
47 |
|
18 |
guez |
189 |
! Local: |
19 |
guez |
97 |
integer i, j, k |
20 |
guez |
47 |
|
21 |
guez |
97 |
!------------------------------------------------------------ |
22 |
|
|
|
23 |
|
|
da = 0. |
24 |
|
|
|
25 |
|
|
do j = 1, na |
26 |
|
|
do k = 1, na |
27 |
|
|
do i = 1, ncum |
28 |
guez |
189 |
da(i, j) = da(i, j) + (1. - sij(i, k, j)) * ment(i, k, j) |
29 |
guez |
97 |
phi(i, j, k) = sij(i, k, j) * ment(i, k, j) |
30 |
|
|
end do |
31 |
|
|
end do |
32 |
|
|
end do |
33 |
|
|
|
34 |
guez |
185 |
end SUBROUTINE cv30_tracer |
35 |
guez |
97 |
|
36 |
guez |
185 |
end module cv30_tracer_m |