fenglingcao 发表于 2009-5-12 17:26

恳请指点函數使用

主程序如下:

%Ch413
%清零
clear all;
clc;
%定义h和x
h=;
M=length(h)-1;
x=;
L=length(x);
%计算h和x的卷积
y=matcon(x,h);      
%此处交换x和h的位置不影响结果,即y=Hx或y=Xh
Ly=length(y);
%输出结果

y

包含的matcon.m如下:

%用矩阵相乘的方法计算卷积
function y=matcon(x,h)
L=length(x);
M=length(h)-1;
H=zeros(L+M,L);    %初始化H矩阵
for i=1:L
   H(i:M+i,i)=h ;%给H矩阵赋值
end
%计算输出y
y=H*x';            %x'为列矩阵
y=y';            %最后输出y为行矩阵

最后运行时报错:???In an assignmentA(matrix,matrix) = B, the number of rows in B
and the number of elements in the A row index matrix must be the same.
Error in ==> C:\MATLAB6p5\work\matcon.m
On line 8==>    H(i:M+i,i)=h ;%给H矩阵赋值
我还是一个初学者,不知道这句话里哪错了.还请大侠指点,谢谢

[ 本帖最后由 ChaChing 于 2009-5-16 00:27 编辑 ]

maigicku 发表于 2009-5-12 17:31

x和h的列元素数量应该相同。。。

friendchj 发表于 2009-5-12 20:04

运行正常,没有错误:
ans =

   8   3    11

y =

   1   3   3   5   3   7   4   3   3   0   1

fenglingcao 发表于 2009-5-12 20:08

回复 板凳 friendchj 的帖子

不对,运行不出结果的~

fenglingcao 发表于 2009-5-12 20:50

回复 板凳 friendchj 的帖子

matcon.m中的h应改成为h’

friendchj 发表于 2009-5-12 21:50

回复 5楼 fenglingcao 的帖子

hehe,我是直接运行的。我的matlab版本是R2008a

ChaChing 发表于 2009-5-12 22:02

奇! 我特地回v6.5执行下!
结果同3F!

fenglingcao 发表于 2009-5-13 12:04

回复 6楼 friendchj 的帖子

难道是偶的版本太旧了,kaka~

ChaChing 发表于 2009-5-13 15:02

...Error in ==> C:\MATLAB6p5\work\matcon.m
On line 8 ==> H(i:M+i,i)=h ; %给H矩阵赋值 ...
LZ的版本已试过! 没错丫?

fenglingcao 发表于 2009-5-13 22:21

又运行了一次,没有出现昨天的问题。不过还是有个小小的ERROR~
ans =   8   3    11


y =   1   3   3   5   3   7   4   3   3   0   1

??? 包含的matcon.m如下:
    |
Error: Missing variable or function.

ChaChing 发表于 2009-5-14 08:38

...
??? 包含的matcon.m如下:
    |
Error ...
LZ输入这段吗?

fenglingcao 发表于 2009-5-15 22:33

回复 11楼 ChaChing 的帖子

若将matcon.m单独存于C:\MATLAB6p5\work下,则运行如1楼所示报错。而若将1楼整段程序输入,出现后面那种情况~

[ 本帖最后由 fenglingcao 于 2009-5-15 22:34 编辑 ]

ChaChing 发表于 2009-5-16 00:22

若将matcon.m单独存于搜寻路径下, 即为m函数, 是没报错的!
LZ一定那里没注意到, 建议LZ另外程序亦存成Ch413.m档, 执行Ch413即可!
若将1楼整段程序输入命令窗,中间有"包含的matcon.m如下:"等字眼, 并非matlab语句, 当然报错(如10F)

还有建议楼主先看下function相关帮助文献

[ 本帖最后由 ChaChing 于 2009-5-16 00:32 编辑 ]

fenglingcao 发表于 2009-5-16 09:30

回复 13楼 ChaChing 的帖子

恩,我再试试~
页: [1]
查看完整版本: 恳请指点函數使用