Patrick,
This (your problem with t_lookup, below) is a long-standing known
issue - a mistaken call to "dims" rather than "dim" that screws up one
of the tests in t_lookup. I've uploaded to the PDL CVS tree a fix for
that and also some table-inversion code that has been moldering on my
hard drive for a long time.
The upshot: if you download the latest CVS tree and compile that, the
demo should work. The table inversion code has been moldering because
it is craptacularly slow -- it is the brutest of brute force
algorithms and is O(total_table_size^2), which is why it has been
moldering so long. I've been meaning to write a faster fit-each-point
algorithm for a long time, but haven't had a strong enough itch.
Cheers,
Craig
On Mar 26, 2008, at 2:47 PM, Elebert, Patrick via RT wrote:
Show quoted text>
> Wed Mar 26 16:47:10 2008: Request 34454 was acted upon.
> Transaction: Ticket created by P.Elebert@ucc.ie
> Queue: PDL
> Subject: PDL::Transform t_lookup
> Broken in: (no value)
> Severity: (no value)
> Owner: Nobody
> Requestors: P.Elebert@ucc.ie
> Status: new
> Ticket <URL:
http://rt.cpan.org/Ticket/Display.html?id=34454 >
>
>
> Hi,
>
> I hope this is the right address to send this to.
>
> I've been trying to use t_lookup in PDL::Transform to work,
> but it's giving me problems - perhaps there is a known bug,
> but I couldn't find anything on cpan or perlmonks about it.
>
> To replicate it, just copy the 4 lines from the documentation
> page on cpan (
http://search.cpan.org/~csoe/PDL-2.4.3/Lib/Transform/transform.pd#t_lookup
> )
>
> i.e.
>
> $a = rfits('m51.fits');
> $lookup = xvals(256,256) -> cat( 10**(yvals(256,256)/100) *
> 256/10**2.55 );
> $t = t_lookup($lookup);
> $b = $t->map($a);
>
> The error that is returned is after the last line:
>
> PDL: Too many dims (3) for your table (2)
> Caught at file (eval 119), line 4, pkg main
>
> I have also tried with simpler piddles, with the same result. I also
> re-installed PDL, but
> it didn't make any difference.
>
> Thanks and regards,
> Patrick Elebert.
>
> Hi,
>
> I hope this is the right address to send this to.
>
> I've been trying to use t_lookup in PDL::Transform to work,
> but it's giving me problems - perhaps there is a known bug,
> but I couldn't find anything on cpan or perlmonks about it.
>
> To replicate it, just copy the 4 lines from the documentation
> page on cpan (
http://search.cpan.org/~csoe/PDL-2.4.3/Lib/Transform/transform.pd#t_lookup
> )
>
> i.e.
>
> $a = rfits('m51.fits');
> $lookup = xvals(256,256) -> cat( 10**(yvals(256,256)/100) *
> 256/10**2.55 );
> $t = t_lookup($lookup);
> $b = $t->map($a);
>
> The error that is returned is after the last line:
>
> PDL: Too many dims (3) for your table (2)
> Caught at file (eval 119), line 4, pkg main
>
> I have also tried with simpler piddles, with the same result. I also
> re-installed PDL, but
> it didn't make any difference.
>
> Thanks and regards,
> Patrick Elebert.
>
> _______________________________________________
> Perldl mailing list
> Perldl@jach.hawaii.edu
>
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl