Skip to main content

Provides an IDL-like interface to scipy/numpy for quick porting of IDL code to python.

Project description

idlwrap

idlwrap is a python package which provides many functions known from Harris Geospatial's IDL (Interactive Data Language), all implemented in scipy/numpy.

No IDL is required to run idlwrap, as it is pure python!

With numpy and scipy, there are powerful and open-source tools available for scientific computing in python. Currently, still lots of scientific projects — especially in astrophysics — rely on the proprietary and expensive IDL instead of moving foward to open and reproducible science. There are many reasons for chosing python over IDL, but transition is not that easy. At least it was until now!

This package aims to abstract away all differences in IDL and python and provide the interface and functions you know from IDL, but using scipy and numpy under the hood.

Installation

Install idlwrap with pip:

pip install idlwrap

Usage

One of the main differences between IDL and python is how arrays and indices are handled. Let's create an array:

IDL> a = INDGEN(3, 4)
IDL> a
       0       1       2
       3       4       5
       6       7       8
       9      10      11

That is easy in idlwrap:

>>> a = idlwrap.indgen(3,4)
>>> a
array([[ 0,  1,  2],
       [ 3,  4,  5],
       [ 6,  7,  8],
       [ 9, 10, 11]])

In IDL, array-indices are inclusive:

IDL> a[1:2, 1:2]
       4       5
       7       8

while they are exclusive in python:

>>> a[1:2, 1:2]
array([[4]])

idlwrap can help here too, by making IDL subsetting available as a function:

>>> idlwrap.subset_(a, "[1:2, 1:2]") 
array([[4, 5],
       [7, 8]])

idlwrap provides many more functions. Make sure you check the documentation, which is filled with many examples on how to use idlwrap, but also provides general information on how to port existing IDL code to python!

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
idlwrap-0.1.0.tar.gz (15.5 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page