Changeset 553d0a7 in flexpart.git


Ignore:
Timestamp:
Nov 7, 2022, 10:31:29 AM (18 months ago)
Author:
Pirmin Kaufmann <pirmin.kaufmann@…>
Branches:
scaling-bug
Parents:
49e63b9
Message:

Removed conversion factor for CP in GRIB2. Changed conversion factor for SDE (snow depth) and added recognition of SD (water equivalent) parameterNumber in GRIB2.

Location:
src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/readwind_ecmwf.f90

    r92fab65 r553d0a7  
    201201    elseif ((parCat.eq.0).and.(parNum.eq.6).and.(typSurf.eq.103)) then ! 2D
    202202      isec1(6)=168         ! indicatorOfParameter
    203     elseif ((parCat.eq.1).and.(parNum.eq.11).and.(typSurf.eq.1)) then ! SD
     203    elseif ((parCat.eq.1).and.(parNum.eq.11).and.(typSurf.eq.1)) then ! SDE
    204204      isec1(6)=141         ! indicatorOfParameter
    205       conversion_factor=1000.
     205      conversion_factor=0.1  ! convert snow depth to water equivalent
     206    elseif ((parCat.eq.1).and.(parNum.eq.254).and.(typSurf.eq.1)) then ! SD
     207      isec1(6)=141         ! indicatorOfParameter
    206208    elseif ((parCat.eq.6).and.(parNum.eq.1) .or. parId .eq. 164) then ! CC
    207209      isec1(6)=164         ! indicatorOfParameter
    208210    elseif ((parCat.eq.1).and.(parNum.eq.9) .or. parId .eq. 142) then ! LSP
    209211      isec1(6)=142         ! indicatorOfParameter
    210     elseif ((parCat.eq.1).and.(parNum.eq.10)) then ! CP
     212    elseif ((parCat.eq.1).and.(parNum.eq.10)) then ! ACPCP
    211213      isec1(6)=143         ! indicatorOfParameter
    212       conversion_factor=1000.
    213214    elseif ((parCat.eq.0).and.(parNum.eq.11).and.(typSurf.eq.1)) then ! SHF
    214215      isec1(6)=146         ! indicatorOfParameter
     
    305306           zsec4(nxfield*(ny-j-1)+i+1)
    306307      if(isec1(6).eq.141) sd(i,j,1,n)= &!! SNOW DEPTH
    307            zsec4(nxfield*(ny-j-1)+i+1)/conversion_factor
     308           zsec4(nxfield*(ny-j-1)+i+1)*conversion_factor
    308309      if(isec1(6).eq.151) msl(i,j,1,n)= &!! SEA LEVEL PRESS.
    309310           zsec4(nxfield*(ny-j-1)+i+1)
     
    323324      endif
    324325      if(isec1(6).eq.143) then                      !! CONVECTIVE PREC.
    325         convprec(i,j,1,n)=zsec4(nxfield*(ny-j-1)+i+1)/conversion_factor
     326        convprec(i,j,1,n)=zsec4(nxfield*(ny-j-1)+i+1)
    326327        if (convprec(i,j,1,n).lt.0.) convprec(i,j,1,n)=0.
    327328      endif
  • src/readwind_ecmwf_mpi.f90

    r92fab65 r553d0a7  
    211211    elseif ((parCat.eq.0).and.(parNum.eq.6).and.(typSurf.eq.103)) then ! 2D
    212212      isec1(6)=168         ! indicatorOfParameter
    213     elseif ((parCat.eq.1).and.(parNum.eq.11).and.(typSurf.eq.1)) then ! SD
     213    elseif ((parCat.eq.1).and.(parNum.eq.11).and.(typSurf.eq.1)) then ! SDE
    214214      isec1(6)=141         ! indicatorOfParameter
    215       conversion_factor=1000.
     215      conversion_factor=0.1  ! convert snow depth to water equivalent
     216    elseif ((parCat.eq.1).and.(parNum.eq.254).and.(typSurf.eq.1)) then ! SD
     217      isec1(6)=141         ! indicatorOfParameter
    216218    elseif ((parCat.eq.6).and.(parNum.eq.1) .or. parId .eq. 164) then ! CC
    217219      isec1(6)=164         ! indicatorOfParameter
    218220    elseif ((parCat.eq.1).and.(parNum.eq.9) .or. parId .eq. 142) then ! LSP
    219221      isec1(6)=142         ! indicatorOfParameter
    220     elseif ((parCat.eq.1).and.(parNum.eq.10)) then ! CP
     222    elseif ((parCat.eq.1).and.(parNum.eq.10)) then ! ACPCP
    221223      isec1(6)=143         ! indicatorOfParameter
    222       conversion_factor=1000.
    223224    elseif ((parCat.eq.0).and.(parNum.eq.11).and.(typSurf.eq.1)) then ! SHF
    224225      isec1(6)=146         ! indicatorOfParameter
     
    315316           zsec4(nxfield*(ny-j-1)+i+1)
    316317      if(isec1(6).eq.141) sd(i,j,1,n)= &!! SNOW DEPTH
    317            zsec4(nxfield*(ny-j-1)+i+1)/conversion_factor
     318           zsec4(nxfield*(ny-j-1)+i+1)*conversion_factor
    318319      if(isec1(6).eq.151) msl(i,j,1,n)= &!! SEA LEVEL PRESS.
    319320           zsec4(nxfield*(ny-j-1)+i+1)
     
    333334      endif
    334335      if(isec1(6).eq.143) then                      !! CONVECTIVE PREC.
    335         convprec(i,j,1,n)=zsec4(nxfield*(ny-j-1)+i+1)/conversion_factor
     336        convprec(i,j,1,n)=zsec4(nxfield*(ny-j-1)+i+1)
    336337        if (convprec(i,j,1,n).lt.0.) convprec(i,j,1,n)=0.
    337338      endif
Note: See TracChangeset for help on using the changeset viewer.
hosted by ZAMG