Opened 5 years ago

Closed 4 years ago

#338 closed defect (fixed)

Problem with the generation of frac_nobio pixels

Reported by: maignan Owned by: jgipsl
Priority: major Milestone: IPSLCM6.v1
Component: Model architecture Version: trunc
Keywords: Cc:

Description

In slowproc.f90 since revision 3831 we have the following interpolation for the PFT map:

    CHARACTER(LEN=50)                                    :: maskingtype      !! Type of masking
                                                                             !!   'nomask': no-mask is applied
                                                                             !!   'mbelow': take values below maskvals(1)
                                                                             !!   'mabove': take values above maskvals(1)
                                                                             !!   'msumrange': take values within 2 ranges;
                                                                             !!      maskvals(2) <= SUM(vals(k)) <= maskvals(1)
                                                                             !!      maskvals(1) < SUM(vals(k)) <= maskvals(3)
                                                                             !!        (normalized by maskvals(3))
                                                                             !!   'var': mask values are taken from a 
                                                                             !!     variable inside the file (>0)
    REAL(r_std), DIMENSION(3)                            :: maskvals         !! values to use to mask (according to 
                                                                             !!   `maskingtype') 
...
    maskingtype = 'msumrange'
    ! Values to use for the masking
    maskvals = (/ 1.-1.e-7, min_sechiba, 2. /)
...
    CALL interpweight_3D(nbpt, nvm, variabletypevals, lalo, resolution, neighbours,        &
      contfrac, filename, variablename, lonname, latname, vmin, vmax, nonegative, maskingtype,        &
      maskvals, namemaskvar, nvm, 0, veget_year, fractype,                                 &
      -1., -1., vegetrefrac, aveget)

This means that pixels for which SUM(maxvegetfrac)=0. are masked and subsequently go through:

          IF (aveget(ib) < min_sechiba) THEN
             IF (printlev_loc >=3) WRITE(numout,*) ib,lalo(ib,1),lalo(ib,2)
             IF (init) THEN
                veget_next(ib,1) = un
                veget_next(ib,2:nvm) = zero
             ELSE
                veget_next(ib,:) = veget_last(ib,:)
             ENDIF
          ENDIF

and then end up as bare soil.

Modifying only the mask minimum value as follows:

    maskvals = (/ 1.-1.e-7, 0., 2. /)

brings back the (expected) former behaviour, meaning that pixels for which SUM(maxvegetfrac)=0 generate a frac_nobio=1.

This modification has been successfully tested with the ESA with/outNoBio v1 maps, around Greenland.

Change History (3)

comment:1 Changed 5 years ago by maignan

Test to see who receives information on tickets after the migration of the list.

comment:2 Changed 4 years ago by jgipsl

  • Owner changed from somebody to jgipsl
  • Status changed from new to accepted

comment:3 Changed 4 years ago by jgipsl

  • Resolution set to fixed
  • Status changed from accepted to closed

Done in the trunk rev [4620].

Note: See TracTickets for help on using tickets.