GRALE
Main Page
Related Pages
Classes
Files
File List
src
math
circularintegrator.h
Go to the documentation of this file.
1
/*
2
3
This file is a part of GRALE, a library to facilitate the simulation
4
and inversion of gravitational lenses.
5
6
Copyright (C) 2008-2012 Jori Liesenborgs
7
8
Contact: jori.liesenborgs@gmail.com
9
10
This program is free software; you can redistribute it and/or modify
11
it under the terms of the GNU General Public License as published by
12
the Free Software Foundation; either version 2 of the License, or
13
(at your option) any later version.
14
15
This program is distributed in the hope that it will be useful,
16
but WITHOUT ANY WARRANTY; without even the implied warranty of
17
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
GNU General Public License for more details.
19
20
You should have received a copy of the GNU General Public License
21
along with this program; if not, write to the Free Software
22
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
23
24
*/
25
30
#ifndef GRALE_CIRCULARINTEGRATOR_H
31
32
#define GRALE_CIRCULARINTEGRATOR_H
33
34
#include "graleconfig.h"
35
#include "
real2dfunctionintegrator.h
"
36
37
namespace
grale
38
{
39
41
class
GRALE_IMPORTEXPORT
CircularIntegrator
:
public
Real2DFunctionIntegrator
42
{
43
public
:
44
CircularIntegrator
(
Vector2D<double>
center,
double
startRadius,
double
stopRadius,
int
radiusSteps = 100,
45
int
angleSteps = 100);
46
~
CircularIntegrator
();
47
double
integrate(
Real2DFunction
&f,
bool
abs =
false
)
const
;
48
private
:
49
Vector2D<double>
m_center;
50
double
m_startRadius, m_stopRadius;
51
double
m_radialStepSize, m_angularStepSize;
52
int
m_rSteps, m_aSteps;
53
};
54
55
}
// end namespace
56
57
#endif // GRALE_CIRCULARINTEGRATOR_H
58
Generated on Wed Dec 19 2012 09:09:23 for GRALE by
1.8.1.1