Константы и Matlab Coder - PullRequest
       42

Константы и Matlab Coder

4 голосов
/ 27 февраля 2012

Некоторые функции требуют, чтобы ввод был постоянным при запуске в Matlab Coder. Я хочу найти способ объявить ввод как константу до его ввода в качестве примера для проблемной ситуации:

  function foo = subsubfunction(x,y)            
      [B,A]=butter(1,x/y);

Это вернет ошибку «Все входы должны быть постоянными»

Как мне объявить x и y как константы, чтобы butter () стал счастливым? Я перепробовал много решений и, к сожалению, не нашел ничего действительно удовлетворительного. Если бы можно было использовать операцию командной строки coder.newtype('constant',x), это бы все упростило.

1 Ответ

2 голосов
/ 14 января 2014

Используйте coder.const в функции, чтобы функция butter знала, что вы передаете постоянный ввод.Документация доступна здесь .

 function foo = subsubfunction(x,y)            
  [B,A]=coder.const(@butter,1,x/y);

Примечание : Вы не можете изменить значение x/y в сгенерированном коде.Вы можете индивидуально изменить x и y, но не соотношение двух чисел.

...