Subscripting into an empty matrix is not supported

2 ビュー (過去 30 日間)
Tamer
Tamer 2014 年 9 月 22 日
コメント済み: Tamer 2014 年 9 月 27 日
Hi There,
I have the following simple Matlab code, and I'm trying to implement the HDL code for it. but I got this error "Subscripting into an empty matrix is not supported" for "x(k+2)".
is there anyone could help me on that?
x=amp*sin(2*f*t);
k=1;
km=31416;
UPDN=zeros(1,km,'double');
for k=1:1:km-2;
if x(k+2)>=x(k);
UPDN(k)=1;
else
UPDN(k)=0;
end
end
for k=km-1:1:km;
UPDN(k)=1;
end

採用された回答

Andrei Bobrov
Andrei Bobrov 2014 年 9 月 22 日
x = x(:);
UPDN = [x(2:end);[1;1]] >= [x(1:end-2);[0;0]];
  1 件のコメント
Tamer
Tamer 2014 年 9 月 24 日
This answer is not working with me, it solved the problem, but I still want the If function and for statement at my program.
Do you have another suggestion please?

サインインしてコメントする。

その他の回答 (1 件)

Tamer
Tamer 2014 年 9 月 23 日
編集済み: Tamer 2014 年 9 月 23 日
Thank you Andrei,
your solution fixed my problem but my Matlab program has lots of (for & if statement). Do you have another solution for this problem ? I have to keep the if & For statement as showing at the example below.
for p=2:pp-2
if (dero(p)+1 == dero(p+1)&& dero(p)+2 == dero(p+2));
dero2(p+1)=0;
end
end
Thanks, -- Tamer
  3 件のコメント
Tamer
Tamer 2014 年 9 月 24 日
Andrei,
I have to keep the (if)statement and (for) loop at my program, because I have lots of (for) loops and (if) statement at my program. do you have another solution by keeping (if) and (for)?
Thanks for you help -- Tamer
Tamer
Tamer 2014 年 9 月 27 日
Andrei,
This solution is not working at Matlab 2013a, do you have any other solution?
Thanks,
Tamer

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeStartup and Shutdown についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by