ODE15s nondimensional Jacobian matrix can help convergence?

3 visualizaciones (últimos 30 días)
Hi
I'm trying to solve a transient multiphysics problem with MATLAB ode15s function.
The problem consists of three physical systems, so the range of there mass and residual matrix is very large and I'm using Jacobian matrix for speed up the ode function.
But the convergence speed is still too slow and ode function failes with the error "Unable to meet integration tolerances without reducing the step size"
So I checked the condition number of the mass and Jacobian matrix and these were in the range between 10^15~10^21.
In this situation, nondimensionalizing the equation colud help?

Respuesta aceptada

SOUMNATH PAUL
SOUMNATH PAUL el 30 de Nov. de 2023
Hi,
To my understanding, you are working on a transient Multiphysics problem in MATLAB that involves three different physical systems, and you're using the ode15s function to solve it because it's good for stiff problems. But you are running into issues because the function is taking too long to solve the problem, and sometimes it can't find a solution within the allowed error limits without reducing step size.
You have also observed that the matrices involved in your calculations have condition numbers that are extremely high (between 10^15 and 10^21), which is a sign that the problem is very sensitive to small changes in the numbers you're working with. This can make it hard for the ode15s function to work correctly.
Here is how non-dimentionalizing can help in this scenario:
  • Scaling: Nondimensionalizing involves scaling the equations so that they are without units, making the range of values more uniform.
  • Improved Stability: It can reduce numerical disparities, improving the stability of the solver.
  • Better Convergence: The solver might converge more quickly with reduced condition numbers.
  • Error Control: It helps the solver's error control work more effectively, as it assumes variables are of similar scale.
  • Potential Solution: Nondimensionalizing the equations could help mitigate the issues you're facing with ode15s by making the problem more numerically tractable.
One suggestion is to use “ode23tb. It might take more computational time per step but will be able to take much larger time steps and overall might be much more performant.
Hope it helps!
Regards,
Soumnath

Más respuestas (0)

Categorías

Más información sobre 상미분 방정식 en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!