why is this code not giving the output?

1 次查看(过去 30 天)
bsd
bsd 2011-10-26
Hai,
I have typed this code;
A=@(x)[cos(x),-sin(x),0;sin(x),cos(x),0;0,0,1]; B=@(x)(A*[10;20;30])
After the above step, matrix B is not displayed as a function of x. Why is it so? Are the two matrices getting multiplied or not?
I need the resultant matrix as a function of x, because I need to do integration for each term in the resultant matrix.
Here the matrix [10;20;30] need not be so, they can be any constant values.
Looking for your reply.
BSD

回答(1 个)

Fangjun Jiang
Fangjun Jiang 2011-10-26
A is an anonymous function. You need to modify your B.
A=@(x)[cos(x),-sin(x),0;sin(x),cos(x),0;0,0,1];
A(pi/2)
B=@(x)(A(x)*[10;20;30]);
B(pi/2)

类别

Help CenterFile Exchange 中查找有关 Numeric Types 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by