Check this out. The first time I define an elliptic curve and compute
the period lattice, it always gives exactly the same precision, irregardless
of the prec input. Subsequent times give possibly correct precision.
sage: E = EllipticCurve('37a1')
sage: Lambda = E.period_lattice()
sage: Lambda.omega(200)
5.986917292463919259664019958905016355595167582740265970681046757126500713973
sage: Lambda.omega(100)
5.986917292463919259664019958905016355595167582740265970681046757126500713973365808240788134794102946871681054209894576388288774474744050508750753342186522750608666501193049250432894613814538902149811561273122089156345163427036485586852626497796017388487604174086333863088928480309531169016955719094015913439555469220814610215254636002519172466378969093006402072130793705592258575075486444380127839934596631023678346217719271793891480048154202569023527149733047069754453169881844338046858668017675435309133044249015102196051155809873806168636730720956496483885055762761489226969877518223414185587257206155078668194515311004693366757955307567080310433588840427191375819004300607360635859398481204844344393095079959927352487057219058204337964232422372592187511419483538297310727527566062827503999277428879770774843525427663851230372200222109074686953242505297927911230425946419543016023564723516967617433213851189659056134170443836653494765813269
sage: E = EllipticCurve('37a1')
sage: Lambda = E.period_lattice()
sage: Lambda.omega(500)
5.986917292463919259664019958905016355595167582740265970681046757126500713973
s}}}
Also, It would be good for Lambda to have a real_period() method that is the
same as omega.