exponenta event banner

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