yuanxingcom 发表于 2012-4-17 21:17

matlab数据格式问题

急求答案,运行下面程序为什么会出现这样的结果?非常感谢
clear;
clc;
close all hidden;
%format long;
spec='D0';
sf=1000;
for i=1:12
    %for j=1:3
    j=2;
      fin=['d:\matlab\bin\matlab_test\',spec,'\','a',int2str(i),int2str(j),'\','a',int2str(i),int2str(j),'et.xls'];
      aa=xlsread(fin);
      % 激励力信号
      x=aa(:,2)';
      % 加速度响应信号
      y=aa(:,3)';
      % 时间序列
      t=aa(:,1)';
         % 加力窗,指数窗
      len=length(x);
          % 加力窗
          mp=fpeak(t,x,10,);
          t0=mp(1,1);
          tt=t0*1000.0;
          for g=1:tt
            x(g)=0;
          end
          for gg=(tt+3):len
            x(gg)=0;
          end
运行结果
??? Attempted to access x(1006); index must be a positive integer or logical.
Error in ==> frfave at 32
            x(gg)=0.0001;


ChaChing 发表于 2012-4-18 00:31

回复 1 # yuanxingcom 的帖子

虽然LZ符合"求助完整格式:出错代码和出错提示", 但并无法复製且好像有缺少!?
例如"frfave at 32", frfave是什麼? 有第32行吗?
又fpeak是什麼? 不然怎知道LZ得到的tt是否为正整数!?
猜测tt有问题, 建议LZ看看tt的值!

ChaChing 发表于 2012-4-18 00:32

本帖最后由 ChaChing 于 2012-4-18 00:33 编辑

还有建议LZ看看一些精华帖, 相信LZ程序效率有帮助
1.[原创] 提高matlab运行速度的一点心得 http://forum.vibunion.com/thread-25305-1-1.html
[原创] 提高matlab运行速度的一点心得(之二) http://forum.vibunion.com/thread-26449-1-1.html
[原创]提高matlab运行速度和节省空间的一点心得(之三) http://forum.vibunion.com/thread-33199-1-1.html
from http://forum.vibunion.com/home-space-uid-63979-do-blog-id-18250.html

yuanxingcom 发表于 2012-4-18 09:23

回复 3 # ChaChing 的帖子

非常感谢ChaChing老师分享的资料,tt=round(t0*1000.0)就解决了
页: [1]
查看完整版本: matlab数据格式问题