40 min[0]=-5.0; max[0]=5.0;
41 min[1]=-5.0; max[1]=5.0;
42 min[2]=-5.0; max[2]=5.0;
47 p[0]=0.3;
p[1]=-2.0;
p[2]=3.1;
52 Matrix
H=euler2dcm(euler);
53 H(0,3)=
p[0];
H(1,3)=
p[1];
H(2,3)=
p[2];
57 scale[0]=0.9; scale[1]=0.8; scale[2]=1.1;
59 h_scale.push_back(1.0);
65 for (
int i=0; i<10; i++)
67 Vector p0=Rand::vector(min,max);
71 Vector eps=Rand::vector(Vector(3,-0.01),Vector(3,0.01));
73 Vector p1=h_scale*(
H*p0)+eps;
86 double t0=SystemClock::nowSystem();
88 double dt=SystemClock::nowSystem()-t0;
92 cout<<
"H"<<endl<<
H.toString(3,3)<<endl;
93 cout<<
"scale = "<<scale.toString(3,3)<<endl;
95 cout<<
"Hcap"<<endl<<Hcap.toString(3,3)<<endl;
96 cout<<
"scalecap = "<<scalecap.toString(3,3)<<endl;
98 cout<<
"residual error = "<<
error<<
" [m]"<<endl;
99 cout<<
"calibration performed in "<<dt<<
" [s]"<<endl;