请问matlab环境下矩阵下标小于等于零的情况怎么解决

我需要运算的公式如下图:其中参数的含义是:N=10230a[k]是一个序列,里面总共有10230个元素t:代表偏移量m是一个变值,要么是1要么是0,取决于t和k的相对大小... 我需要运算的公式如下图: 其中参数的含义是:N=10230 a[k]是一个序列,里面总共有10230个元素t:代表偏移量m是一个变值,要么是1要么是0,取决于t和k的相对大小,根据此公式,我用matlab编写程序如下: d1=Weil(5097,181) ;%这是之前写的一个函数,调用该函数能产生一个长10230位的序列,元素值要么是0,要么是1 d1_tran=1-2*d1; %转换成+1,-1 N=10230; autovalue_int=0; autocorr=zeros(1,10230); for delay=0:10229 %代表t的变化 for k=0:10229 m=floor((sign(delay-k)+1)/2); temp_value=(-1)^m*d1_tran(k+1)*d1_tran(k-delay+1); autovalue=autovalue_int+temp_value; end autocorr(delay+1)=autovalue/N; %我想得到一个关于delay的序列,不同的delay对应的值可能是不同的。end由于matlab环境下,序列的下标是从1开始的,那么红色代码那行d1_tran(k-delay+1)该怎么处理才能按公式算出正确值?求各位指点! 展开
 我来答
碧血玉叶花
2015-07-13 · TA获得超过4976个赞
知道大有可为答主
回答量:6154
采纳率:0%
帮助的人:1739万
展开全部
可以给你提供个思路,不论矩阵形式如何,都可以先整形成一个列矩阵(或行矩阵),整形的同时保留的坐标的位置,然后进行逐一比较0值,如果是0值则记录,否则不记录,最后即可得出你想要的结果;

希望可以帮到你,
追问
谢谢您的回答,恕我愚昧,其实我没太能理解您的意思。您是说对a[k-t]整形?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式