Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

28 lines (16 sloc) 1.106 kb


Implementation of theta-functions using trigonometric series.

They're the special functions of two variables. Described very well at Wikipedia article.

Library exports four theta-functions and a small helper to calculate their second parameter.

Theta functions are functions of Complex variables, FYI.

Interface summary

thetaN n q u

where N is a number from 1 to 4, n is a quantization factor, q is a theta-functions special parameter, and u is an actual argument of function.

Parameter q should be calculated with the helper function qpar, which accepts real numbers as argument:

qpar tau

qpar itself returns Complex value. This helper is used to draw the library closer to the definition of theta-functions provided in the books.


Never call theta1..4 with u > pi. Theta-functions are raising very rapidly (maybe it's because of trigonometric series representing them), so with large values of argument they overflow badly and return incorrect results.

Jump to Line
Something went wrong with that request. Please try again.