Fitting Model : This expression has no coefficients or non-scalar coefficients
16 次查看(过去 30 天)
显示 更早的评论
Hi,
Im trying to fit a model i've made to some experimental data, however I'm getting an error i don't seem to understand.
I followed the fittype guide.
Heres my code:
%This is the model
function pdf = pdf_GG(Var)
I=0.3;
LKK = sqrt(Var);
alpha = (exp((5.19.*LKK.^2)./((1 + 9.01.*LKK.^(12/5)).^(7/6))) -1).^-1;
beta = (exp((6.22.*LKK.^2)./((1 + 22.39.*LKK.^(12/5)).^(5/6))) -1).^-1;
k = (alpha+beta)./2;
k1 = alpha.*beta;
H =4.*(k1.^k)./(gamma(alpha).*gamma(beta));
H1 = I.^(k-1);
D = 6.*sqrt(k1.*I);
pdf = H.*H1.*besselk((alpha-beta),D);
And now my main code:
%Fitting
x0=[0.2];
fitfun=fittype(@(Var) pdf_GG( Var),'independent','Var');% this is where i get the this expression has no coeffiecients or non-scalar coefficients error
[fitted_curve,gof]=fit(ctrs',pn',fitfun,'StartPoint',x0);
Any help on how i should proceed to make this fit?Thank you very much
3 个评论
Sindar
2020-11-4
Does this return a 2-element array? (and do you expect it to?)
pdf_GG([0 1])
If not, add a breakpoint at the last line and check the sizes of all the intermediate variables
采纳的回答
Juhi Singh
2020-11-5
The error is being encountered because pdf_GG() returns a vector. Unfortunately, specifying the coefficients as vector is not supported. There is no workaround.
0 个评论
更多回答(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!