how to solve equation for a given matrix

2 次查看(过去 30 天)
Hi everybody
I have got equation which is ;
Eq = 0.4075*exp(-((e-14.87)/11.39).^2) + 0.5621*exp(-((e-18.64)/27.74).^2);
e is a 100*1 double matrix.
I would like to use the value of each row as an input to my function and save the results as matrix again. I used solve command, I could get any results.
Any suggestion is highly appreciated.
Thanks!!
  5 个评论
engineer
engineer 2019-5-23
Yes I have it 'e' as 100*1 double matrix. I just need to implement each value into the function and obtain the results as another matrix.
madhan ravi
madhan ravi 2019-5-23
e = .... 100 X 1 values
Eq = 0.4075*exp(-((e-14.87)/11.39).^2) + 0.5621*exp(-((e-18.64)/27.74).^2); % doesn't this get you the required results?

请先登录,再进行评论。

采纳的回答

Adam Danz
Adam Danz 2019-5-23
What's wrong with what you've already got?
%Vector method
e = rand(100,1)*10;
Eq = 0.4075*exp(-((e-14.87)/11.39).^2) + 0.5621*exp(-((e-18.64)/27.74).^2);
% Loop method
Eq2 = zeros(size(e));
for i = 1:numel(e)
Eq2(i) = 0.4075*exp(-((e(i)-14.87)/11.39).^2) + 0.5621*exp(-((e(i)-18.64)/27.74).^2);
end
% Are they equal?
isequal(Eq,Eq2) % = 1; yes
  11 个评论
engineer
engineer 2019-5-23
编辑:engineer 2019-5-23
Besides, how do you save the each x variable within loop in the code you provided?
Adam Danz
Adam Danz 2019-5-23
sol(i) is the x values that satisfy the function. If you search for that warning within this forum you get lot's of feedback.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by