用途:以非破坏性方式配置并运行 Simulink 仿真,包括参数覆盖、自定义输入、批量执行和结构化输出访问。若只需无配置的一次性仿真,直接调用 sim('ModelName') 即可,无需本技能;持久可复用的行为测试(尤其针对单个子系统)应使用 testing-simulink-models;增删连接模块或生成需求等任务也应使用其他对应技能。
主要能力:使用 Simulink.SimulationInput 与 Simulink.SimulationOutput 配置与获取结果。可通过 setModelParameter 设置模型级参数(如 StopTime、SolverType、SimulationMode);通过 setBlockParameter 设置模块参数,模块路径需由 blk_X ID 解析(Simulink.ID.getFullName),不要手写模块名;通过 setVariable 设置模型使用的 MATLAB 工作区变量。输入信号通过 setExternalInput 配合 Simulink.SimulationData.Dataset 传入根级 Inport 模块,元素按索引位置与端口号逐一对应,支持 timeseries 和 timetable 格式。仿真后可用 who(out) 查看已记录数据种类,用 out.logsout.getElementNames 列出信号名,并通过 out.logsout.get('name').Values 直接访问。
批量与并行:可创建 SimulationInput 数组运行多次仿真,或使用 parsim 并行执行;两者都支持 'UseFastRestart','on',以便迭代扫描时只编译一次模型。
使用限制与约束:不要用 set_param、load_system 或 open_system 驱动仿真,SimulationInput 已取代它们;不要用 try-catch 或 isfield 包裹 SimulationOutput 访问(其没有 isfield 方法);不要为记录数据创建多余中间变量;变量名统一用 in/out;setExternalInput 必须传 Dataset,不能传逗号分隔的变量列表。
其余内容(如具体收费、平台支持范围等)暂未提供。