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 ');
结束

接受的答案

雷蒙德·诺里斯
雷蒙德·诺里斯 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 。你可能会考虑使用一个不同的变量名。
2的评论
雷蒙德·诺里斯
雷蒙德·诺里斯 2022年2月8日
在调用
datenum (i) = todatenum(时间戳我{});
你是覆盖MATLAB函数, datenum

登录置评。

更多的答案(0)

类别

找到更多的在循环和条件语句帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!