粒子物理与核物理实验中的数据分析ppt课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《粒子物理与核物理实验中的数据分析ppt课件.ppt》由会员分享,可在线阅读,更多相关《粒子物理与核物理实验中的数据分析ppt课件.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、粒子物理与核物理实验中的数据粒子物理与核物理实验中的数据分析分析杨振伟清华大学第三讲:ROOT在数据分析中的应用(1)2上讲摘要上讲摘要nC+基本概念 类的定义与实现.nLinux下用g+编译C+程序 g+ -o hello.exe -I ./src/*.cc 当前目录下输出 指定include目录 源文件 可执行文件hello.exe 如-I./include n用makefile进行C+编译 gmake 进行编译 gmake clean 清除编译结果n使用ROOT脚本 root -l hello.C3本讲要点本讲要点n什么是ROOT?n登录ROOT环境和体验中心nROOT的语法简介nROO
2、T的函数,直方图,随机数,文件,散点图 TF1,TH1I,TH1F,TH1D,TRandom(gRandom) TF2,TF3,TH2F,. TFile4什么是 ROOT ?ROOT: Executive Summary. provides a set of OO frameworks with all the functionality needed to handle and analyse large amounts of data in a very efficient way. (摘自http:/root.cern.ch/root/Mission.html)关键字:面向对象的框架、所
3、有功能、海量数据、非常有效结论:很不谦虚!5安装ROOT(1)到ROOT主页下载需要的版本到指定目录。比如要在SLC3系统的/projects/yangzw目录下安装5.16.00版本(注:最新版本的ROOT已经不为SLC3提供预编译版本了,而为SLC4和SLC5提供)cd /projects/$USER (注:对用户yangzw, $USER=yangzw)wget ftp:/root.cern.ch/root/root_v5.16.00.Linux.slc3.gcc3.2.3.tar.gztar zxvf root_v5.16.00.Linux.slc3.gcc3.2.3.tar.gz设置
4、ROOT的环境变量export ROOTSYS=/projects/$USER/rootexport PATH=$ROOTSYS/bin:$PATH export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH可以把上面这3行放到$HOME/.login或者.bashrc或者.tcshrc文件中,这样每次登录到Linux系统,系统就自动设置ROOT的环境变量这样,进入linux系统之后,在终端提示行输入: root 或 root -l即可进入ROOT环境。6安装ROOT(2)如果是其它发行版的Linux,首先查看是否ROOT网站上是否有预编译好的程序
5、包,一般情况下,官方提供SLC4和SLC5在各种不同CPU以及不同gcc版本下的二进制包,ROOT官网也提供包括Solaris以及Mac OS X以及Windows下的预编译包。如果没有适合你的操作系统的预编译包,就需要到官网http:/root.cern.ch 下载ROOT的源代码,按照安装指南用gmake编译安装。Window用户在官网下载相应的.msi文件直接安装即可。Ubuntu8.10用户可以到下面网页下载5.22.00版本的二进制代码,根据Readme.txt说明安装使用。7安装ROOT(3)实际上,Linux下安装程序的基本套路很简单:1. 如果需要用源码编译 a) 下载源码压缩
6、包 b)解压缩 c)编译 d)设置环境变量(如果需要)2. 如果已有预编译的包 a)下载 b)解压缩 c)设置环境变量(如果需要)3. yum/apt-get直接用网络源安装(预编译的包)4. .8登录ROOT环境n运行 rootn退出 root0.qn键入 help 指令,如 root0? root1.ls root2.!lsROOT环境其它常用指令:.L macro.C Load文件macro.C.x macro.C 执行文件macro.C.ls 显示ROOT当前环境的所有信息.! ls 显示Linux系统当前目录的所有信息注:ROOT环境中,ROOT指令都以“.”开头 系统指令都以“.!
7、”开头 9ROOT体验中心(1)在$ROOTSYS/tutorials目录下,有五花八门的例子。以后会经常与这个目录打交道。先尝试一下吧。尝试方法: cd /projects/$USER cp -r $ROOTSYS/tutorials . (注意不要把这个.漏掉了) cd tutorials 然后找个感兴趣的目录/文件, 执行ROOT脚本,比如 cd roofit root -l RoofitDemo.C小技巧提示:根据关键字xxxx从tuotorials的例子中寻找线索 grep -sirn xxxx $ROOTSYS/tutorials比如找随机数用法:grep -sirn random
8、 $ROOTSYS/tutorialsRoofit示例10ROOT体验中心(2)还可以在ROOT网站上看到一些ROOT图片:http:/root.cern.ch/drupal/image当然,ROOT的功能不只是做图,它不是一个作图工具。跟数据分析有关的东西,基本都是ROOT的擅长;跟物理有关的很多东西,ROOT基本都可以做得很好: 事例产生、探测器模拟、事例重建、数据采集、数据分析11ROOT体验中心(3-1)日本超级神冈中微子实验事例显示(by zhanghb) 超大的水池,内外装满了光电倍增管,1万多个12ROOT体验中心(3-2)仅显示被击中的光电倍增管13ROOT体验中心(3-3)平
9、面展开显示14ROOT体验中心(3-4)平面展开,鼠标缩放,显示鼠标位置光电倍增管信息15ROOT语法(1)基本信息nROOT使用C+语法 一段C+程序可以直接在ROOT环境运行n数据类型重定义 int Int_t float Float_t double Double_t .nROOT的类都以T开头 如TFile, TH1F, TTree, .n详细规定参阅ROOT手册(5.21版)第18-20页,关于Convention和Global Variables部分。n可以直接在ROOT环境中运行macro文件(自动调用cint编译器),也可以在makefile中设置好相关参数用g+编译得到可执行
10、文件运行。16ROOT语法(2)直方图类ROOT中有众多已经定义好的类可供使用,比如直方图家族17ROOT语法(2)其它类其它常用类数学函数:TF1, TF2, TF3.图 形:TGraph, TGraphErrors, TGraph2D,.文 件:TFile画 布:TCanvas, TPad, .随 机 数:TRandom,TRandom1,TRandom2,TRandom3 周期 109 10171 1026 106000速度(ns/call) 34 242 37 45 比如跟数据结构和分析有关的: TTree, TChain, .参见 http:/root.cern.ch/root/ht
11、ml526/ClassIndex.html (谨代表*邀请各位光临敝舍。 注:*=yangzw)还有很多全局函数,多数以g开头,如:gRandom, gROOT, gStyle, gPad, gEnv, gFile.速度与速度与CPU和编译器有关和编译器有关18ROOT语法(3)随机数gRandom是指向当前随机数产生子的指针,该产生子默认为TRandom3对象。http:/root.cern.ch/root/html522/TRandom.html(为什么看TRandom?因为TRandom1/2/3都继承自TRandom)gRandom-Binomial(ntot, p): 二项分布gRa
12、ndom-BreiWigner(mean, gamma) Breit-Wigner分布gRandom-Exp(tau) 指数分布gRandom-Gaus(mean,sigma) 高斯分布gRandom-Integer(imax) (0,imax-1)随机整数gRandom-Landau(mean,sigma) Landau分布gRandom-Poisson(mean) 泊松分布(返回int)gRandom-PoissonD(mean) 泊松分布(返回double)gRandom-Rndm() (0,1均匀分布gRandom-Uniform(x1,x2) (x1,x2均匀分布.使用前可根据需要改
13、变随机数种子和机制思考:什么情况下需要PoissonD(mean)?19ROOT脚本文件示例(1):Macro文件/home/yangzw/examples/Lec3/ex31.C用花括号括起来,后缀名一般用”.C” cout Hello ROOT endl; int Num=5; for (int i=0;iNum;i+) cout i= i Fit(gaus); /对直方图进行高斯拟合对直方图进行高斯拟合TF1 *f1=new TF1(f1,gaus,-5,5);23数学函数的定义方式(3)ROOT中自定义含未知参数的数学函数q利用c+数学表达式TF1* f1 = new TF1(f1,0
14、*sin(1*x)/x,0,10);q利用c+数学表达式以及ROOT预定义函数TF1* f1 = new TF1(f1,gaus(0)+3*x,0,3);q利用自定义的c+数学函数Double_t myFun(Double_t *x, Double_t *par) Double_t xx=x0; Double_t f=par0*exp(-xx/par1); return f;TF1* f1 = new TF1(f1,myFun,0,10,2);指定参数数目指定参数数目定义了含参的定义了含参的TF1对象对象f1之后,可以设定参数初值,比如之后,可以设定参数初值,比如f1-SetParameter
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 粒子 物理 核物理 实验 中的 数据 分析 ppt 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内