1 |
|
|
! |
2 |
|
|
! $Header$ |
3 |
|
|
! |
4 |
|
|
subroutine gr_int_dyn(champin,champdyn,iim,jp1) |
5 |
|
|
implicit none |
6 |
|
|
c======================================================================= |
7 |
|
|
c passage d'un champ interpole a un champ sur grille scalaire |
8 |
|
|
c======================================================================= |
9 |
|
|
c----------------------------------------------------------------------- |
10 |
|
|
c declarations: |
11 |
|
|
c ------------- |
12 |
|
|
|
13 |
|
|
INTEGER iim |
14 |
|
|
integer ip1, jp1 |
15 |
|
|
REAL champin(iim, jp1) |
16 |
|
|
REAL champdyn(iim+1, jp1) |
17 |
|
|
|
18 |
|
|
INTEGER i, j |
19 |
|
|
real polenord, polesud |
20 |
|
|
|
21 |
|
|
c----------------------------------------------------------------------- |
22 |
|
|
c calcul: |
23 |
|
|
c ------- |
24 |
|
|
|
25 |
|
|
ip1 = iim + 1 |
26 |
|
|
polenord = 0. |
27 |
|
|
polesud = 0. |
28 |
|
|
do i = 1, iim |
29 |
|
|
polenord = polenord + champin (i, 1) |
30 |
|
|
polesud = polesud + champin (i, jp1) |
31 |
|
|
enddo |
32 |
|
|
polenord = polenord / iim |
33 |
|
|
polesud = polesud / iim |
34 |
|
|
do j = 1, jp1 |
35 |
|
|
do i = 1, iim |
36 |
|
|
if (j .eq. 1) then |
37 |
|
|
champdyn(i, j) = polenord |
38 |
|
|
else if (j .eq. jp1) then |
39 |
|
|
champdyn(i, j) = polesud |
40 |
|
|
else |
41 |
|
|
champdyn(i, j) = champin (i, j) |
42 |
|
|
endif |
43 |
|
|
enddo |
44 |
|
|
champdyn(ip1, j) = champdyn(1, j) |
45 |
|
|
enddo |
46 |
|
|
|
47 |
|
|
RETURN |
48 |
|
|
END |
49 |
|
|
|