-
Notifications
You must be signed in to change notification settings - Fork 129
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
Translated F77 and F90 examples to F2003 examples (with one new addition in IDA) #302
Conversation
In general, when we update any package (ARKODE, CVODE, etc.), the PR should include:
Here, you could say something like "Numerous previous Fortran-77 and Fortran-90 example programs were updated to use SUNDIALS current Fortran-2003 interfaces." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just finished going through the ARKODE examples. I'll resume with CVODE, IDA, and KINSOL later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I finished going through all of the files, and provided suggestions for a number of items that need adjustment.
…ders where necessary.
example_utilities.hpp requires `stoi` and similar methods. These are declared in `<string>`, but `<string>` is not included. This means this file will break any TU it's included in. Resolves LLNL#330 Co-authored-by: Cody Balos <[email protected]>
Fixes LLNL#335 Co-authored-by: David Gardner <[email protected]>
…NL#337) Fixes LLNL#333. Some other typedefs already had specialized (towards idas or cvodes) prefixed names, it won't harm to generalize this. --------- Co-authored-by: Cody Balos <[email protected]>
Add scripts for comparing benchmark and example timings against release timings and a notebook using Thicket to visualize data --------- Co-authored-by: David J. Gardner <[email protected]> Co-authored-by: Cody J. Balos <[email protected]>
Fixes part of LLNL#253 by avoiding nested loops that take `O(M*N)` operations. Also fixes LLNL#256. --------- Signed-off-by: phannebohm <[email protected]> Co-authored-by: Cody Balos <[email protected]>
…ed CMakeLists.txt accordingly
Add core error handling functions and macros --------- Co-authored-by: Daniel R. Reynolds <[email protected]> Co-authored-by: David J. Gardner <[email protected]>
Apply clang-format and clang-tidy. There are changes/additions in the following files: - .clang-format - .clang-tidy - .github/actions/free-space-ubuntu/action.yml - .github/workflows/build-llvm-container.yml - .github/workflows/check-clang-format.yml - cmake/SundialsSetupCompilers.cmake - scripts/format.sh - scripts/tidy_and_format.sh --------- Co-authored-by: Daniel R. Reynolds <[email protected]> Co-authored-by: David J. Gardner <[email protected]>
…e the new F2003 examples
…f2003-examples into feature/f2003-examples
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I renamed one example to better align with the previous F77 version. Assuming that rename doesn't break anything in the CI, then I think this is good to merge.
Remove F77 interface examples from `develop` branch. Once this PR is merged, a new `archive` branch can be created for easy reference until #302 is merged and the `archive` branch can be deleted. --------- Co-authored-by: Cody Balos <[email protected]>
Remove F77 interface examples from `develop` branch. Once this PR is merged, a new `archive` branch can be created for easy reference until #302 is merged and the `archive` branch can be deleted. --------- Co-authored-by: Cody Balos <[email protected]>
The merge-base changed after approval.
Closing this PR, as it is replaced by #420. |
This PR replaces #302, since it proved way too difficult to merge changes from `develop` directly into that branch, so I just propagated the new/changed files from #302 into a new branch off of `develop`. --------- Co-authored-by: Cody Balos <[email protected]>
The 22 examples (+ old names & positions) include:
arkode/F77_serial/fark_diurnal_kry_bp.f
arkode/F77_serial/fark_roberts_dnsL.f
arkode/F77_serial/fark_roberts_dns.f
arkode/F90_serial/ark_bruss1D_FEM_klu.f90
arkode/F90_serial/ark_bruss.f90
cvode/fcmix_serial/fcvAdvDiff_bnd.f
cvode/fcmix_serial/fcvDiurnal_kry.f
cvode/fcmix_serial/fcvDiurnal_kry_bp.f
cvode/fcmix_serial/fcvRoberts_dns.f
cvode/fcmix_serial/fcvRoberts_dnsL.f
cvode/fcmix_serial/fcvRoberts_dns_constraints.f
cvode/fcmix_serial/fcvRoberts_klu.f
kinsol/fcmix_serial/fkinDiagon_kry.f
Create ida/fcmix_openmp/fidaHeat2D_kry_openmp.f
arkode/F77_parallel/fark_diag_kry_bbd_p.f
arkode/F77_parallel/fark_diag_non_p.f
arkode/F90_parallel/fark_heat2D.f90
cvode/fcmix_parallel/fcvDiag_kry_bbd_p.f
cvode/fcmix_parallel/fcvDiag_kry_p.f
cvode/fcmix_parallel/fcvDiag_non_p.f
ida/fcmix_parallel/fidaHeat2D_kry_bbd_p.f
kinsol/fcmix_parallel/fkinDiagon_kry_p.f