source: Sophya/trunk/Poubelle/archTOI.old/polfitclip.h@ 671

Last change on this file since 671 was 618, checked in by ansari, 26 years ago

polfit

File size: 1.9 KB
RevLine 
[618]1// polfitclip.h
2// Eric Aubourg CEA/DAPNIA/SPP novembre 1999
3
4#ifndef POLFITCLIP_H
5#define POLFITCLIP_H
6
7#include <stdlib.h>
8
9class PolFitClip {
10public:
11 PolFitClip(long ndatamax, long degpol);
12 ~PolFitClip();
13
14 void setData(double const* x, double const* y, long n);
15 void addData(double xx, double yy);
16 void clear();
17 void setClip(double frc, double nsig, int npass);
18
19 int doFit(double* coef=NULL);
20 int doFit1();
21
22 double value(double x);
23
24 long getNData();
25 double getXMin();
26 double getXMax();
27
28 double getChi2();
29 double getCov(int i, int j);
30 double getSigma();
31
32protected:
33 double* x;
34 double* ySort;
35 double* y;
36 double* sig;
37 double* a;
38 int* ia;
39 double** cov;
40 long ndata;
41 long ndatamax;
42 double chi2;
43
44 long nparm;
45
46 double frc;
47 double nsig;
48 int npass;
49
50 double sigma;
51};
52
53class PolFitClip2 {
54public:
55 PolFitClip2(long ndatamax, long degpol);
56 ~PolFitClip2();
57
58 void setData(double const* x, double const* y, double const* z, long n);
59 void addData(double xx, double yy, double zz);
60 void clear();
61 void setClip(double frcY, double frcZ, double nsig, int npass);
62
63 int doFit(double* coefY=NULL, double* coefZ=NULL);
64 int doFit1();
65
66 double valueY(double x);
67 double valueZ(double x);
68
69 long getNData();
70 long getNDataUsed();
71 double getXMin();
72 double getXMax();
73
74 double getChi2Y();
75 double getChi2Z();
76 double getCovY(int i, int j);
77 double getCovZ(int i, int j);
78 double getSigmaY();
79 double getSigmaZ();
80
81protected:
82 double* x;
83 double* ySort;
84 double* y;
85 double* zSort;
86 double* z;
87 double* sig;
88 double* aY;
89 double* aZ;
90 int* ia;
91 double** covY;
92 double** covZ;
93 long ndata;
94 long ndataused;
95 long ndatamax;
96 double chi2Y;
97 double chi2Z;
98
99 long nparm;
100
101 double frcY;
102 double frcZ;
103 double nsig;
104 int npass;
105
106 double sigmaY;
107 double sigmaZ;
108};
109
110
111#endif
Note: See TracBrowser for help on using the repository browser.