Model and simulate multidomain physical systems


Simscape™ enables you to rapidly create models of physical systems within the Simulink® environment. With Simscape, you build physical component models based on physical connections that directly integrate with block diagrams and other modeling paradigms. You model systems such as electric motors, bridge rectifiers, hydraulic actuators, and refrigeration systems, by assembling fundamental components into a schematic. Simscape add-on products provide more complex components and analysis capabilities.

Simscape helps you develop control systems and test system-level performance. You can create custom component models using the MATLAB® based Simscape language, which enables text-based authoring of physical modeling components, domains, and libraries. You can parameterize your models using MATLAB variables and expressions, and design control systems for your physical system in Simulink. To deploy your models to other simulation environments, including hardware-in-the-loop (HIL) systems, Simscape supports C-code generation.

Get Started:

Multidomain Schematics

Quickly assemble models spanning multiple domains.

Build Accurate Models Quickly

Assemble a schematic of your system with lines that represent physical (acausal) connections. The equations for the network of mechanical, electrical, hydraulic, and other components are derived automatically.

Mass-spring-damper expressed as a block diagram and a schematic.

Share Intuitive Models with Others

Simscape models are easy to understand and interpret because each model matches the physical structure of the system. You can clearly see all the systems in your model and how they are connected to one another.

Multidomain schematic with mechanical, fluid, and thermal components.

Reuse Models Across Projects

The modular interface of Simscape components lets you employ them in new designs with no extra work. Your library of custom models can be reused across many application-specific projects.

A reusable DC-DC buck converter component feeding a 12V network.

Comprehensive Libraries

Draw from thousands of components covering many physical domains and fidelity levels.

Thousands of Component Models

The Simscape libraries include foundation elements, such as resistors, springs, and valves, and more complex components such as electric drives, transmissions, and heat exchangers. Example models show how to combine them to extend the libraries.

Simscape Foundation Library with components from many domains.

Covering Many Physical Domains

Simscape libraries include models in more than 10 physical domains, such as mechanical, electrical, and two-phase fluids. You can select the domain that includes the physical effects required for your application. Example models show how to tailor domains to new technologies.

Physical domains supported by Simscape, including custom domains.

Abstract and Detailed Variants

Simscape blocks let you account for or ignore physical effects, such as friction, electrical losses, or temperature-dependent behaviors. You can adjust the level of fidelity of your model to capture just the right amount of detail for the analysis you want to perform.

Adjusting model fidelity.

Intuitive Modeling Language

Create components that match the behavior of your system.

Define DAEs and ODEs

Specify physical component behavior by using differential equations and algebraic constraints in an equation-based modeling language. Define implicit equations so that your custom models integrate with components from the Simscape libraries. The syntax is based on MATLAB, so it is easy to learn.

Equations for an ultracapacitor implemented in the Simscape language.

Combine Continuous Variables and Discrete Events

Specify exact physical behavior using continuous variables and abstract behavior using discrete events. For example, use a detailed model to capture electrical losses during a switching event in a power electronic device, or an abstract model to see the effect of many events on system-level performance.

A switch model with event-based and continuous equations.

Reuse Components and Subclasses

Streamline maintenance of your custom models by importing classes into a new textual component definition and assembling a new component within that file. Ensure consistent interfaces by defining subclasses and inheriting them into other components.

Components are reused and connected in a Simscape language file.

Efficient Simulation

Use physical model simulations in a wide range of engineering tasks.

Automatic Equation Simplification

Simscape automatically formulates the equations for your entire physical system. After parsing your schematic, Simscape uses symbolic manipulation and index reduction to identify the mathematical formulation that most efficiently represents your system.

Model of a vapor-compression refrigeration cycle in which the high-pressure portion of the cycle operates in the supercritical fluid region.

Specialized DAE Solver

Simscape can use Simulink solvers and includes solver technology designed to simulate DAEs. Simscape suggests which solver and settings you should use based on the content of your model, and you can adjust those settings to balance the tradeoff of accuracy and simulation speed.

Simscape solver options, including a solver designed to simulate DAEs.

Real-Time Simulation

