New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BUG: Issues with "(08) Small IN100 Full Reconstruction" prebuilt pipeline and neighbor filters used #922
Comments
Hello Krzysztof, I was able to replicate this bug on my Linux machine, so I will look into it as soon as I get in Tuesday. Nathan |
@StopkaKris Looking into this a bit more, looks like filter number 17 "Minimum Number of Neighbors" is removing the neighbor lists without a warning because the featureIds are being modified in that filter. You would need to recalculate the neighbor list again after that filter. I remember a long time ago discussing these filters with Mike Groeber: Should we just calculate the neighbor lists on-demand but that also caused a boat load of issues. So we ended up with the situation that we are in now. Thanks for all the bug reports. Keep them coming. Eventually they will all dry up. :-) |
Looks great, thanks guys! |
After internal discussions, I think the safest approach to this problem is to delete NeighborLists during the course of the filter with a change of wording of the filter to state that we are GOING to remove those NeighborLists. Since, currently, we can't know what filter created those NeighborLists in the first place, we can't include that information into the warning message. Any other way we do this, the user will probably get themselves into a situation where they either (1) try to use a deleted NeighborList or (2) if we don't delete them, use an invalid NeighborList object. Based on this, just flat out deleting the NeighborLists is probably the safest thing to do. There are a number of items that need to be updated to accomplish this goal:
|
Filters that Create A NeighborList (or copy from another DataStucture Group)DREAM3D_Plugins/SimplnxReview/src/SimplnxReview/Filters/FindGroupingDensityFilter.cpp These filters USE a Neighbor ListDREAM3D_Plugins/SimplnxReview/src/SimplnxReview/Filters/FindGroupingDensityFilter.cpp |
Fixed by #926 |
Is there an existing issue for this?
Brief Description of the Issue and Expected Behavior
I came across these issues while using the prebuilt "(08) Small IN100 Full Reconstruction" pipeline. Please see below to reproduce and let me know if there are any questions. This was found using DREAM3DNX Version 7.0.0-RC-10.
Best regards,
Krzysztof Stopka
Version
DREAM3D NX (version 7)
What operating system are you seeing the problem on? [Further details may be required during triage process]
Windows 10
What hardware architecture are you using? [Further details may be required during triage process]
x86_64
What section did you encounter the error in? [Further details may be required during triage process]
No response
Steps To Reproduce
Write Feature Data as CSV File
at the end of the pipeline. By default, the "Write Neighbor Data" box is checked, and the Data Structure contains "NeighborList" and "SharedSurfaceAreaList", so these should be written to the .csv file. However, no feature neighbor data is written to the .csv file when the pipeline is executed.Find Feature Neighbors
, I added another instance of this filter directly after fitler 16. I reran the pipeline butWrite Feature Data as CSV File
still did not write any neighbor information to the .csv file. I tried toggling the "Write Neighbor Data" checkbox but this did not change anything.Find Feature Neighbor Misorientation
and used the Feature Neighbor List generated by the first instance ofFind Feature Neighbors
. There was still no neighbor information written to the .csv file.Read DREAM.3D File
to load the .dream3d file saved by the previous pipeline, in an attempt to calculate feature misorientations after reading the data "fresh" from the .dream3d file. However, the NeighborList was no longer in the CellFeatureData Attribute Matrix.Find Feature Neighbors
,Find Feature Neighbor Misorientations
, andWrite Feature Data as CSV File
as filters 2, 3, and 4, respectively. After running this pipeline, the .csv file contained the expected neighbor data.Remove Minimum Size Features
but does not subsequently renumber the remaining features, so feature IDs are not consecutive.To summarize the bugs I came across:
Write Feature Data as CSV File
was added to the end of the "(08) Small IN100 Full Reconstruction", it did not write feature neighbor information. I suspect it is something about filter 16,Find Feature Neighbors
, in this pipeline.Write DREAM3D NX File
did not write the "Neighbor List Info" arrays at the end of "(08) Small IN100 Full Reconstruction". Although the "Neighbor List Info" arrays appear in the Data Structure, they may not actually exist and are therefore not written.Remove Minimum Size Features
andMinimum Number of Neighbors
, particularly because this is the default organization of the "(08) Small IN100 Full Reconstruction" prebuilt pipeline. Would it make sense to edit this pipeline so that feature IDs and their properties are reassigned/recomputed after any features are removed due to minimum size or number of neighbors?Relevant log output
No response
Anything else?
No response
Code of Conduct
The text was updated successfully, but these errors were encountered: