LCOV - code coverage report
Current view: top level - physics/carma/base - step.F90 (source / functions) Hit Total Coverage
Test: coverage.info Lines: 5 5 100.0 %
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 performs all calculations necessary to take one timestep.
       6             : !!
       7             : !! @author McKie
       8             : !! @version Oct-1995
       9     1050624 : subroutine step(carma, cstate, rc)
      10             : 
      11             :         ! types
      12             :   use carma_precision_mod
      13             :   use carma_enums_mod
      14             :   use carma_constants_mod
      15             :   use carma_types_mod
      16             :   use carmastate_mod
      17             :   use carma_mod
      18             : 
      19             :   implicit none
      20             : 
      21             :   type(carma_type), intent(in)         :: carma   !! the carma object
      22             :   type(carmastate_type), intent(inout) :: cstate  !! the carma state object
      23             :   integer, intent(inout)               :: rc      !! return code, negative indicates failure
      24             :   
      25             : 
      26             :   ! Iterate over each column. Each of these columns should be independent, so
      27             :   ! the work for each column could be done by a different thread.
      28             :   
      29             :         ! Do pre-timestep processing
      30     1050624 :         if (rc >= 0) call prestep(carma, cstate, rc)
      31             : 
      32             :         ! Update model state at new time
      33     1050624 :         if (rc >= 0) call newstate(carma, cstate, rc)
      34             : 
      35             :   ! Return to caller with one timestep taken
      36     1050624 :   return
      37     1050624 : end

Generated by: LCOV version 1.14