Chop vectors in between a specific time range?

1 次查看(过去 30 天)
I run a simulation in Matlab/Simulink for 10 seconds and the output data is stored in the workspace.
But I need to save data between 5 to 10 seconds to the workspace.
How is this possible ?

采纳的回答

K E
K E 2012-8-20
编辑:K E 2012-8-20
I think you are running a Simulink model and outputting values for your entire 10-second simulation using the To Workspace block. In Matlab, you can then extract the data collected between 5-10 seconds from your saved value as follows. Let us say you rename your time variable timeSimulation and your dependant variable temperature.
temperatureExtracted = temperature(timeSimuation >= 5 & timeSimulation <= 10) ;
If this is not what you want to do, please provide more specifics as Jan suggested.

更多回答(2 个)

Jan
Jan 2012-8-19
Omit the first interval before 5.
Currently the lack of details in the question does not allow a more precise suggestion.

Gautham Jayakumar
Gautham Jayakumar 2012-8-21
编辑:Gautham Jayakumar 2012-8-21
Hi KE
Thank you for the help. It works fine, anyways for others references in the future i will leave more details about my exact case.
I run a simulink model which outputs Torque with variable name Te. Simulation time is 1 second. a fault occurs at 0.30 second. Hence i need to collect the torque between 0.30 seconds to 1 second.
using KE's code: I get Te as output from the simulation, and chop the vectors between 0.30 to 1 second and save it under the name Te1.
timesimulation = 1;
ftime = 0.30;
Te1 = Te(timesimulation >= ftime & timesimulation <= 1) ;

类别

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

产品

Community Treasure Hunt

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

Start Hunting!

Translated by