reduce a complete vector



I've
A:matrix([cos(tB)*(cos(tC)*SIN(tD)+sin(tC)*cos(tD))],
[r*sin(tB)*cos(tC)*(cos(tC)*cos(tD)-sin(tC)*sin(tD))
+sin(tB)*(-r*sin(tC)-dA)*(cos(tC)*sin(tD)+sin(tC)*COS(tD))]);

and

B:matrix([cos(tB)*sin(tD + tC)],[r*sin(tB)*cos(tD+2*tC) -
dA*sin(tB)*sin(tD+tC)]);


The vector A is result from transformation matrices, but I need  the the
solution in a simpler expression, i.e. B. I want to reduce from A to B.
When I apply a command sequence like:
trigreduce(factorout(ratexpand(trigexpand(A[2][1]),sin,cos));
it works  and
ratsimp(trigreduce(A[1][1]));
it also works,
but I need to apply the one sequence to the complete vector, something
like
trigreduce(factorout(ratexpand(trigexpand(A),sin,cos));
or
ratsimp(trigreduce(A));
it does not work... :(
Is it possible or I must apply different command sequences to every term
on the vector A?