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++ с помощью MATLAB ® Coder™

.
Представлен в R2017a