Closed KennethEJansen closed 7 years ago
"previous post" refers to #64. @KennethEJansen, I assume you are not actually using interface elements (a.k.a. partial DG). In that case, @yangf4 you need to fix your code so it doesn't break other people's use cases. That matches[0].peer
check should only be done if we are in partial DG mode.
should be fixed
Thank you. For the record the fix is in c53de9a663d4aa979a970f8fdbee9c5fd81ba926.
reopen it if the issue still exists.
getInterfaceBlocks does not survive mulitphase inputs. The actual failure is chef: /projects/tools/SCOREC-core/core/phasta/phBlock.cc:203: void ph::getInterfaceBlocks(apf::Mesh*, ph::BlocksInterface&): Assertion `matches[0].peer == PCU_Comm_Self()' failed. It first appeared with hash :
commit 8d2f24688ed59a332488e812af80fb9bb43f64ec Merge: a5972ee c492b28 Author: Fan Yang yangf4@rpi.edu Date: Wed Oct 12 13:45:30 2016 -0400
The prior commit: commit c492b288e80903d84bfcc6b8f3df49da7ec71bac Author: Ehsan Shams shamse@rpi.edu Date: Wed Oct 12 10:03:10 2016 -0400
runs without modification.
When the call from getAllBlocks (in phBlock.cc) is commented out, the case goes through fine (assuming you also comment the verify issue in the previous post). An example illustrating the problem can be found at http://fluid.colorado.edu/~kjansen/Weblink/ChefTestMultiphase.tgz
With the verifyFields commented and gitInterfaceBlocks commented, Chef runs through and phasta runs fine so, at this point, I am assuming that these routines are detecting issues that are not in actual issues for multiphase flow. In the case of getInterfaceBlocks, it would seem easier to create a conditional to avoid going into this routine when there are no DG interfaces, rather than have the routine handle all the possible cases internally?