ユーザ用ツール

サイト用ツール


サイドバー

Menu

Latest

study:software:root:math

Math

この辺は公式の各クラスのreferenceを見たほうが速いと思う。

TMath

TRandom

Vector

  • std::vectorとは違って、こちらは数学的なvector(物理vector)のクラス
  • 下のようなコライダー物理で便利なメソッドが定義されている。ぜひ使うべき。
    • Δφ≡φ1-φ2 mod 2*πを求める
    • ΔR=sqrt(Δη*Δη+Δφ*Δφ)を求める
    • 4vectorが(Pt,η,φ,m)で定義可能
    • ベクトル和、差、スカラー積、ベクトル積、回転、直交ベクトルを出す、射影もできる
  • 実はvectorクラスはTObjectを継承している
  • rootの物理ベクトルは下の5つが用意されている。
TVector2                                                        
TVector3                                                        
TRotation                                                       
TLorentzVector                                                  
TLorentzRotation

TVector2

TVector2 v(0,1);
TVector2 v2(2,3);
v.DeltaPhi(&v2);

下のメソッドは静的メンバ関数なので実体なしで使える。

TVector2::Phi_mpi_pi(φ);//[-pi,pi]
TVector2::Phi_0_2pi(φ);//[0,2*pi]

TVector3

3次元Vectorを扱うクラス。

TVector3 v(1,2,3);

TVector3 v;
v.SetMagThetaPhi(r,θ,φ);
v.SetPtEtaPhi(Pt,η,φ);
v.SetPtThetaPhi(Pt,θ,φ);

v.X();
v.Y();
v.Z();
v.Phi();
v.Theta();
v.PseudoRapidity();//=0.5*log( (Mag()+fZ)/(Mag()-fZ) )
v.Mag();//=sqrt(x*x+y*y+z*z)
v.Mag2();//=x*x+y*y+z*z
v.Perp();//=sqrt(x*x+y*y)
v.Perp2();//=sqrt(x*x+y*y)

v.DeltaR(&v2);//sqrt(Δη*Δη+Δφ*Δφ)

DeltaRはsqrt(Δx*Δx+Δy*y+Δz*Δz)ではないことに注意。

TLorentzVector

4vectorを扱う便利なクラス。(x,y,z,t)と(px,py,pz,E)の両方のvectorを扱いやすいように、全く同じメソッドが二種類分用意されている。すばらしい。

TLorentzVector v;// (0,0,0,0)で初期化される
TLorentzVector v(1., 1., 1., 1.);
TLorentzVector v(TVector3(1., 2., 3.),4.);

v.SetPtEtaPhiE(Pt,η,φ,E);
v.SetPtEtaPhiM(Pt,η,φ,M);
v.SetPxPyPzE(Px,Py,Pz,E);
v.SetXYZM(x,y,z,M);
v.SetXYZT(x,y,z,t);

v.Pt();
v.Eta();
v.Phi();
v.M();
v.E();

利用方法

ATLAS(に限らないと思うが)では各粒子とJetのPt,eta,phiの情報をいれたBranchをTTreeにいれているので、このクラスがとても便利。

例えばa→bcというchannelでaのMassをreconstructionしたい場合は、それぞれの4vectorを足せばいいので、

TLorentzVector b;
b.SetPtEtaPhiM(b_Pt,b_η,b_φ,b_M);
TLorentzVector c;
c.SetPtEtaPhiM(c_Pt,c_η,c_φ,c_M);
TLorentzVector a = b + c;
a.M();//aのMassがreconstructionされる

2つの粒子の位置関係を使って解析を行うということもとても簡単にできる。

b.DeltaR(&c);//ΔRを求める
b.DeltaPhi(&c);//Δφを求める

study/software/root/math.txt · 最終更新: 2013/12/03 11:16 by kamo

ページ用ツール