10 Y = HepVector(
Npar, 0 );
11 X = HepVector(
Npar, 0 );
18 std::cout << setiosflags( ios::left ) << setw( 10 ) << icounter << setw( 8 ) <<
data->size()
19 << setw( 30 ) <<
name() << std::endl;
21 if (
data->size() <= 0 ) {
X = HepVector(
Npar, 1.0 ); }
24 std::vector<Record*>::iterator
iter =
data->begin();
28 for (
int i = 0; i <
F.num_col(); i++ )
30 for (
int j = 0; j <
F.num_col(); j++ ) {
F[i][j] +=
funcs[i] *
funcs[j]; }
34 for (
int k = 0; k <
Y.num_row(); k++ ) {
Y[k] +=
y *
funcs[k]; }
38 if (
abs(
F[0][0] ) > 0. ) {
X = ( qr_solve(
F,
Y ) ); }
41 X = HepVector(
Npar, 1.0 );
53 std::ofstream out(
file, ios::out );
56 std::vector<HepVector>::iterator it;
59 for (
int i = 0; i < ( *it ).num_row(); i++ ) { out << ( *it )[i] <<
" "; }
66 cerr <<
"error when open file " <<
file <<
" for write in " <<
name() <<
"::fillTxt()"
68 cout <<
"print all parameters to srceen: in total " <<
m_result.size() <<
" items"
70 std::vector<HepVector>::iterator it;
73 for (
int i = 0; i < ( *it ).num_row(); i++ ) { cout << ( *it )[i] <<
" "; }
std::vector< Record * > RecordSet
std::vector< HepVector > m_result
virtual void calculate_y(const Record *r)=0
virtual void calculate(RecordSet *&data, unsigned int icounter)
void fillTxt(const char *file)
virtual const string & name() const
virtual void updateData(RecordSet *&data)=0
virtual void calculate_funcs(const Record *r)=0