1 SUBROUTINE solarlong(pday, psollong, pdist_sol)
53 REAL pday, pdist_sol, pdecli, psollong
59 REAL zanom, xref, zx0, zdx, zteta, zz, pi
61 REAL :: pyear_day, pperi_day
62 REAL :: jd_eq, jd_peri
63 LOGICAL,
SAVE :: first = .
true.
72 CALL ioget_calendar(pyear_day)
73 CALL ymds2ju(2000, 3, 21, 0., jd_eq)
74 CALL ymds2ju(2001, 1, 4, 0., jd_peri)
75 pperi_day = jd_peri - jd_eq
76 pperi_day = r_peri + 180.
77 WRITE (
lunout, *)
' Number of days in a year = ', pyear_day
79 CALL iniorbit(152.59, 146.61, pyear_day, pperi_day, r_incl)
87 zanom = 2.*pi*(zz-nint(zz))
94 zx0 = xref + r_ecc*sin(xref)
97 zdx = -(zx0-r_ecc*sin(zx0)-xref)/(1.-r_ecc*cos(zx0))
98 IF (abs(zdx)<=(1.e-7))
GO TO 120
103 IF (zanom<0.) zx0 = -zx0
108 zteta = 2.*atan(sqrt((1.+r_ecc)/(1.-r_ecc))*tan(zx0/2.))
112 IF (psollong<0.) psollong = psollong + 2.*pi
113 IF (psollong>2.*pi) psollong = psollong - 2.*pi
115 psollong = psollong*180./pi
119 pdist_sol = (1-r_ecc*r_ecc)/(1+r_ecc*cos(pi/180.*(psollong- &
!$Id zjulian!correction pour l heure initiale!jyg!jyg CALL ymds2ju(annee_ref, 1, day_ref, hour, zjulian)!jyg CALL histbeg_phy("histrac"
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
subroutine iniorbit(paphelie, pperiheli, pyear_day, pperi_day, pobliq)
subroutine solarlong(pday, psollong, pdist_sol)
!INCLUDE planet h COMMON planet peri_day
!INCLUDE planet h COMMON planet timeperi
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true
!$Id mode_top_bound COMMON comconstr omeg dissip_zref year_day
!$Header!gestion des impressions de sorties et de débogage la sortie standard prt_level COMMON comprint lunout