Response surface method in Matlab
47 次查看(过去 30 天)
显示 更早的评论
Hi.
I have 6 independent variable and one dependent variable. I want to fit a response surface to the data by for exp a second order polynomial, when I open curve fitting toolbox, There is only two space for the input variable. can anyone help me about this. How can I do this fit in matlab?
Thank you in advance for your time.
0 个评论
采纳的回答
更多回答(1 个)
Thonn Homsnit
2022-5-10
I faced the same problem as the author. But I have just figured it out !
I use the 'fitnlm' function with the user defined function with handle like this
modelFun = @(b1,x1)( ...
+b1(1).*x1(:,1) ...
+b1(2).*x1(:,2) ...
+b1(3).*x1(:,3)...
+b1(4).*x1(:,4)...
+b1(5).*x1(:,1).*x1(:,2) ...
+b1(6).*x1(:,1).*x1(:,3) ...
+b1(7).*x1(:,1).*x1(:,4) ...
+b1(8).*x1(:,2).*x1(:,3) ...
+b1(9).*x1(:,2).*x1(:,4) ...
+b1(10).*x1(:,3).*x1(:,4) ...
+b1(11).*x1(:,1).*x1(:,1) ...
+b1(12).*x1(:,2).*x1(:,2) ...
+b1(13).*x1(:,3).*x1(:,3) ...
+b1(14).*x1(:,4).*x1(:,4) ...
+b1(15) ...
);
beta0 = zeros(15,1); %%% initial coefficient value %%%%
mdl1 = fitnlm(x1,y1,modelFun,beta0);
b1 = table2array(mdl1.Coefficients(:,"Estimate"));
x1 is predictor matrix and y1 is target vector. you can solve the b1 matrix which is the coefficient of this function. Another tool is using MBC toolbox. But the documentation is very old and i cannot find the algorithm behind the toolbox.
Hope it helps.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Fit Postprocessing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!