GSOC 2013

287 views
Skip to first unread message

Amit

unread,
Mar 22, 2013, 10:17:40 AM3/22/13
to sy...@googlegroups.com
Hello ,
       After going through the ideas page I have found few interesting topics I think I can work upon.
1.Generalized implementation of integral transforms (I have posted it few weeks back on the mailing list)
   The idea would be transforming any given function with respect to the kernel provided.This can also include predicting specific kernels.The main idea is to generalize the existing transforms into a more general one. I am still going through the properties of kernels (for example symmetric kernels and asymmetric kernels and properties) (Reference I.N.Sneddon) 

2.Quantum Mechanics module :
         (i) Adding more features to spin section (Sean Vig has given a lead on this and I am working my way out on what can be done).(Will come out with some ideas by the end of the month)
         (ii) From the ideas page I find three topics interesting but have to work on this to get the understanding of what is going on 
            Dirac Delta Notation,  position and momentum basis (I have tried to understand the code in the pull request) symbolic quantum computing.

Even the tensor module sounds pretty interesting but my understanding would be not be that mathematical as I have just used them in physics (I can work upon on it).

        Coming to the background I have in the subject I have been doing a course on Integral transforms back at the university and have done a course in quantum computation and have been guided by the professors in the area of Quantum Physics.I know this is very much not in place but I would work on the Quantum Physics part and would move through the code and figure out how it has to be done.I would like to know your view on this topic as there would be medium work done to both the modules (would like to know the take on the first one and is it possible to squeeze a project by contributing evenly to two modules rather than one (since neither both ideas would stand alone as a single long project).Thanks.

Brian Granger

unread,
Mar 22, 2013, 4:09:28 PM3/22/13
to sympy
Amit,

Hi, welcome to SymPy!

> 2.Quantum Mechanics module :
> (i) Adding more features to spin section (Sean Vig has given a lead
> on this and I am working my way out on what can be done).(Will come out with
> some ideas by the end of the month)

OK great, Sean is definitely the person to work with on the spin
stuff. He would know exactly what needs to be done.

> (ii) From the ideas page I find three topics interesting but have
> to work on this to get the understanding of what is going on
> Dirac Delta Notation, position and momentum basis (I have tried
> to understand the code in the pull request) symbolic quantum computing.

The dirac notation stuff is basically done. But the position and
momentum stuff needs a lot of work. There was a bunch of work done
previously and there is an open pull request that has some additional
work. This is an important part of the code base, but just a warning:
it is extremely difficult and you will have to have a very good
understanding of quantum mechanics (probably at the graduate level or
close to it) and know python well. If you are interested in this I
would just start to dig into the code and the open pull request on the
topic and see what you think needs to be done.

> Even the tensor module sounds pretty interesting but my understanding would
> be not be that mathematical as I have just used them in physics (I can work
> upon on it).
>
> Coming to the background I have in the subject I have been doing a
> course on Integral transforms back at the university and have done a course
> in quantum computation and have been guided by the professors in the area of
> Quantum Physics.I know this is very much not in place but I would work on
> the Quantum Physics part and would move through the code and figure out how
> it has to be done.I would like to know your view on this topic as there
> would be medium work done to both the modules (would like to know the take
> on the first one and is it possible to squeeze a project by contributing
> evenly to two modules rather than one (since neither both ideas would stand
> alone as a single long project).Thanks.

There is additional work to be done on the quantum computing stuff:

* Quantum error correction
* Quantum circuit simplification/optimization
* Better circuit drawing
* Use numba/cython/julia to generate fast code for simulating quantum circuits.

Hope this gives you an idea of where to start.

Cheers,

Brian

> --
> 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 sympy+un...@googlegroups.com.
> To post to this group, send email to sy...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sympy?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>



--
Brian E. Granger
Cal Poly State University, San Luis Obispo
bgra...@calpoly.edu and elli...@gmail.com

Amit Jamadagni

unread,
Mar 22, 2013, 4:33:16 PM3/22/13
to sy...@googlegroups.com
Thanks, for the ideas on what to implement in the respective sectors.I would like to know about the implementation of the first topic that I posted. I guess the patch requirement(pull request numbered 1834 and 1900) has been done so I would like to know if there is any other requirement to satisfy to apply for SoC. And yes I would start off as soon as possible and come up with something by the end this or the beginning of the next month.

Amit Jamadagni

unread,
Mar 22, 2013, 4:56:46 PM3/22/13
to sy...@googlegroups.com
>The dirac notation stuff is basically done.  But the position and
>momentum stuff needs a lot of work.  There was a bunch of work done
>previously and there is an open pull request that has some additional
>work.  This is an important part of the code base, but just a warning:
>it is extremely difficult and you will have to have a very good
>understanding of quantum mechanics (probably at the graduate level or
>close to it) and know python well.  If you are interested in this I
>would just start to dig into the code and the open pull request on the
>topic and see what you think needs to be done.

I would like to add that it might be possible for me to understand (though not completely sure) but if it is a combination of some graduate maths and intermediate physics(in an attempt on reading Sakurai for QM) I can give it a try. If there can be an hint of what level of physics we are dealing with then I can decide so I would like to know a little about this.And I would like to know if there is an implementation of quantum related group theory (SU(2) SU(3) groups).Even though my knowledge about these is pretty elementary I would like to know whether any work is possible in this direction.Thanks.

Amit Jamadagni

unread,
Mar 24, 2013, 7:06:58 AM3/24/13
to sy...@googlegroups.com
It would be great for someone to comment on the integral transforms implementation and other questions too.Thanks.

Amit Jamadagni

unread,
Mar 24, 2013, 7:07:42 AM3/24/13
to sy...@googlegroups.com
It would be great if someone comments on the other ideas too.Thanks.

Amit Jamadagni

unread,
Mar 25, 2013, 3:00:19 AM3/25/13
to sy...@googlegroups.com
I would request someone to let me know if the above mentioned cases are possible.And is there any other requirement for SoC.Thanks.

Aaron Meurer

unread,
Mar 26, 2013, 4:11:30 PM3/26/13
to sy...@googlegroups.com
Can you give a specific example of the sort of thing that the integral
transformations code might be able to do?

Aaron Meurer
> Visit this group at http://groups.google.com/group/sympy?hl=en-US.

Amit Jamadagni

unread,
Mar 26, 2013, 6:20:34 PM3/26/13
to sy...@googlegroups.com
As per my understanding goes we have the cases where the kernel is specific to certain transforms.
So here I basic math behind the theory is as follows :

I[f(a)] = integral(f(x).k(a,x)) where k(a,x) is the kernel.

So the most general case would be giving a function of two variables and the function to be transformed.

So applying conditions on the kernel would end up in different transform spaces .
For example the Fourier Kernel .

It is symmetric kernel the kernels which result in same effect on interchanging k(a,x) and I[f(a)]. This is the base but by using this we end up with a condition on k(a,x) in mellins space 

where in k(a,x) is a fourier kernel if mellins transform of k(s) (where s is some variable) is some K(s) then it should satisfy K(s).K(1-s) = 1.

This can be even extended to asymmetric kernels.I am still in the process of learning and this is the basic framework I would like to develop upon.

This implementation may not cater to the needs of a GSoC project.So my idea was to implement this and improve the spin module as suggested earlier.Is this valid and if so as the implementation of both is medium can I include both in the proposal so that it would end up being a long project.Hope I was clear in delivering my idea across.Thanks. 

Amit Jamadagni

unread,
Mar 26, 2013, 6:22:00 PM3/26/13
to sy...@googlegroups.com
As per my understanding goes we have the cases where the kernel is specific to certain transforms.
So here the basic math behind the theory is as follows :

I[f(a)] = integral(f(x).k(a,x)) where k(a,x) is the kernel.

So the most general case would be giving a function of two variables and the function to be transformed.

So applying conditions on the kernel would end up in different transform spaces .
For example the Fourier Kernel .

It is symmetric kernel the kernels which result in same effect on interchanging k(a,x) and I[f(a)]. This is the base but by using this we end up with a condition on k(a,x) in mellins space 

where in k(a,x) is a fourier kernel if mellins transform of k(s) (where s is some variable) is some K(s) then it should satisfy K(s).K(1-s) = 1.

This can be even extended to asymmetric kernels.I am still in the process of learning and this is the basic framework I would like to develop upon.

This implementation may not cater to the needs of a GSoC project.So my idea was to implement this and improve the spin module as suggested earlier.Is this valid and if so as the implementation of both is medium can I include both in the proposal so that it would end up being a long project.Hope I was clear in delivering my idea across.Thanks. 

On Wed, Mar 27, 2013 at 1:41 AM, Aaron Meurer <asme...@gmail.com> wrote:

Aaron Meurer

unread,
Mar 26, 2013, 7:36:36 PM3/26/13
to sy...@googlegroups.com
I'm still not clear what exact things this module would compute. Can you give some example pseudocode of what the final module might look like?

Aaron Meurer

Amit Jamadagni

unread,
Mar 27, 2013, 2:29:09 AM3/27/13
to sy...@googlegroups.com
The main class would be 
class IntegralTranforms(Function)
      def generaltransform(parameters would be two functions)

            //algo for computing wrt to the input kernel
              intergrate(f(x)*K(a,x))

       if (kernel = Fourier)
              call Fourier Transform 

       and similarly for other kernels. 

       def prop(input : kernel function)
              check (Fourier or not)
              check (Millin or not)
              check (symmetric)
              check asymmetic)

Similarly other properties.

I know it is vague and I am still working on it and this is an idea of making it general.I hope it was clear.Thanks.

Aaron Meurer

unread,
Mar 29, 2013, 1:18:44 AM3/29/13
to sy...@googlegroups.com
I think I understand your example. But unless I'm missing something,
this doesn't seem like it would be that hard to do, especially since
the hard work of the integration algorithms is already done. My main
concern is if this enough work for a GSoC project (so far, it sounds
like just a single pull request). But maybe I missed something.

Aaron Meurer

On Wed, Mar 27, 2013 at 12:29 AM, Amit Jamadagni

Amit Jamadagni

unread,
Mar 29, 2013, 1:45:12 AM3/29/13
to sy...@googlegroups.com
So as I mentioned I would also like to work on the quantum module.So can I include this in the proposal as a sub point.Thanks.

Aaron Meurer

unread,
Mar 29, 2013, 4:11:02 AM3/29/13
to sy...@googlegroups.com
It's best to keep the proposals about one thing, so unless there is
stuff you want to implement in the quantum module that would require
this, I would recommend against it. But you're welcome to submit more
than one proposal. You're also welcome to just submit the code on your
own (and if you do this before the acceptance period, it can't hurt
your chances).

Aaron Meurer

On Thu, Mar 28, 2013 at 11:45 PM, Amit Jamadagni

Amit Jamadagni

unread,
Mar 29, 2013, 11:40:32 AM3/29/13
to sympy
And I would like to know if there is an implementation of quantum related group theory (SU(2) SU(3) groups).Even though my knowledge about these is pretty elementary I would like to know whether any work is possible in this direction.
And any lead on the above would be helpful.That would be implementation of matrices.Thanks.

Amit Jamadagni

unread,
Apr 3, 2013, 4:17:47 PM4/3/13
to sympy
I have been going through this book on Quantum Theory of Angular Momentum by Varshalovich , it starts of with contravariant and covariant concepts and further uses it in the theory of Irreducible tensors.I would like to know if there exists an implementation of transition between various coordinate system and use of the various matrices related to quantum theory in sympy.Thanks.

Sean Vig

unread,
Apr 11, 2013, 2:55:20 PM4/11/13
to sy...@googlegroups.com
Sorry for taking so long to comment on this.

quantum related group theory (SU(2) SU(3) groups)

I'm not familiar off-hand with groups in angular momentum going beyond SU(2) and SO(3), if you could find something (I know it was mentioned in the original description of available angular momentum related projects), you could pursue that.

if there exists an implementation of transition between various coordinate system and use of the various matrices related to quantum theory in sympy

At least with the angular momentum stuff, there are transformations between x/y/z bases and the rotation operator for transformations to arbitrary cartesian bases. Is that what you're asking, or do you have something else in mind?

> Irreducible tensors

I think this would make a good project, namely integrating irreducible tensor operators and spherical harmonics. The key here would be trying to work with development of the tensor module outside the physics module, which has been the source of much discussion.

Sean

Amit Jamadagni

unread,
Apr 13, 2013, 10:47:01 AM4/13/13
to sympy
Coming to the first point of quantum related group theory ... I was lucky that I went through the thread and found the paper 

https://groups.google.com/group/sympy/browse_thread/thread/36c44041ff0ef792

A very quick scan gave me some implementation can be done with the matrices.(Not completely sure on the theory)(Still not dropping the idea of quantum group representations (I need some material on it)).

Coming to the improvements in quantum module , I again went through the Varshalovich and below are the things that I can think I can work on :

1.With reference to the covariant and contravariant co ordinates . Is there such kind of implementation between co ordinate axis (Referring to the first chapter).It would great if these were implemented and relation between different types of rotation Cayley-Klein parameters and Euler angles.

2.Moving onto Spherical Harmonics 
A very quick scan gave me the following topics that can be worked on 

(a) Spherical Harmonics in terms of other functions (since we have Legendre polynomials implemented).
     Symbolic Representation in terms of derivatives.

(b)Representation of Spherical Harmonics as a Power series of Trigonometric functions (this has several subcases ) (pg 133 - 138)

(c) Then again relationship between Spherical Harmonics and Special Functions (Again there are few polynomials here ).

(d)Then moving on there are some integral representations (I guess again we can use them to represent in terms of symbols , rather than computing 
them , as far as i understand there can be a symbolic representation of it).

(e)Then we can implement the changes in harmonics under rotation (There is a lot that can be done in this pg 141 - 142)

(f)Recursion Relations can be used in testing purposes.

(g)Numerical values can again be used for tests (pg 155 -157)

(h) Coefficients of in the expansion of Spherical Waves.

Coming to the topic of irreducible tensors and tensor implementation of tensor spherical harmonics I need to get my math on this.This seems not to be so straight forward but will make an attempt and get back to it as soon as possible.I hope everything was answered as expected.

I hope and wish the content above would be sufficient for a project of the magnitude of GSoC,This would be a sincere attempt to make the Quantum module more robust.I hope a review on this (they mostly use recursive formula and few are straight implementations). I was also going through other open source Quantum Modules and found QuTip http://code.google.com/p/qutip/ interesting.Can some ideas be taken from the above module to enhance and improve the present Quantum module.A review on this would be great. 



--

Amit Jamadagni

unread,
Apr 13, 2013, 10:49:10 AM4/13/13
to sympy
(h) Coefficients of terms in the expansion of Spherical Waves.Sorry for the typo.

Amit Jamadagni

unread,
Apr 13, 2013, 4:28:13 PM4/13/13
to sympy
While I was going through quantum algebra I found q calculus and a quick search on the documentation gave me q related functions. Is there a complete implementation of q calculus.Reference( Klimyk A., Schmudgen K. Quantum groups and their representations (Springer, 1997)).And I request someone from the physics community to comment on the above mentioned topics as it would be really helpful.Thanks.

Amit Jamadagni

unread,
Apr 16, 2013, 12:56:44 PM4/16/13
to sympy
(a) is already implemented so would move on from (b) everything would be a symbolic representation.Thanks.

Reply all
Reply to author
Forward
0 new messages