Ignore:
Timestamp:
Jun 2, 2012, 1:27:00 AM (12 years ago)
Author:
aslmd
Message:

MESOSCALE. following additions for restart, nesting was not working in the latest few revisions. this is now fixed (it was a SPECIAL_NEST_SAVE issue). by the way, all restart instances in module_lmd_driver are now within precompiling flag #indef NORESTART, which means restart capabilities are on by default, but can be all switched off using -DNORESTART. NOTE: RESTART CAPABILITIES HAVE NOT BEEN TESTED WITH NESTED RUNS YET. also minor corrections: latest modifications for storm simulations added.

Location:
trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2
Files:
4 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/mars_lmd_new_storm/libf/phymars/callsedim.F

    r609 r688  
    1 link callsedim.F.modified
     1link STORM_JULIEN_LAST/my_callsedim.F
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/mars_lmd_new_storm/libf/phymars/dustlift.F

    r308 r688  
    1 link ../../../mars_lmd_new/libf/phymars/dustlift.F
     1link STORM_JULIEN_LAST/my_dustlift.F
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/phys/module_lmd_driver.F

    r683 r688  
    262262      REAL, DIMENSION(:,:,:,:), ALLOCATABLE, SAVE :: &
    263263             dq_save     
     264#ifndef NORESTART
     265      REAL, DIMENSION(:,:,:), ALLOCATABLE, SAVE :: &
     266             save_tsoil_restart
     267      REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: &
     268             save_tsurf_restart
     269      REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: &
     270             save_co2ice_restart
     271      REAL, DIMENSION(:,:,:), ALLOCATABLE, SAVE :: &
     272             save_q2_restart
     273      REAL, DIMENSION(:,:,:), ALLOCATABLE, SAVE :: &
     274             save_qsurf_restart
     275#ifdef NEWPHYS
     276      REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: &
     277             save_wstar_restart
     278      REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: &
     279             save_fluxrad_restart
     280#endif
     281#endif
    264282#else
    265283      REAL, DIMENSION(:), ALLOCATABLE, SAVE :: &
     
    269287      REAL, DIMENSION(:,:,:), ALLOCATABLE, SAVE :: &
    270288             dq_save     
    271 #endif
    272 
     289#ifndef NORESTART
    273290!! FOR RESTART
    274291      REAL, DIMENSION(:,:), ALLOCATABLE, SAVE :: &
     
    287304      REAL, DIMENSION(:), ALLOCATABLE, SAVE :: &
    288305             save_fluxrad_restart
     306#endif
     307#endif
    289308#endif
    290309
     
    415434   dt_save(:,:,:)=0.
    416435   dq_save(:,:,:,:)=0.
     436#ifndef NORESTART
     437   ! Restart save arrays
     438   ALLOCATE(save_tsoil_restart(ngrid,nsoil,max_dom))
     439   ALLOCATE(save_co2ice_restart(ngrid,max_dom))
     440   ALLOCATE(save_q2_restart(ngrid,nlayer+1,max_dom))
     441   ALLOCATE(save_qsurf_restart(ngrid,nq,max_dom))
     442   ALLOCATE(save_tsurf_restart(ngrid,max_dom))
     443   save_tsoil_restart(:,:,:)=0.
     444   save_co2ice_restart(:,:)=0.
     445   save_q2_restart(:,:,:)=0.
     446   save_qsurf_restart(:,:,:)=0.
     447   save_tsurf_restart(:,:)=0.
     448#ifdef NEWPHYS
     449   ALLOCATE(save_wstar_restart(ngrid,max_dom))
     450   ALLOCATE(save_fluxrad_restart(ngrid,max_dom))
     451   save_wstar_restart(:,:)=0.
     452   save_fluxrad_restart(:,:)=0.
     453#endif
     454#endif
    417455ENDIF
    418456IF (id .lt. max_dom) THEN
     
    433471dq_save(:,:,:)=0.
    434472flag_first_restart=.false.
    435 #endif
    436 
     473#ifndef NORESTART
    437474! Restart save arrays
    438475ALLOCATE(save_tsoil_restart(ngrid,nsoil))
     
    451488save_wstar_restart(:)=0.
    452489save_fluxrad_restart(:)=0.
     490#endif
     491#endif
    453492#endif
    454493
     
    13501389dt_save(:,:,id)=pdt(:,:)
    13511390dq_save(:,:,:,id)=pdq(:,:,:)
     1391#ifndef NORESTART
     1392save_tsoil_restart(:,:,id)=wtsoil(:,:)
     1393save_co2ice_restart(:,id)=wco2ice(:)
     1394save_q2_restart(:,:,id)=wq2(:,:)
     1395save_qsurf_restart(:,:,id)=wqsurf(:,:)
     1396save_tsurf_restart(:,id)=wtsurf(:)
     1397#ifdef NEWPHYS
     1398save_wstar_restart(:,id)=wwstar(:)
     1399save_fluxrad_restart(:,id)=wfluxrad(:)
     1400#endif
     1401#endif
    13521402#else
    13531403dp_save(:)=pdpsrf(:)
     
    13561406dt_save(:,:)=pdt(:,:)
    13571407dq_save(:,:,:)=pdq(:,:,:)
    1358 #endif
     1408#ifndef NORESTART
    13591409save_tsoil_restart(:,:)=wtsoil(:,:)
    13601410save_co2ice_restart(:)=wco2ice(:)
     
    13621412save_qsurf_restart(:,:)=wqsurf(:,:)
    13631413save_tsurf_restart(:)=wtsurf(:)
     1414#ifdef NEWPHYS
     1415save_wstar_restart(:)=wwstar(:)
     1416save_fluxrad_restart(:)=wfluxrad(:)
     1417#endif
     1418#endif
     1419#endif
    13641420DEALLOCATE(wtsoil)
    13651421DEALLOCATE(wco2ice)
     
    13681424DEALLOCATE(wtsurf)
    13691425#ifdef NEWPHYS
    1370 save_wstar_restart(:)=wwstar(:)
    1371 save_fluxrad_restart(:)=wfluxrad(:)
    13721426DEALLOCATE(wfluxrad)
    13731427DEALLOCATE(wwstar)
     
    14561510! Save key variables for restart ! 
    14571511!------------------------------------!
     1512#ifndef NORESTART
     1513#ifdef SPECIAL_NEST_SAVE
     1514MARS_TSOIL(i,:,j)=save_tsoil_restart(subs,:,id)
     1515MARS_CICE(i,j)=save_co2ice_restart(subs,id)
     1516MARS_Q2(i,kps:kpe+1,j)=save_q2_restart(subs,:,id)
     1517SELECT CASE (MARS_MODE)
     1518   CASE (1,11,12)
     1519     MARS_WICE(i,j)=save_qsurf_restart(subs,2,id)  !! see above Tracer at surface
     1520END SELECT
     1521MARS_TSURF(i,j)=save_tsurf_restart(subs,id)
     1522#ifdef NEWPHYS
     1523MARS_WSTAR(i,j)=save_wstar_restart(subs,id)
     1524MARS_FLUXRAD(i,j)=save_fluxrad_restart(subs,id)
     1525#endif
     1526#else
    14581527MARS_TSOIL(i,:,j)=save_tsoil_restart(subs,:)
    14591528MARS_CICE(i,j)=save_co2ice_restart(subs)
     
    14671536MARS_WSTAR(i,j)=save_wstar_restart(subs)
    14681537MARS_FLUXRAD(i,j)=save_fluxrad_restart(subs)
     1538#endif
     1539#endif
    14691540#endif
    14701541
Note: See TracChangeset for help on using the changeset viewer.