source: trunk/LMDZ.COMMON/libf/evolution/info_PEM_mod.F90 @ 3296

Last change on this file since 3296 was 3173, checked in by jbclement, 11 months ago

PEM:

  • Correction of script "launch_orb_1Dchained.sh" which read orbital parameters missing one interval of years in two.
  • Addition of the Martian date in "info_PEM.txt" for post-processing.

JBC

File size: 2.1 KB
RevLine 
[3096]1MODULE info_PEM_mod
[3076]2
3implicit none
4
5!=======================================================================
6contains
7!=======================================================================
8
[3149]9SUBROUTINE info_PEM(year_iter,stopPEM,i_myear,n_myear)
[2886]10
[2980]11!=======================================================================
12!
[3096]13! Purpose: Update the first line of "info_PEM.txt" to count the number of simulated Martian years
14!          Write in "info_PEM.txt" the reason why the PEM stopped and the number of simulated years
[2980]15!
[3039]16! Author: RV, JBC
[2980]17!=======================================================================
18
[3173]19use time_evol_mod, only: convert_years, year_bp_ini
[2886]20
[3076]21implicit none
[2886]22
[3076]23!----- Arguments
[3149]24integer, intent(in) :: year_iter, stopPEM ! # of year and reason to stop
[3076]25integer, intent(in) :: i_myear, n_myear          ! Current simulated Martian year and maximum number of Martian years to be simulated
[2886]26
[3076]27!----- Local variables
[3096]28logical       :: ok
29integer       :: cstat
30character(10) :: ich1, ich2, fch
[2886]31
[3076]32!----- Code
[3096]33inquire(file = 'info_PEM.txt', exist = ok)
[3039]34if (ok) then
[3096]35    write(ich1,'(i0)') i_myear
36    write(ich2,'(i0)') n_myear
[3097]37    write(fch,'(f0.4)') convert_years ! 4 digits to the right of the decimal point to respect the precision of Martian year in "launch_pem.sh"
[3096]38    call execute_command_line('sed -i "1s/.*/'//trim(ich1)//' '//trim(ich2)//' '//trim(fch)//'/" info_PEM.txt',cmdstat = cstat)
39    if (cstat > 0) then
40        error stop 'info_PEM: command exection failed!'
41    else if (cstat < 0) then
42        error stop 'info_PEM: command execution not supported!'
43    endif
44    open(1,file = 'info_PEM.txt',status = "old",position = "append",action = "write")
[3173]45    ! Martian date, Number of Martians years done by the PEM run, Number of Martians years done by the chainded simulation, Code of the stopping criterion
46    ! The conversion ratio from Planetary years to Earth years is given in the header of the file
47    write(1,*) year_bp_ini + i_myear, year_iter, i_myear, stopPEM
[3096]48    close(1)
[3039]49else
[3096]50    error stop 'The file ''info_PEM.txt'' does not exist and cannot be updated!'
[3039]51endif
52
[3096]53END SUBROUTINE info_PEM
[3039]54
[3096]55END MODULE info_PEM_mod
Note: See TracBrowser for help on using the repository browser.