Hi Peter, I read through your ideas. First of all, I started SymPy as a theoretical physics student myself, and I wanted to automate the General Relativity as well as high energy QFT calculations. I am still very interested in that, but there are a lot of tough problems and parts that need to be in place.
You need to be able to do integrals, handle potentially large formulas, tensor manipulation and simplification (e.g. gamma matrices), and so on. It's not easy at all, but we've done a long progress since the time I started SymPy in 2007 or so. Most of these things are in place, in some form. In order to efficiently handle very large expressions, I started developing CSymPy about half a year ago (https://github.com/certik/csympy), this will come very handy as well for these applications. The best way to get some ideas of what can be done is to look into existing packages, they are pretty much all in Mathematica. In fact, most theoretical physicist just use Mathematica. And let's be frank, it's currently the best if you just care about getting the results. There is also GiNaC (http://www.ginac.de/) that can be used for some of the high energy stuff, but CSymPy can now do pretty similar things, sometimes faster. So there is: http://www.feyncalc.org/ there are all these various things people wrote for Mathematica: @article{huber2012crasydse, title={CrasyDSE: A framework for solving Dyson--Schwinger equations}, author={Huber, Markus Q and Mitter, Mario}, journal={Computer Physics Communications}, volume={183}, number={11}, pages={2441--2457}, year={2012}, publisher={Elsevier} } @article{huber2012algorithmic, title={Algorithmic derivation of functional renormalization group equations and Dyson--Schwinger equations}, author={Huber, Markus Q and Braun, Jens}, journal={Computer Physics Communications}, volume={183}, number={6}, pages={1290--1320}, year={2012}, publisher={Elsevier} } But the advantage of SymPy is that the whole stack is opensource, and SymPy is just a library, so it better integrates with things like IPython Notebook and you can create the whole application in it. For example, the physics.quantum module has some good stuff, that plays together much better than packages in Mathematica. Another great application is PyDy. So it would be really nice to have the project that you describe. You should have a look at work done by Francesco Bonazzi regarding the gamma matrices: https://github.com/Upabjojr https://github.com/sympy/sympy/pull/2601 He has lots of PRs, closed and open. It's nontrivial. And those are just the gamma matrices. I think Francesco's goal could be summarized by your proposal, and he's done many months worth of work on it already. So the scope is just huge. So there is plenty of things that could be done for the summer. One of the things is for example just the Feynman diagrams generator for various Lagrangians. I am sure there must be some packages that do that, but it'd be nice to integrate this with SymPy and create nice IPython Notebooks that generate all the correct diagrams, for example from Peskin & Schroeder. This will be good for pedagogical reasons, as well as computations. In general, good applications in my opinion are providing automatic symbolic solutions to various exercises from books. Another thing is of course Regularization and Renormalization. I would suggest you to figure out something, that can be finished during a summer and that would provide something useful, on it's own. So that you can create nice examples out of it. Then you can continue working on some other things after the summer. Ondrej -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CADDwiVCOFJ_%2BR1cbAq_ie--A8D5rUFFxqO%2BivyoEb3UG00OeeA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
