/[lmdze]/trunk/libf/dyn3d/inigrads.f90
ViewVC logotype

Contents of /trunk/libf/dyn3d/inigrads.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3 - (show annotations)
Wed Feb 27 13:16:39 2008 UTC (16 years, 2 months ago) by guez
File size: 2262 byte(s)
Initial import
1 module inigrads_m
2
3 ! This module is clean: no C preprocessor directive, no include line.
4
5 implicit none
6
7 contains
8
9 subroutine inigrads(i_f, x, fx, xmin, xmax, y, ymin, ymax, fy, z, fz, dt, &
10 file, titlel)
11
12 ! From dyn3d/inigrads.F, v 1.1.1.1 2004/05/19 12:53:07
13
14 use gradsdef, only: unit, title, ivar, fichier, firsttime, dtime, iid, &
15 ifd, imd, xd, iid, jid, jfd, jmd, yd, lmd, zd, irec
16
17 integer, intent(in):: i_f
18 real, intent(in):: x(:), y(:), z(:), fx, fy, fz, dt
19 real, intent(in):: xmin, xmax, ymin, ymax
20 character(len=*), intent(in):: file, titlel
21
22 ! Variables local to the procedure:
23 integer im, jm, lm
24 integer i, j, l
25 integer:: nf = 0
26
27 !-------------------------------------
28
29 print *, 'Call sequence information: inigrads'
30
31 im = size(x)
32 jm = size(y)
33 lm = size(z)
34
35 unit(1)=66
36 unit(2)=32
37 unit(3)=34
38 unit(4)=36
39 unit(5)=38
40 unit(6)=40
41 unit(7)=42
42 unit(8)=44
43 unit(9)=46
44
45 if (i_f.le.nf) stop'verifier les appels a inigrads'
46
47 nf=i_f
48 title(i_f)=titlel
49 ivar(i_f)=0
50
51 fichier(i_f)=trim(file)
52
53 firsttime(i_f)=.true.
54 dtime(i_f)=dt
55
56 iid(i_f)=1
57 ifd(i_f)=im
58 imd(i_f)=im
59 do i=1, im
60 xd(i, i_f)=x(i)*fx
61 if(xd(i, i_f).lt.xmin) iid(i_f)=i+1
62 if(xd(i, i_f).le.xmax) ifd(i_f)=i
63 enddo
64 print *, 'On stoke du point ', iid(i_f), ' à ', ifd(i_f), ' en x'
65
66 jid(i_f)=1
67 jfd(i_f)=jm
68 jmd(i_f)=jm
69 do j=1, jm
70 yd(j, i_f)=y(j)*fy
71 if(yd(j, i_f).gt.ymax) jid(i_f)=j+1
72 if(yd(j, i_f).ge.ymin) jfd(i_f)=j
73 enddo
74 print *, 'On stoke du point ', jid(i_f), ' à ', jfd(i_f), ' en y'
75
76 print *, 'fichier(i_f)=', fichier(i_f)
77 print *, 4 * (ifd(i_f) - iid(i_f)) * (jfd(i_f) - jid(i_f))
78 print *, 'Opening "' // trim(file) // '.dat"...'
79
80 OPEN(unit=unit(i_f)+1, FILE=trim(file)//'.dat', FORM='unformatted', &
81 ACCESS='direct', RECL=4*(ifd(i_f)-iid(i_f)+1)*(jfd(i_f)-jid(i_f)+1))
82
83 lmd(i_f)=lm
84 do l=1, lm
85 zd(l, i_f)=z(l)*fz
86 enddo
87
88 irec(i_f)=0
89 print *, "i_f = ", i_f
90 print *, "imd(i_f) = ", imd(i_f)
91 print *, "jmd(i_f) = ", jmd(i_f)
92 print *, "lmd(i_f) = ", lmd(i_f)
93
94 end subroutine inigrads
95
96 end module inigrads_m

  ViewVC Help
Powered by ViewVC 1.1.21