source: trunk/LMDZ.COMMON/libf/evolution/abort_pem.F @ 2902

Last change on this file since 2902 was 2888, checked in by llange, 3 years ago

PEM

  • Following r-2886-5, debugging some issues ( conservation of H2O, water_reservoir not initialized, info_pem which was not working)
  • Cleaning of some redundant routines (e.g., stopping criterion of the PEM) and variables renamed (e.g., alpha_criterion now transofrmed in ice_criterion)
  • Ice table subroutine is now in a module and recalled "compute_ice_table_equilibrium" (v.s. dynamic ice table, efforts ongoing)
  • Abort_pem introduced to avoid just stopping the pem with raw "stop" in the codes
  • conf_pem has been improved so that values are not hard coded (e.g., geothermal flux, mass of water_reservoir)
  • Regolith thermal properties updated in a cleaner way

(Not atomic commit, sorry)
LL & RV

File size: 1.2 KB
Line 
1!
2! $Id: abort_pem.F 1425 2010-09-02 13:45:23Z lguez $
3!
4c
5c
6      SUBROUTINE abort_pem(modname, message, ierr)
7     
8#ifdef CPP_IOIPSL
9      USE IOIPSL
10#else
11! if not using IOIPSL, we still need to use (a local version of) getin_dump
12      USE ioipsl_getincom
13#endif
14
15#ifdef CPP_XIOS
16    ! ug Pour les sorties XIOS
17      USE wxios
18#endif
19
20#include "iniprint.h"
21 
22C
23C Stops the simulation cleanly, closing files and printing various
24C comments
25C
26C  Input: modname = name of calling program
27C         message = stuff to print
28C         ierr    = severity of situation ( = 0 normal )
29
30      character(len=*), intent(in):: modname
31      integer, intent(in):: ierr
32      character(len=*), intent(in):: message
33
34      write(lunout,*) 'in abort_gcm'
35
36#ifdef CPP_XIOS
37    !Fermeture propre de XIOS
38      CALL wxios_close()
39#endif
40
41#ifdef CPP_IOIPSL
42      call histclo
43      call restclo
44#endif
45      call getin_dump
46c     call histclo(2)
47c     call histclo(3)
48c     call histclo(4)
49c     call histclo(5)
50      write(lunout,*) 'Stopping in ', modname
51      write(lunout,*) 'Reason = ',message
52      if (ierr .eq. 0) then
53        write(lunout,*) 'Everything is cool'
54        stop
55      else
56        write(lunout,*) 'Houston, we have a problem ', ierr
57        stop 1
58      endif
59      END
Note: See TracBrowser for help on using the repository browser.