Main Content

Model Advisor Checks for MAB Modeling Guidelines

This table identifies the Model Advisor checks that you can use to verify compliance of your model with bat365® Advisor Board (MAB) modeling guidelines.

In the Model Advisor, to access the MAB checks, select:

  • By Product > Simulink Check > Modeling Standards > MAB Checks

  • By Task > Modeling Standards for MAB

You need Simulink® Check™ to execute these checks.

Note

Some guidelines do not have corresponding Model Advisor checks:

  • No check — Indicates that the guideline can be checked by using a Model Advisor check, however, the check does not currently exist.

  • Not checkable — Indicates that it is not possible to verify compliance to this guideline by using a Model Advisor check.

MAB Modeling Guideline

(Version 5.0)

Model Advisor CheckCheck ID

ar_0001: Usable characters for file names

Check file namesbat365.jmaab.ar_0001
ar_0002: Usable characters for folder namesCheck folder namesbat365.jmaab.ar_0002
db_0032: Signal line connectionsCheck signal line connectionsbat365.jmaab.db_0032
db_0042: Usage of Inport and Outport blocksCheck position of Inport and Outport blocksbat365.jmaab.db_0042
db_0043: Model font and font sizeCheck model font settingsbat365.jmaab.db_0043
db_0081: Unconnected signals and blocksCheck for unconnected signal lines and blocksbat365.jmaab.db_0081
db_0097: Position of labels for signals and busesCheck position of signal labelsbat365.jmaab.db_0097
db_0110: Block parametersCheck usage of tunable parameters in blocksbat365.maab.db_0110
db_0112: Usage of indexCheck Indexing Modebat365.jmaab.db_0112

db_0123: Stateflow port names

Check for names of Stateflow ports and associated signalsbat365.maab.db_0123
db_0125: Stateflow local dataCheck definition of Stateflow databat365.jmaab.db_0125
db_0126: Defining Stateflow eventsCheck definition of Stateflow eventsbat365.jmaab.db_0126
db_0127: Limitation on MATLAB commands in Stateflow blocksCheck for MATLAB expressions in Stateflow chartsbat365.jmaab.db_0127
db_0129: Stateflow transition appearanceCheck for Stateflow transition appearancebat365.jmaab.db_0129
db_0132: Transitions in flow chartsCheck transitions in Stateflow Flow chartsbat365.jmaab.db_0132
db_0137: States in state machinesCheck for state in state machinesbat365.jmaab.db_0137

db_0140: Display of block parameters

Check for nondefault block attributesbat365.maab.db_0140
db_0141: Signal flow in Simulink modelsCheck signal flow in modelbat365.jmaab.db_0141
db_0142: Position of block namesCheck whether block names appear below blocksbat365.maab.db_0142
db_0143: Usable block types in model hierarchyCheck for mixing basic blocks and subsystemsbat365.maab.db_0143
db_0144: Use of subsystemsNot checkable
db_0146: Block layout in conditional subsystemsCheck position of conditional blocks and iterator blocksbat365.jmaab.db_0146

hd_0001: Prohibited Simulink sinks

Check for prohibited sink blocksbat365.maab.hd_0001
jc_0008: Definition of signal namesCheck definition of signal labelsbat365.jmaab.jc_0008
jc_0009: Signal name propagationCheck signal name propagationbat365.jmaab.jc_0009
jc_0011: Optimization parameters for Boolean data typesCheck Implement logic signals as Boolean data (vs. double)bat365.maab.jc_0011

jc_0021: Model diagnostic settings

