Breaking a function into components?

4 visualizzazioni (ultimi 30 giorni)
Chris
Chris il 23 Mag 2014
Commentato: Star Strider il 24 Mag 2014
I have a function containing several variables which I am looking to pull from it the individual variables and their values. i.e. function =5x+3y+8z. I need to be able to extract from this, say just the x variable and its value, answer=5x. Thanks in advance

Risposta accettata

Star Strider
Star Strider il 23 Mag 2014
You probably need to use the Symbolic Math Toolbox, especially if you have only one such equation. (The Symbolic Math Toolbox doesn’t work efficiently for iterative calculations.)
syms x y z
f = 5*x+3*y+8*z
% Set y=0 and z=0 (then simplify if necessary):
f1 = subs(f, {y,z},{0,0})
yields:
f1 =
5*x
  2 Commenti
Chris
Chris il 24 Mag 2014
Thanks a heap, thats done the trick.
Star Strider
Star Strider il 24 Mag 2014
My pleasure!

Accedi per commentare.

Più risposte (1)

George Papazafeiropoulos
George Papazafeiropoulos il 23 Mag 2014
Make a function named myfunc as follows:
%----------------------
function out=myfunc(a,vec)
out=a.*vec;
end
%----------------------
Then run the following code:
a=[5;3;8];
x=1;
y=2;
z=3;
vec=[x;y;z];
out=myfunc(a,vec)
I hope this is what you want...
  1 Commento
Chris
Chris il 24 Mag 2014
Cheers George, not quite what i was looking for but I've got my answer now.

Accedi per commentare.

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