| 594 | using T_CoefficientFunction<DeterminantCoefficientFunction<D>>::Evaluate; |
| 595 | template <typename MIR, typename T, ORDERING ORD> |
| 596 | void T_Evaluate (const MIR & mir, |
| 597 | BareSliceMatrix<T,ORD> result) const |
| 598 | { |
| 599 | STACK_ARRAY(T, hmem, mir.Size()*D*D); |
| 600 | FlatMatrix<T,ORD> hv(D*D, mir.Size(), &hmem[0]); |
| 601 | c1->Evaluate (mir, hv); |
| 602 | |
| 603 | for (size_t i = 0; i < mir.Size(); i++) |
| 604 | { |
| 605 | Mat<D,D,T> hm; |
| 606 | for (int j = 0; j < D; j++) |
| 607 | for (int k = 0; k < D; k++) |
| 608 | hm(j,k) = hv(j*D+k, i); |
| 609 | result(0,i) = Det(hm); |
| 610 | } |
| 611 | } |
| 612 | |
| 613 | template <typename MIR, typename T, ORDERING ORD> |
| 614 | void T_Evaluate (const MIR & ir, |