Hi, I have an elliptic curve E in sage (over Q) and for a certain complex number tau I try to compute the image under the uniformization provided by the Weierstrass P-function associated to E. For this I use the function ellztopoint of pari: sage: E = EllipticCurve("14") sage: tau = ComplexField(1000)(pi) # just an example sage: pari(E).ellztopoint(pari(tau)) [1.23763244564628 + 5.42101086 E-19*I, 0.329632363358045 + 8.13151629 E-19*I]
My question is how I can control the precision in the result. If tau has a certain precision in sage, then pari(tau) will have the corresponding precision in pari. I tried 1) converting E to pari with a specified precision: sage: pari.new_with_bits_prec(E,1000).ellztopoint(pari(tau)) [1.2376324456462778242 + 5.42101086 E-19*I, 0.3296323633580451282 + 8.13151629 E-19*I] 2) setting the pari precision globally, by calling pari.set_real_precision(1000) before the call. This didn't work: sage: pari.set_real_precision(1000) 15 sage: pari(E).ellztopoint(pari(tau)) [1.2376324456462778242 + 5.42101086 E-19*I, 0.3296323633580451282 + 8.13151629 E-19*I] In both cases I get the same result. The only thing that works is 3) setting the pari precision globally and passing a string to pari: sage: pari.set_real_precision(1000) 15 pari("ellztopoint(ellinit(%s),%s)" % (E.a_invariants(), tau)) [1.23763244564....5734830919483 + 3.567678178 E-1001*I, 0.32963236335....3691950256 + 2.973065149 E-1001*I] Should the first two have worked as well? Thanks --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---