Changeset 8078c8 in git
 Timestamp:
 Feb 22, 2008, 12:14:16 PM (16 years ago)
 Branches:
 (u'fiekerDuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', '3720ae8bfcff4a4649ee98a15552089151d2d59b')
 Children:
 6f801b4e767f113dae2ed6a6e8b95d7227f2c3db
 Parents:
 d6e849378be41014886cff67801e4f404ef983ca
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

Singular/ipshell.cc
rd6e849 r8078c8 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: ipshell.cc,v 1.17 7 20080206 20:22:41 wienandExp $ */4 /* $Id: ipshell.cc,v 1.178 20080222 11:14:16 Singular Exp $ */ 5 5 /* 6 6 * ABSTRACT: … … 4195 4195 R>wvhdl=(int**)omAlloc0(n*sizeof(int_ptr)); 4196 4196 4197 int *weights=(int*)omAlloc0((R>N+1)*sizeof(int)); 4198 4197 4199 // init order, so that rBlocks works correctly 4198 4200 for (j=0; j < n1; j++) … … 4218 4220 */ 4219 4221 R>order[n] = (*iv)[1]; 4222 typ=1; 4220 4223 switch ((*iv)[1]) 4221 4224 { … … 4226 4229 case ringorder_Wp: 4227 4230 R>wvhdl[n]=(int*)omAlloc((iv>length()1)*sizeof(int)); 4231 R>block0[n] = last+1; 4228 4232 for (i=2; i<iv>length(); i++) 4229 4233 { 4230 4234 R>wvhdl[n][i2] = (*iv)[i]; 4235 last++; 4236 if (weights[last]==0) weights[last]=(*iv)[i]*typ; 4231 4237 } 4232 R>block0[n] = last+1;4233 last += iv>length()2;4234 4238 R>block1[n] = last; 4235 4239 break; … … 4249 4253 if (R>block0[n]>R>block1[n]) return TRUE; 4250 4254 if (rCheckIV(iv)) return TRUE; 4255 for(i=R>block0[n];i<=R>block1[n];i++) 4256 { 4257 if (weights[i]==0) weights[i]=typ; 4258 } 4251 4259 break; 4252 4260 case ringorder_S: … … 4263 4271 { 4264 4272 R>wvhdl[n][i2]=(*iv)[i]; 4265 if ((*iv)[i]<0) typ=1; 4273 last++; 4274 if (weights[last]==0) weights[last]=(*iv)[i]*typ; 4266 4275 } 4276 last=R>block0[n]1; 4267 4277 break; 4268 4278 case ringorder_a64: … … 4275 4285 { 4276 4286 w[i2]=(*iv)[i]; 4277 if ((*iv)[i]<0) typ=1; 4287 last++; 4288 if (weights[last]==0) weights[last]=(*iv)[i]*typ; 4278 4289 } 4290 last=R>block0[n]1; 4279 4291 break; 4280 4292 } … … 4284 4296 if (Mtyp==0) return TRUE; 4285 4297 if (Mtyp==1) typ = 1; 4298 for(i=R>block0[n];i<=R>block1[n];i++) 4299 { 4300 if (weights[i]==0) weights[i]=typ; 4301 } 4286 4302 4287 4303 R>wvhdl[n] =( int *)omAlloc((iv>length()1)*sizeof(int)); … … 4332 4348 } 4333 4349 } 4334 R>OrdSgn = typ; 4350 // find OrdSgn: 4351 R>OrdSgn = 1; 4352 for(i=1;i<=R>N;i++) 4353 { if (weights[i]<0) { R>OrdSgn=1;break; }} 4354 omFree(weights); 4335 4355 return FALSE; 4336 4356 }
Note: See TracChangeset
for help on using the changeset viewer.