20 #include "dimensions.h"
26 #include "comdissnew.h"
31 INTEGER i,
j,itmax,itmay,iter
32 REAL cvu(iip1,
jjp1),cuv(iip1,jjm)
33 REAL ai14,ai23,airez,rlatp,rlatm,xprm,xprp,un4rad2,yprp,yprm
34 REAL eps,x1,xo1,
f,df,xdm,y1,yo1,ydm
35 REAL coslatm,coslatp,radclatm,radclatp
40 REAL rlonvv(iip1),rlatuu(
jjp1)
41 REAL rlatu1(jjm),yprimu1(jjm),rlatu2(jjm),yprimu2(jjm) ,
42 * yprimv(jjm),yprimu(
jjp1)
43 REAL gamdi_gdiv, gamdi_grot, gamdi_h
45 REAL rlonm025(iip1),xprimm025(iip1), rlonp025(iip1),
47 SAVE rlatu1,yprimu1,rlatu2,yprimu2,yprimv,yprimu
48 SAVE rlonm025,xprimm025,rlonp025,xprimp025
163 3
FORMAT( // 10
x,
' .... INIGEOM date du 01/06/98 ..... ',
164 * //5
x,
' Calcul des elongations cu et cv comme sommes des 4 ' /
166 ' elong. cuij1, .. 4 , cvij1,.. 4 qui les entourent , aux * '/ 5
x,
' memes endroits que les aires aireij1,...j4 . ' / )
170 gamdi_gdiv =
coefdis/ (
REAL(nitergdiv) -2. )
175 gamdi_grot =
coefdis/ (
REAL(nitergrot) -2. )
180 gamdi_h =
coefdis/ (
REAL(niterh) -2. )
185 WRITE(6,*)
' gamdi_gd ',gamdi_gdiv,gamdi_grot,gamdi_h,
coefdis,
199 WRITE(6,*)
' *** Inigeom , Y = Sinus ( Latitude ) *** '
209 WRITE(6,*)
'*** Inigeom , Y = Latitude , der. sinusoid . ***'
223 DO 10 iter = 1, itmax
229 IF( xdm.LE.
eps )go to 11
246 IF(ydm.LE.
eps) go to 17
264 WRITE(6,*)
'*** Inigeom , Y = Latitude , der.tg. hyperbolique ***'
268 ,
rlatu,yprimu,
rlatv, yprimv,rlatu1, yprimu1,rlatu2,yprimu2 ,
287 un4rad2 = 0.25 *
rad *
rad
355 coslatm = cos( rlatm )
356 radclatm = 0.5*
rad * coslatm
359 xprp = xprimp025(
i )
360 xprm = xprimm025(
i )
361 aireij2(
i,1 ) = un4rad2 * coslatm * xprp * yprm
362 aireij3(
i,1 ) = un4rad2 * coslatm * xprm * yprm
363 cuij2(
i,1 ) = radclatm * xprp
364 cuij3(
i,1 ) = radclatm * xprm
365 cvij2(
i,1 ) = 0.5*
rad * yprm
366 cvij3(
i,1 ) = cvij2(
i,1)
380 IF (
j. eq.
jjp1 )
THEN
386 coslatp = cos( rlatp )
387 radclatp = 0.5*
rad * coslatp
390 xprp = xprimp025(
i )
391 xprm = xprimm025(
i )
394 cuij1(
i,
jjp1) = radclatp * xprp
395 cuij4(
i,
jjp1) = radclatp * xprm
412 IF (
j .gt. 1 .AND.
j .lt.
jjp1 )
THEN
414 rlatp = rlatu2(
j-1 )
415 yprp = yprimu2(
j-1 )
423 coslatm = cos( rlatm )
424 coslatp = cos( rlatp )
425 radclatp = 0.5*
rad * coslatp
426 radclatm = 0.5*
rad * coslatm
429 xprp = xprimp025(
i )
430 xprm = xprimm025(
i )
432 ai14 = un4rad2 * coslatp * yprp
433 ai23 = un4rad2 * coslatm * yprm
438 cuij1(
i,
j ) = radclatp * xprp
439 cuij2(
i,
j ) = radclatm * xprp
440 cuij3(
i,
j ) = radclatm * xprm
441 cuij4(
i,
j ) = radclatp * xprm
442 cvij1(
i,
j ) = 0.5*
rad * yprp
443 cvij2(
i,
j ) = 0.5*
rad * yprm
444 cvij3(
i,
j ) = cvij2(
i,
j)
445 cvij4(
i,
j ) = cvij1(
i,
j)
452 cvij1(iip1,
j) = cvij1(1,
j)
453 cvij2(iip1,
j) = cvij2(1,
j)
454 cvij3(iip1,
j) = cvij3(1,
j)
455 cvij4(iip1,
j) = cvij4(1,
j)
456 cuij1(iip1,
j) = cuij1(1,
j)
457 cuij2(iip1,
j) = cuij2(1,
j)
458 cuij3(iip1,
j) = cuij3(1,
j)
459 cuij4(iip1,
j) = cuij4(1,
j)
538 cv(
i,
j) = 0.5 *( cvij2(
i,
j)+cvij3(
i,
j)+cvij1(
i,
j+1)+cvij4(
i,
j+1))
539 cvu(
i,
j)= 0.5 *( cvij1(
i,
j)+cvij4(
i,
j)+cvij2(
i,
j) +cvij3(
i,
j) )
540 cuv(
i,
j)= 0.5 *( cuij2(
i,
j)+cuij3(
i,
j)+cuij1(
i,
j+1)+cuij4(
i,
j+1))
551 cvu(iip1,
j) = cvu(1,
j)
553 cuv(iip1,
j) = cuv(1,
j)
563 cu(
i,
j) = 0.5*(cuij1(
i,
j)+cuij4(
i+1,
j)+cuij2(
i,
j)+cuij3(
i+1,
j))
658 WRITE(6,*)
' *** Coordonnees de la grille *** '
661 WRITE(6,*)
' LONGITUDES aux pts. V ( degres ) '
669 WRITE(6,*)
' LATITUDES aux pts. V ( degres ) '
674 WRITE(6,400) (rlatuu(
i),
i=1,jjm)
680 WRITE(6,*)
' LONGITUDES aux pts. U ( degres ) '
685 WRITE(6,*)
' LATITUDES aux pts. U ( degres ) '
690 WRITE(6,400) (rlatuu(
i),
i=1,
jjp1)
693 444
format(f10.3,f6.0)