how to enter exponential multiplication with a time dependent array

1 Ansicht (letzte 30 Tage)
Given fa(t)=10*e^-5t and a time array of t=0:0.06:3 how do I enter this?
I have tried fa(t)=10*exp(-5*t) and I get an error message saying that the "Array indices must be positive intergers or logical values"

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 10 Mär. 2024
You need to decide whether you are doing array indexing, or are creating a formula.
t=0:0.06:3;
fa(t)=10*exp(-5*t)
is interpreted as array indexing. Using () indexing on the left hand side of an assignment is almost always interpreted as array indexing.
The formula form would be
t=0:0.06:3;
fa = @(t) 10*exp(-5*t);
plot(t, fa(t))
The major exception is if you are using a symbolic variable, then
syms t
fa(t)=10*exp(-5*t)
creates a formula, which you then apply like
T=0:0.06:3;
plot(T, fa(T))
But easiest is usually what Alexander shows,
t=0:0.06:3;
fa=10*exp(-5*t)
plot(t,fa)
which is pure expression form.

Weitere Antworten (1)

Alexander
Alexander am 10 Mär. 2024
Bearbeitet: Alexander am 10 Mär. 2024
Do you mean something like that:
t=0:0.06:3;
fa=10*exp(-5*t)
plot(t,fa)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Produkte


Version

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by