Ignore:
Timestamp:
Jan 10, 2020, 12:09:43 AM (5 years ago)
Author:
dubos
Message:

simple_physics : cleanup phyparam and iniphyparam

Location:
dynamico_lmdz/simple_physics/phyparam/dynphy_lonlat
Files:
2 edited
1 moved

Legend:

Unmodified
Added
Removed
  • dynamico_lmdz/simple_physics/phyparam/dynphy_lonlat/iniphysiq_mod.F90

    r4222 r4223  
    2121    USE phyaqua_mod, ONLY: iniaqua
    2222    USE nrtype, ONLY: pi
    23    
     23!    USE vertical_layers_mod, ONLY : presnivs
     24
    2425    !
    2526    !=======================================================================
     
    8182       CALL iniaqua(klon_omp,iflag_phys)
    8283    ENDIF
     84!
     85!    call iophys_ini('phys.nc    ',presnivs)
    8386
    8487    CALL setup_phyparam
  • dynamico_lmdz/simple_physics/phyparam/dynphy_lonlat/iophys.F90

    r4196 r4223  
     1MODULE iophys
     2  IMPLICIT NONE
     3  PRIVATE
     4
     5  PUBLIC :: iophys_ini
     6 
     7  CONTAINS
     8
    19      subroutine iophys_ecrit(nom,lllm,titre,unite,px)
    210      USE dimphy
     
    6775
    6876!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     77
     78      SUBROUTINE writefield1(name, longname, unit, var)
     79        CHARACTER(*), INTENT(IN) :: name, longname, unit
     80        REAL, INTENT(IN)         :: var(:)
     81        CALL iophys_ecrit(name, 1, longname, unit, var)
     82      END SUBROUTINE writefield1
     83
     84      SUBROUTINE writefield2(name, longname, unit, var)
     85        CHARACTER(*), INTENT(IN) :: name, longname, unit
     86        REAL, INTENT(IN)         :: var(:,:)
     87        PRINT *, 'writefield2', name, SHAPE(var)
     88        CALL iophys_ecrit(name, SIZE(var,2), longname, unit, var)
     89      END SUBROUTINE writefield2
     90
     91
     92!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    6993      SUBROUTINE iophys_ini(fichnom,presnivs)
    7094      USE mod_phys_lmdz_para
    71 
     95      USE writefield_mod
    7296      IMPLICIT NONE
    7397
     
    100124!   ----------
    101125
     126writefield1_plugin => writefield1
     127writefield2_plugin => writefield2
     128
    102129!$OMP MASTER
    103130    IF (is_mpi_root) THEN       
     
    109136
    110137      END
     138
     139END MODULE
  • dynamico_lmdz/simple_physics/phyparam/dynphy_lonlat/physiq_mod.F90

    r4214 r4223  
    2828   
    2929    USE infotrac_phy, only : nqtot
     30    USE iophys,       ONLY : iophys_ini
    3031    USE phyparam_mod, ONLY : phyparam
    3132    !
     
    7273    ENDIF
    7374   
    74     CALL phyparam(klon,klev,nqtot, &
    75          debut,lafin, &
     75    IF(debut) CALL iophys_ini('phys.nc    ',presnivs) ! calls iotd_ini
     76
     77    CALL phyparam(klon,klev,       &
     78         debut,lafin,              &
    7679         rjourvrai,gmtime,pdtphys, &
    77          paprs,pplay,pphi,pphis,presnivs, &
    78          u,v,t,qx, &
    79          flxmass_w, &
    80          d_u,d_v,d_t,d_qx,d_ps)
     80         paprs,pplay,pphi,         &
     81         u,v,t,                    &
     82         d_u,d_v,d_t,d_ps)
     83
     84    IF(lafin) THEN
     85       call iotd_fin
     86       PRINT*,'Ecriture du fichier de reinitialiastion de la physique'
     87!       write(75)  tsurf,tsoil FIXME
     88    ENDIF
     89
    8190   
    8291    print*,'PHYDEV: itau=',itau
Note: See TracChangeset for help on using the changeset viewer.