Simscape uses specialized simulation technology for real-time simulation. You can limit the computation effort per time step as needed to achieve real-time performance. Simscape can be used for HIL testing, training simulators, and other situations that require synchronized execution with a real-time system.

Settings for real-time simulation of Simscape models.

Insightful Analysis

Rapidly explore and improve the performance of your design.

Explore Simulation Results

Quickly explore the simulation results from your Simscape model, including variable values and the timing of events. Navigate directly from plots of the results to the model (including blocks and individual equations) to investigate the causes of the behaviors you observe.

Simscape Results Explorer for exploring simulation results from Simscape models.

Measure Model Complexity

Identify computationally intensive portions of your model using the Simscape Statistics Viewer. Assess complexity using quantities such as variables, equations that can trigger events, and constraints. Determine which changes will improve the performance of the model during simulation.

Simscape Statistics Viewer showing variables retained and eliminated during equation formulation.

Optimize Simulation Performance

Find the causes of slow simulations using the Simulink Solver Profiler. Plots and tables show solver behavior during simulation to help you identify model and solver adjustments that can speed up your simulation.

Model Deployment

Use models throughout the entire development process, including testing of embedded controllers.

Test without Hardware Prototypes

Convert your Simscape model to C code to test embedded control algorithms using hardware-in-the-loop tests on dSPACE®, Speedgoat, OPAL-RT, and other real-time systems. Perform virtual commissioning by configuring tests using a digital twin of your production system.

Accelerate Optimization with Parallel Simulations

Convert your Simscape model to C code to accelerate simulations. Run tests in parallel by deploying simulations to multiple cores on a single machine, multiple machines in a computing cluster, or a cloud.

A robot path optimized for minimal power consumption using parallel computing.

Collaborate with Other Teams

Tune and simulate models that include advanced components and capabilities from the entire Simscape product family without purchasing a license for each Simscape add-on product. Share protected models with external teams to avoid exposing IP.

Models using Simscape add-on products can be shared with others who have not purchased those products.

The Simscape Product Family

Test in a single simulation environment to identify integration issues.

Model Your Entire System

Add support for 3D mechanical simulation, three-phase electrical networks, and other capabilities with Simscape add-on products: Simscape Multibody, Simscape Electrical, Simscape Driveline, and Simscape Fluids. Perform domain-specific analyses and get started with application-specific examples.

Simscape product family with platform and add-on products.

Import Models and Data

Import assemblies from CAD software, netlists from SPICE, fluid properties from fluid databases, and reduced order models from finite element software. Create an accurate system-level model that includes the latest data from hardware designers.

Data and models from many domain-specific tools can be imported into Simscape.

Bring Design Teams Together

Enable software programmers and hardware designers to collaborate early in the design process with an executable specification of the entire system. Use simulation to explore the entire design space.

Control logic coordinates a robot arm and two conveyor belts to transport and reorient packages.

MATLAB and Simulink

Optimize designs faster by automating tasks performed on the complete system model.

Automate any Task with MATLAB

Use MATLAB to automate any task, including model assembly, parameterization, testing, data acquisition, and post-processing. Create apps for common tasks to increase the efficiency of your entire engineering organization.

Animation showing use of MATLAB commands to construct an RC circuit.

Optimize System Designs

Use Simulink to integrate control algorithms, hardware design, and signal processing in a single environment. Apply optimization algorithms to find the best overall design for your system.

Shorten Development Cycles

Reduce the number of design iterations using verification and validation tools to ensure requirements are complete and consistent. Ensure system-level requirements are met by continuously verifying them throughout your development cycle.

Latest Features

Impulsive Events

Reinitialize state variables to model physical phenomena as instantaneous events

Stiffness Impact Analysis Tool

Analyze effect of particular block variables on overall system stiffness of a Simscape network

Custom Block UI

Group and reorder parameters in the block dialog

Variant Connector Block

Selectively enable branches of a physical network

Probe Block

Output block variables as signals during simulation

Numerical Solver Enhancement

Support wider range of high-differential-index problems for more robust simulation

See release notes for details on any of these features and corresponding functions.