Changes in src/timemanager_mpi.f90 [20963b1:d8eed02] in flexpart.git
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/timemanager_mpi.f90
r20963b1 rd8eed02 102 102 use com_mod 103 103 use mpi_mod 104 #ifdef USE_NCF105 104 use netcdf_output_mod, only: concoutput_netcdf,concoutput_nest_netcdf,& 106 105 &concoutput_surf_netcdf,concoutput_surf_nest_netcdf 107 #endif108 106 109 107 implicit none … … 115 113 integer :: ip 116 114 integer :: loutnext,loutstart,loutend 117 integer :: ix,jy,ldeltat,itage,nage ,idummy115 integer :: ix,jy,ldeltat,itage,nage 118 116 integer :: i_nan=0,ii_nan,total_nan_intl=0 !added by mc to check instability in CBL scheme 119 117 integer :: numpart_tot_mpi ! for summing particles on all processes 120 real :: outnum,weight,prob(maxspec), prob_rec(maxspec), decfact,wetscav 118 real :: outnum,weight,prob(maxspec) 119 real :: decfact 121 120 122 121 real(sp) :: gridtotalunc … … 124 123 & drydeposit(maxspec)=0_dep_prec 125 124 real :: xold,yold,zold,xmassfract 126 real :: grfraction(3)127 125 real, parameter :: e_inv = 1.0/exp(1.0) 128 126 … … 159 157 !CGZ-lifetime: set lifetime to 0 160 158 161 if (.not.lusekerneloutput) write(*,*) 'Not using the kernel'162 if (turboff) write(*,*) 'Turbulence switched off'163 159 164 160 … … 485 481 if (lroot) then 486 482 if (lnetcdfout.eq.1) then 487 #ifdef USE_NCF488 483 call concoutput_netcdf(itime,outnum,gridtotalunc,wetgridtotalunc,& 489 484 &drygridtotalunc) 490 #endif491 485 else 492 486 call concoutput(itime,outnum,gridtotalunc,wetgridtotalunc,drygridtotalunc) … … 500 494 if (lroot) then 501 495 if (lnetcdfout.eq.1) then 502 #ifdef USE_NCF503 496 call concoutput_surf_netcdf(itime,outnum,gridtotalunc,wetgridtotalunc,& 504 497 &drygridtotalunc) 505 #endif506 498 else 507 499 call concoutput_surf(itime,outnum,gridtotalunc,wetgridtotalunc,drygridtotalunc) … … 521 513 call mpif_tm_reduce_grid_nest 522 514 523 515 if (mp_measure_time) call mpif_mtime('iotime',0) 524 516 525 517 if (lnetcdfout.eq.0) then … … 534 526 else ! :TODO: check for zeroing in the netcdf module 535 527 call concoutput_surf_nest(itime,outnum) 528 536 529 end if 530 537 531 else 538 #ifdef USE_NCF 532 539 533 if (surf_only.ne.1) then 540 534 if (lroot) then … … 550 544 end if 551 545 endif 552 #endif 546 547 553 548 end if 554 549 end if 550 551 555 552 outnum=0. 556 553 endif … … 710 707 zold=ztra1(j) 711 708 712 713 ! RECEPTOR: dry/wet depovel714 !****************************715 ! Before the particle is moved716 ! the calculation of the scavenged mass shall only be done once after release717 ! xscav_frac1 was initialised with a negative value718 719 if (DRYBKDEP) then720 do ks=1,nspec721 if ((xscav_frac1(j,ks).lt.0)) then722 call get_vdep_prob(itime,xtra1(j),ytra1(j),ztra1(j),prob_rec)723 if (DRYDEPSPEC(ks)) then ! dry deposition724 xscav_frac1(j,ks)=prob_rec(ks)725 else726 xmass1(j,ks)=0.727 xscav_frac1(j,ks)=0.728 endif729 endif730 enddo731 endif732 733 if (WETBKDEP) then734 do ks=1,nspec735 if ((xscav_frac1(j,ks).lt.0)) then736 call get_wetscav(itime,lsynctime,loutnext,j,ks,grfraction,idummy,idummy,wetscav)737 if (wetscav.gt.0) then738 xscav_frac1(j,ks)=wetscav* &739 (zpoint2(npoint(j))-zpoint1(npoint(j)))*grfraction(1)740 else741 xmass1(j,ks)=0.742 xscav_frac1(j,ks)=0.743 endif744 endif745 enddo746 endif747 748 709 ! Integrate Lagevin equation for lsynctime seconds 749 710 !************************************************* … … 847 808 call initial_cond_calc(itime+lsynctime,j) 848 809 itra1(j)=-999999999 849 if (verbosity.gt.0) then 850 print*, 'terminated particle ',j,'for age' 851 endif 810 !print*, 'terminated particle ',j,'for age' 852 811 endif 853 812 endif … … 860 819 861 820 862 ! Counter of "unstable" particle velocity during a time scale863 ! of maximumtl=20 minutes (defined in com_mod)864 !************************************************************ 821 ! Added by mc: counter of "unstable" particle velocity during a time scale 822 ! of maximumtl=20 minutes (defined in com_mod) 823 865 824 total_nan_intl=0 866 825 i_nan=i_nan+1 ! added by mc to count nan during a time of maxtl (i.e. maximum tl fixed here to 20 minutes, see com_mod)
Note: See TracChangeset
for help on using the changeset viewer.