Array indices must be positive integers or logical values.

1 次查看(过去 30 天)
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.

采纳的回答

VBBV
VBBV 2020-12-10
%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

更多回答(1 个)

Théophane Dimier
Théophane Dimier 2020-12-10
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.

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by