symbolic array, zero-based elements into another array

1 次查看(过去 30 天)
if I have the following matrix:
syms x11 x21 x31 x41
a = [ 1*x11 2*x21 3*x31 3*x41]
b = [ 1*x11 2*x21 3*x41]
I want to generate a array which is c:
c = [1*x11 2*x21 0 3*x41]
is easy to do this however does not touch time with sym then forgot.
Thanks in advance.

采纳的回答

Walter Roberson
Walter Roberson 2011-11-9
I do not understand your line about "does not touch time with sym then forgot".
c = a;
c(a == sum(a) - sum(b)) = 0;
You might perhaps want to describe the variable possibilities in more detail if the above is not the answer.

更多回答(2 个)

Andrei Bobrov
Andrei Bobrov 2011-11-9
syms x11 x21 x31 x41
a = [ 1*x11 2*x21 3*x31 3*x41]
b = [ 1*x11 2*x21 3*x41]
c = a.*ismember(a,b)

Artur M. G. Lourenço
Thank you for all

Community Treasure Hunt

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

Start Hunting!

Translated by