Filter by Supported Igor version:
Login or register to modify the filter.

Packages include individual Igor procedure files or collections of Igor procedure files that are related, as well as external operations (XOPs). To browse ALL projects (including those that have not been officially released) click on the Advanced Browse link above.


ALP Alternate Line Profile

Last changed: 23 weeks 3 days ago

Why ALP?
The Igor 7 image line profile has fewer features than in Igor 6. Wavemetrics is not currently planning to make significant changes, the
workaround suggested is to use IP6 procedures. Some issues are:
- The profile graph cannnot be modified, or the data explored, for example with a cursor.
- Does not take wave scaling into account.
- No longer possible to graph a profile, it can only be saved. (Has been changed in Igor 7.02)
- The saved wave is now a triplet. This is not visible in the default New Graph menu, inexperienced users can not easily graph it themselves.


Chebyshev - interpolation and fitting using Chebyshev polynomials

Last changed: 3 years 39 weeks ago

Chebyshev performs interpolation and fitting using Chebyshev polynomials

IGOR.6.10.x-6.x-dev2014-Sep-23Development snapshot for Igor 6.10.x and aboveHelp

Clementine, package for modeling decay kinetics using MEM and Least square fitting

Last changed: 6 years 50 weeks ago

Clementine was developed to model decay kinetics processes using either maximum entropy (MEM, included) or least square fitting. The math of analysis (decay times are "tau") is :
MEM: signal(time) = FlatOffset + sum (P(Tau) * exp(- time/tau))
LSQF: signal(time) = FlatOffset + sum (P(Tau) * exp(- (time+TimeShift)/tau))
The package will :
MEM : Generate the distribution of P(Tau) values using Maximum Entropy method over user defined number of bins in tau (log-spaced)
LSQF : Model (and least square fit) sum of for up to 5 different P(tau), TimeShift, and tau combinations. Both P(tau) and tau can be fitted.



Last changed: 1 year 3 weeks ago


An Igor Pro procedure with GUI used for averaging, analyses, figure preparation of evoked potentials. The parameters for analysis are latency, duration, amplitude, rectified area, and conduction velocity of the averaged evoked potentials. These parameters are stored on a table and can be exported as a csv file.

Getting Started


