--- trunk/phylmd/orbite.f 2018/12/11 14:12:45 317 +++ trunk/phylmd/orbite.f 2018/12/11 15:06:38 318 @@ -14,7 +14,7 @@ ! Pour un jour donn\'e, calcule la longitude vraie de la Terre et ! la distance Terre-Soleil. - use nr_util, only: deg_to_rad + use nr_util, only: deg_to_rad, rad_to_deg USE yomcst, ONLY: r_ecc, r_peri REAL, INTENT (IN):: xjour ! jour de l'ann\'ee \`a compter du premier janvier @@ -23,8 +23,7 @@ ! longitude vraie de la Terre dans son orbite solaire, par rapport ! au point vernal (21 mars), en degr\'es - REAL, INTENT (OUT), OPTIONAL:: dist - ! distance terre-soleil (par rapport \`a la moyenne) + REAL, INTENT (OUT), OPTIONAL:: dist ! distance terre-soleil, en ua ! Local: REAL xl, xllp, xee, xse, ranm @@ -39,11 +38,10 @@ - xee / 4. * (0.5 + xse) * sin(2.*xllp) + r_ecc * xee / 8. & * (1. / 3. + xse) * sin(3. * xllp)) + (xjour - 81.) * deg_to_rad - xllp xee = xee * r_ecc - longi = (ranm + (2. * r_ecc - xee / 4.) * sin(ranm) + 5. / 4. * r_ecc**2 & - * sin(2 * ranm) + 13. / 12. * xee * sin(3. * ranm)) / deg_to_rad + xl - - IF (present(dist)) dist = (1 - r_ecc**2) & - / (1 + r_ecc * cos(deg_to_rad * (longi - (r_peri + 180.)))) + longi = ranm + (2. * r_ecc - xee / 4.) * sin(ranm) & + + 5. / 4. * r_ecc**2 * sin(2 * ranm) + 13. / 12. * xee * sin(3. * ranm) + IF (present(dist)) dist = (1 - r_ecc**2) / (1 + r_ecc * cos(longi)) + longi = longi * rad_to_deg + xl END SUBROUTINE orbite