编辑: hgtbkwd | 2017-09-16 |
1 刻度 写成 root 或 其它格式 把电学量变为物理量并做各种刻度与修正.
把分立测量联系起来给出四动量等 问题在于我们如何知道所做的工作是正确的? * * 模拟需要做的主要工作 定义探测器几何(具有有限接受范围的探测器) 指定探测器的物质( 有用的 / 没用的 各种材料) 指定物理过程与粒子(什么东西在探测器中干了什么) 产生原始事例(模拟重复实验n次) 数据收集和分析(取出探测器可以获得的信息并处理分析) 除了最后的分析,其余都可以由Geant4负责处理最后一步一般由ROOT处理 * * 其应用领域主要包括:高能物理、核物理、加速器物理以及医学和空间科学的研究等. 什么是 Geant4? 简单地说,Geant4 是模拟粒子穿过物质的工具包. 提供了探测器模拟的完整工具:几何,探测器响应,运行、事例以及径迹管理、图形显示、用户接口等. 提供了极为丰富的可供选择的物理过程 详见http://geant4.cern.ch/support/about.shtml 参考 资料 1) http://geant4.cern.ch 2)Nuclear Instruments and Methods in Physics Research A
506 (2003) 250-303, and IEEE Transactions on Nuclear Science
53 No.
1 (2006) 270-278. 最新版为9.4p01,于2011年2月25日发布 * * Geant4的特点? Geant4 发展于 Geant3,充分利用了C++语言中的优势,是粒子与核物理实验模拟最好的工具之一. 免费下载,更新迅速 Geant4 是最早成功使用面向对象环境重新设计的粒子与核物理软件包,几乎所有大型实验的模拟都基于Geant4. Geant4 的应用远不止于粒子与核物理.考虑了各个方面的需求,包括重离子物理、电荷与宇称破缺物理、宇宙线物理、天体物理、空间科学以及医学应用等. 为了满足这些需求,提供了强大的功能和灵活性. * * Geant4 的基本概念与内核 Geant4 Readout Visualization Persistency Run Event Interfaces Tracking Digits + Hits Processes Track Geometry Particle Graphic_reps Material Intercoms Global Geant4 包含17大类每一大类都有专门独立的研发工作小组负责.各大类之间的界面(例如顶层的设计) 由整体结构工作小组来维护. Geant4 的内核处理运行号,事例,迹,步,击中,运动轨迹.提供几何表示和物理过程的架构. * * Geant4 软件包中的内容 代码~1 百万行语句网上可以自由下载还在不断的增加与更新相关文件说明6 份使用工具书网上可以自由下载应用例子与软件包一起附送参照工具书运行例子程序包含了从简单到较复杂各种模拟程序(novice, extended, advanced) 平台Linux, MacOSX, SUNWindows/XP需要预安装的软件C++ 编译器 如g++, VC++等CLHEP库GNU Make, shell图像与用户界面X WindowsOpenGL 或MesaGLDAWN...至少需要其中的一个 * * 安装Geant4(概要) 对SLC3/4操作系统的支持和兼容性很好,如果SLC3/4是完全安装,则安装Geant4只需要预安装CLHEP(必需)和Qt4(可选,Geant4.9.0开始尝试支持Qt4,但还不完善)1)下载并安装CLHEP程序包2)如果需要Qt4,则下载并安装Qt43)下载Geant4软件包以及相应的数据文件(用于各种物理过程模型),按照安装手册进行编译安装安装过程中, ./Configure 时有很多选项需要选择,根据自己的需要选择.参见(注:文件中有些链接已经old,需要google最新版)http://hep.tsinghua.edu.cn/~yangzw/software/install_clhep.txt http://hep.tsinghua.edu.cn/~yangzw/software/install_qt4.txt http://hep.tsinghua.edu.cn/~yangzw/software/install_geant4.txt * * 安装Geant4(概要) 续 对于其它Linux发行版,安装过程类似.Ubuntu用户安装Qt4不需要编译,可以直接从安装源进行安装 如果系统版本相同(内核版本和g++版本),把已经编译好的程序直接复制到其它机器上即可使用.比如,对SLC3系统,直接复制training服务器/projects/soft/ext/clhep.tgz和g4.tgz到本地机器,解压缩到相应目录即可.对于Ubuntu用户(8.04版本),参照http://hep.tsinghua.edu.cn/~yangzw/software/ubuntu_soft/Readme.txt(注:文件中有些链接已经old,需要google最新版) * * 设置Geant4环境变量 由于Geant4练习过程中有大量图形显示,希望大家有条件的话在本地机器上进行练习.本地机器Geant4安装在/projects/soft/ext/g4/geant4.9.0.p01/ 运行Geant4之前需要先设置Geant4的环境变量,即运行:source /projects/soft/ext/g4/geant4.9.0.p01/env.sh Geant4环境变量都以G4开头.比如G4INSTALL : 安装目录G4SYSTEM : 操作系统及c++编译器名称,如Linux-g++G4WORKDIR : 工作目录我们设定的工作目录为/projects/$USER/geant4所以大家需要在/projects/$USER目录下建立geant4子目录.以后所有的geant4工作都在G4WORKDIR下进行. * * Geant4自带很多例子,从新手入门、高级、专家级例子: $G4INSTALL/examples/novice目录为入门级7个例子 首先看最简单的例子cd $G4WORKDIRcp -a $G4INSTALL/examples/novice .cd novice/N01gmake (编译)$G4WORKDIR/bin/$G4System/exampleN01 (执行) 这是最简单的例子,只是告诉你Geant4如何工作,并且确认你安装的Geant4可以工作.例子中定义了径迹探测器和三明治式量能器,每个事例发射一个虚拟粒子geantino(没有真实的物理作用).后面我们会具体介绍如何定义探测器几何与材料、如何定义入射粒子、如何添加需要的物理过程、如何记录需要的实验数据. 例一: Novice Example N01 * * 最基本的主函数(exN01) #include G4RunManager.hh #include G4UImanager.hh #include ExN01DetectorConstruction.hh #include ExN01PhysicsList.hh #include ExN01PrimaryGeneratorAction.hh int main(){ //构造默认的运行管理器(强制) G4RunManager* runManager = new G4RunManager;