#5396: [with patch, needs work] Wrapping lcalc library
---------------------------+------------------------------------------------
 Reporter:  rishi          |       Owner:  Rishi     
     Type:  enhancement    |      Status:  new       
 Priority:  major          |   Milestone:  sage-4.1.2
Component:  number theory  |    Keywords:  lcalc     
 Reviewer:                 |      Author:            
   Merged:                 |  
---------------------------+------------------------------------------------

Comment(by cremona):

 Thanks for the explanation.

 I successfully installed the new lcalc spkg;  then I successfully applied
 the patch and rebuilt sage.

 Now testing sage/libs/lcalc gives this:
 {{{
 sage -t  "devel/sage-tests/sage/libs/lcalc/lcalc_Lfunction.pyx"
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 411:
     sage: L.value(.6)
 Expected:
     0.274633355856348 - 6.59869267328213e-18*I
 Got:
     0.274633355856341 - 6.59869267328188e-18*I
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 413:
     sage: L.value(.6+1*I)
 Expected:
     0.362258705721100 + 0.433888250620852*I
 Got:
     0.362258705721102 + 0.433888250620855*I
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 450:
     sage: L.find_zeros(1,15,.1)
 Expected:
     [6.64845334472771, 9.83144443288668, 11.9588456260835]
 Got:
     [6.64845334472771, 9.83144443288667, 11.9588456260835]
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 491:
     sage: L.find_zeros_via_N(3)
 Expected:
     [6.64845334472771, 9.83144443288668, 11.9588456260835]
 Got:
     [6.64845334472772, 9.83144443288667, 11.9588456260835]
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 642:
     sage: L.value(.5)
 Expected:
     0.763747880117299 + 0.216964767518864*I
 Got:
     0.763747880117295 + 0.216964767518863*I
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 644:
     sage: L.value(.6+5*I)
 Expected:
     0.702723260619684 - 1.10178575243940*I
 Got:
     0.702723260619682 - 1.10178575243940*I
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 789:
     sage: lcalc_zeta.value(CC(.4,.5))
 Expected:
     -0.450728958517113 - 0.780511403019070*I
 Got:
     -0.450728958517121 - 0.780511403019071*I
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 852:
     sage: lcalc_zeta.find_zeros_via_N(3)
 Expected:
     [14.1347251417347, 21.0220396387715, 25.0108575801457]
 Got:
     [14.1347251417347, 21.0220396387716, 25.0108575801457]
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 174:
     sage: L.value(.5)
 Expected:
     0.231750947504015 + 5.75329642226134e-18*I
 Got:
     0.231750947504012 + 5.75329642226126e-18*I
 **********************************************************************
 File "/home/john/sage-4.1.1/devel/sage-
 tests/sage/libs/lcalc/lcalc_Lfunction.pyx", line 176:
     sage: L.value(CC(.2,.4))
 Expected:
     0.102558603193338 + 0.190840777924700*I
 Got:
     0.102558603193336 + 0.190840777924703*I
 **********************************************************************
 7 items had failures:
 }}}

 -- that is all just numerical noise probably because I'm testing on a
 32-bit system and you made the tests on a 64-bit system (is that right?)
 That is not serious (though will need to be fixed).

 In the "testing" file, are the functions intended for inclusion in Sage?
 If so, they need doctesting (and the names are a little strange) and they
 should perhaps be made into member functions of the appropriate classes
 (e.g. ell_rational_field).

 In the docstrings explaining all the parameters, I don't think it is
 enough to just refer to the lcacl documentation.  These are Sage functions
 and the inputs need to be documented withing Sage (however tedious that
 might be!)

 There are quite a few typos in the documentation.

 Would it be possible to have a base class and have the various L-series
 classes derive from it?  That might reduce the code a little and make the
 structure clearer.

 You have some input parameters which I think would more natually be
 True/False instead of 1/0 as now.

 This has clearly been a huge amount of work and will be very useful.  The
 things I mentioned above are all minor, but still they should be
 considered, so I have left the tag as "needs work", but I think this is
 quite close to being includable.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5396#comment:13>
Sage <http://sagemath.org/>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to