Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-12-17, 07:24   #1
kampww
初级会员
 
注册日期: 2008-12-17
年龄: 43
帖子: 3
声望力: 0
kampww 正向着好的方向发展
默认 matlab code 问题

我有一段matlab code如下
clear;
X=[1 2 3 4; 5 6 7 8 ;9 10 11 12];
N=[1 2 3 4; 5 6 7 8 ;9 10 11 12];
N=kron(N,ones(size(X,1),1));
w =[1 1 1 1;1 1 1 1;1 1 1 1];
for i=1:3
for j=1:4
b(i,j)=sqrt(w(i,j)*(N(i,j)-X(i,j))^2);
end
end
c=sum(b,2);
[val ind]=min(c)
result
val =0
ind =1
程序中w及X值是固定的,但是N值会变第一次N=[1 2 3 4]去跟X中的每一个对应位置相减,接下来依序为[5 6 7 8]、[9 10 11 12]我目前仅能算第一次N=[1 2 3 4]跑出一次结果显示值及其索引值,但是后面必须用手动方式修正,想请问有办法让他自动跑出三个答案吗? 如果可以储存每一次的数值(val)及索引(ind)值更好。非常感谢!!
kampww 当前离线   回复时引用此帖
旧 2008-12-18, 12:06   #2
remnant
普通会员
 
注册日期: 2008-04-12
年龄: 46
帖子: 67
声望力: 19
remnant 正向着好的方向发展
默认 回复: matlab code 问题

引用:
作者: kampww 查看帖子
我有一段matlab code如下
clear;
X=[1 2 3 4; 5 6 7 8 ;9 10 11 12];
N=[1 2 3 4; 5 6 7 8 ;9 10 11 12];
N=kron(N,ones(size(X,1),1));
w =[1 1 1 1;1 1 1 1;1 1...
不懂Kronecker张量,所以,把每个已知量看做blackbox yy一下:
clear;
clc;

X=[1 2 3 4; 5 6 7 8 ;9 10 11 12];
W =[1 1 1 1;1 1 1 1;1 1 1 1];
N=[1 2 3 4; 5 6 7 8 ;9 10 11 12];
N=kron(N,ones(size(X,1),1));

[ X_row, tmp_col ] = size( X ); %% tmp_col临时量,没用
[ N_row, tmp_col ] = size( N );

result_num = N_row / X_row; %% 确定要做几次结果出来

for i = 1 : result_num
%% X大小是一定的,因此这里要做的其实就是正确的分离出大小合适的N来
%% X, N列总是一致的,因此只需要在行上做文章,
%% 第一次,需要取出N的1->X_row行,
%% 第二次,取出N的X_row+1 -> 2*X_row
%% 第三次,取出N的2*X_row+1 -> 3*X_row
%% .....一次类推,得到下面:
N_sub = N( (i-1)*X_row+1 : i*X_row, : );
B = sqrt( W .* ( N_sub - X ) .^ 2 );
[ Val(i), Indx(i) ] = min( sum( B, 2 ) );
end
remnant 当前离线   回复时引用此帖
旧 2008-12-26, 23:02   #3
kampww
初级会员
 
注册日期: 2008-12-17
年龄: 43
帖子: 3
声望力: 0
kampww 正向着好的方向发展
默认 回复: matlab code 问题

可以再请问一下我如果要取出排名前3个4个…到n个最小值及索引可以吗?我有试过sort指令,去sort B矩阵然后用val(1:3),Indx(1:3)取出排名前三的值及索引,但是好像还是不行,可以在请问一下吗?真的非常感谢您!!
kampww 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[求助]??? Undefined command/function 'Signal'. sogno MATLAB论坛 1 2009-04-20 15:20
[求助]新手提问,请多多关照 MondaSunny MATLAB论坛 0 2009-03-27 10:22
[求助]导入excel中的数据 wangwendie MATLAB论坛 0 2009-02-25 11:05
[资料]ANSYS5.7线性和非线性结构静力分析指南 windows251 ANSYS论坛 10 2008-12-30 10:41
【求助】simulink串口传输 liuxing MATLAB论坛 0 2008-04-03 14:37


所有时间均为北京时间。现在的时间是 10:45


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.