The fit() function allows fitting a surface to 3D data, where regularly spaced x,y data values specify a "grid" location and the z value specifies a surface "height". The fitted surface can be expressed as a polynomial of up to degree 5 in x and y.
Is there a means of fitting a model (polynomial or otherwise) to 4D data? In this case, the x,y,z data values specify a location (regularly spaced, within a unit cube for example), and w specifies a value at that location. Such data expresses a 3D "field" rather than a surface.
Thanks, mitch

 採用された回答

Matt J
Matt J 2023 年 9 月 13 日

0 投票

Yes, you can use lsqcurvefit.

3 件のコメント

Mitch
Mitch 2023 年 9 月 14 日
移動済み: Matt J 2023 年 9 月 14 日
Thanks Matt!
Looking at the documentation for lsqcurvefit(), I see only 1D curve fitting examples. Do you know of any multi-dimensional fitting examples I can look at? I'm new to Matlab, and it's hard to know exactly how to write the necessary commands without a simple/clear example.
Thanks, mitch
Matt J
Matt J 2023 年 9 月 14 日
編集済み: Matt J 2023 年 9 月 14 日
Do you know of any multi-dimensional fitting examples I can look at?
Here's an example I just made up. The unknown parameter vector to be recovered is w:
xyz=rand(100,3); %fake x,y,z data
w=[1,2,3]; %ground truth parameters
F=vecnorm(xyz.*w,2,2); %fake dependent data
F=F+randn(size(F))*0.05; %add noise
wfit=lsqcurvefit(@modelFcn,[1,1,1], xyz,F)
Local minimum found. Optimization completed because the size of the gradient is less than the value of the optimality tolerance.
wfit = 1×3
1.0162 1.9904 2.9886
function Fpred=modelFcn(w,xyz)
Fpred=vecnorm(xyz.*w,2,2);
end
Anyway, the point is that lsqcurvefit doesn't care about the dimensions of the data xyz and F. It only cares that your modelFcn returns a prediction Fpred of F as an array the same size as F.
Mitch
Mitch 2023 年 9 月 14 日
Okay, terrific Matt - thanks for that example. I think that will get me started on the right path.
Thanks again, mitch

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeGet Started with Curve Fitting Toolbox についてさらに検索

製品

リリース

R2022b

タグ

質問済み:

2023 年 9 月 13 日

コメント済み:

2023 年 9 月 14 日

Community Treasure Hunt

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

Start Hunting!

Translated by