I am also interested in the same subject and here are some discussions
that may help you prepare your application:
The first time I mentioned it:
https://groups.google.com/d/topic/sympy/KVBZBlH7YVg/discussion
The xAct stuff is opensorce and has nice documentation and can be very useful.
But my current ideas about the project has changed quite a bit:
https://groups.google.com/d/msg/sympy/yLHpxsguI0M/4Ng4VhYYah8J
I am especially interested in implementing the functionality from the
article mentioned in the last post (by the way, many thanks to Akshay
Srinivasan for pointing to it) as it will be a great base for building
abstract multilinear algebra system.
Overall, there is plenty of stuff to be done for more than one project
and it will be great if we both get accepted. For instance, the
abstract representation (symbols) and the representation in a basis
(containers, matrices, the current tensor implementation (which I find
very untensorly ;)) are only loosely coupled. Moreover implementing,
for example, the xAct stuff does not contradict implementing the
symbolic vector analysis stuff as they can be coupled later.
Concerning the manipulation of new types of symbols (a sore point of
sympy) you can check:
https://groups.google.com/d/topic/sympy/rKnqkU_iK44/discussion
And it may be useful to check the work of Matthew Rocklin on
ImmutableMatrix (check the recent archive of the group) as there are
certain constraints to what can be used in the core (the part of sympy
manipulating the expressions).
Maybe you will not need all this information as some of it is only
tangential to the project, but I tried to be exhaustive.
Stefan
PS I have some very ugly code that I use to calculate tensor
contractions in one certain tensor space. I like the basic idea but it
is not very useful the way I have written it at the moment. I will
have to clean it up and I will post it somewhere when it is done. It
is just my proposition for a way to implement tensors (in a basis, not
abstract)
--
You received this message because you are subscribed to the Google Groups "sympy" group.
To post to this group, send email to sy...@googlegroups.com.
To unsubscribe from this group, send email to sympy+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/sympy?hl=en.
> Question for Stefan: Do you think it is feasible to separate out (1) and (2)
> into separate GSoC projects?
It seems possible, but if two such projects are admitted, there should
definitely be a clear plan for how to couple them.
> There is obviously enough work involved for two
> projects but I wonder how connected their development will have to be.
Clear plan for the architecture and doctests should be enough.
> Also,
> where is your current tensor work? I'd love to see how you're formulating
> things. I started playing with this a TensorExpr idea a while ago. My work
> is here
> https://github.com/mrocklin/sympy/tree/tensor/sympy/tensor
Mine is just a quick and ugly hack over symbol, that I needed to
create in a few hours. It is at the same time SymbolicTensor and
ImmutableTensor, to borrow the naming conventions you used for the
matrices. I will put it on github over the weekend.
> As an aside, a question of mine on scicomp.stackexchange.com related to this
> question was just given a bounty today. This question has the highest ratio
> between question votes and answer votes that I've ever seen. A sure sign
> that we should work on it and provide the answer.
> http://scicomp.stackexchange.com/questions/74/symbolic-software-packages-for-matrix-expressions
I think that I should be able to answer this question if my project
succeeds. But it would be about linear operators, not matrices (it
would be independent of the matrix representation).
--
You received this message because you are subscribed to the Google Groups "sympy" group.
To post to this group, send email to sy...@googlegroups.com.
To unsubscribe from this group, send email to sympy+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/sympy?hl=en.
You should also try to get a clearer idea of what exactly do you want
to implement. There were numerous discussions on the mailing list
about linear algebra / tensor algebra / vector and tensor calculus.
You can try to find appropriate ideas there.