How to convert Simscape (Hydraulic) blocks to discrete time to reduce computational time?

8 views (last 30 days)
My model currently has a high computation time because half of it is using continueous time hydraulic blocks from the Simscape Hydraulics package. As I do not need continueous time signals, (in real life these measurements are taken every 1 sec) I want to switch the whole model to discrete time. Is this possible, and if so, how?
Explicitly, I'm modeling a centrifugal pump with a tank and some other blocks such as pipes and a flow rate source from the isothermal liquid (IL) library. These blocks do not clearly offer the option to switch to discrete time.

Accepted Answer

Nikhil Baishkiyar
Nikhil Baishkiyar on 14 Jun 2023
If you want to run a Simscape model in discrete model, you can attach a Solver Configuration block to your system and use a local solver with your sample time.
I tried it out on the example model for Simscape Hydraulic and I was able to get a discrete output
Note: I also had to change the sample time of blocks (not any Simscape block in this case) to match the sample time of solver configuration.
  4 Comments
DB
DB on 15 Jun 2023
@Nikhil Baishkiyar is it correct that in continuous solvers the integral is used and the trapezoidal rule is just an approximation?
Nikhil Baishkiyar
Nikhil Baishkiyar on 16 Jun 2023
All simulink solvers employ numerical integration to find out answers. You can see which method they use in the Configuration parameters. Trapezoidal Rule is an approximation but that is the best you can get with limited data points. Continuous solvers usually employ a variable time step to improve accuracy but discrete solvers do not.

Sign in to comment.

More Answers (0)

Categories

Find more on Upgrading Hydraulic Models to Use Isothermal Liquid Blocks in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!