예제 #1
0
TDataSet *CreateTable() {
  if (!gROOT->GetClass("St_Survey")) return 0;
  Survey_st row = {0, 1,0,0, 0,1,0, 0,0,1, 0,0,0,.1,.1,.1,.1,.1,.1,"ideal position"};
  St_Survey *tableSet = new St_Survey("SsdOnGlobal",1);
  tableSet->AddAt(&row.Id, 0);
  return (TDataSet *)tableSet;
}
예제 #2
0
TDataSet *CreateTable() { 
  if (!gROOT->GetClass("St_Survey")) return 0;
  Survey_st row = {
    //           -gamma     beta    gamma            -alpha    -beta    alpha                 x0        y0        z0
    0, 1.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 1.00000,   0.0000,   0.0000,   0.0000,0,0,0,0,0,0,"Ideal Tpc"
  };
  Int_t n = 1;// east = 0, west = 1
  St_Survey *tableSet = new St_Survey("TpcPosition",n);
  tableSet->AddAt(&row.Id);
  return (TDataSet *)tableSet;
}
예제 #3
0
TDataSet *CreateTable() { 
// -----------------------------------------------------------------
// db/.const/StarDb/Geometry/ist/.istLadderOnIst/istLadderOnIstMisalign Allocated rows: 24  Used rows: 24  Row size: 180 bytes
//  Table: Survey_st[0]--> Survey_st[23]
// ====================================================================
// ------  Test whether this table share library was loaded ------
  if (!TClass::GetClass("St_Survey")) return 0;
Survey_st row;
St_Survey *tableSet = new St_Survey("istLadderOnIstMisalign",24);
//
 memset(&row,0,tableSet->GetRowSize());
 for ( int i=1; i<=24; i++ ) {
   row.Id	 =          1; // ;
   row.r00	 =  1.0000000; // ;
   row.r01	 =  0.0000000; // -gamma ;
   row.r02	 =  0.0000000; // beta  ;
   row.r10	 =  0.0000000; // gamma ;
   row.r11	 =  1.0000000; // ;
   row.r12	 =  0.0000000; // -alpha ;
   row.r20	 =  0.0000000; // -beta  ;
   row.r21	 =  0.0000000; // alpha ;
   row.r22	 =  1.0000000; // ;
   row.t0	 =  0.0000000; // ;
   row.t1	 =  0.0000000; // ;
   row.t2	 =  0.0000000; // ;
   row.sigmaRotX	 =      0.001; // ;
   row.sigmaRotY	 =      0.001; // ;
   row.sigmaRotZ	 =      0.001; // ;
   row.sigmaTrX	 =      0.001; // ;
   row.sigmaTrY	 =      0.001; // ;
   row.sigmaTrZ	 =      0.001; // ;
   memcpy(&row.comment,"\x00",1);// 
   tableSet->AddAt(&row);
 }
 // ----------------- end of code ---------------
 return (TDataSet *)tableSet;
}
예제 #4
0
//________________________________________________________________________________
//void Db(const Char_t *tabNam  = "Calibrations/tpc/noiseElim", 
// void DbS(const Char_t *tabNam  = 
// 	"Survey/svt/LadderOnSurvey",Int_t date = 20051101, Int_t time = 0 
void MakeSvtWaferOnGlobal(Int_t date = 20050101, Int_t time = 65 ){ 
  TGeoHMatrix GL, WL,LSU,LSH,SHG,WG;
  if (dbMk == 0) Load();
  dbMk->SetDebug(2);
  dbMk->SetDateTime(date,time); 
  //  dbMk->SetFlavor("ofl+laserDV","tpcDriftVelocity");
  //  dbMk->SetMaxEntryTime(20040520,0);
  // to browse 1 database, use this one
  TDataSet *set = dbMk->GetDataBase("Geometry/ssd");
  if (! set) return;                                                              // Positioning of the SSD: 
  St_Survey *SsdOnGlobal = (St_Survey *) set->Find("SsdOnGlobal");
  if (! SsdOnGlobal)  {cout << "SsdOnGlobal has not been found"  << endl; return;}
  Survey_st *OnGlobal         = SsdOnGlobal->GetTable();        // SSD and SVT as whole 
  GL.SetRotation(&OnGlobal->r00);
  GL.SetTranslation(&OnGlobal->t0); //cout << "WL\t"; WL.Print();
  set = dbMk->GetDataBase("Geometry/svt");
  St_Survey *WaferOnLadder = (St_Survey *) set->Find("WaferOnLadder");
  St_Survey *LadderOnSurvey = (St_Survey *) set->Find("LadderOnSurvey");
  St_Survey *LadderOnShell = (St_Survey *) set->Find("LadderOnShell");
  St_Survey *ShellOnGlobal = (St_Survey *) set->Find("ShellOnGlobal");
  Int_t NW = WaferOnLadder->GetNRows();
  Int_t NL = LadderOnSurvey->GetNRows();
  Survey_st *waferOnLadder = WaferOnLadder->GetTable();
  Survey_st *ladderOnSurvey = LadderOnSurvey->GetTable();
  Survey_st *ladderOnShell = LadderOnShell->GetTable();
  Survey_st *shellOnGlobal0 = ShellOnGlobal->GetTable(0);
  Survey_st *shellOnGlobal1 = ShellOnGlobal->GetTable(1);
  St_svtWafersPosition *svtwafer = new St_svtWafersPosition("svtWafersPosition",216);
  svtWafersPosition_st row;
  for (Int_t i = 0; i < NW; i++, waferOnLadder++)
    {
      Int_t Idw = waferOnLadder->Id;
      WL.SetRotation(&waferOnLadder->r00);
      WL.SetTranslation(&waferOnLadder->t0);
      //	    if (i==0) WL.Print();
      Int_t wshell  = 0;
      Int_t wbarrel  = Idw/1000;
      Int_t wwafer  = (Idw - 1000*wbarrel)/100;
      Int_t wladder = Idw%100;
      Int_t wlayer = 2*wbarrel + wladder%2 - 1;
      //	    cout << waferOnLadder->Id << "  "<< Idw<< " " <<  100*wwafer + wladder + 1000*wlayer <<endl;
      for ( Int_t j = 0; j < NL; j++, ladderOnSurvey++, ladderOnShell++)
	{
	  Int_t Idl =  ladderOnSurvey->Id;
	  Int_t lbarrel  = Idl/1000;
	  Int_t lladder = Idl%100;
	  if( wladder ==  lladder )
	    {
	      LSU.SetRotation(&ladderOnSurvey->r00);
	      LSU.SetTranslation(&ladderOnSurvey->t0);
	      LSH.SetRotation(&ladderOnShell->r00);
	      LSH.SetTranslation(&ladderOnShell->t0);
	      if( (wbarrel == 1 && wladder <= 4) || (wbarrel == 2 && wladder <= 6) ||  (wbarrel == 3 && wladder <= 8) )
		{
		  SHG.SetRotation(&shellOnGlobal0->r00);
		  SHG.SetTranslation(&shellOnGlobal0->t0);
		}else
		{
		  SHG.SetRotation(&shellOnGlobal1->r00);
		  SHG.SetTranslation(&shellOnGlobal1->t0);
		}		    
	      //   SsdOnGlobal * ShellOnGlobal * LadderOnShell * LadderOnSurvey * WaferOnLadder 
	      WG = GL * SHG * LSH * LSU * WL; //  WG.Print();
	      //			    TGeoHMatrix WGInv = WG.Inverse();
	      Double_t *r = WG.GetRotationMatrix();
	      Int_t fail = 0;
	      for (int l = 0; l < 9; l++) {
		if (TMath::Abs(r[l]) >=  1.000001) fail++;
	      }
	      if (fail) {
		cout << "===============" << waferOnLadder->Id << "  "<< Idw << " " <<  100*wwafer + wladder + 1000*wlayer <<endl;
		cout << "WG\t"; WG.Print();
		//			      cout << "SHG\t"; SHG.Print();
		//			      cout << "LSH\t"; LSH.Print();
		//			      cout << "LSU\t"; LSU.Print();
		//			      cout << "WL\t"; WL.Print();
	      }
	      row.driftDirection[0] = r[0]; row.normalDirection[0] = r[1]; row.transverseDirection[0] = r[2];
	      row.driftDirection[1] = r[3]; row.normalDirection[1] = r[4]; row.transverseDirection[1] = r[5];
	      row.driftDirection[2] = r[6]; row.normalDirection[2] = r[7]; row.transverseDirection[2] = r[8];
	      Double_t norm;
	      TVector3 d(row.driftDirection); norm = 1/d.Mag(); d *= norm;
	      TVector3 t(row.transverseDirection); norm = 1/t.Mag(); t *= norm;
	      TVector3 n(row.normalDirection);
	      TVector3 c = d.Cross(t);
	      if (c.Dot(n) < 0) c *= -1;
	      d.GetXYZ(row.driftDirection);
	      t.GetXYZ(row.transverseDirection);
	      c.GetXYZ(row.normalDirection);
	      
	      row.ID = 100*wwafer + wladder + 1000*wlayer;
	      Double_t *wgtr = WG.GetTranslation();
	      memcpy(row.centerPosition,wgtr, 3*sizeof(Double_t));
	      svtwafer->AddAt(&row);
	      break;
	      
	    }
	}
    }
  ofstream out;
  out.open(Form("svtWafersPosition.%8i.%06i.C",date,time));
  svtwafer->SavePrimitive(out,""); 
  out.close();
  
}
예제 #5
0
//________________________________________________________________________________
void MakeSvtOnGlobal(){
  gROOT->LoadMacro("bfc.C");
  bfc(0,"mysql,tpcDb,MagF,nodefault");
  StMaker *db = chain->Maker("db");
  if (! db) return;
  db->SetDebug(1);
  for (Int_t i = 0; i < N; i++) {
    if (! StarMagField::Instance()) new StarMagField;
    StarMagField::Instance()->SetFactor(Data[i].field);
    StEvtHddr *header = chain->GetEvtHddr();
    header->SetRunNumber(i+1);
    header->SetDateTime(20050101,i+1);
    chain->MakeEvent();
    db->SetDateTime(Data[i].date,Data[i].time); 
    St_Survey *SvtOnGlobal = (St_Survey *) chain->GetDataBase("Geometry/svt/SvtOnGlobal");
    if (! SvtOnGlobal)  {cout << "SvtOnGlobal has not been found"  << endl; return 0;}
    const TGeoHMatrix &Tpc2Global = gStTpcDb->Tpc2GlobalMatrix();  cout << "Tpc2Global\t"; Tpc2Global.Print();
    TGeoHMatrix GL;
    Survey_st *OnGlobal         = SvtOnGlobal->GetTable();        // SVT and SVT as whole 
    GL.SetRotation(&OnGlobal->r00);
    GL.SetTranslation(&OnGlobal->t0); cout << "GL\t"; GL.Print();
    TGeoHMatrix TPCGL = Tpc2Global * GL;  cout << "TPCGL\t"; TPCGL.Print();
    TGeoHMatrix TPC2Inv = Tpc2Global.Inverse();  cout << "TPC2Inv\t"; TPC2Inv.Print();
    TGeoHMatrix dR;
    dR.RotateX(180./TMath::Pi()*Data[i].alpha*1e-3);
    dR.RotateY(180./TMath::Pi()*Data[i].beta*1e-3); 
    dR.RotateZ(180./TMath::Pi()*Data[i].gamma*1e-3);
    Double_t xyz[3], dxyz[3], drot[3];
    xyz[0] = 1e-4*Data[i].dx;
    xyz[1] = 1e-4*Data[i].dy;
    xyz[2] = 1e-4*Data[i].dz;
    dxyz[0] = 1e-4*Data[i].ddx;
    dxyz[1] = 1e-4*Data[i].ddy;
    dxyz[2] = 1e-4*Data[i].ddz;
    drot[0] = Data[i].dalpha*1e-3;
    drot[1] = Data[i].dbeta*1e-3; 
    drot[2] = Data[i].dgamma*1e-3;
    dR.SetTranslation(xyz);
    cout << "Additional rotation for Svt\t"; dR.Print();
    TGeoHMatrix GLnew = TPC2Inv * dR * TPCGL;  cout << "GLnew\t"; GLnew.Print();
    Double_t *R = GLnew.GetRotationMatrix();
    Survey_st row;
    memcpy(&row.r00, R, 9*sizeof(Double_t));
    Double_t *tr = GLnew.GetTranslation();
    memcpy(&row.t0, tr, 3*sizeof(Double_t));
    memcpy(&row.sigmaRotX, drot, 3*sizeof(Double_t));
    memcpy(&row.sigmaTrX, dxyz, 3*sizeof(Double_t));
    TString fOut =  Form("SvtOnGlobal.%8i.%06i.C", Data[i].date, Data[i].time);
    ofstream out;
    cout << "Create " << fOut << endl;
    out.open(fOut.Data());
    out << "TDataSet *CreateTable() {" << endl;
    out << "  if (!gROOT->GetClass(\"St_Survey\")) return 0;" << endl;
    out << "  Survey_st row = " << endl; 
    out << "\t{0,"; out << endl; out << "\t"; 
    Double_t *r = &(row.r00);
    for (Int_t j = 0; j < 9; j++) out << Form("%f,",r[j]);
    out << endl;
    out << "\t";
    for (Int_t j = 9; j < 12; j++) out << Form("%f,",r[j]); 
    out << endl;
    out << "\t";
    for (Int_t j = 12; j < 18; j++) out << Form("%f,",r[j]);
    out << endl;
    out << "\t";
    out << "\"Run" << Data[i].run << " " << Data[i].comment << "\"};" << endl;
    out << "  St_Survey *tableSet = new St_Survey(\"SvtOnGlobal\",1);" << endl; 
    out << "  tableSet->AddAt(&row.Id, 0);" << endl;
    out << "  return (TDataSet *)tableSet;" << endl;
    out << "}" << endl;
    out.close(); 
  } 
}
예제 #6
0
TDataSet *CreateTable() { 
// -----------------------------------------------------------------
// db/.const/StarDb/Geometry/pxl/.pxlLadderOnSector/pxlLadderOnSectorMisalign Allocated rows: 40  Used rows: 40  Row size: 180 bytes
//  Table: Survey_st[0]--> Survey_st[39]
// ====================================================================
// ------  Test whether this table share library was loaded ------
  if (!TClass::GetClass("St_Survey")) return 0;
Survey_st row;
St_Survey *tableSet = new St_Survey("pxlLadderOnSectorMisalign",40);
//
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          1; // ;
    row.r00	 =  0.9994715; // ;
    row.r01	 = 0.0008704342; // -gamma ;
    row.r02	 = 0.0003113637; // beta  ;
    row.r10	 = -0.001040789; // gamma ;
    row.r11	 =  0.9991744; // ;
    row.r12	 = -0.0002015136; // -alpha ;
    row.r20	 = -0.0002434218; // -beta  ;
    row.r21	 = -0.0002077138; // alpha ;
    row.r22	 =  0.9994585; // ;
    row.t0	 = -0.005874201; // ;
    row.t1	 = -0.02995291; // ;
    row.t2	 = 0.03392109; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          2; // ;
    row.r00	 =  0.9994089; // ;
    row.r01	 = -0.01240364; // -gamma ;
    row.r02	 = -0.0002771866; // beta  ;
    row.r10	 = 0.01228829; // gamma ;
    row.r11	 =   0.999086; // ;
    row.r12	 = -0.0007085575; // -alpha ;
    row.r20	 = 0.0001844822; // -beta  ;
    row.r21	 = 0.001107287; // alpha ;
    row.r22	 =  0.9994579; // ;
    row.t0	 = -0.01843921; // ;
    row.t1	 = 0.04739192; // ;
    row.t2	 = 0.007138973; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          3; // ;
    row.r00	 =  0.9994479; // ;
    row.r01	 = -3.742032e-05; // -gamma ;
    row.r02	 = -0.001512795; // beta  ;
    row.r10	 = -0.00019697; // gamma ;
    row.r11	 =  0.9991986; // ;
    row.r12	 = -0.0006992775; // -alpha ;
    row.r20	 = 0.001492008; // -beta  ;
    row.r21	 = 0.001113827; // alpha ;
    row.r22	 =  0.9994563; // ;
    row.t0	 = -0.003672032; // ;
    row.t1	 = 0.04390356; // ;
    row.t2	 = 0.009344134; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          4; // ;
    row.r00	 =  0.9993766; // ;
    row.r01	 = 0.005330516; // -gamma ;
    row.r02	 = 3.649917e-05; // beta  ;
    row.r10	 = -0.005644842; // gamma ;
    row.r11	 =  0.9992404; // ;
    row.r12	 = -5.361717e-05; // -alpha ;
    row.r20	 = 2.671367e-05; // -beta  ;
    row.r21	 = 0.0004631218; // alpha ;
    row.r22	 =  0.9994585; // ;
    row.t0	 = -0.01640474; // ;
    row.t1	 = 0.04653654; // ;
    row.t2	 = 0.04619534; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          5; // ;
    row.r00	 =  0.9992876; // ;
    row.r01	 = 0.0002339351; // -gamma ;
    row.r02	 = -0.00199988; // beta  ;
    row.r10	 = -0.0005711978; // gamma ;
    row.r11	 =  0.9993585; // ;
    row.r12	 = -0.0008061549; // -alpha ;
    row.r20	 = 0.001814556; // -beta  ;
    row.r21	 = 0.0004365975; // alpha ;
    row.r22	 =  0.9994562; // ;
    row.t0	 = -0.0534223; // ;
    row.t1	 = -0.01594906; // ;
    row.t2	 = 0.02072373; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          6; // ;
    row.r00	 =  0.9992804; // ;
    row.r01	 = -0.008934781; // -gamma ;
    row.r02	 = 0.001625907; // beta  ;
    row.r10	 = 0.008591308; // gamma ;
    row.r11	 =  0.9992889; // ;
    row.r12	 = 0.0004978472; // -alpha ;
    row.r20	 = -0.001477722; // -beta  ;
    row.r21	 = -9.851552e-05; // alpha ;
    row.r22	 =  0.9994568; // ;
    row.t0	 = 0.03961354; // ;
    row.t1	 = 0.04530329; // ;
    row.t2	 = 0.02605865; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          7; // ;
    row.r00	 =  0.9992513; // ;
    row.r01	 = 0.0003877072; // -gamma ;
    row.r02	 = 0.001782519; // beta  ;
    row.r10	 = -0.000697858; // gamma ;
    row.r11	 =  0.9993955; // ;
    row.r12	 = -0.0002570324; // -alpha ;
    row.r20	 = -0.001556622; // -beta  ;
    row.r21	 = 0.0006031311; // alpha ;
    row.r22	 =  0.9994566; // ;
    row.t0	 =  0.0286807; // ;
    row.t1	 = 0.03069906; // ;
    row.t2	 = -0.01285051; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x08",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          8; // ;
    row.r00	 =  0.9991719; // ;
    row.r01	 = 0.006532398; // -gamma ;
    row.r02	 = 0.001958048; // beta  ;
    row.r10	 = -0.00676007; // gamma ;
    row.r11	 =  0.9994299; // ;
    row.r12	 = -9.510187e-05; // -alpha ;
    row.r20	 = -0.001667303; // -beta  ;
    row.r21	 = 0.0003763176; // alpha ;
    row.r22	 =  0.9994564; // ;
    row.t0	 = 0.04592797; // ;
    row.t1	 = 0.01889329; // ;
    row.t2	 = 0.01438148; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          9; // ;
    row.r00	 =  0.9991371; // ;
    row.r01	 = 0.001716776; // -gamma ;
    row.r02	 = -0.005272146; // beta  ;
    row.r10	 = -0.0017569; // gamma ;
    row.r11	 =  0.9994918; // ;
    row.r12	 = -0.0005641534; // -alpha ;
    row.r20	 = 0.004905031; // -beta  ;
    row.r21	 = 0.0003819628; // alpha ;
    row.r22	 =  0.9994452; // ;
    row.t0	 = 0.01378198; // ;
    row.t1	 = 0.01378764; // ;
    row.t2	 = -0.002752911; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         10; // ;
    row.r00	 =  0.9991253; // ;
    row.r01	 = -0.008041377; // -gamma ;
    row.r02	 = 0.001259126; // beta  ;
    row.r10	 = 0.007942658; // gamma ;
    row.r11	 =  0.9994554; // ;
    row.r12	 = 0.0003602325; // -alpha ;
    row.r20	 = -0.0009123806; // -beta  ;
    row.r21	 = -0.0001279579; // alpha ;
    row.r22	 =   0.999456; // ;
    row.t0	 = 0.02694869; // ;
    row.t1	 = 0.01339353; // ;
    row.t2	 = 0.007582102; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         11; // ;
    row.r00	 =  0.9991508; // ;
    row.r01	 = 0.001918645; // -gamma ;
    row.r02	 = 0.001360005; // beta  ;
    row.r10	 = -0.001877765; // gamma ;
    row.r11	 =   0.999492; // ;
    row.r12	 = 3.952373e-05; // -alpha ;
    row.r20	 = -0.0009732427; // -beta  ;
    row.r21	 = 0.0001063804; // alpha ;
    row.r22	 =  0.9994569; // ;
    row.t0	 = 0.02882467; // ;
    row.t1	 = 0.003543128; // ;
    row.t2	 = 0.00493628; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         12; // ;
    row.r00	 =  0.9991742; // ;
    row.r01	 = 0.001415759; // -gamma ;
    row.r02	 = 0.001434615; // beta  ;
    row.r10	 = -0.001238814; // gamma ;
    row.r11	 =  0.9994696; // ;
    row.r12	 = 6.066667e-05; // -alpha ;
    row.r20	 = -0.001025387; // -beta  ;
    row.r21	 = 2.051062e-06; // alpha ;
    row.r22	 =  0.9994568; // ;
    row.t0	 = 0.03253407; // ;
    row.t1	 = -0.002929702; // ;
    row.t2	 = 0.008584991; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         13; // ;
    row.r00	 =   0.999249; // ;
    row.r01	 = 0.002470255; // -gamma ;
    row.r02	 = -0.0003592433; // beta  ;
    row.r10	 = -0.002156963; // gamma ;
    row.r11	 =  0.9993915; // ;
    row.r12	 = 0.0004904232; // -alpha ;
    row.r20	 = -4.953452e-05; // -beta  ;
    row.r21	 = -0.0004286325; // alpha ;
    row.r22	 =  0.9994589; // ;
    row.t0	 = 0.0007950227; // ;
    row.t1	 = 0.03754923; // ;
    row.t2	 = 0.02389889; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         14; // ;
    row.r00	 =  0.9991485; // ;
    row.r01	 =  -0.012278; // -gamma ;
    row.r02	 = 8.005027e-05; // beta  ;
    row.r10	 = 0.01256119; // gamma ;
    row.r11	 =  0.9993435; // ;
    row.r12	 = -0.0008991163; // -alpha ;
    row.r20	 = 0.0003446376; // -beta  ;
    row.r21	 = 0.000872337; // alpha ;
    row.r22	 =  0.9994584; // ;
    row.t0	 = -0.0009109689; // ;
    row.t1	 = -0.01710807; // ;
    row.t2	 = 0.01196063; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         15; // ;
    row.r00	 =  0.9992893; // ;
    row.r01	 = 0.001605901; // -gamma ;
    row.r02	 = -0.0002626686; // beta  ;
    row.r10	 = -0.001268852; // gamma ;
    row.r11	 =  0.9993571; // ;
    row.r12	 = -0.0005969581; // -alpha ;
    row.r20	 = 0.0006621276; // -beta  ;
    row.r21	 = 0.0004897464; // alpha ;
    row.r22	 =  0.9994585; // ;
    row.t0	 = -0.02577793; // ;
    row.t1	 = -0.01798527; // ;
    row.t2	 = 0.006117531; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         16; // ;
    row.r00	 =  0.9993538; // ;
    row.r01	 = 0.003756574; // -gamma ;
    row.r02	 = -0.0006708502; // beta  ;
    row.r10	 = -0.003421119; // gamma ;
    row.r11	 =  0.9992795; // ;
    row.r12	 = -0.0006241738; // -alpha ;
    row.r20	 = 0.001038222; // -beta  ;
    row.r21	 = 0.0004388728; // alpha ;
    row.r22	 =  0.9994583; // ;
    row.t0	 = -0.02417224; // ;
    row.t1	 = -0.01269119; // ;
    row.t2	 = 0.002257769; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"i",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         17; // ;
    row.r00	 =  0.9994494; // ;
    row.r01	 = -0.0001155805; // -gamma ;
    row.r02	 = -0.001934532; // beta  ;
    row.r10	 = 0.0003461524; // gamma ;
    row.r11	 =  0.9991971; // ;
    row.r12	 = 0.0001217719; // -alpha ;
    row.r20	 =  0.0016394; // -beta  ;
    row.r21	 = 0.0001686914; // alpha ;
    row.r22	 =   0.999457; // ;
    row.t0	 = -6.701782e-05; // ;
    row.t1	 = 0.02721294; // ;
    row.t2	 = 0.02238843; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         18; // ;
    row.r00	 =  0.9992819; // ;
    row.r01	 = -0.01694127; // -gamma ;
    row.r02	 = 0.001850319; // beta  ;
    row.r10	 = 0.01721313; // gamma ;
    row.r11	 =  0.9990731; // ;
    row.r12	 = -0.000452148; // -alpha ;
    row.r20	 = -0.001525333; // -beta  ;
    row.r21	 = 0.0002169993; // alpha ;
    row.r22	 =  0.9994571; // ;
    row.t0	 = -0.001121842; // ;
    row.t1	 = -0.004888067; // ;
    row.t2	 = 0.009981077; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         19; // ;
    row.r00	 =  0.9994711; // ;
    row.r01	 = -0.00149665; // -gamma ;
    row.r02	 = 0.002183733; // beta  ;
    row.r10	 = 0.001665105; // gamma ;
    row.r11	 =  0.9991732; // ;
    row.r12	 = -0.0008704285; // -alpha ;
    row.r20	 = -0.001922701; // -beta  ;
    row.r21	 = 0.0005511399; // alpha ;
    row.r22	 =  0.9994563; // ;
    row.t0	 = 6.716547e-05; // ;
    row.t1	 = -0.01199871; // ;
    row.t2	 = -0.02648933; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         20; // ;
    row.r00	 =  0.9994501; // ;
    row.r01	 = 0.009202609; // -gamma ;
    row.r02	 = 0.001907599; // beta  ;
    row.r10	 = -0.009166762; // gamma ;
    row.r11	 =    0.99911; // ;
    row.r12	 = -0.00103425; // -alpha ;
    row.r20	 = -0.001726172; // -beta  ;
    row.r21	 = 0.0006489493; // alpha ;
    row.r22	 =  0.9994566; // ;
    row.t0	 = -0.002639106; // ;
    row.t1	 = -0.008599657; // ;
    row.t2	 = 0.04132399; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         21; // ;
    row.r00	 =  0.9995261; // ;
    row.r01	 = 0.0002587074; // -gamma ;
    row.r02	 = 0.00193691; // beta  ;
    row.r10	 = -0.0004734771; // gamma ;
    row.r11	 =  0.9991238; // ;
    row.r12	 = 0.00415551; // -alpha ;
    row.r20	 = -0.002137923; // -beta  ;
    row.r21	 = -0.003732072; // alpha ;
    row.r22	 =  0.9992915; // ;
    row.t0	 = 0.008777813; // ;
    row.t1	 = 0.05887766; // ;
    row.t2	 = 0.02239282; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         22; // ;
    row.r00	 =  0.9995044; // ;
    row.r01	 = -0.008720442; // -gamma ;
    row.r02	 = -0.001682061; // beta  ;
    row.r10	 = 0.008579445; // gamma ;
    row.r11	 =  0.9990673; // ;
    row.r12	 = -0.004895777; // -alpha ;
    row.r20	 = 0.001962802; // -beta  ;
    row.r21	 = 0.004476087; // alpha ;
    row.r22	 =  0.9992888; // ;
    row.t0	 = -0.02376743; // ;
    row.t1	 = -0.03516072; // ;
    row.t2	 = 0.03246935; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         23; // ;
    row.r00	 =  0.9994963; // ;
    row.r01	 = -0.000556895; // -gamma ;
    row.r02	 = -0.002583481; // beta  ;
    row.r10	 = 0.0002542923; // gamma ;
    row.r11	 =  0.9991511; // ;
    row.r12	 = -0.004492741; // -alpha ;
    row.r20	 = 0.002738026; // -beta  ;
    row.r21	 = 0.004047267; // alpha ;
    row.r22	 =  0.9992888; // ;
    row.t0	 = -0.03098668; // ;
    row.t1	 = -0.03295259; // ;
    row.t2	 = -0.01372619; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         24; // ;
    row.r00	 =  0.9994075; // ;
    row.r01	 = -0.005104249; // -gamma ;
    row.r02	 = -0.003201498; // beta  ;
    row.r10	 = 0.004688457; // gamma ;
    row.r11	 =  0.9992173; // ;
    row.r12	 = -0.003569786; // -alpha ;
    row.r20	 = 0.00327381; // -beta  ;
    row.r21	 = 0.003087266; // alpha ;
    row.r22	 =  0.9992906; // ;
    row.t0	 = -0.04270721; // ;
    row.t1	 = -0.03228788; // ;
    row.t2	 = 0.01082607; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         25; // ;
    row.r00	 =  0.9992933; // ;
    row.r01	 = 0.000489076; // -gamma ;
    row.r02	 = -0.0001295809; // beta  ;
    row.r10	 = -0.0009286586; // gamma ;
    row.r11	 =  0.9993651; // ;
    row.r12	 = 0.001717027; // -alpha ;
    row.r20	 = 0.0002162449; // -beta  ;
    row.r21	 = -0.001253842; // alpha ;
    row.r22	 =  0.9993018; // ;
    row.t0	 = -0.01566098; // ;
    row.t1	 = 0.02702046; // ;
    row.t2	 = 0.02151594; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         26; // ;
    row.r00	 =  0.9992702; // ;
    row.r01	 = -0.01155961; // -gamma ;
    row.r02	 = -0.0001586626; // beta  ;
    row.r10	 = 0.01111331; // gamma ;
    row.r11	 =  0.9992614; // ;
    row.r12	 = -0.002314121; // -alpha ;
    row.r20	 = 0.0001384957; // -beta  ;
    row.r21	 = 0.001843656; // alpha ;
    row.r22	 =  0.9993008; // ;
    row.t0	 = 0.002317048; // ;
    row.t1	 = -0.002024981; // ;
    row.t2	 = 0.01812599; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         27; // ;
    row.r00	 =  0.9992431; // ;
    row.r01	 = 0.001856613; // -gamma ;
    row.r02	 = -0.0008164454; // beta  ;
    row.r10	 = -0.002270536; // gamma ;
    row.r11	 =  0.9994113; // ;
    row.r12	 = -0.002165236; // -alpha ;
    row.r20	 = 0.0006751944; // -beta  ;
    row.r21	 = 0.001716457; // alpha ;
    row.r22	 =  0.9993009; // ;
    row.t0	 = -0.00266516; // ;
    row.t1	 = -0.001872341; // ;
    row.t2	 = 0.002381369; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"+\x01",2);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         28; // ;
    row.r00	 =  0.9991644; // ;
    row.r01	 = -0.002711181; // -gamma ;
    row.r02	 = -0.0006568043; // beta  ;
    row.r10	 = 0.002404229; // gamma ;
    row.r11	 =  0.9994877; // ;
    row.r12	 = -0.001699193; // -alpha ;
    row.r20	 = 0.000431683; // -beta  ;
    row.r21	 = 0.001286341; // alpha ;
    row.r22	 =  0.9993016; // ;
    row.t0	 = 0.006347117; // ;
    row.t1	 = -0.007291944; // ;
    row.t2	 = 0.01172001; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x11",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         29; // ;
    row.r00	 =  0.9991074; // ;
    row.r01	 = 8.147884e-05; // -gamma ;
    row.r02	 = -0.002446764; // beta  ;
    row.r10	 = -0.0001420895; // gamma ;
    row.r11	 =  0.9995495; // ;
    row.r12	 = 0.001514489; // -alpha ;
    row.r20	 = 0.00278907; // -beta  ;
    row.r21	 = -0.001189871; // alpha ;
    row.r22	 =  0.9992957; // ;
    row.t0	 = -0.04763201; // ;
    row.t1	 = 0.04450868; // ;
    row.t2	 = -0.004263502; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         30; // ;
    row.r00	 =  0.9990375; // ;
    row.r01	 = -0.01281002; // -gamma ;
    row.r02	 = 0.001706941; // beta  ;
    row.r10	 = 0.01267165; // gamma ;
    row.r11	 =  0.9994592; // ;
    row.r12	 = -0.001773741; // -alpha ;
    row.r20	 = -0.001998182; // -beta  ;
    row.r21	 = 0.001443809; // alpha ;
    row.r22	 =  0.9992973; // ;
    row.t0	 =  0.0525531; // ;
    row.t1	 = -0.01280127; // ;
    row.t2	 = 0.01956131; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x04\x04\x05\x05\x06",5);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         31; // ;
    row.r00	 =  0.9991073; // ;
    row.r01	 = -0.001493888; // -gamma ;
    row.r02	 = 0.00163348; // beta  ;
    row.r10	 = 0.001534962; // gamma ;
    row.r11	 =  0.9995496; // ;
    row.r12	 = -0.00223929; // -alpha ;
    row.r20	 = -0.002007222; // -beta  ;
    row.r21	 = 0.001958893; // alpha ;
    row.r22	 =  0.9992963; // ;
    row.t0	 = 0.03907461; // ;
    row.t1	 = -0.03563906; // ;
    row.t2	 = 0.01935668; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         32; // ;
    row.r00	 =  0.9990685; // ;
    row.r01	 = 0.01160331; // -gamma ;
    row.r02	 = 0.001485999; // beta  ;
    row.r10	 = -0.01139054; // gamma ;
    row.r11	 =  0.9994598; // ;
    row.r12	 = -0.002238764; // -alpha ;
    row.r20	 = -0.001936776; // -beta  ;
    row.r21	 = 0.002017796; // alpha ;
    row.r22	 =  0.9992963; // ;
    row.t0	 = 0.02986999; // ;
    row.t1	 = -0.03958499; // ;
    row.t2	 = 0.03977459; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"uestTime\x20/*\x20RUSR:\x20qiuh\x20|\x20SUSR:\x20q",32);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         33; // ;
    row.r00	 =  0.9992268; // ;
    row.r01	 = 0.00162774; // -gamma ;
    row.r02	 = -0.003037325; // beta  ;
    row.r10	 = -0.00122339; // gamma ;
    row.r11	 =  0.9994279; // ;
    row.r12	 = 0.001735309; // -alpha ;
    row.r20	 = 0.003507111; // -beta  ;
    row.r21	 = -0.001669584; // alpha ;
    row.r22	 =  0.9992925; // ;
    row.t0	 = -0.05078499; // ;
    row.t1	 = 0.05053603; // ;
    row.t2	 = 0.02191079; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         34; // ;
    row.r00	 =  0.9991403; // ;
    row.r01	 = -0.01002933; // -gamma ;
    row.r02	 = 0.003368286; // beta  ;
    row.r10	 = 0.01039321; // gamma ;
    row.r11	 =    0.99941; // ;
    row.r12	 = -0.001918201; // -alpha ;
    row.r20	 = -0.003809138; // -beta  ;
    row.r21	 = 0.001852138; // alpha ;
    row.r22	 =   0.999291; // ;
    row.t0	 =  0.0502178; // ;
    row.t1	 = -0.01993677; // ;
    row.t2	 = 0.02421544; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         35; // ;
    row.r00	 =  0.9992732; // ;
    row.r01	 = 0.002149142; // -gamma ;
    row.r02	 = 0.002886055; // beta  ;
    row.r10	 = -0.00170776; // gamma ;
    row.r11	 =  0.9993765; // ;
    row.r12	 = -0.002761492; // -alpha ;
    row.r20	 = -0.003362786; // -beta  ;
    row.r21	 = 0.002747755; // alpha ;
    row.r22	 =  0.9992906; // ;
    row.t0	 = 0.04290707; // ;
    row.t1	 = -0.03250496; // ;
    row.t2	 = -0.01573965; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         36; // ;
    row.r00	 =  0.9993466; // ;
    row.r01	 = 0.006877754; // -gamma ;
    row.r02	 = 0.002205992; // beta  ;
    row.r10	 = -0.006433234; // gamma ;
    row.r11	 =  0.9992647; // ;
    row.r12	 = -0.002877846; // -alpha ;
    row.r20	 = -0.002688244; // -beta  ;
    row.r21	 = 0.002950916; // alpha ;
    row.r22	 =   0.999292; // ;
    row.t0	 =  0.0380245; // ;
    row.t1	 = -0.04045353; // ;
    row.t2	 = 0.02900954; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         37; // ;
    row.r00	 =  0.9994779; // ;
    row.r01	 = 0.003578807; // -gamma ;
    row.r02	 = -0.00386454; // beta  ;
    row.r10	 = -0.003255102; // gamma ;
    row.r11	 =   0.999164; // ;
    row.r12	 = 0.002696752; // -alpha ;
    row.r20	 = 0.004287822; // -beta  ;
    row.r21	 = -0.00290802; // alpha ;
    row.r22	 =   0.999287; // ;
    row.t0	 = -0.04767707; // ;
    row.t1	 = 0.07733682; // ;
    row.t2	 = 0.02766126; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         38; // ;
    row.r00	 =  0.9994529; // ;
    row.r01	 = -0.0003626343; // -gamma ;
    row.r02	 = 0.003352879; // beta  ;
    row.r10	 = 0.0007374808; // gamma ;
    row.r11	 =  0.9992019; // ;
    row.r12	 = -0.002557169; // -alpha ;
    row.r20	 = -0.00378451; // -beta  ;
    row.r21	 = 0.002744593; // alpha ;
    row.r22	 =  0.9992896; // ;
    row.t0	 = 0.04338934; // ;
    row.t1	 = -0.03691828; // ;
    row.t2	 = 0.03593504; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         39; // ;
    row.r00	 =  0.9995099; // ;
    row.r01	 = -0.004127432; // -gamma ;
    row.r02	 = 0.003297134; // beta  ;
    row.r10	 = 0.004368937; // gamma ;
    row.r11	 =  0.9991276; // ;
    row.r12	 = -0.003340327; // -alpha ;
    row.r20	 = -0.003666788; // -beta  ;
    row.r21	 = 0.003627382; // alpha ;
    row.r22	 =  0.9992871; // ;
    row.t0	 = 0.03127428; // ;
    row.t1	 = -0.04883976; // ;
    row.t2	 = 0.006231238; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         40; // ;
    row.r00	 =  0.9995469; // ;
    row.r01	 = 0.002477523; // -gamma ;
    row.r02	 = 0.002669223; // beta  ;
    row.r10	 = -0.002409924; // gamma ;
    row.r11	 =  0.9991019; // ;
    row.r12	 = -0.003527883; // -alpha ;
    row.r20	 = -0.002998828; // -beta  ;
    row.r21	 = 0.003866038; // alpha ;
    row.r22	 =  0.9992885; // ;
    row.t0	 = 0.01982234; // ;
    row.t1	 = -0.05209051; // ;
    row.t2	 = 0.02539924; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
