Ignore:
Timestamp:
May 19, 2014, 10:05:08 AM (11 years ago)
Author:
aslmd
Message:

LMDZ.MARS
IMPORTANT CHANGE

  • Remove all reference/use of nlayermx and dimphys.h
  • Made use of automatic arrays whenever arrays are needed with dimension nlayer
  • Remove lots of obsolete reference to dimensions.h
  • Converted iono.h and param_v4.h into corresponding modules

(with embedded subroutine to allocate arrays)
(no arrays allocated if thermosphere not used)

  • Deleted param.h and put contents into module param_v4_h
  • Adapted testphys1d, newstart, etc...
  • Made DATA arrays in param_read to be initialized by subroutine

fill_data_thermos in module param_v4_h

  • Optimized computations in paramfoto_compact (twice less dlog10 calculations)
  • Checked consistency before/after modification in debug mode
  • Checked performance is not impacted (same as before)
File:
1 edited

Legend:

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

    r1047 r1266  
    11      SUBROUTINE flusv(KDLON,nsf,n,omega,g,tau,emis,bh,bsol,fah,fdh)
    2       use dimradmars_mod, only: ndlo2, ndlon
     2      use dimradmars_mod, only: ndlo2, ndlon, nflev
    33      IMPLICIT NONE
    44c.......................................................................
     
    3737c
    3838#include "dimensions.h"
    39 #include "dimphys.h"
    40 !#include "dimradmars.h"
    4139c.......................................................................
    4240c  declaration des arguments
     
    5250      INTEGER iv,i,j
    5351      REAL beta,gama1,gama2,amu1,grgama,b0,b1
    54       REAL a(NDLON,4*nlayermx),b(NDLON,4*nlayermx)
    55      &    ,d(NDLON,4*nlayermx),e(NDLON,4*nlayermx)
    56      &    ,y(NDLON,4*nlayermx)
    57      &    ,alambda(NDLON,2*nlayermx)
    58      &    ,e1(NDLON,2*nlayermx),e2(NDLON,2*nlayermx)
    59      &    ,e3(NDLON,2*nlayermx),e4(NDLON,2*nlayermx)
    60      &    ,cah(NDLON,2*nlayermx),cab(NDLON,2*nlayermx)
    61      &    ,cdh(NDLON,2*nlayermx),cdb(NDLON,2*nlayermx)
    62       REAL grg(NDLON,2*nlayermx),grh(NDLON,2*nlayermx)
    63      &    ,grj(NDLON,2*nlayermx),grk(NDLON,2*nlayermx)
    64      &    ,alpha1(NDLON,2*nlayermx),alpha2(NDLON,2*nlayermx)
    65      &    ,sigma1(NDLON,2*nlayermx),sigma2(NDLON,2*nlayermx)
     52      REAL a(NDLON,4*nflev),b(NDLON,4*nflev)
     53     &    ,d(NDLON,4*nflev),e(NDLON,4*nflev)
     54     &    ,y(NDLON,4*nflev)
     55     &    ,alambda(NDLON,2*nflev)
     56     &    ,e1(NDLON,2*nflev),e2(NDLON,2*nflev)
     57     &    ,e3(NDLON,2*nflev),e4(NDLON,2*nflev)
     58     &    ,cah(NDLON,2*nflev),cab(NDLON,2*nflev)
     59     &    ,cdh(NDLON,2*nflev),cdb(NDLON,2*nflev)
     60      REAL grg(NDLON,2*nflev),grh(NDLON,2*nflev)
     61     &    ,grj(NDLON,2*nflev),grk(NDLON,2*nflev)
     62     &    ,alpha1(NDLON,2*nflev),alpha2(NDLON,2*nflev)
     63     &    ,sigma1(NDLON,2*nflev),sigma2(NDLON,2*nflev)
    6664      INTEGER nq
    6765      PARAMETER (nq=8)
     
    272270
    273271      SUBROUTINE sys3v(KDLON,n,a,b,d,e,y)
    274       use dimradmars_mod, only: ndlon, ndlo2
     272      use dimradmars_mod, only: ndlon, ndlo2, nflev
    275273      IMPLICIT NONE
    276274c.......................................................................
     
    291289c
    292290c.......................................................................
    293 c  include des dimensions locales
    294 c
    295 #include "dimensions.h"
    296 #include "dimphys.h"
    297 !#include "dimradmars.h"
    298 c.......................................................................
    299291c  declaration des arguments
    300292c
     
    305297c
    306298      INTEGER iv,i
    307       REAL as(NDLON,4*nlayermx),ds(NDLON,4*nlayermx)
    308      &    ,x(NDLON,4*nlayermx)
     299      REAL as(NDLON,4*nflev),ds(NDLON,4*nflev)
     300     &    ,x(NDLON,4*nflev)
    309301c.......................................................................
    310302c
Note: See TracChangeset for help on using the changeset viewer.