Судя по всему, я не могу сгенерировать сигнал размером [3x3x3]:
function Test_SF_02(block)
% Level-2 MATLAB file S-Function.
setup(block);
function setup(block)
% Register number of ports and parameters
block.NumInputPorts = 0;
block.NumOutputPorts = 1;
block.NumDialogPrms = 0;
% Setup functional port properties to dynamically inherited
block.SetPreCompOutPortInfoToDynamic;
% Register the properties of the output port
block.OutputPort(1).SamplingMode = 'Sample';
%block.OutputPort(1).DimensionsMode = 'Variable';
block.OutputPort(1).DimensionsMode = 'Fixed';
block.OutputPort(1).Dimensions = [3 3 3];
% Register sample times
% [-1, 0] : Inherited sample time
block.SampleTimes = [-1 0];
% Register methods called at run-time
block.RegBlockMethod('Outputs', @Outputs);
function Outputs(block)
block.OutputPort(1).Data = zeros(3,3,3);
ошибка возникает при назначении block.OutputPort(1).Dimensions
и говорит
Невозможно установить размеры выходного порта 1 'Test_01/Level-2 MATLAB S-Function' на [3x3x3]. Этот блок не настроен для обработки сигналов размерностей больше, чем 2 измерения.
Почему? Я видел блоки, генерирующие кадры изображения, т.е. MxNx3
матрицы.
ОБНОВЛЕНИЕ
Это не дублирующий вопрос.