[BACK]Return to cplx.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / engine

Diff for /OpenXM_contrib2/asir2000/engine/cplx.c between version 1.4 and 1.7

version 1.4, 2000/12/22 10:03:28 version 1.7, 2015/08/20 08:42:07
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/engine/cplx.c,v 1.3 2000/08/22 05:04:05 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/engine/cplx.c,v 1.6 2009/03/27 14:42:29 ohara Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "base.h"  #include "base.h"
 #if PARI  
 #include "genpari.h"  
 void patori(GEN,Obj *);  
 void patori_i(GEN,N *);  
 void ritopa(Obj,GEN *);  
 void ritopa_i(N,int,GEN *);  
 #endif  
   
 void toreim(a,rp,ip)  void toreim(a,rp,ip)
 Num a;  Num a;
Line 188  Num *c;
Line 181  Num *c;
 {  {
         int ei;          int ei;
         Num t;          Num t;
         extern long prec;  
   
         if ( !e )          if ( !e )
                 *c = (Num)ONE;                  *c = (Num)ONE;
         else if ( !a )          else if ( !a )
                 *c = 0;                  *c = 0;
         else if ( !INT(e) ) {          else if ( !INT(e) )
 #if PARI                  error("pwrcplx : not implemented (use eval()).");
                 GEN pa,pe,z;          else {
                 int ltop,lbot;  
   
                 ltop = avma; ritopa((Obj)a,&pa); ritopa((Obj)e,&pe); lbot = avma;  
                 z = gerepile(ltop,lbot,gpui(pa,pe,prec));  
                 patori(z,(Obj *)c); cgiv(z);  
 #else  
                 error("pwrcplx : can't calculate a fractional power");  
 #endif  
         } else {  
                 ei = SGN((Q)e)*QTOS((Q)e);                  ei = SGN((Q)e)*QTOS((Q)e);
                 pwrcplx0(a,ei,&t);                  pwrcplx0(a,ei,&t);
                 if ( SGN((Q)e) < 0 )                  if ( SGN((Q)e) < 0 )

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.7

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>