how to calculate optimal value of a unknown constant of an equation with known data points?
1 次查看(过去 30 天)
显示 更早的评论
Hey, I wanted to solve for the optimal value of constant. I have data points of the equation .
please help, how can I do that.
equation is:
y= 1/sqrt(k^2+x^2)
0 个评论
采纳的回答
Walter Roberson
2020-9-11
k0 = rand() * 10;
bestk = lsqcurvefit( @(k,x)1./sqrt(k.^2+x.^2), k0, x, y);
7 个评论
Adam Danz
2020-9-11
We don't know what to do either without knowing the full error message :)
If you're looking for an optimal k, Walter's approach is probably the one you want to pursue. If you have questions about your results, we need the inputs you're using so we can reproduce the results.
更多回答(1 个)
Adam Danz
2020-9-10
k = sqrt((1/y)^2 - x^2)
3 个评论
Adam Danz
2020-9-11
% assign demo values
k = 2.2; % = 2.2
x = 1:10; % = [1,2,3,4,5,6,7,8,9,10]
y = 1./sqrt(k^2 + x.^2); % = [0.41 0.33 0.26 0.21 0.18 0.15 0.13 0.12 0.10 0.09]
% Solve for k
k = sqrt((1./y).^2 - x.^2) % = [2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 ]
k = sqrt((1/y(1))^2 - x(1)^2) % = 2.2
Or, as Walter shows, you can use mean(), mode(), median().
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Interpolation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!