Skip to content

Code Validation Efforts

Zach Byerly edited this page Feb 1, 2016 · 2 revisions

Code Validation Process

The results from the original code (master branch) are being used to validate results from the development (dgswem-hpx) code.

The primary source of conflicting results is the use of features not yet implemented in the dgswem-hpx code.

Other potential sources are differences in compilers and compiler flags. All other discrepancies are likely due to the result of a bug and should be reported.

Procedure for validating a test problem

  1. Run an example problem using dgswem_serial code in master branch This code can be used to run an example problem and used as a reference.

  2. Build dgswem_fortran_serial using ifort and matching flags for the above run. If all features not yet supported are turned off, then the results from this refactored (but still purely fortran and serial) code should match the results from run #1.

  3. Build same dgswem_fortran_serial code using gfortran with compiler flags. The results from this will likely not match the results from run #3, but will rather be used as a reference to compare future runs against.

  4. Build dgswem_hpx (or whichever code we want to compare) using gfortran. use adcpost to post-process results for easy data-level-comparison to the results from #3.

Current status

Idealized inlet problem run with dgswem_fortran_serial (built with gfortran) does not match dgswem_cpp_serial, suggesting problems with the dgswem_fortran_serial code.