seto77/ReciPro

GitHub: seto77/ReciPro

ReciPro 是一款免费开源的晶体学图形界面软件,用于晶体结构可视化、衍射图案模拟和透射电镜图像分析。

Stars: 168 | Forks: 13

# "Spot ID": Translate "Spot" to a suitable Chinese word. Common translations for "spot" in technical terms might be "点" or "斑点", but for ID, it's often kept as "ID". So, "Spot ID" could be translated as "点 ID" or "斑点 ID", but to keep it professional, I'll use "Spot ID" with "Spot" translated. *ReciPro* 是一款免费开源的多功能晶体学图形界面软件,提供无缝访问功能以探索晶体数据库、可视化晶体结构及测角仪设置、模拟衍射图案和高分辨率显微镜图像,并分析衍射数据。这些功能通过用户友好的图形界面相互关联,结果几乎可以实时同步显示。*ReciPro* 将协助使用 X 射线、电子和中子衍射晶体学以及透射电子显微镜的广大晶体学家(包括初学者)。 *ReciPro* 自 2002 年起持续开发,并于 2020 年 3 月起在 GitHub 上提供。它已从 GitHub 下载超过 25,000 次,并被大学和公司的十几所实验室中的数百名用户使用。 ***[另请参阅 Wiki 以了解如何使用!](https://github.com/seto77/ReciPro/wiki)*** [实时进行的各种模拟(示例:SrTiO3)](https://user-images.githubusercontent.com/44538886/123412384-7e20a980-d5ec-11eb-86fd-921c37ce460c.mp4) ## 作者 *ReciPro* 由 [Seto Y.](https://yseto.net/)(日本大阪公立大学)和 [Ohtsuka M.](https://profs.provost.nagoya-u.ac.jp/html/100006527_en.html)(日本名古屋大学)开发。功能和算法在 [该论文](https://github.com/seto77/ReciPro/blob/master/ReciProSetoOhtsuka2022.pdf) 中介绍。 ## 引用 如果您在学术工作中使用 *ReciPro*,请使用 GitHub 仓库页面上显示的**引用此仓库**链接。引用元数据由 `CITATION.cff` 提供,首选引用是以下文章: * [Seto, Y. & Ohtsuka, M. (2022). *J. Appl. Cryst.* **55**, 397-410, doi: 10.1107/S1600576722000139.](https://doi.org/10.1107/S1600576722000139) 您也可以在适当时引用软件仓库本身: * 仓库:https://github.com/seto77/ReciPro * 发布:https://github.com/seto77/ReciPro/releases/latest ## 安装 * 访问 https://github.com/seto77/ReciPro/releases/latest,下载 *ReciProSetup.msi* 并执行。 * *ReciPro* 运行于 Windows 操作系统,需要 ***.Net Desktop Runtime 10.0***(**不是** ***.Net Runtime 10.0***),可从 [此处](https://dotnet.microsoft.com/download/dotnet/10.0) 安装。 * *ReciPro* 基于 **MIT 许可证** 分发(任何人都可以免费使用、修改和重新分发)。 ### 关于 Windows 安全警告的说明 * 请仅从官方 GitHub 发布页面下载 *ReciPro*:https://github.com/seto77/ReciPro/releases/latest * 在某些 Windows 系统上,Microsoft Defender SmartScreen 或 Smart App Control 可能会在安装程序执行前显示警告。对于新构建或分发范围较窄的研究软件,这种情况可能会发生,警告本身并不一定意味着安装程序是恶意的。 * 如果您希望自行验证下载的安装程序,可以在 PowerShell 中计算其 SHA256 哈希值: ``` Get-FileHash .\ReciProSetup.msi -Algorithm SHA256 ``` * 作为额外检查,您也可以使用 VirusTotal 等多引擎服务扫描安装程序。 ## 手册 * 英文版 (PDF) : https://raw.githubusercontent.com/seto77/ReciPro/master/ReciPro/doc/ReciProManual(en).pdf * 日文版 : https://yseto.net/soft/recipro * 日文版 (PDF) : https://raw.githubusercontent.com/seto77/ReciPro/master/ReciPro/doc/ReciProManual(ja).pdf ## 主要功能 ### 晶体数据库 * **AMCSD**(美国矿物学家晶体结构数据库):内置超过 21,000 种晶体结构,安装后立即可用。 * 数据库经过高度压缩(约 5 MB),包含在安装文件中,因此在离线环境下也可用。 * 用户可以通过名称、化学成分、晶格参数、密度、对称性和包含的元素搜索晶体。 * 参考文献:[Downs & Hall-Wallace, 2003, *American Mineralogist* **88**, 247-250](https://www.geo.arizona.edu/xtal/group/pdf/am88_247.pdf) * **COD**(晶体学开放数据库):还提供约 525,000 种晶体结构,包括有机晶体。 * 首次使用时自动下载(约 880 MB),之后可离线使用。 * 支持导入/导出 CIF 和 AMC 格式文件。 ### 晶体学计算 * 支持 530 种空间群符号:230 种标准 ITA 设置 + 300 种非标准轴设置。 * 通用条件(消光规则)、Wyckoff 位置、所有空间群的多重性。 * 平面之间和/或轴之间周期性和/或角度的几何计算。 * 生成等效原子位置。 * 轻松转换非标准轴设置(例如 *Pbnm* 到 *Pnma*)和原点平移。 ### 原子性质 * 1H 到 98Cf 的特征 X 射线波长/能量。 * 用于 X 射线、电子和中子的原子散射因子。 ### 结构查看器 * 使用 OpenGL (GLSL) 架构进行 3D 晶体结构可视化。 * 渲染原子、键、配位多面体、单胞、晶格平面、边界表面和图例标签。 * 即使包含数万个原子的复杂晶体结构也能实时平滑绘制。 * 默认的原子绘制颜色和尺寸与 VESTA 兼容。 * 可通过单胞倍数或晶面指数及距中心距离指定绘制范围。 * 任意晶体习性可通过着色边界平面来表示。 * 可显示任何晶格平面,帮助初学者理解衍射现象中的晶格平面概念。 * 旋转、移动和缩放可通过鼠标操作自由控制。 * 单击原子可显示到相邻原子的距离和键角。 * 旋转状态立即反映在其他功能窗口(极图、衍射模拟器等)中。 * 内置视频编码器 (ffmpeg) 可生成用于演示的旋转动画视频。 ### 极图 * 在极射赤道投影上绘制晶面和晶轴。 * 支持等角(乌尔夫网)和等面积(施密特网)投影,带有经纬线。 * 指数可通过数值范围或特定值指定。 * 可通过指定晶带轴显示大圆。 * 绘图对象可以向量格式保存或复制,以便后期编辑而不损失分辨率。 * 用于教育目的的立体投影几何的 3D 可视化。 ### 衍射模拟器 * 模拟 X 射线、电子和中子源的单晶衍射图案。 * 入射束动能可自由配置。 * 内置 1H 到 98Cf 的特征 X 射线能量。 * 通过图像分辨率(像素大小)和相机长度指定绘图范围。 * 也支持倾斜探测器几何。 * 支持叠加实验获取的图像。 * 可控制晶体旋转(衍射条件)并立即与其他窗口同步。 * **多晶衍射**:模拟多晶样品的德拜环图案。 * **旋进相机**(X 射线):零阶劳埃区旋进相机图案模拟。 * **背反射劳埃相机**(X 射线):背反射劳埃图案模拟。 #### 运动学衍射理论 * 适用于所有束源(X 射线、电子、中子)。 * 根据晶体结构因子振幅平方和激发误差估计衍射强度。 * 纳入了德拜-沃勒因子对衍射强度的影响。 #### 动力学衍射理论(电子) * 基于 **Bloch 波方法** (Bethe, 1928),允许灵活的晶体取向,无需低阶晶带轴限制。 * 提供两种计算方法: * **Bethe 本征值法**:对 Bloch 本征态的本征值/本征向量进行矩阵对角化。适用于改变样品厚度的情况。 * **散射矩阵法**:使用缩放平方法结合 Padé 逼近直接计算矩阵指数。适用于快速单厚度计算。 * 自动选择最快的算法和最佳的数学库(Eigen、Intel MKL 或 Math.NET)。 * 解析计算热漫散射 (TDS) 吸收势以获得高性能。 * **SAED**(选区电子衍射):具有动力学散射效应的平行束电子衍射模拟。 * **PED**(旋进电子衍射):通过指定旋进角和方位角分辨率模拟 PED 图案。适用于晶体结构分析和准运动学 PED 条件优化。 * **CBED**(会聚束电子衍射):模拟具有用户指定会聚半角和分割数的 CBED 图案。支持厚度系列模拟以确定样品厚度。 * 位置平均 CBED (PACBED) 图案。 * 大角度 CBED (LA-CBED) 模拟。 ### HRTEM 模拟器 * 使用相同的 Bloch 波理论框架进行高分辨率透射电子显微镜图像模拟。 * 光学参数(加速电压、球差系数、离焦值、样品厚度等)通过图形界面设置。 * 内置典型的透射电镜光学参数预设,可通过右键菜单调用。 * 部分相干性的两种成像模型: * **线性衬度传递理论**:计算成本较低;适用于满足弱相位物近似的薄样品。 * **非线性衬度传递理论(TCC 模型)**:基于一阶透射交叉系数 (Ishizuka, 1980);即使对于较厚样品和高原子序数材料也可靠。 * 可绘制带有包络函数的衬度传递函数。 * 可同时计算厚度-离焦系列图像。 * 在标准条件下通常在 1 秒内完成。 ### STEM 模拟器 * 扫描透射电子显微镜图像模拟。 * 明场 (BF)、环形暗场 (ADF) 和高角度环形暗场 (HAADF) 成像模式。 * 会聚束被视为许多平面波的叠加,并进行精确的重叠计算。 * 使用吸收势模型计算非弹性散射电子。 * 可生成厚度-离焦系列图像。 ### To be precise, I should translate the heading while preserving the English terms. For example, if "Spot" is part of a feature name, it might be kept in English. But since no context is given, I'll assume it's a general term. * 对实验 SAED 图案进行半自动衍射斑点标定。 * **Spot ID v1**:使用衍射斑点的几何配置(距离和角度)搜索晶带轴。支持同时分析 2-3 张图像。 * **Spot ID v2**:直接导入 SAED 图案图像。 * 支持标准图像格式:TIFF (.tif)、Digital Micrograph 3/4 (.dm3, .dm4) 等。 * 自动检测衍射斑点并使用 2D 伪 Voigt 函数进行拟合。 * 穷尽搜索与倒易晶格向量排列匹配的晶体取向。 * 即使是高阶晶带轴也能精确确定。 ### 旋转几何(测角仪) * 将 ReciPro 中的欧拉角与实验室中的测角仪关联起来。 * 提供关于如何旋转测角仪以实现所需晶体取向(例如低阶晶带轴)的信息。 * 支持任意测角仪定义。 ### 宏 * 用于任务自动化的 Python 语法宏脚本。 * 示例:以 1° 步长旋转晶体,并在每一步保存衍射图案或 STEM 图像。 * ReciPro 特定函数在 "ReciPro" 命名空间中可用。 * 使用示例可在 [GitHub Wiki](https://github.com/seto77/ReciPro/wiki) 上找到。 ### 其他功能 * **电子射程模拟器**:材料中电子射程的蒙特卡洛模拟。 * **EBSD**(电子背散射衍射):正在开发中。 ## 技术细节 * 使用 **C++**、**C#** 和 **OpenGL 着色语言 (GLSL)** 编写。 * 多线程并行化,用于现代多核 CPU 上的高性能计算。 * 当晶体取向改变时,所有功能窗口同步实时更新。 * 使用右手笛卡尔坐标系(X:右,Y:上,Z:前),采用 Z–X–Z 欧拉角约定。 * 坐标定义与 Thermo Fisher Scientific 的 EBSD 软件兼容。 ## 使用 ReciPro 的论文 https://scholar.google.jp/scholar?cites=12625594477623342627 ## 截图    
标签:GUI软件, TEM图像模拟, X射线衍射, 中子衍射, 免费软件, 化学, 多人体追踪, 实时显示, 显微镜学, 晶体学, 晶体数据库探索, 晶体结构可视化, 材料科学, 物理学, 电子衍射, 科学可视化, 科学计算, 立体投影绘制, 衍射斑点索引, 衍射模式模拟, 高分辨率图像模拟