修改后的长波辐射和短波辐射相加代码

长波辐射和短波辐射相加代码,需要统一格式、行列号、栅格大小、命名格式

% 修改为你的文件夹路径
folderPathDSWRF = 'J:\third\co2dlwrf\0.25\c\s';
folderPathDLWRF = 'J:\third\co2dlwrf\0.25\c\l';
outputFolderPath = 'J:\third\co2dlwrf\wrf';

% 定义年份范围
startYear = 1982;
endYear = 2018;
years = startYear:endYear;

% 初始化一个结构数组来存储每年的合成结果
annualSumWRF = struct();

% 循环遍历每一年
for year = years
    % 构造文件名
    fileNameDSWRF = sprintf('yearmean_%d.tif', year);
    fileNameDLWRF = sprintf('yearmean_%d.tif', year);
    
    filePathDSWRF = fullfile(folderPathDSWRF, fileNameDSWRF);
    filePathDLWRF = fullfile(folderPathDLWRF, fileNameDLWRF);
    
    % 检查文件是否存在
    if isfile(filePathDSWRF) && isfile(filePathDLWRF)
        % 读取栅格数据
        dswrfData = imread(filePathDSWRF);
        dlwrfData = imread(filePathDLWRF);
        
        % 获取地理信息
        if year == startYear
            [~, R] = geotiffread(filePathDSWRF);
        end
        
        % 对应像元相加
        sumWRF = dswrfData + dlwrfData;
        
        % 将每年的合成结果存储在结构数组中
        annualSumWRF(year - startYear + 1).year = year;
        annualSumWRF(year - startYear + 1).sumWRF = sumWRF;

        % 保存每年的合成结果为新的tif文件
        outputFileName = sprintf('yearsum_%d_wrf.tif', year);
        outputFilePath = fullfile(outputFolderPath, outputFileName);

        geotiffwrite(outputFilePath, sumWRF, R);

        fprintf('Year %d processed and saved to %s\n', year, outputFilePath);
    else
        fprintf('Files for year %d do not exist.\n', year);
    end
end

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值