solvepde doesn't terminate, even with coefficient c = 0 (diffusivity)

2 views (last 30 days)
Hello everyone,
I'm facing a problem when using the solvepde function, a problem related to a very low diffusivity coefficient somehow.
My equation reflects a simple diffusion process with a source term (coefficients c and f > 0, d = 1, a = m = 0) (from https://fr.mathworks.com/help/pde/ug/pde.pdemodel.specifycoefficients.html)
My purpose is to evaluate helium content whithin a mineral, so the diffusion domain is around the ~µm scale, and the studied time is around the Myr scale (1e6 year). The diffusion coefficient will vary drastically, for example between 5e-23 (150°C) to 2.5e-29 (50°C) (m²/s). There's a Dirichlet bc at the sphere boundary (He = 0).
solvepde gives a satisfying result for "high" diffusivity coefficient, but systematically fails for "low" diffusivity. By failing, I mean the function is running forever. I even set the c coefficient to 0, but the processing time seems to be the same (i.e. infinite...).
I tried to reduce the mesh nodal density, it reduces the computation time as expected but problem stays for "low" diffusivity.
Is there something I'm missing in the way to use solvepde? Thank you in advance if you can help me !
Julien

Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!