Computer Physics Communications ( IF 7.2 ) Pub Date : 2020-12-31 , DOI: 10.1016/j.cpc.2020.107811 Michal Šmíd , Xiayun Pan , Katerina Falk
We present a newly developed ray tracing code called mmpxrt, dedicated to study and design X-ray crystal optics, with a special focus on mosaic crystal spectrometers. Its main advantage over other currently available ray tracing codes is that it includes a detailed and benchmarked algorithm to treat mosaic crystals, especially HOPG and HAPG (Highly Oriented/Annealed Pyrolitic Graphite). The code is primarily designed to study crystal spectrometers, therefore their implementation is very straightforward and includes the automated evaluation of their performance. It can, however, be used universally to study other Bragg crystal based instruments, such as monochromators, mirrors, and analyzers. The code is publicly available, written in Python3 and is distributed as a Python library with test cases and user manual included.
Program summary
Program title: mmpxrt
CPC Library link to program files: https://dx.doi.org/10.17632/dkpbzvtz3b.1
Developer’s repository link: https://gitlab.hzdr.de/smid55/mmpxrt
Licensing provisions: MIT
Programming language: Python 3
Nature of problem: Mosaic crystals are commonly used for X-ray spectroscopy and similar applications. However, the complicated structure of such crystals makes their function non-trivial and often counter-intuitive, therefore a proper simulation tool is needed to design and understand such instruments.
Solution method: We have developed a Monte-Carlo X-ray ray tracing code which simulates the setup of given spectrometer, analyzes the results and provides the performance of the spectrometer.
中文翻译:
X射线光谱仪模拟代码,详细支持镶嵌晶体
我们提出了一种新开发的称为mmpxrt的光线跟踪代码致力于研究和设计X射线晶体光学器件,特别侧重于镶嵌晶体光谱仪。与其他目前可用的光线跟踪代码相比,它的主要优点是它包括一种用于处理镶嵌晶体(尤其是HOPG和HAPG(高度定向/退火的热解石墨))的详细基准测试算法。该代码主要用于研究晶体光谱仪,因此它们的实现非常简单,并包括对其性能的自动评估。但是,它可以普遍用于研究其他基于布拉格晶体的仪器,例如单色仪,反射镜和分析仪。该代码是公开可用的,用Python3编写,并作为Python库分发,其中包括测试用例和用户手册。
计划摘要
程式名称: mmpxrt
CPC库链接到程序文件: https : //dx.doi.org/10.17632/dkpbzvtz3b.1
开发人员的资料库链接: https : //gitlab.hzdr.de/smid55/mmpxrt
许可条款:麻省理工学院
编程语言: Python 3
问题性质:马赛克晶体通常用于X射线光谱学和类似应用。但是,这种晶体的复杂结构使其功能变得微不足道,而且常常是违反直觉的,因此需要适当的仿真工具来设计和理解这种仪器。
解决方法:我们开发了蒙特卡洛X射线跟踪代码,该代码可模拟给定光谱仪的设置,分析结果并提供光谱仪的性能。