THilbertMatrixD scoping problem

Hi all,
I tried to make the

Matrix inversion examples

tutorial into a routine in the attached code. I get the following compile errors:

root [1] .x anal1.C

/home/kwd1/netflix/a1/Analyzer.C: In member function ‘void Analyzer::m1()’:
/home/kwd1/netflix/a1/Analyzer.C:235: error: ‘THilbertMatrixD’ was not declared in this scope
/home/kwd1/netflix/a1/Analyzer.C:321: error: ‘Power’ is not a member of ‘TMath’
/home/kwd1/netflix/a1/Analyzer.C:356: error: ‘Power’ is not a member of ‘TMath’
/home/kwd1/netflix/a1/Analyzer.C:376: error: ‘Power’ is not a member of ‘TMath’
g++: /home/kwd1/netflix/a1/filex0ZAod.o: No such file or directory
Error in : Compilation failed!

is this some kind of scoping problem?
I can delare a ThilbertMatrix from CINT via:
root [3] gSystem->Load(“libMatrix”);
root [4] TMatrixD H_square = THilbertMatrixD(6,6);
root [5]

Analyzer.C (11.1 KB)
Analyzer.h (1.11 KB)
anal1.C (313 Bytes)


just add the missing include files

#include "TMath.h" 
#include "TMatrixDLazy.h"

to your list of includes files.


Rats! First thing I thought of, and I put this one is:

#include “TMatrixTLazy.h”

I missed the ‘D’ instead of the ‘T’

many thanks!