Ignore:
Timestamp:
Mar 2, 2015, 5:11:07 PM (9 years ago)
Author:
lguez
Message:

Bug fix in fxhyp. There was some bad logic for the shifting of
longitude grids rlonuv, rlonv, rlonm025 and rlonp025 toward [- pi,
pi]. In some cases, one of the four grids was not shifted and the
others were. For example, you could see the bug with: iim = 48, clon =
20, grossismx = 3, dzoomx = 0.15. The bad logic involved the variable
is2 in the loop on ik = 1, 4. The loop included some tests depending
on ik. The whole thing was quite convoluted. Rewrote fxhyp. In
particular, replaced the loop on ik by a call to a new procedure,
invert_zoom_x. fxhyp.F was in dyn3d, it is replaced by fxhyp_m.F90
which is in dyn3d_common. Removed several arguments of fxhyp: zoom
parameters are accessed through serre.h; rlonm025 and rlonp025 were
not used in inigeom; min and max of longitude steps are written inside
fxhyp.

Some simplifications and modernizations in fyhyp. In particular,
several arguments are removed: zoom parameters are accessed through
serre.h; yprimv was not used in inigeom; min and max of latitude steps
are written inside fyhyp.

Removed now useless intermediary procedure fxyhyper.

Changed default value of dzoomx and dzoomy from 0 to 0.2. dzoom[xy] is
only needed when grossism[xy] > 1 and then it should be > 0.

dzoom[xy] can no longer be the extent of the zoom in degrees: it must
be expressed as the fraction of the total domain.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/dyn3d/conf_gcm.F90

    r2151 r2218  
    734734     !Config  Help = extension en longitude  de la zone du zoom 
    735735     !Config         ( fraction de la zone totale)
    736      dzoomx = 0.0
     736     dzoomx = 0.2
    737737     CALL getin('dzoomx',dzoomx)
     738     call assert(dzoomx < 1, "conf_gcm: dzoomx must be < 1")
    738739
    739740     !Config  Key  = dzoomy
     
    742743     !Config  Help = extension en latitude de la zone  du zoom 
    743744     !Config         ( fraction de la zone totale)
    744      dzoomy = 0.0
     745     dzoomy = 0.2
    745746     CALL getin('dzoomy',dzoomy)
     747     call assert(dzoomy< 1, "conf_gcm: dzoomy must be < 1")
    746748
    747749     !Config  Key  = taux
Note: See TracChangeset for help on using the changeset viewer.