2 つの配列があります。
R = [r0, r1, r2, ..., r999]
Z = [z0, z1, z2, ..., z999]
関数がR(z)である上記にポリフィットを適用したい。多項式を x^2+x^4+x^6+x^8 にする必要があります
Excelでは、トレンド関数は偶数べき乗のみを許可しないため、Matlabでこれを記述しようとしましたが、上記のように偶数べき乗のみを使用するようにpolyfitをカスタマイズする方法がわかりません。
助言がありますか?ありがとう
2 つの配列があります。
R = [r0, r1, r2, ..., r999]
Z = [z0, z1, z2, ..., z999]
関数がR(z)である上記にポリフィットを適用したい。多項式を x^2+x^4+x^6+x^8 にする必要があります
Excelでは、トレンド関数は偶数べき乗のみを許可しないため、Matlabでこれを記述しようとしましたが、上記のように偶数べき乗のみを使用するようにpolyfitをカスタマイズする方法がわかりません。
助言がありますか?ありがとう
これを解決するには、線形代数の最小二乗法を使用できます。
% The Data
R = [r0, r1, r2, ..., r999]'; % Note the apostrophe
Z = [z0, z1, z2, ..., z999]';
% Create Vandermonde-ish matrix
X = [Z.^2 Z.^4 Z.^6 Z.^8];
% Solve equation system
a = X\R;
% Reshape and pad with zeros for the odd and 0th powers
p = [zeros(size(a)) a]';
pval = flip([0; p(:)]);