#4498: Implement a symbolic version of the arg function
--------------------------------------------------+-------------------------
   Reporter:  TimothyClemans                      |          Owner:  somebody   
                 
       Type:  enhancement                         |         Status:  
needs_review                
   Priority:  major                               |      Milestone:  
sage-wishlist               
  Component:  symbolics                           |       Keywords:  beginner, 
sd35.5            
Work_issues:  random tests, Maxima                |       Upstream:  N/A        
                 
   Reviewer:  Karl-Dieter Crisman, Burcin Erocal  |         Author:  Karen T. 
Kohl, Burcin Erocal
     Merged:                                      |   Dependencies:             
                 
--------------------------------------------------+-------------------------
Changes (by newvalueoldvalue):

  * status:  needs_work => needs_review
  * author:  Karen T. Kohl => Karen T. Kohl, Burcin Erocal


Old description:

> It would be nice if there were a symbolic arg function, just like the
> symbolic sin, cos, etc., functions.  Then the following would happen:
>
> {{{
> sage: f = arg(x); f
> arg(x)
> sage: f.subs(x=1+I)
> arg(1+I)
> }}}
>
> Now we have
> {{{
> sage: arg(1+I)
> 0.785398163397
> sage: type(arg(1+I))
> <type 'sage.rings.real_double.RealDoubleElement'>
> }}}
>
> I.e., the arg in Sage is currently the numerical person's arg, not the
> symbolic person's.  It just casts to CDF.
>

> "The function should return the argument of a complex function." - Ronan
> Paixão

New description:

 It would be nice if there were a symbolic arg function, just like the
 symbolic sin, cos, etc., functions.  Then the following would happen:

 {{{
 sage: f = arg(x); f
 arg(x)
 sage: f.subs(x=1+I)
 arg(1+I)
 }}}

 Now we have
 {{{
 sage: arg(1+I)
 0.785398163397
 sage: type(arg(1+I))
 <type 'sage.rings.real_double.RealDoubleElement'>
 }}}

 I.e., the arg in Sage is currently the numerical person's arg, not the
 symbolic person's.  It just casts to CDF.


 "The function should return the argument of a complex function." - Ronan
 Paixão

 Apply
  * attachment:trac_4498-symbolic_arg.cleanup.patch
  * attachment:trac_4498-arg_evalf.patch

--

Comment:

 Apparently I didn't run tests, latex output was also broken.

 attachment:trac_4498-arg_evalf.patch, to be applied after
 attachment:trac_4498-symbolic_arg.cleanup.patch, implements a new
 `_evalf_()` function which keeps the precision of the input. This one
 needs a real review. :)

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4498#comment:19>
Sage <http://www.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