Substituting numbers into a matrix with symbolic values

6 visualizzazioni (ultimi 30 giorni)
For my code, I set certain values like x, y , z to be symbolic at the beginning. I wanted to create a matrix with these in them, then later sub in values.
If I have a matrix currently in the form: [x+y; y+z; z+x; y+z]
How can I set it up to calculate each entry when x, y, and z are certain numerical values?
I tried a for loop such as:
for x = 1
for y = 2
for z = 3
[A] = [matrix of variables with symbolic variables]
end
end
end
but I just get a return of my symbolic matrix and not numerical values like I want.
Any suggestions or help? Thanks in advance

Risposta accettata

Hossein
Hossein il 21 Apr 2012
Is it possible to write a function that does that? like this:
function Amat=Amat(x,y,z)
Amat=[x+y;y+z;z+x;y+z];
end
now whenever you want you call Amat(1,2,3) and it returns the vector or matrix that you desire. The good thing is that you can later on pass the handle of your matrix (function) to another function. I hope this is what were looking for.

Più risposte (1)

Walter Roberson
Walter Roberson il 21 Apr 2012
subs([x+y;y+z;z+x;y+z], {x,y,z}, {1,2,3})

Categorie

Scopri di più su Symbolic Math Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by