findSymType

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

Синтаксис

X = findSymType(symObj,type)
X = findSymType(symObj,funType,vars)

Описание

пример

X = findSymType(symObj,type) возвращает вектор символьных подобъектов типа type от символьного объекта symObj. Вход type должен быть чувствительным к регистру скаляром строки или вектором символов, и это может включать логическое выражение.

  • Если symObj не содержит символьный подобъект типа type, то findSymType возвращает пустой скаляр.

  • Если symObj содержит несколько подвыражений типа type, то findSymType возвращает самое большое подвыражение соответствия.

пример

X = findSymType(symObj,funType,vars) возвращает вектор неприсвоенных символьных функций, которые зависят от переменных vars из символьного входа symObj.

Можно установить функциональный тип funType на 'symfunOf' или 'symfunDependingOn'. Например, syms f(x); findSymType(f,'symfunOf',x) возвращает f(x).

Примеры

свернуть все

Найдите и возвратите определенные символьные числа и константы в символьном выражении.

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

expr = sym('1/2')*pi + vpa(pi)
expr = 4.7124

Найдите символьные числа типа 'integer'.

X = findSymType(expr,'integer')
X = (12)

Найдите символьные числа типа 'integer | real'.

X = findSymType(expr,'integer | real')
X = (0.50003.1416)

Найдите символьные числа типа 'vpareal'.

X = findSymType(expr,'vpareal')
X = 3.1416

Найдите символьные числа типа 'complex'.

X = findSymType(expr,'complex')
 
X =
 
Empty sym: 1-by-0
 

Функция findSymType возвращает пустой скаляр начиная с выражения, expr не содержит комплексных чисел.

Теперь найдите символьную константу типа 'constant'.

X = findSymType(expr,'constant')
X = 4.7124

Когда существует несколько подвыражений типа 'constant', findSymType возвращает самое большое подвыражение соответствия.

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

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

syms y(t) k
eq = diff(y) + k*y == sin(y)
eq(t) = 

t y(t)+ky(t)=sin(y(t))

Найдите символьные переменные типа 'variable' в уравнении.

X = findSymType(eq,'variable')
X = (kt)

Найдите неприсвоенную символьную функцию типа 'symfun' в уравнении.

X = findSymType(eq,'symfun')
X = y(t)

Найдите символьную математическую функцию типа 'diff' в уравнении.

X = findSymType(eq,'diff')
X = 

t y(t)

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

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

syms n f(x) g(x) y(x,t)
expr = x + f(x^n) + g(x)+ y(x,t)
expr = x+f(xn)+g(x)+y(x,t)

Ищите неприсвоенные символьные функции типа 'symfun' в выражении.

X = findSymType(expr,'symfun')
X = (f(xn)g(x)y(x,t))

Ищите символьные функции, которые зависят от точной последовательности переменных [x t] с помощью 'symfunOf'.

X = findSymType(expr,'symfunOf',[x t])
X = y(x,t)

Ищите символьные функции, которые имеют зависимость от переменной x использование 'symfunDependingOn'.

X = findSymType(expr,'symfunDependingOn',x)
X = (g(x)y(x,t))

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

свернуть все

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

Символьные типы, заданные как чувствительная к регистру скалярная строка или вектор символов. Вход type может содержать логическое выражение. Опции значения следуют.

Символьная категория типаПредставьте значения в виде строки
числа
  • Целое число целые числа

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

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

  • комплекс комплексные числа

  • действительный вещественные числа, включая 'integer', 'rational' и 'vpareal'

  • 'number' — числа, включая 'integer', 'rational', 'vpareal', 'complex' и 'real'

константы'constant' — символьные константы, включая 'number'
символьные математические функции'vpa', 'sin', 'exp', и так далее — символьные математические функции в символьных выражениях
неприсвоенные символьные функции
  • 'F', 'g', и так далее — имя функции неприсвоенной символьной функции

  • 'symfun' — неприсвоенные символьные функции

арифметические операторы
  • плюс оператор сложения + и оператор вычитания -

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

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

переменные'variable' — символьные переменные
модулиМодули символьные модули
выраженияВыражение символьные выражения, включая все предыдущие символьные типы
логические выражения
  • 'or' — логическая операция ИЛИ |

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

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

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

  • 'logicalexpression' — логические выражения, включая 'or', 'and', 'not' и 'xor'

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

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

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

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

  • 'equation' — символьные уравнения и неравенства, включая 'eq', 'ne', 'lt' и 'le'

неподдерживаемые символьные типы

'unsupported' — неподдерживаемые символьные типы

Если symObj содержит несколько подвыражений типа type, то findSymType возвращает самое большое подвыражение соответствия (самый верхний узел соответствия в древовидной структуре данных).

Функциональный тип, заданный как 'symfunOf' или 'symfunDependingOn'.

  • 'symfunOf' находит и возвращает неприсвоенные символьные функции, которые зависят от точной последовательности переменных, заданных массивом vars. Например, syms f(x,y); findSymType(f,'symfunOf',[x y]) возвращает f(x,y).

  • 'symfunDependingOn' находит и возвращает неприсвоенные символьные функции, которые имеют зависимость от переменных, заданных массивом vars. Например, syms f(x,y); findSymType(f,'symfunDependingOn',x) возвращает f(x,y).

Входные переменные, заданные как символьные переменные или символьный массив.

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

| | | | | |

Введенный в R2019a