`x`

, so far known to exist only in Mathematica. This is the Symbolic Math Toolbox, and its uses are numerous.
Although I am sure it requires a lot of development, specially compatibility of integrating with other data types that Matlab supports, for starters, it seems like a really nice feature. The example where I used it is like this. Consider a simple 3×3 symmetric matrix, whose non-diagonal corners are equal, and unknown. You want to obtain a value for this, such that the determinant of the matrix goes to 0. Manually, yes, its easy. Its a simple quadratic equation, and it can be solved for. However, now consider a 20×20 matrix 🙂 Its terrible to compute its determinant, and then there is still an equation to solve. What symbolic math toolbox allows you to do is, define a variable – say *z*. In my case it would then be

syms z

Rxx = [1, 0.9, 0.8, ... z; ...; ...; z, ..., 0.8, 0.9, 1];

solve(det(Rxx));

and you have the possible solutions for this variable `z`

. Note the usage of the function `solve()`

which is typically used to solve for variable given a polynomial equation.

It also does all the standard integration, differentiation, and even Taylor’s series expansion 🙂 and has a lot of applications. I want to now check it out for the basic transforms – Fourier, Laplace, Z, etc. Best to refer to the Matlab documentation on the toolbox for more information and examples on this. I am really loving this combination of the power of “indefinite” math along with powerful numeric functions.

Armand TamzarianWhy not just use Mathematica? It matches Matlab in numerics (probably uses the same libraries actually) PLUS has symbolics.

Makarand TapaswiPost authorYes, but somehow engineers seem to be using Matlab more. Also I am not aware whether there are equivalents for the numerous toolboxes that are found in Matlab, and then there is Simulink 🙂