

We have already seen compose(), which belongs on this list. There are a number of functions that we can use to perform basic high school algebra that might be tedious or error prone to do by hand. You can see how Matlab will order the variables in an expression with the findsym() function. If this is not given explicitly, Matlab chooses the variable closest in alphabetical order to x, (ties broken in favor of the end of the alphabet). Many operations on symbolic expressions are ambiguous unless the independent variable is specified. subs(f,) % substitute 3 for X, 10 for Y in f subs(f,X,lambda-Y) % substitute (lambda - Y) for X in f We can prevent this by substituting sym(3) and sym(10) instead. Once all of the symbolic variables are numeric, the result is numerically evaluated. subs(f,X,3) % substitute 3 for X in f Error using => sym.sym>notimplemented at 2621įunction 'subsindex' is not implemented for MuPAD symbolic objects.Įrror in => sym.sym>sym.subsindex at 1359 The subs() function can be used to substitute one value for another, including a numeric value for symbolic one. We will make use of these in the sections to come. Symbolic matrices are created in much the same way numeric matrices are.
#Matlab symbolic toolbox matrices code#
You can convert an expression to C code as follows ccode(g) You can convert an expression to latex as follows latex(g) Exponents, for example are printed on the line above, trying to mimic how you might write them by hand pretty(g) The pretty() function tries to display a symbolic expression in a prettier way. H = compose(f,g) % functional composition: f(g(X)) f =įunctions of multiple variables can also be created.

Note that these too are symbolic expressions, not function handles. We can build up more complicated symbolic expressions by defining functions of these variables. To convert a constant symbolic expression to a regular Matlab double value, use the double() function. Q = sym(22/14 + 18/402) % add two fractions exactly r = W = r*2-3/t % notice that r is not evaluated T = sym(2/3) % Need to use sym here, not syms syms A B lambda X Y Z aĬonstant symbols can be defined too, which are not evaluated numerically. Symbolic variables are treated differently than regular variables in Matlab and must be created using the sym() or syms() functions. Online Documentation Working with Symbolic Variables For more information, see the online documentation. There is more to this package than we can describe here.
