Advanced Photon Source at Argonne National Laboratory   APS USAXS instrument
USAXS instrument at the Advanced Photon Source,
X-ray science division, beamline 9ID-C

Advanced Photon Source

A U.S. Department of Energy, Office of Science,
Office of Basic Energy Sciences national synchrotron x-ray research facility

 
 
Argonne Home > Advanced Photon Source > USAXS >

Important links:

USAXS web page

Irena 2 (software for SAS modeling)

Nika 1 (software for SAS area detector  data reduction )

Irena 2 movies & Handouts

Nika movies & Handouts

Indra 2 (software for USAXS data reduction)

Some other useful code for Igor Pro I wrote:


Cromer-Lieberman code for IgorPro (ver. 4.0): AtomicFormFactors

Clementine, package for modeling decay kinetics

Other useful links…

Home page of Pete Jemian (more SAS)

APS SAS web page

Irena package for analysis of small-angle scattering data

Irena is package of tools for analysis of small-angle scattering (SAXS, SANS, USAXS, USANS) data. It is mostly useable for analysis of data in materials science, chemistry, polymers, metallurgy, physics, and other systems of typically solid or liquid samples. It addresses complex systems with size distributions, hierarchical structures, diffraction peaks, etc. For less complex systems use NIST SAS data analysis package for Igor Pro. Irena also contains simple X-ray and neutron reflectivity tool, for more complex systems use Motofit. All of these packages are written for Igor Pro from Wavemetrics, Inc.

Irena is typically not used for analysis of data from most bio-SAXS experiments, there you most likely need program ATSAS.

Current veraion contains main tools:

  1. Unified fit
  2. Modeling II - Direct modeling of SAS from up to 6 populations on up to 10 data sets at once. Selection of form factors and structure factors. Can be combined with Unified fit and Diffraction peaks.
  3. Size distribution using Maximum Entropy, Total Non-Negative Least Squares and Regularization methods
  4. Guinier-Porod model
  5. Fractal model (combination of mass and surface fractals)
  6. Debye-Bueche, Ciccariello-Benedetti, and Treubner-Streus models
  7. X-ray and Neutron reflectivity using Parrat's recursive method
  8. Small-angle diffraction tool (up to 6 diffraction peaks)
  9. Pair distance distribution function (PDDF, P(r), see GNOM from D. Svergun for more details)
  10. Powder diffraction peak fitting tool (WAXS)

    Support tools
  11. Data plotting tools - 2D, 3D, can create movies of plots.
  12. Merging of two overlappind data sets (SAXS curves from differnet distacnes etc.).
  13. Scattering contrast calculator, including anomalous effects using Croman-Liberman code
  14. Data import tool - imports data from ASCII & XML (CanSAS XML) files 
  15. Data export tool - exports data to ASCII files
  16. Data manipulation tools - subtract, scale, multiply, etc. - change data as needed.
  17. Desmearing using Lake method
  18. Data "mining" tool
  19. Scripting tool - scripts Unified fit, Modeling II, Ploting tool, and Size distribution to run automatically on multiple data sets

When publishing data analyzed using Irena please use reference: "Irena: tool suite for modeling and analysis of small-angle scattering", J. Ilavsky and P. R. Jemian, J. Appl. Cryst. (2009). 42(2), 347-353. (request pdf copy)

Workshops on using Irena & Nika packages... at APS we organized four workshops in 2012 and two in 2013, 2014 and 2015. In November 2012 was course at Australian Lightsource and in February 2013 was one at Brazilian lightsource. Next workshop at APS will be scheduled in the future as needed. To request to be put on waiting list for next workshops send e-mail to Connie.

Mailing group for Irena users: If you want to be informed about Irena updates and possibly have place to inquire about SAXS/SANS analysis problems, visit the page: http://www.aps.anl.gov/mailman/listinfo/irena_users where you can join this group.

Current version
2.60
released 3/5/2016
     
Installation method
Link for download
Use only one of these methods

Most likely correct:

Simple & easy. Uses Igor Pro itself to do all work :-)

Installs/updates/uninstalls Irena (+Nika, Indra, and xop), uses http to download the latest version from APS depository.

 
If the above fails:
 
Igor - local copy

Universal Installer 1.30.pxp,
IgorCode.zip (~78Mb)

