Main Page
From Motofit
Motofit and Reflectometry(scattering) resources Wiki.
This Wiki describes the use of Motofit to analyse X-ray and neutron reflectometry data, although there is some information on other scattering techniques.
Contents |
Motofit
Motofit is a package that aids the simultaneous least squares fitting of multiple-contrast specular X-ray and neutron reflectivity data, using an Abeles Matrix formalism or Parratts recursion formula. Motofit provides robust and fast optimisation, with a choice between Genetic Optimization (Differential Evolution) and Levenberg-Marquardt.
The aim is to provide maximal functionality, with easiest interaction. Limit the time between collection and publication.
Motofit is licensed using the GNU General Public Licence.
It works within the analysis package IGOR Pro (Wavemetrics, OR). You don't need to purchase IGOR in order to use the functions, a free demo version is available from their website. Motofit will work just as well in the demo version, as the full version.
The development of the Motofit package has been sponsored by the Australian Nuclear Science and Technology Organisation (ANSTO).
Features
- Fits neutron and X-ray reflectivity data using Parratt recursion or Abeles matrix.
- Easy co-refinement of multiple contrast reflectometry data (X-rays and neutrons)
- Genetic Algorithm or Levenberg-Marquardt for minimisation
- Point by point Resolution smearing, roughness (Nevot+Croce) and background included
- Fitting as log R vs Q, RQ4 vs Q and R vs Q.
- Fit to normalised Fresnel Reflectivities.
- Absorption effects through imaginary scattering length density
- Publication quality graphs, with no further manipulation required
- Provides a graphical interface to assist fitting
- Fitting with complex interparameter constraints
- Fitting of multilayer stacks
- Estimation of layer thicknesses from Fourier transform of datasets
- Estimation of layer thicknesses from fringe spacing
- Simultaneous co-refinement of multiple contrast datasets, with arbitrary linkages.
- Supports future development of user defined scattering length density profiles.
- Fits as many layers as you like (or can fit on the screen).
- Batch fitting of multiple datasets, e.g. Kinetic data.
- 3D data plotting with OpenGL
- OPEN SOURCE CODE
Motofit isn't a black box, you find something you don't like, you can change it (within the license conditions)
Software available
- Motofit - this is when you want to parametrise solvent (subphase) penetration in your layers.
- Motofit_imag - this version uses imaginary scattering length densities, to account for absorption effects. Unfortunately solvent penetration is not available in this version. The coefficient files used in Motofit will not work in Motofit_imag.
- lsGex - this file fits a generalised distribution of exponentials to dynamic light scattering data.
- Abeles.xop is a plugin for Motofit. It is a pre-compiled C-code, which increases the speed of Reflectivity fitting by a factor of 5. It is recommended that you install this plugin. You can download it from the Abeles.xop site. C code for the Abeles XOP may be found here.
- Gencurvefit is a plugin for IGOR Pro. It is a pre-compiled plugin, which allows anyone to use genetic optimisation to fit any user-defined fitfunction. It is designed to complement and follow the same syntax as IGOR's curvefit operation.
Please note that the Motofit package now installs Gencurvefit.xop and Abeles.xop when you use the Win32/Mac installer programs
Download address
You can download all the Motofit software, and manuals from the sourceforge website.
Installing Motofit
Please note that the Motofit (not Motofit_imag) download package now uses Win32/Mac Universal installer programs. I recommend using these packages instead of installing by hand, as all the files go in the right place. However, if you still want to do a manual install the instructions are below.
Install the base procedures
- Install IGOR Pro by downloading from the Wavemetrics website. Motofit will work just as well in the demo version as the full version. However, there are some limitations, namely the printing of graphs and the saving of experiments.
- Download Motofit from Sourceforge and extract from the zip file
- Place the Motofit directory that contains all the .ipf procedure files somewhere on your harddrive.
- Place a shortcut/alias/link from that directory and place the shortcut in \Igor Pro Folder\Igor Procedures. This is so that Motofit will start up whenever you start IGOR.
- It's recommended that you install the Abeles.xop file, which speeds up the fitting by a factor of 5 (see next section).
Install the optional Abeles.xop file
- Download the Abeles xop files from here.
- Place the Abeles.xop and Abeles.ihf files in the same directory as Motofit.
- Create a shortcut to the Abeles.xop file and place in \Igor Pro Folder\Igor Extensions\.
Please note that this xop file is platform dependent, either Windows or Macintosh. Make sure that you get the correct one.
Install the GenCurveFit.xop file
- Download the GenCurveFit xop files from here.
- Place the GenCurveFit.xop and GenCurveFit help.ihf files somewhere on your harddrive, in the same folder.
- Create a shortcut to the GenCurveFit.xop file and place in \Igor Pro Folder\Igor Extensions\.
Please note that this xop file is platform dependent, either Windows or Macintosh. Make sure that you get the correct one. There is an example experiment in the extras folder, which will show you how to perform a simple curvefit. You can also use the curvefitting GUI. Once you have loaded the procedure file (/extra/GeneticOptimisation.ipf) click on Motofit->Genetic Curvefitting.
Publications
A list of publications that have used the Motofit program to analyse data.
Screenshots
Graphical examples of the Motofit program. All graphical output is fully customisable, and publication quality. Jump straight from collection to publication: no messy, timewasting replotting via Excel.
Acknowledging Motofit
If you use Motofit to analyse reflectometry data, please cite Motofit in the references. This is so I can justify spending the time writing it to my bosses. Cite:
doi:10.1107/S0021889806005073
Benchmarking Motofit
Motofit has been benchmarked against other reflectometry software, to investigate it's accuracy.
Motofit manual
You can examine the Motofit manual on the wiki.
Frequently asked questions
Please read the list of frequently asked questions (FAQ) before emailing for support.
Other scattering resources
A list of other reflectivity software:
Some tutorials:
- http://www.mrl.ucsb.edu/~pynn/
- http://users.ox.ac.uk/~dgbuck/people/bucknall/research/NR.htm
- http://www.ansto.gov.au/ansto/bragg/symposium/talks/wed_rennie.pdf
- http://www.ansto.gov.au/ansto/bragg/symposium/talks/fri_james.pdf
Other tools for IGOR users
An expanding list of other scattering resources.

