Bilinear Fit

Fit two intersecting straight lines to a set of x,y data points.
Updated 7 Nov 2023

View License

bilinearFit.m is a function that fits two intersecting straight lines to a set of x,y data points. The slopes and intercepts are chosen to minimize the sum squared error in the y-direction between the data and the corresponding line. The function calls lsqnonlin(), which is in the Optimization Toolbox.
Usage: [a0,a1,b0,b1,x0]=bilinearFit(x,y)
Fitting function:
if (red line in figure below)
if (blue line in figure below)
where is the x-coordinate of the intersection.
The script bilinearFitTest.m demonstrates the use of bilinearFit.m, and it displays results on the console and in a plot.
Reference: Josephson MD, Rose WC, Knight CA (2019). Evidence of bilinearity in the relationship between rate of neuromuscular excitation and rate of force development. Journal of Electromyography and Kinesiology 49: 102355.

Cite As

William Rose (2024). Bilinear Fit (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2023b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Fixed a spelling error in the description. No other changes.