- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 也许需要更新ROOT手册。 * * * 可以直接查看类的定义得到用法。注释文档非常详尽。 * * * Keep it. * 2021/3/26 * TTree的定义 参见 创建TTree,并设置Branch,比如: Int_t RunID; TTree *t1 = new TTree(t1,test tree); TBranch *br = t1-Branch(RunID,RunID,RunID/I); 构造函数: TTree(const char* name, const char* title, Int_t splitlevel = 99); Branch成员函数: virtual TBranch*Branch(const char* name, void* address, const char* leaflist, Int_t bufsize = 32000); 名称 描述 Branch可以是单独的变量,也可以是一串变量,也可以是定长或不定长数组,也可以是C结构体,或者类对象(继承自TObject,如TH1F对象)。 2021/3/26 * void ex41() { TFile *f = new TFile(tree1.root,recreate); TTree *t1 = new TTree(t1,test tree); gRandom-SetSeed(0); Float_t px,py,pz; Double_t random; Int_t i; //Set the Branches of tree t1-Branch(px,px,px/F); t1-Branch(py,py,py/F); t1-Branch(pz,pz,pz/F); t1-Branch(random,random,random/D); t1-Branch(i,i,i/I); for (i=0;i5000;i++) { gRandom-Rannor(px,py); pz = px*px + py*py; random = gRandom-Rndm(); t1-Fill();//Fill tree } t1-Write(); } 如何写一个简单的TTree$EXAMPLEDIR/ex41.C 运行:root -l ex41.C 或ROOT环境中: .x ex41.C 定义tree,参数分别为tree的名称和描述 设置Branch,参数分别为Branch的“名称”、“地址”以及“leaf列表和类型”。这里只有一个leaf,如果多个则用冒号分开。 常用类型:C,I,F,D分别表示字符串、整型、浮点型和双精度型,参见ROOT手册第12章 为每个leaf赋值,每个事例结束时填充一次。这里一共填充5000事例。 好的做法是实验一个事例填充一次!!! 将tree写入root文件中存盘 2021/3/26 * 查看Tree的信息 root -l tree1.root 打开root文件 root[1].ls 查看文件信息, 发现TTree t1 root[2]t1-Show(0); 显示第0个event的信息 root[3]t1-GetEntries() 总事例数 root[4]t1-Scan(); root[5]t1-Print(); root[6]t1-Draw(px); 2021/3/26 * 查看Tree的信息(续) 也可以 root -l 进入root root[0]TFile *f1=new TFile(tree1.root); root[1]t1-Draw( sqrt(px*px+py*py) ); root[2]TH1F *h1; root[3]t1-Draw(pxh1); root[4]t1-Draw(py,px0,sames); root[5]t1-Draw(py,,sames); root[5]t1-StartViewer() 2021/3/26 * 查看Tree的信息(2) TBrowser b TBrowser打开一个浏览器,从中可以选择root文件,并一层层进入其中的tree,branch以及leaf。类似于Windows下的Explorer。 这是当前目录,双击进入并选择要打开的root文件,以及文件中的tree,最后可以看到tree的各个leaf 双击leaf可以查看leaf的直方图 适合初步浏览,但不适合具体的数据分析处
文档评论(0)