If you have bad network connection or need to install on many computers at once. Download both files, unzip the zip file and place in the same folder with the Universal Installer. Run the Universal installer and choose "use local copy". For Igor 6.3x and higher.

java - http
For default installation of Igor Pro 6.3x with standard locations of Igor folders (Mac or Windows). Seem to fail on non-English versions of Windows! Uses http and can check available/installed versions, uninstall the packages, and install/update to the latest versions. Report any problems.
Igor - http/ftp
Universal Installer

Older installer
Universal Installer 1.26.pxp

For Igor version 6.3x and higher. Universal Installer 1.19.pxp

Prior version for Igor 6.20: Universal Installer 1.14.pxp

Older versions for older Igor Pro or in case of issues with current version.

Can uninstall, install, or update to latest relased version of Irena using Igor. Uses http, ftp, or local copy; prior versions use only ftp or local copy.

Manual
Download manually or use menu in installed Irena version. It will update automatically to latest appropriate version.
   
Manual methods (not recommended, unless above methods fail)
zip files
Download, unzip and install manually to proper places as indicated by folders in the zip file. Iinstall xop support manually (see below), including installing HDF5 support (provided by Wavemetrics, but not installed by default).
XOP zip files

WindowsXOPs,
MacXOPs.

Install when using zip file installlation. Please make sure you install the correct version for your platform. You can also download latest versions of these xops from IgorExchange.
Prior versions

Irena_v_2.50.zip, Irena_v2.42.zip, Irena_v2.36.zip

2.16 is the last release for Igor 5.0: Irena_v2.16.zip

Obtaining help:

  1. Read manual
  2. Watch Help movies. Try my Youtube channel!
  3. Participate in one of the workshops
  4. Register for discussion group and ask author question there.
  5. E-mail author a question

Extending the code capabilities beyond design.

New for this version........:

2.60 3/5/2016
Added Panel scaling to most large panels
Modified GUI package preferences handling. It was reseting the GUI choices, wrong logic.
Data merging tool - fix problem with liberal names.
Added multi-package loader (Irena+Nika)

2.59 2/1/2016
Igor 7 compatibility release
Unified fit - GUI behavior improvements and minor bug fixes.
WAXS-Powder diffraction tool - version 1 of Powder diffraction tool for users. Still work in progress, but usable for testing by users.
Modified check for updates macro to use http once, if it fails use ftp, if that fails also then bail out and give error. Should be much easier for users who are on systems without net connectivity.

2.58 10/30/2015
Verified to work on Igor 7 beta 1
Removed Modeling I from the code and manual. This tool has been deprecated for few years now and it was removed to reduce code clutter.
Added Data Merging - new dedicated tool to merge two segments of data (q-segments). version 1.0, so this may be bit buggy.
Modeling II - added ability to handle per pixel smearing of the model. Quite complicated for users, read the manual!.
Modeling II - removed the need to model data to high enough Qs for slit smeared data. The slit smeared data will be extended to 2*Slit length when user selects too small Qmax.
Modeling II - catch Log-Normal Min Size if smaller than 3A and reset for user to 3A. Cannot have SAS from particles smaller than 3A - that is atom and not particle for SAXS.
Modeling II - fixed bug where the Size distribution plot in Modeling II was showing information vs Radius always, even when user used Diameters as particle dimension. And it was not obvious to users that is happening. Now uses dimension based on what is selected as the particle dimension (Radius or Diameter).
Data Manipulation I - enabled Q shifts and added MergeData2, which optimizes scaling Data2, backgroundData1, and Qshift of Data2. This makes sense when SAXS alignment is not perfect.

