Coverage for C:\src\imod-python\imod\mf6\gwfgwt.py: 94%

17 statements  

« prev     ^ index     » next       coverage.py v7.4.4, created at 2024-04-08 10:26 +0200

1from copy import deepcopy 

2from typing import Optional 

3 

4import cftime 

5import numpy as np 

6 

7from imod.logging import init_log_decorator 

8from imod.mf6.exchangebase import ExchangeBase 

9from imod.mf6.package import Package 

10from imod.typing import GridDataArray 

11 

12 

13class GWFGWT(ExchangeBase): 

14 _pkg_id = "gwfgwt" 

15 

16 _template = Package._initialize_template(_pkg_id) 

17 

18 @init_log_decorator() 

19 def __init__(self, model_id1: str, model_id2: str): 

20 dict_dataset = { 

21 "model_name_1": model_id1, 

22 "model_name_2": model_id2, 

23 } 

24 

25 super().__init__(dict_dataset) 

26 

27 def clip_box( 

28 self, 

29 time_min: Optional[cftime.datetime | np.datetime64 | str] = None, 

30 time_max: Optional[cftime.datetime | np.datetime64 | str] = None, 

31 layer_min: Optional[int] = None, 

32 layer_max: Optional[int] = None, 

33 x_min: Optional[float] = None, 

34 x_max: Optional[float] = None, 

35 y_min: Optional[float] = None, 

36 y_max: Optional[float] = None, 

37 top: Optional[GridDataArray] = None, 

38 bottom: Optional[GridDataArray] = None, 

39 state_for_boundary: Optional[GridDataArray] = None, 

40 ) -> Package: 

41 """ 

42 The GWF-GWT exchange does not have any spatial coordinates that can be clipped. 

43 """ 

44 return deepcopy(self)