Ignore:
Timestamp:
Oct 24, 2014, 7:53:24 PM (10 years ago)
Author:
lguez
Message:

In nudging procedures, replaced explicit Euler integration of nudged
fields by exact integration. This does not change anything if
guide_add is true, but it changes the value of alpha if guide_add is
false. We could have taken into account the variation of the nudging
field during a nudging time step. This would be a small correction. We
choose not to take it into account for the time being. Also, we add a
restriction on zonal nudging: we allow it only for a grid which is
regular in longitude. It does not seem to make sense otherwise and the
exact integration would take more programming for an irregular grid.

In the sequential version, copying the parallel versions, set
iguide_int to 1 when the input value is 0.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/dyn3dmem/guide_loc_mod.F90

    r2124 r2134  
    6868
    6969  SUBROUTINE guide_init
    70    
     70
    7171    USE control_mod
     72
    7273    IMPLICIT NONE
    7374 
     
    7576    INCLUDE "paramet.h"
    7677    INCLUDE "netcdf.inc"
     78
     79    ! For grossismx:
     80    include "serre.h"
    7781
    7882    INTEGER                :: error,ncidpl,rid,rcod
     
    9498    CALL getpar('guide_add',.false.,guide_add,'for�age constant?')
    9599    CALL getpar('guide_zon',.false.,guide_zon,'guidage moy zonale')
     100    if (guide_zon .and. abs(grossismx - 1.) > 0.01) &
     101         call abort_gcm("guide_init", &
     102         "zonal nudging requires grid regular in longitude", 1)
    96103
    97104!   Constantes de rappel. Unite : fraction de jour
     
    15191526            enddo
    15201527        enddo
    1521    
    15221528    ENDIF ! guide_reg
     1529
     1530    if (.not. guide_add) alpha = 1. - exp(- alpha)
    15231531
    15241532  END SUBROUTINE tau2alpha
Note: See TracChangeset for help on using the changeset viewer.