Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Information exchange during coupling #267

Open
able93 opened this issue Jun 4, 2024 · 2 comments
Open

Information exchange during coupling #267

able93 opened this issue Jun 4, 2024 · 2 comments

Comments

@able93
Copy link

able93 commented Jun 4, 2024

Hello,

I want to be sure my thoughts are correct. I am running a coupled model of ROMS and SWAN with 2 grids each. ROMS has DT of 90s and 30s for parent and child, while SWAN has 300s and 100s. Information exchange is at every 1200s (20mins) and writing restart at every 30mins for both models.

If the model starts from initiation, they both take the current number of steps, and their data exchange is correct with time synchronization. However, if the model stops or fails, SWAN due to higher time step could have written a restart file like 30 mins ahead of ROMS.

So, if the model is restarted with the restart files, SWAN is ahead, and they still take the original number of steps before data exchange. But due to both not starting at the same initial or restart time, there seems to be mismatch in time during data exchange, like SWAN is 30 mins ahead. This may repeat itself, and the time difference seems to get higher as the model is restarted couple of times. Will ROMS not be taking the wrong data from SWAN based on the time mismatch?

Thanks

@jcwarner-usgs
Copy link
Collaborator

Couple of different issues here. 1) Coupling and 2) restart.

  1. Coupling
    You need to have the time steps and writing of output to be synchronized. you have:
    Coupling interval =1200
    ROMS 90 and 30
    SWAN 300 and 100.
    So ROMS parent = 1200/90 = 13.333 = BAD
    Both roms and swan need to divide evenly into the coupling interval.

Try Coupling interval = 900 sec
ROMS parent 900/90 = 10 steps == GOOD
SWAN parent 900/300 = 3 steps == GOOD

ROMS child divides evenly into roms parent (30 into 90) = good.
SWAN child divides evenly into swan parent (100 into 300) = good.

that all works.

  1. Restarts.
    the I/O is on a different time step than the coupling.
    Suggest you have ROMS and SWAN write a rst on the same time interval.
    That can be 15 min, 30 min, or an hour or whatever.

does that make sense?

@able93
Copy link
Author

able93 commented Jun 6, 2024

It makes a lot of sense.

Thank you so much

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants