Viktor,
Thanks for comment! My question was not about solve itself but if there is a
general way to solve tensorial equations. I mean I can solve some of them
which I found in my work. But algorithm to implement it with maxima is very
hard. It is much easier to solve by hand writing and may be using maxima for
the little help.
regards,
V
PS,BTW, I'm in UCLA, get position assoc res for 1 year.
>
> Well, solve() can kind of deal with these equations so long as they're
> linear in the unknown tensor, and moreover, so long as the unknown tensor
> only appears with the same combination of indices.
>
> I say "kind of" because all solve() does is that it puts the tensor
> expression that is to be inverted into the denominator. It doesn't actually
> invert it.
>
> And if the same tensor appears with different index combinations, you're
> out of luck, because you need to give solve() the explicit combination of
> indexes in the tensor that you wish to solve for.
>
> So I'd certainly not recommend using solve() with itensor, even though it
> kind of works, in some very simple cases.
>
>
> Viktor
>
>
>
>
>
> -----Original Message-----
> From: maxima-bounces at math.utexas.edu
> [mailto:maxima-bounces at math.utexas.edu] On Behalf Of Valery Pipin
> Sent: Thursday, September 02, 2010 7:33 AM
> To: maxima at math.utexas.edu
> Subject: Re: [Maxima] How to solve equation using itensor
>
> I'm not sure if there is a general algorithm to solve, the "real" tensor
> equation, e.g., like
> (g([i,n],[])+S([])*levi_civita([i,m,n],[])*k([],[m]))*u([],[n])=rhs([i],[])
> to solve about vector u, where g is metric S - arbitrary scalar and k -
> arbitrary vector. If g is an Euclidean like metric (Kronneker symbol) then
> the
> inverse operator will be
> (g([i,n],[])-S([])*levi_civita([i,m,n],[])*k([],[m]))/(1+S([])^2)
> Situation become already more complicated if we multiple the orginal
> operator look like this
> (S([])*delta([i,n],[])+O([],[j])*k([j],[])*levi_civita([i,m,n],[])*k([],[m]
> ) )
> The inverse operator will look similar as before but with complicatier
> denominator. Such things appears in analytical work on the
> magnetohydrodinamical turbulence.
>
> If somebody on the list aware about the algorithms to solve tensorial
> equation, it would be intersting to hear about
>
> Thanks
> Valery
>
> > Although solve() is not really designed to deal with itensor expressions,
> > it can be used, so long as you avoid reusing the same dummy index in your
> > equation. I.e., try
> >
> > solve(X([],[i])*F([i,j],[])*X([],[j]) + a*
> > X([],[u])*F([u,v],[])*Y([],[v]),a );
> >
> > (Note also that I corrected the position of the index in the second
> > occurrence of X in the numerator and in Y in the denominator; as you
> > originally wrote it, the same index occurred twice in a covariant
>
> position,
>
> > which is not correct.)
> >
> >
> > Viktor
> >
> >
> >
> >
> > -----Original Message-----
> > From: maxima-bounces at math.utexas.edu
> > [mailto:maxima-bounces at math.utexas.edu] On Behalf Of Niitsuma Hirotaka
> > Sent: Thursday, September 02, 2010 12:50 AM
> > To: maxima at math.utexas.edu
> > Subject: How to solve equation using itensor
> >
> > solve(x.F.x+a*x.F.y,a)
> > /*=> a=x.F.x/x.F.y*/
> >
> > can write as the following using itensor
> >
> > solve(X([],[i])*F([i,j],[])*X([j],[]) + a*
> > X([],[i])*F([i,j],[])*Y([j],[]),a )
> > /*=> a=X([j], [])/ Y([j], [])*/
> >
> > But, result is not same.
> >
> > How to solve equations which use itensor?
> > _______________________________________________
> > Maxima mailing list
> > Maxima at math.utexas.edu
> > http://www.math.utexas.edu/mailman/listinfo/maxima
> >
> > _______________________________________________
> > Maxima mailing list
> > Maxima at math.utexas.edu
> > http://www.math.utexas.edu/mailman/listinfo/maxima
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima