Phase Field Requirement Traceability Matrix
Introduction
The RTM for Phase Field captures all requirements and maps each to the associated design documentation and associated test case.
Dependencies
The Phase Field application is developed using MOOSE and is based on various modules, as such the RTM for Phase Field is dependent upon the following documents.
Requirements
The following is a complete list for all the functional requirements including links to the design documents and test cases for Phase Field.
- phase_field: Adchsoretdiffusion
- F8.1.1A temperature gradient driving force for diffusion shall be added to the split form of the Cahn-Hilliard equation and solved using automatic differentiation.
Specification: ADCHSoretDiffusion:simple_transient_diffusion_with_soret
Design: ADCHSoretMobility
Issue(s): #14396
- F8.1.2The Jacobians for the automatic differentiation ADCHSplitChemicalPotential and ADCHSplitConcentration kernels shall be accurate.
Specification: ADCHSoretDiffusion:simple_transient_diffusion_with_soret-jac
Design: ADCHSoretMobility
Issue(s): #14396
- phase_field: Adchsplitchemicalpotential
- F8.2.1ADCHSplitChemicalPotential and ADCHSplitConcentration shall solve a simple Cahn-Hilliard problem using automatic differentiation.
Specification: ADCHSplitChemicalPotential:simple_transient_diffusion
Design: ADCHSplitChemicalPotentialADCHSplitConcentration
Issue(s): #14396
- F8.2.2The Jacobians for the automatic differentiation ADCHSplitChemicalPotential and ADCHSplitConcentration kernels shall be accurate.
Specification: ADCHSplitChemicalPotential:simple_transient_diffusion-jac
Design: ADCHSplitChemicalPotentialADCHSplitConcentration
Issue(s): #14396
- phase_field: Gbanisotropy
- F8.3.1A material shall be provided to compute anisotropic grain boundary energies and mobilities.
Specification: GBAnisotropy:test1
Design: GBAnisotropy
Issue(s): #4580
- F8.3.2A material shall be provided to compute anisotropic grain boundary energies and mobilities.
Specification: GBAnisotropy:test2
Design: GBAnisotropy
Issue(s): #4580
- F8.3.3A material shall be provided to compute anisotropic grain boundary energies and mobilities with an inclination dependence.
Specification: GBAnisotropy:test3
Design: GBAnisotropy
Issue(s): #4580
- F8.3.4The anisotropic grain boundary system shall allow the user to specify grain boundary widths independently for each interface between grains.
Specification: GBAnisotropy:testwidth1
Design: GBWidthAnisotropy
Issue(s): #8079
- phase_field: Grandpotentialpfm
- F8.4.1MOOSE shall provide classes to implement a Grand Potential phase field formulation
Specification: GrandPotentialPFM:GrandPotentialPFM
Design: GrandPotentialKernelAction
Issue(s): #6977
- F8.4.2MOOSE shall provide a Grand Potential based multiphase model
Specification: GrandPotentialPFM:GrandPotentialMultiphase
Design: ACSwitching
Issue(s): #8213
- F8.4.3MOOSE shall provide a Grand Potential based dendritic solidification capability in 2D
Specification: GrandPotentialPFM:GrandPotentialAnisotropy
Design: ACInterface2DMultiPhase1ACInterface2DMultiPhase2InterfaceOrientationMultiphaseMaterial
- F8.4.4MOOSE shall provide a material to automatically compute grand potential model interface parameters based on provided interfacial free energies and widths
Specification: GrandPotentialPFM:GrandPotentialInterface
Design: GrandPotentialInterface
Issue(s): #12147
- F8.4.5MOOSE shall provide a Grand Potential based dendritic solidification capability for alloy with antitrapping current
Specification: GrandPotentialPFM:GrandPotentialAnisotropyAntitrap
Design: AntitrappingCurrent
Issue(s): #13373
- phase_field: Kks System
- F8.5.1The Kim-Kim-Suzuki model implementation shall use free energy densities provided by DerivativeParsedMaterials
Specification: KKS_system:derivative_parsed_material
Design: DerivativeParsedMaterial
Issue(s): #4835
- F8.5.2A non-split version of the Kim-Kim-Suzuki shall be provided
Specification: KKS_system:kks_example
Design: KKSCHBulk
Issue(s): #4835
- F8.5.3A split version of the Kim-Kim-Suzuki shall be provided
Specification: KKS_system:kks_example_split
Design: KKSSplitCHCRes
Issue(s): #4835
- F8.5.4The split version of the Kim-Kim-Suzuki shall be yield the correct results with asymmetric free energies
Specification: KKS_system:kks_example_offset
Design: KKSSplitCHCRes
Issue(s): #10315
- F8.5.5A multi component Kim-Kim-Suzuki model shall be implemented
Specification: KKS_system:kks_xevac
Design: KKSSplitCHCRes
Issue(s): #4879
- F8.5.6A multi component Kim-Kim-Suzuki model shall be implemented
Specification: KKS_system:kks_multiphase
Design: KKSMultiACBulkC
Issue(s): #7007
- phase_field: Multiphase
- F8.6.1Moose shall provide a material to combine two free energies materials into a WBM two phase free energy
Specification: MultiPhase:derivativetwophasematerial
Design: DerivativeTwoPhaseMaterial
Issue(s): #4035
- F8.6.2Moose shall provide a materials to generate barrier and switching function in a WBM multiphase model
Specification: MultiPhase:orderparameterfunctionmaterial
Design: SwitchingFunctionMaterial
Issue(s): #4355
- F8.6.3Moose shall provide a free energy penalty class that suppresses the formation of a third phase in grain boundaries
Specification: MultiPhase:thirdphasesuppressionmaterial
Design: ThirdPhaseSuppressionMaterial
Issue(s): #6279
- F8.6.4Moose shall provide a material for computing barrier values in multiphase systems
Specification: MultiPhase:multibarrierfunction
Design: MultiBarrierFunctionMaterial
Issue(s): #4545
- F8.6.5Moose shall provide a material for computing independent barrier values for each phase pair in a multiphase system
Specification: MultiPhase:crosstermbarrierfunction
Design: CrossTermBarrierFunctionMaterial
Issue(s): #5192
- F8.6.6Moose shall provide a material for computing independent barrier values for each phase pair in a multiphase system with asymmetric interface profiles
Specification: MultiPhase:asymmetriccrosstermbarrierfunction
Design: AsymmetricCrossTermBarrierFunctionMaterial
Issue(s): #6584
- F8.6.7Moose shall provide a lagrange multiplier based constraint for keeping the sum of all phase order parameters equal to one
Specification: MultiPhase:lagrangemult
Design: SwitchingFunctionConstraintLagrange
Issue(s): #4545
- F8.6.8Moose shall provide a penalty based constraint for keeping the sum of all phase order parameters equal to one
Specification: MultiPhase:penalty
Design: SwitchingFunctionConstraintLagrange
Issue(s): #4723
- F8.6.9Moose shall provide aan AuxKernel to compute the free energy contribution form pairwise phase barrier functions
Specification: MultiPhase:crosstermfreeenergy
Design: CrossTermGradientFreeEnergy
Issue(s): #4710
- F8.6.10Moose shall provide an Allen-Cahn gradient energy kernel with cross term contributions
Specification: MultiPhase:acmultiinterface
Design: ACMultiInterface
Issue(s): #4545
- F8.6.11Moose shall provide an Allen-Cahn gradient energy kernel with cross term contributions, and some order parameters may be aux variables
Specification: MultiPhase:acmultiinterface_aux
Design: ACMultiInterface
Issue(s): #4545
- F8.6.12Moose shall provide switching functions for three-phase KKS phase-field model
Specification: MultiPhase:switchingfunction3phasematerial
Design: SwitchingFunction3PhaseMaterial
Issue(s): #6857
- F8.6.13Moose shall provide switching functions for multi-phase KKS phase-field model
Specification: MultiPhase:switchingfunctionmultiphasematerial
Design: SwitchingFunctionMultiPhaseMaterial
Issue(s): #8113
- F8.6.14Moose shall provide mixed switching functions with order 234 and 246 and an adjustable weight
Specification: MultiPhase:mixedswitchingfunctionmaterial
Design: MixedSwitchingFunctionMaterial
Issue(s): #9042
- F8.6.15Moose shall provide order 246 polynomials in the two phase barrier function
Specification: MultiPhase:barrierfunctionmaterial
Design: BarrierFunctionMaterial
Issue(s): #9301
- phase_field: Multismoothcircleic
- F8.7.1We shall be able to generate multiple smooth circle initial conditions with uniform radius variation type
Specification: MultiSmoothCircleIC:multi_test
Design: MultiSmoothCircleIC
- F8.7.2We shall be able to generate multiple smooth circle initial conditions with normal radius variation type
Specification: MultiSmoothCircleIC:multi_normal_test
Design: MultiSmoothCircleIC
- F8.7.3We shall be able to produce a lattice of smooth circle initial conditions, allowing the circles to exist on the simulation cell boundaries and using a uniform radius variation type
Specification: MultiSmoothCircleIC:lattice_bounds
Design: LatticeSmoothCircleIC
- F8.7.4We shall be able to produce a lattice of smooth circle initial conditions, using a uniform radius variation type
Specification: MultiSmoothCircleIC:lattice_test
Design: LatticeSmoothCircleIC
- F8.7.5We shall be able to produce a lattice of smooth circle initial conditions using a normal radius variation type
Specification: MultiSmoothCircleIC:lattice_normal_test
Design: LatticeSmoothCircleIC
- F8.7.6We shall be able to create multiple SpecifiedSmoothCircleICs with a small invalue
Specification: MultiSmoothCircleIC:lattice_small_invalue_test
Design: LatticeSmoothCircleIC
- F8.7.7We shall be able to create several SpecifiedSmoothCircleICs with a standard invalue
Specification: MultiSmoothCircleIC:specified_test
Design: SpecifiedSmoothCircleIC
- phase_field: Nucleation
- F8.8.1The nucleation material shall generate a free energy contribution proportional to the map value
Specification: Nucleation:material
Design: DiscreteNucleation
Issue(s): #5472
- F8.8.2The nucleation system shall insert nuclei in a manner independen of the domain decomposition and parallelization
Specification: Nucleation:parallel
Design: DiscreteNucleationInserter
Issue(s): #5472
- F8.8.3The nucleation system shall recoverable
Specification: Nucleation:material_recover1
Design: DiscreteNucleation
Issue(s): #5472
Prerequisite(s): F8.8.1
- F8.8.4The nucleation system shall recoverable
Specification: Nucleation:material_recover2
Design: DiscreteNucleation
Issue(s): #5472
Prerequisite(s): F8.8.3
- F8.8.5The nucleation system shall recoverable
Specification: Nucleation:parallel_recover1
Design: DiscreteNucleationInserter
Issue(s): #5472
Prerequisite(s): F8.8.2
- F8.8.6The nucleation system shall recoverable
Specification: Nucleation:parallel_recover2
Design: DiscreteNucleationInserter
Issue(s): #5472
Prerequisite(s): F8.8.5
- F8.8.7The map shall provide the capability of defining soft interfaces for initial nuclei
Specification: Nucleation:soft
Design: DiscreteNucleationMap
Issue(s): #5526
- F8.8.8The marker shall trigger refinement of the nucleus insertion area
Specification: Nucleation:marker
Design: DiscreteNucleationMarker
Issue(s): #12099
- F8.8.9The nucleation time step porocessor shall return a timestep limit that can be applied to cut the simulation timestep as new nuclei are inserted
Specification: Nucleation:timestep
Design: DiscreteNucleationTimeStep
Issue(s): #12104
- F8.8.10The nucleation data porocessor shall return the number of currently active nuclei or whether a change to the nucleus list has occurred
Specification: Nucleation:data
Design: DiscreteNucleationData
Issue(s): #12114
- F8.8.11The nucleation auxkernel evaluates the nucleation map onto an elemental aux variable
Specification: Nucleation:auxkernel
Design: DiscreteNucleationAux
Issue(s): #12114
- F8.8.12The nucleation force kernel returns a forcing function based on the nucleation map
Specification: Nucleation:force
Design: DiscreteNucleationAux
Issue(s): #12114
- F8.8.13The discrete nucleation system shall provide a deterministic nucleus inserter that uses tabulated time and location data from a file
Specification: Nucleation:file
Design: DiscreteNucleationFromFile
Issue(s): #12262
- phase_field: Soretdiffusion
- F8.9.1A temperature gradient driving force for diffusion shall be added to the split form of the Cahn-Hilliard equation.
Specification: SoretDiffusion:split
Design: SoretDiffusion
Issue(s): #5324
- F8.9.2A temperature gradient driving force for diffusion shall be added to the split form of the Cahn-Hilliard equation, where temperature is a coupled non-linear variable
Specification: SoretDiffusion:split_temp
Design: SoretDiffusion
Issue(s): #5324
- F8.9.3A temperature gradient driving force for diffusion shall be added to the non-split form of the Cahn-Hilliard equation.
Specification: SoretDiffusion:direct
Design: SoretDiffusion
Issue(s): #5324
- F8.9.4A temperature gradient driving force for diffusion shall be added to the non-split form of the Cahn-Hilliard equation, where temperature is a coupled non-linear variable
Specification: SoretDiffusion:direct_temp
Design: SoretDiffusion
Issue(s): #5324
- phase_field: Totalfreeenergy
- F8.10.1We shall be able to calculate the free energy (with one variable) using an AuxKernel
Specification: TotalFreeEnergy:TotalFreeEnergy
Design: TotalFreeEnergy
Issue(s): #4413
- F8.10.2We shall be able to calculate the free energy (with two variables) using an AuxKernel
Specification: TotalFreeEnergy:2var
Design: TotalFreeEnergy
Issue(s): #4413
- phase_field: Actions
- F8.11.1The phase field module shall provide an action to set up an Allen-Cahn problem
Specification: actions:Nonconserved_1var
Design: NonconservedAction
Issue(s): #9336
- F8.11.2The NonconservedAction shall correctly set up Allen-Cahn problems with higher order elements
Specification: actions:Nonconserved_highorder
Design: NonconservedAction
Issue(s): #9336
- F8.11.3The NonconservedAction shall correctly set up Allen-Cahn problems with variable dependent mobilities
Specification: actions:Nonconserved_variableL
Design: NonconservedAction
Issue(s): #9336
- F8.11.4The NonconservedAction shall correctly set up Allen-Cahn problems with multiple order parameters
Specification: actions:Nonconserved_2vars
Design: NonconservedAction
Issue(s): #9336
- F8.11.5The phase field module shall provide an action to set up a non-split Cahn-Hilliard problem
Specification: actions:conserved_direct_1var
Design: ConservedAction
Issue(s): #9336
- F8.11.6The phase field module shall provide an action to set up a reverse split Cahn-Hilliard problem
Specification: actions:conserved_split_1var
Design: ConservedAction
Issue(s): #9336
- F8.11.7The phase field module shall provide an action to set up a reverse split Cahn-Hilliard problem with higher order elements
Specification: actions:conserved_split_1var_high_order
Design: ConservedAction
Issue(s): #9336
- F8.11.8The phase field module shall provide an action to set up a non-split Cahn-Hilliard problem with variable dependent mobilities
Specification: actions:conserved_direct_1var_variable_mob
Design: ConservedAction
Issue(s): #9336
- F8.11.9The phase field module shall provide an action to set up a reverse split Cahn-Hilliard problem with variable dependent mobilities
Specification: actions:conserved_split_1var_variable_mob
Design: ConservedAction
Issue(s): #9336
- F8.11.10The phase field module NonconservedAction and ConservedAction can be combined to construct a coupled Allen-Chan and split Cahn-Hilliard problem
Specification: actions:both_split_2vars
Design: ConservedActionNonconservedAction
Issue(s): #9336
- F8.11.11The phase field module NonconservedAction and ConservedAction can be combined to construct a coupled Allen-Chan and non-split Cahn-Hilliard problem
Specification: actions:both_direct_2vars
Design: ConservedActionNonconservedAction
Issue(s): #9336
- F8.11.12The phase field module shall provide an action to set up a forward split Cahn-Hilliard problem
Specification: actions:conserved_forward_split_1var
Design: ConservedAction
Issue(s): #9378
- F8.11.13The phase field module shall provide an action to set up grain growth problems
Specification: actions:grain_growth
Design: GrainGrowthAction
Issue(s): #9485
- F8.11.14The action to set up grain growth problems shall be able to set up an AD version of the problem which yields the same results as the non-AD version
Specification: actions:ad_grain_growth
Design: GrainGrowthAction
Issue(s): #13539
Prerequisite(s): F8.11.13
- F8.11.15The action to set up grain growth problems shall be able to set up an AD version of the problem which yields the same results as the non-AD version
Specification: actions:ad_grain_growth-jac
Design: GrainGrowthAction
Issue(s): #13539
Prerequisite(s): F8.11.14
- F8.11.16The grain growth action shall have the ability to set up problems with a pinning particle
Specification: actions:grain_growth_with_c
Design: GrainGrowthAction
Issue(s): #9485
- F8.11.17The grain growth action shall have the ability to set up problems with a temperature gradient
Specification: actions:grain_growth_with_T_grad
Design: GrainGrowthAction
Issue(s): #9485
- F8.11.18The GrandPotentialAction shall have the ability to generate kernels
Specification: actions:grand_potential_kernels
Design: GrandPotentialKernelAction
Issue(s): #11386
- phase_field: Anisotropic Mobility
- F8.12.1A split Cahn-Hilliard kernel with an anisotropic mobility shall be provided
Specification: anisotropic_mobility:split
Design: CahnHilliardAniso
Issue(s): #5596
- F8.12.2A non-split Cahn-Hilliard kernel with an anisotropic mobility shall be provided
Specification: anisotropic_mobility:nonsplit
Design: SplitCHWResAniso
Issue(s): #5596
- F8.12.3A Diffusion kernel with an anisotropic material property diffusivity shall be provided
Specification: anisotropic_mobility:diffusion
Design: MatAnisoDiffusion
Issue(s): #5841
- F8.12.4AD Diffusion with an anisotropic material property diffusivity shall agree with the non-AD version
Specification: anisotropic_mobility:ad_diffusion
Design: ADMatAnisoDiffusion
Issue(s): #13632
- F8.12.5AD Diffusion with an anisotropic material property diffusivity shall have a perfect Jacobian
Specification: anisotropic_mobility:ad_diffusion_jac
Design: ADMatAnisoDiffusion
Issue(s): #13632
- phase_field: Automatic Differentiation
- F8.13.1MOOSE shall provide an automatic differentiation mat reaction kernel
Specification: automatic_differentiation:admatreaction
Design: ADMatReaction
Issue(s): #13484
- F8.13.2The Jacobian for the automatic differentiation mat reaction kernel shall be perfect
Specification: automatic_differentiation:admatreaction-jac
Design: ADMatReaction
Issue(s): #13484
- phase_field: Boundary Intersecting Features
- F8.14.1The FeatureVolumeVectorPostprocessor shall capture volume information of individual features.
Specification: boundary_intersecting_features:boundary_intersecting_features
Design: FeatureVolumeVectorPostprocessor
Issue(s): #7755
- F8.14.2The FeatureVolumeVectorPostprocessor shall capture whether any feature intersects the boundary, even when the non-root rank doesn't own a part of the feature that intersects the boundary.
Specification: boundary_intersecting_features:boundary_intersecting_features_flipped
Design: FeatureVolumeVectorPostprocessor
Issue(s): #7755
- phase_field: Conserved Noise
- F8.15.1A system to supply a noise field with a domain integral of zero shall be provided
Specification: conserved_noise:integral
Design: ../Nucleation/conservednoise_include.html
Issue(s): #4763
- F8.15.2A system to supply a normal distributed noise field with a domain integral of zero shall be provided
Specification: conserved_noise:normal
Design: ../Nucleation/conservednoise_include.html
Issue(s): #4763
- F8.15.3A system to supply a uniformly distributed noise field with a domain integral of zero shall be provided
Specification: conserved_noise:uniform
Design: ../Nucleation/conservednoise_include.html
Issue(s): #4763
- F8.15.4A system to supply a normal distributed noise field with an amplitude mask and a domain integral of zero shall be provided
Specification: conserved_noise:integral_normal_masked
Design: ../Nucleation/conservednoise_include.html
Issue(s): #4763
- F8.15.5The conserved noise kernel shall error out with a helpful message if a 'seed' parameter is supplied
Specification: conserved_noise:seed_error
Design: ../Nucleation/conservednoise_include.html
Issue(s): #14368
- phase_field: Feature Volume Vpp Test
- F8.16.1The FeatureVolumeVectorPostprocessor shall output individual centroid locations when requested.
Specification: feature_volume_vpp_test:centroid_output_test
Design: FeatureVolumeVectorPostprocessor
Issue(s): #11395
- F8.16.2The FeatureVolumeVectorPostprocessor shall output individual centroid locations when requested.
Specification: feature_volume_vpp_test:centroid_output_test_parallel
Design: FeatureVolumeVectorPostprocessor
Issue(s): #11395
Prerequisite(s): F8.16.1
- F8.16.3The FeatureVolumeVectorPostprocessor shall output whether a percolated pathway exists between specified primary_percolation_boundaries and secondary_percolation_boundaries.
Specification: feature_volume_vpp_test:percolation_test
Design: FeatureVolumeVectorPostprocessor
Issue(s): #13169
- F8.16.4The FeatureVolumeVectorPostprocessor shall output whether a percolated pathway exists between specified primary_percolation_boundaries and secondary_percolation_boundaries.
Specification: feature_volume_vpp_test:percolation_test_parallel
Design: FeatureVolumeVectorPostprocessor
Issue(s): #13169
Prerequisite(s): F8.16.3
- F8.16.5The FeatureVolumeVectorPostprocessor shall calculate coverage of a supplied boundary by each feature by integrating the corresponding order parameter on the boundary.
Specification: feature_volume_vpp_test:boundary_area_2D_test
Design: FeatureVolumeVectorPostprocessor
Issue(s): #13202
- F8.16.6The FeatureVolumeVectorPostprocessor shall calculate coverage of a supplied boundary by each feature by calulating the area/length of boundary elements.
Specification: feature_volume_vpp_test:boundary_area_2D_single_test
Design: FeatureVolumeVectorPostprocessor
Issue(s): #13202
- F8.16.7The FeatureVolumeVectorPostprocessor shall calculate coverage of a supplied boundary by each feature by integrating the corresponding order parameter on the boundary.
Specification: feature_volume_vpp_test:boundary_area_3D_test
Design: FeatureVolumeVectorPostprocessor
Issue(s): #13202
- F8.16.8The FeatureVolumeVectorPostprocessor shall calculate coverage of a supplied boundary by each feature by calulating the area/length of boundary elements.
Specification: feature_volume_vpp_test:boundary_area_3D_single_test
Design: FeatureVolumeVectorPostprocessor
Issue(s): #13202
- phase_field: Functions
- F8.17.1A function that returns a new periodic random field with a lower wavelength cut-off shall be provided.
Specification: functions:fourier_noise
Design: FourierNoise
Issue(s): #13316
- phase_field: Grain Growth
- F8.18.1MOOSE shall provide a polycrystalline material model with grain growth
Specification: grain_growth:test
Design: PolycrystalKernelAction
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.2A flat grain boundary shall not move along a temperature gradient
Specification: grain_growth:temperature_gradient
Design: PolycrystalKernelAction
Issue(s): #9507
- F8.18.3A thumb shaped grain IC shall be provided for direct comparison to grain boundary mobility experiments
Specification: grain_growth:thumb
Design: ThumbIC
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.4A hexagonal grain structure IC shall be provided
Specification: grain_growth:hex
Design: PolycrystalHex
Issue(s): #8810
- F8.18.5A bicrystal grain IC shall be provided to set up a rectangular grain in a matrix
Specification: grain_growth:boundingbox
Design: BicrystalBoundingBoxICAction
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.6The grain boundary evolution model shall be able to compute the grain boundary mobility based on an activation energy
Specification: grain_growth:evolution
Design: GBEvolution
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.7The grain boundary evolution model shall permit specifying a constant mobility
Specification: grain_growth:constant_mobility
Design: GBEvolution
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.8The grain boundary evolution model shall provide off-diagonal Jacobians
Specification: grain_growth:off-diagonal
Design: PolycrystalKernelAction
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.9The grain growth model shall work with explicit time integration
Specification: grain_growth:explicit
Design: PolycrystalKernelAction
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- F8.18.10A voronoi tesselation grain structure IC shall be provided
Specification: grain_growth:voronoi
Design: PolycrystalVoronoi
Issue(s): #8810
- F8.18.11A columnar grain IC shall be provided based on a 2D voronoi tesselation
Specification: grain_growth:voronoi_columnar_3D
Design: PolycrystalVoronoi
Issue(s): #8810
- F8.18.12The grain boundary evolution model shall provide coupling to conserved order parameters
Specification: grain_growth:particle
Design: ACGBPoly
Issue(s): 98e22eda8bfaa1f6ded00c127145d832542aff70
- phase_field: Grain Tracker Test
- F8.19.1The system shall properly create and track grains when using the Nodal mode of the GrainTracker algorithm.
Specification: grain_tracker_test:test_nodal
Design: GrainTracker
Issue(s): #4765
- F8.19.2The system shall properly create and track grains when using the Elemental mode of the GrainTracker algorithm.
Specification: grain_tracker_test:test_elemental
Design: GrainTracker
Issue(s): #4881
- F8.19.3The PolycrystalVoronoi object shall create a valid coloring for a given number of grains and order parameters.
Specification: grain_tracker_test:test_advanced_op_assignment
Design: GrainTracker
- F8.19.4The PolycrystalUserObject base class shall error when a valid coloring cannot be found when using the simple back-tracking algorithm.
Specification: grain_tracker_test:test_advanced_op_assignment_bt_error
Design: Polycrystal Initial Conditions
- F8.19.5The PolycrystalUserObject base class shall error when a valid coloring cannot be found when using the built-in PETSc based stochastic algorithms.
Specification: grain_tracker_test:test_advanced_op_assignment_petsc_error
Design: Polycrystal Initial Conditions
- F8.19.6The GrainTracker/PolycrystalUserObject base class shall support having only a grain halo bleeding over a periodic edge.
Specification: grain_tracker_test:test_halo_periodic_bc
Design: GrainTracker
- F8.19.7The GrainTracker object shall support remapping order parameter values.
Specification: grain_tracker_test:test_remapping_serial
Design: GrainTracker
Issue(s): #1298
- F8.19.8The FeatureFloodCount object shall distribute the merging of features when the processor count exceeds number of order parameters for efficiency.
Specification: grain_tracker_test:test_remapping_parallel
Design: GrainTracker
Issue(s): #11805
Prerequisite(s): F8.19.7
- F8.19.9The GrainTracker object shall properly checkpoint unique grain information in serial.
Specification: grain_tracker_test:test_recovery_serial_part1
Design: GrainTracker
- F8.19.10The GrainTracker object shall properly recover unique grain information in serial.
Specification: grain_tracker_test:test_recovery_serial_part2
Design: GrainTracker
Prerequisite(s): F8.19.9
- F8.19.11The GrainTracker object shall properly checkpoint unique grain information in parallel.
Specification: grain_tracker_test:test_recovery_parallel_part1
Design: GrainTracker
- F8.19.12The GrainTracker object shall properly recover unique grain information in parallel.
Specification: grain_tracker_test:test_recovery_parallel_part2
Design: GrainTracker
Prerequisite(s): F8.19.11
- F8.19.13The GrainTracker shall support reusing the data structures from the PolycrystalUserObjectBase after the initial condition for efficiency.
Specification: grain_tracker_test:test_poly_ic_handoff
Design: Polycrystal Initial Conditions
Issue(s): #8810
- F8.19.14The GrainTracker shall support maintaining reserve order parameters for simulations where new grains can form.
Specification: grain_tracker_test:remapping_with_reserve
Design: GrainTracker
Issue(s): #7605
- F8.19.15The GrainTracker shall support beginning a simulation with no active grain structure.
Specification: grain_tracker_test:start_with_zero_grains
Design: GrainTracker
Issue(s): #12200
- F8.19.16The GrainTracker shall support reading EBSD data to create initial conditions.
Specification: grain_tracker_test:test_ebsd
Design: Polycrystal Initial Conditions
- F8.19.17The GrainTracker shall support reading EBSD data to create initial conditions while supporting initial condition refinement.
Specification: grain_tracker_test:test_ebsd_adapt
Design: Polycrystal Initial Conditions
- F8.19.18The GrainTracker shall support handling the splitting of a grain during a simulation.
Specification: grain_tracker_test:split_grain
Design: GrainTracker
Issue(s): #7875
- F8.19.19The AverageFeatureVolume Postprocessor shall calculate the average volume of each active grain in a simulation.
Specification: grain_tracker_test:changing_avg_volume
Design: GrainTracker
Issue(s): #11822
- F8.19.20The GrainTracker shall support a mode where it can continue even when it fails to remap for post-modern analysis and debugging.
Specification: grain_tracker_test:tolerate_remap_failure
Design: GrainTracker
Issue(s): #11843
- F8.19.21The system shall properly create PolycrystalICs with halo extensions (elements) when using DistributedMesh.
Specification: grain_tracker_test:distributed_poly_ic
Design: Polycrystal Initial Conditions
Issue(s): #12216
- F8.19.22The system shall properly handle a single feature or grain taking up the entire domain.
Specification: grain_tracker_test:one_grain
Design: GrainTracker
Issue(s): #12216
- F8.19.23The system shall grain tracking behavior even when the number of grains equals the number of order parameters when using mode Nodal.
Specification: grain_tracker_test:test_faux_nodal
Design: GrainTracker
Issue(s): #5453
- F8.19.24The system shall grain tracking behavior even when the number of grains equals the number of order parameters when using mode Elemental.
Specification: grain_tracker_test:test_faux_element
Design: GrainTracker
Issue(s): #5453
- F8.19.25The system shall output individual grain tracker volumes.
Specification: grain_tracker_test:grain_tracker_volume
Design: GrainTracker
Issue(s): #7769
- F8.19.26The system shall output individual grain tracker volumes assigning each element to only one grain (conservative).
Specification: grain_tracker_test:grain_tracker_volume_single
Design: GrainTracker
Issue(s): #7769
- F8.19.27The system shall output individual grain tracker volumes when the number of order parameters equals the number of grains.
Specification: grain_tracker_test:feature_flood_volume
Design: GrainTracker
Issue(s): #5453
Prerequisite(s): F8.19.25
- phase_field: Initial Conditions
- F8.20.1The system shall support a ramp or linear initial condition in one dimension.
Specification: initial_conditions:RampIC
Design: Polycrystal Initial Conditions
- F8.20.2The system shall support the creation of a smooth cross initial condition.
Specification: initial_conditions:CrossIC
Design: Polycrystal Initial Conditions
- F8.20.3The system shall support ellipsoidal phase-field initial conditions:
- bimodal inverse superellipsoidal structures,
- bimodal superellipsoidal structures,
- smooth superellipsoidal structures,
- smooth superellipsoidal structures specified from a file,
- smooth superellipsoidal structures in 3D,
- multiple smooth superellipsoidal structures in 2D, and
- multiple smooth superellipsoidal structures in 3D.
Specification: initial_conditions:ellipsoids
Design: Polycrystal Initial Conditions
- F8.20.4The system shall support polycrystal phase-field initial conditions:
- large polycrystal structure with voids,
- polycrystal structure with voids,
- polycrystal structure with voids on a periodic domain,
- polycrystal structure with voids with centroids specified from a file,
- polycrystal structure with centroids specified from a file,
- polycrystal circles specified from a file,
- and polycrystal circles specified from an input vector,
- hexagonal structure, and
- smooth interface in a triple junction.
Specification: initial_conditions:polycrystal
Design: Polycrystal Initial Conditions
- F8.20.5The system shall support initial adaptivity based on GB locations:
- polycrystal structure with IC specifying the GB locations
Specification: initial_conditions:GB_adaptivity
Design: Polycrystal Initial Conditions
Issue(s): #9668
- F8.20.6The system shall support phase-field initial conditions consisting of circle patterns:
- smooth interface circles,
- smooth interface spheres,
- smooth interface circles specified from a file, and
- smooth interface circles with random noise.
Specification: initial_conditions:circles
Design: Polycrystal Initial Conditions
- F8.20.7The system shall support phase-field initial conditions consisting of close pack particle patterns:
- in 2D, and
- in 3D.
Specification: initial_conditions:close_pack
Design: Polycrystal Initial Conditions
- F8.20.8The system shall support phase-field initial conditions consiting of box patterns:
- bounding boxes,
- bounding boxes with random noise,
- multiple bounding boxes in 1D,
- multiple bounding boxes in 2D, and
- multiple bounding boxes in 3D.
- Diffused interface can be assigned for isolated bounding boxes in 2D,
- 3D,
- nested bounding boxes in 2D, and
- 3D.
- Using IsolatedBoundingBoxIC to create overlapping boxes will throw an error.
Specification: initial_conditions:boxes
Design: Polycrystal Initial Conditions
- phase_field: Misc
- F8.21.1A material shall be implemented that provides dt, time, and time step number as material properties
Specification: misc:timestepmaterial
Design: TimeStepMaterial
Issue(s): #7621
- F8.21.2A material shall be implemented that computes the magnitude of the gradient of a given variable
Specification: misc:variablegradientmaterial
Design: VariableGradientMaterial
Issue(s): #7621
- F8.21.3An interface kernel shall be implemented to match gradients between two subdomains
Specification: misc:interface_grad
Design: InterfaceDiffusionFluxMatch
Issue(s): #8211
- F8.21.4Demonstrate an InterfaceKernel (InterfaceDiffusionFlux) that can replace a pair of integrated DiffusionFluxBC boundary conditions.
Specification: misc:interface_flux
Design: InterfaceDiffusionBoundaryTerm
Issue(s): #8211
- F8.21.5An InterfaceKernel set shall be implemnted that can enforce the componentwise continuity of the gradient of a variable using the Lagrange multiplier method
Specification: misc:equal_gradient_lagrange
Design: EqualGradientLagrangeInterface
Issue(s): #8211
- phase_field: New Initial Conditions
- F8.22.1A smooth circle initial condition with a hyperbolic tangent profile shall be provided
Specification: new_initial_conditions:SmoothCircleIC_tanh
Design: SmoothCircleIC
Issue(s): #12143
- F8.22.2A capability to initialize polycrystal phase field variables from a file mesh shall be provided
Specification: new_initial_conditions:prepare_mesh
Design: PolycrystalVariablesAction
Issue(s): #12294
- F8.22.3A capability to initialize polycrystal phase field variables from a file mesh shall be provided through the PolycrystalVariables action
Specification: new_initial_conditions:PolycrystalVariables_initial_from_file
Design: PolycrystalVariablesAction
Issue(s): #12294
Prerequisite(s): F8.22.2
- F8.22.4A capability to initialize polycrystal phase field variables from a file mesh shall be provided through the GrainGrowth action
Specification: new_initial_conditions:GrainGrowth_initial_from_file
Design: GrainGrowthAction
Issue(s): #13624
Prerequisite(s): F8.22.2
- phase_field: Phase Field Crystal
- F8.23.1The system shall support a tolerance approach to handing the natural log when using the Cahn-Hilliard RFF kernel
Specification: phase_field_crystal/PFCRFF:tolerance_test
Design: CHPFCRFF
Issue(s): #5338
- F8.23.2The system shall support a cancelation approach to handing the natural log when using the Cahn-Hilliard RFF kernel
Specification: phase_field_crystal/PFCRFF:cancelation_test
Design: CHPFCRFF
Issue(s): #5338
- F8.23.3The system shall support an expansion approach to handing the natural log when using the Cahn-Hilliard RFF kernel
Specification: phase_field_crystal/PFCRFF:expansion_test
Design: CHPFCRFF
Issue(s): #5338
- phase_field: Phase Field Kernels
- F8.24.1MOOSE shall provide a non-split Cahn-Hilliard formalism
Specification: phase_field_kernels:CahnHilliard
Design: CahnHilliard
Issue(s): #3356
- F8.24.2MOOSE shall provide a split Cahn-Hilliard formalism
Specification: phase_field_kernels:SplitCahnHilliard
Design: SplitCHParsed
Issue(s): #3356
- F8.24.3MOOSE shall provide an AD version of the split Cahn-Hilliard formalism
Specification: phase_field_kernels:ADSplitCahnHilliard
Design: ADSplitCHParsed
Issue(s): #13138
Prerequisite(s): F8.24.2
- F8.24.4The Jacobian for the AD split Cahn-Hilliard problem shall be perfect
Specification: phase_field_kernels:ADSplitCahnHilliard-jac
Design: ADSplitCHParsed
Issue(s): #13138
- F8.24.5MOOSE shall provide a kernel option to implement transport terms for the off-diagonal Onsager matrix components
Specification: phase_field_kernels:SplitCHWRes
Design: SplitCHWRes
Issue(s): #14140
- F8.24.6A Allen-Cahn phase field formulation shall be provided
Specification: phase_field_kernels:AllenCahn
Design: AllenCahn
Issue(s): #3816
- F8.24.7The Allen-Cahn model shall have perfect Jacobians
Specification: phase_field_kernels:analyzejacobian_AllenCahn
Design: AllenCahn
Issue(s): #3816
Prerequisite(s): F8.24.13
- F8.24.8A Allen-Cahn phase field formulation with a variable dependent mobility shall be provided
Specification: phase_field_kernels:AllenCahnVariableL
Design: AllenCahn
Issue(s): #3816
- F8.24.9An AD version of the Allen-Cahn phase field formulation shall be provided
Specification: phase_field_kernels:ADAllenCahn
Design: ADAllenCahn
Issue(s): #13197
- F8.24.10The Jacobian for the AD Allen-Cahn problem shall be perfect
Specification: phase_field_kernels:ADAllenCahn-jac
Design: ADAllenCahn
Issue(s): #13197
- F8.24.11An AD version of the Allen-Cahn phase field formulation with a variable dependent mobility shall be provided
Specification: phase_field_kernels:ADAllenCahnVariableL
Design: ADAllenCahn
Issue(s): #13197
- F8.24.12The Jacobian for the AD Allen-Cahn problem with a variable dependent mobility shall be perfect
Specification: phase_field_kernels:ADAllenCahnVariableL-jac
Design: ADAllenCahn
Issue(s): #13197
- F8.24.13A coupled Allen-Cahn formulation shall be provided
Specification: phase_field_kernels:CoupledAllenCahn
Design: CoupledAllenCahn
Issue(s): #6194
Prerequisite(s): F8.24.6
- F8.24.14A coupled Allen-Cahn formulation with a user defined prefactor shall be provided
Specification: phase_field_kernels:CoupledCoefAllenCahn
Design: CoupledAllenCahn
Issue(s): #6265
- F8.24.15A coupled gradient square kernel shall be provided
Specification: phase_field_kernels:MatGradSquareCoupled
Design: MatGradSquareCoupled
Issue(s): #10721
- F8.24.16A suite of simple to understand phase field kernels shall be provided for novice users
Specification: phase_field_kernels:SimpleSplitCHWRes
Design: SimpleSplitCHWRes
Issue(s): #6910
- F8.24.17A suite of simple to understand phase field kernels shall be provided for novice users
Specification: phase_field_kernels:SimpleCHInterface
Design: SimpleCHInterface
Issue(s): #6910
- F8.24.18A free energy contribution from elastic stresses in interfaces shall be provided
Specification: phase_field_kernels:ACInterfaceStress
Design: ACInterfaceStress
Issue(s): #9658
- F8.24.19The free energy contribution from elastic stresses in interfaces shall shall have a perfect Jacobian
Specification: phase_field_kernels:analyzejacobian_ACInterfaceStress
Design: ACInterfaceStress
Issue(s): #9658
- F8.24.20The barrier height and gradient energy parameter must be permitted to depend on non-linear variables
Specification: phase_field_kernels:nonuniform_barrier_coefficient
Design: ACBarrierFunction
Issue(s): #11829
- phase_field: Reconstruction
- F8.25.1The system shall output an RGB field that can be interpreted as either a component or a combined Euler angle given a grain structure.
Specification: reconstruction:EulerAngleVariables2RGBAux
Design: EulerAngleVariables2RGBAux
Issue(s): #7332
- F8.25.2The system shall support reading EBSD data and initializing a Polycrystal grain structure with that data.
Specification: reconstruction:1phase_reconstruction
Design: Reading EBSD Data
Issue(s): #9110
- F8.25.3The system shall support reading EBSD data to initalized Polycrystal grain structures while supporting reduced order parameter IC assignment.
Specification: reconstruction:1phase_reconstruction_40x40
Design: Reading EBSD Data
Issue(s): #9110
- F8.25.4The system shall support grain evolution when beginning from EBSD ICs.
Specification: reconstruction:1phase_evolution
Design: Reading EBSD Data
Issue(s): #9110
- F8.25.5The system shall support reading a single phase of EBSD data at a time to initialize PolycrystalICs.
Specification: reconstruction:2phase_reconstruction
Design: Reading EBSD Data
- F8.25.6The system shall support reading a single phase of EBSD data at a time to initialize PolycrystalICs while supporting reduced order parameter IC assignment.
Specification: reconstruction:2phase_reconstruction2
Design: Reading EBSD Data
- F8.25.7The system shall support reading EBSD data to initialize PolycrystalICs with discontinuous numbering.
Specification: reconstruction:2phase_reconstruction3
Design: Reading EBSD Data
- F8.25.8The system shall support reading a single phase of EBSD data at a time to initialize PolycrystalICs while supporting reduced order parameter IC assignment and display the coloring.
Specification: reconstruction:2phase_reconstruction4
Design: Reading EBSD Data
- F8.25.9The system shall support reading a single phase of EBSD data at a time to initialize PolycrystalICs and support regions within the domain that contain no grains at all.
Specification: reconstruction:regions_without_grains
Design: Reading EBSD Data
- F8.25.10The system shall support grain evolution when beginning from EBSD ICs and compute average orientation of non-uniformly oriented grains.
Specification: reconstruction:average_orientation
Design: EBSDReader
Issue(s): #13869