Skip to content

Fm/task/unst xxxx vectorize setumod#556

Merged
FlorisBuwaldaDeltares merged 92 commits intomainfrom
fm/task/UNST-xxxx_vectorize_setumod
Feb 20, 2026
Merged

Fm/task/unst xxxx vectorize setumod#556
FlorisBuwaldaDeltares merged 92 commits intomainfrom
fm/task/UNST-xxxx_vectorize_setumod

Conversation

@FlorisBuwaldaDeltares
Copy link
Copy Markdown
Contributor

@FlorisBuwaldaDeltares FlorisBuwaldaDeltares commented Feb 1, 2026

What was done

  • vectorized setumod (80% speedup!)
  • Split of code path for dflowfm2d-noordzee in separate functions (icorio = 5, newcorio = 1, kmx = 0, jasfer3D=1)
  • prefetch node-based arrays into link-based arrays for contiguous memory access
  • no longer calculate coriolis if coriolis constant is 0
  • speed up coordinate transformation by either hardcoding or using nod2linx/y_fast
  • update few cases with extremely tight tolerances

Evidence of the work done

  • Video/figures
    image-
    dflowfm2d-noordzee_0_5nm-j22_6-v1a
    [ ] Clear from the issue description
  • Not applicable

Tests

  • Tests updated
    <add testcase numbers if applicable, Issue number>
  • Not applicable

Documentation

  • Documentation updated
    <add description of changes if applicable, Issue number>
  • Not applicable

Issue link

https://issuetracker.deltares.nl/browse/UNST-9669

Copy link
Copy Markdown
Contributor

@thomas-pijls thomas-pijls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work, you did a lot

I did mostly a style review; the exact workings of this code I am not familiar with. If you have any questions I am happy to discuss them with you

Copy link
Copy Markdown
Contributor

@V-Chavarrias V-Chavarrias left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice job. I have nothing major. Just some comments for me to learn. You can ignore them. I guess we have no testcase where we can check the impact on an analytical solution or something similar, isn't?

@FlorisBuwaldaDeltares
Copy link
Copy Markdown
Contributor Author

Nice job. I have nothing major. Just some comments for me to learn. You can ignore them. I guess we have no testcase where we can check the impact on an analytical solution or something similar, isn't?

Thanks! no, there's a few validation cases which are quite sensitive but nothing analytical to unit test against. Would be nice in the future because this code is super duper fragile

Copy link
Copy Markdown
Contributor

@thomas-pijls thomas-pijls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me 👍

@FlorisBuwaldaDeltares FlorisBuwaldaDeltares merged commit a3fa731 into main Feb 20, 2026
18 checks passed
@FlorisBuwaldaDeltares FlorisBuwaldaDeltares deleted the fm/task/UNST-xxxx_vectorize_setumod branch February 20, 2026 16:32
@FlorisBuwaldaDeltares FlorisBuwaldaDeltares restored the fm/task/UNST-xxxx_vectorize_setumod branch February 20, 2026 16:34
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

Successfully merging this pull request may close these issues.

4 participants