Plotting x(2t+2) if x(t) is defined as an anonymous function

I have to plot the function
g = @(t) exp(-t/2)*cos(2*t*pi/3)*u(t);
for g(2t+2). I tried a couple things but I either get a blank graph or just a straight line. The only way it works is if I actually switch all the ts into (2t+2) which is excessivly time consuming

Antworten (1)

William Rose
William Rose am 5 Okt. 2022
Bearbeitet: William Rose am 5 Okt. 2022
[edit: correct typos (no typos in the code) ]
You need to define u.
If you define the muliplications inside g() with ".*" instead of "*", then you can pass a vector of times to g and get an answer
Given
t=0:.2:10;
u = @(t) double(t>=0);
g = @(t) exp(-t/2).*cos(2*t*pi/3).*u(t);
plot(t,g(t))
As for 2*t+2:
hold on; %preserve existing plot
plot(t,g(2*t+2),'-r');
Works.

2 Kommentare

That seemed to work, Thanks for the help!
@Yakov, you're welcome. Please accept the answer if you deem it sufficient.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Creating, Deleting, and Querying Graphics Objects finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 5 Okt. 2022

Kommentiert:

am 6 Okt. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by