2.57 3/8/2015
Fractals model - added Qc as transitional Q value when surface fractal changes to Porod's slope at high Q. Set to 0 if not needed.
Modeling II - added MassFractal and SurfaceFractal - models are copied form Fractals tool, so users need to read manual for that tool
Modeling II - added controls which enable to select, which additional graphs are displayed. Choices are SizeDistribution, Residuals, and IQ^4 vs Q. These two graphs are now matching colors to the main Graph colors for easier navigation when multiple data sets are used.
Modeling II - minor bug fixes: Catch when slit length is set incorrectly (too small or too large), set properly Dv and Dv limits for Fractals and some other ones.
Modeling II - Scale data by now actually works. It was never programmed to work (it is cumbersome to make it operational, so it may have some unforeseen consequences). Tread carefully!
Scripting tool - added hook function after data set is loaded, before it is fitted, for user to do something which needs to be done. Check the code. For now only for Modeling II.
Scripting tool - fixed preservation of user choices on errors and intensity scaling for Modeling II and Size Distribution.
Scattering contrast calculator - Modified description for exp(-Mu*T) as Transmission. Users seem to be missing the point…
Size distribution - added colored bar at the top of the graph - "trust indicator" - which indicates, which sizes can be trusted and which are suspect/totally uncertain. Based on 2*pi/Q values used for fitting.
Data manipulation II - added divide by data set (requested feature). Fractals model - added Qc as transitional Q value when surface fractal changes to Porod's slope at high Q. Set to 0 if not needed.
Modeling II - added MassFractal and SurfaceFractal - models are copied form Fractals tool, so users need to read manual for that tool
Modeling II - added controls which enable to select, which additional graphs are displayed. Choices are SizeDistribution, Residuals, and IQ^4 vs Q. These two graphs are now matching colors to the main Graph colors for easier navigation when multiple data sets are used.
Modeling II - minor bug fixes: Catch when slit length is set incorrectly (too small or too large), set properly Dv and Dv limits for Fractals and some other ones.
Modeling II - Scale data by now actually works. It was never programmed to work (it is cumbersome to make it operational, so it may have some unforeseen consequences). Tread carefully!
Scripting tool - added hook function after data set is loaded, before it is fitted, for user to do something which needs to be done. Check the code. For now only for Modeling II.
Scripting tool - fixed preservation of user choices on errors and intensity scaling for Modeling II and Size Distribution.
Scattering contrast calculator - Modified description for exp(-Mu*T) as Transmission. Users seem to be missing the point…
Size distribution - added colored bar at the top of the graph - "trust indicator" - which indicates, which sizes can be trusted and which are suspect/totally uncertain. Based on 2*pi/Q values used for fitting.
Data manipulation II - added divide by data set (requested feature).

2.56 8/20/2014
ASCII export - fixed bug which prevented Multiple QRS data export.
Plotting tool I - made "Zoom and Set limits" marquee item dynamic, so it shows only on the right graph.
Plotting tool I - added Int*Q^3 as plotting data option
Unified fit - fixed bug in GUI of level 2 not showing Link B to G/Rg/P
Unified fit - minor change of GUI - changed Surface to Volume description to: pi*B/Q which is also S/(V*fi(1-fi)).
Scripting tool - added wave name match string to QRS data type.
All packages - created on log-rebinning routine and propagated that routine (General Procedures 1.71) through the system, replacing all log-rebinning other routines.
Data Manipulation I - removed the slider for log-rebinning, it seems not functional for some time and new code does not accept this parameter anyway. May need to address this in the future again.
Data Manipulation II - fixed bug which caused failure when wave names were liberal.
ASCII import - added q sorting as some users seem to have data which are not necessarily q increasing and it causes troubles for analysis packages.
All packages - added check for slit smeared data to force Qmax to be at least 3*SlitLength. It does not work otherwise.
Modeling II - added User Name string to each population, so user can (when individual populations are displayed) sort out what he/she is looking at. Similar to names for each data set.
FitPowerLawWithCursors and FitLineWithCursors now follow user selected font size and power law does not have units (depends on data calibration).

2.55 2/20/2014
ASCII export - fixed bug which prevented Multiple QRS data export.
Plotting tool I - made "Zoom and Set limits" marquee item dynamic, so it shows only on the right graph.

2.54 1/5/2014
All files - extended copyright to 2005 - 2014
Installer - version 1.23 will overwrite stale links to hdf5 xops, created on OSX when updating Igor from 6.2x to 6.3x etc.
ASCII Import - added "RemoveFromNameString" which allows users to remove part of name which is of no interest.
ASCII Import - import data as double precision to avoid some users running out of precision when their intensity has unusual values due to calibration. also made minor change in Modeling II to address this.
ASCII Import - modified log-q points rebinning to keep minimum q step (matching difference between the first two points after trimming). This should be more robust.
Control Procedures - minor fix to handle weird transient bug and some case when the controls were failing. Fixes for handling of Irena results and QIS data type.
Plotting tool - modified to have infinite number of colors and symbols (well, repeating set of 10) and modified how formatting string is stored. This may change how old graphs look (colors and symbols).
Plotting tool - minor fix for Change Graph details panel visibility

