How to replace a variable or function with another variable or function ?

16 visualizzazioni (ultimi 30 giorni)
for example. I have a function
y = x*(x^2 - 1)
In this function, I want to replace x with cos(t)
the required function is,
y = cos(t) ( (cos(t))^2 - 1)

Risposte (3)

Are Mjaavatten
Are Mjaavatten il 25 Mag 2016
Modificato: Are Mjaavatten il 25 Mag 2016
You could define an anonymous function f(x):
f = @(x) x.*(x.^2-1);
Note the '.' before the * and ^operators. This lets the function work with array inputs. I use this feature in the example at the end.
Now you can use cos(t) as an argument to f:
t = 2;
y = f(cos(t))
Or you may define a new anonymous function g:
g = @(t) f(cos(t));
You may now try something like this:
t = linspace(0,2*pi);
plot(t,g(t))
You may want to take a look at the Matlab documentation for anonymous functions.
  2 Commenti
Pavan Bharadwaj
Pavan Bharadwaj il 25 Mag 2016
Thank you for your answer.
In the case I am working on, The result of the differential acts the function and in this function I want to replace x by cos(t). The resultant function has to again be differentiated with respect to t.
Cheers, Pavan
Are Mjaavatten
Are Mjaavatten il 25 Mag 2016
Pavan,
It seems from your comment that I may have misunderstood your question.
You mention 'differential' in your comment. Are you asking how to do some symbolic manipulations to the equations to yield a mathemathical differential (e.g. dy or dx), formulate a differential equation, or maybe how to find the derivative dy/dt?
If so, maybe the symbolic math toolbox may be of help. I do not have this toolbox, but if you state your problem more clearly, maybe someone else can give a relevant answer.

Accedi per commentare.


Steven Lord
Steven Lord il 25 Mag 2016
Since it seems like you want to perform symbolic computations, see the subs function in Symbolic Math Toolbox.

Parth Shrimali
Parth Shrimali il 1 Dic 2020
Modificato: Parth Shrimali il 1 Dic 2020
syms x y z;
p = 3*x + y +z;
% suppose you wanna replace 'x' with
% new variable 'a' in our difined
% variable 'p'
syms a;
subs(p,'x',a)

Community Treasure Hunt

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

Start Hunting!

Translated by