Open lawrenceccheung opened 1 month ago
Tagging @ndevelder because we discussed how certain things are baked into the chkp files and not changeable afterwards.
Interesting issue... The proposed fix sounds kinda gnarly. Is there a way to talk to openfast devs to see if there's an easy way to automate this copying of arrays and things? This feels like a limitation of openfast and not amr-wind. Though the fix you describe sounds like more of a workaround to get openfast to do what you want?
Bug description
This might also be an issue for the openfast repo, but the problem appears in when running amr-wind with openfast. When an openfast ALM case is restarted, and you want to extend the length of the openfast simulation by increasing
openfast_stop_time
, it does not actually change the stop time value in the openfast run.Note that exceeding the
openfast_stop_time
value does not actually halt the amr-wind run, but it does prevent openfast from outputting any additional data in the output file or writing out any more checkpoint files.What I think is happening is that the
openfast_stop_time
is written into the chkp files, so any new value of stop time needs to be read in after the chkp file is loaded.Steps to reproduce
A reproducible scenario would look like this. The first run would use these values for the Actuator settings:
This should be sufficient for any runtime up to 1,000 seconds (in our case, the initial run is only 900 seconds). When we want to restart the run, we add these parameters:
Steps to reproduce the behavior:
Expected behavior
I'm thinking the solution to this problem will likely involve some combination of calling
FAST_OpFM_Init
to create a new openfast turbine with the updated stop_time (so the storage arrays get set to the right length), loading in the new checkpoint data, copying it over to the larger arrays, and then proceeding with the run.AMR-Wind information
Additional context
Note that this currently means that
openfast_stop_time
needs to be set to a very large value which encompasses any possible run duration that might be expected in the simulation. The trade-off, of course, is that the chkp files will get very large in order to store all of the necessary arrays.