Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
28 lines (16 sloc) 1.08 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.

Something went wrong with that request. Please try again.