~ubuntu-branches/ubuntu/vivid/luminance-hdr/vivid-proposed

« back to all changes in this revision

Viewing changes to src/TonemappingOperators/fattal02/pde.h

  • Committer: Package Import Robot
  • Author(s): Andreas Metzler
  • Date: 2012-11-03 09:09:25 UTC
  • mfrom: (3.1.1 experimental)
  • Revision ID: package-import@ubuntu.com-20121103090925-6b12x4a4cpqd3u4q
Tags: 2.3.0-2
Upload to unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
 * $Id: pde.h,v 1.2 2008/09/04 12:46:49 julians37 Exp $
30
30
 */
31
31
 
32
 
#ifndef _fmg_pde_h_
33
 
#define _fmg_pde_h_
34
 
 
35
 
#include "TonemappingOperators/pfstmo.h"
 
32
#ifndef FMG_PDE_H
 
33
#define FMG_PDE_H
 
34
 
 
35
class ProgressHelper;
 
36
 
 
37
namespace pfs {
 
38
    class Array2D;
 
39
}
36
40
 
37
41
/**
38
42
 * @brief solve pde using full multrigrid algorithm
40
44
 * @param F array with divergence
41
45
 * @param U [out] sollution
42
46
 */
43
 
void solve_pde_multigrid(pfs::Array2D *F, pfs::Array2D *U);
 
47
void solve_pde_multigrid(pfs::Array2D *F, pfs::Array2D *U, ProgressHelper *ph);
 
48
 
 
49
/**
 
50
 * @brief solve poisson pde (Laplace U = F) using discrete cosine transform
 
51
 *
 
52
 * @param F array of the right hand side (contains div G in this example)
 
53
 * @param U [out] solution
 
54
 * @param adjust_bound, adjust boundary values of F to make pde solvable 
 
55
 */
 
56
void solve_pde_fft(pfs::Array2D *F, pfs::Array2D *U, ProgressHelper *ph, bool adjust_bound=false);
 
57
 
 
58
/**
 
59
 * @brief returns the residual error of the solution U, ie norm(Laplace U - F) 
 
60
 *
 
61
 * @param F [in] right hand side
 
62
 * @param U [in] solution
 
63
 */
 
64
float residual_pde(pfs::Array2D *U, pfs::Array2D *F);
 
65
 
44
66
 
45
67
#endif
46
68