mustBeReal

Подтвердите то значение, действительно

Синтаксис

Описание

пример

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

mustBeReal вызывает следующую функцию, чтобы определить, действителен ли вход:

Поддержка класса: Все числовые классы, logical, и MATLAB® классы та перегрузка isreal.

Эта функция игнорирует входные параметры, которые являются пустыми значениями. Поэтому никакая ошибка не выдана, когда значение аргумента свойства или аргумента функции пусто.

Примеры

свернуть все

Используйте mustBeReal чтобы подтвердить это, вход является вещественным числом.

Подтвердите это, вычисление приводит к вещественным числам.

x = -2:2;
z = x.^exp(-x.^2);
mustBeReal(z)
Error using mustBeReal (line 13)
values must be real.

Значение z является комплексным.

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

classdef MyClass
   properties
      Prop1 {mustBeReal}
   end
end

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

x = -2:0.1:2;
obj = MyClass;
obj.Prop1 = x.^exp(-x.^2);
Error setting 'Prop1' property of 'MyClass' class:
values must be real.

Когда вы присваиваете значение свойству, MATLAB вызывает mustBeReal со значением, присваиваемым свойству. mustBeReal выдает ошибку, потому что значение присвоило Prop1 является комплексным.

Эта функция ограничивает входной параметр скаляром, вещественным значением.

function r = mbReal(z)
    arguments
        z (1,1) {mustBeReal}
    end
    r = randi(9,z);
end

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

x = -1;
z = x.^exp(-x.^2);
r = mbReal(z);
Error using mbReal
 r = mbReal(z);
            ↑
Invalid input argument at position 1. Value must be real.

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

свернуть все

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

  • logical, char, или числовой класс

  • Классы MATLAB та реализация isreal

Другие типы данных вызывают ошибку.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
Поддержка комплексного числа: Да

Советы

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

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

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

Введенный в R2017a