Check model diagnostic parametersbat365.maab.jc_0021
jc_0061: Display of block namesCheck the display attributes of block namesbat365.maab.jc_0061
jc_0081: Inport and Outport block icon displayCheck display for port blocksbat365.maab.jc_0081
jc_0110: Direction of blockCheck block orientationbat365.jmaab.jc_0110
jc_0121: Usage of add and subtraction blocksCheck usage of Sum blocksbat365.jmaab.jc_0121
jc_0131: Usage of Relational Operator blocksCheck usage of Relational Operator blocksbat365.maab.jc_0131
jc_0141: Usage of the Switch blocksCheck usage of Switch blocksbat365.maab.jc_0141
jc_0161: Definition of Data Store Memory blocksCheck for usage of Data Store Memory blocksbat365.jmaab.jc_0161
jc_0171: Clarification of connections between structural subsystemsCheck connections between structural subsystemsbat365.jmaab.jc_0171
jc_0201: Usable characters for subsystem namesCheck subsystem namesbat365.jmaab.jc_0201
jc_0211: Usable characters for Inport blocks and Outport blockCheck port block namesbat365.jmaab.jc_0211
jc_0222: Usable characters for signal and bus namesCheck usable characters for signal names and bus namesbat365.jmaab.jc_0222
jc_0231: Usable characters for block namesCheck character usage in block namesbat365.jmaab.jc_0231
jc_0232: Usable characters for parameter namesCheck usable characters for parameter namesbat365.jmaab.jc_0232
jc_0241: Length restriction for model file namesCheck length of model file namebat365.jmaab.jc_0241
jc_0242: Length restriction for folder namesCheck length of folder name at every level of model pathbat365.jmaab.jc_0242
jc_0243: Length restriction for subsystem namesCheck length of subsystem namesbat365.jmaab.jc_0243
jc_0244: Length restriction for Inport and Outport namesCheck length of Inport and Outport namesbat365.jmaab.jc_0244
jc_0245: Length restriction for signal and bus namesCheck length of signal and bus namesbat365.jmaab.jc_0245
jc_0246: Length restriction for parameter nameCheck length of parameter namesbat365.jmaab.jc_0246
jc_0247: Length restriction for block namesCheck length of block namesbat365.jmaab.jc_0247
jc_0281: Trigger signal namesCheck trigger signal namesbat365.jmaab.jc_0281
jc_0451: Use of unary minus on unsigned integersCheck usage of unary minus operations in Stateflow chartsbat365.jmaab.jc_0451
jc_0481: Use of hard equality comparisons for floating point numbers in StateflowCheck usage of floating-point expressions in Stateflow chartsbat365.maab.jc_0481
jc_0491: Reuse of Stateflow dataNot checkable
jc_0501: Format of entries in a State blockCheck entry formatting in State blocks in Stateflow chartsbat365.jmaab.jc_0501
jc_0511: Return values from a graphical functionCheck return value assignments in Stateflow graphical functionsbat365.maab.jc_0511
jc_0531: Default transitionCheck default transition placement in Stateflow chartsbat365.jmaab.jc_0531
jc_0602: Consistency in model element namesCheck for consistency in model element namesbat365.jmaab.jc_0602
jc_0603: Model descriptionCheck Model Descriptionbat365.jmaab.jc_0603
jc_0604: Using block shadowCheck if blocks are shaded in the modelbat365.jmaab.jc_0604
jc_0610: Operator order for multiplication and division blockCheck operator order of Product blocksbat365.jmaab.jc_0610
jc_0611: Input sign for multiplication and division blocksCheck signs of input signals in product blocksbat365.jmaab.jc_0611
jc_0621: Usage of Logical Operator blocksCheck icon shape of Logical Operator blocksbat365.jmaab.jc_0621
jc_0622: Usage of Fcn blocks Check for parentheses in Fcn block expressionsbat365.jmaab.jc_0622
jc_0623: Usage of continuous-time Delay blocks and discrete-time Delay blocksCheck usage of Memory and Unit Delay blocksbat365.jmaab.jc_0623
jc_0624: Usage of Tapped Delay blocks/Delay blocksCheck for cascaded Unit Delay blocksbat365.jmaab.jc_0624
jc_0626: Usage of Lookup Table blocksCheck usage of Lookup Tablesbat365.jmaab.jc_0626
jc_0627: Usage of Discrete-Time Integrator blocksCheck usage of Discrete-Time Integrator blockbat365.jmaab.jc_0627
jc_0628: Usage of Saturation blocksCheck usage of the Saturation blocksbat365.jmaab.jc_0628
jc_0630: Usage of Multiport Switch blocksCheck settings for data ports in Multiport Switch blocksbat365.jmaab.jc_0630
jc_0640: Initial value settings for Outport blocks in conditional subsystemsCheck undefined initial output for conditional subsystemsbat365.jmaab.jc_0640
jc_0641: Sample time settingCheck for sample time settingbat365.jmaab.jc_0641
jc_0642: Integer rounding mode settingCheck Signed Integer Division Rounding modebat365.jmaab.jc_0642
jc_0643: Fixed-point settingCheck usage of fixed-point data type with non-zero biasbat365.jmaab.jc_0643
jc_0644: Type settingCheck type setting by data objectsbat365.jmaab.jc_0644
jc_0645: Parameter definition for calibrationCheck if tunable block parameters are defined as named constantsbat365.jmaab.jc_0645
jc_0650: Block input/output data type with switching functionCheck input and output datatype for Switch blocksbat365.jmaab.jc_0650
jc_0651: Implementing a type conversionCheck output data type of operation blocksbat365.jmaab.jc_0651
jc_0653: Delay block layout in feedback loopsCheck for avoiding algebraic loops between subsystemsbat365.jmaab.jc_0653
jc_0655: Prohibition of logical value comparison in StateflowCheck prohibited comparison operation of logical type signalsbat365.jmaab.jc_0655
jc_0656: Usage of Conditional Control blocksCheck default/else case in Switch Case blocks and If blocksbat365.jmaab.jc_0656
jc_0657: Retention of output value based on conditional control flow blocks and Merge blocksNot checkable
jc_0659: Usage restrictions of signal lines input to Merge blocksCheck usage of Merge blockbat365.jmaab.jc_0659
jc_0700: Unused data in Stateflow blockCheck for unused data in Stateflow Chartsbat365.jmaab.jc_0700
jc_0701: Usable number for first indexCheck usable number for first indexbat365.jmaab.jc_0701
jc_0702: Use of named Stateflow parameters and constantsCheck usage of numeric literals in Stateflowbat365.jmaab.jc_0702
jc_0711: Division in StateflowNot checkable
jc_0712: Execution timing for default transition pathCheck execution timing for default transition pathbat365.jmaab.jc_0712
jc_0721: Usage of parallel statesCheck usage of parallel statesbat365.jmaab.jc_0721
jc_0722: Local data definition in parallel statesCheck scope of data in parallel statesbat365.jmaab.jc_0722
jc_0723: Prohibited direct transition from external state to child stateCheck usage of transitions to external statesbat365.jmaab.jc_0723
jc_0730: Unique state name in Stateflow blocksCheck uniqueness of State namesbat365.jmaab.jc_0730
jc_0731: State name formatCheck usage of State namesbat365.jmaab.jc_0731
jc_0732: Distinction between state names, data names, and event namesCheck uniqueness of Stateflow state, data and event namesbat365.jmaab.jc_0732
jc_0733: Order of state action typesCheck order of state action typesbat365.jmaab.jc_0733
jc_0734: Number of state action typesCheck repetition of Action typesbat365.jmaab.jc_0734
jc_0736: Uniform indentations in Stateflow blocksCheck indentation of code in Stateflow statesbat365.jmaab.jc_0736
jc_0738: Usage of Stateflow commentsCheck usage of Stateflow commentsbat365.jmaab.jc_0738
jc_0739: Describing text inside statesCheck for usage of text inside statesbat365.jmaab.jc_0739
jc_0740: Limitation on use of exit state actionCheck if state action type 'exit' is used in the modelbat365.jmaab.jc_0740
jc_0741: Timing to update data used in state chart transition conditionsCheck updates to variables used in state transition conditionsbat365.jmaab.jc_0741
jc_0751: Backtracking prevention in state transitionCheck for unexpected backtracking in state transitionsbat365.jmaab.jc_0751
jc_0752: Condition action in transition labelCheck usage of parentheses in Stateflow transitionsbat365.jmaab.jc_0752
jc_0753: Condition actions and transition actions in StateflowCheck condition actions and transition actions in Stateflowbat365.jmaab.jc_0753
jc_0760: Starting point of internal transitionCheck starting point of internal transition in Stateflowbat365.jmaab.jc_0760
jc_0762: Prohibition of state action and flow chart combinationCheck prohibited combination of state action and flow chartbat365.jmaab.jc_0762
jc_0763: Usage of multiple internal transitionsCheck usage of internal transitions in Stateflow statesbat365.jmaab.jc_0763
jc_0770: Position of transition labelCheck placement of Label String in Transitionsbat365.jmaab.jc_0770
jc_0771: Comment position in transition labelsCheck position of comments in transition labelsbat365.jmaab.jc_0771
jc_0772: Execution order and transition conditions of transition linesCheck usage of transition conditions in Stateflow transitionsbat365.jmaab.jc_0772
jc_0773: Unconditional transition of a flow chartCheck usage of unconditional transitions in flow chartsbat365.jmaab.jc_0773
jc_0774: Comments for through transitionCheck for comments in unconditional transitionsbat365.jmaab.jc_0774
jc_0775: Terminating junctions in flow chartsCheck terminal junctions in Stateflowbat365.jmaab.jc_0775
jc_0790: Action language of Chart blockCheck Stateflow chart action languagebat365.jmaab.jc_0790
jc_0791: Duplicate data name definitionsCheck duplication of Simulink data namesbat365.jmaab.jc_0791
jc_0792: Unused DataCheck unused data in Simulink Modelbat365.jmaab.jc_0792
jc_0794: Division in SimulinkCheck for division by zero in Simulinkbat365.jmaab.jc_0794
jc_0795: Usable characters for Stateflow data namesCheck usable characters for Stateflow data namesbat365.jmaab.jc_0795
jc_0796: Length restriction for Stateflow data namesCheck length of Stateflow data namebat365.jmaab.jc_0796
jc_0797: Unconnected transitions / states / connective junctionsCheck for unconnected objects in Stateflow Chartsbat365.jmaab.jc_0797
jc_0800: Comparing floating-point types in SimulinkCheck comparison of floating point types in Simulinkbat365.jmaab.jc_0800
jc_0801: Prohibited use of the /* and */ comment symbolsCheck for use of C-style comment symbolsbat365.jmaab.jc_0801
jc_0802: Prohibited use of implicit type casting in StateflowCheck for implicit type casting in Stateflowbat365.jmaab.jc_0802
jc_0803: Passing values to library functionsNot checkable
jc_0804: Prohibited use of recursive calls with graphical functionsCheck usage of graphical functions in Stateflowbat365.jmaab.jc_0804
jc_0805: Numerical operation block inputsNo check
jc_0806: Detecting incorrect calculation resultsCheck diagnostic settings for incorrect calculation resultsbat365.jmaab.jc_0806
jm_0002: Block resizingNo check
jm_0011: Pointers in StateflowCheck for pointers in Stateflow chartsbat365.maab.jm_0011
jm_0012: Usage restrictions of events and broadcasting eventsCheck for usage of events and broadcasting events in Stateflow chartsbat365.jmaab.jm_0012
na_0001: Standard usage of Stateflow operatorsCheck Stateflow operatorsbat365.jmaab.na_0001
na_0002: Appropriate usage of basic logical and numerical operationsCheck fundamental logical and numerical operationsbat365.jmaab.na_0002
na_0003: Usage of If blocksCheck logical expressions in If blocksbat365.maab.na_0003

na_0004: Simulink model appearance settings

Check for Simulink diagrams using nonstandard display attributesbat365.maab.na_0004

na_0008: Display of labels on signals

Check signal line labelsbat365.maab.na_0008

na_0009: Entry versus propagation of signal labels

Check for propagated signal labelsbat365.maab.na_0009
na_0010: Usage of vector and bus signalsCheck usage of vector and bus signalsbat365.jmaab.na_0010
na_0011: Scope of Goto and From blocksCheck scope of From and Goto blocksbat365.maab.na_0011

na_0016: Source lines of MATLAB Functions

Check lines of code in MATLAB Functionsbat365.jmaab.na_0016

na_0017: Number of called function levels

Check the number of function calls in MATLAB Function blocksbat365.jmaab.na_0017

na_0018: Number of nested if/else and case statement

Check nested conditions in MATLAB Functionsbat365.jmaab.na_0018
na_0019: Restricted variable namesCheck usage of restricted variable namesbat365.maab.na_0019
na_0020: Number of inputs to variant subsystemsCheck for missing ports in Variant Subsystemsbat365.jmaab.na_0020
na_0021: Strings in MATLAB functionsCheck usage of character vector inside MATLAB Function blockbat365.maab.na_0021

na_0022: Recommended patterns for Switch/Case statements

Check usage of recommended patterns for Switch/Case statementsbat365.maab.na_0022
na_0024: Shared data in MATLAB functionsCheck MATLAB code for global variablesbat365.maab.na_0024

na_0025: MATLAB Function header

No check
na_0031: Definition of default enumerated valueCheck usage of enumerated valuesbat365.maab.na_0031
na_0034: MATLAB Function block input/output settingsCheck input and output settings of MATLAB Functionsbat365.maab.na_0034
na_0036: Default variantCheck use of default variantsbat365.maab.na_0036
na_0037: Use of single variable for variant conditionCheck use of single variable variant conditionalsbat365.maab.na_0037
na_0039: Limitation on Simulink functions in Chart blocksCheck use of Simulink in Stateflow chartsbat365.maab.na_0039
na_0042: Usage of Simulink functionsCheck usage of Simulink function in Stateflowbat365.jmaab.na_0042