version 1.3, 2003/10/23 01:32:59 |
version 1.6, 2006/12/22 05:00:08 |
|
|
/* |
/* |
* $OpenXM: OpenXM_contrib2/asir2000/builtin/isolv.c,v 1.2 2003/10/20 07:32:19 saito Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/builtin/isolv.c,v 1.5 2005/07/14 22:46:03 kondoh Exp $ |
*/ |
*/ |
|
|
#include "ca.h" |
#include "ca.h" |
|
|
fprintf(stderr,"solve,"); |
fprintf(stderr,"solve,"); |
error(" : Sorry, not yet implement of multivars"); |
error(" : Sorry, not yet implement of multivars"); |
break; |
break; |
defaults: |
default: |
*rp = 0; |
*rp = 0; |
} |
} |
} |
} |
|
|
Obj *rp; |
Obj *rp; |
{ |
{ |
pointer p, Eps; |
pointer p, Eps; |
pointer root, listp; |
pointer root; |
|
LIST listp; |
V v; |
V v; |
Q eps; |
Q eps; |
NODE n, n0, m0, m, ln0; |
NODE n, n0, m0, m, ln0; |
|
|
ToBf(r, &breal); |
ToBf(r, &breal); |
NEXTNODE( n0, n ); |
NEXTNODE( n0, n ); |
MKNODE(ln0, breal, NEXT(m)); |
MKNODE(ln0, breal, NEXT(m)); |
MKLIST((LIST)listp, ln0); |
MKLIST(listp, ln0); |
BDY(n) = (pointer)listp; |
BDY(n) = (pointer)listp; |
} |
} |
NEXT(n) = 0; |
NEXT(n) = 0; |
MKLIST((LIST)listp,n0); |
MKLIST(listp,n0); |
*rp = (pointer)listp; |
*rp = (pointer)listp; |
break; |
break; |
case O_LIST: |
case O_LIST: |
fprintf(stderr,"solve,"); |
fprintf(stderr,"solve,"); |
error(" : Sorry, not yet implement of multivars"); |
error(" : Sorry, not yet implement of multivars"); |
break; |
break; |
defaults: |
default: |
*rp = 0; |
*rp = 0; |
} |
} |
} |
} |
|
|
{ |
{ |
Q a, b, c, d, e; |
Q a, b, c, d, e; |
P p; |
P p; |
p = (P*)BDY(root)[indx][3]; |
p = (P)BDY(root)[indx][3]; |
addq(BDY(root)[indx][0], BDY(root)[indx][1], &c); |
addq(BDY(root)[indx][0], BDY(root)[indx][1], &c); |
divq(c, TWO, &d); |
divq(c, TWO, &d); |
ueval(p, BDY(root)[indx][1], &a); |
ueval(p, BDY(root)[indx][1], &a); |