Main Content

mustBeNegative

Validate that value is negative

Description

example

mustBeNegative(value) throws an error if value is not negative. A value is negative if it is less than zero. This function does not return a value.

mustBeNegative calls the following function to determine if the input is negative:

Class support: All numeric classes, logical, and MATLAB® classes that overload the functions called by mustBeNegative.

This function ignores input arguments that are empty values. Therefore, no error is thrown when the property or function argument value is empty.

Examples

collapse all

Use mustBeNegative to validate that the input contains only negative values.

The rand function creates uniformly distributed random numbers in the interval (0,1). Test the array after the subtraction to validate that all values are negative. If not, mustBeNegative issues an error.

A = rand(1,5) - 0.75;
mustBeNegative(A)
Error using mustBeNegative (line 14)
Value must be negative.

This class restricts the value of Prop1 to negative values.

classdef MyClass
   properties
      Prop1 {mustBeNegative}
   end
end

Create an object and assign a value to Prop1.

obj = MyClass;
obj.Prop1 = rand(1,5) - 0.75;
Error setting property 'Prop1' of class 'MyClass':
Value must be negative.

When you assign a value to the property, MATLAB calls mustBeNegative with the value being assigned to the property. mustBeNegative issues an error if the any of the elements in the array are not negative.

This function declares two input arguments. Input lower must be negative and input upper must not be negative.

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

Calling the function with a value for lower that does not meet the requirements of mustBeNegative results an error.

mbNegative(0,4)
Error using mbNegative
Invalid input argument at position 1. Value must be negative.

Input Arguments

collapse all

Value to validate, specified as a scalar or an array of one of the following:

Tips

  • mustBeNegative is designed to be used for property and function argument validation.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Introduced in R2017a