Effacer les filtres
Effacer les filtres

Iteration Without the Implementation of Loops

7 vues (au cours des 30 derniers jours)
BM
BM le 24 Août 2017
Modifié(e) : BM le 31 Août 2017
I am interested in being able to run this particular code using i as the iterating vector. While this can easily be accomplished using a for-loop, I would like to do this without using loops of any kind. Essentially what I want is for the vector q to contain all ten values of F when q is solved for a given i-value. The issue currently is that F does not take any value of i, so I am left with an empty x-matrix in the end. I want to iterate for each value of i in the vector, but without using loops. Does anybody have any suggestions?
%%%Test program
%%Clear variables
close all;
clear all;
clc;
%%Definitions
syms q
x = [];
i = 1:10;
F = i - 2*q == 0;
solq = solve(F,q);
x = (x,solq)
  1 commentaire
BM
BM le 31 Août 2017
Modifié(e) : BM le 31 Août 2017
I tried to adapt this base program to my needs, but I am running into an issue. In my particular program I have my function F dependent on other functions. Would you have suggestions on how to incorporate the same idea if the program was modified to include
q = sym('q',[1,10]);
i = 1:10;
M = @(q) tan(q)/(1+sin(7*q))
N = log(M(q))
F = i - 2*q*N == 0;
solq = solve(F,q)
I obtain the same errors in this program that I do in my actual program, and would appreciate understanding a little more why this is the case. If I solved F via for-loops, everything works. Thanks for your time.

Connectez-vous pour commenter.

Réponse acceptée

John D'Errico
John D'Errico le 24 Août 2017
Modifié(e) : John D'Errico le 24 Août 2017
q = sym('q',[1,10]);
i = 1:10;
F = i - 2*q == 0;
solq = solve(F,q)
solq =
struct with fields:
q1: [1×1 sym]
q2: [1×1 sym]
q3: [1×1 sym]
q4: [1×1 sym]
q5: [1×1 sym]
q6: [1×1 sym]
q7: [1×1 sym]
q8: [1×1 sym]
q9: [1×1 sym]
q10: [1×1 sym]
solq.q3
ans =
3/2
I suppose you could use an implicit loop too, in the form of cellfun. But the above works.
  3 commentaires
Adam
Adam le 25 Août 2017
That's not a command, that's just the output from the previous command, in the command window.
BM
BM le 29 Août 2017
Yeah, I realized that after when I arrived at the chapter (in a reference book) that dealt with such information. Sorry for my confusion. Thanks again!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by