Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Related Pages  

Minmod Class Reference

#include <Minmod.hpp>

Inheritance diagram for Minmod:

Inheritance graph
[legend]
Collaboration diagram for Minmod:

Collaboration graph
[legend]
List of all members.

Detailed Description

General purpose Limiter for differential operations.

Author:
Bernard De Cuyper
Version:
0.05
Date:
22/10/2003
 
Purpose:        The minmod is more diffusive and less accurate than other limiters, but it converge best.
                We can call it a general purpose limiter.  

                minmod(a,b)= (sign(a) + sign(b))/2 * min(|a|, |b|)
                minmod(a,b)= 0 if ab <= 0
               a if ab > 0 && |a| <= |b|
               b if ab > 0 && |a| > |b|

                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 minmod,... can replace it. 
                k[i+1/2,j]= minmod(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 ~Minmod ()
virtual double average (double a, double b)


The documentation for this class was generated from the following file:
SourceForge.net Logo
Restoreinpaint sourceforge project `C++/Java Image Processing, Restoration, Inpainting Project'.

Bernard De Cuyper: Open Project Leader: Concept, design and development.
Bernard De Cuyper & Eddy Fraiha 2002, 2003. Bernard De Cuyper 2004. Open and free, for friendly usage only.
Modifications on Belgium ground of this piece of artistic work, by governement institutions or companies, must be notified to Bernard De Cuyper.
bern_bdc@hotmail.com