@@ -22,17 +22,13 @@ class FormatRecord:
2222 format : Literal ["exponential" , "fixed" , "general" , "scientific" ] = field (default = "general" )
2323
2424 @define (slots = False )
25- class OCSettingOption :
25+ class OCSetting :
2626 first : bool = field (default = True )
2727 last : bool = field (default = False )
2828 all : bool = field (default = False )
29- steps : Optional [list [int ]] = field (default = None )
29+ steps : Optional [tuple [int ]] = field (default = None )
3030 frequency : Optional [int ] = field (default = None )
3131
32- @define (slots = False )
33- class OCSetting :
34- ocsetting : Optional [list ["Oc.OCSettingOption" ]] = field (default = None )
35-
3632 @define (slots = False )
3733 class SaveRecord :
3834 rtype : str = field ()
@@ -43,6 +39,11 @@ class PrintRecord:
4339 rtype : str = field ()
4440 ocsetting : "Oc.OCSetting" = field ()
4541
42+ @define (slots = False )
43+ class PeriodData :
44+ saverecord : Optional [tuple ["Oc.SaveRecord" ]] = field (default = None )
45+ printrecord : Optional [tuple ["Oc.PrintRecord" ]] = field (default = None )
46+
4647 budget_file : Optional [Path ] = field (
4748 block = "options" ,
4849 converter = to_path ,
@@ -59,16 +60,8 @@ class PrintRecord:
5960 default = None ,
6061 )
6162 headprintrecord : Optional [FormatRecord ] = field (block = "options" , default = None , init = False )
62- saverecord : Optional [NDArray [np .object_ ]] = array (
63- SaveRecord ,
64- block = "period" ,
65- default = None ,
66- dims = ("nper" ,),
67- converter = Converter (structure_array , takes_self = True , takes_field = True ),
68- reader = "urword" ,
69- )
70- printrecord : Optional [NDArray [np .object_ ]] = array (
71- PrintRecord ,
63+ perioddata : Optional [NDArray [np .object_ ]] = array (
64+ PeriodData ,
7265 block = "period" ,
7366 default = None ,
7467 dims = ("nper" ,),
0 commit comments