Data manipulation I - added controls for Units of the input data (just show) and output data (select).
Data manipulation II - added Units controls.
Analytical models - added Rg cutoff parameter to Unified level. Requested feature…
Analytical models - added linking of Rg cutoff to Corr. Lengths and added ability to display separate data for the tabs. Minor improvements.
Analytical models - added residuals plot per user request.
Modeling II - fixed export of Schulz-Zimm distribution parameters to notebook and waves, which seemed to unfinished.
Modeling II - fixed bug in Analyze uncertainty which caused problems when parameter name was simply too long. Made shorter by replacing parts of the string.
Scripting tool - fix for Plotting tool controls which were failing on Modeling II diameter/radii option.
Scripting tool - if Plotting tool is not opened, Scripting tool will open it now instead of throwing error. Fixed Sync of Folder match strings.
Unified fit - number of fixes made by DWS with corrections to analysis tools, some output and also GUI changes.
Form Factor package - fixed support functions which were missing some of the FF and did not produce Volume or Surface conversions.
Form Factor package - Cylinder, CylinderAR, and Spheroid will now use NIST XOP, if available (many times faster).
Evaluate Size distributions - minor fixes for new form factors.
Reflectivity - fixed annoying bug which caused sliders to be drawn over one of the graphs instead of updating the positions in the main panel.

2.53 11/23/2013
Force users to use Igor 6.3x
Controls procedures - enabled use of following characters in names: (){}%#^$?|&@
… note: this means the Fldr and Wv match fields are now "string match" matching part of the name, cannot use Grep commands with control characters, as I have to escape all of the control characters as they are now considered part of the name…
Form factors/Modeling II - added Parallelepiped using NIST XOP. If the XOP is installed, this shape is available and works. Fast… Need to convert more Form factors to XOP, it is fast!
Data manipulation 1 - fix log rebinning when Q data starts with points where Q<=0. This used to fail.
Data manipulation I - added simple method of merging data (for different q ranges). Sets background for Data1 and scales Data2 (and optimizes the two values to get best fit).
Data manipulation I - preserve cursor positions through adding data.
Controls procedures - modified handling Irena results waves, mainly the Y wave. Faster.
Controls procedures - modified to avoid showing folders, which are disallowed by use of wave name grep string. This was showing parent folder before, which caused some confusion.
Controls procedures - fixed case when it was unable to get to folders with same names in different parent folders.
Control procedures - QRS data handling fixes (again…) Minor location of controls fixes.
Control procedures - Fixed time delay when the Folder match string was retained for 5 seconds due to cashing.
Scripting tool - modified to set cursors to first and last point of data, if they are not set by user ahead of fitting.
All panels - Added check to detect, that experiment moved from other platform (Win/OSX) and if detected, reset fonts to default of the new platform.
Modeling II - added no fitting limits option
Modeling II - propagates Intensity units through and made GUI changes to match those.
modeling II - removed option to combine SpehereWithLocallyMonoDispersed Sq and any structure factor (it is nonsense).
Modeling II - added optional Constraints input to enable more user control of the fitting and relationships between the parameters.
Modeling II - Unified levels - added ability to link B to Rg/G/P based on Hammouda's Guinier/Porod and removed ability to fit RgCO. If anyone needs it, I can add it back.
Modeling II - enabled use of radii or diameters. Changed GUI to simplify and added visual description of what type of distribution is used and which tabs are being used.
Modeling II - fixed bug in Analyze uncertainties which caused the code not to read number of fitted points, getting wrong Chi-square range
Modeling II - fixed the Form factor and Structure factor help file to work also on Windows and fixed it extension.
Unified fit - fixed bug introduced in last update which prevented fitting with fixed P, Rg, and G. Changed the code to always include fitting B as that is probably necessary.
Unified fit - added optional Constraints input to enable more user control of the fitting and relationships between the parameters.
Unified fit - added option to link B to G/Rg/P values using Hammouda's Guinier/Porod relationship
Size distribution - Changed all Graph fonts to follow user defined choices. Added option to run automatically Calculate parameter on whole distribution.
Size distribution - Fixed units of saved distributions to : Volume distribution cm3/cm3/A and Number distribution 1/cm3/A.
Main system - added Form factor and Structure factor panels to "Kill all graph & panels" procedure.
Plotting Tool I - fixed minor bug caused by Igor Pro behavior change which caused Modify data always to remove at least first and last point.
Export ASCII data - modified GUI to be more obvious (user problems) and changed Listbox mode to enable range of data selection for multiple data sets.
Import ASCII - Removed error when file being imported has less columns than found originally, if these are not being imported and used.
Import ASCII - enabled use of following characters in names: (){}%#^$?|&@
Data Manipulation I - disabled Q shift, let's see if anyone complains.
Reflectivity - minor change in behavior, when starting or recovering parameters, it will set all sliders to the middle of their range.
Reflectivity - attempted to fix when some users have data with NaNs and attempt to fit to them, which fails. Cleaning up NaNs from data before fit now.

