this.add(new LastComputeStage(1, N, W_re, W_im));
this.add(new LastComputeStage(1, N, W_re2, W_im2));
  public void init(final int N, final int logN, final float W_re[], final float W_im[])   {    /* The logN computation stages followed by a bit-reversal phase.      * For more info on indexing "roots of unity" array W[], see ComputeStage class.     *       * (The first and last fft stages need special care bcoz - If we use       * the same ComputeStage class, it will result in a splitjoin with only one branch!)       */     /* the first ComputeStage - 1 bflygrp with N/2 bflies */     this.add(new ButterflyGroup(W_re[0], W_im[0], N/2));       /* the middle ComputeStages - N/2i bflygrps with i bflies each */     for (int i=(N/4); i>1; i=i/2)       this.add(new ComputeStage(i, N, W_re, W_im));     /* the last ComputeStage - N/2 bflygrps with 1 bfly each */     this.add(new LastComputeStage(1, N, W_re, W_im));     /* the bit-reversal phase */     this.add(new BitReverse(N, logN));   } 