1818 (0.3 , - 5 , 12.5 , True , "cell_center_above_ffl" , 0.547251 ),
1919 (0.3 , - 5 , 12.5 , False , "cell_center_above_ffl" , 0.549613 ),
2020 (0.3 , - 5 , 12.5 , False , "cell_corners_above_ffl" , 0.549613 ),
21+ (1 , - 2 , 13 , True , "truncated_cell_corners_above_ffl" , 0.408742 ),
22+ (1 , - 2 , 13 , False , "truncated_cell_corners_above_ffl" , 0.412536 ),
2123 ],
2224)
2325def test_swj_simple (avalue , bvalue , ffl , direct , cellmethod , expected_mean ):
@@ -38,7 +40,7 @@ def test_swj_simple(avalue, bvalue, ffl, direct, cellmethod, expected_mean):
3840 invert = True ,
3941 method = cellmethod ,
4042 )
41- sw = sw_obj .compute ("direct" if direct else "integrated" )
43+ sw = sw_obj .compute ("direct" if direct else "integrated" )[ "SW" ]
4244 assert sw .values .mean () == pytest .approx (expected_mean , rel = 0.01 )
4345
4446
@@ -63,7 +65,8 @@ def test_swj_simple_x_zero():
6365 invert = True ,
6466 method = "cell_center_above_ffl" ,
6567 )
66- sw = sw_obj .compute ("integrated" )
68+
69+ sw = sw_obj .compute ("integrated" )["SW" ]
6770 assert not sw .values .mask [0 , 0 , 0 ]
6871
6972 # now make a grid with masked cells
@@ -86,7 +89,7 @@ def test_swj_simple_x_zero():
8689 invert = True ,
8790 method = "cell_center_above_ffl" ,
8891 )
89- sw = sw_obj .compute ("integrated" )
92+ sw = sw_obj .compute ("integrated" )[ "SW" ]
9093 assert sw .values .mask [0 , 0 , 0 ]
9194
9295
@@ -119,7 +122,7 @@ def test_swj_simple_threshold_2grids():
119122 invert = True ,
120123 method = cellmethod ,
121124 )
122- sw = sw_obj .compute ("integrated" )
125+ sw = sw_obj .compute ("integrated" )[ "SW" ]
123126 assert sw .values .mean () == pytest .approx (0.9689 , rel = 0.01 )
124127
125128 sw_obj = SwFunction (
@@ -131,7 +134,7 @@ def test_swj_simple_threshold_2grids():
131134 invert = True ,
132135 method = cellmethod ,
133136 )
134- sw = sw_obj .compute ("integrated" )
137+ sw = sw_obj .compute ("integrated" )[ "SW" ]
135138
136139 assert sw .values .mean () == pytest .approx (0.9689 , rel = 0.01 )
137140 assert float (sw .values [0 , 0 , 70 ]) == pytest .approx (1 , rel = 0.0001 )
@@ -143,6 +146,8 @@ def test_swj_simple_threshold_2grids():
143146 (True , "cell_center_above_ffl" , 0.7057 , 0.046719 ), # n/a vs RMS
144147 (False , "cell_center_above_ffl" , 0.70736 , 0.046724 ), # n/a vs RMS
145148 (False , "cell_corners_above_ffl" , 0.674485 , 0.046791 ), # n/a vs RMS
149+ (True , "truncated_cell_corners_above_ffl" , 0.67737 , 0.046719 ), # n/a vs RMS
150+ (False , "truncated_cell_corners_above_ffl" , 0.67931 , 0.046724 ), # n/a vs RMS
146151 ],
147152)
148153def test_swj_simple_reek (direct , cellmethod , expected_mean , exp_cell1 , testdata_path ):
@@ -174,7 +179,7 @@ def test_swj_simple_reek(direct, cellmethod, expected_mean, exp_cell1, testdata_
174179 method = cellmethod ,
175180 )
176181
177- sw = sw_obj .compute ("direct" if direct else "integrated" )
182+ sw = sw_obj .compute ("direct" if direct else "integrated" )[ "SW" ]
178183
179184 assert sw .values .mean () == pytest .approx (expected_mean , rel = 0.01 )
180185
@@ -252,17 +257,16 @@ def test_sw_bvw():
252257 x = xvalue ,
253258 ffl = ffl ,
254259 method = "cell_center_above_ffl" ,
255- debug = False ,
256260 )
257- sw = sw_obj .compute ("direct" )
261+ sw = sw_obj .compute ("direct" )[ "SW" ]
258262
259263 sw10 = float (sw .values [:, :, 20 ]) # 10 meter above contact
260264 assert sw10 == pytest .approx (manual10 )
261265
262266 sw20 = float (sw .values [:, :, 10 ]) # 20 meter above contact
263267 assert sw20 == pytest .approx (0.13755086 )
264268
265- sw = sw_obj .compute ("integrated" )
269+ sw = sw_obj .compute ("integrated" )[ "SW" ]
266270 sw10_i = float (sw .values [:, :, 20 ])
267271 assert sw10_i == pytest .approx (sw10 , abs = 0.0001 )
268272
@@ -332,9 +336,8 @@ def test_sw_brooks_corey():
332336 x = xvalue ,
333337 ffl = ffl ,
334338 method = "cell_center_above_ffl" ,
335- debug = False ,
336339 )
337- sw = sw_obj .compute ("direct" )
340+ sw = sw_obj .compute ("direct" )[ "SW" ]
338341
339342 sw10 = float (sw .values [:, :, 20 ]) # 10 meter above contact
340343 assert sw10 == pytest .approx (0.40303321 )
@@ -344,6 +347,6 @@ def test_sw_brooks_corey():
344347 sw20 = float (sw .values [:, :, 10 ]) # 20 meter above contact
345348 assert sw20 == pytest .approx (0.28731234 )
346349
347- sw = sw_obj .compute ("integrated" )
350+ sw = sw_obj .compute ("integrated" )[ "SW" ]
348351 sw10_i = float (sw .values [:, :, 20 ])
349352 assert sw10_i == pytest .approx (sw10 , abs = 0.001 )
0 commit comments