ODE solver with WENO scheme (weighted essential non-oscillatory)

Hey everyone,
this is rather a very specific question:
I want to solve a bunch of DAE in Matlab using ode-solver (ode15s in my case for stiff problems).
The system depends in time t and location z.
For that, I had to transform the PDAE into an DAE by discretizing in z-direction.
First I used the upwind scheme for disretization, but had the problem of artifical oscillations. So I tried to implement the WENO scheme, which is described here: meatballbw.ps (nd.edu)
After implemeting the WENO scheme, I even faced more oscillation.
Is anyone familiar with the WENO scheme or has another approach, how to solve artifical oscillation with ODE solvers. I also tried to implement a non-constant Jacobi matrix but it failed: ODE15s with non-constant Jacobian - (mathworks.com) .
Thank you for your help.

4 Comments

What are the equation(s) you are trying to solve ?
What is your code ?
Upwind schemes don't produce artificial oscillations - maybe you mean artificial diffusion for 1st order upwind schemes.
Dear @Torsten, thank you for your help.
Actually I solved this oscillation problem with the jacobian implementation in our last discussion: https://de.mathworks.com/matlabcentral/answers/1772755-ode15s-with-non-constant-jacobian
Just one question to understand the problem better. In the following paper they say:
I proplaby missunderstood the red part. I thought, that using first order upwind with high discretization numbers is a high order scheme, which can cause artifical ocsillation...
I thought, that using first order upwind with high discretization numbers is a high order scheme, which can cause artifical ocsillation...
No. Also if you use many grid points (I think this is what you mean by "high discretization numbers"), a first-order scheme remains a first-order scheme. It will not cause artificial oscillations.
If you don't choose enough grid points, a first-order scheme tends to smear out sharp gradients. This is meant by the technical term that they "cause numerical dispersion".
Perfect. Thanks for the clarification.

Sign in to comment.

Answers (0)

Categories

Find more on Numerical Integration and Differential Equations in Help Center and File Exchange

Products

Release

R2022a

Asked:

on 2 Aug 2022

Commented:

on 3 Aug 2022

Community Treasure Hunt

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

Start Hunting!