Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request Summary
Communication is added after boundary conditions are applied in PDLIB_JACOBI_GAUSS_SEIDEL_BLOCK. Change is needed for reproducability in simulations with boundary conditions.
Description
Communication is added after boundary conditions are applied in PDLIB_JACOBI_GAUSS_SEIDEL_BLOCK. This PR fixes a bug affecting reproducability across different numbers of MPI processes when boundary conditions are applied in the unstructured mesh implicit time stepping algorithm.
Additionally a test case is added to ww3_tp2.17 to test with ice forcing in addition to wind, currents, water level, and boundary forcing. This test uses a new water level file, regtests/ww3_tp2.17/input_ice/levelNoNaN.nc, rather than regtests/ww3_tp2.17/input_ice/level.nc which has NaN values within bay. The presence of NaN in simulations using regtests/ww3_tp2.17/input_ice/level.nc appears to cause non reproducability when different number of MPI processes are used.
Issue(s) addressed
#1537 (non bit for bit reproducability)
#1533 (ice forcing added to regtests/ww3_tp2.17 )
Commit Message
Communication is added after boundary conditions are applied in PDLIB_JACOBI_GAUSS_SEIDEL_BLOCK to enable bit for bit reproducability across different numbers of MPI processes.
Check list
Testing
Changes may occur in regtest ww3_tp2.17 due to added communication of boundary condition.
matrixCompSummary.txt