Seeking Guidance on Implementing Coupled Density, Grain Growth, and Viscous Stress Kernels for Liquid Phase Sintering in MOOSE #31875
Unanswered
princevalliyil
asked this question in
Q&A Modules: Solid mechanics
Replies: 2 comments
-
|
This is a follow-up to my earlier message regarding the implementation of custom kernels and materials for liquid phase sintering in MOOSE. I would like to clarify that the objective of the current implementation is to develop a viscous constitutive model that captures the coupled evolution of density, grain growth during the liquid phase sintering process. The model is intended to study the deformation of the body after sintering |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Hello I took a quick look. A few things I saw that do not match existing MOOSE techniques:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Dear MOOSE Team,
I am developing a custom MOOSE-based model to simulate liquid phase sintering by coupling the evolution of density (ϕ), grain size (G), and viscous stress. The goal is to capture microstructural densification through strain-rate-driven porosity evolution and temperature-dependent grain growth.
The model involves the following components:
ComputeSinterViscousStress – computes the viscous stress and provides the volumetric strain rate (ε̇ₖₖ) as an internal property.
DensityEvolutionSource – evolves the density field using a backward Euler scheme:
ϕn+1−ϕn−Δt(−ϕn+1ε˙kk)=0
GrainGrowthSource – updates the grain size using an Arrhenius-type law:
Gn+1−Gn−Δtk0G−2exp(−QG/(RT))=0, where T is obtained from a user-defined temperature function.
ViscosityCoupled – defines temperature- and grain-size-dependent viscosity and bulk modulus as:
η=ηdexp(Qd/(RT))(G/G0), K=0.6η
I have implemented these as custom Kernel and Material classes (DensityEvolutionSource, GrainGrowthSource, ComputeSinterViscousStress, and ViscosityCoupled) in my application lps1App. The code compiles successfully, but the simulation either diverges or crashes at runtime.
Before proceeding with detailed debugging, I would appreciate confirmation on whether this approach and implementation pattern aligns with MOOSE conventions.
I have attached the source files for all four classes for reference. Any feedback or best-practice suggestions for this type of coupled sintering model would be greatly appreciated.
Thank you for your time and support.
Best regards,
Prince Joseph
Senior Research Fellow, HBNI
Indira Gandhi Centre for Atomic Research
GrainGrowthSource.cpp
DensityEvolutionSource.cpp
ComputeSinterViscousStress.cpp
ViscosityCoupled.cpp
inputfile.pdf
Beta Was this translation helpful? Give feedback.
All reactions