生成模型高光谱剖面。

HISpectralModel的Python项目详细描述


说明:

该软件包提供了生成银河系中性氢(hi)空间积分谱线模型剖面的例程。数学描述见

Stewart I. M., Blyth S-L. and de Blok W. J. G., ‘A simple model for global HI profiles of gaalxies,’ arXiv:1405.1838, (2014).

用途:

  • 下载并解包后,您可能需要将其目录添加到pythonpath中。

  • bin/子目录中有一个测试脚本,允许您测试代码(这需要matplotlib/pylab)。这个脚本testbed.py还提供了如何使用hiprofilemodel类的示例,该类完成了所有繁重的工作。

  • 中心功能位于名为hi_profile.py的模块中。要使用此命令,请在代码中添加行

    from hispectrum import hi_profile

  • 建立模型的类称为

    hi_profile.HIProfileModel

为了做一个例子,你必须告诉它你想要剖面跨越的速度集。速度通道的数量、间距、顺序等存储在另一个类的实例中:

hi_profile.ChannelDesc

一个简单的替代方法是子类

hi_profile.SimpleVelChannelDesc

你只需要知道第一个和最后一个通道的速度,以及通道的数量。(第四个参数“worldUnit”的默认值为“km/s”。)

要实例化hi_profile.hiprofilemodel,还需要指定参数。该模型的最小值为6,用于构造线轮廓本身;如果需要构造基线,可以提供其他参数。捆绑所需参数信息的最简单方法是在类中

hi_profile.HIVanillaParsSpec

一旦实例化了hi_profile.hiprofilemodel,就可以为方法提供任何所需的参数值

hi_profile.HIVanillaParsSpec.calcModelValues(<numpy vector of 6+ parameter values>)

返回的是先前提供的速度通道范围内Hi型剖面Janskys中数值的Numpy矢量。

  • 如果要更改“速度”通道,则需要hi_profile.channeldesc和hi_profile.hiprofilemodel的新实例。
  • 总而言之,基本步骤如下:
  1. 确定所需的通道数,以及分配给第一个和最后一个通道的速度。

  2. 将类实例化如下:

    parsSpecObj = hi_profile.HIVanillaParsSpec() channelDesc = hi_profile.SimpleVelChannelDesc(velFirstChan, velLastChan, numChansDesired) profileObj = hi_profile.HIProfileModel(parsSpecObj, channelDesc)

  3. 选择参数值。

  4. 通过

    spectrumValues = profileObj.calcModelValues(<parameter values>)

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

推荐PyPI第三方库


热门话题
具有未知数量条件的java If语句   java如何在Spark中使用两个“条件”进行过滤?   雅加达ee为ColdFusion提供的最佳Java ee服务器   java如何在jersey的MessageBodyWriter方法中获取writeTo中的anotations值?   java从脚本文件调用jar文件中的函数   java在执行insert语句后,如何获得id值为的语句?   在OS X上设置OpenCV Java绑定   java使用for循环遍历数组x。以字符串形式返回x的元素,其中每个元素由一个空格分隔   ApacheiClientBuilder为Algolia Java创建的APIClient是线程安全的吗?   java在DFS/BFS算法中获取邻居时避免内存分配?   java使用AES/CBC/PKCS5P加密大文件(2GB)   允许保存/加载列布局的Java DB网格组件   队列大小为1的java Spring调度   跑步带有Java参数的exe   java正则表达式将所有“<”和“>”标记替换为“&lt;”及“&gt;”在<<![CDATA]>标签?   java何时同步变量?