Simulation Automation Skill
Responsibility
Use this skill to plan, scaffold, execute, audit, visualize, and report engineering simulation workflows that involve:
- MATLAB/Simulink system-level dynamic models;
- Ansys Fluent or PyFluent local CFD/unit models;
- coupled Simulink-Fluent comparison and calibration;
- optimization, techno-economic analysis, uncertainty/sensitivity analysis;
- publication-quality figures, videos, screenshots, reports, and final audit packages.
Treat this skill as a workflow and quality-control guide. It does not replace engineering judgment, software licensing, solver validation, or experimental verification.
Trigger Scenarios
Use this skill when the user asks to:
- build, modify, audit, or run a Simulink simulation;
- automatically run Simulink cases or parameter sweeps;
- export Simulink top-level or subsystem screenshots;
- create a Fluent/PyFluent automation project;
- generate CFD geometry, mesh, materials, boundary conditions, solver settings, and postprocessing;
- compare Fluent outputs with Simulink outputs;
- calibrate a reduced/system model from CFD and rerun calibrated cases;
- perform parameter optimization, Pareto analysis, sensitivity analysis, or techno-economic analysis;
- generate figures, videos, model screenshots, result tables, paper assets, or final reports;
- perform a final quality review of a simulation project.
Do Not Use
Do not use this skill to:
- claim that a local CFD model replaces a full system simulation unless the user explicitly built and validated such a model;
- silently invent missing data or present estimates as literature facts;
- overwrite baseline results during calibration or optimization;
- bypass MATLAB, Simulink, Fluent, or PyFluent license limitations;
- run destructive file operations or delete previous results without explicit user permission.
Inputs Needed
Collect only the missing information needed for the chosen workflow:
- workflow mode:
simulink_only, fluent_only, coupled, optimization, economics, visualization, or final_audit;
- software paths: MATLAB availability, Fluent executable, Python executable, PyFluent environment;
- model objectives, cases, stop time, solver settings, logged variables;
- geometry, materials, boundary conditions, mesh settings, and solver controls for CFD;
- comparison variables and correction-factor policy for coupled workflows;
- optimization variables, constraints, objectives, and baseline design;
- economic parameters, unit costs, lifetime, discount rate, sensitivity ranges;
- output expectations: figures, videos, screenshots, CSVs, reports, paper assets.
Execution Steps
- Determine workflow mode and scope.
- Create or audit the project structure using
scripts/python/create_project_structure.py.
- Validate configuration with
scripts/python/validate_config.py.
- For Simulink work, follow
references/simulink_workflow_standard.md and use scripts under scripts/matlab/.
- For Fluent work, follow
references/fluent_workflow_standard.md and use scripts under scripts/python/.
- For coupled work, explicitly define model roles before comparing outputs. Read
references/coupled_simulation_standard.md.
- If calibration is requested, fit a raw factor, convert it to a conservative factor, and save calibrated results in a new folder. Read
references/calibration_standard.md.
- If optimization is requested, preserve baseline, classify technical/economic/balanced optima, and keep infeasible candidates traceable. Read
references/optimization_standard.md.
- If economics are requested, compute CAPEX, OPEX, TAC, LCOH, NPC, and sensitivity ranges. Read
references/techno_economic_standard.md.
- Generate figures/videos/screenshots using
references/visualization_standard.md.
- Generate final report assets using
references/reporting_standard.md.
- Record uncertainty and sensitivity assumptions using
references/uncertainty_and_sensitivity_standard.md.
- Finish with a pass/warning/fail checklist using
references/final_audit_standard.md.
Workflow A: Simulink-Only
Use for system dynamics, controls, case comparison, parameter sweeps, and reporting.
- Create
config/, models/, scripts/, results/, figures/, reports/, and logs/.
- Put all parameters in one initialization script or config file.
- Build or load the model, set solver and stop time, and define case inputs.
- Log time, states, outputs, controls, powers, energies, and efficiencies.
- Run cases with repeatable scripts, not manual clicks.
- Save raw results before plotting.
- Export top-level and subsystem screenshots.
- Generate case plots, cross-case plots, summary tables, and model audit.
Use scripts/matlab/create_simulink_project.m, run_simulink_cases.m, postprocess_simulink_results.m, compare_cases.m, and export_simulink_screenshots.m.
Workflow B: Fluent-Only
Use for local/unit CFD, geometry/mesh automation, contour/vector/animation output, and mesh sensitivity.
- Check Python, Fluent executable, PyFluent import, and license availability.
- Generate a Fluent project folder with
config/, src/, journals/, mesh/, outputs/, and logs/.
- Create or import geometry and named boundaries.
- Generate or import mesh and write mesh quality metrics.
- Set materials, models, boundary conditions, solver controls, and output intervals.
- Save case/data files and logs.
- Export CSV summaries, contour plots, vector plots, and animations.
- Provide journal fallback if PyFluent fails.
Use scripts/python/check_fluent_environment.py, generate_fluent_project.py, and postprocess_fluent_results.py.
Workflow C: Coupled Simulink + Fluent
Use when Simulink is the system model and Fluent is a local high-fidelity or unit model.
- State the division of responsibility: Simulink handles full-system dynamics; Fluent handles local CFD or component physics.
- Align geometry, material properties, boundary conditions, initial conditions, and time windows.
- Export Simulink comparison variables to CSV.
- Read Fluent summary CSV and interpolate both outputs to a common time axis.
- Compare average temperatures, state variables, heat flux/heat rate, efficiency, and final states.
- Fit raw correction factors only to model parameters, not to output curves.
- Convert raw factors to conservative factors with reliability weighting.
- Save calibrated configs and rerun system cases in a new output folder.
- Compare original vs calibrated and document limitations.
Use scripts/python/compare_simulink_fluent.py, scripts/matlab/export_simulink_for_cfd_comparison.m, and references/calibration_standard.md.
Optimization Workflow
Always preserve baseline. Generate:
baseline design;
technical-optimal design;
economic-optimal design;
balanced-optimal design;
- feasible and infeasible candidate tables;
- Pareto plots and constraint summaries.
Optimization must recompute economics when geometry, material, control, pump power, or capacity changes. Never call an infeasible design "optimal."
Techno-Economic Workflow
Compute at least CAPEX, OPEX, annualized CAPEX, TAC, LCOH, NPC, and sensitivity ranges. Keep units explicit: W/kW, J/kWh, EUR/kWh, EUR/MWh, thermal/electric energy, day/year. If optional assets such as PV are debated, report both with and without their CAPEX.
Visualization Workflow
Generate figures and videos only from saved data. Use fixed color scales for comparisons, include units in axes and colorbars, avoid overcrowded subplots, and generate figure/video explanation files for reports. Export Simulink screenshots and CFD geometry/boundary/mesh schematics.
Final Audit Workflow
Create a final output folder instead of overwriting original results. Audit:
- project structure;
- parameter consistency and units;
- model logic and solver settings;
- case results and nonphysical values;
- optimization constraints and rankings;
- economics and sensitivity analysis;
- CFD setup and calibration conservatism;
- figure/video/report quality.
Write final_audit_report.md and final_audit_checklist.csv with pass, warning, fail, or not_applicable statuses.
Common Failure Modes
- Missing MATLAB/Fluent/PyFluent: write clear environment logs and fallback instructions.
- License unavailable: stop the solver stage and preserve generated setup files.
- Missing source data: create a missing-data register and label estimates.
- Inconsistent units: stop or warn before simulation if units can change results.
- CFD/Simulink mismatch: compare only compatible averaged variables and document scale/boundary differences.
- Calibration too aggressive: bound the conservative factor and warn if fit quality remains poor.
- Crowded plots: split into multiple figures.
- Placeholder screenshots: generate readable supplemental schematics and report the limitation.
Safety and Open-Source Notes
Do not hard-code private paths, license details, proprietary datasets, or personal information. Use placeholders in templates. Assume MATLAB/Simulink, Ansys Fluent, and PyFluent require user installation and licensing. All scripts must fail gracefully and write logs.
Resource Map
- Workflow standards:
references/*.md
- Config/report templates:
assets/templates/*.yaml and assets/templates/*.md
- Reusable prompts:
assets/prompts/*.md
- Example configs:
assets/examples/*.yaml
- Python utilities:
scripts/python/*.py
- MATLAB utilities:
scripts/matlab/*.m
- Workflow launchers:
scripts/shell/*
1---2name: simulation-automation-skill3description: Automate engineering simulation workflows with MATLAB/Simulink, Ansys Fluent/PyFluent, or coupled Simulink-Fluent calibration. Use when users ask to build or audit Simulink simulations, run multiple cases, export Simulink screenshots, automate Fluent CFD geometry/mesh/boundaries/solver/postprocessing, compare Fluent and Simulink results, derive conservative CFD correction factors, run parameter optimization, perform techno-economic analysis, generate publication figures/videos/reports, or perform final project quality review.4---56# Simulation Automation Skill78## Responsibility910Use this skill to plan, scaffold, execute, audit, visualize, and report engineering simulation workflows that involve:1112- MATLAB/Simulink system-level dynamic models;13- Ansys Fluent or PyFluent local CFD/unit models;14- coupled Simulink-Fluent comparison and calibration;15- optimization, techno-economic analysis, uncertainty/sensitivity analysis;16- publication-quality figures, videos, screenshots, reports, and final audit packages.1718Treat this skill as a workflow and quality-control guide. It does not replace engineering judgment, software licensing, solver validation, or experimental verification.1920## Trigger Scenarios2122Use this skill when the user asks to:2324- build, modify, audit, or run a Simulink simulation;25- automatically run Simulink cases or parameter sweeps;26- export Simulink top-level or subsystem screenshots;27- create a Fluent/PyFluent automation project;28- generate CFD geometry, mesh, materials, boundary conditions, solver settings, and postprocessing;29- compare Fluent outputs with Simulink outputs;30- calibrate a reduced/system model from CFD and rerun calibrated cases;31- perform parameter optimization, Pareto analysis, sensitivity analysis, or techno-economic analysis;32- generate figures, videos, model screenshots, result tables, paper assets, or final reports;33- perform a final quality review of a simulation project.3435## Do Not Use3637Do not use this skill to:3839- claim that a local CFD model replaces a full system simulation unless the user explicitly built and validated such a model;40- silently invent missing data or present estimates as literature facts;41- overwrite baseline results during calibration or optimization;42- bypass MATLAB, Simulink, Fluent, or PyFluent license limitations;43- run destructive file operations or delete previous results without explicit user permission.4445## Inputs Needed4647Collect only the missing information needed for the chosen workflow:4849- workflow mode: `simulink_only`, `fluent_only`, `coupled`, `optimization`, `economics`, `visualization`, or `final_audit`;50- software paths: MATLAB availability, Fluent executable, Python executable, PyFluent environment;51- model objectives, cases, stop time, solver settings, logged variables;52- geometry, materials, boundary conditions, mesh settings, and solver controls for CFD;53- comparison variables and correction-factor policy for coupled workflows;54- optimization variables, constraints, objectives, and baseline design;55- economic parameters, unit costs, lifetime, discount rate, sensitivity ranges;56- output expectations: figures, videos, screenshots, CSVs, reports, paper assets.5758## Execution Steps59601. Determine workflow mode and scope.612. Create or audit the project structure using `scripts/python/create_project_structure.py`.623. Validate configuration with `scripts/python/validate_config.py`.634. For Simulink work, follow `references/simulink_workflow_standard.md` and use scripts under `scripts/matlab/`.645. For Fluent work, follow `references/fluent_workflow_standard.md` and use scripts under `scripts/python/`.656. For coupled work, explicitly define model roles before comparing outputs. Read `references/coupled_simulation_standard.md`.667. If calibration is requested, fit a raw factor, convert it to a conservative factor, and save calibrated results in a new folder. Read `references/calibration_standard.md`.678. If optimization is requested, preserve baseline, classify technical/economic/balanced optima, and keep infeasible candidates traceable. Read `references/optimization_standard.md`.689. If economics are requested, compute CAPEX, OPEX, TAC, LCOH, NPC, and sensitivity ranges. Read `references/techno_economic_standard.md`.6910. Generate figures/videos/screenshots using `references/visualization_standard.md`.7011. Generate final report assets using `references/reporting_standard.md`.7112. Record uncertainty and sensitivity assumptions using `references/uncertainty_and_sensitivity_standard.md`.7213. Finish with a pass/warning/fail checklist using `references/final_audit_standard.md`.7374## Workflow A: Simulink-Only7576Use for system dynamics, controls, case comparison, parameter sweeps, and reporting.77781. Create `config/`, `models/`, `scripts/`, `results/`, `figures/`, `reports/`, and `logs/`.792. Put all parameters in one initialization script or config file.803. Build or load the model, set solver and stop time, and define case inputs.814. Log time, states, outputs, controls, powers, energies, and efficiencies.825. Run cases with repeatable scripts, not manual clicks.836. Save raw results before plotting.847. Export top-level and subsystem screenshots.858. Generate case plots, cross-case plots, summary tables, and model audit.8687Use `scripts/matlab/create_simulink_project.m`, `run_simulink_cases.m`, `postprocess_simulink_results.m`, `compare_cases.m`, and `export_simulink_screenshots.m`.8889## Workflow B: Fluent-Only9091Use for local/unit CFD, geometry/mesh automation, contour/vector/animation output, and mesh sensitivity.92931. Check Python, Fluent executable, PyFluent import, and license availability.942. Generate a Fluent project folder with `config/`, `src/`, `journals/`, `mesh/`, `outputs/`, and `logs/`.953. Create or import geometry and named boundaries.964. Generate or import mesh and write mesh quality metrics.975. Set materials, models, boundary conditions, solver controls, and output intervals.986. Save case/data files and logs.997. Export CSV summaries, contour plots, vector plots, and animations.1008. Provide journal fallback if PyFluent fails.101102Use `scripts/python/check_fluent_environment.py`, `generate_fluent_project.py`, and `postprocess_fluent_results.py`.103104## Workflow C: Coupled Simulink + Fluent105106Use when Simulink is the system model and Fluent is a local high-fidelity or unit model.1071081. State the division of responsibility: Simulink handles full-system dynamics; Fluent handles local CFD or component physics.1092. Align geometry, material properties, boundary conditions, initial conditions, and time windows.1103. Export Simulink comparison variables to CSV.1114. Read Fluent summary CSV and interpolate both outputs to a common time axis.1125. Compare average temperatures, state variables, heat flux/heat rate, efficiency, and final states.1136. Fit raw correction factors only to model parameters, not to output curves.1147. Convert raw factors to conservative factors with reliability weighting.1158. Save calibrated configs and rerun system cases in a new output folder.1169. Compare original vs calibrated and document limitations.117118Use `scripts/python/compare_simulink_fluent.py`, `scripts/matlab/export_simulink_for_cfd_comparison.m`, and `references/calibration_standard.md`.119120## Optimization Workflow121122Always preserve baseline. Generate:123124- `baseline design`;125- `technical-optimal design`;126- `economic-optimal design`;127- `balanced-optimal design`;128- feasible and infeasible candidate tables;129- Pareto plots and constraint summaries.130131Optimization must recompute economics when geometry, material, control, pump power, or capacity changes. Never call an infeasible design "optimal."132133## Techno-Economic Workflow134135Compute at least CAPEX, OPEX, annualized CAPEX, TAC, LCOH, NPC, and sensitivity ranges. Keep units explicit: W/kW, J/kWh, EUR/kWh, EUR/MWh, thermal/electric energy, day/year. If optional assets such as PV are debated, report both with and without their CAPEX.136137## Visualization Workflow138139Generate figures and videos only from saved data. Use fixed color scales for comparisons, include units in axes and colorbars, avoid overcrowded subplots, and generate figure/video explanation files for reports. Export Simulink screenshots and CFD geometry/boundary/mesh schematics.140141## Final Audit Workflow142143Create a final output folder instead of overwriting original results. Audit:144145- project structure;146- parameter consistency and units;147- model logic and solver settings;148- case results and nonphysical values;149- optimization constraints and rankings;150- economics and sensitivity analysis;151- CFD setup and calibration conservatism;152- figure/video/report quality.153154Write `final_audit_report.md` and `final_audit_checklist.csv` with `pass`, `warning`, `fail`, or `not_applicable` statuses.155156## Common Failure Modes157158- Missing MATLAB/Fluent/PyFluent: write clear environment logs and fallback instructions.159- License unavailable: stop the solver stage and preserve generated setup files.160- Missing source data: create a missing-data register and label estimates.161- Inconsistent units: stop or warn before simulation if units can change results.162- CFD/Simulink mismatch: compare only compatible averaged variables and document scale/boundary differences.163- Calibration too aggressive: bound the conservative factor and warn if fit quality remains poor.164- Crowded plots: split into multiple figures.165- Placeholder screenshots: generate readable supplemental schematics and report the limitation.166167## Safety and Open-Source Notes168169Do not hard-code private paths, license details, proprietary datasets, or personal information. Use placeholders in templates. Assume MATLAB/Simulink, Ansys Fluent, and PyFluent require user installation and licensing. All scripts must fail gracefully and write logs.170171## Resource Map172173- Workflow standards: `references/*.md`174- Config/report templates: `assets/templates/*.yaml` and `assets/templates/*.md`175- Reusable prompts: `assets/prompts/*.md`176- Example configs: `assets/examples/*.yaml`177- Python utilities: `scripts/python/*.py`178- MATLAB utilities: `scripts/matlab/*.m`179- Workflow launchers: `scripts/shell/*`