2.52 7/23/2013
Changed back everything to rtGlobals=2, major issues in the code run were found.
Control Procedures - fixed failure to work for qrs waves when folder name contained [].
Form factors/Modeling II - Added Janus CoreShell micelles form factor.
Form factors - removed algebraic form factors. Useless, use Unified ones if needed.
Form factors - added CoreShellPrecipitate. Core shell particle where shell thickness is calculated for each particle size in such manner, that average contrast of the particle is the same as surrounding matrix. Seems surprisingly common in my experience. Read manual!
Form/Structure factors - created Igor help file with the description. Added call buttons from Modeling II & Size Distribution GUIs.
Plotting tool I - added basic contour plot capabilities
Unified fit - fixed invariant calculation for levels using RgCuttOff. These levels had previously calculated higher invariant value then correct.
Unified fit - added optional panel (default is to show it) which let's users check fitting parameters before fitting is done same as in Modeling II. Modified code for Uncertainty evaluation and Scripting tool to handle this change and skip the panel.
Unified fit - removed FitRgCO option for all levels. I think it is not sensible to try to fit this.
Unified fit - local fits now will guess starting parameters from cursor position and will not use user input parameters (that kept failing with many users).
Data Manipulation I- fixed log rebining of data which was not working. Note, it overlays log-x scale over the data and then simply averages points in each bin. Similar to Nika.
Data Manipulation II - checked behavior and fixed some GUI and behavioral problems, especially with Data subtraction.
ASCII Data Import - fixed log rebining and removed the parameter, which no one understood anyway. It is not being used now.
ASCII Data Import - header information, when attached to wave note is now cleaned of any leading special characters and leading spaces. This allows USAXS exported ASCII data import with meaningful wave note and should work for everyone.
ASCII Data Import - Remove Int<0 is now Remove Int<=0. Note that on import the all Q<=0 points are also removed.
All panels - changed orientation of the two arrows at the top right to move content of the window. Wrong logic used originally, now same as regular PC/Mac GUI system.
Size distribution - reduced significantly the number of available form factors. Complex FFs make no sense in this tool.
Scripting tool - modified calling routines to avoid getting stale state of controls. This should prevent "error, report it" message.
All tools - changed all cases when I used "Save in …" in buttons to "Store in …" to prevent confusion of users that this actually saves Igor experiment.
Main procedures - Changed all web addresses to new xray.aps.anl.gov, changed Manual and Manuscript download to http protocol, ftp was failing.
Guinier-Porod fit - finally local fits to smeared data seems to be under control. Updated manual with real description of the tool and elevated the version to 1.0, first release version. Need to finish some nice outputs, but I think it is finally useable even on smeared data.
Reflectivity - added option to calculate model at 5x denser Q points. Check and fixed some GUI problems. Need to update manual, it is obsolete, but do not have time now.

