模块化银河图像模拟工具包
GalSim的Python项目详细描述
Galsim:模块化银河图像模拟工具包
galsim是模拟天体图像的开源软件 (恒星,星系)以各种方式。大部分的计算是 在c++中执行,用户界面是python。另外,代码 可以直接在"配置"文件上操作,对于那些不愿意工作的用户 在蟒蛇中。软件包的推动力是一个薄弱的lensing社区 数据挑战,称为great3:
< Buff行情> http://great3challenge.info/但是,代码除了需要 这是一个挑战,对许多需要 用精确的大小和剪刀模拟高保真的星系图像。在 在这个文件的末尾,有一个代码功能和未来计划的列表 发展。有关算法和代码验证的详细信息,请参见
< Buff行情> http://adsabs.harvard.edu/abs/2015a%26c….10..121r安装
通常,要安装galsim,只需运行
< Buff行情> pip安装galsim根据您的设置,可能需要在开始时添加sudo 或者–用户在这个命令的末尾,就像您在pip安装时通常做的那样 包裹。
请参阅install.md以获取完整的详细信息,包括 pip可安装,因此在运行此命令之前可能需要安装。
您也可以通过Conda Forge使用Conda
< Buff行情> Conda安装-c Conda Forge Galsim源分布
galsim当前发布的版本是2.1版。为了得到密码,你 可以从中获取tarball(或zip文件) < Buff行情> https://github.com/galsim developers/galsim/releases/tag/v2.1.5
另外,也可以随意分叉存储库:
< Buff行情> https://github.com/galsim developers/galsim/fork或者使用以下任一选项克隆存储库:
< Buff行情> git克隆git git @ github com :galsim developers/galsim.git git clone https://github.com/galsim developers/galsim.git该代码还通过fink、macports和面向mac用户的自制程序分发。 有关详细信息,请参见install.md。
E代码是根据BSD样式许可证授权的。有关更多信息,请参见文件许可证 细节:
与Galsim保持同步
有一个galsim邮件列表,通过google组组织 高尔西姆宣布。组成员将收到有关 galsim代码,包括主要版本发布的通知、新功能 以及错误修复。
你不需要一个google帐户来订阅这个组,只需发送任何 电子邮件到
< Buff行情> galsim announce+subscribe @ 谷歌组 com如果收到确认请求(请检查垃圾邮件过滤器!)简单回答 直接发到那封邮件,什么都可以,确认一下。你也可以点击链接 在确认请求中,但可能会要求您登录Google帐户。
要取消订阅,只需将任何电子邮件发送到
< Buff行情> galsim announce+unsubscribe @ 谷歌组 com您应该会收到取消订阅成功的通知。
如何与galsim开发人员沟通
目前,galsim的主要开发人员是:
< Buff行情>- Mike Jarvis(Gmail的Mikejarvis17)
- Rachel Mandelbaum(Andrew Dot CMU Dot Edu的RMandelb)
- 乔什·迈耶斯(Gmail的JMeyers314)
然而,许多其他人多年来也为加尔西姆做出了贡献,因为 我们非常感谢。
如果你对如何使用galsim有疑问,可以在 [stackoverflow](http://stackoverflow.com/" rel="nofollow">http://stackoverflow.com/)。一些galsim开发者 将警报设置为自动通知 "galsim"标签,因此很有可能会回答您的问题。
如果您在安装或使用代码时遇到任何问题,或者发现一个bug,或者 关于新功能的建议,请在我们的[GitHub]上打开一个问题 存储库](https://github.com/galsim-developers/galsim/issues" rel="nofollow">https://github.com/galsim developers/galsim/issues)。我们也接受 如果您有希望为代码库贡献的内容,请拉取请求。
如果这些沟通渠道都不合适,你也可以联系 直接发送到上述电子邮件地址。
入门
如上所述安装代码(另请参见install.md)。
可选,但建议在尝试新版本的代码时运行 单元测试以确保没有错误。你可以通过跑步来做到这一点 python setup.py测试 。如果有任何问题,请在我们的 Github页面。
可选:使用 指定所有doxygen设置的主存储库目录。或者, 您可以在
< Buff行情>
参考文档
有关galsim工作流和python工具的概述,请参见文件 文档/galsim_quick_reference.pdf 在galsim存储库中。使用指南 生成仿真的配置文件,安装问题的常见问题解答, 其他有用的参考资料可以在galsim wiki上找到,
< Buff行情> https://github.com/galsim developers/galsim/wiki有关代码所有部分的更详细的文档可以在 多氧制剂文件在上一节或python中提到 在 galsim/*.py 中记录字符串
存储库目录结构
存储库有许多子目录。下面是他们的指南 内容:
bin/:可执行文件(编译过程完成后)。
devel/:各种开发工具。
- 文档/ : 文档,包括快速参考指南,如果
用户使用doxyfile生成doxygen文档,输出 也将进入此目录。
examples/:示例脚本(请参阅下一节)。
- galsim/ : galsim的python代码(这是大多数最终用户交互的内容
使用)。
<> >://:GalSIM的C++部分的.h头文件.< /P>
lib/:编译的库(在编译过程完成后)。
galsim的python层。
测试/:单元测试。
演示脚本
在 examples/ 中有许多脚本演示了代码如何 被使用。它们被称为demo1.py…`demo13.py`。你可以带他们过去 在 examples/ 中输入(例如)python demo1.py 设计为在 examples/ 目录中运行。他们中的一些人 文件位于 examples/ 目录的子目录中,因此它们无法工作 从其他位置正确。
一个完全并行的配置文件序列,名为 demo1.yaml 。 演示如何使用 可执行文件 bin/galsim 解析的配置文件。(没有 demo12和demo13对应的.yaml文件,因为 无法使用配置文件执行功能。)
examples/ 目录中可能感兴趣的另外两个脚本,但是 不是galsim教程系列的一部分,是 演示如何使用fouriersqrt转换来优化coadd 图像,以及psf-wf-movie.py,它展示了真实的大气 通过制作一部时变psf和波前的电影来实现psf编码。
随着项目的进一步发展 软件的功能,可以在 examples/ 中添加更多演示脚本 以说明Galsim可以做什么。
标记版本
每个galsim版本都在git中标记了标记名 vx.x.x 。你可以看到 使用命令的可用标记
< Buff行情> git标记-l在存储库内的终端上。除了官员 发布版中,我们还为其他重要的里程碑添加了标记 一次或另一次。
任何给定快照的代码版本都可以从 GitHub网页,或使用标记名从存储库签出,例如:
< Buff行情> Git签出v2.1.5版然后将目录树更新为 已请求里程碑。(你也会收到一条信息,说你处于"分离"状态 国家元首。这很正常。)
对于版本历史记录和代码当前版本的说明 与上次标记的版本不同,请参阅history.md和changelog.md (分别)。这些文件位于galsim主目录中,并且 也显示在上面链接的wiki上。
当前能力摘要
目前,galsim具有以下功能:
可以从各种简单的参数模型(如moffat, Kolmogorov和Airy,以及包括Zernike的光学PSF模型 任意顺序的像差,可选的中心遮蔽和 Struts,
可以从各种简单的参数模型以及 从真实的HST数据。有关下载一套宇宙的信息 图像,请参见
< Buff行情>https://github.com/galsim developers/galsim/wiki/realgaxy%20data
可以从真实的湍流相位屏模拟大气psf。
可以通过i)傅里叶变换,ii)真实空间生成图像 卷积(实空间有时比fourier快),或 iii)光子发射。例外情况是包含 反褶积(如真星系天体)必须使用傅里叶展开 仅限方法。
可以处理波长相关的配置文件并通过滤波器集成 适当的带通。
可以对星系轮廓应用剪切、放大、膨胀或旋转 包括来自功率谱或NFW光环剖面的基于透镜的模型。
可以将星系图像绘制到更大图像中的任意位置。
可以使用各种噪声模型添加噪声,包括相关噪声。
可以对现有的相关噪声(即 已经在图像中。
可以从目录、字典文件(如json)读取输入值 或yaml文件),或fits头。
可以以多种格式写入图像:常规fits文件、fits数据 多维数据集或多扩展名fits文件。它还可以压缩输出文件 使用各种压缩,包括gzip、bzip2和rice。
可以使用两个并行的 方法:直接使用python代码,或者通过指定模拟 输入配置脚本中的属性。查看中的演示脚本 每个示例的示例/目录。
从简单的像素比例因子支持多种可能的WCS选项 将ArcSec/像素到仿射变换为(x,y)的任意函数, 包括各种常见的WCS规格。
可以包括一系列简单的探测器效应,如非线性, 更亮更胖的效果等。
有一个模块专门用来模拟wfirst的图像 调查:
未来发展规划概要
我们计划在将来的版本中添加以下附加功能 GalSim:
- 波长相关的光子发射。目前,彩色功能 仅可用于FFT渲染,这相当慢。用于大多数用途 光子射出的速度应该快几个数量级,所以 近期的优先任务。(参见第540期)
- 模拟更复杂的探测器缺陷和图像伪影。例如。 渐晕、边缘、宇宙射线、饱和度、出血等(参见问题 #553,828)
- 正确的尘埃消光模型。(参见第541期和第550期)
- 各种速度改进。(参见第205期、第566期、第875期和第935期)
- 把文件换成狮身人面像。(参见第160期)
还有很多其他的。请参见
< Buff行情> https://github.com/galsim-developeRS/GALSIM/问题获取当前未解决问题的列表。如果有问题请随时补充 是一些有用的东西,你认为应该是可能的,但目前还没有 实施。