错误使用对称/ subsindex

80次浏览(最近30天)
你好!
我犯了以下错误:
使用sym/subsindex时出错(第836行)
无效的索引或函数定义。标度必须遵循MATLAB标度。函数参数必须是符号变量,函数体必须是符号
表达式。
example中的错误(第22行)
问(i, j) = (1 / ((i) ^ (1/2))) * ((t_max - t_min)。/(大小(t) 1)) * symsum (h (k) *小波((τ(k)到达目标时间(j)) / (i)), k, 1,尺寸(h) 1);
代码如下:
类型Ez_dry.csv
测试= importdata (“Ez_dry.csv”);
t = Test(:, 1);
h = Test(:, 2);
t_max = max (t);
t_min = min (t);
wav = @(τ)(2 /(3。^ ^(1/2)*π(1/4))* exp(τ^ 2/2)。*(1 -τ。^ 2));
到达目标时间= t_min: 0.1 * 10 ^ -10: t_max;
一个= 0.3 * 10 ^ 10:0.6 * 10 ^十一10 ^ 9;
i = 1:长度(a)
j = 1:长度(ttt)
信谊k
问(i, j) = (1 / ((i) ^ (1/2))) * ((t_max - t_min)。/(大小(t) 1)) * symsum (h (k) * wav((τ(k)到达目标时间(j)) / (i)), k, 1,尺寸(h) 1);
结束
结束
S =实际(Q);
图(2);
轮廓(双塔,1。/ a, S, 500)
你能帮我想个办法吗?提前谢谢你!
2的评论
Viktoriia Buliuk
Viktoriia Buliuk 8月11日
谢谢!
我决定使用循环而不是symsum。

登录评论。

接受的答案

沃尔特·罗伯森
符号变量永远不能用作索引。不能将控制变量作为索引使用求和或求和。
相反,您需要生成由单个值和sum()或prod()组成的确定向量。
1评论
Viktoriia Buliuk
Viktoriia Buliuk 8月11日
非常感谢!

登录评论。

答案(1)

KSSV
KSSV 8月7日
首先初始化单元格。
Q =细胞(长度(一),(ttt));%初始化
在循环中使用这个。
问{i, j} =%%你的公式与符号
3评论
Viktoriia Buliuk
Viktoriia Buliuk 8月7日
谢谢你!
不幸的是,我得到了相同的错误:
使用sym/subsindex时出错(第836行)
无效的索引或函数定义。标度必须遵循MATLAB标度。函数参数必须是符号变量,函数体必须是符号表达式。

登录评论。

标签

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!