mustBeNonnegative

Проверьте, что значение неотрицательно

Синтаксис

Описание

пример

mustBeNonnegative(value) выдает ошибку, если value отрицательно. Эта функция не возвращает значение.

mustBeNonnegative вызывает эти функции, чтобы определить, не отрицателен ли вход:

Поддержка классов: Все числовые классы, logical, и MATLAB® классы, которые перегружают функции, вызываемые mustBeNonnegative.

Примеры

свернуть все

Использование mustBeNonnegative чтобы проверить, что вход содержит только неотрицательные значения.

randn функция создает нормально распределенные случайные числа.

A = randn(1,5);

Проверьте, что случайные числа являются неотрицательными.

mustBeNonnegative(A)
Error using mustBeNonnegative (line 14)
Value must be nonnegative.

Этот класс ограничивает значение Prop1 к неотрицательным значениям.

classdef MyClass
   properties
      Prop1 {mustBeNonnegative}
   end
end

Создайте объект и присвойте значение его свойству.

obj = MyClass;
obj.Prop1 = -10;
Error using mustBeNonnegative (line 14)
Value must be nonnegative.

Когда вы присваиваете значение свойству, MATLAB вызывает mustBeNonnegative со значением, назначенным свойству. mustBeNonnegative выдает ошибку, поскольку значение -10 отрицательно.

Эта функция объявляет два входных параметров. Входные lower не должен быть положительным и входным upper должен быть положительным.

function r = mbNonnegative(lower,upper)
    arguments
        lower {mustBeNonpositive}
        upper {mustBeNonnegative}
    end
    x = lower*pi:upper*pi;
    r = sin(x);
end

Вызов функции со значением для upper который не соответствует требованиям mustBeNonnegative приводит к ошибке.

r = mbNonnegative(-12,-4);
Error using mbNonnegative
Invalid input argument at position 2. Value must be nonnegative.

Входные параметры

свернуть все

Значение для проверки, заданное как скаляр или массив из одного из следующих:

Пример: value = 1 не генерирует ошибку.

Совет

  • mustBeNonnegative предназначен для использования в валидацию аргументов свойства и функции.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2017a