| 110 | } |
| 111 | |
| 112 | shared_ptr<BaseSparseMatrix> Embedding :: CreateSparseMatrix() const |
| 113 | { |
| 114 | Array<int> ai(range.Size()), aj(range.Size()); |
| 115 | |
| 116 | for (int i = 0; i < range.Size(); i++) |
| 117 | { |
| 118 | ai[i] = range.First()+i; |
| 119 | aj[i] = i; |
| 120 | } |
| 121 | |
| 122 | if (IsComplex()) |
| 123 | { |
| 124 | Array<Complex> vals(range.Size()); |
| 125 | vals = 1.; |
| 126 | return SparseMatrix<Complex>::CreateFromCOO (ai, aj, vals, Height(), Width()); |
| 127 | } |
| 128 | else |
| 129 | { |
| 130 | Array<double> vals(range.Size()); |
| 131 | vals = 1.; |
| 132 | return SparseMatrix<double>::CreateFromCOO (ai, aj, vals, Height(), Width()); |
| 133 | } |
| 134 | } |
| 135 | |
| 136 | |
| 137 |
nothing calls this directly
no test coverage detected