安装
先装应用,再装生成器——而且只在你想要时才装。TreeLevel 自己就能计算并生成事件;外部生成器是用来为事件穿上簇射与强子化,或者用来比对的。
一个应用,此外无须再装什么:TreeLevel 自己计算,也自己生成事件。
应用
TreeLevel 在 Mac App Store 购买。需要 macOS 14 Sonoma 或更新版本,在 Apple silicon 与 Intel 上均为原生运行。购买是通用的:iPad 版本包含在内。
TreeLevel 在 App Store 购买。需要 iPadOS 17 或更新版本。购买是通用的:Mac 版本包含在内。
iPad 上只有一个外部生成器:Pythia 8,编译为 WebAssembly,在 App 内运行,不向外发送任何数据。它不属于 App 本身:需从设置中下载——见下文。Herwig、Sherpa、WHIZARD、CalcHEP 和容器只在 Mac 和 PC 上:它们是独立的程序,iPad 不允许运行。TreeLevel 自身的部分子层级生成在所有平台上都可用。
TreeLevel 在 Microsoft Store 购买。需要 Windows 10 2004 版或更新版本,或 Windows 11,在 x64 与 ARM64 上均为原生运行——Copilot+ PC 得到的是 ARM64 版本,不是模拟。
为什么生成器要分开
Pythia、Herwig、Sherpa、WHIZARD 与 CalcHEP 以 GPL 发布。把它们链接进一个在商店出售的应用会带来许可问题,把它们一并分发又会带来另一个。因此它们住在一个独立的程序里,TreeLevel Tools,由你自行安装,TreeLevel 在它存在时会检测到它。
没有任何东西经过网络:TreeLevel 在你的磁盘上写一个作业文件夹,程序读它、计算,再把事件写在旁边。若一个生成器也没装,TreeLevel 就守住自己的部分子层次,这已足够应付计算空间所做的一切。
TreeLevel ToolsPythia 8 模块
只需一次下载,带来内核和为你的机器编译好的四个生成器:Pythia 8 与 Herwig 7,它们为 TreeLevel 算出的事件穿衣——簇射、强子化、衰变——,以及 Sherpa 3 和 CalcHEP 3,它们自己计算图所描述的过程。此外无须再装什么。
只需一次下载,带来内核和为你的机器编译好的 Pythia 8 模块。其余生成器经由下文的容器提供。
从版本页取得 .dmg,把 TreeLevel Tools 拖进「应用程序」。该应用已由 Apple 签名并公证:macOS 会静默校验,只在第一次询问是否打开一个下载来的程序。
在版本页取得与你机器相符的压缩包——TreeLevelTools-版本-x64.zip 或 -arm64.zip,约 45 MB——解压到:
%LOCALAPPDATA%\Programs
这就是全部安装:没有安装程序,注册表里什么也不留。TreeLevel 先找这里,再找 PATH。要卸载,删掉文件夹即可。
若不清楚自己的架构:设置 › 系统 › 系统信息,系统类型一行。拿不准时,x64 版本在哪里都能用,在 ARM 上以模拟方式运行。
iPad 上没有 TreeLevel Tools:Pythia 8 以模块形式安装,在设置(工具栏上的齿轮)的Pythia 8 模块卡片中。Pythia 是 GPL 许可的自由软件:App 不包含它,而是从 TreeLevel Tools 的版本页面下载,并在安装前用 SHA-256 指纹校验每个文件。分两部分:
| Pythia 8.318 | 约 14 MB,按钮下载:部分子簇射、强子化、衰变,以及「加速器」来源 |
|---|---|
| 强子数据 | 约 55 MB,可选,按钮添加:部分子分布函数,说明质子的能量如何分配给其中的夸克和胶子;没有它们,质子束或 π 介子束会被拒绝 |
两者都可在同一卡片中用移除按钮删除。
每个软件包包含什么、其版本以及各生成器的作者:TreeLevel Tools。
容器
一个已经构建好的镜像,在一致的环境里带着五个生成器。在 Mac 上,它带来 WHIZARD 3,唯一无法随 TreeLevel Tools 一同交付的一个:它把每个过程改写成 Fortran 并在运行时编译。
Herwig、Sherpa、WHIZARD 与 CalcHEP 需要完整的编译链和数小时的构建。与其强加给你,不如把它们放进一个已经构建好的容器镜像,各系统通用。
安装 Docker Desktop,然后只需一次:
docker pull ghcr.io/gpasa/treelevel-tools:0.3.0
docker pull ghcr.io/gpasa/treelevel-tools:latest
只要它在且 Docker 有应答,TreeLevel Tools 就会用它。镜像展开后约重两 GB。
容器不是悄无声息的替身。原生安装的生成器与镜像里的同一个生成器,版本既不同,设置也不同,因此给出的截面并不完全一样。TreeLevel Tools 绝不会不声不响地从一个切到另一个:这是一个勾选项,出厂时未勾选。
自 1.3 起,在 Mac 上这个选项写作tout faire tourner dans l'image Docker(“全部在 Docker 镜像中运行”):勾选后,所有任务都由镜像执行,TreeLevel Tools 自带的生成器不再参与;若缺少 Docker 或镜像,则什么也不提供,而不会悄悄退回本机生成器。
Docker Desktop 需要虚拟化。在物理机上几乎总是可用;在虚拟机里,则要宿主允许嵌套虚拟化,而并非所有宿主都允许。没有它,原生的 Pythia 模块照样能用——这正是它单独交付的缘由。
检查是否都有应答
打开生成空间。生成器列表会列出应答者,并附版本号:
出现在列表里的生成器是应了召唤的:只是装上还不够,还得开口说话。损坏的模块不会出现在那里。
帮助 › 关于 TreeLevel 给出同样的版本号,报告故障时应当附上:一个物理结果的分量,取决于产生它的那些版本。
TreeLevel › 关于 给出同样的版本号,报告故障时应当附上:一个物理结果的分量,取决于产生它的那些版本。
其中还给出 TreeLevel Tools 的版本,复制版本按钮会把这些信息全部放进剪贴板,便于粘贴到消息中。
在 iPad 上,设置中的Pythia 8 模块卡片显示已安装的内容——Pythia、强子数据——以及各部分的大小。
模块有自己的编号,与 Pythia 的版本号不同:卡片上会显示——Pythia 8.318(WebAssembly,模块 0.5.0)——,设置底部也会在应用版本旁再次列出,并有复制版本按钮,便于向支持人员发消息。有更新的版本发布时,卡片会提供更新;应用在启动时(非蜂窝网络下)也会自行更新,并在安装前校验每个文件。
文件在哪里
| 你的文稿 | 你存到哪里就在哪里,格式为 .feyndiag |
|---|---|
| 设置 | %LOCALAPPDATA%\TreeLevel |
| 内核的作业 | 在 treelevel-tools.exe 旁边的 MCJobs\ 里 |
| 某次作业的日志 | engine.log,在该作业的文件夹中 |
过往作业可在生成空间里重看,带日期与体积:一万个经过簇射的事件是几百 MB,不知不觉就攒下十来份。载入可以重读其中一份而不重新运行,删除则把它清掉。
| 你的文稿 | 你存到哪里就在哪里,格式为 .feyndiag |
|---|---|
| 内核的作业 | 在 TreeLevel 的沙盒里,位于 ~/资源库/Containers/org.pasahome.Feyn/Data/Library/Application Support/MCJobs |
过往作业可在生成空间里重看,带日期与体积。
你的文稿存到哪里就在哪里,格式为 .feyndiag:在文件App 中,位于 iPad 上或 iCloud 云盘里。
Pythia 的任务保存在 App 内;「生成」空间中的过往任务标明日期和大小,可重新载入或删除。
恢复设置 将某个任务的设置(生成器、事例数、种子,以及它若有的机器)放回文档,而不重新读取其事例:只需重新运行生成。
出问题的时候
列表里只有「TreeLevel — 部分子层次」
没有找到 TreeLevel Tools,或者它没有应答。核对上面说的位置,然后在生成空间里点重新检查。指定位置…按钮可以手动指出它在哪里。
在 iPad 上,Pythia 模块未安装或已被移除:设置(齿轮)→ Pythia 8 模块卡片 → 下载。iPad 上没有其他生成器。
作业一开始就失败
消息里带着原因,查看日志…按钮会打开生成器所写的内容并滚到末尾——原因就在那里。最常见的拒绝来自做不到要求的束流:两个轻子不带部分子,一个电子和一个质子不会湮灭。
在 iPad 上,质子束或 π 介子束需要强子数据:没有它们,任务会立即被拒绝,消息中会说明。可在设置的同一卡片中添加。
公式显示不出来
渲染经由一个网页视图。关掉文稿再打开;若仍旧如此,请连同系统版本一起报告。
其余的,支持页回答最常见的问题,并说明如何报告故障。