moose
moose copied to clipboard
Distinguish High Angle and Low Angle GB and Assign different diffusivities or other grain parameters
closes #21704
Reason
The element diffusion will be affected by Grain Boundary (GB) type: It diffuse faster in High Angle GB (HAGB) than in Low Angle GB (LAGB). The distinguishing of the two GB types can increase the diffusion model accuracy.
Design
The feature include two phases. In the first phase, a grain growth simulation will distinguish the GB type based on the misorientation from EBSD data and smooth the sharp GBs. As the following figure shown, LAGB is assign "1", HAGB is assign "2", and the Triple junction is assigned an interpolated value. In the second phase, a diffusion simulation will build the "bnds" for different GB types from the result of first phase. Then, we can use the different "bnds" to assign the continuous local diffusivity.
Impact
With the new feature, MOOSE can read the EBSD data and derive the local diffusivity or other grain parameters. Also, the more accurate effective diffusivity from the feature can be used to evaluate the influence of grain structure, like different grain size, aspect ratio, and the percentage of HAGB.
Job Documentation on a0dd652 wanted to post the following:
View the site here
This comment will be updated on new commits.
Why is there a new PR rather than using #21741?
Hi Daniel, the pushes of old PR are already so complex because I forget to rebase before one push. The new one with clean push can make my life easier. sorry for confusing you.
As the following figure shown, LAGB is assign "1", HAGB is assign "2", and the Triple junction is assigned an interpolated value.
What are wee looking at on this image? I don't see any Boundaries being colored, it rather looks like entire grains. Also you mention
GB type based on the misorientation from EBSD data
but it is not in fact contained in the EBSD data file (which does have space for grain rotations).
I'm confused about this PR.
Hi Daniel, the figure is for GB type, the white one is the LAGB, the red one is the HAGB. Maybe the following three figures can make it clear.
The phi1 in Euler angle of grain orientations in the polycrystal is shown in (a). And the GB type determined by misorientation angle is shown in (b). The GB type is a area to note the GB property, so the area will larger than GB to make sure the calculation for all points in GBs can use the GB type property.
Beside, I added the function to calculate the misorientation angle in the feature directly. (in previous, we read misorientation angles outputted from a python script) Let me know if you have more suggestions.
Job Coverage on a0dd652 wanted to post the following:
Framework coverage
Coverage did not change
Modules coverage
Phase field
83889e | #21753 a0dd65 | ||||
---|---|---|---|---|---|
Total | Total | +/- | New | ||
Rate | 89.80% | 89.87% | +0.07% | 95.74% | |
Hits | 12314 | 12451 | +137 | 135 | |
Misses | 1399 | 1404 | +5 | 6 |
Full coverage reports
Reports
-
framework
-
chemical_reactions
-
combined
-
contact
-
electromagnetics
-
external_petsc_solver
-
fluid_properties
-
fsi
-
functional_expansion_tools
-
geochemistry
-
heat_conduction
-
level_set
-
misc
-
navier_stokes
-
peridynamics
-
phase_field
-
porous_flow
-
ray_tracing
-
rdg
-
reactor
-
richards
-
solid_properties
-
stochastic_tools
-
tensor_mechanics
-
thermal_hydraulics
-
xfem
This comment will be updated on new commits.
You need to get rid of the Merge commits in this PR. One way is by hard resetting to devel and the using git cherry-pick SHA
each of your commits.
@dschwen @Linwitness , what is preventing this PR from being merged?
I activated all jobs and will look it over once more tomorrow.
We need to force recreate the event on this PR. It's using recipes that are two weeks old. Too old.
Morning, I found Logan mentioned, "we need to force recreate the event on this PR". Does that mean I need to rebase it or do other necessary operations before I make some changes?
Just make the changes that Daniel mentioned above; when you push those changes it'll trigger new tests.
Job Precheck on f03e01c wanted to post the following:
Your code requires style changes.
A patch was auto generated and copied here
You can directly apply the patch by running, in the top level of your repository:
curl -s https://mooseframework.inl.gov/docs/PRs/21753/clang_format/style.patch | git apply -v
Alternatively, with your repository up to date and in the top level of your repository:
git clang-format de5880a5b3225bb52505bf07c3e4b5be7542c5af
@Linwitness, here is the error that prevented the documentation to be built:
/data/civet2/build/moose/modules/phase_field/doc/content/source/materials/ComputeGBMisorientationType.md:1
┌─────────────────────────────────────────────────────────────────────────────────────────────────┐
1│[!param](/AuxKernels/SolutionAuxMisorientationBoundary/angle_threshold) │
└─────────────────────────────────────────────────────────────────────────────────────────────────┘
(...)
MooseDocs.common.exceptions.MooseDocsException: Unable to locate the parameter '/AuxKernels/SolutionAuxMisorientationBoundary/angle_threshold', did you mean:
/AuxKernels/SolutionAuxMisorientationBoundary/gb_type_order
/AuxKernels/SolutionAuxMisorientationBoundary/scale_factor
/AuxKernels/SolutionAuxMisorientationBoundary/add_factor
/AuxKernels/SolutionAuxMisorientationBoundary/execute_on
/AuxKernels/SolutionAuxMisorientationBoundary/from_variable
Could you fix that up and re-push?
Thank you!
@dschwen do you think this PR is OK to be merged now?