Changeset 4c64400 in flexpart.git for src/netcdf_output_mod.f90


Ignore:
Timestamp:
Nov 8, 2016, 4:42:27 PM (7 years ago)
Author:
Espen Sollum ATMOS <eso@…>
Branches:
master, 10.4.1_pesei, GFS_025, bugfixes+enhancements, dev, release-10, release-10.4.1, scaling-bug, univie
Children:
c8fc724
Parents:
16b61a5
Message:

Bugfix for double precision dry deposition calculation. Added (hardcoded) option to not use output kernel. Version/date string updated.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/netcdf_output_mod.f90

    rf28aa0a r4c64400  
    1919!**********************************************************************
    2020
     21
    2122  !*****************************************************************************
    2223  !                                                                            *
     
    2425  !  residence time and wet and dry deposition output.                         *
    2526  !                                                                            *
    26   !  - writeheader_netcdf generates file including all information previously    *
     27  !  - writeheader_netcdf generates file including all information previously  *
    2728  !    stored in separate header files                                         *
    28   !  - concoutput_netcdf write concentration output and wet and dry deposition   *
     29  !  - concoutput_netcdf write concentration output and wet and dry deposition *
    2930  !                                                                            *
    3031  !     Author: D. Brunner                                                     *
     
    893894  gridsigmatotal=0.
    894895  gridtotalunc=0.
    895   wetgridtotal=0.
    896   wetgridsigmatotal=0.
    897   wetgridtotalunc=0.
    898   drygridtotal=0.
    899   drygridsigmatotal=0.
    900   drygridtotalunc=0.
     896  wetgridtotal=0._dep_prec
     897  wetgridsigmatotal=0._dep_prec
     898  wetgridtotalunc=0._dep_prec
     899  drygridtotal=0._dep_prec
     900  drygridsigmatotal=0._dep_prec
     901  drygridtotalunc=0._dep_prec
    901902
    902903  do ks=1,nspec
     
    922923                   wetgridsigma(ix,jy),nclassunc)
    923924              ! Multiply by number of classes to get total concentration
    924               wetgrid(ix,jy)=wetgrid(ix,jy)*real(nclassunc,kind=dep_prec)
     925              wetgrid(ix,jy)=wetgrid(ix,jy)*real(nclassunc,kind=sp)
    925926              wetgridtotal=wetgridtotal+wetgrid(ix,jy)
    926927              ! Calculate standard deviation of the mean
     
    946947                   drygridsigma(ix,jy),nclassunc)
    947948              ! Multiply by number of classes to get total concentration
    948               drygrid(ix,jy)=drygrid(ix,jy)*real(nclassunc)
     949              drygrid(ix,jy)=drygrid(ix,jy)*real(nclassunc,kind=sp)
    949950              drygridtotal=drygridtotal+drygrid(ix,jy)
    950951              ! Calculate standard deviation of the mean
    951952              drygridsigma(ix,jy)= &
    952953                   drygridsigma(ix,jy)* &
    953                    sqrt(real(nclassunc))
     954                   sqrt(real(nclassunc, kind=dep_prec))
    954955              drygridsigmatotal=drygridsigmatotal+ &
    955956                   drygridsigma(ix,jy)
     
    10541055  if (wetgridtotal.gt.0.) wetgridtotalunc=wetgridsigmatotal/ &
    10551056       wetgridtotal
    1056   if (drygridtotal.gt.0.) drygridtotalunc=drygridsigmatotal/ &
    1057        drygridtotal
     1057  if (drygridtotal.gt.0.) drygridtotalunc=real(drygridsigmatotal/ &
     1058       drygridtotal, kind=dep_prec)
    10581059
    10591060  ! Dump of receptor concentrations
     
    12981299              wetgridsigma(ix,jy)= &
    12991300                   wetgridsigma(ix,jy)* &
    1300                    sqrt(real(nclassunc))
     1301                   sqrt(real(nclassunc,kind=dep_prec))
    13011302            endif
    13021303
     
    13191320              drygridsigma(ix,jy)= &
    13201321                   drygridsigma(ix,jy)* &
    1321                    sqrt(real(nclassunc))
     1322                   sqrt(real(nclassunc,kind=dep_prec))
    13221323            endif
    13231324
Note: See TracChangeset for help on using the changeset viewer.
hosted by ZAMG