@@ -602,29 +602,29 @@ my $Nplans = 0;
602
602
603
603
604
604
# backward
605
- my $x64_back = irfft2($x64_ref -> slice(' :,0:3,:' ) );
605
+ my $x64_back = irfft2(PDL::czip( $x64_ref -> slice(' :,0:3,:' ) -> using(0,1) ) );
606
606
ok_should_make_plan( all( approx( $x64 , $x64_back , approx_eps_double) ),
607
607
" rfft 2d test - backward - 6,4 - output returned" );
608
608
609
609
$x64_back = zeros(6,4);
610
- irfft2($x64_ref -> slice(' :,0:3,:' ), $x64_back );
610
+ irfft2(PDL::czip( $x64_ref -> slice(' :,0:3,:' ) -> using(0,1) ), $x64_back );
611
611
ok_should_reuse_plan( all( approx( $x64 , $x64_back , approx_eps_double) ),
612
612
" rfft 2d test - backward - 6,4 - output in arglist" );
613
613
614
- my $x65_back = irfft2($x65_ref -> slice(' :,0:3,:' ) );
614
+ my $x65_back = irfft2(PDL::czip( $x65_ref -> slice(' :,0:3,:' ) -> using(0,1) ) );
615
615
ok_should_make_plan( all( approx( $x65 , $x65_back , approx_eps_double) ),
616
616
" rfft 2d test - backward - 6,5 - output returned" );
617
617
618
618
$x65_back = zeros(6,5);
619
- irfft2($x65_ref -> slice(' :,0:3,:' ), $x65_back );
619
+ irfft2(PDL::czip( $x65_ref -> slice(' :,0:3,:' ) -> using(0,1) ), $x65_back );
620
620
ok_should_reuse_plan( all( approx( $x65 , $x65_back , approx_eps_double) ),
621
621
" rfft 2d test - backward - 6,5 - output in arglist" );
622
622
623
- my $x74_back = irfft2($x74_ref -> slice(' :,0:3,:' ), zeros(7,4) );
623
+ my $x74_back = irfft2(PDL::czip( $x74_ref -> slice(' :,0:3,:' ) -> using(0,1) ), zeros(7,4) );
624
624
ok_should_make_plan( all( approx( $x74 , $x74_back , approx_eps_double) ),
625
625
" rfft 2d test - backward - 7,4" );
626
626
627
- my $x75_back = irfft2($x75_ref -> slice(' :,0:3,:' ), zeros(7,5) );
627
+ my $x75_back = irfft2(PDL::czip( $x75_ref -> slice(' :,0:3,:' ) -> using(0,1) ), zeros(7,5) );
628
628
ok_should_make_plan( all( approx( $x75 , $x75_back , approx_eps_double) ),
629
629
" rfft 2d test - backward - 7,5" );
630
630
}
@@ -639,7 +639,7 @@ my $Nplans = 0;
639
639
}
640
640
641
641
{
642
- eval { irfft1( sequence(2 ,4) ) };
642
+ eval { irfft1( sequence(cdouble ,4) ) };
643
643
ok_should_reuse_plan( ! $@ , " real ffts shouldn't work inplace - baseline backward" );
644
644
eval { irfft1( inplace sequence(2,4) ) };
645
645
ok( $@ , " real ffts shouldn't work inplace - backward" );
@@ -669,7 +669,7 @@ my $Nplans = 0;
669
669
eval { rfft4( sequence(5,4,4) ) };
670
670
ok( $@ , " real dimensionality: too few dimensions should fail" );
671
671
672
- eval { irfft4( sequence(2 ,5,3,4,4) ) };
672
+ eval { irfft4( sequence(cdouble ,5,3,4,4) ) };
673
673
ok_should_make_plan( ! $@ , " real-backward dimensionality baseline" );
674
674
675
675
eval { irfft4( sequence(5,4,4) ) };
@@ -700,28 +700,28 @@ my $Nplans = 0;
700
700
}
701
701
702
702
{
703
- eval { irfft4( sequence(2 ,3,3,4,4) ) };
703
+ eval { irfft4( sequence(cdouble ,3,3,4,4) ) };
704
704
ok_should_make_plan( ! $@ , " real-backward dimensionality baseline 1" );
705
705
706
- eval { irfft4( sequence(2 ,3,3,4,4), sequence(5,3,4,4) ) };
706
+ eval { irfft4( sequence(cdouble ,3,3,4,4), sequence(5,3,4,4) ) };
707
707
ok_should_make_plan( ! $@ , " real-backward dimensionality baseline 2" );
708
708
709
- eval { irfft4( sequence(2 ,3,3,4,4), sequence(5,3,4,4,3) ) };
709
+ eval { irfft4( sequence(cdouble ,3,3,4,4), sequence(5,3,4,4,3) ) };
710
710
ok_should_reuse_plan( ! $@ , " real-backward dimensionality baseline - extra dims should be ok" );
711
711
712
712
eval { irfft4( sequence(3,3,3,4,4,3), sequence(5,3,4,4) ) };
713
713
ok( $@ , " real-backward dimensionality - input should look like complex numbers" );
714
714
715
- eval { irfft4( sequence(2 ,3,3,4,3), sequence(5,3,4,4) ) };
715
+ eval { irfft4( sequence(cdouble ,3,3,4,3), sequence(5,3,4,4) ) };
716
716
ok( $@ , " real-backward dimensionality - different dims should break 1" );
717
717
718
- eval { irfft4( sequence(2 ,3,3,4,5), sequence(5,3,4,4) ) };
718
+ eval { irfft4( sequence(cdouble ,3,3,4,5), sequence(5,3,4,4) ) };
719
719
ok( $@ , " real-backward dimensionality - different dims should break 2" );
720
720
721
- eval { irfft4( sequence(2 ,3,3,4,4), sequence(4,3,4,4) ) };
721
+ eval { irfft4( sequence(cdouble ,3,3,4,4), sequence(4,3,4,4) ) };
722
722
ok_should_reuse_plan( !$@ , " real-backward dimensionality - slightly different complex dims still ok" );
723
723
724
- eval { irfft4( sequence(2 ,3,3,4,4), sequence(6,3,4,4) ) };
724
+ eval { irfft4( sequence(cdouble ,3,3,4,4), sequence(6,3,4,4) ) };
725
725
ok( $@ , " real-backward dimensionality - too different complex dims should break" );
726
726
}
727
727
}
@@ -793,7 +793,7 @@ my $Nplans = 0;
793
793
" parameterized forward real FFT works (1d on a 3d var)" );
794
794
795
795
# inverse on 2d -- should be a normalized forward on the non-transformed direction
796
- $c = irfftn($b ,2);
796
+ $c = irfftn(PDL::czip( $b -> using(0,1)) ,2);
797
797
$ctemplate = zeroes($a );
798
798
$ctemplate -> slice(' (0),:,(0)' ) .= 0.25;
799
799
ok_should_make_plan( all( approx( $c , $ctemplate , approx_eps_double) ),
0 commit comments