Matlab/simulink建模技巧:根据变量类型,批量修改mat头文件属性

部署运行你感兴趣的模型镜像

function SetHeadfile 
%%设变量的头文件和C文件 

%% 打开模型检查 
mdlOpenChk;
 
%% 加载数据 
if isempty(evalin('base','who'))
    disp('> WorkSpace中无数据,已取消!')
    return;
end 
s = loadWorkSpace;
 
%% 设定头文件 
vars = fieldnames(s);
for i = 1:length(vars)
    varname = vars{i};
    vari = s.(varname);
 
    % 检查变量类型 
    if isa(vari, 'mpt.Signal') || isa(vari, 'mpt.Parameter')
        % 根据变量类型设置文件后缀 
        if isa(vari, 'mpt.Signal')
            fileSuffix = 'MData'; % 信号类型 
        else 
            fileSuffix = 'CData'; % 参数类型 
        end 
 
        % 设置头文件和定义文件路径 
        if isprop(vari.RTWInfo.CustomAttributes, 'HeaderFile')
            vari.RTWInfo.CustomAttributes.HeaderFile = [bdroot, '_', fileSuffix, '.h'];
        else 
            warning('HeaderFile 属性不支持,请检查存储类配置。');
        end 
        if isprop(vari.RTWInfo.CustomAttributes, 'DefinitionFile')
            vari.RTWInfo.CustomAttributes.DefinitionFile = [bdroot, '_', fileSuffix, '.c'];
        else 
            warning('DefinitionFile 属性不支持,请检查存储类配置。');
        end 
    end 
end 
 
%% 释放s到WorkSpace 
struct2WorkSpace(s);
end 

mpt.Signal实现结果:

mpt.Parameter实现结果:

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

songdm_2012

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值