这个包采用的是首次运行时编译的方法。所以直接下载安装iri2016库:pip install iri2016。

如果是windows平台,需要安装intel oneAPI fortran编译器。

安装完成后,从启动菜单找到Intel oneAPI command prompt for Intel 64 for Visual Studio 2017快捷方式,启动命令提示符。

在界面运行python运行环境:比如"D:\python\WPy64-3741\WinPython Powershell Prompt.exe"

然后执行:python -m iri2016.time 2014-11-21 2014-11-22 1 -11.95 -76.77。

启动编译链接过程。如果正常,会输出曲线和图表。

或者下载编译好的iri2016_driver.exe,拷贝至对应python源文件的根目录。https://download.csdn.net/download/novanova2009/66759449https://download.csdn.net/download/novanova2009/66759449

编译时cmake总提示The Fortran compiler identification is unknown,设置了FC等环境变量都没有帮助。需要用intel自己的环境变量设置方式才可行。

执行方式

IRI函数的参数包括年月日时分秒字符串,高度列表(起始高度、终点高度、步长),经度和纬度。终点高度比起始高度小,则只获得起始高度的密度等参数。

>>> iono = iri2016.IRI("2003-11-21T12",(80,1000,10),100,100)
>>> iono
<xarray.Dataset>
Dimensions:         (alt_km: 93, time: 1)
Coordinates:* time            (time) datetime64[ns] 2003-11-21T12:00:00* alt_km          (alt_km) float64 80.0 90.0 100.0 110.0 ... 980.0 990.0 1e+03glat            int32 100glon            int32 100
Data variables:ne              (alt_km) float64 3.773e+08 1.874e+09 ... 3.78e+09 3.671e+09Tn              (alt_km) float64 225.6 205.1 171.5 ... 1.226e+03 1.226e+03Ti              (alt_km) float64 225.6 205.1 171.5 ... 1.938e+03 1.947e+03Te              (alt_km) float64 225.6 205.1 171.5 ... 2.436e+03 2.435e+03nO+             (alt_km) float64 13.65 1.275e-08 ... 2.965e+09 2.875e+09nH+             (alt_km) float64 0.0 0.0 0.0 ... 4.961e+08 4.894e+08nHe+            (alt_km) float64 0.0 0.0 0.0 ... 1.156e+08 1.139e+08nO2+            (alt_km) float64 9.078e+05 2.832e+07 9.242e+07 ... 0.0 0.0nNO+            (alt_km) float64 3.764e+08 1.846e+09 2.497e+09 ... 0.0 0.0nCI             (alt_km) float64 -3.773e+06 -1.874e+07 ... -3.671e+07nN+             (alt_km) float64 0.6276 8.967e-10 ... 2.028e+08 1.921e+08NmF2            (time) float64 1.031e+11hmF2            (time) float64 321.6NmF1            (time) float64 -1.0hmF1            (time) float64 -1.0NmE             (time) float64 2.616e+09hmE             (time) float64 110.0TEC             (time) float64 2.496e+16EqVertIonDrift  (time) float64 -1.0foF2            (time) float64 4.125
Attributes:f107:     172.800003ap:       42.0

该包还提供了直接输出图形的执行方式,例如随高度的分布、随时间的变化、随纬度的变化等。

python -m iri2016.altitude 2003-11-21T12 -11.95 -76.77
python -m iri2016.latitude 2004-11-21T17 -76.77
python -m iri2016.time 2014-11-21 2014-11-22 1 -11.95 -76.77

这个python包比较讨巧,采用的是直接读取exe程序输出的方式。exe程序输入参数为:

year month day hour minute second glat glon min_alt_km max_alt_km step_alt_km datadir

例如,iri2016_driver.exe 2001 1 1 0 0 0 100 100 80 1000 10 ".\data\"

输出结果如下:

 80.000  3.79980832E+08  2.20996964E+02  2.20996964E+02  2.20996964E+02  5.98255920E+00  0.00000000E+00  0.00000000E+00  1.03725556E+06  3.78943616E+08 -3.79980825E+06  2.79794663E-0190.000  2.30350182E+09  2.13448318E+02  2.13448318E+02  2.13448318E+02  9.41277012E-09  0.00000000E+00  0.00000000E+00  4.12383160E+07  2.26226355E+09 -2.30350180E+07  1.74804393E-09100.000  3.53089408E+09  2.00654236E+02  2.00654236E+02  2.00654236E+02  9.35555300E-10  0.00000000E+00  0.00000000E+00  1.49334368E+08  3.38155955E+09 -3.53089400E+07  1.54988411E-05

含义分别是

高度,电子密度ELECTRON DENSITY/M-3,中性大气温度NEUTRAL TEMPERATURE/K,离子温度ION TEMPERATURE/K,电子温度ELECTRON TEMPERATURE/K,O+离子密度,H+离子密度,HE+离子密度,O2+离子密度,NO+离子密度,CLUSTER IONS DEN,N+离子密度

