symType
Determine type of symbolic object
Syntax
Description
Examples
Symbolic Number
Create a symbolic number and determine its type.
a = sym('3/9');
s = symType(a)
s = "rational"
Now construct a symbolic array by including symbolic numbers in the array elements. Determine the symbolic type of each array element.
B = [-5, a, vpa(a), 1i, pi]; s = symType(B)
s = 1x5 string
"integer" "rational" "vpareal" "complex" "constant"
Symbolic Function or Expression
Create a symbolic function f(x)
using syms
.
syms f(x)
Determine the type of the function. Because f(x)
is an unassigned symbolic function, it has the symbolic type "symfun"
.
s = symType(f)
s = "symfun"
Assigning a mathematical expression to f(x)
changes its symbolic type.
f(x) = x^2; s = symType(f)
s = "expression"
Now check the symbolic type of f(x) = x
and its derivative.
f(x) = x; s = symType(f)
s = "variable"
s = symType(diff(f))
s = "integer"
Inequalities and Solutions
Determine the type of various symbolic objects when solving for inequalities.
Create a quadratic function.
syms y(x)
y(x) = 100 - 5*x^2
y(x) =
Set two inequalities to the quadratic function. Check the symbolic type of each inequality.
eq1 = y(x) > 10; eq2 = x > 2; s = symType([eq1 eq2])
s = 1x2 string
"equation" "equation"
Solve the inequalities using solve
. Return the solutions by setting 'ReturnConditions'
to true
.
eqSol = solve([eq1 eq2], 'ReturnConditions', true);
sols = eqSol.conditions
sols =
Determine the symbolic type of the solutions.
s = symType(sols)
s = "logicalexpression"
Input Arguments
symObj
— Symbolic objects
symbolic numbers | symbolic variables | symbolic expressions | symbolic functions | symbolic units
Symbolic objects, specified as symbolic numbers, symbolic variables, symbolic expressions, symbolic functions, or symbolic units.
Output Arguments
s
— Symbolic types
string array
Symbolic types, returned as a string array. This table shows output values for various symbolic objects.
Output | Description | Input Example |
---|---|---|
"integer" | symbolic integer number | symType(sym('-1')) |
"rational" | symbolic rational number | symType(sym('1/2')) |
"vpareal" | symbolic variable-precision floating-point real number | symType([sym('1.5') vpa('3/2')]) |
"complex" | symbolic complex number | symType(sym('1+2i')) |
"constant" | symbolic mathematical constant | symType(sym([pi catalan])) |
"variable" | symbolic variable | syms x; symType(x) |
"symfun" | unassigned symbolic function | syms f(x); symType(f) |
"expression" | symbolic expression | syms x; symType(sqrt(x)) |
"equation" | symbolic equation and inequality | syms x; symType(x>=0) |
"unit" | symbolic unit | symType(symunit('meter')) |
"logicalexpression" | symbolic logical expression | syms x y; symType(x|y) |
"logicalconstant" | symbolic logical constant | symType([symtrue symfalse]) |
"unsupported" | symbolic object not supported by symType |
Version History
Introduced in R2019a
See Also
sym
| syms
| symfun
| isSymType
| symFunType
| hasSymType
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)