elseif not working in QMF_DOWN
aronandersson opened this issue · 2 comments
aronandersson commented
Elseif verkar inte fungera:
mat QMF_DOWN(mat x, vec h0, int dim)
{
int N, M, L0;
vec h0F, hh;
mat y;
N = x.n_rows;
M = x.n_cols;
L0 = m2cpp::length(h0);
if (dim == 1)
{
h0F = arma::fft(h0, N);
x = arma::fft(x, [], dim);
hh = h0F(span::all, arma::ones<vec>(M));
x = x%hh;
x = arma::ifft(x, [], dim);
y = x(m2cpp::<uvec>span(0, 2, N - 1), span::all);
y = circshift2D(y, -(L0)*1. / 4, dim);
}
lseif == 2;
h0F = arma::fft(arma::trans(h0), M);
x = arma::fft(x, [], dim);
x = x%h0F(arma::ones<mat>(N, 1), span::all);
x = arma::ifft(x, [], dim);
y = x(span::all, m2cpp::<uvec>span(0, 2, M - 1));
y = circshift2D(y, -(L0)*1. / 4, dim);
return y;
}
jonathf commented
Prøv nå.
Hvis det ikke fungerer, prøv å poste matlab-koden som forårsaket feilen.
aronandersson commented
Ok, det fungerar bättre nu. Det är samma matlab-kod som Bjørn skickade nyligen.