2.51 4/8/2013
Added monthly check for updates and reminder of references for publications.
Modified to compile on computers even without xop and abort & produce message when xop is called with instructions.
Guinier-Porod Fit - created first version of this tool.
Control procedures - modified to show only last folder but work transparently for the tools.
Control procedures - added G(r) as data type of Irena results.
Control procedures - changed "Indra 2 data" to "USAXS". More human readable.
Unified fit - fixed Checking of validity levels not to declare level without Guinier part to be invalid.
Unified fit - added "No limits" checkbox and support code to fit without limits.
Reflectivity - added "Motofit" as data type for use with this tool.
Added scroll buttons to scroll vertically content of panels for small displays. Modified tools: Unified Fit, Modeling II, Size Distribution, Gunier-Porod, Fractals tool, Analytical models, Small-angle diffraction, Pair-distace dist., Reflectivity, ASCII import, ASCII Export, Data manipulation I, Data manipulation II, Data mining tool, Plotting tool I.
Added "User" defined structure factor (implemented in Modeling II)
Added panel version control for: Fractals tool, Small-angle diffraction, ASCII export, ASCII Import
Data Manipulation II - modified to add ability to create errors (=uncertainties), scale and rebin to number of points. Modified GUI to separate processing, errors generation and post processing (scaling/rebinning).
Plotting tool II - changed how error bars are displayed and enables SMR data error bars.
Plotting tool I - added ability to use calibration unit (arbitrary, cm2/cm3 or cm2/g) from the USAXS data. Added checkbox to avoid units checking.
ASCII Import data - added controls to select import units for Intensity [options: Arbitrary, Volume…cm2/cm3, Weight…cm2/g]

2.50 1/4/2013
Universal Installer - Modified to be able to update xops and made more robust. It will attempt to download file 10x before giving up to fix problem with ANL proxy.
Size Distribution - ability to estimate uncertainty. Propagated the uncertainty to SizeDistribution through rest of the code and support in calculations of volume.
Data Manipulation - fixed problem when the new data folder name was too long, which was failing. Cut the length to 31 characters ONLY.
Control procedures - improved speed by caching IR2P_GenStringOfFolders to reuse list if it is newer than 5 seconds. Major speed improvement for scripting tool - changed for all data types.
Control procedures - added ability handle trs, drs, and mrs data as qrs system. These data are produced by Nika when user wants output as d-spacing, two theta and distance.
Scripting tool - modified user feedback due to increase in speed of Control procedures.
Scripting tool - modified to handle Size Distribution with uncertainties evaluation.
Added DataManipulationII panels to "Kill all Irena panels" function.
Form factors - added SphereWHSLocMonoSq - this is sphere with Percus Yevic Hard spheres Structure factor which is a fraction of sphere size.
Reflectivity - about 40x increase in speed due to improvements Andrew made in last few years. Added sliders to control parameters - seems to be now fast enough.
Reflectivity - Added ability to use dq and dq^2 as resolution wave, not only % resolution.
Reflectivity - Added ability to link parameters. Major change in GUI. Added button to "Fix limits".
Reflectivity - Added saving fitting uncertainties into already existing "Error" variables. Made many functions static.
Reflectivity - Added ability to insert or remove layer (requested feature).
Reflectivity - Added fudging errors for data when user chooses not to provide them. Original code set them to 0, which really did not fit. Using my own function from GeneralProcedures.
Unified fit - added ability to analyze effect of the data uncertainties on the results
Modeling II - added Fix Fitting limits buttons - two - "tight" (L1) setting smaller range and "loose" (L2) setting wider range.
Modeling II - added ability to analyze uncertainties/stabilities for parameters as is currently available in Unified fit.
Analytical models - small fixes in Treubner-Strey GUI.

2.49 11/5/2012
Universal export - Fixed bug which prevented QRS data from being processed.
Import ASCII - removed popup with folder selection. Keeps confusing users (class observation). Type folder name in manually, if you need to.
Data Manipulation II - modified GUI to make thing bit more obvious.
Data Manipulation II - fixed handling liberal names, modified NameModifier to reflect the operation done.
Data Manipulation II - added tool to normalize data sets to area under the curve in range of Qs defined by user. Requested feature.
Unified fit - added ability to analyze the stability of each parameter.

2.48 8/13/2012
Updated Manual.
XMLutils xop updated to fix speed in loading xml data files
Data mining - fixes to length of Modeling II results of wavenote parameters searches names.
GUI fonts control - fixed bug in Windows 7 which caused that fonts were not changed.
GUI fonts control - removed all declared fonts and sizes for panels so user has controls over the GUI visualization
Modeling II - Reduced number of parameters stored in wave note and therefore exported to minimize garbage.
Plotting tool I - removed one ipf file and added for now invisible KBColorizeTraces package to use with some graphs.
Plotting tool I - added "Gizmo" based 3D plotting tool. Still under development, but actually useable.
ASCII data import - added ability to reduce data to smaller number of points on import with suggestion to reduce number of points when too large number is found. Also added double click action on file selection - now it will check number of columns in the file and display the file (like clicking "Test" and "Preview" buttons)
DataManipualtion II - converted match strings to RegEx and modified GUI to be bit more user friendly.
Debye-Bueche - fixed formula used. User reported bug.

