why is this code not giving the output?

3 次查看(过去 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 中查找有关 Resizing and Reshaping Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by