[root]/Core/Algorithms/Regression
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 17 (100.0%) | 1287 (100.0%) | 75.7 |
jeroen | 15 (88.2%) | 1284 (99.8%) | 85.6 |
callahan | 2 (11.8%) | 3 (0.2%) | 1.5 |
Fix compiler warnings.
3 lines of code changed in 2 files:
Series of bug fixes and first version of regression test for the core algorithms (currently limited), but will expand this soon to include most algorithms. Fixed HexVolMesh to do degenerate elements properly this time. First series of test indicated a series of problems in the algorithms fixed these here. To run the regression tests one still needs to have example files and gold standards. We will be setting up that directory shortly. Added the ability in the algorithms to compile dynamic files and delete them afterwards, so it is not a burden on the filing system. This now happens automatically when the algorithm detects that the ProgressReporter is of the class RegressionReporter. This automatically triggers the dynamic compilation system to build those libs on-the-fly but remove them afterwards
266 lines of code changed in 9 files:
Adding preparations for Regression testing: added comaprison functions for dataflow objects. Modified Dynamic compilation so it has an option to compile load and destroy the library, to prevent the on-the-fly-lib directory to grow out of control when testing whether dynamically compilled algorithms work. Fixed HexVolMesh to deal with degenerate meshes and started to better optimize this mesh to use less memory (still need to finish this as table sizes can be shrunk even more). Added a RegressionReporter to store all the information during regression testing. Fixed the Finite Element Code to deal with degenerate elements (Comparison with Tetsn and Prisms show that Hexahedral elements with degenerate nodes can act as tetrahedrals or prisms and still generate the proper stiffness matrix). Fixed the visualization so degenerate elements show upm properly (fixed the order of the faces of these degenerate elements so the three unique element nodes are always returned first when quering a face). Still need to upgrade the quadsurfmesh to also support degenerate elements. Field boundary now also supports degenerate elements as the number of faces returned per element can now vary with the actual number of faces. Next to do: generate degenerate meshes with tets, piramids, prisms and hexahedral and test which algorithms fail and fix those.
1018 lines of code changed in 6 files: