第一届(2020)高能物理计算暑期学校上机练习

第一届(2020)高能物理计算暑期学校上机练习 一,作业提交及使用 1, 作业准备2,作业提交3,作业查询4,作业删除5,查看作业结果二,容器使用1 容器技术介绍1.1 容器的特点 1.2 容器与虚拟机区别1.3 容器引擎2 hep_containerHep_container的特点2.1 命令说明2.2 查看支持镜像2.3 查看支持用户组/实验组2.4 进入容器环境2.5 容器内执行命令3 镜像制作3.1 通过定义文件制作镜像3.2 使用自制镜像3.3 其他镜像制作方法三,Git 使用1 git本地配置2 准备本地代码仓库3 工作目录操作4 暂存操作5 提交操作6 远程仓库操作7 分支操作8 标签操作四,ROOT 分析作业1,生成数据样本1.1 定义分布函数1.2 生成数据样本,填tree,写入root文件2. 读取root文件,填直方图,画出直方图3. 拟合直方图

一,作业提交及使用

1, 作业准备

注意,username需替换为你的用户名

  1. 复制下列内容
  1. 按快捷键 i 进入编辑模式
  2. 快捷键shift+insert粘贴内容至脚本文件中(或鼠标右键粘贴)
  3. esc键退出编辑模式

2,作业提交

如果成功,显示内容如下:

其中,13代表作业id,作业id为作业最重要的身份信息,可利用作业id进行作业查询和删除等操作。

3,作业查询

4,作业删除

5,查看作业结果

找到 .out 和 .err 文件:

查看结果文件:

输出如下,说明作业正常运行结束

其中,accap059.ihep.ac.cn 为作业执行节点,该节点名会根据实际执行的节点,有所变化

 

 

二,容器使用

1 容器技术介绍

容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。

1.1 容器的特点

跨环境、可移植、资源和应用隔离性、安全性。

1.2 容器与虚拟机区别

1.3 容器引擎

Singularity是目前在高性能计算平台上被大量应用的轻量虚拟化容器技术,能够提供操作系统级的虚拟化。

2 hep_container

Hep_container是基于singularity容器管理命令开发的适用于高能所计算集群的容器客户端工具,满足用户使用多种操作系统版本及环境的需求。 说明:本文涉及的命令均需要登陆节点上运行,所用命令在以下目录,建议将该目录加入用户个人环境变量 PATH 中。

Hep_container的特点

2.1 命令说明

Hep_container的容器命令主要有以下操作images、shell、exec等。可以在命令行中通过help参数查看各个命令的使用说明和样例

2.2 查看支持镜像

命令格式:hep_container images 该指令可以查看当前提供的操作系统容器镜像。

2.3 查看支持用户组/实验组

命令格式:hep_container groups 该指令可以查看容器命令当前支持提供的用户组或者实验组。通过 -g 参数指定用户组或实验组,容器内会挂载对应用户目录和实验目录。不指定-g参数默认采用主组作为用户组或实验组。

2.4 进入容器环境

命令格式:hep_container shell [container image] 该指令可以在容器内启动一个shell,因此可以在容器外部与容器内部进行交互操作。运行exit则可以退出该shell。 下例为运行启动一个SL5操作系统镜像后,用户当前为SL5的系统环境.

2.5 容器内执行命令

命令格式:hep_container exec [container image] [command] 该指令可以在外部主机上将指定的command运行在指定的容器内。 下例为在lxslc7上以SL5的环境运行SL5命令,并得到结果。

3 镜像制作

3.1 通过定义文件制作镜像

3.2 使用自制镜像

3.3 其他镜像制作方法

参考 https://sylabs.io/guides/3.5/user-guide/build_a_container.html

 

三,Git 使用

1 git本地配置

2 准备本地代码仓库

3 工作目录操作

4 暂存操作

5 提交操作

6 远程仓库操作

7 分支操作

8 标签操作

 

 

四,ROOT 分析作业

查看练习示例脚本

 

1,生成数据样本

1.1 定义分布函数

Lorentzian Peak function:

1.2 生成数据样本,填tree,写入root文件

操作练习

 

2. 读取root文件,填直方图,画出直方图

操作练习

单击菜单栏中 View 下拉菜单选中 Editor 选项可以调出编辑面版,可以手动编辑图片属性,如坐标轴标题,添加网格,直方图颜色等。尝试用鼠标单击图像不同位置,如直方图,坐标轴,标题处,观察编辑面板编辑选项的变化。尝试手动编辑图像属性。

 

 

 

3. 拟合直方图

操作练习

得到拟合结果:

可以在输出 log 里面找到函数参数的拟合值:

也可以通过以下方式拿到单个参数值及其误差:

 

附加练习

尝试将本例中的朗道分布替换为高斯分布,完成 root 文件生成,root 文件读入,画直方图,拟合直方图。