After you build a model in Simulink®, you can configure the simulation to run quickly and accurately without making structural changes to the model.
The first step in configuring your simulation is to select a solver. By default, Simulink autoselects a variable-step solver. You can finetune the solver options or select a different solver in the Solver Pane of the Configuration Parameters dialog box.
Sometimes, a simulation can slow down or stall. Use the Solver Profiler to identify bottlenecks in the simulation and get recommendations to improve the solver performance.
Choose a solver based on the dynamics of the model.
A dynamic system is simulated by computing its states at successive time steps over a specified time span, using information provided by the model.
Learn how zero-crossing events affect simulation.
For implicit solvers, Simulink must compute the solver Jacobian, which is a submatrix of the Jacobian matrix associated with the continuous representation of a Simulink model.
How blocks use the state information for calculating the output signal value for the current simulation step.
Import initial states and initialize specific states.
Save and restore the complete simulation snapshot for further simulation.
Identify factors affecting model simulation using the Solver Profiler.
The Solver Profiler logs events that cause the solver to reset its parameters because solver resets do incur computational cost.
This example simulates a ball bouncing on a hard surface.
This example simulates two identical nonlinear spring-damping systems.
The Solver Profiler supports Jacobian logging and analysis for implicit solvers only.
Learn how algebraic loops are created during simulation.
If Simulink reports an algebraic loop in your model, the algebraic loop solver may be able to solve the loop.
Learn how to break undesired algebraic loops in a model.
Learn modeling techniques to avoid unnecessary algebraic loops.
An artificial algebraic loop occurs when an atomic subsystem or Model block causes Simulink to detect an algebraic loop, even though the contents of the subsystem do not contain a direct feedthrough from the input to the output.