Model analysis includes determining dependencies of blocks, signals, and model components. For example, to view blocks affecting a subsystem output, or trace a signal path through multiple switches and logic. Determining dependencies can be a lengthy process, particularly for large or complex models. Use Model Slicer as a simple way to understand functional dependencies in large or complex models. You can also use Model Slicer to create simplified standalone models that are easier to understand and analyze, yet retain their original context.
The dependency analysis workflow identifies the area of interest in your model, generates a sliced model, revises the sliced model, and incorporates those revisions in the main model.
To identify the area of interest in your model, determine objectives such as:
What item or items are you analyzing? Analysis begins with at least one starting point.
In what direction does the analysis propagate? The dependency analysis propagates upstream, downstream, or bidirectionally from the starting points.
What model items or paths do you want to exclude from analysis?
What paths do you want to constrain? If your model has switches, you can constrain the switch positions for analysis.
Is your model a closed-loop system? If so, the highlighted portion of the model can include model dependencies from the feedback loop. Consider excluding blocks from the feedback loop to refine the highlighted portion of the model.
Do you want to analyze static dependencies, or include simulation effects? Static analysis considers model dependencies for possible simulation paths. Simulation-based analysis highlights only paths active during simulation.