Invalid constraint attribute name for addCrossPa​rameterCon​straint

8 visualizzazioni (ultimi 30 giorni)
I am building a Simulink mask programatically and came across an issue while trying to add a cross-parameter constraint with maskObj.addCrossParameterConstraint. It requires a constraint name and a rule (error message is optional). However, 'Rule' comes up as an invalid constraint attribute name. Anyone else come across this or know what the attribute name should be?
**My script:
blockMask.addCrossParameterConstraint('Name','UniquePortNames',...
'Rule','strcmpi(PortName_1,PortName_2)==0',...
'ErrorMessage','Some ports are not accounted for.');
**Result in command line:
Invalid constraint attribute name, 'Rule'.

Risposte (1)

MJ Canavate Sanchez
MJ Canavate Sanchez il 19 Mar 2021
Hi Rachel, try setting the property name to 'MATLABexpression' rather than 'Rule':
CrossConstraint = maskHandle.addCrossParameterConstraint('Name','constraint1',...
'MATLABexpression','mod(parameter1,parameter2) == 0','ErrorMessage','Invalid parameter')

Categorie

Scopri di più su Author Block Masks in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by