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

Diff for /OpenXM_contrib2/asir2000/engine/C.c between version 1.11 and 1.14

version 1.11, 2001/10/09 01:36:09 version 1.14, 2003/01/16 00:33:28
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/C.c,v 1.10 2001/06/29 09:08:53 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/engine/C.c,v 1.13 2003/01/04 09:06:17 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "inline.h"  #include "inline.h"
Line 225  void ptosfp(P p,P *pr)
Line 225  void ptosfp(P p,P *pr)
         if ( !p )          if ( !p )
                 *pr = 0;                  *pr = 0;
         else if ( NUM(p) ) {          else if ( NUM(p) ) {
                 qtogfs((Q)p,&a); *pr = (P)a;                  if ( NID((Num)p) == N_GFS )
                           *pr = (P)p;
                   else {
                           qtogfs((Q)p,&a); *pr = (P)a;
                   }
         } else {          } else {
                 for ( dc = DC(p), dcr0 = 0; dc; dc = NEXT(dc) ) {                  for ( dc = DC(p), dcr0 = 0; dc; dc = NEXT(dc) ) {
                         ptosfp(COEF(dc),&t);                          ptosfp(COEF(dc),&t);
Line 261  void sfptop(P f,P *gp)
Line 265  void sfptop(P f,P *gp)
         }          }
 }  }
   
   void sfptopsfp(P f,V v,P *gp)
   {
           DCP dc,dcr,dcr0;
           Q q;
           P fq;
   
           if ( !f )
                   *gp = 0;
           else if ( NUM(f) )
                   gfstopgfs((GFS)f,v,gp);
           else {
                   for ( dc = DC(f), dcr0 = 0; dc; dc = NEXT(dc) ) {
                           NEXTDC(dcr0,dcr); DEG(dcr) = DEG(dc);
                           sfptopsfp(COEF(dc),v,&COEF(dcr));
                   }
                   NEXT(dcr) = 0; MKP(VR(f),dcr0,*gp);
           }
   }
   
 void sf_galois_action(P p,Q e,P *pr)  void sf_galois_action(P p,Q e,P *pr)
 {  {
         DCP dc,dcr,dcr0;          DCP dc,dcr,dcr0;
Line 404  void ptosfum(P f,UM wf)
Line 427  void ptosfum(P f,UM wf)
   
         if ( OID(f) == O_N ) {          if ( OID(f) == O_N ) {
                 DEG(wf) = 0;                  DEG(wf) = 0;
                 COEF(wf)[0] = FTOIF(CONT((GFS)f));                  ntogfs((Obj)f,&c);
                   COEF(wf)[0] = FTOIF(CONT(c));
                 return;                  return;
         }          }
   
Line 412  void ptosfum(P f,UM wf)
Line 436  void ptosfum(P f,UM wf)
                 COEF(wf)[i] = 0;                  COEF(wf)[i] = 0;
   
         for ( dc = DC(f); dc; dc = NEXT(dc) ) {          for ( dc = DC(f); dc; dc = NEXT(dc) ) {
                 c = (GFS)COEF(dc);                  ntogfs((Obj)COEF(dc),&c);
                 if ( c )                  if ( c )
                         COEF(wf)[QTOS(DEG(dc))] = FTOIF(CONT(c));                          COEF(wf)[QTOS(DEG(dc))] = FTOIF(CONT(c));
         }          }

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.14

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