Effacer les filtres
Effacer les filtres

Finding the functionality for the loop

3 vues (au cours des 30 derniers jours)
Amy Topaz
Amy Topaz le 14 Mar 2022
Commenté : Amy Topaz le 14 Mar 2022
I am new to Matlab. I am making a formula/syntax book as a part of my club activity. I was finding logics for implementing loops in matlab without actually using loops. Is there any other way?
Is there any other way of writing by not using for loop in matlab
t = linspace(10, 1000, 100);
for 1:n
y(n)=1+t(n)^2;
eq = @(x) (N + x)/(y(n) + k) + N*x*exp(-(t(n)));
end
%Say we need to find the range of values of solution of eq for all values of range
%n. N, k are constants.
%Is it possible to implement the same without for loop
  2 commentaires
Walter Roberson
Walter Roberson le 14 Mar 2022
Note that you are overwriting all of eq in each iteration of the loop.
When you say "solution of eq" are you looking for the values of x such that eq(x) == 0 ?
Amy Topaz
Amy Topaz le 14 Mar 2022
yes

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 14 Mar 2022
syms t N k x
T = linspace(10, 1000, 100).';
y = 1 + t^2;
eqn = (N + x)/(y + k) + N*x*exp(-(t))
eqn = 
sol_x = solve(eqn, x)
sol_x = 
sols_x = subs(sol_x, t, T);
sols_x(1:5)
ans = 
sols_x(end)
ans = 
vpa(limit(sols_x(end), N, 1))
ans = 
vpa(limit(sols_x(end), N, inf))
ans = 
  2 commentaires
Walter Roberson
Walter Roberson le 14 Mar 2022
Note that if you are not using the symbolic toolbox, then the exp(1000) that shows up in the last entry, will almost certainly overflow double precision to give you infinity at that point.
Amy Topaz
Amy Topaz le 14 Mar 2022
Thank you so much for detailed explanation

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by