From: SourceForge.net <no...@so...> - 2006-09-09 01:55:54
|
Bugs item #816166, was opened at 2003-10-01 16:24 Message generated for change (Settings changed) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=816166&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: Lisp Core - Complex Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: rectform/carg doesn't normalize exp(%i*n) (also asin, log) Initial Comment: carg(exp(%i*x)) => x (OK?) carg(exp(%i*10.0)) => 10.0 (No?) carg(exp(%i*-%pi)) => %pi (OK) float(carg(exp(%i*-%pi))) => 3.14 (OK) carg(exp(%i*float(-%pi))) => -3.14 (?) float(carg(asin(-%i*10))) => -1.57 (OK) carg(asin(-%i*10)),numer => 4.71 (No!) float(rectform(log(-%i*10))) => 2.30 - 1.57*%I (OK) rectform(log(-%i*10)),numer => 2.30+4.71*%I (No!) Presumably the principal values is what is wanted. I will correct that. This is related to the fact that carg(exp(%i*x)) doesn't normalize x to (-pi,pi] when x is not an explicit multiple of pi: carg(exp(%i*10)) => 10 carg(exp(%i*x)) => x but carg(exp(%i*(3*%pi-x))) => %pi-x How far should this go? I think it's pretty clear for the float/bfloat case, but how about carg(exp(%i*10))? Should that really return 10-4*%pi? Currently, it goes the other way around!: exp(%i*(10-4*%pi)) actually simplifies to exp(%i*10).... ---------------------------------------------------------------------- Comment By: Barton Willis (willisbl) Date: 2005-07-18 04:42 Message: Logged In: YES user_id=895922 How about 'nummod'? See my recent Maxima list posting and "Concrete Mathematics" by Graham, Knuth, and Patashnik, Section 3.4 (%i1) load("C:/maxima/nummod/nummod.lisp")$ (%i2) f(x) := %pi - nummod(%pi-x,2*%pi)$ (%i3) f(-%pi); (%o3) %pi (%i4) f(0); (%o4) 0 (%i5) f(%pi); (%o5) %pi (%i6) f(%pi + 1/10^9); (%o6) 1/1000000000-%pi (%i7) f(%pi - 1/10^9); (%o7) %pi-1/1000000000 (%i8) Barton ---------------------------------------------------------------------- Comment By: Robert Dodier (robert_dodier) Date: 2005-07-16 01:15 Message: Logged In: YES user_id=501686 Well, how about carg (exp (%i*10)) => 'mod (10, 2*%pi) ?? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=816166&group_id=4933 |