- What's in the box...
- The miFit User interface: the iFit main window
- The iData objects (iFit/@iData): the core data set
- The iFunc objects (iFit/@iFunc): the core model
- The fit functions/models (iFit/Models)
- The lower level optimization library (iFit/Optimizers)
- The lower level import routines (iFit/Loaders)
- The documentation (iFit/Docs)
- Example data files (iFit/Data)
- Interfaces with other software and Graphical front-ends (iFit/GUI)

What you will handle mainly deals with iData and iFunc objects. The miFit user interface is a simplified entry point to these objects and their capabilities. Please start to read these pages first, as well as the Quick Start page if you're in a hurry.

## The

miFitUser interface: the iFit main window

miFit is the main entry point for an easy access to most iFit functionalities: import, plot, fit, treat, export data sets and Models.

This is definitely where you should start.

The iData
objects have been defined in order to perform the following
operations seamlessly:

- Load any text formatted file, and a large set of binary format files
- Display object information, including metadata from the
original file

- Plot the object Signal in a simple view for 1D, 2D and 3D objects
- Perform mathematical operations using objects (=-/* trigonometric projections integration re-binning...)
- Fit a parametrized model to the object
Signal, which makes use of the Optimizers
and Models libraries.

- Save the object into a set of output formats

An extended list of iData methods is
available in the Methods page. In
addition, a few dedicated applications of these methods is
presented in the Neutron Scattering page, for
instance for neutron scattering.

#### The iFunc objects (iFit/@iFunc): the core model

The iFunc objects hold models
(mathematical expressions that return a vector, matrix, ...)
value, as a function of a parameter set, and axes. You can
easily create new models, or use those from the Models page, and combine them to build
more complex models. The objects support most usual mathematical
operators.

The file import method used by iData
is performed on a lower level by the Loaders
part of iFit. Its purpose is to import any binary or text file,
without knowing its format. A number of post-import wrappers exist
in order to reshape the imported data to match specific needs.
These wrappers are very short to write.

If needed, other importation methods should be added there, to be able to handle more formats. This library is used transparently by the iData load method, but it may also be used independently to produce simple structures describing the data files (even though we do not recommend this).

#### The
documentation (iFit/Docs)

The documentation is given as web pages, and all methods/functions
have their own embedded help. To access it use:

#### Example data
files (iFit/Data)

Some Data files are given as examples to be
used along the documentation web pages and in the Quick Start.

#### Interfaces with
other software and Graphical front-ends (iFit/GUI)

Specific interfaces have been written in order to use iFit
transparently for end-user applications:

If needed, other importation methods should be added there, to be able to handle more formats. This library is used transparently by the iData load method, but it may also be used independently to produce simple structures describing the data files (even though we do not recommend this).

>> doc(iData)A list of all available iData methods is also available, and can be directly accessed with

>> methods(iData)The documentation currently contains the following pages:

>> methods(iFunc) % equivalently for models

- Changes: Version releases,
**Changes and Bugs**list. - Credits: Credits, Licensing and contributions from others.
- Fit: how to fit data sets onto mathematical models and find the best parameter set
- iData: the description of the fundamental data set object used in iFit, properties and how to handle it
- iFunc: the description of the fundamental model object used in iFit, properties and how to handle it
- Loaders: how to import data files into structures, which can be converted into iData afterwards. This is a sub-library which you should only use if you need the data NOT to be an object (but you then loose most of the iData capabilities).
- Models: model functions that cab
be use for data fitting. A function maker tool is also
provided. Specialized models provide phonon dispersions,
Rietveld refinement, small angle scattering.

- index: This iFit Welcome page.
- iFit: the interface used in the
stand-alone distribution.

- Install: the download and installation page.
- Optimizers: the low level optimization methods.
- Load: how to load data set directly as iData objects. This is what you should use.
- Math: all mathematical operations and related data handling to apply on iData objects.
- McStas: an interface with the McStas neutron scattering ray-tracing simulation code for simulation, scanning and optimization.
- Methods: a list of all available methods for iData objects.
- miFit: the iFit main user interface.
- Models_Phonons: how to compute phonons in materials (lattice dynamics).
- Models_Phonons_Tutorial: a tutorial for those wishing to compute phonons.
- Plot: many ways to plot the iData objects.
- PyFit: an interface which exposes transparently all iFit methods and objects into Python/NumPy.
- QuickStart: where you should start (a quick tutorial).
- ResLibCal: the neutron triple-axis resolution computation tool, with a user interface.
- Save: Saving iData objects into many file formats.
- Neutron Scattering: a set of
methodologies applied to specific cases, for instance neutron
scattering (dynamic structure factors).

- Technical documentation

**miFit**: an advanced yet simple user interface to load data sets, plot, transform, export, and fit.**McStas**: a wrapper to run simulations or optimize McStas and McXtrace instruments.

**ResLibCal**: compute the neutron TAS spectrometer resolution ellipsoid (ResCal/ResLib merge).**Sqw_Phonons**: Phonon dispersion from*ab-initio*force estimate and dynamical matrix. Have a look as well to the Models_Phonons page.- iFunc/Model Builder: a dialogue to create iFunc fit function/models.
- iFit standalone: the prompt interface used in the no-Matlab-license release. Can execute any Matlab expression, scripts, handle iData and iFunc objects, optimizers, plotting, ...
**PyFit**: using iFit transparently from Python/NumPy.