* IGOR Pro 6 (

This code has been tested in Igor Pro version for Windows and supposed to work in Igor Pro 6.1 or later.



DE - optimize with differential evolution

Last changed: 5 years 32 weeks ago

Differential Optimisation - use instead of optimize if that isn't finding the global minimum.
Minimise (or maximise) an energy function by varying independent variables using differential evolution.

Easy peasy to use and comes with an example of how it works.

IGOR.6.20.x-1.x-dev2012-Nov-06Development snapshot for Igor 6.20.x and aboveHelp

DLVO Fitting Program

Last changed: 3 years 10 weeks ago

This program predicts the electrostatic force between two identically charged solids in solution, by numerical solution (Runge-Kutta) of the Poisson Boltzman equation (It provides solutions for both constant charge and constant potential assumptions). The electrostatic + van der Waals force (DLVO force) between the solids is also available by addition of a van der Waals Force (which accounts for a retardation of the Hamaker constant as function of distance).


Easy Multithreading

Last changed: 8 years 15 weeks ago

This project contains a library of functions designed to make multithreading in Igor easy. Furthermore, it allow you to use your existing functions, with little or no modification, in multithreaded data analysis, greatly increasing throughput.

IGOR.6.20.x-1.x-dev2010-Mar-08Development snapshot for Igor 6.20.x and aboveHelp

EccentricXPS - Analysis and Organisation of XPS Spectra

Last changed: 1 year 15 weeks ago

EccentricXPS is an Igor Pro procedure initially written to load, display and analyze the two-dimensional x-ray photoelectron spectroscopy (XPS) images produced by our VG Scienta SES 200 hemispherical analyzer at the University of Erlangen-Nuremberg. EccentricXPS can load and display the images from the raw .txt files produced by the SES software (version 1.2.2, build 37) and then convert the images to normal one-dimensional spectra, which can be easily displayed, compared and fitted, either as single spectra or in bulk.


Gene set enrichment analysis report handling for graphing in Cytoscape

Last changed: 48 weeks 3 days ago

This project handles gene set enrichment analysis (GSEA) output from the Broad Institute resource ( comparing enrichments between two groups and providing output to be graphed in Cytoscape (


Generalized Linear Model Fitting

Last changed: 5 years 32 weeks ago

This implements generalized linear models in a function glmfit. Support for unity-link (gaussian distribution), log-link (poisson distribution), and logit-link (binomial distribution), and tan-link (von mises distribution). General usage given in function TestGLMFit, with a log-link (poisson) example. It is best to just contact me directly for support.


Generalized Spike Sorting Explorations

Last changed: 8 years 46 weeks ago

This is a set of two procedures that extract spike waveforms from raw electrode traces and then perform principal component analysis and clustering on the extracted waveforms. The resulting classified spike times and spike shapes are displayed along with a rotatble Gizmo scatter plot of the first 3 principal components. This is a very early version and is likely full of bugs and inefficiencies.


HITRAN procedures for Igor

Last changed: 4 years 44 weeks ago

Collection of functions and procedures for loading data from the HITRAN database and simulating optical transmission through the atmosphere as a function of temperature, pressure and gas composition as well as thermal emission.

For more information about the HITRAN database, and to access the data files, go to:



Last changed: 51 weeks 11 hours ago

iPhys is a dual image analysis / electrophysiology acquisition and analysis suite. Readable formats include TIFF image files, text data files and iPhys generated data files. The software was developed with increased automation of basic procedures in mind. For example, the user doesn't need to specify a file name for saving acquisition files, as they are automatically saved into the working directory. The user enjoys an extensive graphical interface with sticky windows (making dragging multiple windows easy), easy to activate and close plots and one click generated complex analysis modules.


IR Shifted-peak fitting

Last changed: 1 year 26 weeks ago

This is a set of routines designed to fit temperature-dependent amide I infrared spectra of proteins and peptides. It has been shown that these peaks are temperature-dependent. The data is fit to a sum of Gaussian peaks, with center position and width of each peak assumed to shift linearly with temperature. In addition, the model allows an equilibrium between peaks, so that each peak may (optionally) increase or decrease in amplitude with temperature. The change in amplitude with temperature is modeled as a two-state equilibrium.


iSpectra: A Toolbox for the Analysis of Spectral Images recorded on SEM-EDS systems

Last changed: 2 years 38 weeks ago

iSpectra is an open toolbox for the analysis of spectral images (SI's) recorded on scanning electron microscopes (SEM's), equipped with energy dispersive spectroscopy (EDS) systems for chemical analysis. iSpectra provides various tools for visualising chemical variability within a SI but is primarily written to create true phase maps, rather than more commonly used elemental x-ray distribution maps. iSpectra imports SI's in Lispix format and exports cumulative phase spectra in industry standard EMSA format along with graphical output.



Last changed: 3 years 26 weeks ago

Generate chemical reaction systems, convert them into integrateODE form, and run the model.


Line Broadening

Last changed: 5 years 17 weeks ago

Procedure File containing functions (and wrapper procedures with Menu calls) for convolving waveform data with standard spectroscopic peak shapes (Gaussian, Lorentzian and Voigt) with x-scaling awareness and preservation of integral normalization.


Line Scan Analysis

Last changed: 4 years 40 weeks ago

A procedure for generating kinetic profiles from analysis of intensity values from confocal line scans.
Sequential line scans are imported into 2D waves from either TIFF or Zeiss LSM* files.

Analysis options include:

  • choice of statistical test run on line scan data
  • ability to set inter-line scan-interval
  • stat values output to data table
  • creation of a graph and curve fit options

Running "Line Scan Analysis" from the Macros menu creates a panel (see screenshot).

(* requires the LSMreader.pxp written by Stephen R Ikeda


Localizer - localization microscopy toolkit

Last changed: 5 years 50 weeks ago

NOTE: binaries for Localizer can now be downloaded from The source code is available at

Localizer provides a full package for performing localization and fluctuation analysis in superresolution fluorescence microscopy (PALM, STORM, SOFI, pcSOFI). The package comes in two parts, an XOP that is responsible for performing fast and efficient calculations, and an Igor procedure that provides a graphical front-end.

The XOP includes operations for a full analysis, including:

Loomis-Wood Add-In

Last changed: 34 weeks 6 days ago

The Loomis-Wood Add-In is a package for Igor Pro that allows the creation of interactive Loomis-Wood plots for the analysis of high resolution molecular spectra.


MATLAB Functions

Last changed: 7 years 46 weeks ago

The biggest barrier to Igor adoption is usually knowledge of another environment's language. One of these is MATLAB. If a MATLAB users sits down to write Igor code, sometimes they have a hard time figuring out what the equivalent function in Igor is the function they know in MATLAB. And even if they find that function, if they haven't programmed in Igor, they might get stuck on the syntax.

IGOR.6.20.x-0.x-dev2010-Aug-05Development snapshot for Igor 6.20.x and aboveHelp

Maximum Entropy Fitting package

Last changed: 10 years 2 weeks ago

This is Maximum Entropy Package for solving problems which can be written as linear equation: I = G f, where I is measured signal, G is response matrix and f is a model distribution. It has been used for interpretation of a size distribution from small-angle scattering data, which involves the inversion of an integral equation for which there is no exact solution. It can likely be used for number of similar problems.


Microtubule Life History Analysis Package

Last changed: 7 years 39 weeks ago

Few procedures/functions to track and/or analyze dynamic microtubules.



Last changed: 50 weeks 5 days ago


An Igor Pro procedure with offers an analytical environment for miniature events, written to analyze miniature EPSCs recorded in in vitro brain slice preparation of mice. Several parameters are obtained on each event (timestamps, amplitude, decay time, interevent interval etc) and the parameters can be exported as a comma-separated value file. Averaged trace of recorded events can also be prepared as a graph.

Getting Started


* tUtility (



Last changed: 6 years 33 weeks ago

Neutron and X-ray reflectivity analysis package:

  • Use Parratt formalism
  • Simple and easy to use
  • Provide a number of functions for roughness
  • Installation:

  • Option1: Download anywhere on your computer and open_file/procedure from 'File' menu in IgorPro.
  • Option2: Download and copy it into Igor Procedures folder in IgorPro. It will shows up in the menu.
  • Note: if it complains about FONT, select your favorite font and apply it to all experiments. And new users might want to turn ON Tips from the Graph menu.
  • Downloads:


    OpenCL SGEMM implemented using AMD GPU

    Last changed: 39 weeks 1 day ago

    This is a simple implementation of OpenCL SGEMM using AMD GPU based on various web materials, written only for 64-bit Igor Pro 7, other version not tested.

    *It works only for matrices which are divisible by 16 for now.
    It is not well optimized, but might serve as a starting point for users who would like to explore computing using GPU with Igor Pro.
    With AMD HD 7950, it provides around a factor of 3 speed up over Intel Core i7-4790.


    Periodic Table Selector

    Last changed: 1 year 20 weeks ago

    Periodic Table Selector (PTS)

    What and Why:
    J. J. Weimer has contributed the very nice Periodic Table Menu package. It shows data for one element at a time, but I needed a way to quickly select several elements. PTS is derived from Periodic Table Menu and has the following characteristics:

    - Graphically select any number of elements, the resulting list is processed separately.
    - Use mouse clicks or very fast mouseover to select or deselect elements.
    - Panel can be rescaled (as in Periodic Table Menu).
    - Panel can be closed, then later reopened, the selection is retained.


    pFLIM - an analysis program for time-domain fluorescence lifetime imaging microscopy (FLIM) data

    Last changed: 5 years 37 weeks ago

    We have developed a highly accurate and efficient code for the analysis of time-domain FLIM data (‘‘pFLIM’’ for precision FLIM). Our analysis code accounts for all significant instrumental artifacts (e.g., the instrument response function (IRF) and spatially inhomogeneous background events) and is rigorously based on both conventional and novel statistics. The code is described in detail in the manuscript:

    Precise measurement of protein interacting fractions with fluorescence lifetime imaging microscopy, Walther et al., Mol. BioSyst., (2011), DOI: 10.1039/c0mb00132e


    Point Labels

    Last changed: 23 weeks 2 days ago

    Puts labels on waves at position of cursor A.
    Labels are the x position of the point.
    Uses wave scaling or an x-axis wave.
    Multiple labels on each wave.
    Multiple waves in one graph.
    Labels can be deleted on a per-wave basis.

    Release 1.2 provides improved label formatting, including a settings control panel.


    Quick ROI inspector

    Last changed: 1 year 2 weeks ago

    //// This marquee tool is for analysing time series movies.
    ////Use the marquee tool to mark an ROI, right click and select quickroi.
    ////This is then appended to the image with its coordinates printed to the history.
    ////The average of the pixel values within the ROI in each frame is calculated and
    //// shown in the wave QROI. If you select a new ROI this everything is updated.
    /// You can also use the "subtract background" button to subtract the average of the
    ////ROI pixels from the whole image on a frame by frmae basis. Useful for analysing Ca imaging movies


    Back to top