// ----------------- end of code ---------------
 return (TDataSet *)tableSet;
}
예제 #7
0
//________________________________________________________________________________
void MakeSvtLadderOnShell(){//, Int_t time = 38 ){ // combine SvtBarrelOnGlobal and SvtShellsOnBarrel into SvtShellsOnGlobal
  gROOT->LoadMacro("bfc.C");
  bfc(0,"mysql,db,nodefault");
  StMaker *dbMk = chain->Maker("db");
  if (! dbMk) return;
  dbMk->SetDebug(1);
  StEvtHddr *header = chain->GetEvtHddr();
  header->SetRunNumber(1);
  dbMk->SetDateTime(date,time); 
  header->SetDateTime(date,time);
  chain->MakeEvent();
  dbMk->SetDebug(2);
  dbMk->SetDateTime(date,time); 
  St_Survey *LadderOnShellOld = (St_Survey *) dbMk->GetDataBase("Geometry/svt/LadderOnShell");  // shells in the SVT barrel coordinate system
  if (! (LadderOnShellOld)) return;
  Survey_st *LaddersOnShells = LadderOnShellOld->GetTable();  // shells in the SVT barrel coordinate system
  Int_t NoLadders = LadderOnShellOld->GetNRows();
  St_Survey *LadderOnShell = new St_Survey("LadderOnShell",NoLadders);
#ifdef CutSTEP
  cout << "============================ CutSTEP =========================" << endl;
#endif
  TGeoHMatrix T;
  Double_t tr[3] = {0,0, 23.525};
  // Double_t tr[3] = {0,0, -23.525};
  T.SetTranslation(tr);
  TGeoHMatrix F;
  Double_t flip[9] = {
    1, 0, 0,
    0, 0, 1,
    0, 1, 0
  };
  F.SetRotation(flip);
  TGeoHMatrix TInv = T.Inverse();
  for (Int_t s = 0; s < NoLadders; s++, LaddersOnShells++) {
    TGeoHMatrix LSold, LS, dR, ddR, dddR;
    //    LadderOnShellOld->Print(s,1);
    LSold.SetRotation(&LaddersOnShells->r00);
    LSold.SetTranslation(&LaddersOnShells->t0); cout << "===================== Ladder \t" << s+1 << endl; cout << "\tLSold\t"; LSold.Print();
    Int_t i = -1; 
    for (Int_t k = 0; k < N; k++) {
      if (LaddersOnShells->Id == 1000*Data[k].barrel + Data[k].ladder) {i = k; break;}
    }
    if (i < 0) {
      cout << "Correction for " << LaddersOnShells->Id << " is not found" << endl;
    } else {
      cout << "Ladder " << LaddersOnShells->Id << "\ti " << i 
	   << "\talpha " <<  Data[i].alpha << "+/-" << Data[i].Dalpha
	   << "\tbeta "  <<  Data[i].beta  << "+/-" << Data[i].Dbeta
	   << "\tgamma " <<  Data[i].gamma << "+/-" << Data[i].Dgamma
	   << "\tu " << Data[i].u << "\tv " << Data[i].v << "\tw " << Data[i].w << endl; 
      Double_t xyz[3] = {0, 0, 0};
      //      if (Data[i].Dalpha < 2 && Data[i].Dbeta  < 2 && Data[i].Dgamma < 2) {
#ifndef CutSTEP
	if (Data[i].Dalpha > 0) dR.RotateX(-180./TMath::Pi()*Data[i].alpha*1e-3);
	if (Data[i].Dbeta  > 0) dR.RotateZ(-180./TMath::Pi()*Data[i].beta*1e-3);
	if (Data[i].Dgamma > 0) dR.RotateY(-180./TMath::Pi()*Data[i].gamma*1e-3);
	if (Data[i].Du > 0) xyz[0] =  1e-4*Data[i].u;
	if (Data[i].Dv > 0) xyz[2] =  1e-4*Data[i].v;
	if (Data[i].Dw > 0) xyz[1] =  1e-4*Data[i].w;
#else
	if (Data[i].Dalpha > 0) dR.RotateX(-180./TMath::Pi()*Data[i].alpha*0.5e-3);
	if (Data[i].Dbeta  > 0) dR.RotateZ(-180./TMath::Pi()*Data[i].beta*0.5e-3);
	if (Data[i].Dgamma > 0) dR.RotateY(-180./TMath::Pi()*Data[i].gamma*0.5e-3);
	if (Data[i].Du > 0) xyz[0] =  0.5e-4*Data[i].u;
	if (Data[i].Dv > 0) xyz[2] =  0.5e-4*Data[i].v;
	if (Data[i].Dw > 0) xyz[1] =  0.5e-4*Data[i].w;
#endif
	//      }
      dR.SetTranslation(xyz);
      cout << "dR\t"; dR.Print();
    }
    // 	shellOnGlobal *	ladderOnShell * T * dR * T**-1 * ladderOnSurvey * waferOnLadder 
    // 	shellOnGlobal * ( ladderOnShell * F * T * dR * T**-1 * F ) * ladderOnSurvey * waferOnLadder 
    ddR = T * dR * TInv; cout << "ddR\t" << ddR.Print();
    dddR = F * T * dR * TInv * F; cout << "dddR\t" << dddR.Print();
    //    LS = LSold * dR; cout << "LS_old\t"; LS.Print();
    //    LS = LSold * dddR; cout << "LS_new\t"; LS.Print();
    LS = LSold * ddR; cout << "LS_new\t"; LS.Print();
    Survey_st row = *LaddersOnShells;
    Double_t *r = LS.GetRotationMatrix();
    memcpy(&row.r00, r, 9*sizeof(Double_t));
    Double_t *t = LS.GetTranslation();
    memcpy(&row.t0, t, 3*sizeof(Double_t));
    LadderOnShell->AddAt(&row);
    //    LadderOnShell->Print(LadderOnShell->GetNRows()-1,1);
  }
  TString fOut =  Form("%s.%8i.%06i.C",LadderOnShell->GetName(),date,time);
  ofstream out;
  cout << "Create " << fOut << endl;
  out.open(fOut.Data());
  out << "TDataSet *CreateTable() {" << endl;
  out << "  if (!gROOT->GetClass(\"St_Survey\")) return 0;" << endl;
  out << "  Survey_st row[" << NoLadders << "] = {" << endl; 
  Survey_st *LaddersOnShells = LadderOnShell->GetTable(); 
  for (Int_t i = 0; i < NoLadders; i++, LaddersOnShells++) { 
    out << "    {" << Form("%1i",LaddersOnShells->Id); 
    Double_t *r = &(LaddersOnShells->r00);
    for (Int_t j = 0; j < 9; j++) out << Form(",%8.5f",r[j]);
    for (Int_t j = 9; j < 12; j++) out << Form(",%8.4f",r[j]);
    for (Int_t j = 12; j < 18; j++) out << Form(",%3.1f",r[j]);
    out << ",\"" << Pass << "\"}";
    if (i != NoLadders - 1) out << ",";
    out << endl;
  } 
  out << "  };" << endl;
  out << "  St_Survey *tableSet = new St_Survey(\"" << LadderOnShell->GetName() << "\"," << NoLadders << ");" << endl; 
  out << "  for (Int_t i = 0; i < " << NoLadders << "; i++) tableSet->AddAt(&row[i].Id, i);" << endl; 
  out << "  return (TDataSet *)tableSet;" << endl;
  out << "}" << endl;
  out.close(); 
}
예제 #8
0
TDataSet *CreateTable() { 
// -----------------------------------------------------------------
// db/.const/StarDb/Geometry/ist/.istLadderOnIst/istLadderOnIstMisalign Allocated rows: 24  Used rows: 24  Row size: 180 bytes
//  Table: Survey_st[0]--> Survey_st[23]
// ====================================================================
// ------  Test whether this table share library was loaded ------
  if (!TClass::GetClass("St_Survey")) return 0;
Survey_st row;
St_Survey *tableSet = new St_Survey("istLadderOnIstMisalign",24);
//
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          1; // ;
    row.r00	 =  0.9999986; // ;
    row.r01	 = -0.001695136; // -gamma ;
    row.r02	 = 7.245218e-06; // beta  ;
    row.r10	 = 0.001695105; // gamma ;
    row.r11	 =  0.9999985; // ;
    row.r12	 = -0.0003117171; // -alpha ;
    row.r20	 = -6.763821e-06; // -beta  ;
    row.r21	 = 0.0003116795; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.06329431; // ;
    row.t1	 = -0.0620815; // ;
    row.t2	 = -0.0223204; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          2; // ;
    row.r00	 =  0.9999993; // ;
    row.r01	 = -0.001146915; // -gamma ;
    row.r02	 = -0.0001029966; // beta  ;
    row.r10	 = 0.001146816; // gamma ;
    row.r11	 =  0.9999993; // ;
    row.r12	 = -0.0003558473; // -alpha ;
    row.r20	 = 0.0001033317; // -beta  ;
    row.r21	 = 0.0003557752; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.06104939; // ;
    row.t1	 = -0.05690102; // ;
    row.t2	 = -0.02107099; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          3; // ;
    row.r00	 =   0.999997; // ;
    row.r01	 = 0.00246215; // -gamma ;
    row.r02	 = -3.314568e-05; // beta  ;
    row.r10	 = -0.00246213; // gamma ;
    row.r11	 =  0.9999969; // ;
    row.r12	 = -0.0003608323; // -alpha ;
    row.r20	 = 3.217153e-05; // -beta  ;
    row.r21	 = 0.0003608442; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.02889101; // ;
    row.t1	 = -0.02798473; // ;
    row.t2	 = -0.01837369; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          4; // ;
    row.r00	 =   0.999999; // ;
    row.r01	 = 0.001438326; // -gamma ;
    row.r02	 = -9.353574e-05; // beta  ;
    row.r10	 = -0.00143837; // gamma ;
    row.r11	 =  0.9999988; // ;
    row.r12	 = -0.0005020027; // -alpha ;
    row.r20	 = 9.273882e-05; // -beta  ;
    row.r21	 = 0.000502101; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.04254569; // ;
    row.t1	 = -0.02996439; // ;
    row.t2	 = -0.02916276; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          5; // ;
    row.r00	 =          1; // ;
    row.r01	 = 6.057573e-05; // -gamma ;
    row.r02	 = -4.190256e-05; // beta  ;
    row.r10	 = -6.057573e-05; // gamma ;
    row.r11	 =          1; // ;
    row.r12	 = -0.0002871979; // -alpha ;
    row.r20	 = 4.190566e-05; // -beta  ;
    row.r21	 = 0.0002872025; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.02167285; // ;
    row.t1	 = -0.0304104; // ;
    row.t2	 = -0.01905332; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          6; // ;
    row.r00	 =  0.9999999; // ;
    row.r01	 = -0.0004446982; // -gamma ;
    row.r02	 = 0.000124964; // beta  ;
    row.r10	 = 0.0004446982; // gamma ;
    row.r11	 =  0.9999999; // ;
    row.r12	 = -7.80437e-05; // -alpha ;
    row.r20	 = -0.0001249235; // -beta  ;
    row.r21	 = 7.808647e-05; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.06987531; // ;
    row.t1	 = -0.03418493; // ;
    row.t2	 = -0.03594807; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          7; // ;
    row.r00	 =  0.9999993; // ;
    row.r01	 = -0.001228569; // -gamma ;
    row.r02	 = -3.355379e-05; // beta  ;
    row.r10	 = 0.001228538; // gamma ;
    row.r11	 =  0.9999992; // ;
    row.r12	 = -0.0003760607; // -alpha ;
    row.r20	 = 3.405707e-05; // -beta  ;
    row.r21	 = 0.0003760654; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.03801073; // ;
    row.t1	 = -0.002408353; // ;
    row.t2	 = 0.01077147; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x04",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          8; // ;
    row.r00	 =  0.9999941; // ;
    row.r01	 = -0.003450414; // -gamma ;
    row.r02	 = 9.136937e-05; // beta  ;
    row.r10	 = 0.003450508; // gamma ;
    row.r11	 =   0.999994; // ;
    row.r12	 = -0.0002914865; // -alpha ;
    row.r20	 = -9.035882e-05; // -beta  ;
    row.r21	 = 0.0002918468; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.09809131; // ;
    row.t1	 = -0.01753286; // ;
    row.t2	 = -0.01725745; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =          9; // ;
    row.r00	 =   0.999997; // ;
    row.r01	 = -0.002439001; // -gamma ;
    row.r02	 = -8.417258e-05; // beta  ;
    row.r10	 = 0.002439001; // gamma ;
    row.r11	 =   0.999997; // ;
    row.r12	 = -0.0003154965; // -alpha ;
    row.r20	 = 8.495865e-05; // -beta  ;
    row.r21	 = 0.0003152569; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.09738391; // ;
    row.t1	 = 0.008558913; // ;
    row.t2	 = -0.02049885; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         10; // ;
    row.r00	 =  0.9999897; // ;
    row.r01	 = -0.004528703; // -gamma ;
    row.r02	 = 0.000315599; // beta  ;
    row.r10	 = 0.004528837; // gamma ;
    row.r11	 =  0.9999896; // ;
    row.r12	 = -0.000477125; // -alpha ;
    row.r20	 = -0.0003134424; // -beta  ;
    row.r21	 = 0.0004785414; // alpha ;
    row.r22	 =  0.9999998; // ;
    row.t0	 = 0.09640609; // ;
    row.t1	 =  0.0305634; // ;
    row.t2	 = -0.01453834; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         11; // ;
    row.r00	 =  0.9999979; // ;
    row.r01	 = 0.002048088; // -gamma ;
    row.r02	 = 0.0001496034; // beta  ;
    row.r10	 = -0.002048088; // gamma ;
    row.r11	 =  0.9999979; // ;
    row.r12	 = -6.934709e-05; // -alpha ;
    row.r20	 = -0.0001497601; // -beta  ;
    row.r21	 = 6.901561e-05; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = -0.002700134; // ;
    row.t1	 = 0.02189264; // ;
    row.t2	 = -0.02129409; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         12; // ;
    row.r00	 =  0.9999998; // ;
    row.r01	 = 0.0006437806; // -gamma ;
    row.r02	 = -3.32127e-05; // beta  ;
    row.r10	 = -0.0006437806; // gamma ;
    row.r11	 =  0.9999998; // ;
    row.r12	 = -0.000141565; // -alpha ;
    row.r20	 = 3.309009e-05; // -beta  ;
    row.r21	 = 0.0001416727; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.01945934; // ;
    row.t1	 = 0.00901933; // ;
    row.t2	 = -0.0271332; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         13; // ;
    row.r00	 =  0.9999988; // ;
    row.r01	 = -0.001519768; // -gamma ;
    row.r02	 = -1.970025e-05; // beta  ;
    row.r10	 = 0.001519768; // gamma ;
    row.r11	 =  0.9999988; // ;
    row.r12	 = -5.101977e-06; // -alpha ;
    row.r20	 = 1.972934e-05; // -beta  ;
    row.r21	 = 5.019277e-06; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.07270246; // ;
    row.t1	 = 0.006135779; // ;
    row.t2	 = -0.04649982; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         14; // ;
    row.r00	 =  0.9999958; // ;
    row.r01	 = -0.002858289; // -gamma ;
    row.r02	 = -0.0002190603; // beta  ;
    row.r10	 = 0.002858294; // gamma ;
    row.r11	 =  0.9999959; // ;
    row.r12	 = -4.382429e-05; // -alpha ;
    row.r20	 = 0.0002190958; // -beta  ;
    row.r21	 = 4.317036e-05; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.05263115; // ;
    row.t1	 = 0.001467903; // ;
    row.t2	 = -0.02061342; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         15; // ;
    row.r00	 =  0.9999973; // ;
    row.r01	 = -0.002320931; // -gamma ;
    row.r02	 = -9.730031e-05; // beta  ;
    row.r10	 = 0.002320931; // gamma ;
    row.r11	 =  0.9999973; // ;
    row.r12	 = -7.041839e-05; // -alpha ;
    row.r20	 = 9.75284e-05; // -beta  ;
    row.r21	 = 7.014335e-05; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.01664098; // ;
    row.t1	 = 0.001199579; // ;
    row.t2	 = -0.03192474; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         16; // ;
    row.r00	 =  0.9999966; // ;
    row.r01	 = -0.002587383; // -gamma ;
    row.r02	 = -0.0002762272; // beta  ;
    row.r10	 = 0.002587426; // gamma ;
    row.r11	 =  0.9999967; // ;
    row.r12	 = 1.262447e-05; // -alpha ;
    row.r20	 = 0.0002761188; // -beta  ;
    row.r21	 = -1.340862e-05; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 =  0.0555103; // ;
    row.t1	 = -0.0007139889; // ;
    row.t2	 = -0.02894192; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,",\x01",2);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         17; // ;
    row.r00	 =  0.9999912; // ;
    row.r01	 = -0.004179383; // -gamma ;
    row.r02	 = -0.0003096029; // beta  ;
    row.r10	 = 0.004179457; // gamma ;
    row.r11	 =  0.9999913; // ;
    row.r12	 = 0.0001395089; // -alpha ;
    row.r20	 = 0.0003090387; // -beta  ;
    row.r21	 = -0.0001407989; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.05167493; // ;
    row.t1	 = -0.01064037; // ;
    row.t2	 = -0.02506726; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         18; // ;
    row.r00	 =  0.9999977; // ;
    row.r01	 = -0.002136282; // -gamma ;
    row.r02	 = -0.0002690726; // beta  ;
    row.r10	 = 0.002136282; // gamma ;
    row.r11	 =  0.9999977; // ;
    row.r12	 = -4.754167e-05; // -alpha ;
    row.r20	 = 0.0002691081; // -beta  ;
    row.r21	 = 4.701365e-05; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.04534279; // ;
    row.t1	 = 0.007575062; // ;
    row.t2	 = -0.03932277; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         19; // ;
    row.r00	 =  0.9999994; // ;
    row.r01	 = -0.0009566154; // -gamma ;
    row.r02	 = -0.0004892232; // beta  ;
    row.r10	 = 0.0009564252; // gamma ;
    row.r11	 =  0.9999995; // ;
    row.r12	 = -0.0001659906; // -alpha ;
    row.r20	 = 0.000489432; // -beta  ;
    row.r21	 = 0.0001655319; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.01550171; // ;
    row.t1	 = -0.02346094; // ;
    row.t2	 = -0.02067695; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         20; // ;
    row.r00	 =  0.9999999; // ;
    row.r01	 = -0.0001026013; // -gamma ;
    row.r02	 = -0.0003392274; // beta  ;
    row.r10	 = 0.0001026065; // gamma ;
    row.r11	 =          1; // ;
    row.r12	 = -0.0001820471; // -alpha ;
    row.r20	 = 0.0003392804; // -beta  ;
    row.r21	 = 0.0001820863; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = -0.04635301; // ;
    row.t1	 = -0.006099231; // ;
    row.t2	 = -0.03108983; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         21; // ;
    row.r00	 =          1; // ;
    row.r01	 = -1.70279e-05; // -gamma ;
    row.r02	 = -0.0003844031; // beta  ;
    row.r10	 = 1.693011e-05; // gamma ;
    row.r11	 =          1; // ;
    row.r12	 = -0.0002320246; // -alpha ;
    row.r20	 = 0.0003844237; // -beta  ;
    row.r21	 = 0.000232064; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = 0.01442133; // ;
    row.t1	 = -0.02417256; // ;
    row.t2	 = -0.0446843; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         22; // ;
    row.r00	 =  0.9999997; // ;
    row.r01	 = -0.0007654015; // -gamma ;
    row.r02	 = -0.0003223091; // beta  ;
    row.r10	 = 0.000765267; // gamma ;
    row.r11	 =  0.9999997; // ;
    row.r12	 = -0.000145253; // -alpha ;
    row.r20	 = 0.0003224018; // -beta  ;
    row.r21	 = 0.000144966; // alpha ;
    row.r22	 =  0.9999999; // ;
    row.t0	 = -0.0222553; // ;
    row.t1	 = -0.0148826; // ;
    row.t2	 = -0.02521728; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         23; // ;
    row.r00	 =  0.9999999; // ;
    row.r01	 = -0.0003629554; // -gamma ;
    row.r02	 = 6.997022e-05; // beta  ;
    row.r10	 = 0.0003629554; // gamma ;
    row.r11	 =  0.9999999; // ;
    row.r12	 = -0.0002390862; // -alpha ;
    row.r20	 = -6.988064e-05; // -beta  ;
    row.r21	 = 0.0002391418; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.009798652; // ;
    row.t1	 = -0.04247999; // ;
    row.t2	 = -0.0139145; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =         24; // ;
    row.r00	 =  0.9999997; // ;
    row.r01	 = -0.0007782202; // -gamma ;
    row.r02	 = -0.000133161; // beta  ;
    row.r10	 = 0.0007782202; // gamma ;
    row.r11	 =  0.9999997; // ;
    row.r12	 = -0.0002174683; // -alpha ;
    row.r20	 = 0.0001334036; // -beta  ;
    row.r21	 = 0.0002174127; // alpha ;
    row.r22	 =          1; // ;
    row.t0	 = 0.04148615; // ;
    row.t1	 = -0.04179972; // ;
    row.t2	 = -0.02157011; // ;
    row.sigmaRotX	 =      0.001; // ;
    row.sigmaRotY	 =      0.001; // ;
    row.sigmaRotZ	 =      0.001; // ;
    row.sigmaTrX	 =      0.001; // ;
    row.sigmaTrY	 =      0.001; // ;
    row.sigmaTrZ	 =      0.001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
