@@ -68,12 +68,13 @@ for FT in (Float32, Float64)
6868 return dY, Y, p
6969 end
7070
71- # check that nothing changes with no fluxes
72- dY, Y, p = test_sea_ice_rhs ()
71+ # check that nothing changes with no fluxes (zero conduction when T_base == initial T_sfc)
72+ T_base_eq = IceSlabParameters {FT} (). T_freeze - FT (5.0 )
73+ dY, Y, p = test_sea_ice_rhs (T_base = T_base_eq)
7374 @test all ([i for i in extrema (dY)] .≈ [FT (0.0 ), FT (0.0 )])
7475
75- # check that extracting expected T due to input atmopsheric fluxes
76- dY, Y, p = test_sea_ice_rhs (F_radiative = 1.0 )
76+ # check expected dT due to radiative flux only (again set T_base == initial T_sfc)
77+ dY, Y, p = test_sea_ice_rhs (F_radiative = 1.0 , T_base = T_base_eq )
7778 dT_expected = - 1.0 / (p. params. h * p. params. ρ * p. params. c)
7879 @test all (extrema (dY) .≈ FT (dT_expected))
7980
@@ -82,12 +83,13 @@ for FT in (Float32, Float64)
8283 dT_maximum = @. (p. params. T_freeze - Y. T_sfc) / p. dt
8384 @test minimum (dT_maximum .- dY. T_sfc) >= FT (0.0 )
8485
85- # check that the correct tendency was added due to basal flux
86+ # check that the correct tendency was added due to basal conductive flux
8687 dY, Y, p = test_sea_ice_rhs (F_radiative = 0.0 , T_base = 269.2 )
8788 dT_expected =
88- - 2.0 * p. params. k_ice / (p. params. h * p. params. h * p. params. ρ * p. params. c)
89- @test minimum (dY) ≈ FT (dT_expected)
90- @test maximum (dY) ≈ FT (0 )
89+ (p. params. k_ice / (p. params. h * p. params. h * p. params. ρ * p. params. c)) *
90+ (p. params. T_base - minimum (Y. T_sfc))
91+ @test minimum (dY) ≈ FT (0 )
92+ @test maximum (dY) ≈ FT (dT_expected)
9193 end
9294
9395 @testset " dss_state! SeaIceModelSimulation for FT=$FT " begin
0 commit comments