然后输出的结果为ADDITIONAL OUTPUT PARAMETERS的OARR数组结果。详细信息参考isi_sub程序。

f107和ig_rf文件需要从irimodel.org下载。

国际电离层参考模型IRI2016的python包相关推荐

  1. MATLAB读取国际电离层参考模型(IRI) 数据 绘制TEC网格

    文章目录 前言 一.IRI模型 二.使用步骤 1.代码下载 2.代码修改 3.代码完善 完整代码链接 4.读取数据说明 前言 最近导师安排的工作需要使用 IRI 模型提供的TEC(单位面积总电子含量) ...

  2. python包 wget_Python数据科学“冷门”库

    原标题 | Lesser Known Python Libraries for Data Science 作者 | Parul Pandey 译者 | CONFIDANT(福建师范大学).Seabis ...

  3. python包引用问题

    python模块引用梳理 文件组织结构: 复制代码 t ├── __init__.py ├── main.py ├── t1 │ ├── A.py │ └── __init__.py └── t2 ├ ...

  4. Python包管理工具Distribute的安装

    Python包管理工具Distribute的安装 Python的包管理工具常见的有easy_install, setuptools, 还有pip, distribute,那麽这几个工具有什么关系呢,看 ...

  5. python 发布包_如何将自己的Python包发布到PyPI

    以前写过一篇类似的文章: 如何打包自己的项目并且发布到pypi上,不过由于PyPI进行了一些更新,因此旧方法不大适用了.趁端午有时间,想把haipproxy的客户端发布到PyPI,以改进用户体验,因此 ...

  6. Python 包安装和 postgresql 的一些问题

    今天安装 hgvs 这个 python 包的时候,遇到几个比较有代表性的问题,记录分享一下. hgvs is a Python package to parse, format, validate, ...

  7. python包NiBabel对医学影像文件格式进行读写:python包NiBabel简介集示例

    python包NiBabel对医学影像文件格式进行读写:python包NiBabel简介集示例 目录 python包NiBabel对医学影像文件格式进行读写:python包NiBabel简介集示例

  8. python包NiBabel对医学影像文件格式进行读写并可视化实战:查看和显示.nii.gz、.nii文件

    python包NiBabel对医学影像文件格式进行读写并可视化实战:查看和显示.nii.gz..nii文件 目录 python包NiBabel对医学影像文件格式进行读写并可视化实战:查看和显示.nii ...

  9. 使用python包faker生成仿真数据

    使用python包faker生成仿真数据 在编写程序过程中,我们常常需要用到很多数据来进行测试.如果要是手动制造数据的话,肯定要花费大把精力,这不合理.此时我们应该使用Faker这个Python库,用 ...

最新文章

  1. 调包侠福音!机器学习经典算法开源教程(附参数详解及代码实现)
  2. Directx教程(27) 简单的光照模型(6)
  3. Python导入模块(包)的两种方式 TypeError: 'module' object is not callable
  4. mysql php 新手卡生成_PHPMaker(基于MYSQL数据库自动生成PHP 脚本的软件)
  5. 学习笔记:InnoDB存储结构及多版本实现
  6. 11 CO配置-控制-成本中心会计-定义分割结构
  7. Htmlt_Div+Css简介
  8. Java并发编程-ReentrantLock可重入锁
  9. 深入理解Webpack核心模块Tapable钩子[同步版]
  10. Mac怎么合并文件夹
  11. 数据之路 - Python爬虫 - Scrapy框架
  12. Unstated浅析
  13. android启用hdcp_如何在Android的Google键盘中启用单手模式
  14. HL340(usb转串口线)驱动
  15. Opencv3.2各个模块功能详细简介(包括与Opencv2.4的区别)
  16. Android解决Can't create handler inside thread that has not called Looper.prepare()
  17. CityBuilder+DataV制作次世代3D城市大屏,一秒俘获甲方的心!
  18. AR1021x USB网卡驱动学习笔记
  19. 详细图解3阶段事务提交及单点故障和网络脑裂问题
  20. 关于jQuery中的submit事件

热门文章

  1. 用Python做游戏有多简单
  2. 安装部署postgresql-15 高可用(pgpool)
  3. 用Vue实现购物车组件
  4. java 参数可传可不传,求大神指教为什么参数传不进来
  5. oracle --sql--转换表字段日期格式(年月日时分秒转换年月日)
  6. 快速幂——Jxc军训
  7. 小米android10升级版本,小米基于安卓9.0的MIUI10稳定版来了,你的手机可以更新吗?...
  8. 西安殡仪馆引入 3D 打印技术,修复逝者遗容
  9. stm32f3新建工程_青风带你探索stm32f3 系列教程及源代码
  10. WDK下载错误如何卸载WDK