PARFOR循环不能运行,由于变量的方式使用“M”。
1视图(30天)
显示旧的评论
你好,
我想知道我能做什么使变量“M”PARFOR——友好的同时保持它的功能。
任何帮助appricated,提前感谢。
请找到下面的代码:
clc
清除所有
路径=“SW_OPER_MAGA_HR_1B_20170214T000000_20170214T235959_0505_MDR_MAG_HR.cdf”;
信息= cdfinfo(路径);
var = info。变量;
data = cdfread(路径,“变量”,{“纬度”});
时间戳= (cdfread(路径,“变量”,{“时间戳”}));
parfor i = 1:长度(时间戳);
流('处理% d % d时间第一步”,我,长度(时间戳));
datenum (i) = todatenum(时间戳我{});
(i)(年,月(我),(我),hh(我),mm (i),学生(我)]= datevec (todatenum(时间戳我{}));
流(”——时间完成第一步calc \ n”);
结束
parfor i = 1:长度(mm);
流('处理% d % d时间第二步,我,长度(mm);
时间(i) = hh (i) +毫米(i) / 60 + (ss (i) / 3600);
流(”——时间做第二步calc \ n”);
结束
UT = hh +(毫米/ 60)+ (ss / 3600);
data1 = cell2mat(数据);
lat = data1 (: 1);
流(“开始找到…”);
f0 =找到(UT > 0 UT < 24);
流(”——找到做\ n”);
f = f0;
f1 = horzcat (f, f(结束)+ 1:f(结束));
流(”——f1做\ n”);
流(“cell2mat data1开始…”);
data1 = cell2mat (cdfread(路径,“变量”,{纬度,经度,“半径”}));
流(',cell2mat data1 \ n ');
parfor i = 1:长度(f1);
流(% d % d变量处理,我,长度(f1));
Alt (i) = (data1 (f1 (i), 3) / 1000);
流(“calc -变量做\ n”);
结束
parfor i = 1:长度(f1);
流(处理% d % d女士,我,长度(f1));
(我,1)= data1 (f1 (i), 1);
M (i, 2) = data1 (f1 (i), 2);
M (i, 3) = Alt(我);
M (i, 4) = datenum (f1 (i));
流(' -钙做女士\ n ');
结束
0评论
接受的答案
雷蒙德·诺里斯
2022年2月4日
崩溃
(我,1)= data1 (f1 (i), 1);
M (i, 2) = data1 (f1 (i), 2);
M (i, 3) = Alt(我);
M (i, 4) = datenum (f1 (i));
来
(我:)= (data1 (f1 (i), 1) data1 (f1 (i), 2) Alt (i) datenum (f1 (i)));
顺便说一下,有一个MATLAB函数,
datenum
。你可能会考虑使用一个不同的变量名。