how to simplify a symmatrix expression

Three symmatrix type variables: Cn, MW0 and MDW0. I apply the command "simplify(Cn*(MW0+ MDW0) - Cn*MW0)" and I hope it output " Cn * MDW0". However, I only got an error "Incorrect number or types of inputs or outputs for function 'simplify' ". How to solve this issue? The following code block could reproduce this error. Thanks a lot.
syms MW0 [3 3] matrix
syms MDW0 [3 3] matrix
syms Cn [3 3] matrix
detlaC_1 = BiasCdiff1 - Cdiff1
sipReC_1 = simplify(BiasCdiff1 - Cdiff1) % the line throw out error

Respuestas (1)

syms MW0 [3 3] matrix
syms MDW0 [3 3] matrix
syms Cn [3 3] matrix
expression = Cn*(MW0+ MDW0) - Cn*MW0
expression = 
class(expression)
ans = 'symmatrix'
So the expression returns a symmatrix not a sym and not a symfun
methods(expression)
Methods for class symmatrix: adjoint csc display horzcat kron log mtimes power sin symmatrix2sym uminus cat ctranspose double inv latex minus ne pretty size tan uplus conj det eq isempty ldivide mldivide norm rdivide subs times vertcat cos diff exp isequal length mpower numel rhs sym trace vpa cot disp gradient isequaln lhs mrdivide plus sec symmatrix transpose Static methods: empty
Notice that simplify() is not one of the listed methods. Which is to say, that simplify() is not defined for expressions involving symmatrix.

Categorías

Más información sobre Symbolic Math Toolbox en Centro de ayuda y File Exchange.

Productos

Versión

R2022b

Preguntada:

el 1 de Oct. de 2022

Respondida:

el 1 de Oct. de 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by