/[lmdze]/trunk/phylmd/orbite.f90
ViewVC logotype

Diff of /trunk/phylmd/orbite.f90

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 317 by guez, Tue Dec 11 14:12:45 2018 UTC revision 318 by guez, Tue Dec 11 15:06:38 2018 UTC
# Line 14  CONTAINS Line 14  CONTAINS
14      ! Pour un jour donn\'e, calcule la longitude vraie de la Terre et      ! Pour un jour donn\'e, calcule la longitude vraie de la Terre et
15      ! la distance Terre-Soleil.      ! la distance Terre-Soleil.
16    
17      use nr_util, only: deg_to_rad      use nr_util, only: deg_to_rad, rad_to_deg
18      USE yomcst, ONLY: r_ecc, r_peri      USE yomcst, ONLY: r_ecc, r_peri
19    
20      REAL, INTENT (IN):: xjour ! jour de l'ann\'ee \`a compter du premier janvier      REAL, INTENT (IN):: xjour ! jour de l'ann\'ee \`a compter du premier janvier
# Line 23  CONTAINS Line 23  CONTAINS
23      ! longitude vraie de la Terre dans son orbite solaire, par rapport      ! longitude vraie de la Terre dans son orbite solaire, par rapport
24      ! au point vernal (21 mars), en degr\'es      ! au point vernal (21 mars), en degr\'es
25    
26      REAL, INTENT (OUT), OPTIONAL:: dist      REAL, INTENT (OUT), OPTIONAL:: dist ! distance terre-soleil, en ua
     ! distance terre-soleil (par rapport \`a la moyenne)  
27    
28      ! Local:      ! Local:
29      REAL xl, xllp, xee, xse, ranm      REAL xl, xllp, xee, xse, ranm
# Line 39  CONTAINS Line 38  CONTAINS
38           - xee / 4. * (0.5 + xse) * sin(2.*xllp) + r_ecc * xee / 8. &           - xee / 4. * (0.5 + xse) * sin(2.*xllp) + r_ecc * xee / 8. &
39           * (1. / 3. + xse) * sin(3. * xllp)) + (xjour - 81.) * deg_to_rad - xllp           * (1. / 3. + xse) * sin(3. * xllp)) + (xjour - 81.) * deg_to_rad - xllp
40      xee = xee * r_ecc      xee = xee * r_ecc
41      longi = (ranm + (2. * r_ecc - xee / 4.) * sin(ranm) + 5. / 4. * r_ecc**2 &      longi = ranm + (2. * r_ecc - xee / 4.) * sin(ranm) &
42           * sin(2 * ranm) + 13. / 12. * xee * sin(3. * ranm)) / deg_to_rad + xl           + 5. / 4. * r_ecc**2 * sin(2 * ranm) + 13. / 12. * xee * sin(3. * ranm)
43        IF (present(dist)) dist = (1 - r_ecc**2) / (1 + r_ecc * cos(longi))
44      IF (present(dist)) dist = (1 - r_ecc**2) &      longi = longi * rad_to_deg + xl
          / (1 + r_ecc * cos(deg_to_rad * (longi - (r_peri + 180.))))  
45    
46    END SUBROUTINE orbite    END SUBROUTINE orbite
47    

Legend:
Removed from v.317  
changed lines
  Added in v.318

  ViewVC Help
Powered by ViewVC 1.1.21