iFit: What's In the Box

What's in the box...

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.
iFit package

The miFit User 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 (iFit/@iData): the core data set

The iData objects have been defined in order to perform the following operations seamlessly:
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 fit functions/models (iFit/Models)

A predefined set of parametrized models is given in the Models part of iFit in order to fit some imported data and find best parameter sets which describe it. These functions may be used by the fits method. All these models are iFunc objects. There are very advanced Models to compute for instance 4D phonon dispersions using ab-initio codes, neutron Monte-carlo instruments (McCode) and other simpler analytical methods.

The lower level optimization library (iFit/Optimizers)

A set of optimization routines has been gathered in the Optimizers part of iFit. It enables to choose and compare how different optimization methods can solve a problem. This library is used transparently by the iData fits method, but it may also be used independently.

The lower level import routines (iFit/Loaders)

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:
>> doc(iData)
A list of all available iData methods is also available, and can be directly accessed with
>> methods(iData)
>> methods(iFunc) % equivalently for models
The documentation currently contains the following pages:
You may also search this whole documentation (using Google):

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:

E. Farhi - iFit Welcome - oct.. 23, 2018 2.0 - back to Main iFit Page ILL,
          Grenoble, France <www.ill.eu>