eight 发表于 2008-4-23 10:48

vpa 前试试设置 digits,or 使用 %17.16lg、%17.16ld 这类用法

ch_j1985 发表于 2008-4-23 11:48

eight院长说的方法,我试了也不行

eight 发表于 2008-4-23 13:14

估计超过15位的精度就无法显示出来了,看下图:

所以,用字符串来显示吧。不过这么多个小数位估计也没有多大用处。也就是说,只要把txt文本中的数据截断一下(去除最后两个小数位的9),则用以下代码就可以正常显示了:

clc;
close all;
format long eng;
fid=fopen('g1.txt');
=fscanf(fid,'%lg',inf);
fclose(fid);
g1


[ 本帖最后由 eight 于 2008-4-23 13:19 编辑 ]

ch_j1985 发表于 2008-4-23 14:27

回复 18楼 的帖子

谢谢eight院长,不过那么多数据也够楼主忙活一阵子了

smalllan123 发表于 2008-4-29 17:37

非常感谢各位大虾们的帮忙,大家的给的方法我也都一一研究并在程序中进行了调试,很感谢大家的热心帮助!!

抱歉我这个发帖的人这么晚才回复大家!这些天我一直在查找这个问题,大家给的方法我都在程序中进行了调试,可是还是会报错,还是原来的错误,后来我又自己查阅了一些关于提升小波的资料,请教了老师,因为我这个做的是一个实际项目,其实这个程序的关键不在于输入数据的精度,报错也不是数据精度出错的原因,而是运算之后的矩阵维数问题,数据精度对结果并没有太大影响,其实在命令窗口导入数据的时候就可以看到,导入g1的时候数据自动被取成4位小数了,所以这不是问题所在!

我试了一种方法,就是不处理g1数据,而是直接处理matlab中自带的典型函数,比如正弦,即将有g1的地方都替换为正弦函数,运行正常,没有报错,在workspace中查看,该正弦函数的size是1*1024,但是g1的size是3515*1,所以我想问题出在g1的维数上,它被提升小波分解之后维数不对了,所以才会报错的。

现在我正在处理这个问题,不知道我想的对不对,希望有懂这个的大虾批评指正,最后,再一次感谢大家的热心帮助,感觉非常温暖,有这么多素不相识的人帮助!
页: 1 [2]
查看完整版本: 关于用提升小波降噪的奇怪问题