GSoC 2011 Application Anatolii Koval - sympy/sympy GitHub Wiki

Title: Implementation perturbation theory into sympy.physics.quantum

Student: Anatolii Koval

Abstract: Computer algebra systems (CAS) simplifies traditional mathematics and physics calculation what rescue us from daily routine. But what about Quantum Mechanics which has specific math calculations? In this project I want implement functionality for Quantum Mechanics Perturbation Theory calculation into SymPy physics module, to prevent tedious and wearying work.

Table of Contents

Personal info

Name and Contact Info

Name: Anatolii Koval

Gmail and GoogleTalk: [email protected]

Jabber: [email protected], [email protected]

Skype: weralwolf

Mailing List: Intro and Example or Same example(there was one error, so there two such topics)

Education

Current: bachelor of Astronomy and Cosmological Physics department in Physical faculty of the Kiev National Tars Shevchenko University

Current research and background

Helpful background: Theoretical Physics, Quantum Mechanics, Integral Transformations, Special Functions, Differential Equations, Mathematical Physics, Ionospheric Tomography, Plasma Physics.

Currently works on: "Model issue on ionospheric tomography based upon GNSS satellites"

Programming & technical background

I've been using GNU Linux since 2007 y. I using to work with Fedora, Arch Linux, but currently use Ubuntu 10.04.

Programming experience:

  • C++ – worked with: stl, templates, libxml, alglib, node.js, libperl--, v8, libmysql in different projects or some times just for fun. My public project: Node Perl Packer
  • Python – worked with: Mechanize, std, PyQt. Mostly for some technical calculations.
  • JS – worked with: jQuery, node.js. Currently work on module to node.js (link above)
  • PHP – worked with: Yii, PEAR
  • Also worked with: MySQL, SQLite, XPath, CSS, XML, etc.
I have experience in working with SVN, little bit Git. Currently use NetBeans IDE, but also try Eclipse and Anjuta

Project

Motivations

I want to become more familiar with scientific calculations and get experience from this project, make own investigation into SymPy physics module to simplify daily life for other scientists who works with quantum mechanics. Also in future planes I'd like to work with Gravitation Theory, so I think it will be good introduction into scientific programming with Python on more higher level.

Project Goal

To get in how would looks like calculation perturbation I've write this code: "Applying perturbation theory to calculate the ground state energy of the 1D infinite potential well of width $a$ with a perturbation which is linear in $x$, up to second order in perturbation". Where I have seen which problems we can deal with in this case:

  • Calculating matrix elements $Vmn$ of $V$ perturbation with integrals but not with Bra and Ket vectors or even through sympy.physics.quantum.operator, cause matrix_element method not implemented yet.
  • Calculation of two first orders is more simpler then more higher orders which force user write more code what as usually leads to lots of errors
  • Make some preliminary calculations to understand what exactly elements of infinite sums wouldn't equals to zero
Due to list above the main goal of my project is solving usually problems what happens during large QM calculations and create useful tool set for this.

Useful links

⚠️ **GitHub.com Fallback** ⚠️