声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 854|回复: 2

[综合讨论] 请问如何读取数据全长

[复制链接]
发表于 2008-9-8 22:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
请问:我想读取数据全长求瞬时参量。下面程序中的前4句读取全长好像不对,如何改啊,读取的数据为*.dat
请指教

[FILENAME, PATHNAME] = uigetfile('*.dat', 'open new format VLR data file');
%打开文件并按double类型读取全长
fid = fopen([PATHNAME  FILENAME],'r');
while ~(feof(fid))
[xr,n] = fread(fid,'double');
%xr = [1 4 9 3];
x = hilbert(xr');
xi=imag(x);
xr=xr';%转置成和xi一致的行列
a=sqrt(xr.^2+xi.^2);%瞬时幅度求法。
hold on;
subplot(4,1,1);
plot(xr);
title('原数据xr');
subplot(4,1,2);
plot(xi);
title('虚部xi');
subplot(4,1,3);
plot(x);
title('希尔伯特变换x');
subplot(4,1,4);
plot(a);
title('瞬时幅度a');
回复
分享到:

使用道具 举报

发表于 2008-9-9 08:39 | 显示全部楼层
查阅matlab帮助文档关于fread的用法,有A = fread(fid, count, precision)
那你的调用应该是有点儿问题,改成
[xr,n] = fread(fid,inf,'double');
试试。
另外,如果是纯数据文件问什么不用load?

评分

1

查看全部评分

 楼主| 发表于 2008-9-10 10:01 | 显示全部楼层
谢谢楼上的建议
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-6-1 12:09 , Processed in 0.075842 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表