def lmfit_fcn2min(self):
        """
        The function to minimize when using [lmfit][1].

        If overriding this, the replacement function must accept the following
        non-keyword arguments in this order (even if unused):

        1. A [`lmfit.Parameters`][2] object.
           The value of each parameter must be passed appropriately to `scipy_data_fitting.Fit.function`
           in the order determined by sorting the parameter keys alphabetically.
           Use `scipy_data_fitting.Fit.lmfit_parameter_values` to get the ordered numerical parameter values.
        2. Independent values: see `scipy_data_fitting.Data.array`.
        3. Dependent values: see `scipy_data_fitting.Data.array`.
        4. The error: see `scipy_data_fitting.Data.error`.


        The default function computes the difference between the evaluated function and the data.

        Default example:

            #!python
            lambda params, x, data, error: self.function(x, *self.lmfit_parameter_values(params)) - data

        [1]: https://pypi.python.org/pypi/lmfit/
        [2]: http://lmfit.github.io/lmfit-py/parameters.html#the-parameters-class
        [3]: http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html
        """
        return lambda params, x, data, error: self.function(x, *self.lmfit_parameter_values(params)) - data