-----maxima-bounces at math.utexas.edu wrote: -----
>Hi,
>
>I have the antisymmetric matrix
>
>M:matrix([0,(u[1,2]-u[2,1])/2,(u[1,3]-u[3,1])/2],[(u[2,1]-u[1,2])/2,0,(u[2
>,3]-u[3,2])/2],[(u[3,1]-u[1,3])/2,(u[3,2]-u[2,3])/2,0])
>
>I would like Maxima to reckon that, since the vector (Omg_1, Omg_2, Omg_3)
>(how do I input a vector in Maxima?) has components
>
>
>Omg_1 = u[3,2]-u[2,3]
>Omg_2 = u[1,3]-u[3,1]
>Omg_3 = u[2,1]-u[1,2]
>
>then M has the expression
>
>M:matrix([0,-Omg[3]/2,Omg[2]/2],[-Omg[3]/2,0,-Omg[1]/2],[-Omg[2]/2,Omg[3]/
>2,0])
>
>Is this possible? Thanks,
Try something like this:
(%i10)
M:matrix([0,(u[1,2]-u[2,1])/2,(u[1,3]-u[3,1])/2],[(u[2,1]-u[1,2])/2,0,(u[2,3]-u[3,2])/2],[(u[3,1]
-u[1,3])/2,(u[3,2]-u[2,3])/2,0])$
(%i11) M : ratsubst(Omg_1, u[3,2]-u[2,3], M)$
(%i12) M : ratsubst(Omg_2, u[1,3]-u[3,1], M)$
(%i13) M : ratsubst(Omg_3, u[2,1]-u[1,2], M);
(%o13)
matrix([0,-Omg_3/2,Omg_2/2],[Omg_3/2,0,-Omg_1/2],[-Omg_2/2,Omg_1/2,0])
To read the user documentation for ratsubst, enter "? ratsubst" on a
command
line.
There is no vector object in Maxima. Either you need to represent a vector
as
a list or as a Matrix. Examples:
(%i14) vec : matrix([1],[2],[3]);
(%o14) matrix([1],[2],[3])
(%i15) M . vec;
(%o15) matrix([(3*Omg_2)/2-Omg_3],[Omg_3/2-(3*Omg_1)/2],[Omg_1-Omg_2/2])
(%i16) u : [1,2,3];
(%o16) [1,2,3]
(%i17) u . M;
(%o17) matrix([Omg_3-(3*Omg_2)/2,(3*Omg_1)/2-Omg_3/2,Omg_2/2-Omg_1])
I think we've talked about adding a vector object to
Maxima, but I don't know if anybody is working on it.
I hope this helps; let us know if you have additional questions
or if something I said isn't clear.
Barton