Issue with visco-plastic material model in 2D box

I’m having an issue with the visco-plastic material model specifically when using the 2D box geometry model. I have the model set to use default values for the material model and setting the strain weakening mechanism to none, with the viscosity averaging scheme set to harmonic and the viscous flow law as composite. The model fails after the first time step showing this error.


However, the model works if the flow law is diffusion or dislocation. It also works if I use a 2D cylindrical geometry with the exact same visco plastic material model. I’m assuming the issue is from the difference in geometry but I’m not sure how to get it to work.
Thanks,
Erin H

Hi Erin,

Thanks for posting on the forum! I have not run into this particular issue before, but interestingly someone else reported a similar issue with the harmonic averaging and the visco-plastic material model when using elasticity.

My first thought is that this could be related to the volume fractions not being computed correctly, but it sounds like you have a relatively straightforward model and this is unlikely.

When using only diffusion or dislocation creep, do the values appear to be correct? One way to check this is to only do a single time step and set the maximum number of non-linear iterations to 1, which means the viscosity values computed will have only used the user-defined reference strain rate.

If nothing appears off in the diffusion or dislocation viscosity fields, the easiest thing to do will be to take a look at the parameter file.

Thanks again for posting on the forum!

Cheers,
John

Hi John,
I tried it with one timestep using just diffusion and set the non-linear iterations to one and I get a correct value for viscosity. So then the issue is most likely something in my parameter file?

Hi Erin,

Can you also try the above method (single non-linear iteration) for both dislocation-only and composite creep?

The material averaging in question is done between different compositional fields and one of the inputs is the volume fraction for each field. Something is likely wrong with either the volume fractions themselves or the viscosity values, and hopefully the two tests above will point toward the correct culprit :slight_smile:

Cheers,
John

I had just computed it for dislocation only and I get a correct viscosity value. When I tried with composite I got the same error as earlier.

Interesting. Can you send (shared drive, email, etc) the associated parameter file or a simpler parameter file that produces the same error?

John

Hi John and Erin,

I had exactly the same issue in a 2d box model with a visco-plastic rheology. I don’t quite recall how I worked around that (I think I may have just used geometric averaging instead).
What I think that means is that for some reason, the viscosity (or some other property related to the viscosity) becomes zero or negative for one of the compositional fields that are averaged (and we should look into how that’s possible). So I agree, it would be very useful to have an input file that reproduces this error, and then we can look for the problem.

If there are now at least three people with the same problem, this may be something we need to fix in the code.

Juliane

Hi Juliane, Hi Erin,

So I agree, it would be very useful to have an input file that reproduces this error, and then we can look for the problem.

Yes, it would be good to figure out exactly what is going wrong. Erin sent over the failing parameter file and I will try to back out where the error is.

Cheers,
John

Hi everyone,
I used to have the same problem and a better refinement solved it, until then I used a material avering.

subsection Material model
set Material averaging = harmonic average.
end

this made it work in my case. Maybe you can give a try.
Cheers,
Michael Pons

Hi Michael,

Do you by chance still have a parameter file that reproduces the error? I was not able to reproduce the error on my machine with Erin’s input file.

Cheers,
John

Hi Michael,
Thanks for this, using the Material averaging has solved the issues I was having!

Hi all,

Glad to hear that material averaging is helping, but it would still be good to figure out the underlying root cause of the issue.

Erin, I’ll try again with your parameter file to see if I can reproduce the issue on my machine.

Cheers,
John

Hi John,
I didn’t find back the file that makes the error. From what I remember, it can also be that the boundary temperature model is not well defined. For example a temperature that is not fixed where it should at the border so it get colder. So the material averaging allows to prevent some cold temperature locally.
Cheers,
Michael

Hi Michael,
I can imagine very sharp gradients in temperature might give rise viscosity ranges that lead to errors in the harmonic averaging. However, many people run models with orders of magnitude viscosity variation over short distances (plasticity), so I’m surprised this is not more common. I was not able to reproduce the error with Erin’s parameter file, so if anyone comes across this issue please let us know and send the model over!
Cheers,
John

Hi John,
We ran into this error recently as well, but I don’t think I have a setup without additional plugins. Did you use the same aspect commit as Erin?
Cheers,
Anne