Ignore:
Timestamp:
Mar 31, 2017, 11:31:38 AM (8 years ago)
Author:
emillour
Message:

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:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.COMMON/libf/dyn3d/gcm.F90

    r1672 r1682  
    417417
    418418  !-----------------------------------------------------------------------
    419   !   Initialisation de la physique :
    420   !   -------------------------------
    421 
    422   IF ((iflag_phys==1).or.(iflag_phys>=100)) THEN
    423      ! Physics:
    424 #ifdef CPP_PHYS
    425      CALL iniphysiq(iim,jjm,llm, &
    426           (jjm-1)*iim+2,comm_lmdz, &
    427           daysec,day_ini,dtphys/nsplit_phys, &
    428           rlatu,rlatv,rlonu,rlonv,aire,cu,cv,rad,g,r,cpp, &
    429           iflag_phys)
    430 #endif
    431   ENDIF ! of IF ((iflag_phys==1).or.(iflag_phys>=100))
    432 
    433   !-----------------------------------------------------------------------
    434419  !   Initialisation des I/O :
    435420  !   ------------------------
     
    465450#endif
    466451
     452
     453  !-----------------------------------------------------------------------
     454  !   Initialisation de la physique :
     455  !   -------------------------------
     456
     457  IF ((iflag_phys==1).or.(iflag_phys>=100)) THEN
     458     ! Physics:
     459#ifdef CPP_PHYS
     460     CALL iniphysiq(iim,jjm,llm, &
     461          (jjm-1)*iim+2,comm_lmdz, &
     462          daysec,day_ini,dtphys/nsplit_phys, &
     463          rlatu,rlatv,rlonu,rlonv,aire,cu,cv,rad,g,r,cpp, &
     464          iflag_phys)
     465#endif
     466  ENDIF ! of IF ((iflag_phys==1).or.(iflag_phys>=100))
     467
     468
    467469  if (planet_type=="mars") then
    468470    ! For Mars we transmit day_ini
Note: See TracChangeset for help on using the changeset viewer.