I'm glad someone was able to help you out.
Does anyone know why his code didn't work, though? He got docs on a
shiftleft function, so it's supposed to work, right?
It looks to me like perl is picking another shiftleft sub, rather than
the PDL one when he uses the () in the call. If he leaves it out, he
gets the PDL usage doc.
If that is the problem, then this should also work (and if it does, then
we'll know what the real problem is):
perldl> $c = $a->shiftleft($b, 0);
Please give it a shot and let me know if that works or not.
Thanks,
Judd
On Wed, 2008-04-09 at 15:22 -0400, Art Davis wrote:
> Excellent. Problem solved (and education furthered). Thanks for the
> rapid answers!
>
> --Art
>
> On Wed, Apr 9, 2008 at 3:11 PM, Craig DeForest
> <[EMAIL PROTECTED]> wrote:
> Sorry, am stealing minutes from a meeting. That is a roll-
> left operation. For a shift-left, you would just want a
> different boundary condition:
>
> $cs = $a->range($b,[$a->dims],'t');
>
>
>
> On Apr 9, 2008, at 3:06 PM, Craig DeForest wrote:
> You can use range for that:
> $a = sequence(5)
> $b = pdl(1);
> $c = $a->range($b,[$a->dims],'p');
>
>
>
> On Apr 9, 2008, at 3:00 PM, Art Davis wrote:
>
> I haven't been able to make shiftleft work the
> way I want it. It may not even be the right
> command, I can't understand the POD
> documentation for it.
>
> What I want:
> perldl> $a=sequence(5); p$a;
> [ 0 1 2 3 4 ]
> perldl> $c=<some PerlDL syntax on $a>; p$c;
> [ 1 2 3 4 0 ]
>
> What I've tried:
> perldl> $a=sequence(5); $b=pdl(1);
> perldl> $c=shiftleft($a,$b,0);
> Undefined subroutine &main::shiftleft called
> perldl> $c = shiftleft $a, $b, 0;
> Usage: PDL::shiftleft(a,b,c,swap) (you may
> leave temporaries or output variables out of
> list)
> perldl> $c = $a << $b; p$c;
> [0 2 4 6 8]
> perldl> $a->inplace->shiftleft($b,0); p$a;
> [0 2 4 6 8]
>
> Making $b a Perl scalar doesn't seem to help.
>
> Can someone explain and/or provide a full
> example of the usage of shiftleft and/or
> provide a tip for shifting an array?
>
> ActivePerl 5.10
> PDL 2.4.3
>
>
> Thanks!
> --Art
> _______________________________________________
> Perldl mailing list
> [email protected]
> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
>
>
>
>
> _______________________________________________
> Perldl mailing list
> [email protected]
> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
--
____________________________
Judd Taylor
Software Engineer
Orbital Systems, Ltd.
3807 Carbon Rd.
Irving, TX 75038-3415
[EMAIL PROTECTED]
(972) 915-3669 x127
_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl