File tree 3 files changed +14
-9
lines changed
3 files changed +14
-9
lines changed Original file line number Diff line number Diff line change @@ -91,10 +91,12 @@ def open(self, state: State) -> None:
91
91
92
92
time = 0
93
93
self .reference_date = state ["date" ]
94
- if hasattr (self .context , "time_step" ) and hasattr (self .context , "lead_time" ):
95
- time = self .context .lead_time // self .context .time_step
96
- if hasattr (self .context , "reference_date" ):
97
- self .reference_date = self .context .reference_date
94
+ if (time_step := getattr (self .context , "time_step" , None )) and (
95
+ lead_time := getattr (self .context , "lead_time" , None )
96
+ ):
97
+ time = lead_time // time_step
98
+ if reference_date := getattr (self .context , "reference_date" , None ):
99
+ self .reference_date = reference_date
98
100
99
101
with LOCK :
100
102
self .values_dim = self .ncfile .createDimension ("values" , values )
Original file line number Diff line number Diff line change @@ -214,10 +214,6 @@ def run(
214
214
215
215
lead_time = to_timedelta (lead_time )
216
216
217
- # This may be used but Output objects to compute the step
218
- self .lead_time = lead_time
219
- self .time_step = self .checkpoint .timestep
220
-
221
217
with ProfilingRunner (self .use_profiler ):
222
218
with ProfilingLabel ("Prepare input tensor" , self .use_profiler ):
223
219
input_tensor = self .prepare_input_tensor (input_state )
Original file line number Diff line number Diff line change 15
15
from typing import List
16
16
17
17
from anemoi .utils .config import DotDict
18
+ from anemoi .utils .dates import frequency_to_timedelta as to_timedelta
18
19
from pydantic import BaseModel
19
20
20
21
from anemoi .inference .config import Configuration
@@ -86,6 +87,12 @@ def execute(self) -> None:
86
87
if self .config .description is not None :
87
88
LOG .info ("%s" , self .config .description )
88
89
90
+ lead_time = to_timedelta (self .config .lead_time )
91
+
92
+ # This may be used by Output objects to compute the step
93
+ self .lead_time = lead_time
94
+ self .time_step = self .checkpoint .timestep
95
+
89
96
input = self .create_input ()
90
97
output = self .create_output ()
91
98
@@ -104,7 +111,7 @@ def execute(self) -> None:
104
111
output .open (state )
105
112
output .write_initial_state (state )
106
113
107
- for state in self .run (input_state = input_state , lead_time = self . config . lead_time ):
114
+ for state in self .run (input_state = input_state , lead_time = lead_time ):
108
115
for processor in post_processors :
109
116
LOG .info ("Post processor: %s" , processor )
110
117
state = processor .process (state )
You can’t perform that action at this time.
0 commit comments