Filter löschen
Filter löschen

Matlab Invalid Data Argument

115 Ansichten (letzte 30 Tage)
Callum Stewart
Callum Stewart am 16 Okt. 2020
Kommentiert: Callum Stewart am 16 Okt. 2020
u = @(t) (t>=0);
r = @(t) t.*u;
x = @(t) r(t)-r(t-1)-3*u(t-1)-2*r(t-3)-r(t-4)-r(t-5)-u(t-7);
t = [-2:0.01:7];
plot(t,x)
Why am a getting invalid data argument as error when plotting>
[SL: formatted code as code]

Antworten (2)

Steven Lord
Steven Lord am 16 Okt. 2020
Let's look at your code section by section.
u = @(t) (t>=0);
r = @(t) t.*u;
This will not work as written. You cannot multiply a number and a function handle. What you can do instead is to multiply a number and the result of evaluating a function handle.
r = @(t) t.*u(t);
In the next section there is a similar problem.
x = @(t) r(t)-r(t-1)-3*u(t-1)-2*r(t-3)-r(t-4)-r(t-5)-u(t-7);
t = [-2:0.01:7];
plot(t,x)
The plot function will not accept a function handle as its second input, but it can accept the result of evaluating a function handle.
plot(t, x(t))

Karolis Poskus
Karolis Poskus am 16 Okt. 2020
Hello,
To plot anonymous function use:
doc fplot

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by