Включите For Each поддержку подсистемы

Включите поддержку каждой подсистемы при помощи системной object™ в Simulink® Для каждой подсистемы. Включите supportsMultipleInstanceImpl метод в файле определения класса. Этот метод применяется только, когда системный объект используется в Simulink через блок MATLAB System.

Используйте supportsMultipleInstanceImpl метод и иметь его возврат true чтобы указать, что системный объект поддерживает несколько вызовов в подсистеме Simulink For Each.

methods (Access = protected)
   function flag = supportsMultipleInstanceImpl(obj)
       flag = true;
   end
end

Просмотрите метод в полном файле определения класса.

classdef RandSeed < matlab.System
% RANDSEED Random noise with seed for use in For Each subsystem
  
    properties (DiscreteState)
       count;
    end
    
    properties (Nontunable)
       seed = 20;
       useSeed (1,1) logical = false;
    end

   methods (Access = protected)
       function y = stepImpl(obj,u1)
         % Initial use after reset/setup 
         % and use the seed
         if (obj.useSeed && ~obj.count)
             rng(obj.seed);
         end
         obj.count = obj.count + 1;
         [m,n] = size(u1);
         % Uses default rng seed
         y = rand(m,n) + u1;
       end
      
      function setupImpl(obj)
          obj.count = 0;
      end
      function resetImpl(obj)
          obj.count = 0;
      end
       
       function flag = supportsMultipleInstanceImpl(obj)
         flag = obj.useSeed;
       end
   end
end

См. также

|