jonathf/matlab2cpp

elseif not working in QMF_DOWN

aronandersson opened this issue · 2 comments

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;
}

Prøv nå.

Hvis det ikke fungerer, prøv å poste matlab-koden som forårsaket feilen.

Ok, det fungerar bättre nu. Det är samma matlab-kod som Bjørn skickade nyligen.