how to subs element of strucs in a loop?

1 vue (au cours des 30 derniers jours)
Amirhosein Ghenaati
Amirhosein Ghenaati le 26 Jan 2016
i want to write a program to solve indefinite eqs. answers are located in sol(struct) e.g sol.x1 mean x1 and etc cause number of variable is unknown and they are assigned to symbolic variable(z), I must substitude z with 1 my problem is define a for loop to write following code because I cant define sol.x(i) in a loop
sol=solve(EQ==0)
subs(sol.x1,z,1)
subs(sol.x2,z,1)d
  1 commentaire
Stephen23
Stephen23 le 27 Jan 2016
Modifié(e) : Stephen23 le 27 Jan 2016
Amirhosein Ghenaati's "Answer" moved here:
how can i make a n*n matrix K which has symbolic class and contains all symbolic elements as k11 k12...k1n.I can't obtain K with a for loop
@Amirhosein Ghenaati: please use the comment fields for writing comments.

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 27 Jan 2016
K = sym('k', n, n)
varnames = fieldnames(sol);
numvars = length(varnames);
solz = struct();
for K = 1 : numvars
thisvar = varnames{K};
solz.(thisvar) = subs(sol.(thisvar), z, 1);
end

Plus de réponses (0)

Catégories

En savoir plus sur Construct and Work with Object Arrays 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