calsoft_hyd_bfr.f90 Source File


This file depends on

sourcefile~~calsoft_hyd_bfr.f90~~EfferentGraph sourcefile~calsoft_hyd_bfr.f90 calsoft_hyd_bfr.f90 sourcefile~aquifer_module.f90 aquifer_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~aquifer_module.f90 sourcefile~basin_module.f90 basin_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~basin_module.f90 sourcefile~calibration_data_module.f90 calibration_data_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~calibration_data_module.f90 sourcefile~channel_module.f90 channel_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~channel_module.f90 sourcefile~conditional_module.f90 conditional_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~conditional_module.f90 sourcefile~hru_lte_module.f90 hru_lte_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~hru_lte_module.f90 sourcefile~hydrograph_module.f90 hydrograph_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~hydrograph_module.f90 sourcefile~maximum_data_module.f90 maximum_data_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~maximum_data_module.f90 sourcefile~organic_mineral_mass_module.f90 organic_mineral_mass_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~organic_mineral_mass_module.f90 sourcefile~plant_module.f90 plant_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~plant_module.f90 sourcefile~reservoir_module.f90 reservoir_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~reservoir_module.f90 sourcefile~ru_module.f90 ru_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~ru_module.f90 sourcefile~sd_channel_module.f90 sd_channel_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~sd_channel_module.f90 sourcefile~soil_module.f90 soil_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~soil_module.f90 sourcefile~time_module.f90 time_module.f90 sourcefile~calsoft_hyd_bfr.f90->sourcefile~time_module.f90 sourcefile~hydrograph_module.f90->sourcefile~basin_module.f90 sourcefile~hydrograph_module.f90->sourcefile~time_module.f90 sourcefile~carbon_module.f90 carbon_module.f90 sourcefile~organic_mineral_mass_module.f90->sourcefile~carbon_module.f90 sourcefile~soil_module.f90->sourcefile~carbon_module.f90

Source Code

      subroutine calsoft_hyd_bfr

      use soil_module
      use plant_module
      use hydrograph_module
      use ru_module
      use aquifer_module
      use channel_module
      use hru_lte_module
      use sd_channel_module
      use basin_module
      use maximum_data_module
      use calibration_data_module
      use conditional_module
      use reservoir_module
      use organic_mineral_mass_module
      use time_module
      
      implicit none
      
      integer :: iter_all = 0  !none      |counter
      integer :: iterall = 0   !none      |counter

      ! calibrate hydrology
      iter_all = 1
        
      do iterall = 1, iter_all

        ! calibrate petco for actual ET
        ! start with half the range
        ls_prms(4)%neg = ls_prms(4)%neg / 2.
        ls_prms(4)%pos = ls_prms(4)%pos / 2.
        ls_prms(4)%lo = (1. - ls_prms(4)%lo) / 2. + ls_prms(4)%lo
        ls_prms(4)%up = ls_prms(4)%up - (ls_prms(4)%up - 1.) / 2.
        call calsoft_hyd_bfr_pet
        ! calibrate esco for actual ET
        call calsoft_hyd_bfr_et
        ! calibrate petco for actual ET
        ! allow full range
        ls_prms(4)%neg = 2. * ls_prms(4)%neg
        ls_prms(4)%pos = 2. * ls_prms(4)%pos
        ls_prms(4)%lo = ls_prms(4)%lo - (1. - ls_prms(4)%lo)
        ls_prms(4)%up = ls_prms(4)%up + (ls_prms(4)%up - 1.)
        call calsoft_hyd_bfr_pet

        ! calibrate cn3_swf for surface runoff
        call calsoft_hyd_bfr_surq
        
        ! calibrate latq_co for lateral soil flow
        call calsoft_hyd_bfr_latq
        
        ! calibrate perco for percolation
        call calsoft_hyd_bfr_perc

        ! calibrate cn3_swf for surface runoff
        call calsoft_hyd_bfr_surq
        
      end do    ! iter_all loop
        
      !cal_codes%hyd_hru = "n"
      
      return
      end subroutine calsoft_hyd_bfr