SciDAVis
1.D4
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
scidavis
src
PolynomialFit.h
Go to the documentation of this file.
1
/***************************************************************************
2
File : PolynomialFit.h
3
Project : SciDAVis
4
--------------------------------------------------------------------
5
Copyright : (C) 2006 by Ion Vasilief, Tilman Benkert
6
Email (use @ for *) : ion_vasilief*yahoo.fr, thzs*gmx.net
7
Description : Polynomial Fit and Linear Fit classes
8
9
***************************************************************************/
10
11
/***************************************************************************
12
* *
13
* This program is free software; you can redistribute it and/or modify *
14
* it under the terms of the GNU General Public License as published by *
15
* the Free Software Foundation; either version 2 of the License, or *
16
* (at your option) any later version. *
17
* *
18
* This program is distributed in the hope that it will be useful, *
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
21
* GNU General Public License for more details. *
22
* *
23
* You should have received a copy of the GNU General Public License *
24
* along with this program; if not, write to the Free Software *
25
* Foundation, Inc., 51 Franklin Street, Fifth Floor, *
26
* Boston, MA 02110-1301 USA *
27
* *
28
***************************************************************************/
29
#ifndef POLYNOMIALFIT_H
30
#define POLYNOMIALFIT_H
31
32
#include "
Fit.h
"
33
34
class
PolynomialFit
:
public
Fit
35
{
36
Q_OBJECT
37
38
public
:
39
PolynomialFit
(
ApplicationWindow
*parent,
Graph
*g,
int
order = 2,
bool
legend =
false
);
40
PolynomialFit
(
ApplicationWindow
*parent,
Graph
*g, QString& curveTitle,
int
order = 2,
bool
legend =
false
);
41
PolynomialFit
(
ApplicationWindow
*parent,
Graph
*g, QString& curveTitle,
double
start,
double
end,
int
order = 2,
bool
legend =
false
);
42
43
virtual
QString
legendInfo
();
44
void
fit
();
45
46
static
QString
generateFormula
(
int
order);
47
static
QStringList
generateParameterList
(
int
order);
48
49
private
:
50
void
init
();
51
void
calculateFitCurveData
(
double
*par,
double
*X,
double
*Y);
52
53
int
d_order
;
54
bool
show_legend
;
55
};
56
57
class
LinearFit
:
public
Fit
58
{
59
Q_OBJECT
60
61
public
:
62
LinearFit
(
ApplicationWindow
*parent,
Graph
*g);
63
LinearFit
(
ApplicationWindow
*parent,
Graph
*g,
const
QString& curveTitle);
64
LinearFit
(
ApplicationWindow
*parent,
Graph
*g,
const
QString& curveTitle,
double
start,
double
end);
65
66
void
fit
();
67
68
private
:
69
void
init
();
70
void
calculateFitCurveData
(
double
*par,
double
*X,
double
*Y);
71
};
72
#endif
73
Generated by
1.8.1