Comments (8)
The latest nightly located at https://dream3d.bluequartz.net/binaries/experimental/2024-04-23/ has this fixed.
Their is no planned fix for the 6.5.171 branch. A notice has been placed on the https://dream3d.bluequartz.net website under the release notes.
from dream3d.
@StopkaKris Could you try this with the latest nightly from the DREAM3D 6.6 branches? https://dream3d.bluequartz.net/binaries/experimental
There was a lot of updates to the EBSD Lib that are reflected in the 6.6 branch but not the 6.5. branch of DREAM3D.
I also imported the data into DREAM3D-NX, computed the Average Eulers and Quats and then converted the Avg Eulers to Quats, then ran a difference filter on the 2 sets of Quats with zero difference between them. My guess is that there are issues with the earlier version of EBSDLib that the 6.5 branch is using.
If this is the actual issue then BlueQuartz Software will have to figure out where to find the time/funding to update DREAM3D 6.5 to the latest EBSDLib version. This is no small task as there are major API changes between them and a lack of unit tests makes me reluctant to do the updates.
I can also put up a message on the DREAM.3D website stating this issue if we can't figure out the issues.
from dream3d.
Did some comparison testing between 6.5, 6.6 and 7.0(NX). The good news is that 6.6 and 7.0 seem to give the same results (according to the diff filter, they are actually exactly the same).
But there are differences between 6.5 and 6.6/7.0. The big shift was to move to double precision internal computations in EbsdLib for a lot of these calculations. What we may be seeing are the differences in those moves. I'd have to go back and try and figure out what else changed in EBSDLib between those versions.
from dream3d.
Hi @imikejackson,
Thank you for looking into this. I should emphasize that I ran into this issue when generating synthetic microstructures. I repeated the exercise in version DREAM3D-6.6.363.ec4aa278a-Win64 and still saw the same issue using the Single Cubic Phase Equiaxed
prebuilt pipeline.
Another process I tried was reading in EBSD data using the (08) SmallIN100 Full Reconstruction
pipeline. The EBSD filters read Euler angles directly from .ang or .ctf files and then convert these to quaternions using Convert Orientation Representation
, so unsurprisingly, I did not see this error when working with EBSD data. I only see this issue when generating synthetic microstructures. More specifically, I believe the issue may be in the Match Crystallography
filter, as this is the one that assigns EulerAngles and AvgQuats as feature data simultaneously. Converting one of the orientation representations to the other directly afterwards shows the issue.
Some other information: the number of grains for which the orientation does not match is ~15% of grains in a model containing ~50 grains and nearly 60% of grains in a model containing ~2200 grains.
Best regards,
Krzysztof Stopka
from dream3d.
@StopkaKris Interesting Find. I will have a look next week at the code and see I can figure out where the bug lies. The nightly builds may or may not work anymore since the software is getting pretty old and there isn't any funding to keep it going. If I find the issue I'll talk to the funding agency and see what we can do. Considering this is on the synthetic side of things it might get some traction.
Thanks for the detailed analysis.
from dream3d.
Hi @imikejackson,
No problem, always happy to help!
Best regards,
Krzysztof Stopka
from dream3d.
@StopkaKris Good news. I found the issue. Bad news is that it has been in there for a LONG time.
The nightly builds are not auto-uploading correctly any more. I can manually copy tomorrows builds up to the usual location.
The workaround is to basically delete the Average Quaternions AFTER Match Crystallography and then recompute them if you need them via the "Convert Orientations" filter.
from dream3d.
Hi @imikejackson, thank you for the update! I see you committed the fix to the existing code.
from dream3d.
Related Issues (20)
- DAMASK microstructure generation is not correct in version 6.5
- Error with qwt-6.1.5 during install HOT 5
- Filter 'Generate Ensemble Statistics' will crash if Calculate Crystallographic Statistics and Laue classes *other* than cubic or hexagonal are used. HOT 1
- FindBoundingBoxFeatures: Bug in 2D geometries where the XY coordinates are always based off an XY plane
- "ITK::Import Image Montage" crashes the application HOT 4
- StatsGenerator computes NaN values for standard deviation in the neighbor distribution if bincount is large enough
- FindSurfaceFeatures does not index into neighboring features properly when calculating surface features for a 2D geometry in the YZ plane. HOT 1
- FindSurfaceFeatures incorrectly labels Feature 0 as a surface feature. HOT 2
- There is an error in LAMMPSPipeline. HOT 1
- VTK STRUCTURED_POINTS Importer reads 3D data as 2D HOT 1
- Issue Installing Python Distribution HOT 2
- Loading non-equiaxed grains generates equiaxed grains for larger structures HOT 3
- Problem with surface normals HOT 2
- Setting the DataDirectory will crash DREAM3D 6.5.xx and 6.6.xx
- [6.5.x] Update EBSDLib to use the new added feature of correctly out-of-order ANG files
- Issue exporting Face Feature Centroids HOT 5
- Numbers saved as doubles instead of strings in pipeline filters
- Issue in making same microstructructure with different numer of elements. HOT 1
- How to make 3D RVE grain-grain misorientation distribution in DREAM.3D ? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dream3d.