The following is a simple example that illustrated the use of TomSym:
>> toms y
>> toms 3x1 x
>> toms 2x3 A
>> f = (A*x).^(2*y)
f = tomSym(2x1):
(A*x).^(2*y)
>> derivative(f,A)
ans = tomSym(2x6):
(2*y)*setdiag((A*x).^(2*y-1))*kron(x',eye(2))
In the above example, the 2x1 symbol f is differentiated with respect to the 2x3 symbol A. The result is a 2x6 matrix, representing d(vec(f))/d(vec(A)).
The displayed text is not necessarily identical to the m-code that will be generated from an expression. For example, the identity matrix is generated using speye in m-code, but displayed as eye (Derivatives tend to involve many sparse matrices, which Matlab handles efficiently). The mcodestr command converts a tomSym object to a matlab code string.