Hi Matt,

Actually a couple of years ago Alan Bromborsky made nontrivial
progress at developing sympy tensor analysis.  I talked to him a few
times about his development and tried out some things myself. Alan is
the developer of the GA module and made quite good progress. There
were some needs for indicial tensors which turned out to be a bit ugly
to get working well, but he has quite a lot done on this. So he is a
very good person to have involved if he has time now adays. I am also
aware of the other tensor branch of activity, also a couple of years
ago I think but I have not used that much at all.  I would very much
like to have all the basic tensor analysis stuff implemented in sympy.
 I am always available to listen and to help (to the extent that my
meager skills may be of use).

Comer

On Tue, Mar 27, 2012 at 2:11 PM, Matthew Rocklin <mrock...@gmail.com> wrote:
> There has been some talk about creating a more dedicated tensor module.
> Perhaps this is the sort of thing that would be implemented there. Stefan
> Krastanov and I both seem interested in this topic. Stefan was thinking
> about turning this into a GSoC project. If this doesn't happen I'll probably
> work on it sometime in the next year.
>
> https://groups.google.com/d/topic/sympy/yLHpxsguI0M/discussion
> https://groups.google.com/d/topic/sympy/3qhNCiojEsw/discussion
>
>
> On Tue, Mar 27, 2012 at 12:57 PM, Tom Bachmann <e_mc...@web.de> wrote:
>>
>> Oh yes, I wasn't suggesting it is not a good thing, just that maybe you
>> might find good stuff there that is useful to you. For example I would be
>> surprised if there wasn't an implementation of the levi-civita symbol
>> somewhere around there.
>>
>>
>> On 27.03.2012 18:45, Comer Duncan wrote:
>>>
>>> Hi Tom,
>>>
>>> Thanks for the reply. I have taken a cursory look at the quantum stuff
>>> and do not think at present that there is much overlap.  My use of
>>> dual is in the context of cartesian coordinate components of the
>>> antisymmetric 2nd rank tensor.  The tensor and its dual really live in
>>> different spaces. In the quantum formalism the states (ket vectors)
>>> live in a vector space while the dual states (bra vectors) are really
>>> functionals, ie they map vectors to the complex numbers.  While
>>> strictly speaking the dual tensor really lives as an element of a
>>> space dual to the space of the tensor, my usage does not exploit that
>>> very much.  My use of dual is in the context of its utility in writing
>>> down Maxwell's equations in two equations, one for the four divergence
>>> of the Maxwell tensor and another for the four divergence of  the dual
>>> of the Maxwell tensor.  It provides an elegant and computationally
>>> useful formulation of Maxwell electrodynamics.  My entire use is to
>>> the practical end of working with Maxwell's equations and studying the
>>> hyperbolicity of the system of PDE.  Having a method which can yield
>>> the dual of  a given symbolic antisymmetric matrix would save time
>>> when such a thing needs to be constructed.  In other words adding the
>>> dual method simply adds to the available set of utilities, which I
>>> think is a good thing.
>>>
>>> Cheers,
>>>
>>> Comer
>>>
>>>
>>>
>>> On Tue, Mar 27, 2012 at 1:12 PM, Tom Bachmann<e_mc...@web.de>  wrote:
>>>>
>>>> I wonder if any of the tensor and/or quantum algebra code would be
>>>> helpful
>>>> to use? (I have never used any of it myself but I would think this sort
>>>> of
>>>> object is fairly common.)
>>>>
>>>>
>>>> On 27.03.2012 18:02, Comer Duncan wrote:
>>>>>
>>>>>
>>>>> I forgot to say something about the dual of a matrix.  In my present
>>>>> context in the ipython notebooks I am using the following definition:
>>>>> Given a 4x4 antisymmetric matrix F (so F_{ab} = - F_{ba}) the dual to
>>>>> F is defined to be
>>>>>
>>>>> \sideset{^{*}}{^{ab}}{\mathbf{F}} =\frac{1}{2}
>>>>> \mathbf{\epsilon}^{abcd} \mathbf{F}_{cd}
>>>>>
>>>>> where  \mathbf{\epsilon}^{abcd} is the Levi-Civita pseudo-tensor,
>>>>> whose value is +1 if abcd is an even permutation of 0123 and -1 if
>>>>> abcd is an odd permutation of 0123 and has the value 0 if two or more
>>>>> of the indices abcd are equal.  The Levi-Civita pseudo-tensor is
>>>>> already implemented in sympy.functions.special.tensor_functions.
>>>>>
>>>>> I think having the dual of an antisymmetric matrix available would be
>>>>> a help for anyone who would need to construct such a beast.
>>>>>
>>>>> I hope this helps explain better what I am wanting to do with the
>>>>> dual.  Note that there is a lot more that can be done with such things
>>>>> and that my implementation is for a cartesian (Minkowski spacetime)
>>>>> coordinate basis.  And I would put the dual in the same place as
>>>>> sympy.functions.special.tensor_functions rather than in the matrices.
>>>>>
>>>>> Comer
>>>>>
>>>>> On Tue, Mar 27, 2012 at 10:30 AM, Matthew Rocklin<mrock...@gmail.com>
>>>>>  wrote:
>>>>>>>
>>>>>>>
>>>>>>> 1. create a new method for testing  the antisymmetry of a matrix: new
>>>>>>> "
>>>>>>> is_anti_symmetric() " method
>>>>>>
>>>>>>
>>>>>>
>>>>>> This sounds good to me.
>>>>>>
>>>>>>>
>>>>>>> 2. create a new  method for calculating the symbolic determinant
>>>>>>> using
>>>>>>> LU
>>>>>>> decomposition: new "det_lu_decomposition() "  method
>>>>>>
>>>>>>
>>>>>>
>>>>>> This also sounds good to me. Is anyone familiar with symbolic methods
>>>>>> to
>>>>>> compute the determinant? There are a couple floating around in
>>>>>> matrices.py.
>>>>>> Comer's LU decomposition method seems to be quite fast for the couple
>>>>>> simple
>>>>>> matrices I've tried. When is one method preferable to another?
>>>>>>
>>>>>>>
>>>>>>> 3. create a new  method for calculating the dual of a square matrix:
>>>>>>> new
>>>>>>> "dual_matrix" method
>>>>>>
>>>>>>
>>>>>>
>>>>>> Can you define dual matrix?
>>>>>>
>>>>>>>
>>>>>>> If this is ok, I would appreciate some guidance on doing this, as I
>>>>>>> have
>>>>>>> not done it before.
>>>>>>
>>>>>>
>>>>>>
>>>>>> This wiki page is an excellent starting point
>>>>>>
>>>>>>
>>>>>> https://github.com/sympy/sympy/wiki/Development-workflow#wiki-workflow-process
>>>>>>
>>>>>> When you get stuck with that I would suggest the IRC channel. I
>>>>>> suspect
>>>>>> about half of the conversation on there at this point must be about
>>>>>> using
>>>>>> git and github.
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups
>>>>>> "sympy" group.
>>>>>> To post to this group, send email to sympy@googlegroups.com.
>>>>>> To unsubscribe from this group, send email to
>>>>>> sympy+unsubscr...@googlegroups.com.
>>>>>> For more options, visit this group at
>>>>>> http://groups.google.com/group/sympy?hl=en.
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups
>>>> "sympy" group.
>>>> To post to this group, send email to sympy@googlegroups.com.
>>>> To unsubscribe from this group, send email to
>>>> sympy+unsubscr...@googlegroups.com.
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/sympy?hl=en.
>>>>
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sympy" group.
>> To post to this group, send email to sympy@googlegroups.com.
>> To unsubscribe from this group, send email to
>> sympy+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/sympy?hl=en.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To post to this group, send email to sympy@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sympy?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com.
To unsubscribe from this group, send email to 
sympy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to