WeierstrassInvariants[{ω1,ω3}]
gives the invariants {g2,g3} for Weierstrass elliptic functions corresponding to the half‐periods {ω1,ω3}.
WeierstrassInvariants
WeierstrassInvariants[{ω1,ω3}]
gives the invariants {g2,g3} for Weierstrass elliptic functions corresponding to the half‐periods {ω1,ω3}.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
- WeierstrassInvariants is the inverse of WeierstrassHalfPeriods.
- For certain special arguments, WeierstrassInvariants automatically evaluates to exact values.
- WeierstrassInvariants can be evaluated to arbitrary numerical precision.
- WeierstrassInvariants can be used with CenteredInterval objects. »
Examples
open all close allBasic Examples (3)
WeierstrassInvariants[{1., 2.I}]WeierstrassInvariantG2[{1., 2.I}]WeierstrassInvariantG3[{1., 2.I}]Plot the invariants over a subset of the reals:
Plot[Im[WeierstrassInvariants[{ω1, 1 + I}]], {ω1, -2, 2}]Given the half‐periods, calculate a value of a Weierstrass
function:
WeierstrassP[2.6, WeierstrassInvariants[{1.5, 1 - I}]]Scope (4)
N[WeierstrassInvariants[{1, 2I}], 50]The precision of the output tracks the precision of the input:
WeierstrassInvariants[{1.00000000000000000000000000, 2I}]Symbolic evaluation of the equianharmonic case of WeierstrassInvariants:
WeierstrassInvariants[{1, E^(I π/3)}]Symbolic evaluation of the lemniscatic case of WeierstrassInvariants:
WeierstrassInvariants[{1, I}]WeierstrassInvariants can be used with CenteredInterval objects:
WeierstrassInvariants[{CenteredInterval[1 + I, (1 + I) / 10 ^ 9], CenteredInterval[3 / 4, 1 / 10 ^ 9]}]Applications (1)
Plot an elliptic function over a period parallelogram:
Module[{ω1 = 1, ω3 = 0.2 + I},
Graphics[GeometricTransformation[ContourPlot[Evaluate[Im[Sign[WeierstrassPPrime[(ω1 + I ω3) x - I (x + I y) ω3, N[WeierstrassInvariants[{ω1, ω3}]]]]]], {x, -1, 1}, {y, -1, 1}, MaxRecursion -> 1]//First, Transpose[{ReIm[ω1], ReIm[ω3]}]]]]Properties & Relations (2)
WeierstrassInvariants[{5. I, .5 - 2I}] == {WeierstrassInvariantG2[{5. I, .5 - 2I}], WeierstrassInvariantG3[{5. I, .5 - 2I}]}WeierstrassInvariants is effectively the inverse of WeierstrassHalfPeriods:
WeierstrassInvariants[WeierstrassHalfPeriods[{I, 1. - I}]]// ChopPossible Issues (1)
Assignment of invariants corresponding to symbolic or exact half‐periods is impossible as the right‐hand side is not a list:
{g2, g3} = WeierstrassInvariants[{ω1, ω3}]Use WeierstrassInvariantG2 and WeierstrassInvariantG3 instead:
g2 = WeierstrassInvariantG2[{ω1, ω3}]g3 = WeierstrassInvariantG3[{ω1, ω3}]See Also
WeierstrassP InverseWeierstrassP KleinInvariantJ WeierstrassInvariantG2 WeierstrassInvariantG3 WeierstrassHalfPeriods
Function Repository: EisensteinE
Tech Notes
Related Guides
Related Links
History
Introduced in 1996 (3.0) | Updated in 2023 (13.3)
Text
Wolfram Research (1996), WeierstrassInvariants, Wolfram Language function, https://reference.wolfram.com/language/ref/WeierstrassInvariants.html (updated 2023).
CMS
Wolfram Language. 1996. "WeierstrassInvariants." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/WeierstrassInvariants.html.
APA
Wolfram Language. (1996). WeierstrassInvariants. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/WeierstrassInvariants.html
BibTeX
@misc{reference.wolfram_2026_weierstrassinvariants, author="Wolfram Research", title="{WeierstrassInvariants}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/WeierstrassInvariants.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_weierstrassinvariants, organization={Wolfram Research}, title={WeierstrassInvariants}, year={2023}, url={https://reference.wolfram.com/language/ref/WeierstrassInvariants.html}, note=[Accessed: 13-June-2026]}