Main Content

Manage Variant Modeling Components

Manage variant elements and define, reduce, and analyze variant configurations

Variant Manager is a tool that allows you to visualize the model hierarchy and centrally manage the usage of variant elements such as variant blocks and variant transitions in Stateflow® charts across the hierarchy.

The tool is available as a support package named Variant Manager for Simulink® with these main capabilities:

  • Variant Manager — Visualize the model hierarchy, manage the usage of variant elements across the hierarchy, and create and manage variant configurations.

  • Variant Reducer — Generate a reduced model that contains only selected variant configurations.

  • Variant Analyzer — Compare and contrast variant configurations to identify errors or inconsistencies.

Objects

Simulink.VariantConfigurationDataCreate and store variant configurations and constraints
Simulink.VariantConfigurationAnalysisAnalyze variant configurations

Namespaces

Simulink.VariantManagerSummary of functions associated with Variant Manager for Simulink

Functions

expand all

Simulink.VariantManager.openOpen Variant Manager or Simulink.VariantConfigurationData object (Since R2026a)
Simulink.VariantManager.activateModel Validate and activate variant blocks in model hierarchy (Since R2022b)
Simulink.VariantManager.updateModelObtain model compilation information and activate variant blocks in model hierarchy (Since R2024b)
Simulink.VariantManager.applyConfigurationApply specified variant configuration to model (Since R2022b)
Simulink.VariantManager.findVariantControlVars Find variables used in variant control expressions
Simulink.VariantManager.generateConfigurations Generate variant configurations automatically (Since R2022b)
Simulink.VariantManager.getConfigurationDataGet variant configuration data object associated with model (Since R2022b)
Simulink.VariantManager.getPreferredConfigurationNameGet name of preferred variant configuration for model (Since R2022b)
Simulink.VariantManager.reduceModelGenerate reduced model for specified variant configurations
Simulink.VariantManager.analyzeModelAnalyze variant model for specified variant configurations (Since R2026a)
Simulink.VariantManager.validateConstraintVerify if variant constraint is satisfied by model hierarchy (Since R2025a)

Variant Configurations

addConfigurationAdd new variant configuration to variant configuration data object
addCopyOfConfigurationAdd copy of existing variant configuration to variant configuration data object
getConfigurationGet specific variant configuration from variant configuration data object
removeConfigurationRemove variant configuration from variant configuration data object
addControlVariablesAdd variant control variables to named variant configuration in variant configuration data object
removeControlVariableRemove variant control variable from variant configuration
addConstraintAdd constraint to variant configuration data object
removeConstraint Remove constraint from variant configuration data object
isConfigActiveCheck if variant configuration is active (Since R2025a)

Component Configurations

addComponentConfiguration Associate top-model variant configuration with variant configuration of referenced model (Since R2022b)
getComponentConfigurationNameGet name of variant configuration used by referenced component in model hierarchy (Since R2023b)
removeComponentConfigurationRemove association between variant configurations of top-level model and referenced model (Since R2022b)

Preferred Configuration

setPreferredConfiguration Set name of preferred variant configuration for variant configuration data object (Since R2022b)
getPreferredConfigurationGet name of preferred variant configuration for variant configuration data object (Since R2022b)
convertDefaultToPreferredConvert default variant configuration to preferred variant configuration (Since R2022b)
getActiveBlocksList of active blocks in a named variant configuration
getAlwaysActiveBlocksList of blocks that are always active across named variant configurations
getBlockDifferencesList of blocks that differ in their active choice between multiple named variant configurations
getDependentLibrariesList of libraries used in a named variant configuration
getDependentModelsList of dependent models used in a named variant configuration
getNeverActiveBlocksList of blocks that are inactive in named variant configurations
getVariantConditionVariant condition on a block in a named variant configuration
showUIShow variant configuration analysis report for a model
hideUIHide variant configuration analysis report for a model

Support Package

Variant Manager for Simulink

Use a central tool to manage all variation points in a variant model.

Topics

Featured Examples