Repository navigation
Conversation
Davknapp
left a comment
There was a problem hiding this comment.
This is a first batch of review comments.
A general comment / question:
A lot of functions have an if/else block with
if(!T8_ELEMENT_NUM_EQUATIONS) or if(T8_ELEMENT_NUM_EQUATIONS)
to implement line/quad/hex specific stuff.
Wouldn't it be faster to provide the LUT for these eclasses, too? We could avoid if/else blocks slowing down the computation. Or does the compiler optimize it out?
To my understanding the if/else should not have an impact on the runtime as we use |
| /* Get the cmesh */ | ||
| const t8_cmesh_t cmesh = t8_forest_get_cmesh (forest); | ||
| #if T8_ENABLE_DEBUG | ||
| if (tree_class == T8_ECLASS_TET) { |
There was a problem hiding this comment.
Can we Assert for something fo rthe other tree_classes, too?
There was a problem hiding this comment.
I'm not sure if we need that
|
|
||
| const t8_scheme *scheme; | ||
| scheme = t8_scheme_new_default (); | ||
| t8_eclass_t eclass = T8_ECLASS_PYRAMID; |
There was a problem hiding this comment.
| t8_eclass_t eclass = T8_ECLASS_PYRAMID; | |
| const t8_eclass_t eclass = T8_ECLASS_PYRAMID; |
| { | ||
| T8_ASSERT (element_is_valid (elem)); | ||
|
|
||
| if constexpr (TEclass == T8_ECLASS_PYRAMID) { |
There was a problem hiding this comment.
Can we avoid these magic numbers?
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1443 +/- ##
==========================================
+ Coverage 82.76% 82.99% +0.22%
==========================================
Files 139 139
Lines 21593 21808 +215
==========================================
+ Hits 17872 18100 +228
+ Misses 3721 3708 -13 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Describe your changes here:
Closes #1574
Add support for the remaining eclasses (tri, tet, prism & pyramid) to the standalone scheme.
All these boxes must be checked by the reviewers before merging the pull request:
As a reviewer please read through all the code lines and make sure that the code is fully understood, bug free, well-documented and well-structured.
General
The reviewer executed the new code features at least once and checked the results manually
The code follows the t8code coding guidelines
New source/header files are properly added to the Makefiles
The code is well documented
All function declarations, structs/classes and their members have a proper doxygen documentation
All new algorithms and data structures are sufficiently optimal in terms of memory and runtime (If this should be merged, but there is still potential for optimization, create a new issue)
Tests
Github action
The code compiles without warning in debugging and release mode, with and without MPI (this should be executed automatically in a github action)
All tests pass (in various configurations, this should be executed automatically in a github action)
If the Pull request introduces code that is not covered by the github action (for example coupling with a new library):
Scripts and Wiki
script/find_all_source_files.scpto check the indentation of these files.License
doc/(or already has one)Tag Label