,parametervalue>)方法实现的。这是一个例子root[13]TF1f2("f2","[o]*sin([1]*x)/x",0,,19.)root[14]f2SetParameter(o,1)root[15f2SetParameter(1,1);root[16]f2Draw(;当然,这个版本显示的结果与初始版本相同。尝试播放参数并再次绘制函数。TF1关具有大量非常有用的方法,包括积分和区分。要充分利用此类和其他ROOT类,请访问nternet上的文档http://root.cern.ch/drupal/content/reference-guide.Root中的公式使用类FOrmula进行评佔,因此还要查看相关的类文档以获取示例,实现的函数和语法您一定要将本指南下载到您自己的系统,以便随时随地使用要在上面的示例中稍微扩展一下,请考虑一个您想要定义的更复杂的函数。您也可以使用标准C或C++代码执行此操作。考虑下面的示例,该示例计算并显示由落在多个狄缝上的光产生的干涉图案。请不要在ROOT命令行输入以下示例,有·种更简单的方法:桷保磁盘上有文件slits,c,并在shelli中键入rootslits.C这将启动root并使其读取“宏”sis,C,即文件中的所有行将一个接一个地执行。//ExampLedrawingtheinterferencepatternoflight/fallingonagridwithnslitsandratiorofslit//widthoverdistancebetweenslitsautopiTMath:Pi(;functioncodeinCdoublesingle(double*x,double*par)treturnpow(sin(pi*par[0]*x[0])/(pi*par[0]*x[0]),2)doubleslite(double*x,double*par)freturnpow(sin(pipar[1]xlo]/sin(pix[0]),2);doubleslit(double*x,double*par)freturnsingle(x,par)*slite(x,par);/Thisisthemainprogramvoidslits()(floatr,nsj//requestuserinputcout<SetNpx(500);setparameters,asreadinaboveFnslit->SetParameter(o,r)Fnslit->SetParameter(l,ns);//drawtheinterferencepatternforagridwithnsliFnslit->Draw()Fnslit3532,51.505224参数为0.2和2的sitC输出图像该示例首先要求用户输入,即狹缝宽度与狭缝距离的比率和狭缝的数量。输入此信息后,您应该看到如图2.1所示的图形输出这是一个比我们之前看到的更复杂的例子,所以花一些时间仔细分析它,你应该在继续之前理解它。让我们详细介绍一下:第7-18行定义了C一代码中的必要函数,分成三个独立的函数,如所考虑的问题所示完仝干涉图案由函数的乘积给出,该函数取决于狭缝的宽度和距离的比率,并且第二个取决于狄缝的数量。对我们来说更重要的是定义这些函数的接口,使它们可用于ROOT类TF1:第一个参数是指向x的指针,第二个参数指向参数数组。主程序从第21行开始,定义了ⅴoid类型的函数slits()。在询问用户输入之后,使用开头给出的C类型函数定义ROOI函数。我们现在可以使用TF1类的所有方法来控制我们函数的行为-很好,不是吗?如果您愿意,可以在TF1实例中轻松扩展示例以使用函数双单,或具有窄狄缝的网格,区数nsit0来绘制单个狭缝的干涉图案。在这里,我们使用了一个宏,某种轻量级稈序,与ROOT,Cing一起分发的解释器能够执行。这是一个非常特殊的情况,因为C++本身不是一种解释语言!还有很多话要说:章确实是专门用于宏的。-IMDN开发者社群-imdn.cn"> ,parametervalue>)方法实现的。这是一个例子root[13]TF1f2("f2","[o]*sin([1]*x)/x",0,,19.)root[14]f2SetParameter(o,1)root[15f2SetParameter(1,1);root[16]f2Draw(;当然,这个版本显示的结果与初始版本相同。尝试播放参数并再次绘制函数。TF1关具有大量非常有用的方法,包括积分和区分。要充分利用此类和其他ROOT类,请访问nternet上的文档http://root.cern.ch/drupal/content/reference-guide.Root中的公式使用类FOrmula进行评佔,因此还要查看相关的类文档以获取示例,实现的函数和语法您一定要将本指南下载到您自己的系统,以便随时随地使用要在上面的示例中稍微扩展一下,请考虑一个您想要定义的更复杂的函数。您也可以使用标准C或C++代码执行此操作。考虑下面的示例,该示例计算并显示由落在多个狄缝上的光产生的干涉图案。请不要在ROOT命令行输入以下示例,有·种更简单的方法:桷保磁盘上有文件slits,c,并在shelli中键入rootslits.C这将启动root并使其读取“宏”sis,C,即文件中的所有行将一个接一个地执行。//ExampLedrawingtheinterferencepatternoflight/fallingonagridwithnslitsandratiorofslit//widthoverdistancebetweenslitsautopiTMath:Pi(;functioncodeinCdoublesingle(double*x,double*par)treturnpow(sin(pi*par[0]*x[0])/(pi*par[0]*x[0]),2)doubleslite(double*x,double*par)freturnpow(sin(pipar[1]xlo]/sin(pix[0]),2);doubleslit(double*x,double*par)freturnsingle(x,par)*slite(x,par);/Thisisthemainprogramvoidslits()(floatr,nsj//requestuserinputcout<SetNpx(500);setparameters,asreadinaboveFnslit->SetParameter(o,r)Fnslit->SetParameter(l,ns);//drawtheinterferencepatternforagridwithnsliFnslit->Draw()Fnslit3532,51.505224参数为0.2和2的sitC输出图像该示例首先要求用户输入,即狹缝宽度与狭缝距离的比率和狭缝的数量。输入此信息后,您应该看到如图2.1所示的图形输出这是一个比我们之前看到的更复杂的例子,所以花一些时间仔细分析它,你应该在继续之前理解它。让我们详细介绍一下:第7-18行定义了C一代码中的必要函数,分成三个独立的函数,如所考虑的问题所示完仝干涉图案由函数的乘积给出,该函数取决于狭缝的宽度和距离的比率,并且第二个取决于狄缝的数量。对我们来说更重要的是定义这些函数的接口,使它们可用于ROOT类TF1:第一个参数是指向x的指针,第二个参数指向参数数组。主程序从第21行开始,定义了ⅴoid类型的函数slits()。在询问用户输入之后,使用开头给出的C类型函数定义ROOI函数。我们现在可以使用TF1类的所有方法来控制我们函数的行为-很好,不是吗?如果您愿意,可以在TF1实例中轻松扩展示例以使用函数双单,或具有窄狄缝的网格,区数nsit0来绘制单个狭缝的干涉图案。在这里,我们使用了一个宏,某种轻量级稈序,与ROOT,Cing一起分发的解释器能够执行。这是一个非常特殊的情况,因为C++本身不是一种解释语言!还有很多话要说:章确实是专门用于宏的。 - IMDN开发者社群-imdn.cn">
登录
首页 » Others » 高能物理分析软件ROOT的入门使用方法

高能物理分析软件ROOT的入门使用方法

于 2020-06-28 发布
0 103
下载积分: 1 下载次数: 1

代码说明:

root是cern开发的数据分析软件,根据cern官网的A ROOT Guide For Beginners英文版翻译的中文文档,适合初学者了解root软件的使用723存储任意类型的 N-tuples…724处理跨文件的 n-tuple7.2.5对进阶用户:使用送择器即本处理树…547.2.6对干进阶价用户:使用 PROOF lite进行多核处理72.7关于 N-tuples的优化8 ROOT in python:::::::::::t·::::··:598. 1 PYROOT598.1. 1 More Python-less C++8.2自定义代码:从C+到 Python9结束语…64References64摘要ROOT是一个用于数据分析和I/O的软件框架:一个强大的工只,可以应对最先进的科学数据分析的典型任务。它的突出特点包括高级图形用户界面,非常适合交互式分析,C++编程语言的解释器,快速高效的原型设计和C艹+对象的持久性杋制,还用于写入大型强了对撞机实验记录的每年PB级数据(1PB=1024TB译者注)。本入门指南说明了ROOT的主要特征,这些特征与数据分析的典型问题相关:输入和绘制测量数据和分析功能的拟合。原创作者-D. Piparo-G. Quast-M,cisc译者注:本文均是 Google翻译结果,仅对代码和板式作调整,欢迎修改分享软件背景与简介欢迎来到数据分析ROOT!测量与理论模型的比较是实验物理学中的标准仟务之一。在最简单的情况下,“模型”只是提供测量数据预测的函数。通常,模垩取决于参数。这种模型可以简单地表示“电流I与电压U成比例”,并且实验者的任务包括从一组测量中确定电阻R作为第一步,需要数据的可视化。接下来,通常必须应用一些操作,例如,校正或参数转换。通常,这些操作是复杂的,并且应该提供强大的数学函数和程序库-例如,考虑应用于输入光谱的积分或峰值搜索或傅立叶变换以获得模型描述的实际测量偵。实验物理学的一个特点是影响每个测量的不可避免的不确定性,可视化工具必须包括这些。在随后的分析中,必须正确处理错误的统计性质作为最后一步,将测量值与模型进行比较,并且需要在此过程中确定自由模型参数。有关适合数据点的函数(模型)的示例,请参见图1.1。有儿种标准方法可供使用,数据分析工具应能方便地访问其中一种以上。还必须提供量化测量和模型之间一致性水平的方法。通常,要分析的数据量很大-考虑借助计算机累积的细粒度测量。因此,可用工具必须包含易于使用且有效的方法来存储和处理数据在量子力学中,模型通常仅根据许多参数预测测量的概率密度函数(“pdf),并且实验分析的目的是从观察到的频率分布中提取参数,其中观察测量。这种测量需要生成和可视化频率分布的装置,所谓的直方图和严格的统计处理,以从纯粹的统计分布中提取模型参数。预期数据的模拟是数据分析的另一个重要方面。通过重复生成“伪数据”,其以与用于真实数据的预期相同的方式进行分析,可以验证或比较分析过程。在许多情况卜,测量误差的分布并不是精确已知的,并且模拟提供了测试不同假设的景响的可能性。满足上述所有要求的强大软件框架是ROOT,这是个由日内瓦欧洲核了研究中心欧洲核研究组织协调的开源项目ROOT非常灵活,既可以在自己的应用程序中使用编程接口,也可以提供用于交互式数据分析的图腦用户界面。木文档的目的是作为初学者指南,并根据学生实验室中解决的典型问题为您自己的用例提供可扩展的示例。本指南有望为您未来科学工作中更复杂的应用奠定基础,建立在现代,最先进的数据分析上具之上本指南以教程的形式向您介绍ROOT包。根据“边做边学”的原则,这个目标将通过具体的例子来完成。也正因为这个原因,本指南无法涵盖ROOT包的所有复杂性。然而,一日您对以卜章节中介绍的概念有信心,您将能够欣赏ROOT用户指南( The Root Users guide2015)并浏览类参考(根参考指南2013)以査找所有详细信息您可能会感兴。您甚至可以查看代码本身,因为ROOT是一个免费的开源广品。与本教程并行使用这些文档!ROOT数据分析框架本身是编写的,并且在很大程度上依赖于C++编程语言:需要些关于C++的知识。如果您不了解这种语言的含义,Js可以利用有关C++的大量文献。ROOT可用于许多平台( Linux, Mac osx, Windows….),但在本指南中我们将隐含地假设您使用的是 Linux。你需要做的第一件事就是安装ROOT,不是吗?获取最新的ROOT版本非常简单。只需在此网页htp:/ root, cern.ch/ downloading-root上寻找“专业版”。您将找到针对不同体系结构的预编译版木,或者您自凵编译的ROOT源代码。只需拿起您需要的味道并按照安装说明操作即可。让我们深入了解ROOT!ROOT基础既然你凵经安装了ROOT,那么你止在运行的这个交互式 shell是什么?就像这样:ROOT带来了双重功能。它有一个宏的解释器(Cing( What is Cling”2015)),您可以从命令行运行或像应用程序一样运行。但它也是一个可以评估任意语句和表达式的交互式 shell这对于调试,快速黑客攻击和测试非常有用。我们先来看一些非常简单的例子2.1ROOT作为计算器您甚至可以使用ROOT交互式she代替计算器!使用该命令启动ROOT交互式shelroot在你的Liux机器上。提示应该很快出现:root「8让我们来看看这里显示的步骤root [0] 1+1(int)2root[1]2*(4+2)/12(doub1e)1.0000root [2] sqrt(3.( double)1.732051root[3]1>2(bool) falseroot [4] TMath: Pi()( double)3.141593root [5] TMath: Erf( 2)( double).222703不错。您可以看到,ROOT不仅可以输入C++语句,还可以输入存在于 MAth命名空间中的高级数学函数。现在让我们做一些更详尽的事情。一个众所周知的几何系列的数字小例root [6 double X=5(double)0.500000root [7] int N=30(int)30root [8] double geom series=0(doub1e)8.099root [9] for (int i=0; i

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 基于matlab的zigbee仿真
    基于matlab的zigbee仿真,基于matlab的zigbee仿真,基于matlab的zigbee仿真
    2020-12-06下载
    积分:1
  • 电源LM2596原理图和PCB图.rar
    LM2596的原理图LM2596的PCB图
    2021-05-07下载
    积分:1
  • 指纹识别matlab实现
    指纹识别matlab实现,源代码带有大量注解,适合作为毕业设计,内附有毕业设计论文模板参考
    2020-12-07下载
    积分:1
  • 飞行仿真建模
    针对飞机对象,介绍飞行仿真系统的建模仿真过程。完成飞机模型的搭建,飞机建模培训教程。
    2020-11-29下载
    积分:1
  • 禁用并启用本地连接.bat
    有多个内网,局域网复杂时候,有时候开机会获取别的ip导致上不了网,需要禁用再启用本地连接才行。本批处理运行时候会最小化。另外网卡名字不是默认本地连接的话,需要修改批处理内 本地连接 为再用网卡名。譬如本地连接2
    2021-05-06下载
    积分:1
  • 经典进化算法SPEA2
    SPEA2是多目标进化算法的经典程序,对于DTLZ序列测试函数有较好的求解性能。
    2020-11-29下载
    积分:1
  • 网上预约挂号系统设计报告
    目录:1.体系结构 31.1体系结构 31.1.1B/S体系结构 31.2系统运行环境 31.2.1 网络结构图 31.2.2 硬件环境 31.2.3软件环境 32.界面设计 42.1后台界面设计 42.2前台界面计 63.数据模型 63.1数据库的概念结构模型设计 63.2数据库的逻辑结构模型设计 63.3数据库管理物理结构模型设计 84.模块设计 94.1病人登录端模块设计 124.1.1表示层设计 124.1.2控制层 144.2管理员登录模块设计 144.2.1表示层设计 144.2.2控制层 154.3专家查询模块设计 164.3.1表示
    2020-11-30下载
    积分:1
  • XposedBridgeApi从54到89
    用于Android XposedBridge开发的资源包,其中包含几个不同版本的XposedBridgeApi.jar,包内含:XposedBridgeApi-54.jar、XposedBridgeApi-82.jar、XposedBridgeApi-87.jar、XposedBridgeApi-89.jar希望对你有帮助,谢谢!
    2020-07-02下载
    积分:1
  • 电力系统状态估计-最小二乘法-matlab
    p.s.本代码已重新修改啦~目前还在CSDN审核中,您可通过GitHub下载重构代码~https://github.com/Cyyjenkins/powergrid-state-estimation电力系统状态估计(电力网系统辨识)-最小二乘法-matlabtxt文件为IEEE30节点电力网数据导入其它电力网数据时,可按txt文档内格式保存数据,也可修改m文件代码辨识后的数据将会存储在oStateEstimation.txt文件内
    2020-11-28下载
    积分:1
  • 微机原理/汇语言 多功能信号/波形发生器课设计
    本系统设计一个由8088CPU为核心的多功能波形发生器。具体要求如下。 ①.该发生器能在操作人员控制下输出正弦波、方波、三角波或锯齿波波形。 ②.这些波形的极性、周期和占空比(对矩形波而言)等可由操作人员设置和修改(信号频率可调节)。通过示波器显示、检验产生的波形。设计相应的D/A、键盘、显示接口电路,说明工作原理,编写程序及程序流程图。可在线键盘参数设置,其中控制输出部分采用D/A0832模拟量输出。设计要求:设计出电路原理图,说明工作原理,编写程序及程序流程图。资源中,报告,proteus仿真和代码都有
    2020-11-30下载
    积分:1
  • 696524资源总数
  • 103938会员总数
  • 55今日下载