symFunType

Определите функциональный тип символьного объекта

Синтаксис

Описание

пример

s = symFunType(symObj) возвращает функциональный тип символьного объекта.

  • Если symObj символьная функция или символьное выражение, затем symFunType возвращает самое верхнее имя функции или оператор symObj. Например, syms x; symFunType(2*sin(x)) возвращает "times".

  • Если symObj не символьная функция или символьное выражение, затем symFunType возвращает тот же выходной параметр как symType. Например, symFunType(sym('2')) возвращает "integer".

Примеры

свернуть все

Создайте массив символьных функций и выражений.

syms f(x)
expr = [f(x) sin(x) exp(x) int(f(x)) diff(f(x))]
expr = 

(f(x)sin(x)exf(x)dxx f(x))[f (x), sin (x), exp (x), int (f (x), x), diff (f (x), x)]

Определите функциональный тип каждого элемента массива.

s = symFunType(expr)
s = 1x5 string
    "f"    "sin"    "exp"    "int"    "diff"

Создайте два символьных выражения. Определите самые важные арифметические операторы выражений.

syms x
expr1 = x/(x^2+x+2);
expr2 = x + 1/(x^2+x+2);
s1 = symFunType(expr1)
s1 = 
"times"
s2 = symFunType(expr2)
s2 = 
"plus"

Чтобы возвратить условия, разделенные операторами, используйте children.

terms1 = children(expr1)
terms1 = 

(x1x2+x+2)[x, 1 / (x^2 + x + 2)]

terms2 = children(expr2)
terms2 = 

(x1x2+x+2)[x, 1 / (x^2 + x + 2)]

Создайте массив символьных уравнений и неравенств.

syms x y
eqns = [x+y==2, x<=5, y>3]
eqns = (x+y=2x53<y)[x + y == 2, x <= 5, 3 <y]

Определите самый верхний оператор сравнения в каждом элементе массива.

s = symFunType(eqns)
s = 1x3 string
    "eq"    "le"    "lt"

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

свернуть все

Символьные объекты в виде символьных выражений, символьные функции, символьные переменные, символьные числа или символьные модули.

Выходные аргументы

свернуть все

Символьные функциональные типы, возвращенные как массив строк. Если symObj символьная функция или символьное выражение, затем symFunType возвращает самое верхнее имя функции или оператор symObj. Эта таблица показывает выходные значения для различных символьных объектов.

Символьные функциональные типыВозвращенный выходной параметрВведите пример
символьные математические функции"sin"exp, "fourier", и так далее — имя самой верхней символьной математической функции в символьном выраженииsyms f(x); symFunType([sin(x), exp(x), fourier(x)])
неприсвоенные символьные функции

"f"G, и так далее — отменил присвоение символьной функции

syms f(x) g(x); symFunType([f, g(x+2)])
арифметические операторы
  • "plus" — оператор сложения + и оператор вычитания -

  • "times" — оператор умножения * и оператор деления /

  • "power" — степень или оператор возведения в степень ^ и оператор квадратного корня sqrt

  • syms x; symFunType(x^2-x)

  • syms x; symFunType(2*x^2)

  • syms x; symFunType([x^2 sqrt(x)])

уравнения и неравенства
  • "eq" — оператор равенства ==

  • "ne" — оператор неравенства ~=

  • "lt" — меньше оператор < или больше - чем оператор >

  • "le" — меньше, чем или равный оператору <= или больше, чем или равный оператору >=

  • syms x y; symFunType(x==y)

  • syms x y; symFunType(x~=y)

  • syms x y; symFunType(x<y)

  • syms x y; symFunType(x>=y)

логические операторы
  • "or" — логическая операция ИЛИ |

  • "and" — логическая операция И &

  • "not" — логический НЕ оператор ~

  • "xor" — логический оператор исключающего ИЛИ xor

  • syms x y; symFunType(x|y)

  • syms x y; symFunType(x&y)

  • syms x; symFunType(~x)

  • syms x y; symFunType(xor(x,y))

числа
  • "integer" — целое число

  • "rational" — рациональное число

  • "vpareal" — переменная точность вещественное число с плавающей точкой

  • "complex" — комплексное число

  • symFunType(sym('-1'))

  • symFunType(sym('1/2'))

  • symFunType([sym('1.5') vpa('3/2')])

  • symFunType(sym('1+2i'))

константы

"constant"

symFunType(sym([pi catalan]))
переменные

"variable"

symFunType(sym(x))
модули

"units"

symFunType(symunit('m'))
неподдерживаемые символьные типы"unsupported" 

Смотрите также

| | | | |

Введенный в R2019a

Для просмотра документации необходимо авторизоваться на сайте