Ignore:
Timestamp:
Jul 24, 2017, 12:00:05 AM (7 years ago)
Author:
aslmd
Message:

MESOSCALE. converged versions for all dynphy_wrf_*/update_outputs_physiq_mod.F ; mostly cosmetic, but typo corrected in prescribed_void ; implicit none added for Mars ; and missing vertical dimensions in Mars

Location:
trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/phys
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/phys/dynphy_wrf_mars_lmd_new/update_outputs_physiq_mod.F

    r1724 r1738  
    1414   use surfdat_h, only: tsurf, co2ice, qsurf
    1515
     16   implicit none
     17
    1618   INTEGER, INTENT(IN) :: ims,ime,jms,jme
    1719   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe
     
    5456   use comsoil_h, only: tsoil
    5557
     58   implicit none
     59
    5660   INTEGER, INTENT(IN) :: ims,ime,jms,jme
    5761   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe,nsoil
     
    8791   use dimradmars_mod, only: fluxrad
    8892
     93   implicit none
     94
    8995   INTEGER, INTENT(IN) :: ims,ime,jms,jme
    9096   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe
     
    114120SUBROUTINE update_outputs_physiq_turb( &
    115121            ims,ime,jms,jme,kms,kme,&
    116             ips,ipe,jps,jpe,&
     122            ips,ipe,jps,jpe,kps,kpe,&
    117123            M_Q2,M_WSTAR,&
    118124            HFMAX,ZMAX,USTM,HFX)
     
    120126   use turb_mod, only: q2,wstar,ustar,sensibFlux,&
    121127                        hfmax_th,zmax_th
     128   implicit none
    122129
    123130   INTEGER, INTENT(IN) :: ims,ime,jms,jme,kms,kme
    124    INTEGER, INTENT(IN) :: ips,ipe,jps,jpe
    125    INTEGER :: i,j,subs   
     131   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe,kps,kpe
     132   INTEGER :: i,j,subs
    126133   REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT)  :: &
    127134     M_WSTAR,HFMAX,ZMAX,USTM,HFX
    128135   REAL, DIMENSION( ims:ime, kms:kme+1, jms:jme ), INTENT(INOUT) :: M_Q2
    129  
     136
    130137   DO j = jps,jpe
    131138   DO i = ips,ipe
     
    148155     HFX(i,j) = sensibFlux(subs)
    149156
    150    ENDDO
    151    ENDDO
     157  ENDDO
     158  ENDDO
    152159
    153160END SUBROUTINE update_outputs_physiq_turb
     
    171178     MTOT,ICETOT,TAU_ICE
    172179   REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), INTENT(INOUT ) :: &
    173      HR_SW,HR_LW,RDUST,VMR_ICE,RICE,HR_DYN,DT,DTRAD,DTVDF,DTAJS
     180     HR_SW,HR_LW,HR_DYN,RDUST,VMR_ICE,RICE,DT,DTRAD,DTVDF,DTAJS
    174181   INTEGER :: i,j,subs
    175182
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/phys/dynphy_wrf_prescribed_void_lmd_new/update_outputs_physiq_mod.F

    r1724 r1738  
    5757
    5858   INTEGER, INTENT(IN) :: ims,ime,jms,jme,kms,kme
    59    INTEGER, INTENT(IN) :: ips,ipe,jps,jpe
     59   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe,kps,kpe
    6060   REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT)  :: &
    6161     M_WSTAR,HFMAX,ZMAX,USTM,HFX
    6262   REAL, DIMENSION( ims:ime, kms:kme+1, jms:jme ), INTENT(INOUT) :: M_Q2
    63    
     63
    6464END SUBROUTINE update_outputs_physiq_turb
    6565
     
    6767!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    6868SUBROUTINE update_outputs_physiq_diag( &
    69            ims,ime,jms,jme,kms,kme,&
    70            ips,ipe,jps,jpe,kps,kpe,&
    71            SWDOWNZ,TAU_DUST,QSURFDUST,&
    72            MTOT,ICETOT,TAU_ICE,&
    73            HR_SW,HR_LW,HR_DYN,DT,DTRAD,DTVDF,DTAJS,&
    74            RDUST,VMR_ICE,RICE)
     69            ims,ime,jms,jme,kms,kme,&
     70            ips,ipe,jps,jpe,kps,kpe,&
     71            SWDOWNZ,TAU_DUST,QSURFDUST,&
     72            MTOT,ICETOT,TAU_ICE,&
     73            HR_SW,HR_LW,HR_DYN,DT,DTRAD,DTVDF,DTAJS,&
     74            RDUST,VMR_ICE,RICE)
    7575
    7676   INTEGER, INTENT(IN) :: ims,ime,jms,jme,kms,kme
     
    8080     MTOT,ICETOT,TAU_ICE
    8181   REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), INTENT(INOUT ) :: &
    82      HR_SW,HR_LW,HR_DYN,RDUST,VMR_ICE,RICE,DT,DTRA,DTVDF,DTAJS
    83    INTEGER :: i,j,k,subs
     82     HR_SW,HR_LW,HR_DYN,RDUST,VMR_ICE,RICE,DT,DTRAD,DTVDF,DTAJS
     83   INTEGER :: i,j,subs,k
    8484   REAL, DIMENSION(kms:kme) :: phr_sw,phr_lw,phr_dyn
    8585
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/phys/dynphy_wrf_venus_lmd_new/update_outputs_physiq_mod.F

    r1724 r1738  
    1212            M_H2OICE)
    1313
    14    !use surfdat_h, only: tsurf
    1514   use phys_state_var_mod, only : ftsol
    1615
     
    5049            M_TSOIL)
    5150
    52    !use comsoil_h, only: tsoil
    5351   use phys_state_var_mod, only : ftsoil
    5452
     
    8684            M_FLUXRAD)
    8785
    88    !use dimradmars_mod, only: fluxrad
    8986   use phys_state_var_mod, only : radsol
    9087
     
    122119            HFMAX,ZMAX,USTM,HFX)
    123120
    124    use turb_mod, only: q2,wstar,yustar,sens!,&
    125    !                     hfmax_th,zmax_th
     121   use turb_mod, only: q2,wstar,yustar,sens
    126122
    127123   implicit none
     
    149145
    150146     !! output only (arrays already in phys modules)
    151      !HFMAX(i,j) = HFMAX_TH(subs)
    152      !ZMAX(i,j) = ZMAX_TH(subs)
    153147     USTM(i,j) = yustar(subs)
    154148     HFX(i,j) = sens(subs)
     
    159153END SUBROUTINE update_outputs_physiq_turb
    160154
    161 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
    162 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
    163 SUBROUTINE update_outputs_physiq_diag( & 
    164            ims,ime,jms,jme,kms,kme,&
    165            ips,ipe,jps,jpe,kps,kpe,&
    166            SWDOWNZ,TAU_DUST,QSURFDUST,&
    167            MTOT,ICETOT,TAU_ICE,&
    168            HR_SW,HR_LW,HR_DYN,DT,DTRAD,DTVDF,DTAJS,&
    169            RDUST,VMR_ICE,RICE)
    170 
    171    USE comm_wrf !! to get fields to be written from physiq 
    172 
    173    INTEGER, INTENT(IN) :: ims,ime,jms,jme,kms,kme 
    174    INTEGER, INTENT(IN) :: ips,ipe,jps,jpe,kps,kpe 
    175    REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: & 
    176      SWDOWNZ,TAU_DUST,QSURFDUST,& 
    177      MTOT,ICETOT,TAU_ICE 
    178   REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), INTENT(INOUT ) :: &
     155!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     156!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     157SUBROUTINE update_outputs_physiq_diag( &
     158            ims,ime,jms,jme,kms,kme,&
     159            ips,ipe,jps,jpe,kps,kpe,&
     160            SWDOWNZ,TAU_DUST,QSURFDUST,&
     161            MTOT,ICETOT,TAU_ICE,&
     162            HR_SW,HR_LW,HR_DYN,DT,DTRAD,DTVDF,DTAJS,&
     163            RDUST,VMR_ICE,RICE)
     164
     165   USE comm_wrf !! to get fields to be written from physiq
     166
     167   INTEGER, INTENT(IN) :: ims,ime,jms,jme,kms,kme
     168   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe,kps,kpe
     169   REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT) :: &
     170     SWDOWNZ,TAU_DUST,QSURFDUST,&
     171     MTOT,ICETOT,TAU_ICE
     172   REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), INTENT(INOUT ) :: &
    179173     HR_SW,HR_LW,HR_DYN,RDUST,VMR_ICE,RICE,DT,DTRAD,DTVDF,DTAJS
    180   INTEGER :: i,j,subs
    181  
    182    DO j = jps,jpe 
    183    DO i = ips,ipe 
    184  
    185    !-----------------------------------!
    186    ! 1D subscript for physics "cursor" !
    187    !-----------------------------------!
    188    subs = (j-jps)*(ipe-ips+1)+(i-ips+1)
    189  
    190    !! get diagnostics from physics
    191    SWDOWNZ(i,j) = comm_SWDOWNZ(subs)
    192    MTOT(i,j) = comm_MTOT(subs)
    193    HR_SW(i,kps:kpe,j) = comm_HR_SW(subs,kps:kpe)
    194    HR_LW(i,kps:kpe,j) = comm_HR_LW(subs,kps:kpe)
    195    HR_DYN(i,kps:kpe,j) = comm_HR_DYN(subs,kps:kpe)
    196    DT(i,kps:kpe,j) = comm_DT(subs,kps:kpe)
    197    DTRAD(i,kps:kpe,j) = comm_DT_RAD(subs,kps:kpe)
    198    DTVDF(i,kps:kpe,j) = comm_DT_VDF(subs,kps:kpe)
    199    DTAJS(i,kps:kpe,j) = comm_DT_AJS(subs,kps:kpe)
    200 
    201    ENDDO 
    202    ENDDO 
    203  
    204   CALL deallocate_comm_wrf
    205  
     174   INTEGER :: i,j,subs
     175
     176   DO j = jps,jpe
     177   DO i = ips,ipe
     178
     179     !-----------------------------------!
     180     ! 1D subscript for physics "cursor" !
     181     !-----------------------------------!
     182     subs = (j-jps)*(ipe-ips+1)+(i-ips+1)
     183
     184     !! get diagnostics from physics
     185     SWDOWNZ(i,j) = comm_SWDOWNZ(subs)
     186     MTOT(i,j) = comm_MTOT(subs)
     187     HR_SW(i,kps:kpe,j) = comm_HR_SW(subs,kps:kpe)
     188     HR_LW(i,kps:kpe,j) = comm_HR_LW(subs,kps:kpe)
     189     HR_DYN(i,kps:kpe,j) = comm_HR_DYN(subs,kps:kpe)
     190     DT(i,kps:kpe,j) = comm_DT(subs,kps:kpe)
     191     DTRAD(i,kps:kpe,j) = comm_DT_RAD(subs,kps:kpe)
     192     DTVDF(i,kps:kpe,j) = comm_DT_VDF(subs,kps:kpe)
     193     DTAJS(i,kps:kpe,j) = comm_DT_AJS(subs,kps:kpe)
     194
     195   ENDDO
     196   ENDDO
     197
     198   CALL deallocate_comm_wrf
     199
    206200END SUBROUTINE update_outputs_physiq_diag
    207201
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/phys/dynphy_wrf_void_lmd_new/update_outputs_physiq_mod.F

    r1724 r1738  
    5252SUBROUTINE update_outputs_physiq_turb( &
    5353            ims,ime,jms,jme,kms,kme,&
    54             ips,ipe,jps,jpe,&
     54            ips,ipe,jps,jpe,kps,kpe,&
    5555            M_Q2,M_WSTAR,&
    5656            HFMAX,ZMAX,USTM,HFX)
    5757
    5858   INTEGER, INTENT(IN) :: ims,ime,jms,jme,kms,kme
    59    INTEGER, INTENT(IN) :: ips,ipe,jps,jpe
     59   INTEGER, INTENT(IN) :: ips,ipe,jps,jpe,kps,kpe
    6060   REAL, DIMENSION( ims:ime, jms:jme ), INTENT(INOUT)  :: &
    6161     M_WSTAR,HFMAX,ZMAX,USTM,HFX
    6262   REAL, DIMENSION( ims:ime, kms:kme+1, jms:jme ), INTENT(INOUT) :: M_Q2
    63  
     63
    6464END SUBROUTINE update_outputs_physiq_turb
    6565
     
    8080     MTOT,ICETOT,TAU_ICE
    8181   REAL, DIMENSION( ims:ime, kms:kme, jms:jme ), INTENT(INOUT ) :: &
    82      HR_SW,HR_LW,RDUST,VMR_ICE,RICE,HR_DYN,DT,DTRAD,DTVDF,DTAJS
     82     HR_SW,HR_LW,HR_DYN,RDUST,VMR_ICE,RICE,DT,DTRAD,DTVDF,DTAJS
    8383   INTEGER :: i,j,subs
    8484
Note: See TracChangeset for help on using the changeset viewer.