-
Notifications
You must be signed in to change notification settings - Fork 63
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
#737: SCHISM Coastal Formulation #810
base: master
Are you sure you want to change the base?
Conversation
24cb892
to
93b3bf7
Compare
93b3bf7
to
2050061
Compare
…implementation, and supporting classes
d38a9d9
to
4d55b6c
Compare
…ltiple calling objects
This is totally not ready for review, but it's now a demonstration of code that drives SCHISM through the NGen Fortran BMI adapter, initializing, setting variables, updating, and finalizing. I think for our deliverable, we'll be able to use NetCDF files and the associated provider rather than the forcing engine, but I'll have to see. Justin, in the meanwhile, this should give a decent sense of what I'd like for an unstructured mesh version of the Note that there's still a shortfall in the SCHISM BMI code that limits this to running on just 1 MPI rank for now, since in partitioned form, some arrays are split while others aren't. |
c7392f8
to
eaac987
Compare
I've found that I need to disable Fortran array bounds checking in the BMI implementation to work with this on GNU Fortran, because the array arguments that come in have. reported bounds of 0. This maybe arose new in gfortran-14. I haven't gone back to older versions to check. |
Resolves #737
Additions
CoastalFormulation
abstract base classDataProvider
instantiations thatCoastalFormulation
will needCoastalFormulation
Changes
parallel_utils.h
gains the MPI size/rank global variables, and has its contents split from the header to a source fileBmi_Fortran_Adapter
gains a constructor that implements the prototype MPI communicator setup protocolTesting
Screenshots
Notes
Todos
Checklist
Testing checklist (automated report can be put here)
Target Environment support