Ignore:
Timestamp:
Mar 24, 2014, 9:46:50 AM (11 years ago)
Author:
aslmd
Message:

LMDZ.MARS + MESOSCALE

A quite major commit, at least for MESOSCALE.
In a word: any ngrid deserves to be free.

  • no need to recompile when changing number of horizontal grid points or number of processors
  • latest version of LMDZ.MARS physics can be used
  • WARNING! Nesting is still yet to be fixed (since r1027)

Also some small bug fixes to LMDZ.MARS.

Changes in LMDZ.MARS


--> fixed a potential bug in thermal plume model because zlmax was computed both in thermcell_main_mars and calltherm_interface... so made it an OUT argument of calltherm_interface. also: changed the name to limz. and added precompiling flags to avoid the use of planetwide in MESOSCALE. in MESOSCALE we just go high enough (nlayer-5) and do not care about computational cost (although we certainly gain from not using MAXVAL).
--> moved allocations upward in inifis. does not change anything for GCM, but make MESOSCALE modifications simpler, and overall make inifis better organized: first allocations, then reading callphys.def file.
--> added precompiling flags around lines that are both useless for MESOSCALE (notably I/O) and recently adapted to parallel computations in the GCM
--> tidied up what is MESOSCALE vs. GCM in surfini

Changes in MESOSCALE


--> changed makemeso to allow dynamically set nx ny nprocs
--> changed makemeso to remove links to Fortran code adapted to parallel GCM and useless for mesoscale
--> changed ngridmx to ngrid in inifis includes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/libf/phymars/aeroptproperties.F

    r1047 r1212  
    12471247            ENDDO ! ig
    12481248          ENDDO ! lg
     1249#ifndef MESOSCALE
    12491250          write(out_str(1:1),'(i1.1)') out_nchannel
    12501251          call WRITEDIAGFI(ngrid,'qextvis'//out_str,"Ext.efficiency","",
     
    12541255          call WRITEDIAGFI(ngrid,'gvis'//out_str,"Asym.Factor","",
    12551256     &                     out_ndim,out_g)
     1257#endif
    12561258c     -------------------------------------------------------------
    12571259        ENDDO ! out_nchannel
     
    12681270            ENDDO ! ig
    12691271          ENDDO ! lg
     1272#ifndef MESOSCALE
    12701273          write(out_str(1:1),'(i1.1)') out_nchannel
    12711274       call WRITEDIAGFI(ngrid,'qextir'//out_str,"Ext.efficiency","",
     
    12751278       call WRITEDIAGFI(ngrid,'gir'//out_str,"Asym.Factor","",
    12761279     &                     out_ndim,out_g)
     1280#endif
    12771281c     -------------------------------------------------------------
    12781282        ENDDO ! out_nchannel
     1283#ifndef MESOSCALE
    12791284        call WRITEDIAGFI(ngrid,"omegvisref","Sing.Scat.Alb.","",
    12801285     &                   out_ndim,omegaREFvis3d(1,1,out_iaer))
    12811286        call WRITEDIAGFI(ngrid,"omegirref","Sing.Scat.Alb.","",
    12821287     &                   out_ndim,omegaREFir3d(1,1,out_iaer))
     1288#endif
    12831289      ENDIF ! out_qwg
    12841290c==================================================================
Note: See TracChangeset for help on using the changeset viewer.