MATLAB Answers

help w euler code error

11 views (last 30 days)
Paige Macdonald
Paige Macdonald on 16 Sep 2020
Edited: Rena Berman on 8 Oct 2020 at 17:15
%Euler's Method
p = 1;
t = 0:p:100;
S = zeros(size(t));
S(1) = 1.000; %initial concentration
n = numel(S); %number of y values (S is y in this case)
disp(' Time Reactant Concentration ')
disp(' (sec) (mol/L) ')
disp(' -------------------------------- ')
%loop to solve the eq
for i=1:n-1
f = -0.5 /(2.1+S)
S(i+1) = S(i) + p * f; %eulers formula
fprintf('6.0f%15.3f\n',t(i), S(i))
end
i am receiving an error for the f = -0.5 /(2.1+S) it says "Error using / Matrix dimensions must agree."

  5 Comments

Show 2 older comments
Rik
Rik on 16 Sep 2020
That is not an answer to the question Madhan posted. You got free help from a stranger on the internet. Why did you decide to remove your question? You could have simply not posted it. Now you are an inconsiderate jerk taking advantage of friendly people. Is that your intent?
Rik
Rik on 16 Sep 2020
Original question as posted by Paige Macdonald, retrieved from Google cache (permalink):
%Euler's Method
p = 1;
t = 0:p:100;
S = zeros(size(t));
S(1) = 1.000; %initial concentration
n = numel(S); %number of y values (S is y in this case)
disp(' Time Reactant Concentration ')
disp(' (sec) (mol/L) ')
disp(' -------------------------------- ')
%loop to solve the eq
for i=1:n-1
f = -0.5 /(2.1+S)
S(i+1) = S(i) + p * f; %eulers formula
fprintf('6.0f%15.3f\n',t(i), S(i))
end
i am receiving an error for the f = -0.5 /(2.1+S) it says "Error using / Matrix dimensions must agree."
Rena Berman
Rena Berman on 8 Oct 2020 at 17:15
(Answers Dev) Restored edit

Sign in to comment.

Answers (1)

James Tursa
James Tursa on 16 Sep 2020
You need to index S:
f = -0.5 /(2.1+S(i));

  0 Comments

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!