| @@ -128,16 +128,12 @@ protected: | |||||
| inline void InitBase() | inline void InitBase() | ||||
| { | { | ||||
| this->samples.SetSize(vec_t<int, 2>(N, N)); | |||||
| this->samples.SetSize(vec_t<int, 2>(N, N)); | |||||
| for (int i = 0 ; i < N ; ++i) | for (int i = 0 ; i < N ; ++i) | ||||
| { | { | ||||
| for (int j = i ; j < N ; ++j) | for (int j = i ; j < N ; ++j) | ||||
| { | { | ||||
| this->base[i][j] = sqrt((i+2)/((float)(2*i+2))) / (j > i ? i+2 : 1); | |||||
| this->base_inverse[i][j] = sqrt((2*j+2) / ((float)(j+2))) * (j > i ? (1 / (float)(j+1)) : 1); | |||||
| this->diagonal[i] += (this->base[i][j]); | |||||
| this->base[j][i] = sqrt((i+2)/((float)(2*i+2))) / (j > i ? i+2 : 1); | |||||
| this->base_inverse[j][i] = sqrt((2*j+2) / ((float)(j+2))) * (j > i ? (-1 / (float)(j+1)) : 1); | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| @@ -147,7 +143,6 @@ protected: | |||||
| arraynd<N, T> samples; | arraynd<N, T> samples; | ||||
| vec_t<T, N> diagonal; | |||||
| }; | }; | ||||
| } | } | ||||