Skip to main content

image Build Status image Build status PyPi version PyPi Download stats

IRI2016 ionosphere model from Python and Matlab

image

Python and Matlab interfaces to the International Reference Ionosphere (IRI) 2016 model.

Install

Any Fortran compiler will do. IRI2016 has been tested with compilers including:

  • Gfortran 5, 6, 7, 8
  • Intel ifort
  • PGI pgf90

Install Gfortran by:

  • Linux: apt install gfortran
  • Mac: brew install gcc
  • Windows

and then from your Python ≥ 3.6 install (such as Miniconda):

pip install iri2016

or:

git clone https://github.com/scivision/iri2016
cd iri2016

python -m pip install -e .[tests]

Usage

  • Height-profile: plot density and temperatures vs altitude image
  • Latitudinal profile: plot densities and height at the peak of F2, F2, and E regions vs geographic latitude image
  • GMT profile: plot densities and height at the peak of F2, F2, and E regions vs universal time image
  • Height vs GMT: plot Ne, Te, and Ti as a function of height and universal time image
  • Latitude vs Longitude: plot of foF2 a function of geographic latitude and longitude image

Matlab

Many Python programs--including IRI2016--are readily accessible from Matlab. Here's what's you'll need:

  1. Setup Python ↔ Matlab interface.
  2. Install IRI2016 in Python as at the top of this Readme.
  3. From Matlab, verify everything is working by from the iri2016/ directory:
    runtests('tests')
    
  4. Use iri2016.m function to access IRI2016 quantities. See RunIRI2016.m for simple example use / plots.

CAVEAT: due to old-fashioned Fortran 77 techniques, Matlab needs to be restarted to run more than one IRI2016 scenario. This is also true of the Fortran code itself, and Python. What we do in Python is call a Python script over and over, inputting distinct parameters. This can be done from Matlab like the BatchIRI2016.m script, enhanced to call an easier/faster Python script. Let us know.

Matlab IRI2016 plot

Direct compilation

These commands are not normally needed unless you want to work with the Fortran code more directly.

Fortran compile

cd bin
cmake ../fortran

cmake --build .

ctest -V

f2py compile

The function DFRIDR() inside igrf.for dynamically calls other functions. This is something f2py can't access directly, so we tell f2py not to hook into function DFRIDF() with the end statement skip: dfridr:

f2py -m iri2016 -c iriwebg.for irisub.for irifun.for iritec.for iridreg.for igrf.for  cira.for iriflip.for  skip: dfridr

f2py: IGRF only

f2py -m igrf -c irifun.for igrf.for skip: dfridr

Notes

Release files for iri2016 1.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iri2016 1.5.2
File Size Uploaded
iri2016-1.5.2.tar.gz 1.6 MB Details

Release files / iri2016-1.5.2.tar.gz

Download URL iri2016-1.5.2.tar.gz
Size 1.6 MB
Tags Source
SHA-256 checksum
How to use checksums
8d4deb71faac077967dd388bb8b8a594a06622dabbb66ecd932bef12e496f1e7
BLAKE2b-256 checksum
How to use checksums
d8c0e8dd9c84af6b7dd447bc4667c33bd17472c2e8ee2a1881ed2a9139244081
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.23.3 CPython/3.7.0

Release history Release notifications | RSS feed

1.11.1

1 release file

1.11.0

1 release file

1.10.2

1 release file

1.10.1

1 release file

1.10.0

1 release file

1.9.0

1 release file

1.8.6

1 release file

1.8.5

1 release file

1.8.4

1 release file

1.8.3

1 release file

1.8.2

1 release file

1.8.1

1 release file

1.8.0

1 release file

1.7.0

1 release file

This release

1.5.2 This release

1 release file

1.5.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page