Main Content


カスタム コンポーネントの動作を表す式の作成

コンポーネント ファイルの equations セクションの目的は、コンポーネントの変数、パラメーター、入力、出力、およびシミュレーション時間とそれらの各エンティティの時間微分の間の数学的な関係を確立することです。

同様に、ドメイン ファイルの equations セクションには、ドメインのアクロス変数、パラメーター、および中間値の間の数学的な関係を確立する役割があります。ドメインの方程式は対応するドメイン タイプのノードに伝播します。

コンポーネントとドメインの方程式の構文は同じです。Defining Component Equationsでは、Simscape™ 言語での方程式の記述に関する一般的な情報を提供しています。Domain Equationsでは、ドメインの方程式に固有の情報を提供しています。


assertProgram customized run-time errors and warnings
delayReturn past value of operand
derReturn time derivative of operand
equationsDefine component or domain equations
functionReuse expressions in component equations and in member declarations of domains and components
ifSpecify conditional equations, assignments, annotations, and conditional sections in component files
.ifPerform element-wise conditional operations with array-type predicates (R2023b 以降)
integPerform time integration of expression
intermediatesDefine intermediate terms for use in equations
scatteredlookupReturn value based on interpolating unstructured set of data points (R2023a 以降)
tablelookupReturn value based on interpolating set of data points
valueConvert variable or parameter to unitless value with specified unit conversion


  • Defining Component Equations

    The purpose of the equations section in a component file is to establish the mathematical relationships between the variables, parameters, inputs, and outputs of the component, the simulation time, and the time derivatives of each of these entities. The equations section of a Simscape file is executed throughout the simulation.

  • 単純な代数システム


  • 方程式でのシミュレーション時間の使用

    この例では、equation セクションからグローバルなシミュレーション時間にアクセスする方法を示します。

  • 方程式での条件式の使用

    if ステートメントおよび .if ステートメントを使用して、方程式の条件式や中間値への条件付き代入を指定できます。

  • Using Intermediate Terms in Equations

    Textbooks often define certain equation terms in separate equations, and then substitute these intermediate equations into the main one. For example, for fully developed flow in ducts, the Darcy friction factor can be used to compute pressure loss:

  • Using Lookup Tables in Equations

    You can use the tablelookup function in the equations section of the Simscape file to interpolate input values based on a set of data points in a one-dimensional, two-dimensional, three-dimensional, or four-dimensional table. This functionality is similar to that of the Simulink® and Simscape Lookup Table blocks. It allows you to incorporate table-driven modeling directly in your custom block, without the need of connecting an external Lookup Table block to your model.

  • Programming Run-Time Errors and Warnings

    Use the assert construct to implement run-time error and warning messages for a custom block. In the component file, you specify the condition to be evaluated, as well as the error message to be output if this condition is violated. When the custom block based on this component file is used in a model, it will output this message if the condition is violated during simulation. The optional Action attribute of the assert construct specifies whether simulation stops when the predicate condition is violated, continues with a warning, or ignores the violation.

  • Initial Equations

    Specify additional equations to be executed during model initialization only.

  • Simscape Functions

    Use Simscape functions to reuse expressions in equations and member declarations of multiple components.

  • Import Symbolic Math Toolbox Equations

    Example of using Symbolic Math Toolbox™ software to solve the physical equations, generate code in the format appropriate for the Simscape language equation section, and incorporate the generated code into the equation section of a component file.

  • Domain Equations

    Specify additional equations to propagate to all the components that have nodes of the corresponding domain type.