LCOV - code coverage report
Current view: top level - physics/carma/base - downgevapply.F90 (source / functions) Hit Total Coverage
Test: coverage.info Lines: 7 9 77.8 %
Date: 2025-03-14 01:30:37 Functions: 1 1 100.0 %

          Line data    Source code
       1             : ! Include shortname defintions, so that the F77 code does not have to be modified to
       2             : ! reference the CARMA structure.
       3             : #include "carma_globaer.h"
       4             : 
       5             : !! This routine applies evaporation and nucleation production terms to
       6             : !! particle concentrations.
       7             : !!
       8             : !! @author Andy Ackerman
       9             : !! @version Dec-1995
      10   213271518 : subroutine downgevapply(carma, cstate, iz, rc)
      11             : 
      12             :         ! types
      13             :   use carma_precision_mod
      14             :   use carma_enums_mod
      15             :   use carma_constants_mod
      16             :   use carma_types_mod
      17             :   use carmastate_mod
      18             :   use carma_mod
      19             : 
      20             :         implicit none
      21             : 
      22             :   type(carma_type), intent(in)         :: carma   !! the carma object
      23             :   type(carmastate_type), intent(inout) :: cstate  !! the carma state object
      24             :   integer, intent(in)                  :: iz      !! z index
      25             :   integer, intent(inout)               :: rc      !! return code, negative indicates failure
      26             : 
      27             :   ! Local declarations
      28             :   integer                              :: ibin    !! bin index
      29             :   integer                              :: ielem   !! element index
      30             : 
      31             : 
      32             :   ! Visit each radius bin for each element to compute particle production 
      33             :   ! due to evaporation and element transfer processes for which the source
      34             :   ! element number is greater than the target element number
      35  2559258216 :   do ielem = 1,NELEM
      36 49478992176 :     do ibin = 1,NBIN
      37             : 
      38           0 :       pc(iz,ibin,ielem) = pc(iz,ibin,ielem) + &
      39           0 :                          dtime * ( evappe(ibin,ielem) + &
      40 46919733960 :                                    rnucpe(ibin,ielem) )
      41             :                                    
      42             :       ! Prevent particle concentrations from dropping below SMALL_PC
      43 49265720658 :       call smallconc(carma, cstate, iz, ibin, ielem, rc)
      44             : 
      45             :     enddo
      46             :   enddo
      47             : 
      48             : 
      49             :   ! Return to caller with evaporation and down-grid element transfer
      50             :   ! production terms applied to particle concentrations.
      51   213271518 :   return
      52   213271518 : end

Generated by: LCOV version 1.14