生成模型高光谱剖面。

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依赖组织。缺少json:json:jar   从命令行Linux vs Windows调用Java   java“(BluetoothManager)”周围的这对括号是做什么的?   java在Spring中使用哪种传播?   java如何检查一个数字是否以任何顺序包含自身?   java如何在yotaphone上锁定背面屏幕?   无作用域bean的JavaCDI注入   angularjs我希望构建实时数据,将客户端传递到服务器,而不使用JAVA中的WebSocket   不显示对象的java动态JPanel   java在Flex中动态更改列系列显示名称   java Arduino未正确发送整数   测试服务器中的java Apache CXF客户端错误,需要服务器名称指示(SNI)   在GUI中按下按钮的java显示字符串方法   java如何在JSON反序列化期间将引用转换为实例   java类型安全:未选中的从对象强制转换   pac4j(多个提供商)的java SSO身份验证令牌吊销问题   java使用sbt文件指定主类的路径并包含库   运行应用程序时发生java UnsatifiedPendencyException异常