Invalid constraint attribute name for addCrossPa​rameterCon​straint

6 次查看(过去 30 天)
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'.

回答(1 个)

MJ Canavate Sanchez
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')

类别

Help CenterFile Exchange 中查找有关 Author Block Masks 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by