How to save max data of a time series data from simulink

2 次查看(过去 30 天)
I have an output from simulink of the following array. It calculates Kw value per 0.1 seconds i want to get total kw when "valid "array is 1 either in simulink or in matlab
valid=[0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 ]
kwdata=[0 0 0 0 0 0 2 3 4 5 5 2 0 0 0 0 0 1 2 3 0 0 0]
Desired output
Desired output=[sum[2 3 4 5 5 2] sum[1 2 3]]
Desiredout=[21 6]/0.1

回答(1 个)

RSaha
RSaha 2019-9-9
s=find(diff(valid)==1);
e=find(diff(valid)==-1);
Desiredout=[sum(kwdata(s(1):e(1))) sum(kwdata(s(2):e(2)))]/0.1;

类别

Help CenterFile Exchange 中查找有关 Simulink 的更多信息

产品


版本

R2013b

Community Treasure Hunt

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

Start Hunting!

Translated by