与qnet数据采集卡一起工作的软件。这是后备箱版本

muonic的Python项目详细描述


Muonic-一个用于Qnet实验的Python图形用户界面
===========================


Muonic项目提供了一个接口来与QuarkNet数据采集卡通信并对生成的数据进行简单的分析。
其目标是确保对QuarkNet数据卡的简单和稳定的访问。捏牌,想象一些牌的特征。它是用来在学校项目中使用的,所以它应该很容易使用,即使是那些没有很多Linux背景或科学软件经验的人。自动数据采集确保没有测量数据丢失。

使用该软件,您可以接受GPL的条件。这也意味着作者不能对任何形式的硬件或软件损坏负责。


muonic安装和安装
python包"muonic"
2。python可执行文件需要安装以下软件包(列表可能不完整!)

*python scipy
*python matplotlib
*python numpy
*python-qt4
*python serial
*python future


python包。可能所有的软件包都已经安装好了,例如ubuntu软件包,但是与pypi中的版本不同。在这种情况下,pip将安装来自pypi的最新版本。如果要避免这种情况,请确保满足所有依赖项,并使用setup.py脚本安装pip install--no deps muonic`.


\py在签出源代码的目录中运行以下命令:

`python setup.py install`

这将把muonic包安装到python的site packages目录中,并将可执行文件'muonic'和'which tty\u daq'安装到usr/bin目录中。它还会在主目录中生成一个新目录:`$home/muonic_data`

在多音主目录中键入

`mv bin/muonic muonic.py`


卡通过USB端口使用串行连接。如果在连接到计算机的情况下,muonic找不到daq卡,请尝试将用于登录的用户添加到组拨出:

`sudo adduser username dialout`.





>如何使用muonic
==


如果您已经通过提供的setup.py脚本设置了muonic,或者您已经将包放在pythonpath中的某个位置,则可以从终端进行简单调用,其中"xy"是两个可以自由选择的字符。您会发现这两个字母出现在自动生成的文件中,以便您能够识别它们。

使用muonic的模拟模式(没有真实的数据,所以没有后面的物理!)。这只应用于测试和开发软件

-d,-debug
debug模式。使用它在控制台上生成更多日志消息。

-t sec
更改计算t的时间窗口他收费。如果期望很低的速率,可以考虑将其更改为更大的值。
默认值为5秒。


-p,--writepulses
以非十六进制表示自动写入脉冲时间为的文件

-n,--nostatus
抑制输出原始数据文件中的任何状态消息,如果您使用广域网t仅使用muonic进行数据采集,然后使用另一个脚本进行分析。

-v,--version
只打印当前版本的muonic

-p data_path
为muonic编写的文件定义输出目录。默认值为$HOME/MUONIC_data



文件名如下:

*当前所有文件都保存在$home/muonic_data下。此目录必须存在。如果使用提供的安装脚本,则会自动创建该脚本*

`yyyy-mm-dd\u hh-mm-ss\u type\u measurementme\u xy`

*`yyyy-mm-dd`是测量开始的日期
*`hh-mm-ss`是测量开始的GMT时间
*`measurement time`如果muonic关闭,则每个文件都会获得相应的测量时间(以小时为单位)assi。gned.
*`xy`在muonic开头指定的两个字母
*`type`可以是以下之一:
*`daq`是daq卡的原始ascii输出,只有在muonic的"daq输出"窗口中单击"保存到文件"按钮时,才会保存此值。有关输出的详细信息,请参阅[DAQ卡(PDF)文档(http://crd.yerphi.am/files/qnetdescription.pdf)。
*`R'是一个自动保存的包含速率测量数据的ASCII文件,以后可以使用它与gnuplot一起绘图。所有频道和触发器的速率和总计数都以预定义的时间间隔(默认值:5秒)给出。
*`d'指定一个文件,其中记录的μon衰减时间为。如果启动μ子衰变测量,此文件将自动保存。
*`v'表示μ子速度测量的输出。每行包含μon事件的测量时间和测量飞行时间。
*`p'表示包含已注册脉冲的非十六进制表示的文件。只有在muonic


脉冲表示:

`(69.15291364,[(0.0,12.5)],[(2.5,20.0)],[],[])`

列表表示通道(从左到右为0-3),每个元组表示已注册脉冲的前导和下降沿。为了得到脉冲开始的准确时间,必须将脉冲le和fe倍添加到触发时间

u中,以计算使用tmc的le和fe脉冲次数。对于某些daq卡,tmc的bin宽为1.25ns,尽管文档中另有说明。
触发时间是使用cpld计算的,cpld在某些卡中以25mhz运行,cpld的bin宽为40ns。
在添加cpld和tmc时间时,请记住这一有限的精度。



ming measurements with muonic
--------

把他们送到DAQ。因此,如果要更改"重合时间"窗口之类的内容,必须在"DAQ输出"窗口中发出相应的DAQ命令。


此处有两个菜单项值得关注:
*通道配置:在此处启用通道并设置重合设置。也可以指定否决通道。

*必须确保选中要使用通道的复选框在您离开此对话框之前,否则通道将被停用。*

*通过DAQ以一种无法给出特定通道的方式实现重合。相反,这意味着"任何"条件。
因此"双重"意味着"任何两个已启用的通道"必须声明信号,而不是两个特定的通道(如1和2)。*

*在德西的测量表明,在所有情况下,数据采集卡的否决功能可能无法正常工作。*

*阈值:可以为每个通道指定一个阈值(毫伏)。低于此阈值的脉冲将被拒绝。用于电子噪声抑制。可以使用μon rates选项卡中的速率进行校准。

**正确校准各个通道是成功测量的关键!**



muon rates

只有在设置了符合条件时才会显示触发率。
在选项卡右侧的块中,显示自测量开始以来的平均速率。下面您可以找到各个频道的计数数。在右下方也是测量的最大速率。单击"重新启动"可重置绘图和显示的值。"停止"按钮可用于暂时按住绘图,以便更好地查看它。

*您可以使用右下角显示的"最大速率"检查测量是否有任何问题。*

*当前绘图仅显示最后200秒。如果您想要更长的时间范围,可以使用自动存储在"r"文件中的信息(见上文)。*


\muon lifetime

muon的寿命测量可以在这里执行。显示了同一通道中后续脉冲之间的时间差直方图。它可以通过点击"fit!"来适应指数。。拟合寿命显示在绘图的右上角,用于估计必须查看控制台的错误。

在下面的弹出窗口中,必须配置测量。它主要取决于你使用的探测器,并影响测量的质量。如果单脉冲通道中出现多个脉冲,或者如果单脉冲通道中出现一个脉冲并且双脉冲通道中出现>;=2个脉冲,则接受该信号。巧合时间设定为?微秒。信号被否决频道否决:只有在没有脉冲发生的情况下才接受事件。如果自动否决被激活,它只接受以下情况下的事件:
*单脉冲通道中出现多个脉冲,双脉冲通道中没有测量到脉冲
*单脉冲通道中出现一个脉冲,双脉冲通道中正好出现两个脉冲。

**错误可能是错的!**

μ子速度

在此选项卡中可以测量μ子速度。可以通过激活复选框开始测量。在下面的弹出窗口中,必须对其进行配置。μ子速度窗口小部件将测量两个给定通道之间的信号时间,这可以解释为μ子从一个探测器板到另一个探测器板的飞行时间。得到的直方图显示了飞行时间的分布。平均飞行时间可以通过使用拟合按钮拟合高斯分布来计算。

**拟合误差可能是错误的!**

它需要连接GPS天线。信息在底部的文本框中汇总,可以从中复制。


\raw daq data

muonic的最后一个选项卡显示原始ascii daq数据。
已保存到文件。如果该文件中应禁止DAQ状态消息,则应在MUONIC开始时提供选项"-n"。
编辑字段可用于向DAQ发送消息。有关邮件的概述,请查看此处(链接尚不可用!).
要定期发出此类命令,可以使用"定期调用"按钮

u两个最重要的DAQ命令是"cd"("计数器禁用")和"ce"("计数器启用")。只有当计数器设置为启用时,DAQ才会发出脉冲信息。如果计数器设置为禁用,则所有与脉冲相关的功能可能无法正常工作。_

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么@DELETE REST不起作用?   带有JPA2的java表值参数。1和Hibernate,Sql Server   如何将Java类添加到Xamarin VS2017项目   绘制多边形时出现java空指针异常   java Apache WebClient 303状态未重定向   java如何用一组字符串数组从数据库中获取数据   java是否可以使用Google Drive API向文件中添加脚本?   java组织。阿帕奇。贾斯珀。JspC jar文件下载   java在整个JSON映射中将单个值作为JSON流   通过命令行将文件输入到java   java rs.next()总是返回false   java标记异常,通知调用方利用异常消息   java Spring YML数组属性为空