source: trunk/LMDZ.GENERIC/libf/phy_common/init_print_control_mod.F90 @ 2219

Last change on this file since 2219 was 1682, checked in by emillour, 8 years ago

All GCMs: set things up to enable pluging physics with dynamico

  • dyn3d
  • gcm.F90 : move I/O initialization (dates) to be done before physics

initialization

  • dyn3dpar
  • gcm.F : move I/O initialization (dates) to be done before physics

initialization

  • dynphy_lonlat:
  • inigeomphy_mod.F90 : add ind_cell_glo computation and transfer

to init_geometry

  • phy_common:
  • geometry_mod.F90 : add ind_cell_glo module variable to store global

column index

  • print_control_mod.F90 : make initialization occur via init_print_control_mod

to avoid circular module dependencies

  • init_print_control_mod.F90 : added to initialize print_control_mod module

variables

  • mod_phys_lmdz_mpi_data.F90 : use print_control_mod (rather than iniprint.h)
  • mod_phys_lmdz_para.F90 : use print_control_mod (rather than iniprint.h)
  • mod_phys_lmdz_omp_data.F90 : add is_omp_master (alias of is_omp_root) module

variable and use print_control_mod (rather than
iniprint.h)

  • physics_distribution_mod.F90 : add call to init_dimphy in

init_physics_distribution

  • xios_writefield.F90 : generic routine to output field with XIOS (for debug)
  • misc:
  • handle_err_m.F90 : call abort_physic, rather than abort_gcm
  • wxios.F90 : updates to enable unstructured grids

set module variable g_ctx_name to "LMDZ"
wxios_init(): remove call to wxios_context_init
wxios_context_init(): call xios_context_initialize with COMM_LMDZ_PHY
add routine wxios_set_context() to get handle and set context to XIOS
wxios_domain_param(): change arguments and generate the domain in-place
add wxios_domain_param_unstructured(): generate domain for unstructured case

NB: access is via "domain group" (whereas it is via "domain" in

wxios_domain_param)

  • dynphy_lonlat/phy[std|mars|venus|titan]:
  • iniphysiq_mod.F90 : Remove call to init_dimphy (which is now done in

phy_common/physics_distribution_mod.F90)

EM

File size: 2.0 KB
Line 
1MODULE init_print_control_mod
2
3! init_print_control to initialize print_control_mod variables
4! not included there because of circular dependecy issues
5
6CONTAINS
7
8  SUBROUTINE init_print_control
9  USE print_control_mod, ONLY : set_print_control
10  USE ioipsl_getin_p_mod, ONLY : getin_p
11  USE mod_phys_lmdz_para, ONLY: is_omp_root, is_master
12  IMPLICIT NONE
13
14    INTEGER :: lunout ! default output file identifier (6==screen)
15    INTEGER :: prt_level ! Output level
16    LOGICAL :: debug ! flag to specify if in "debug mode"
17    LOGICAL :: opened
18    INTEGER :: number
19   
20    !Config  Key  = prt_level
21    !Config  Desc = niveau d'impressions de débogage
22    !Config  Def  = 0
23    !Config  Help = Niveau d'impression pour le débogage
24    !Config         (0 = minimum d'impression)
25    prt_level = 0
26    CALL getin_p('prt_level',prt_level)
27
28    !Config  Key  = lunout
29    !Config  Desc = unite de fichier pour les impressions
30    !Config  Def  = 6
31    !Config  Help = unite de fichier pour les impressions
32    !Config         (defaut sortie standard = 6)
33    lunout=6
34    CALL getin_p('lunout', lunout)
35
36    IF (is_omp_root) THEN
37      IF (lunout /= 5 .and. lunout /= 6) THEN
38         INQUIRE(FILE='lmdz.out_0000',OPENED=opened,NUMBER=number)
39         IF (opened) THEN
40           lunout=number
41         ELSE
42           OPEN(UNIT=lunout,FILE='lmdz.out_0000',ACTION='write',  &
43                STATUS='unknown',FORM='formatted')
44         ENDIF
45      ENDIF
46    ENDIF
47
48    !Config  Key  = debug
49    !Config  Desc = mode debogage
50    !Config  Def  = false
51    !Config  Help = positionne le mode debogage
52
53    debug = .FALSE.
54    CALL getin_p('debug',debug)
55   
56    IF (is_master) THEN
57      WRITE(lunout,*)"init_print_control: prt_level=",prt_level
58      WRITE(lunout,*)"init_print_control: lunout=",lunout
59      WRITE(lunout,*)"init_print_control: debug=",debug     
60    ENDIF
61   
62    CALL set_print_control(lunout,prt_level,debug)
63
64  END SUBROUTINE init_print_control 
65
66END MODULE init_print_control_mod
67
Note: See TracBrowser for help on using the repository browser.