Giter Site home page Giter Site logo

BUG: Feature quaternions generated by 'Single Cubic Phase Equiaxed' prebuilt pipeline are sometimes not equivalent to feature Euler angles about dream3d HOT 8 CLOSED

StopkaKris avatar StopkaKris commented on July 17, 2024
BUG: Feature quaternions generated by 'Single Cubic Phase Equiaxed' prebuilt pipeline are sometimes not equivalent to feature Euler angles

from dream3d.

Comments (8)

imikejackson avatar imikejackson commented on July 17, 2024 1

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.

imikejackson avatar imikejackson commented on July 17, 2024

@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.

imikejackson avatar imikejackson commented on July 17, 2024

@StopkaKris

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.

StopkaKris avatar StopkaKris commented on July 17, 2024

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.

imikejackson avatar imikejackson commented on July 17, 2024

@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.

StopkaKris avatar StopkaKris commented on July 17, 2024

Hi @imikejackson,

No problem, always happy to help!

Best regards,
Krzysztof Stopka

from dream3d.

imikejackson avatar imikejackson commented on July 17, 2024

@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.

StopkaKris avatar StopkaKris commented on July 17, 2024

Hi @imikejackson, thank you for the update! I see you committed the fix to the existing code.

from dream3d.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.