How do I specify the limits of parameters individually while fitting?

1 view (last 30 days)
Basil Eldeeb
Basil Eldeeb on 4 Mar 2021
Answered: Nagasai Bharat on 11 Mar 2021
On top of not knowing how to specifically limit 1 parameter to positive numbers, I get this error for my custom model:
Error using
fittype/testCustomModelEvaluation
(line 16)
Custom equations must produce an
output vector, matrix, or array that
is the same size and shape as the
input data. This custom equation
fails to meet that requirement:
m*exp(-d/x)*x.^2
Here is my code:
data = readmatrix('nagn125.txt');
vv=data(:,1);
ii=data(:,2);
pos=vv>0; neg=~pos;
gpos=fittype(@(m,c,d,x) m*exp(-c)*exp(-d/x)*x.^2);
options=fitoptions('exp(-d/x)','Lower',0);
plot(fneg,vv(neg),ii(neg))
grid('on')

Answers (1)

Nagasai Bharat
Nagasai Bharat on 11 Mar 2021
Hi,
Change the fittype statement to that of below. This should solve the error you are getting
gpos=fittype(@(m,c,d,x) m.*exp(-c).*exp(-d./x).*x.^2);

Community Treasure Hunt

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

Start Hunting!

Translated by