Skip to main content

Compute vibrational levels, wavefunctions, and expectation values using the Numerov-Cooley algorithm.

Project description

https://travis-ci.org/bast/numerov.svg?branch=master https://coveralls.io/repos/github/bast/numerov/badge.svg?branch=master https://img.shields.io/badge/license-%20MPL--v2.0-blue.svg

Compute vibrational levels, wavefunctions, and expectation values using the Numerov-Cooley algorithm.

Citation

If you use this tool in a program or publication, please acknowledge its author(s) by adding the following reference (please replace vX.Y.Z by the appropriate version):

As soon as the API stabilizes a bit, I will tag a release and attach a DOI to it.

Installation

pip install numerov

Example

Please have a look here.

Background

This script will calculate the vibrational levels (and wavefunctions) corresponding to a normal mode numerically using the Numerov-Cooley algorithm.

The script will increase the energy and count the nodes of the wave function. If the number of nodes changes and stepsize is below energy_precision_hartree, it will accept the solution, integrate the property along q and move on to the next solution until num_solutions is reached. It will also calculate the transition frequencies 0 -> n, this is useful to check against the harmonic frequencies.

Advice

  • energy_precision_hartree is often more important than number of grid points.

  • Be careful with the displacement range.

  • If the script enters an endless loop probably the reduced mass or the displacement range is wrong.

  • Practice first with the harmonic oscillator.

  • It is a good idea to play with parameters to check convergence and numerical stability.

  • Potential and property are approximated by polynomials that contain coefficients FROM ZEROTH to nth order (that’s what polyfit gives) and you might not want that (for instance you might insist that the gradient of the potential is zero at equilibrium) in this case you can provide your own expansion coefficients or program an alternative interpolation scheme.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

numerov-0.5.0.tar.gz (5.6 kB view details)

Uploaded Source

File details

Details for the file numerov-0.5.0.tar.gz.

File metadata

  • Download URL: numerov-0.5.0.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for numerov-0.5.0.tar.gz
Algorithm Hash digest
SHA256 3e7374c995fdd98d36b92f11d58827aea3a752855ac3f6cbb8812b6fd8b555f5
MD5 f4893e28b829bac24ed807ab25648409
BLAKE2b-256 133b632580583a87493506a16f16c4f32f7a39c09c20b569e1bd983f0d39155b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page