MATLAB: Does the SUBS function in the Symbolic Toolbox give an output of type DOUBLE

doublesubssymsymbolicSymbolic Math Toolbox

When I execute the SUBS function on a symbolic object that contains no variables, I expect the output to be identical to the input. However, the SUBS function converts it to a double-precision number:
syms A x y
A = sym(1);
class(A)
A = subs(A,x,y);
class(A)

Best Answer

This is a designed feature of the SUBS function. To ensure that your output remains a symbolic object, use the SYM function:
syms A x y
A = sym(1);
class(A)
A = sym(subs(A,x,y));
class(A)