Changeset 3974 for trunk/LMDZ.MARS/libf/phymars/tabfi.F
- Timestamp:
- Nov 21, 2025, 4:28:06 PM (5 weeks ago)
- File:
-
- 1 edited
-
trunk/LMDZ.MARS/libf/phymars/tabfi.F (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/libf/phymars/tabfi.F
r3902 r3974 61 61 use time_phylmdz_mod, only: daysec, dtphys 62 62 use planete_h, only: aphelie, emin_turb, lmixmin, obliquit, 63 & peri_day, periheli, year_day 63 & peri_day, periheli, year_day, 64 & lsp2solp, iniorbit 65 64 66 implicit none 65 67 … … 460 462 write(*,*) 'perihelion =',periheli 461 463 write(*,*) 'and',year_day,'sols/year' 462 call lsp2solp(peri_ls,peri_day ,aphelie,periheli,year_day)464 call lsp2solp(peri_ls,peri_day) 463 465 write(*,*) 'peri_day (new value):',peri_day 464 466 … … 543 545 544 546 c----------------------------------------------------------------------- 547 c Initialization of orbital parameters 548 c----------------------------------------------------------------------- 549 call iniorbit() 550 551 c----------------------------------------------------------------------- 545 552 c Case when using a start file from before March 1996 (without iceradius... 546 553 c----------------------------------------------------------------------- … … 555 562 end if 556 563 557 c-----------------------------------------------------------------------558 564 END SUBROUTINE tabfi 559 565 560 561 562 563 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!564 ! gives sol at perihelion for ls at perihelion (for precession cycles)565 subroutine lsp2solp(lsp,solp,aphelie,periheli,year_day)566 567 implicit none568 ! Arguments:569 real lsp ! Input: ls at perihelion570 real solp ! Output: sol at perihelion571 real aphelie,periheli,year_day ! Input: parameters572 573 ! Local:574 double precision zx0 ! eccentric anomaly at Ls=0575 double precision e_elips576 double precision pi,degrad577 578 parameter (pi=4.d0*atan(1.d0))579 parameter (degrad=180.d0/pi)580 581 e_elips=(aphelie-periheli)/(aphelie+periheli)582 zx0 = -2.0*datan(dtan(0.5*lsp/degrad)583 . *dsqrt((1.-e_elips)/(1.+e_elips)))584 if (zx0 .le. 0.) zx0 = zx0 + 2.*pi585 586 solp = year_day*(1.-(zx0-e_elips*dsin(zx0))/(2.*pi))587 588 589 end subroutine lsp2solp590 591 592 566 END MODULE tabfi_mod 593
Note: See TracChangeset
for help on using the changeset viewer.
