Closed jdannberg closed 3 weeks ago
I have updated the grain size ridge test, which has exactly the same problem. Below are the results if I run that test for 10,000 years (rather than the 500 in the actual test). Top is this PR, bottom is the original. Note that since this is a test case, it is underresolved, and that causes the strange patches of low grain size at the base of the lithosphere that are visible in both images.
Could you reduce the test output size a bit? Otherwise this is ready.
I made the test case smaller.
The grain size material model now computes the stress that is used to calculate the grain size reduction rate with the viscosity that has been limited between its minimum and maximum given in the input file, rather than with the unlimited viscosity. This is more consistent, because the limited viscosity is the one we use to compute the strain rate (and stress is 2*viscosity_strain_rate). This updated implementation prevents artificial grain size reduction in regions with large viscosity.
To demonstrate, below is the output of the test case I added (in higher resolution). Top is the new version, bottom is current main. I used traction boundary conditions to make sure all grain size reduction comes from actual forces in the model (the issue gets worse when we prescribe the boundary velocity, because that means we might prescribe a strain rate even in regions with very high viscosity). The streak of low grain size within the lithosphere, where the strain rate is low and the viscosity is above the upper limit of 1e23 Pa s is gone in the new version.
For new features/models or changes of existing features: