|
1 | 1 | using Oceananigans |
2 | | -using Oceananigans.OutputWriters: checkpoint_path |
3 | 2 | using Oceananigans.TimeSteppers: Clock |
4 | 3 | using Oceananigans: SeawaterBuoyancy |
5 | 4 | using ClimaSeaIce.SeaIceThermodynamics: melting_temperature |
@@ -78,29 +77,25 @@ initialize_jld2_file!(filepath, init, jld2_kw, including, outputs, model::OSIM) |
78 | 77 |
|
79 | 78 | write_output!(c::Checkpointer, model::OSIM) = write_output!(c, model.ocean.model) |
80 | 79 |
|
81 | | -""" |
82 | | - set_clock!(sim, clock) |
83 | | -
|
84 | | -Set the clock of `sim`ulation to match the values of `clock`. |
85 | | -""" |
86 | | -function set_clock!(sim::OSIMSIM, clock) |
87 | | - sim.model.clock.time = clock.time |
88 | | - sim.model.clock.iteration = clock.iteration |
89 | | - sim.model.clock.last_Δt = clock.last_Δt |
90 | | - sim.model.clock.last_stage_Δt = clock.last_stage_Δt |
91 | | - sim.model.clock.stage = clock.stage |
| 80 | +function set_clock!(model::OSIM, clock) |
| 81 | + model.clock.time = clock.time |
| 82 | + model.clock.iteration = clock.iteration |
| 83 | + model.clock.last_Δt = clock.last_Δt |
| 84 | + model.clock.last_stage_Δt = clock.last_stage_Δt |
| 85 | + model.clock.stage = clock.stage |
92 | 86 | return nothing |
93 | 87 | end |
94 | 88 |
|
95 | | -function set!(sim::OSIMSIMPA, pickup::Union{Bool, Integer, String}) |
96 | | - checkpoint_file_path = checkpoint_path(pickup, sim.output_writers) |
| 89 | +function set!(model::OSIM, checkpoint_file_path::AbstractString) |
| 90 | + atmosphere = model.atmosphere |
| 91 | + ocean = model.ocean.model |
97 | 92 |
|
98 | | - set!(sim.model.ocean.model, checkpoint_file_path) |
| 93 | + set!(ocean, checkpoint_file_path) |
99 | 94 |
|
100 | | - clock = sim.model.ocean.model.clock |
101 | | - |
102 | | - set_clock!(sim, clock) |
103 | | - set_clock!(sim.model.atmosphere, clock) |
| 95 | + # ensure all clocks follow the ocean model clock |
| 96 | + clock = ocean.clock |
| 97 | + set_clock!(model, clock) |
| 98 | + set_clock!(atmosphere, clock) |
104 | 99 |
|
105 | 100 | return nothing |
106 | 101 | end |
|
0 commit comments