#include <DoubleMinmod.hpp>
Inheritance diagram for DoubleMinmod:
Purpose: The double minmod is less diffusive and better accurate than the minmod, it still converge . We can call it an improved limiter. doubleMinmod(a,b)= minmod((minmod(a,b)+maxmod(a, b))/2, minmod(2a,2b)) if ab > 0 0 if ab <= 0 Limiters are widely used in discrete differential computation to provide more accurate results than central differential. We know that central differential scheme oscillate around solutions. Limiters are tools helping to avoid this problem. Example of applications are ENO and WENO schemes, ... Another reason of Minmod usage in restoration, is the need of building fast intra-grid data, like have point differentials: k[i+1/2,j]= average(k[i+1,j]+k[i,j]) The central schemes are averaging neigbour grid values. k[i+1/2,j]= (k[i+1,j]+k[i,j])/2 Limiters like the DoubleMinmod,... can replace it. k[i+1/2,j]= DoubleMinmod(k[i+1,j]+k[i,j]) Paper: "Experiments in minimizing numerical diffusion across a material boundary.", Christian Aalburg, Thesis, Aerospace engineering, University of Michigan 1996. "Euler's Elastica and curvature based inpaintings.", T. Chan, S.Kang, Report UCLA 2000. "Regularized Shock Filters and Complex Diffusion.", Guy Gilboa, N. Sochen & Y Zeevi, Report Technion, Haifa, Israel 2003. New central schemes with Minmod: "New High-Resolution Semi-discrete Central Schemes for Hamilton-Jacobi Equations.", Alexander Kurganov & Eitan Tadmor, Journal of Computational Physics 160, p720-742, 2000. "Central Runge-Kutta Schemes for Conservation Laws.", L. Pareschi, G.Puppo, G.Russo, Università di Ferrara, Italy, 2002.
@ Copyrights: Bernard De Cuyper & Eddy Fraiha 2003, Eggs & Pictures. MIT/Open BSD copyright model.
Public Methods | |
virtual | ~DoubleMinmod () |
virtual double | average (double a, double b) |
Protected Methods | |
double | minmod (double a, double b) |
double | maxmod (double a, double b) |