Array indices must be positive integers or logical values.

3 views (last 30 days)
keep getting title error message with this code in MATLAB.
a=exp(-1);
o=0.009931621960609;
x2=-2.5:0.1:9.5;
y2=0.5*exp(-a(x2-(0.5*o^2*a)))*(1+erf((x2-o^2*a)/sqrt(2)*o));
o is standard dev of data, a is placeholder value for decay constant.

Accepted Answer

VBBV
VBBV on 10 Dec 2020
%true
a=exp(-1);
o=0.009931621960609;
x2=-2.5:0.1:9.5;
y2=0.5*exp(-a*(x2-(0.5*o^2*a))).*(1+erf((x2-o^2*a)/sqrt(2)*o));
Use element wise matrix multiplication and operation as above

More Answers (1)

Théophane Dimier
Théophane Dimier on 10 Dec 2020
you may have forgot a multipkliication sign:
y2=0.5*exp(-a*(x2-(0.5*o^2*a)))*(1+erf((x2-o^2*a)/sqrt(2)*o));
|
here
Matlab was then understanding that you wanted to access a element of a as if it was an array.

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!