Native File Format (Mantid MultiFit)

As part of the Mantid parsing we also offer limited support for Mantid’s MultiFit functionality.

Here we outline how to use Mantid’s MultiFit with FitBenchmarking, in which some options differ from the standard Native File Format.


Due to the way Mantid uses ties (a central feature of MultiFit), MultiFit problems can only be used with Mantid minimizers.

In this format, data is separated from the function. This allows running the same dataset against multiple different models to assess which is the most appropriate.

An example of a multifit problem is:

# FitBenchmark Problem
software = 'Mantid'
name = 'MUSR62260'
description = 'Calibration data for mu SR intrument. Run 62260.'
input_file = ['MUSR62260_bkwd.txt','MUSR62260_bottom.txt','MUSR62260_fwd.txt','MUSR62260_top.txt']
function = 'name=FlatBackground,A0=0; name=GausOsc,A=0.2,Sigma=0.2,Frequency=1,Phi=0'
ties = ['f1.Sigma', 'f1.Frequency']
fit_ranges = [{'x': [0.1, 15.0]}, {'x': [0.1, 15.0]}, {'x': [0.1, 15.0]}, {'x': [0.1, 15.0]}]
plot_scale = 'linear'

Below we outline the differences between this and the Native File Format.


Must be Mantid.


As in Native File Format.


As in Native File Format.


As in Native File Format, but you must pass in a list of data files (see above example).


As in Native File Format.

When fitting, this function will be used for each of the input_files given simultaneously.


This entry is used to define global variables by tieing a variable across input files.

Each string in the list should reference a parameter in the function using Mantid’s convention of f<i>.<name> where i is the position of the function in the function string, and name is the global parameter.

For example to run a fit which has a shared background and peak height, the function and ties fields might look like:

function='name=LinearBackground, A0=0, A1=0; name=Gaussian, Height=0.01, PeakCentre=0.00037, Sigma=1e-05'
ties=['f0.A0', 'f0.A1', 'f1.Height']

As in Native File Format.