| 748 | */ |
| 749 | |
| 750 | virtual void NonZeroPattern (const class ProxyUserData & ud, |
| 751 | FlatVector<AutoDiffDiff<1,NonZero>> values) const override |
| 752 | { |
| 753 | Vector<AutoDiffDiff<1,NonZero>> v1(c1->Dimension()); |
| 754 | c1->NonZeroPattern (ud, v1); |
| 755 | /* |
| 756 | AutoDiffDiff<1,NonZero> sum(false); |
| 757 | for (int i = 0; i < v1.Size(); i++) |
| 758 | sum += v1(i); |
| 759 | values = sum; |
| 760 | */ |
| 761 | Mat<D,D,AutoDiffDiff<1,NonZero>> v1mat; |
| 762 | for (int i = 0; i < D; i++) |
| 763 | for (int j = 0; j < D; j++) |
| 764 | v1mat(i,j) = v1(i*D+j); |
| 765 | auto v2mat = Cof(v1mat); |
| 766 | for (int i = 0; i < D; i++) |
| 767 | for (int j = 0; j < D; j++) |
| 768 | values(i*D+j) = v2mat(i,j); |
| 769 | } |
| 770 | |
| 771 | virtual void NonZeroPattern (const class ProxyUserData & ud, |
| 772 | FlatArray<FlatVector<AutoDiffDiff<1,NonZero>>> input, |
nothing calls this directly
no test coverage detected