cbl_Oldconductivity.F90 Source File


This file depends on

sourcefile~~cbl_oldconductivity.f90~~EfferentGraph sourcefile~cbl_oldconductivity.f90 cbl_Oldconductivity.F90 sourcefile~cbl_soilsnow_data.f90 cbl_soilsnow_data.F90 sourcefile~cbl_oldconductivity.f90->sourcefile~cbl_soilsnow_data.f90 sourcefile~cable_common.f90 cable_common.F90 sourcefile~cbl_soilsnow_data.f90->sourcefile~cable_common.f90 sourcefile~cable_define_types.f90 cable_define_types.F90 sourcefile~cbl_soilsnow_data.f90->sourcefile~cable_define_types.f90 sourcefile~cable_phys_constants_mod.f90 cable_phys_constants_mod.F90 sourcefile~cbl_soilsnow_data.f90->sourcefile~cable_phys_constants_mod.f90 sourcefile~cable_runtime_opts_mod.f90 cable_runtime_opts_mod.F90 sourcefile~cable_common.f90->sourcefile~cable_runtime_opts_mod.f90 sourcefile~cable_climate_type_mod.f90 cable_climate_type_mod.F90 sourcefile~cable_define_types.f90->sourcefile~cable_climate_type_mod.f90 sourcefile~cable_climate_type_mod.f90->sourcefile~cable_common.f90 sourcefile~grid_constants_cbl.f90 grid_constants_cbl.F90 sourcefile~cable_climate_type_mod.f90->sourcefile~grid_constants_cbl.f90

Files dependent on this one

sourcefile~~cbl_oldconductivity.f90~~AfferentGraph sourcefile~cbl_oldconductivity.f90 cbl_Oldconductivity.F90 sourcefile~cbl_gw.f90 cbl_GW.F90 sourcefile~cbl_gw.f90->sourcefile~cbl_oldconductivity.f90 sourcefile~cbl_stempv.f90 cbl_stempv.F90 sourcefile~cbl_stempv.f90->sourcefile~cbl_oldconductivity.f90 sourcefile~cbl_soilsnow_main.f90 cbl_soilsnow_main.F90 sourcefile~cbl_soilsnow_main.f90->sourcefile~cbl_stempv.f90 sourcefile~cbl_thermal.f90 cbl_thermal.F90 sourcefile~cbl_thermal.f90->sourcefile~cbl_gw.f90 sourcefile~cbl_model_driver_offline.f90 cbl_model_driver_offline.F90 sourcefile~cbl_model_driver_offline.f90->sourcefile~cbl_soilsnow_main.f90 sourcefile~cable_mpimaster.f90 cable_mpimaster.F90 sourcefile~cable_mpimaster.f90->sourcefile~cbl_model_driver_offline.f90 sourcefile~cable_mpiworker.f90 cable_mpiworker.F90 sourcefile~cable_mpiworker.f90->sourcefile~cbl_model_driver_offline.f90 sourcefile~cable_serial.f90 cable_serial.F90 sourcefile~cable_serial.f90->sourcefile~cbl_model_driver_offline.f90 sourcefile~cable_offline_driver.f90 cable_offline_driver.F90 sourcefile~cable_offline_driver.f90->sourcefile~cable_serial.f90

Source Code

MODULE old_soil_conductivity_mod

USE cbl_ssnow_data_mod

CONTAINS

  FUNCTION old_soil_conductivity(ssnow, soil)
    TYPE(soil_snow_type), INTENT(IN) :: ssnow
    TYPE(soil_parameter_type), INTENT(IN) :: soil

    REAL(r_2), DIMENSION(mp,ms) ::                                              &
         old_soil_conductivity  ! soil thermal conductivity (incl water/ice)

    REAL, DIMENSION(mp) ::                                                 &
         dtg,     & !
         ew       !

    INTEGER :: j,k
    REAL :: exp_arg
    LOGICAL :: direct2min = .FALSE.

    DO k = 1, ms

       DO j = 1, mp

          IF( soil%isoilm(j) == 9 ) THEN
             ! permanent ice: fix hard-wired number in next version
             old_soil_conductivity(j,k) = snow_ccnsw
          ELSE
             ew(j) = ssnow%wblf(j,k) * soil%ssat(j)
             exp_arg = ( ew(j) * LOG( 60.0 ) ) + ( ssnow%wbfice(j,k)            &
                  * soil%ssat(j) * LOG( 250.0 ) )

             IF( exp_arg > 30 ) direct2min = .TRUE.

             IF( direct2min) THEN

                old_soil_conductivity(j,k) = 1.5 * MAX( 1.0_r_2, SQRT( MIN( 2.0_r_2, 0.5 *      &
                     soil%ssat(j) /                                     &
                     MIN( ew(j), 0.5_r_2 * soil%ssat(j) ) ) ) )

             ELSE

                old_soil_conductivity(j,k) = MIN( soil%cnsd(j) * EXP( exp_arg ), 1.5_r_2 )      &
                     * MAX( 1.0_r_2, SQRT( MIN( 2.0_r_2, 0.5 *          &
                     soil%ssat(j) /                                     &
                     MIN( ew(j), 0.5_r_2 * soil%ssat(j) ) ) ) )

             ENDIF

             direct2min = .FALSE.

          ENDIF

       END DO

    END DO

  END FUNCTION old_soil_conductivity

END MODULE old_soil_conductivity_mod