MATLAB Programming Fundamentals - MathWorks

(やまだぃちぅ) #1

Process Tuned Properties


This example shows how to specify the action to take when a tunable property value
changes during simulation.

The processTunedPropertiesImpl method is useful for managing actions to prevent
duplication. In many cases, changing one of multiple interdependent properties causes an
action. With the processTunedPropertiesImpl method, you can control when that
action is taken so it is not repeated unnecessarily.

Control When a Lookup Table Is Generated

This example of processTunedPropertiesImpl causes the pLookupTable to be
regenerated when either the NumNotes or MiddleC property changes.

methods (Access = protected)
function processTunedPropertiesImpl(obj)
propChange = isChangedProperty(obj,'NumNotes')||...
isChangedProperty(obj,'MiddleC')
if propChange
obj.pLookupTable = obj.MiddleC *...
(1+log(1:obj.NumNotes)/log(12));
end
endend

Complete Class Definition File with Tuned Property Processing

classdef TuningFork < matlab.System
% TuningFork Illustrate the processing of tuned parameters
%

properties
MiddleC = 440
NumNotes = 12
end

properties (Access = private)
pLookupTable
end

methods (Access = protected)
function resetImpl(obj)
obj.MiddleC = 440;
obj.pLookupTable = obj.MiddleC * ...

Process Tuned Properties
Free download pdf