Most relevant variables to a Simulink model

1 回表示 (過去 30 日間)
peetman
peetman 2022 年 3 月 30 日
コメント済み: NN 2023 年 2 月 8 日
Hi there,
I have a complex Simulink model which controls a powertrain. There are several variables that impact the outputs. I would like to identify which variables have the most influence in a specific output.
For example, I want to evaluate the variables that have more influence in the heat rejection from my model. I would imagine a tool where I can select different variables, set upper/lower limits and step size, and the tool would run iterations by variyng the variables values.
Is there some default tool in Simulink for such analysis?
Thanks
  1 件のコメント
Mathieu NOE
Mathieu NOE 2022 年 3 月 30 日
hello
why not make a for loop to test output sensivity for each parameter ?
you run sim('mymodel.slx') inside the for loop and extract the required output and get a sensivity graph from there

サインインしてコメントする。

回答 (2 件)

Paul
Paul 2022 年 3 月 30 日
The Simulink Design Optimization toolbox can do sensitivity analysis. I've never used it, so can't say anything more than that.

Michael
Michael 2022 年 5 月 24 日
You can use Sensitivity Analyzer app which is part of Simulink Design Optimization.
Here's an example that determines the influential parameters in the context of doing parameter estimation. The workflow (especially the sensitivity analysis part) is similar for response optimization.
Note that the sensitivity analysis in this app is global SA, i.e. the workflow leans towards varying all the parameters, not one-at-a-time. The parameters can be varied in a random way (pseudo-random, or in many cases quasi-random works even better to sample the parameter space, and is available if you have Statistics and Machine Learning Toolbox). Or you can variy the parameters in a gridded way.
The main 3 steps in sensitivity analysis are (1) Sample the parameter space, (2) Evaluate the model at those samples, i.e. parameter combinations, and (3) Analyze the evaluation results to determine which parameters have the most influence on the cost function, e.g. making a "tornado plot".
  1 件のコメント
NN
NN 2023 年 2 月 8 日
Dear Mr.Michael,
How we can Select Parameters which are not scalar in Sensitivity analyzer.I have a 2 dimensional array and have four such variables.
first column is time in seconds and second colmn shows the values.
Eg: Cost[60 19.9,120 19.88,....]
i tried the below formats:
Cost.Value(1,1)
Cost.Value[1 1]
but it didnt select the values from the 2 dimensional array.
Kindly help how to specify expression for that.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeEstimate Parameters and States についてさらに検索

製品


リリース

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by