- 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在数据分
析中的应用(2)
上讲回顾
ROOT 基本概念(C++,实验数据处理)
安装与登录ROOT以及体验
设置ROOT的3个环境变量$ROOTSYS,$PATH,$LD_LIBRARY_PATH
ROOT的语法简介
完全兼容c++语法,Int_t,Float_t,Double_t,...
数学函数,直方图,随机数,文件,散点图舍选法等
TF1,TF2,TF3,TFile,TH1I,TH1F,TH1D,TH2F,gRandom,...
补充提示1:TH1F *h1=new TH1F(h1,,100,0.,1.);
h1-GetBinContent(i);//i=0,1,...,101.
可以得到102个值:i=0 对应underflow
i=101对应 overflow
i=1,2,...,100为相应bin的值。
补充提示2:gRandom-SetSeed(seed);需要明显给定seed。如
gRandom-SetSeed(0);
2
本讲要点
ROOT中tree的概念(类TTree)
什么是tree,为什么tree存取数据
如何定义、填充TTree并写入文件
如何读取实验数据填充为TTree
如何查看或读取ROOT文件中的tree
TChain:
同时处理多个相同root文件
(root文件中含有相同的tree,总事例不超过1012 个)
chain-Add(/data/sns/090324_01.root);
chain-Add(/data/sns/090325*.root);
3
root 文件与它的 tree 概念
一个 root 文件就像 UNIX 中的一个目录,它可以
包含目录和没有层次限制的目标模块。
即,在可以在root文件创建不同的目录子目录,
目录中存放不同的类对象或普通数据。
如要求存储大量的同类目标模块,需要引入概念:
TTree : 减小磁盘空间和增加读取速度方面被优化
TNtuple :只能存储浮点数的TTree。尽量避免使用。
TTree 减少了每个目标模块的header,但仍保留类
的名字,而每个同类的目标模块名字可以被压缩。
TTree 采用了 branch 的体系,每个 branch 的读取
可以与别的 branch 无关。
可以把tree看成root文件中的子目录,
branch看成子目录中的文件或者子目录。
4
为什么使用TTree
适用于大量的类型相同的对
象
可以存储包括类对象、数组
等各种类型数据
一般情况下,tree的
Branch,Leaf信息就是一
个事例的完整信息
有了tree之后,可以很方便
对事例进行循环处理。
占用空间少,读取速度快
TTree是ROOT最强大的概念之一
原创力文档


文档评论(0)