| 238 | } |
| 239 | |
| 240 | fglmVector |
| 241 | idealFunctionals::addCols( const int var, int basisSize, const fglmVector v ) const |
| 242 | { |
| 243 | fglmVector result( basisSize ); |
| 244 | matHeader * colp; |
| 245 | matElem * elemp; |
| 246 | number factor, temp; |
| 247 | int k, l; |
| 248 | int vsize = v.size(); |
| 249 | |
| 250 | fglmASSERT( currentSize[var-1]+1 >= vsize, "wrong v.size()" ); |
| 251 | for ( k= 1, colp= func[var-1]; k <= vsize; k++, colp++ ) { |
| 252 | factor= v.getconstelem( k ); |
| 253 | if ( ! nIsZero( factor ) ) { |
| 254 | for ( l= colp->size-1, elemp= colp->elems; l >= 0; l--, elemp++ ) { |
| 255 | temp= nMult( factor, elemp->elem ); |
| 256 | number newelem= nAdd( result.getconstelem( elemp->row ), temp ); |
| 257 | nDelete( & temp ); |
| 258 | nNormalize( newelem ); |
| 259 | result.setelem( elemp->row, newelem ); |
| 260 | } |
| 261 | } |
| 262 | } |
| 263 | return result; |
| 264 | } |
| 265 | |
| 266 | fglmVector |
| 267 | idealFunctionals::multiply( const fglmVector v, int var ) const |
no test coverage detected