Disclaimer:

This set of macros is currently being developed for use on any SAS data. Their use by anyone for open science is free of charge. If you want to use them for proprietary work, please contact me, the author, Jan Ilavsky, for permission. There are no warrantees with respect to functionality of these macros, please, verify all results by independent methods.

  Main techniques:

Modeling II.

Direct modeling of SAS from up to 6 populations of particles (in dilute limit, with 5 different Structure factors to use if appropriate). Allows up to 10 input data sets. Can be used to analyse multiple data sets collected on same sample with(for example) changing contrast, different q ranges, different instruments, etc... Each population can have (principally) for each input data set different contrast. Very flexible. Allows fitting of form factor & structrure factor parameters (which does not mean the data must support this fittng!!!).    

Unified model.

For details about Unified model please see Gregg Beaucage web page and posted papers:

http://www.eng.uc.edu/~gbeaucag/BeaucageResearchGroup.html

http://www.eng.uc.edu/~gbeaucag/PDFPapers/Beaucage2.pdf

http://www.eng.uc.edu/~gbeaucag/PDFPapers/Beaucage1.pdf

http://www.eng.uc.edu/~gbeaucag/PDFPapers/ma970373t.pdf

Generally, the SAS curve is described here using levels each created from Guinier region with Power law tail. Included are methods to address fractals, correlations between the particles etc. This is generic formula of this theory, which should be useable in most cases. Very flexible method.

  Size distribution

Included is method for using Maximum entropy (MaxEnt), Regularization and Total-non negative least square method (TNNL) to evaluate size distribution from SAS data using various models (Form factors) of scatterers. The code was modified from MaxEnt C program provided by Pete Jemian with added TNNL method. For more details on the MaxEnt and Regularization methods, please see Pete Jemian web page….

References for MaxEnt method (the implementation used in this code or prior versions):
Potton, J. A., Daniell, G. J., and Rainford, B. D., Particle size distributions from SANS data using the maximum entropy method, J. Appl. Cryst. 21, 663-668 (1988).
P. Jemian, G. Long, F. Lofaj, and S. Wiederhorn, Anomalous ultra-small-angle x-ray scattering from evolving microstructures during tensile creep, Meeting of the Materials Research Society, Vol. 590, edited by S. Mini, D. Perry, and S. Stock, Boston, Massachusetts, 1999 (Materials Research Society), p. 131-136.

Reference for TNNLS method:
Michael Merrit and Yin Zhang, Technical report TR04-08, Department of Computational and Applied Mathematics Rice University, Houston, Texas, 77005, USA, (May 2004), http://www.caam.rice.edu/caam/trs/2004/TR04-08.pdf

PDDF

Also known as p(r). Using two methods (regularization, used by GNOM, and indirect inverste Fourier transformation, see ref. by Moore in manual) one can produce this "staple" of bio-SAXS now in Irena. Results were checked against GNOM on limited set of test data.

Fractal model

This fractal model is by Andrew J. Allen from NIST. For details see included description.

Reflectivity model (aka "Parratt's recursive code")

This is relatively simple tool to model and fit X-ray and neutron reflectivity for up to 8 layers using recursive Parratt’s code (L. G. Parratt, Phys Rev, 95(2), 359-369, 1954), as implemented for example in older code called “Parratt”. The code itself was provided by Andrew Nelson (Andrew_Nelson@users.sourceforge.net ). I have implemented only the GUI in manner similar to the rest of the Irena code. I will provide basic support for this package. Please note, that Andy has made more complex and capable version of his package “Mottofit” available for free download to other Igor users through http://motofit.sourceforge.net/ under GNU license. If you need more complex fitting, than my code allows, please use Andy’s powerful code. You may, however, have to learn little bit more of Igor.

 

 

 


        

Privacy & Security Notice  |   Contact Us    
This page last modified: 2016-03-11 2:40 PM