24小时热门版块排行榜    

查看: 5073  |  回复: 4

elve920504

新虫 (初入文坛)

[求助] 用matlab进行批量处理数据时遇到的问题 已有2人参与

fluent计算结果输出170个压力分布数据,现在需要把数据进行批量处理求平均值。小女子新虫一枚,金币不多,望大神帮助。
下面是编的程序:
%-------------------------------------------------------------------------%
clear
%导入原始数据
cd('C:\Users\yangliu\Desktop\LES 未定义来流的湍流度\cp');%待处理的数据文件所在文件夹
Allname=struct2cell(dir); %得到上述文件夹下的所有文件名
%dir命令,可以得到路径内包括文件名在内的文件信息,为struc数据结构。
%-------------------------------------------------------------------------%

%逐个读入文件
[m,n]=size(Allname);
y=zeros(300,1);%对矩阵y进行赋值
for i=3:n %前两个不是文件名
    name=Allname{1,i};%第一行作为文件名用来提取数据
    hang=[5 304];%5行到304行
    lie=[1 2];%1到2列
    fid1=fopen('C:\Users\yangliu\Desktop\LES 未定义来流的湍流度\cp\name','r');
    temp=textscan(fid1,'%f %f ',5,304);%读取5-304行数据
    fclose(fid1);
     for k=1hang(2)-hang(1)+1)
         for l=1lie(2)-lie(1)+1)
             b=temp{l+lie(1)-1}{k+hang(1)-1};
              A(k,l)=str2num(b);
          end % for l=1lie(2)-lie(1)+1)
     end %  for k=1hang(2)-hang(1)+1)
   %将数据赋值到矩阵
     B(i)=A(:,2);
   if mod(i,n)==1
     fid2=fopen('C:\Users\yangliu\Desktop\LES 未定义来流的湍流度\cp\cpaverage.txt','wt');
        D(:,1)=A(:,1);
        D(:,2)=y(:,1)/(n-2);
      for j=1:1:300
        for m=1:1:2
            if m==2
               fprintf(fid,'%g\n',D(j,m));
            else
               fprintf(fid,'%g\t',D(j,m));
            end
         end
      end
      fclose(fid2);%将数据逐个写入文件中
   else
  i=i+1;
  y(:,1)=B(i)+y(:,1);
end %for if mod(i,n)==1
end %for i=3:n
这是自己编的程序,读取5-304行数据,并对第二列进行平均计算,提示错误使用 textscan。文件标识符无效。使用 fopen 生成有效的文件标识符。后面附有一个待处理的文件。小女子matlab刚开始学习,实在是不知道怎么改程序了,求各位大神帮助,不吝赐教啊。
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 03cp.dat
  • 2015-11-30 16:10:50, 12.54 K

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Dlinlin

新虫 (小有名气)

这个解决了吗??我也在做fluent计算,碰到问题,想请教
2楼2017-06-02 15:39:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

【答案】应助回帖


jjdg: 金币+1, 感谢参与 2017-06-03 01:20:08
这里的问题在于 textscan 输入格式不对,因为第一到第四行是字符串格式,所以自然会出错。
用循环很容易出错,能不用就不用
这里有更简单的解决方法,两行(其实一行)代码就可以解决的
CODE:
rawdata = textread('03cp.dat', '%s','delimiter', '\n');
data = cell2mat( cellfun(@str2num, rawdata(5:304),'un',0) );

3楼2017-06-03 01:00:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)


jjdg: 金币+1, 感谢参与 2017-06-03 01:20:22
完全不懂什么数据,不过曲线很有意思
用matlab进行批量处理数据时遇到的问题

4楼2017-06-03 01:03:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Deemo7

新虫 (初入文坛)

【答案】应助回帖

楼主您额批量处理的文件夹是几层的啊
5楼2017-06-29 08:36:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 elve920504 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料与化工(0856)304求B区调剂 +3 邱gl 2026-03-20 7/350 2026-03-21 19:05 by 15709483992
[考研] 求调剂 +5 十三加油 2026-03-21 5/250 2026-03-21 18:48 by 学员8dgXkO
[考研] 297求调剂 +11 戏精丹丹丹 2026-03-17 12/600 2026-03-21 17:47 by ColorlessPI
[考研] 307求调剂 +3 余意卿 2026-03-18 3/150 2026-03-21 17:31 by ColorlessPI
[考研] 277材料科学与工程080500求调剂 +6 自由煎饼果子 2026-03-16 6/300 2026-03-21 17:21 by 学员8dgXkO
[考研] 求调剂 +6 Mqqqqqq 2026-03-19 6/300 2026-03-21 08:04 by JourneyLucky
[考研] 华东师范大学-071000生物学-293分-求调剂 +3 研究生何瑶明 2026-03-18 3/150 2026-03-21 01:30 by JourneyLucky
[考研] 308求调剂 +3 阿姐阿姐家啊 2026-03-18 3/150 2026-03-20 23:24 by JourneyLucky
[考研] 一志愿苏州大学材料求调剂,总分315(英一) +5 sbdksD 2026-03-19 5/250 2026-03-20 22:10 by luoyongfeng
[考研] 295材料求调剂,一志愿武汉理工085601专硕 +5 Charlieyq 2026-03-19 5/250 2026-03-20 20:35 by JourneyLucky
[考研] 320求调剂0856 +3 不想起名字112 2026-03-19 3/150 2026-03-19 22:53 by 学员8dgXkO
[考研] 085601材料工程专硕求调剂 +10 慕寒mio 2026-03-16 10/500 2026-03-19 15:26 by 丁丁*
[考研] 286求调剂 +6 lemonzzn 2026-03-16 10/500 2026-03-19 14:31 by lemonzzn
[考研] 344求调剂 +6 knight344 2026-03-16 7/350 2026-03-18 20:13 by walc
[考研] 085601专硕,总分342求调剂,地区不限 +5 share_joy 2026-03-16 5/250 2026-03-18 14:48 by haxia
[考研] 301求调剂 +4 A_JiXing 2026-03-16 4/200 2026-03-17 17:32 by ruiyingmiao
[考研] 材料专硕326求调剂 +6 墨煜姒莘 2026-03-15 7/350 2026-03-17 17:10 by ruiyingmiao
[考博] 26申博 +4 八6八68 2026-03-16 4/200 2026-03-17 13:00 by 轻松不少随
[考研] 一志愿211 0703方向310分求调剂 +3 努力奋斗112 2026-03-15 3/150 2026-03-16 16:44 by houyaoxu
[考研] 中科院材料273求调剂 +4 yzydy 2026-03-15 4/200 2026-03-16 15:59 by Gaodh_82
信息提示
请填处理意见