// ----------------- end of code ---------------
 return (TDataSet *)tableSet;
}
예제 #9
0
TDataSet *CreateTable() { 
// -----------------------------------------------------------------
// db/.const/StarDb/Geometry/sst/.sstLadderOnSst/sstLadderOnSstMisalign Allocated rows: 20  Used rows: 20  Row size: 180 bytes
//  Table: Survey_st[0]--> Survey_st[19]
// ====================================================================
// ------  Test whether this table share library was loaded ------
  if (!TClass::GetClass("St_Survey")) return 0;
Survey_st row;
St_Survey *tableSet = new St_Survey("sstLadderOnSstMisalign",20);
//
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        101; // ;
    row.r00	 =  0.9999945; // ;
    row.r01	 = 0.002432385; // -gamma ;
    row.r02	 = 0.0007367921; // beta  ;
    row.r10	 = -0.002432523; // gamma ;
    row.r11	 =  0.9999946; // ;
    row.r12	 = 0.0008671113; // -alpha ;
    row.r20	 = -0.0007358495; // -beta  ;
    row.r21	 = -0.0008702895; // alpha ;
    row.r22	 =  0.9999969; // ;
    row.t0	 = 0.003412801; // ;
    row.t1	 =  0.2217975; // ;
    row.t2	 =  0.0182154; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
/*
    row.Id	 =        102; // ;
    row.r00	 =   0.999496; // ;
    row.r01	 = -0.01636313; // -gamma ;
    row.r02	 = 0.02711528; // beta  ;
    row.r10	 = 0.01659574; // gamma ;
    row.r11	 =   0.999826; // ;
    row.r12	 = -0.008321206; // -alpha ;
    row.r20	 = -0.02697516; // -beta  ;
    row.r21	 = 0.00876535; // alpha ;
    row.r22	 =  0.9995961; // ;
    row.t0	 =  0.0043858; // ;
    row.t1	 = 0.03782886; // ;
    row.t2	 = 0.01672575; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
*/
    row.Id	 =        102; // Rotation too big / ladder dead / assume unit rotation
    row.r00	 =   1.000000; // matrix but keep reasonable looking translation
    row.r01	 = -0.00000000; // -gamma ;
    row.r02	 = 0.00000000; // beta  ;
    row.r10	 = 0.00000000; // gamma ;
    row.r11	 =   1.000000; // ;
    row.r12	 = -0.000000000; // -alpha ;
    row.r20	 = -0.00000000; // -beta  ;
    row.r21	 = 0.00000000; // alpha ;
    row.r22	 =  1.0000000; // ;
    row.t0	 =  0.0043858; // ;
    row.t1	 = 0.03782886; // ;
    row.t2	 = 0.01672575; // ;

 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        103; // ;
    row.r00	 =  0.9999904; // ;
    row.r01	 = 0.003694156; // -gamma ;
    row.r02	 = -9.635503e-05; // beta  ;
    row.r10	 = -0.003693614; // gamma ;
    row.r11	 =  0.9999896; // ;
    row.r12	 = 0.00205363; // -alpha ;
    row.r20	 = 0.000103804; // -beta  ;
    row.r21	 = -0.002055069; // alpha ;
    row.r22	 =   0.999996; // ;
    row.t0	 = -0.00266999; // ;
    row.t1	 = 0.04534423; // ;
    row.t2	 = 0.01542974; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        104; // ;
    row.r00	 =  0.9999916; // ;
    row.r01	 = 0.003233446; // -gamma ;
    row.r02	 = -6.64469e-05; // beta  ;
    row.r10	 = -0.003234504; // gamma ;
    row.r11	 =  0.9999899; // ;
    row.r12	 = 0.00221362; // -alpha ;
    row.r20	 = 7.403931e-05; // -beta  ;
    row.r21	 = -0.002215155; // alpha ;
    row.r22	 =   0.999995; // ;
    row.t0	 = 0.008135315; // ;
    row.t1	 = 0.02941671; // ;
    row.t2	 = 0.02658183; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        105; // ;
    row.r00	 =  0.9999903; // ;
    row.r01	 = 0.00365776; // -gamma ;
    row.r02	 = 0.0002157468; // beta  ;
    row.r10	 = -0.003659118; // gamma ;
    row.r11	 =  0.9999897; // ;
    row.r12	 = 0.001453842; // -alpha ;
    row.r20	 = -0.0002094672; // -beta  ;
    row.r21	 = -0.001456166; // alpha ;
    row.r22	 =   0.999997; // ;
    row.t0	 = 0.001767149; // ;
    row.t1	 =  0.0120411; // ;
    row.t2	 = 0.01877865; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        106; // ;
    row.r00	 =  0.9999912; // ;
    row.r01	 = 0.003687103; // -gamma ;
    row.r02	 = 0.001189605; // beta  ;
    row.r10	 = -0.003694421; // gamma ;
    row.r11	 =  0.9999779; // ;
    row.r12	 = 0.005020506; // -alpha ;
    row.r20	 = -0.001169684; // -beta  ;
    row.r21	 = -0.005026035; // alpha ;
    row.r22	 =   0.999985; // ;
    row.t0	 = 0.002376193; // ;
    row.t1	 = 0.00933057; // ;
    row.t2	 = 0.01770311; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x02",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        107; // ;
    row.r00	 =  0.9999815; // ;
    row.r01	 = 0.005771581; // -gamma ;
    row.r02	 = -0.0003755049; // beta  ;
    row.r10	 = -0.005771223; // gamma ;
    row.r11	 =  0.9999805; // ;
    row.r12	 = 0.0006222188; // -alpha ;
    row.r20	 = 0.0003807735; // -beta  ;
    row.r21	 = -0.0006207194; // alpha ;
    row.r22	 =   0.999997; // ;
    row.t0	 = -0.001481121; // ;
    row.t1	 =  0.0221727; // ;
    row.t2	 =  0.0145987; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x04",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        108; // ;
    row.r00	 =  0.9999879; // ;
    row.r01	 = 0.00448809; // -gamma ;
    row.r02	 = -0.0008884676; // beta  ;
    row.r10	 = -0.004487063; // gamma ;
    row.r11	 =  0.9999858; // ;
    row.r12	 = 0.001403279; // -alpha ;
    row.r20	 = 0.0008965685; // -beta  ;
    row.r21	 = -0.001399405; // alpha ;
    row.r22	 =  0.9999967; // ;
    row.t0	 = 0.02801111; // ;
    row.t1	 = 0.01756685; // ;
    row.t2	 = 0.01491801; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        109; // ;
    row.r00	 =  0.9999799; // ;
    row.r01	 = 0.006068123; // -gamma ;
    row.r02	 = 0.0002658662; // beta  ;
    row.r10	 = -0.006067298; // gamma ;
    row.r11	 =  0.9999774; // ;
    row.r12	 = 0.001819141; // -alpha ;
    row.r20	 = -0.0002530605; // -beta  ;
    row.r21	 = -0.001820278; // alpha ;
    row.r22	 =  0.9999963; // ;
    row.t0	 = -0.01686203; // ;
    row.t1	 = 0.02960524; // ;
    row.t2	 = 0.01658168; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        110; // ;
    row.r00	 =  0.9999891; // ;
    row.r01	 = 0.004249308; // -gamma ;
    row.r02	 = -0.000138438; // beta  ;
    row.r10	 = -0.004248003; // gamma ;
    row.r11	 =  0.9999877; // ;
    row.r12	 = 0.001724575; // -alpha ;
    row.r20	 = 0.0001473056; // -beta  ;
    row.r21	 = -0.001723005; // alpha ;
    row.r22	 =   0.999996; // ;
    row.t0	 = 0.002182793; // ;
    row.t1	 = 0.02314325; // ;
    row.t2	 = 0.01684074; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        111; // ;
    row.r00	 =  0.9999895; // ;
    row.r01	 = 0.00389128; // -gamma ;
    row.r02	 = 0.0001436468; // beta  ;
    row.r10	 = -0.003891074; // gamma ;
    row.r11	 =  0.9999895; // ;
    row.r12	 = 0.001372584; // -alpha ;
    row.r20	 = -0.0001371365; // -beta  ;
    row.r21	 = -0.001371742; // alpha ;
    row.r22	 =   0.999997; // ;
    row.t0	 = 0.009899111; // ;
    row.t1	 = 0.02587471; // ;
    row.t2	 = 0.006389071; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        112; // ;
    row.r00	 =  0.9999921; // ;
    row.r01	 = 0.003084458; // -gamma ;
    row.r02	 = 0.0001931054; // beta  ;
    row.r10	 = -0.003084838; // gamma ;
    row.r11	 =  0.9999908; // ;
    row.r12	 = 0.002135469; // -alpha ;
    row.r20	 = -0.000185837; // -beta  ;
    row.r21	 = -0.002134371; // alpha ;
    row.r22	 =   0.999995; // ;
    row.t0	 = -0.004556529; // ;
    row.t1	 = 0.008389604; // ;
    row.t2	 = 0.01650597; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        113; // ;
    row.r00	 =  0.9999922; // ;
    row.r01	 = 0.003059165; // -gamma ;
    row.r02	 = 0.000443795; // beta  ;
    row.r10	 = -0.003060584; // gamma ;
    row.r11	 =  0.9999909; // ;
    row.r12	 = 0.002497546; // -alpha ;
    row.r20	 = -0.0004360184; // -beta  ;
    row.r21	 = -0.002497076; // alpha ;
    row.r22	 =   0.999994; // ;
    row.t0	 = 0.004683031; // ;
    row.t1	 = 0.02449516; // ;
    row.t2	 = 0.01576189; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        114; // ;
    row.r00	 =   0.999997; // ;
    row.r01	 = 0.0008483028; // -gamma ;
    row.r02	 = -0.0005425434; // beta  ;
    row.r10	 = -0.0008482378; // gamma ;
    row.r11	 =  0.9999971; // ;
    row.r12	 = 0.0009102374; // -alpha ;
    row.r20	 = 0.0005428818; // -beta  ;
    row.r21	 = -0.0009080138; // alpha ;
    row.r22	 =   0.999997; // ;
    row.t0	 = 0.008860953; // ;
    row.t1	 = -0.01253775; // ;
    row.t2	 = 0.009591324; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        115; // ;
    row.r00	 =  0.9999965; // ;
    row.r01	 = 0.0008526764; // -gamma ;
    row.r02	 = -0.001662992; // beta  ;
    row.r10	 = -0.0008521205; // gamma ;
    row.r11	 =  0.9999963; // ;
    row.r12	 = 0.001167291; // -alpha ;
    row.r20	 = 0.001663033; // -beta  ;
    row.r21	 = -0.00116433; // alpha ;
    row.r22	 =   0.999995; // ;
    row.t0	 = 0.004970709; // ;
    row.t1	 = 0.01864682; // ;
    row.t2	 = 0.01303642; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x1a",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        116; // ;
    row.r00	 =  0.9999933; // ;
    row.r01	 = 0.002466419; // -gamma ;
    row.r02	 = 0.001834687; // beta  ;
    row.r10	 = -0.002471747; // gamma ;
    row.r11	 =  0.9999915; // ;
    row.r12	 = 0.002336626; // -alpha ;
    row.r20	 = -0.001830301; // -beta  ;
    row.r21	 = -0.002339984; // alpha ;
    row.r22	 =  0.9999927; // ;
    row.t0	 = -0.008432913; // ;
    row.t1	 = 0.04396511; // ;
    row.t2	 = 0.01406921; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"t",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        117; // ;
    row.r00	 =  0.9999975; // ;
    row.r01	 = -0.0001269045; // -gamma ;
    row.r02	 = 0.0001806276; // beta  ;
    row.r10	 = 0.000125853; // gamma ;
    row.r11	 =  0.9999903; // ;
    row.r12	 = 0.003546208; // -alpha ;
    row.r20	 = -0.000182764; // -beta  ;
    row.r21	 = -0.003545494; // alpha ;
    row.r22	 =   0.999992; // ;
    row.t0	 = 0.01359838; // ;
    row.t1	 = -0.0120122; // ;
    row.t2	 = 0.03519896; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        118; // ;
    row.r00	 =  0.9999976; // ;
    row.r01	 = 0.00128743; // -gamma ;
    row.r02	 = -0.0001071914; // beta  ;
    row.r10	 = -0.00128681; // gamma ;
    row.r11	 =   0.999994; // ;
    row.r12	 = 0.002022277; // -alpha ;
    row.r20	 = 0.0001079884; // -beta  ;
    row.r21	 = -0.002022012; // alpha ;
    row.r22	 =   0.999996; // ;
    row.t0	 = -0.01349255; // ;
    row.t1	 = 0.02591805; // ;
    row.t2	 =  0.0296642; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        119; // ;
    row.r00	 =  0.9999963; // ;
    row.r01	 = 0.001850876; // -gamma ;
    row.r02	 = -4.777696e-05; // beta  ;
    row.r10	 = -0.001850644; // gamma ;
    row.r11	 =  0.9999927; // ;
    row.r12	 = 0.002428896; // -alpha ;
    row.r20	 = 5.050947e-05; // -beta  ;
    row.r21	 = -0.002429233; // alpha ;
    row.r22	 =   0.999995; // ;
    row.t0	 = -0.003376309; // ;
    row.t1	 = 0.01226437; // ;
    row.t2	 = 0.02031784; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
memset(&row,0,tableSet->GetRowSize());
    row.Id	 =        120; // ;
    row.r00	 =  0.9999974; // ;
    row.r01	 = 0.00120876; // -gamma ;
    row.r02	 = -0.0007289171; // beta  ;
    row.r10	 = -0.001206427; // gamma ;
    row.r11	 =  0.9999947; // ;
    row.r12	 = 0.002075691; // -alpha ;
    row.r20	 = 0.0007298829; // -beta  ;
    row.r21	 = -0.002075773; // alpha ;
    row.r22	 =   0.999995; // ;
    row.t0	 =  0.0150816; // ;
    row.t1	 =  0.0462007; // ;
    row.t2	 = 0.01432413; // ;
    row.sigmaRotX	 =     0.0001; // ;
    row.sigmaRotY	 =     0.0001; // ;
    row.sigmaRotZ	 =     0.0001; // ;
    row.sigmaTrX	 =     0.0001; // ;
    row.sigmaTrY	 =     0.0001; // ;
    row.sigmaTrZ	 =     0.0001; // ;
 memcpy(&row.comment,"\x00",1);// 
tableSet->AddAt(&row);
// ----------------- end of code ---------------
 return (TDataSet *)tableSet;
}