NonlinearModelFit
NonlinearModelFit[{y1,y2,…},form,{β1,…},x]
constructs a nonlinear model with structure form that fits the yi for successive x values 1, 2, … using the parameters β1, ….
NonlinearModelFit[{{x11,x12,…,y1},{x21,x22,…,y2},…},form,{β1,…},{x1,…}]
constructs a nonlinear model where form depends on the variables xk.
NonlinearModelFit[data,{form,cons},{β1,…},{x1,…}]
constructs a nonlinear model subject to the parameter constraints cons.
Details and Options




- NonlinearModelFit returns a symbolic FittedModel object to represent the nonlinear model it constructs. The properties and diagnostics of the model can be obtained from model["property"].
- The value of the best-fit function from NonlinearModelFit at a particular point x1, … can be found from model[x1,…].
- The best-fit function from NonlinearModelFit[data,form,pars,vars] is the same as the result from FindFit[data,form,pars,vars].
- NonlinearModelFit[data,form,{{par1,p1},…},vars] starts the search for a fit with {par1->p1,…}.
- With data in the form {{x11,x12,…,y1},{x21,x22,…,y2},…}, the number of coordinates xi1, xi2, … should equal the number of variables xi.
- Data in the form {y1,y2,…} is equivalent to data in the form {{1,y1},{2,y2},…}.
- NonlinearModelFit produces a nonlinear model of the form
under the assumption that the original
are independent normally distributed with mean
and common standard deviation.
- NonlinearModelFit takes the following options:
-
AccuracyGoal Automatic the number of digits of accuracy sought ConfidenceLevel 95/100 confidence level for parameters and predictions EvaluationMonitor None expression to evaluate whenever form is evaluated Gradient Automatic the list of gradient components for form MaxIterations Automatic maximum number of iterations to use Method Automatic method to use PrecisionGoal Automatic the precision sought StepMonitor None the expression to evaluate whenever a step is taken VarianceEstimatorFunction Automatic function for estimating the error variance Weights Automatic weights for data elements WorkingPrecision Automatic the precision used in internal computations - With ConfidenceLevel->p, probability-p confidence intervals are computed for parameter and prediction intervals.
- With the setting Weights->{w1,w2,…}, the error variance for yi is assumed to be
. By default, unit weights are used.
- With the setting VarianceEstimatorFunction->f, the common variance is estimated by f[res,w], where res={y1-
,y2-
,…} is the list of residuals and w is the list of weights.
- Using VarianceEstimatorFunction->(1&) and Weights->{1/Δy12,1/Δy22,…}, Δyi is treated as the known uncertainty of measurement yi, and parameter standard errors are effectively computed only from the weights.
- Possible settings for Method include:
-
"ConjugateGradient" nonlinear conjugate gradient "Gradient" gradient descent "LevenbergMarquardt" Gauss–Newton method for least squares "Newton" Newton method "QuasiNewton" quasi-Newton BFGS "InteriorPoint" interior point method "NMinimize" use NMinimize for optimization Automatic automatic default method - Additional method suboptions can be given in the form Method->{…,opts}.
- For constrained models, properties based on approximate normality assumptions may not be valid. When such values are computed, the values are generated along with a warning message.
- Properties related to data and the fitted function using model["property"] include:
-
"BestFit" fitted function "BestFitParameters" parameter estimates "Data" the input data or design matrix and response vector "Function" best-fit pure function "Response" response values in the input data - Types of residuals include:
-
"FitResiduals" difference between actual and predicted responses "StandardizedResiduals" fit residuals divided by the standard error for each residual "StudentizedResiduals" fit residuals divided by single deletion error estimates - Properties related to the sum of squared errors include:
-
"ANOVATable" analysis of variance table "ANOVATableDegreesOfFreedom" degrees of freedom from the ANOVA table "ANOVATableEntries" unformatted array of values from the table "ANOVATableMeanSquares" mean square errors from the table "ANOVATableSumsOfSquares" sums of squares from the table "EstimatedVariance" estimate of the error variance - Properties and diagnostics for parameter estimates include:
-
"CorrelationMatrix" asymptotic parameter correlation matrix "CovarianceMatrix" asymptotic parameter covariance matrix "ParameterBias" estimated bias in the parameter estimates "ParameterConfidenceIntervals" parameter confidence intervals "ParameterConfidenceIntervalTable" table of confidence interval information for the fitted parameters "ParameterConfidenceIntervalTableEntries" unformatted array of values from the table "ParameterConfidenceRegion" ellipsoidal parameter confidence region "ParameterErrors" standard errors for parameter estimates "ParameterPValues" ‐values for parameter
‐statistics
"ParameterTable" table of fitted parameter information "ParameterTableEntries" unformatted array of values from the table "ParameterTStatistics" -statistics for parameter estimates
- Properties for curvature diagnostics include:
-
"CurvatureConfidenceRegion" confidence region for curvature diagnostics "FitCurvatureTable" table of curvature diagnostics "FitCurvatureTableEntries" unformatted array of values from the table "MaxIntrinsicCurvature" measure of maximum intrinsic curvature "MaxParameterEffectsCurvature" measure of maximum parameter effects curvature - Properties related to influence measures include:
-
"HatDiagonal" diagonal elements of the hat matrix "SingleDeletionVariances" list of variance estimates with the data point omitted
- Properties of predicted values include:
-
"MeanPredictionBands" confidence bands for mean predictions "MeanPredictionConfidenceIntervals" confidence intervals for the mean predictions "MeanPredictionConfidenceIntervalTable" table of confidence intervals for the mean predictions "MeanPredictionConfidenceIntervalTableEntries" unformatted array of values from the table "MeanPredictionErrors" standard errors for mean predictions "PredictedResponse" fitted values for the data "SinglePredictionBands" confidence bands based on single observations "SinglePredictionConfidenceIntervals" confidence intervals for the predicted response of single observations "SinglePredictionConfidenceIntervalTable" table of confidence intervals for the predicted response of single observations "SinglePredictionConfidenceIntervalTableEntries" unformatted array of values from the table "SinglePredictionErrors" standard errors for the predicted response of single observations - Properties that measure goodness of fit include:
-
"AdjustedRSquared" adjusted for the number of model parameters
"AIC" Akaike Information Criterion "AICc" finite sample corrected AIC "BIC" Bayesian Information Criterion "RSquared" coefficient of determination
Examples
open allclose allBasic Examples (1)
Scope (11)
Fit a model of more than one variable:
Give starting values when parameters are far from the default value 1:
With the default starting values, the model is effectively 0:
Obtain a list of available properties for a nonlinear model:
Properties (8)
Data & Fitted Functions (1)
Residuals (1)
Sums of Squares (1)
Fit a nonlinear model to some data:
Extract the estimated error variance:
Obtain the analysis of variance table:
Get the sums of squares column from the table:
Extract the numeric entries from the table:
Use Grid to add formatting:
Parameter Estimation Diagnostics (1)
Curvature Diagnostics (1)
Influence Measures (1)
Prediction Values (1)
Generalizations & Extensions (2)
Fit data to a model defined by a numerical operation:
Make the computation much faster by caching solutions of the differential equation:
Perform other mathematical operations on the functional form of the model:
Integrate symbolically and numerically:
Find a predictor value that gives a particular value for the model:
Options (5)
ConfidenceLevel (1)
The default gives 95% confidence intervals:
Set the level to 90% within FittedModel:
VarianceEstimatorFunction (1)
WorkingPrecision (1)
Use WorkingPrecision to get higher precision in parameter estimates:
Reduce the precision in property computations after the fitting:
Method (1)
Use the default method for minimizing the least-squares objective function:
Use Newton method for optimization:
Use interior point method with constraints:
Use NMinimize with submethod "RandomSearch":
Applications (1)
Properties & Relations (5)
NonlinearModelFit fits linear and nonlinear models assuming normally distributed errors:
LinearModelFit fits linear models assuming normally distributed errors:
FindFit and NonlinearModelFit fit equivalent models:
NonlinearModelFit allows for extraction of additional information about the fitting:
NonlinearModelFit assumes normally distributed responses:
LogitModelFit assumes binomially distributed responses:
The same is true for ProbitModelFit:
NonlinearModelFit will use the time stamps of a TimeSeries as variables:
Rescale the time stamps and fit again:
NonlinearModelFit acts pathwise on a multipath TemporalData:
Possible Issues (2)
Distributional assumptions are based upon an unconstrained model:
Here the confidence interval for contains points that violate the constraint:

The coefficient of determination in NonlinearModelFit is calculated with uncorrected data:
The coefficient of determination:
Text
Wolfram Research (2008), NonlinearModelFit, Wolfram Language function, https://reference.wolfram.com/language/ref/NonlinearModelFit.html.
CMS
Wolfram Language. 2008. "NonlinearModelFit." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/NonlinearModelFit.html.
APA
Wolfram Language. (2008). NonlinearModelFit. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NonlinearModelFit.html