เบเบตเปเปเบกเปเบเบเปเบฒเบชเบฑเปเบ PDL::Indexingp เบเบตเปเบชเบฒเบกเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเปเบเปเปเบ OnWorks เบเบนเปเปเบซเปเบเปเบฅเบดเบเบฒเบเปเบฎเบเบเบดเปเบเบเบฃเบตเปเบเบเปเบเปเบซเบเบถเปเบเปเบเบซเบผเบฒเบเปเบเปเบญเบเปเบฎเบฑเบเบงเบฝเบเบญเบญเบเปเบฅเบเปเบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบเบฑเปเบ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator
เปเบเบเบเบฒเบ:
NAME
PDL::Indexing - เบเบฒเบเปเบเบฐเบเบณเบเบฒเบเบชเปเบฒเบเบเบฑเบเบชเบฐเบเบต เปเบฅเบฐเบเบฒเบเบเบฑเบเบเบดเปเบเบชเปเบงเบ piddles.
เบเบฒเบเบฅเบงเบก
เบซเบเปเบฒเบเบนเปเบเบฒเบเบเบตเปเบเบงเบเบเบฐเปเบฎเบฑเบเบซเบเปเบฒเบเบตเปเปเบเบฑเบ tutorial เบเปเบฒเบญเบดเบเบเปเบฝเบงเบเบฑเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบฅเบฐเบฅเบฑเบเบชเบฐเบเบฐ threading เบเบญเบ
PDL.
เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเบเบฒเบชเบฒ vectorized เบเบฑเบเบซเบกเบปเบ, PDL เบญเบฑเบเบเบฐเปเบเบกเบฑเบ looping over arrays เปเบเบเปเบเป variant เบเบญเบ
notation vector เบเบฐเบเบดเบเบชเบฒเบ. เบเบฒเบ looping เบญเบฑเบเบเบฐเปเบเบกเบฑเบเปเบกเปเบเปเบญเบตเปเบเบงเปเบฒ "threading", เปเบเบเบฒเบเบชเปเบงเบ
เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒเปเบเบเบตเปเบชเบธเบ PDL เบเบฐเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเบธเบเปเบเปเบเบเบฐเบซเบเบฒเบเปเบเบทเปเบญเปเบฅเบฑเปเบ loops.
เบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเปเบฅเบฐเบเบฐเบฅเบฑเบเบเบฒเบเบซเบผเบฒเบเบเบญเบ PDL เบเบถเปเบเบเบฑเบเบฅเบฑเบเบชเบฐเบเบฐเบเบฑเบเบชเบฐเบเบตเปเบฅเบฐเบเบฐเบเบนเปเบเบญเบ
เบเบฒเบเบเบฐเบซเบเบฒเบ Perl. เบเบฑเบเบชเบฐเบเบตเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบปเปเบฒเปเบเบดเบเบเปเปเบกเบนเบเบเบญเบ piddle เบเบตเปเบกเบตเบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเบซเบผเบฒเบ
เบเบฒเบ. Threading เบชเบฐเบซเบเบญเบ vectorization เบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบญเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเบฒเบเบเบฒเบ.
เบเปเบฒเบเบญเบ piddle เบเบทเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบงเปเบขเปเบฒเบเปเบซเบเปเบเบซเบเบฒเปเบเบฑเบเบเปเบฒเบเบตเปเบเบดเบกเบขเบนเปเปเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบฝเบง,
เบเปเปเปเบกเปเบ (เปเบเบเบฑเบเบเบตเบฅเบฒเบเบเบฒเบ Perl เบเบปเบเบเบฐเบเบด) เปเบเบฑเบเปเบเปเบฅเบฐ Perl scalar.
เปเบเบเบฒเบเบชเปเบงเบเบเบตเปเบเบฐเบเบดเบเบฑเบเบเบฒเบก "เบงเบดเบเบตเบเบฒเบ" เบเปเบฒเบเบงเบเบซเบผเบฒเบเบเบทเบเปเบญเบตเปเบเบญเบญเบ - เปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบ Perl เบเบตเป
เบเบณเปเบเปเบเบฑเบ PDLs. เบเบฒเบ perldl (เบซเบผเบท pdl2) shell, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบญเบเบซเบฒเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเปเบเปเบฅเบฐเบงเบดเบเบตเบเบฒเบ
เปเบเบเบเบฒเบเบเบดเบก "?" เบเบดเบเบเบฒเบกเบเปเบงเบเบเบทเปเบงเบดเบเบตเบเบฒเบ.
เบเบฐเบซเบเบฒเบ เบฅเบฒเบเบเบฒเบ
piddle (เบเบปเบงเปเบ PDL), เปเบเบเบเบปเปเบงเปเบ, เปเบกเปเบ N-dimensional array เบเบตเป N เบชเบฒเบกเบฒเบเปเบเบฑเบ 0 (เบชเปเบฒเบฅเบฑเบ a
scalar), 1 (เบเบปเบงเบขเปเบฒเบเบชเปเบฒเบฅเบฑเบเบเบปเบงเบขเปเบฒเบเบชเบฝเบ), เบซเบผเบทเบเปเบฒเบเบตเปเบชเบนเบเบเบงเปเบฒเบชเปเบฒเบฅเบฑเบเบฎเบนเบเบเบฒเบเปเบฅเบฐเบชเบฐเบฅเบฑเบเบชเบฑเบเบเปเบญเบเบซเบผเบฒเบ
เปเบเบเบชเปเบฒเบ. เปเบเปเบฅเบฐเบกเบดเบเบดเบเบญเบ piddle เบกเบตเบเบฐเบซเบเบฒเบเบเปเบฒเบเบงเบเบเบงเบ. "perl"
เบเบฒเบเบเบฒเบชเบฒเบเบฐเบเบดเบเบฑเบเบเปเปเปเบเปเบฅเบฐ piddle เปเบเบฑเบเบเบฐเปเบเบเบเบดเปเบชเบเบเบญเบ Perl scalar (เบงเบฑเบเบเบธ Perl เบเบตเปเปเบเปเบฎเบฑเบเบเบญเบ,
เบเบปเบงเบเบดเบเปเบฅเปเบง - เปเบเปเบเปเบฒเบเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบเบฎเบนเปเบงเปเบฒเบเบฐเปเบเปเบเบงเบเบกเบฑเบ) เบเบตเปเบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเบเบธเบเบเปเบญเบเบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเป
เปเบญเบปเบฒ scalar เบเบปเบเบเบฐเบเบด.
เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฐเบซเบเบฒเบเบเบญเบ piddle เปเบเบฑเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเป Perl เปเบฅเบฐเบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบเบเปเบฒเบเบปเบเบเบฐเบซเบเบฒเบ
เบเบญเบ piddle เบเบตเปโเบกเบตโเบซเบผเบฒเบโเบงเบดโเบเบตโเบเบฒเบโ. เบชเบดเปเบเบเบตเปเบชเปเบฒเบเบฑเบเปเบกเปเบ:
nelem - เบเบณเบเบงเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเปเบปเบเปเบ PDL
ndims - เบเบญเบเบเปเบฒเบเบงเบเบเบฐเบซเบเบฒเบเปเบ PDL
dims - เบชเบปเปเบเบเบทเบเบฅเบฒเบเบเบฒเบเบกเบดเบเบดเบเบญเบ PDL เปเบเบฑเบเบฅเบฒเบเบเบทเป Perl
dim - เบเบญเบเบเบฐเปเบฒเบเบเบญเบเบกเบดเบเบดเบชเบฐเปเบเบฒเบฐเบเบญเบ PDL
Indexing เปเบฅเบฐ เบเบฐเปเบชเบเปเปเบกเบนเบ
PDL เบฎเบฑเบเบชเบฒเปเบเบงเบเบดเบเบเบญเบ "เบเบฒเบเปเบซเบฅเบเบญเบเบเปเปเบกเบนเบ" เบฅเบฐเบซเบงเปเบฒเบ piddle เปเบฅเบฐ indexed subfields เบเบญเบเบเบฑเปเบ
เบเบดเบง. เปเบกเบทเปเบญเบเปเบฒเบเบเบฐเบฅเบดเบ indexed subfield เบซเบผเบทเบญเบปเบเบเบฐเบเบญเบเบเบฝเบงเบเบญเบ piddle เบเปเปเปเบกเป, เปเบเป
เปเบเบฑเบ เปเบฅเบฐ เบเปเปเปเบกเปเบเบฑเบเบเบปเบเบเบดเบเบขเบนเปเบเบปเบเบเบงเปเบฒเปเบเบปเปเบฒเบเบฐเบเบฑเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเปเบเบปเบฒเปเบเบปเปเบฒเปเบญเบ. เบเบตเปเปเบฎเบฑเบเปเบซเปเบเปเบฒเบ
เปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบเปเปเบกเบนเบเบเบฝเบงเบเบฑเบเบงเบดเบเบตเบเบฒเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเบเบฒเบเปเบเบฅเบฐเบซเบฑเบเบเบญเบเบเปเบฒเบ - เบเบปเบงเบขเปเบฒเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบดเบเบฒเบฅเบฐเบเบฒ
เบฎเบนเบเบเบฒเบ RGB เบเปเบญเบกเบเบฑเบเปเบเบฑเบเบเบธเบเบเบญเบเบเปเบฒ (R,G,B) เปเบเบฎเบนเบ 3 x 1000 x 1000,
เปเบฅเบฐเปเบเบฑเบเบชเบฒเบกเปเบเบ 1000 x 1000 เบเบปเบเบชเบตเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบงเปเปเบเบเบปเบงเปเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ. เบเบฒเบเบเบฑเบเบเบธเบ
เบเบปเบงเปเบเปเบเปเบเบตเปเบเปเบฝเบเปเบเบเบเบงเบฒเบกเบเบปเบเบเปเบฒเบเบตเปเบเบดเบเบเบฑเบ, เปเบฅเบฐเบเบฒเบเบเปเบฝเบเปเบเบเปเบกเปเบเบชเบฐเบเปเบญเบเปเบซเปเปเบซเบฑเบเปเบเบเบฑเบเบซเบกเบปเบ
เบเบฒเบเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบเปเปเบกเบนเบ.
เบกเบตเบชเบญเบเบงเบดเบเบตเบเบตเปเบชเปเบฒเบเบฑเบเบเบตเปเบเปเบงเบเปเบซเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเปเบเบทเปเบญเบกเบเปเป dataflow เบฅเบฐเบซเบงเปเบฒเบเปเบเบฑเบเบเปเบญเบ
เปเบฅเบฐ PDL เบเบญเบเบเปเปเปเบกเป:
เบชเบณเปเบเบปเบฒ - เบเบฑเบเบเบฑเบเปเบซเปเบชเบณเปเบเบปเบฒ PDL เบขเปเบฒเบเบเบฐเปเบเปเบ
sever - เบเปเบฒเบฅเบฒเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเปเปเบกเบนเบเบฅเบฐเบซเบงเปเบฒเบ PDL เบเบฑเบเบเปเปเปเบกเปเบเบญเบเบกเบฑเบ (เบเปเบฒเบกเบต)
เบเบฐเบเบนเป เปเบฅเบฐ เบเบฐเบซเบเบฒเบ เบเปเบฒโเบชเบฑเปเบ
เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบ PDL เบชเปเบงเบเปเบซเบเปเบเบฐเบเบดเบเบฑเบเบขเบนเปเปเบเบเบฐเบซเบเบฒเบเบเปเบฒเบเบงเบเบซเบเปเบญเบเบเปเบฒเบญเบดเบเบเบญเบเบเบฒเบเปเบเปเบเบฝเบ piddle เบเบญเบเบเบงเบเปเบเบปเบฒ. เบชเปเบฒเบฅเบฑเบ
เบเบปเบงเบขเปเบฒเบ, "sumover" sums เบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบเบเบฒเบกเบกเบดเบเบดเบเปเบฒเบญเบดเบเปเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเป (เบกเบดเบเบด 0).
เบเปเบฒโเบซเบฒเบโเบงเปเบฒโเบเปเบฒเบโเบญเบฒโเบซเบฒเบโเปเบ piddle เบชเบฒเบกโเบกเบดโเบเบดโเบฅเบฐโเบเบฑเบโ, เบซเบผเบฑเบโเบเบฒเบโเบเบฑเปเบโเบกเบดโเบเบดโเบเปเบฒโเบญเบดเบโเปเบกเปเบโเบเบดโเบเบฒโเบฅเบฐโเบเบฒโเปเบเปโ
เบกเบดเบเบด "เบเบฒเบเปเบเบทเปเบญเบเปเบซเบง" เปเบฅเบฐเบเบฐเบซเบเบฒเบเบเปเปเบกเบฒเปเบกเปเบเบเบฐเบซเบเบฒเบ "เบเบฐเบเบนเป" เปเบเบฒเบฐเบงเปเบฒเบเบงเบเปเบเบปเบฒเปเบกเปเบ
เบเบฝเบเปเบเป looped เบซเบผเบฒเบเบเบงเปเบฒ. เบกเบตโเบซเบผเบฒเบโเบงเบดโเบเบตโเบเบตเปโเบเบฐ transpose เบซเบผเบท Reโ-order เบเบฑเบโเบเบตโเบฅเบฒเบโเบเบฒเบโเบกเบดโเบเบดโเบเบญเบโเปเบกเปเบโ
PDL. เปเบเบฑเบเบเบดเบเปเบซเบผเบปเปเบฒเบเบฑเปเบเปเบกเปเบเปเบงเบซเบผเบฒเบเบเบฑเบเบเบฑเปเบเปเบเปเบเบงเบเปเบเบปเบฒเบเปเปเปเบเปเปเบเบฐเบเปเบญเบเบเปเปเบกเบนเบเบเบทเปเบเบเบฒเบ, เปเบเบปเปเบฒเบเบฑเปเบ
เบเปเบฝเบเบงเบดเบเบตเบเบตเป PDL เปเบเบปเปเบฒเปเบเบดเบเบเปเปเบกเบนเบ. เบซเบเปเบฒเบเบตเปเบเปเบฒเบชเบฑเปเบเบเบฐเบซเบเบฒเบเบเบปเปเบเบเปเปเบกเปเบ:
mv - เบเปเบฒเบเบกเบดเบเบดเปเบเปเบถเปเบเปเบเบเปเบญเบเบญเบทเปเบเปเบเบฅเบฒเบเบเบฒเบเบกเบดเบเบด
xchg - เปเบฅเบเบเปเบฝเบเบชเบญเบเบกเบดเบเบดเปเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบกเบดเบเบด, เบเปเบญเบเปเบซเปเบชเปเบงเบเบเบตเปเปเบซเบผเบทเบญเบขเบนเปเบเบปเบเบเบฝเบง
reorder - เบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโเบเบฒเบโเบเบฐโเบชเบปเบกโเบเบฐโเบฅเบดเบโเบเบฐโเบเบฑเบโเบเบฐโเบซเบเบฒเบโ
clump - clumps เปเบเบปเปเบฒโเบเบฑเบโเบชเบญเบโเบเบฐโเบซเบเบฒเบโเบเปเบญเบโเบซเบผเบทโเบซเบผเบฒเบโเบเบงเปเบฒโเปเบเบฑเบโเบซเบเบถเปเบโเบเบฐโเบซเบเบฒเบโเปเบซเบเปโเบเบงเปเบฒโ
เบเบตเบ - เบเปเบฒเบเบฑเบเบเบฐเบซเบเบฒเบเปเบเปเบเบญเบเบเบฐเบซเบเบฒเบ 1
เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบ เปเบฅเบฐ dummy เบเบฐเบซเบเบฒเบ
ยท เปเบญเบเบฐเบชเบฒเบเบฅเบฐเบเบฑเบ Perl threading
ยท threadids
ยทเบเบฑเบเบเบธเบเปเบฅเบฐเบฅเบฒเบเบฅเบฐเบญเบฝเบเบเบตเปเบเบทเบเบเปเบญเบเบเบญเบ slice
ยทเบเบฑเบเบเบฑเบเปเบซเบกเปเปเบ slice.pd (affine, lag, splitdim)
ยท reworking เบเบญเบเบงเบฑเบเบเปเบฝเบงเบเบฑเบเบเบฒเบ threading explicit
Indexing เปเบฅเบฐ เบเบฐเบเบนเป เบเบฑเบ PDL
เบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเปเบฅเบฐเบเบฐเบฅเบฑเบเบเบฒเบเบซเบผเบฒเบเบเบญเบ PDL เปเบกเปเบเบญเบตเบเปเบชเปเบเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบฅเบฐเบฅเบฑเบเบชเบฐเบเบฐเบเบญเบเบเบฒเบ looping เบเบญเบ
เบเบฒเบเบเบฐเบซเบเบฒเบ Perl. เบเบฑเบเบชเบฐเบเบตเบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบปเปเบฒเปเบเบดเบเบเปเปเบกเบนเบเบเบญเบเบงเบฑเบเบเบธ pdl เบเบตเปเบกเบตเบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเบซเบผเบฒเบ
เบเบฒเบ. Threading เบชเบฐเบซเบเบญเบเบเบฒเบเบเปเบฒเบเบฒเบเบเบญเบ looping implicit เบเบฐเบชเบดเบเบเบดเบเบฒเบ (เบเบฑเบเบเบฑเปเบเปเบเป loops เปเบกเปเบ
เบเบฐเบเบดเบเบฑเบเปเบเบฑเบเบฅเบฐเบซเบฑเบ C เบเบตเปเบเบตเบเบตเปเบชเบธเบ).
เบงเบฑเบเบเบธ Pdl (เบเปเปเบกเบฒเปเบญเบตเปเบเบงเปเบฒ "pdls") เปเบกเปเบเบงเบฑเบเบเบธ Perl เบเบตเปเปเบเบฑเบเบเบปเบงเปเบเบเบซเบผเบฒเบเบกเบดเบเบด
arrays เปเบฅเบฐเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเบฝเบงเบเบฑเบเบชเบดเปเบเปเบซเบผเบปเปเบฒเบเบฑเปเบ. เบเบปเบเบเบฑเบเบเปเบฒเบกเบเบฑเบเปเบเบ Perl @x เปเบเบเบเปเบฒเบเบเบฒเบเบฅเบฒเบเบเบทเปเบเปเปเบกเบนเบ array
เบเบทเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบงเปเบขเปเบฒเบเปเบซเบเปเบเบซเบเบฒเบขเบนเปเปเบเบเบฑเบเบเบฝเบงเบเบญเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบฑเปเบเบเบฑเปเบเบเบถเปเบเปเบเปเปเบงเบฅเบฒเปเบเบดเบเบเบงเบฒเบกเบเปเบฒเบซเบเปเบญเบเบซเบผเบฒเบเปเบฅเบฐ
เปเบฎเบฑเบเปเบซเปเบเบฒเบเบเปเบฒเปเบเปเบฅเบฐเบซเบฑเบ C เปเบงเปเบเบทเปเบญเบเบฐเบเบดเบเบฑเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบ (เปเบเบฑเปเบเบเบฒเบเปเบเบตเปเบกเปเบเบตเบก, เปเบฅเบฐเบญเบทเปเบเป) เปเบ pdls.
pdls เบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเป เบกเบต เปเบเบฑเบเบเปเบญเบ
เบชเบนเบเบเบฒเบเบเบญเบเบเบงเบฒเบกเบชเบฒเบกเบฒเบเบเบฑเบเบชเบฐเบเบตเบซเบผเบฒเบเบเบญเบ PDL เปเบกเปเบเบเบงเบฒเบกเบชเปเบฒเบเบฑเบเบเบญเบ "เบเปเปเปเบกเป" เปเบฅเบฐ
"เปเบเบฑเบเบเปเบญเบ" เบฅเบฐเบซเบงเปเบฒเบ pdls. เบซเบผเบฒเบเบเปเบฒเบชเบฑเปเบเบเบฑเบเบชเบฐเบเบตเบชเปเบฒเบ pdl เปเบซเบกเปเบเบฒเบ pdl เบเบตเปเบกเบตเบขเบนเปเปเบฅเปเบง.
pdl เปเบซเบกเปเปเบกเปเบ "เบฅเบนเบ" เปเบฅเบฐเบเบปเบเปเบเบปเปเบฒเปเบกเปเบ "เบเปเปเปเบกเป". เบเปเปเบกเบนเบเบเบญเบ pdl เปเบซเบกเปเปเบกเปเบ
เบเปเบฒโเบเบปเบโเปเบเบโเบเบฒเบโเบซเบฑเบโเปเบเบฑเบโเบเบตเปโเบฅเบฐโเบเบธโเบงเบดโเบเบตโเบเบฒเบโเบชเปเบฒเบ (เบเบญเบกโเบเบดเบงโเปเบเบตโ) เบเปเปโเบกเบนเบโเบเบญเบโเบเบปเบโเบเบฒเบโ
เบเปเปเบกเบนเบเบเบญเบเบเปเปเปเบกเป. เบเบงเบฒเบกเบชเปเบฒเบเบฑเบเบฅเบฐเบซเบงเปเบฒเบ pdl เบเบญเบเปเบเบฑเบเปเบฅเบฐเบเปเปเปเบกเปเบเบญเบเบกเบฑเบเบกเบฑเบเบเบฐเปเบเบฑเบเบชเบญเบเบเบดเบเบเบฒเบ,
เบเบถเปเบเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเบเบฒเบเบเปเบฝเบเปเบเบเบเบญเบเบเปเปเบกเบนเบเบเบญเบเปเบเบฑเบเบเบฐเบเบทเบเบเบฐเบซเบเบฒเบเบเบฑเบเบเบฑเบเบเปเปเปเบกเป. (เปเบฒเบเปเบซเบ: เปเบเบปเปเบฒ
เปเบเบดเปเบ, เบเบงเบเปเบฎเบปเบฒเบเปเบฒเบฅเบฑเบเบกเบธเปเบเปเบเบปเปเบฒเบซเบกเบฒเบเปเบเบเปเบฒเบชเบฑเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบเบชเบนเปเบฅเบฑเบเบชเบฐเบเบฐเบเบฒเบเปเบซเบฅเบเบญเบเบเปเปเบกเบนเบเปเบซเบกเป. เบเบฐเปเบเบ
เบเบญเบ dataflow เบเบตเปเบเบทเบเบเปเบฒเปเบเปเปเบเบเบเปเบฒเบชเบฑเปเบเบเบฑเบเบชเบฐเบเบต (เบเปเบฝเบงเบเบฑเบเบเบตเปเบเปเบฒเบเบเบฐเบฎเบฝเบเบฎเบนเปเปเบเบเบฒเบเบต)
เบชเบฐเปเบซเบกเบตเบขเบนเปเปเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบ, เบเปเปเบเบฝเบเปเบเปเปเบเปเบงเบฅเบฒเบเบตเปเบเปเบฒเบเปเบเปเบเปเบฝเบเบขเปเบฒเบเบเบฐเปเบเปเบเบเปเบฝเบงเบเบฑเบ dataflow เปเบ pdl เบเบญเบเบเปเบฒเบ
เปเบเบเปเบงเบปเปเบฒเบงเปเบฒ "$a->doflow". เบชเปเบฒเบฅเบฑเบเบเปเปเบกเบนเบเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเบเบฒเบเปเบซเบผเบเบญเบเบเปเปเบกเบนเบ, เปเบซเปเบเบงเบเปเบเบดเปเบ manflow data
เบซเบเปเบฒ.)
เบญเบตเบเบงเบดเบเบตเบซเบเบถเปเบเบเบตเปเบเบฐเบเบตเบเบงเบฒเบกเบซเบกเบฒเบ pdls เบเบตเปเบชเปเบฒเบเปเบเบเบเปเบฒเบชเบฑเปเบเบเบฑเบเบชเบฐเบเบตเบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบกเปเบเปเบเบดเปเบเบเบงเบเบกเบฑเบเปเบเบฑเบ a
เบเบฐเปเบเบเบเบญเบเบเบปเบงเบเบตเปเบญเบฑเบเบชเบฐเบฅเบดเบเบฐเบเบตเปเบเบตเปเปเบซเปเปเบซเบฑเบเบเบฒเบเบชเปเบงเบเบซเบผเบทเบเปเปเบกเบนเบเบเบฑเบเบซเบกเบปเบเบเบญเบเบเปเปเปเบกเปเบเบญเบเบกเบฑเบ.
เบเบฑเปเบเบเบฑเปเบ, เบกเบฑเบเบเปเปเปเบเบเปเบเบงเปเบฒเบเปเปเบกเบนเบเบเบญเบเบเปเปเปเบกเป (เบซเบผเบทเบชเปเบงเบเบซเบเบถเปเบเบเบญเบเบกเบฑเบ) เบเปเบฝเบเปเบเบเปเบกเบทเปเบญเปเบ
manipulated เบเปเบฒเบ "เบเบปเบงเบเบตเป". เบซเบผเบฑเบโเบเบฒเบโเบเปเปโเบชเบฑเบโเปเบเบโเปเบเบฐโเบเปเบฒโเปเบซเบผเบปเปเบฒโเบเบตเปโเบเบตเปโเบซเบงเบฑเบโเปเบเบฑเบโเบขเปเบฒเบโเบเบดเปเบโ
เบเบฝเบกโเบเบปเบงโเปเบเบปเปเบฒโเบชเบณโเบฅเบฑเบโเบชเบดเปเบโเบเบตเปโเบเบฐโเบกเบฒโเปเบเบดเบ (เปเบเบโเบเบตเปโเบเบฐโเปเบฎเบฑเบโเปเบซเปโเปเบเบปเปเบฒโเบชเบฑเบเบชเบปเบโเบซเบผเบฒเบ) เปเบฎเบปเบฒโเบเบฐโเปเบโเบเบณโเบเปเบณ
เบเบฑเบเบเบตเปเบฅเบฐเปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบเบเปเบฒเบญเบฐเบเบดเบเบฒเบเบเบญเบเบเปเบฒเบชเบฑเปเบเบเบฑเบเบชเบฐเบเบตเปเบฅเบฐเบเบฒเบเบเบปเบงเบขเปเบฒเบเบเบปเบเบเบฐเบเบด
เบงเบดเบเบตเบเบฒเบเบเบตเปเบเบงเบเปเบเบปเบฒเบญเบฒเบเบเบฐเบเบทเบเปเบเปเปเบเปเบเบเบเบฒเบ PDL. เบเบงเบเปเบฎเบปเบฒเบเบฐเบชเบฐเปเบเบเบเบปเบงเบเบตเป / dataflow เบเบทเปเบกเบญเบตเบ
เบเบฒเบเบเบฝเบเบเบฝเบเปเบเบชเบฐเบเบฒเบเบเบฒเบเบเบญเบเบเบฒเบเบเบปเบงเบขเปเบฒเบเบเปเปเบกเบฒ.
เบกเบตเบชเบญเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเบเบญเบเบเบงเบฒเบกเบชเปเบฒเบเบฑเบเบเบญเบ "เบเบปเบงเบเบตเป smart" เบเบตเป: เบเปเบฒเบญเบดเบ
เบซเบเบถเปเบ, เปเบเบดเปเบเปเบกเปเบเปเบฅเบฑเบเบเปเบญเบเบเปเบฒเบเบงเปเบฒเปเบเปเปเบฎเบฑเบเบงเบฝเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบซเบฑเบเปเบเบฑเบเบเบฝเบเปเบเปเปเบฎเบฑเบเปเบเป
เบเบฒเบเบซเบฑเบเบเปเบฝเบเปเบเปเปเบฒ เปเบฅเบฐ เบเบญเบเบซเบผเบฑเบเบเบฒเบกเบเบงเบฒเบกเบเบณเปเบเบฑเบ. เบญเบตเบเบญเบฑเบเบซเบเบถเปเบเปเบกเปเบเบเบดเบเบฒเบฅเบฐเบเบฒเปเบเบฑเบเบเปเบญเบ
piddle a ``virtualยด piddle, เปเบเบดเปเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบฝเบเปเบเป pointer เบเบฑเบเบเปเปเปเบกเปเปเบฅเบฐเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ
เบเปเปโเบกเบนเบโเปเบเบทเปเบญโเปเบซเปโเบเบดเบโเบเบฐโเบเปเบฒโเบเบตเปโเบเปเบฒโเปเบเป piddle เบเบญเบโเปเบเบฑเบโเปเบเปโเปเบเบโเบเบปเบโเปเบเบปเปเบฒโเปเบเบดเบโเบเปเปโเบกเบนเบโเปเบเปโ
เปเบเบเปเปเปเบกเป. เบเปเบฒ piddle เปเบชเบกเบทเบเบเบทเบเบกเบญเบเปเบซเปเปเบเบฑเบเบเบปเบเบเบฐเบเบดเบเบตเปเบเปเปเบชเบฒเบกเบฒเบเปเบเปเบกเบฑเบเปเบเป, PDL
เปเบเปเบเปเบชเบเบเบฒเบเบเบฐเบเบฒเบเบเบญเบ piddle virtual เบเปเบญเบเบเบตเปเบเบฐเบเปเบญเบเปเบซเปเบชเบดเปเบเบเบตเปเปเบเบฑเบเบเบฐเบเบณเปเบเปเบกเบฑเบ.
เปเบเบเบฑเบเบเบธเบเบฑเบ (1.94_01) เบเบฒเบเบซเบฑเบเบเปเบฝเบเบเบฑเบเปเบปเบเบเบตเปเปเบเบฑเบ ``affine'', เปเบเบฑเปเบ: เบเบฑเบเบเบฐเบเบตเบเบญเบเบเปเปเบกเบนเบ
เบฅเบฒเบเบเบฒเบเปเบ piddle เบเปเปเปเบกเปเบเบทเบเบเปเบฒเบเบปเบเปเบเบเบเบฒเบเบซเบฑเบเปเบเบฑเบเปเบชเบฑเปเบ (+ เบเบปเบเบเบตเป) เบเบฒเบ
เบเบปเบงเบเบตเปเบงเบฑเบเบเบญเบ piddle เปเบเบฑเบเบเปเบญเบเปเบฎเบฑเบเปเบซเป piddles virtual. เบเบธเบเปเบเบฒเบเบฐเบฅเบฒเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเบญเบทเปเบเป (เบเบปเบงเบขเปเบฒเบ
"->index(...)") เบชเบปเปเบเบเบปเบเปเบซเปเบกเบต piddles เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบ. เบเบธเบเปเบงเบฝเบเบเบตเปเบฅเบงเบเบฅเบงเบกเปเบเบ PP เบชเบฒเบกเบฒเบเบเบญเบกเบฎเบฑเบเปเบเป
piddles (เบเบปเบเปเบงเบฑเปเบเบเบฒเบเบเบปเบเบเบฐเบเบดเปเบซเบผเบปเปเบฒเบเบฑเปเบเบเบตเปเบเปเบฒเบเบเบปเบงเบเบตเปเปเบเบซเบฒเบซเบเปเบฒเบเบตเปเบซเปเบญเบเบชเบฐเบซเบกเบธเบเบเบฒเบเบเบญเบ).
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒเบเปเปเบงเปเบฒเบเบฒเบเบชเบดเปเบเบเบฒเบเบขเปเบฒเบเบกเบตเบเบงเบฒเบกเบเปเบฝเบงเบเปเบญเบเบซเบผเบทเบเปเปเบเปเปเบกเบตเบเบปเบเบเปเปเบเบงเบฒเบกเบซเบกเบฒเบเบเบญเบเบชเบดเปเบเบเบตเปเบเปเบฒเบเปเบฎเบฑเบ
เปเบเบเบฒเบเปเบเบเปเปเบเบฒเบก: เบเบฑเบเบชเบญเบ
$a->index(...) .= 5;
$a->slice(...) .= 5;
เบเปเบฝเบเบเปเปเบกเบนเบเปเบ $a. เปเบเบงเปเบเบเปเปเบเบฒเบก, เบเบงเบฒเบกเปเบเปเบเบดเบเบกเบตเบเบปเบเบเบฐเบเบปเบเบขเปเบฒเบเบซเบผเบงเบเบซเบผเบฒเบเบเปเปเบเบงเบฒเบกเบเบปเบเบเปเบฒ
เบเบฒเบโเบเปเบฒโเปเบเปโเปเบฅเบฐโเบเบฒเบโเบเบฐโเบเบดโเบเบฑเบโ.
เบเบดเปเบเบชเปเบงเบ pdls
เบญเบฒเบโเบเบฐโเปเบเบฑเบโเบเบฒเบโเบเปเบฒโเปเบเปโเบเบตเปโเบชเปเบฒโเบเบฑเบโเบเบตเปโเบชเบธเบโเบเบญเบโเปเบเบงโเบเบงเบฒเบกโเบเบดเบโเบเบญเบโเบเปเปโเปเบกเป / เบฅเบนเบ pdls เปเบกเปเบโ
เบเบฒเบเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบเปเบญเบเบชเบตเปเบซเบฅเปเบฝเบกเบเบญเบ pdl เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบเปเบเบ pdl virtual. เปเบเปเบกเบตเบเบฒเบเบชเบปเบเบเบฐเบเบฒ
เบเบฒเบงเบเบฝเบเบเปเบเปเบฝเบงเบเบฑเบเปเบเบงเบเบงเบฒเบกเบเบดเบเปเบซเปเปเบฎเบปเบฒเปเบเปเบชเบฐเปเบเบฒเบฐเบซเบผเบฒเบ. เบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเปเบฒเบฅเบฑเบเปเบฎเบฑเบเบงเบฝเบเบเบฑเบ 2D pdl
เปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบฎเบนเบเบเบฒเบ 5x5 (เบกเบฑเบเบกเบตเบเบฐเบซเบเบฒเบเบเปเบญเบเบเบดเบเบเบปเบเบเบฐเบเบดเบเบฑเปเบเบเบฑเปเบเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเบดเบกเบกเบฑเบเปเบเบเบเปเปเบกเบตเบเบฒเบเบเบทเปเบก
เบซเบเปเบฒโเบเปโเบเปเบฒโเบเบงเบโเบซเบเบถเปเบโเบเบตเปโเปเบเบฑเบกโเปเบโเบเปเบงเบโเบเบปเบงโเปเบฅเบ ;).
pdl> $im = เบฅเปเบฒเบเบฑเบ(5,5)
pdl> p $im
[
[ 0 1 2 3 4 ]
[ 5 6 7 8 9 ]
[10 11 12 13 14]
[15 16 17 18 19]
[20 21 22 23 24]
]
pdl> เบเปเบงเบ vars
เบเบปเบงเปเบ PDL เปเบเบเบธเบเบซเบผเบฑเบ::
เบเบทเปเบเบฐเปเบเบ Dimension Flow State Mem
-------------------------------------------------- --------------
$im Double D [5,5] P 0.20Kb
[เปเบเบเบตเปเบเบตเปเบกเบฑเบเบญเบฒเบเบเบฐเปเบซเบกเบฒเบฐเบชเบปเบกเบเบตเปเบเบฐเปเบงเบปเปเบฒเบขเปเบฒเบเปเบงเบงเบฒเบเปเบฝเบงเบเบฑเบเบเปเบฒเบชเบฑเปเบ "help vars" เบเบตเปเบชเบฐเบซเบเบญเบ
เบเปเปเบกเบนเบเบเปเบฝเบงเบเบฑเบ pdls เปเบเบเบฒเบเปเบเปเบเบญเบ "perldl" เบซเบผเบท "pdl2" shell เบเบตเปเบกเบฒเบเปเบญเบกเบเบฑเบ PDL. ]
เบเบญเบเบเบตเปเบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฒเบเบชเปเบฒเบ pdl 1-D เบเบตเปเบเบฝเบเปเบเปเบญเปเบฒเบเบญเบตเบเปเบชเบฑเปเบเบซเบเบถเปเบเบเบญเบเบฎเบนเบเบเบฒเบ, เปเบงเบปเปเบฒ
เปเบชเบฑเปเบ 2; เบซเบผเบท pdl เบเบตเปเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเปเบชเบฑเปเบเบเบนเปเบเบญเบเบฎเบนเบเบเบฒเบ (เบเบดเบเบเบฐเบเบฒเบเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฑเบเบเบฒเบเบเบฑเบ
เบเบญเบ เปเบฅเบฐ เบเบตเบ เบเบญเบ เบฎเบนเบ interlaced เปเบเบทเปเบญเบ เบเบฒเบ เบเบถเบ เบเบด เบเปเบฒ peculiar เบเบฒเบ เบขเปเบฒเบ เบเบญเบ เบเบฒ เบเบญเบ เบเบงเบ เปเบฎเบปเบฒ
grabber). เปเบเบเบฒเบเบฐเปเบเบฑเบเบเบฒเบเบชเบฐเบซเบกเบฑเบเปเบฅเบทเปเบญเบเปเบเบญเบ slices เบญเบทเปเบเบเบงเบเปเบฎเบปเบฒเบญเบฒเบเบเบฐเบเปเบญเบเบเบฒเบเบเบตเปเบเบฐเบชเปเบฒเบ pdl เบงเปเบฒ
เปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบเบฒเบเบเบทเปเบเบชเบตเปเบซเบผเปเบฝเบกเบกเบปเบเบเบญเบเบฎเบนเบเบเบตเปเบกเบตเบเปเบฒเบเปเบเบดเบเปเบฅเบฐเบฅเบธเปเบกเบเบตเปเบเบเบฑเบเบเบฑเบ. เบเบฑเบเปเบปเบเบเบตเป
เบเบปเบโเบเบฐโเบเบปเบ (เปเบฅเบฐโเบญเบทเปเบเปโเบเปเบฒโเบเบงเบโเบซเบผเบฒเบโ) เบชเบฒโเบกเบฒเบโเบเบฑเบโเบฅเบธโเปเบเปโเบขเปเบฒเบโเบเปเบฒเบโเบเบฒเบโเบเปเบงเบโเบเบฒเบโเบเปเบฒโเบเบฒเบ slice เบเบตเปโเบกเบตโเบญเปเบฒโเบเบฒเบโ:
pdl> $line = $im->slice(':,(2)')
pdl> $even = $im->slice(':,1:-1:2')
pdl> $area = $im->slice('3:4,3:1')
pdl> เบเปเบงเบ vars # เบซเบผเบทเบเบฝเบเปเบเป PDL->vars
เบเบปเบงเปเบ PDL เปเบเบเบธเบเบซเบผเบฑเบ::
เบเบทเปเบเบฐเปเบเบ Dimension Flow State Mem
-------------------------------------------------- --------------
$even Double D [5,2] -C 0.00Kb
$im Double D [5,5] P 0.20Kb
$line Double D [5] -C 0.00Kb
$area Double D [2,3] -C 0.00Kb
เบเบฑเบเบชเบฒเบก "เปเบเบฑเบเบเปเบญเบ" pdls เปเบกเปเบเปเบเบฑเบเบเปเบญเบเบเบญเบ $im เบซเบผเบทเปเบเบญเบตเบเบญเบฑเบเบซเบเบถเปเบ (เบเบฝเบเปเบเบปเปเบฒเบซเบผเบฒเบ)
เบเบฒเบเบเบตเบเบงเบฒเบกเปเบฒเบเบเบตเปเปเบเบซเบฒเบเปเปเบกเบนเบเบเบญเบ $im. เบเบฒเบเบเบฐเบเบดเบเบฑเบเปเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบ pdls virtual เปเบซเบผเบปเปเบฒเบเบฑเปเบเปเบเบปเปเบฒเบเบฑเปเบ
เบเบฒเบเบชเปเบงเบเปเบซเบผเบปเปเบฒเบเบฑเปเบเบเบญเบเบเปเปเบกเบนเบเบเบฒเบกเบเบตเปเบฅเบฐเบเบธเปเบงเปเปเบเบเบเบฒเบเปเบเปเบเบฝเบเบเบตเปเบเบฐเบเบฑเบ. เบเบฑเปเบเบเบฑเปเบเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเบดเบกเปเบเป
เปเบเบงเบเบต 2:
pdl> p $line
[10 11 12 13 14]
เปเบซเปเบชเบฑเบเปเบเบเบเบงเบฒเบกเปเบเบเบเปเบฒเบเปเบ "Flow State" เบเบญเบ $area เบเปเบฒเบเปเบเบดเบ เปเบฅเบฐเบเปเบฒเบเบฅเบธเปเบกเบเบตเป:
pdl> p $ เบเบทเปเบเบเบตเป
pdl> เบเปเบงเบ $area
เบเบปเบงเปเบเบเบตเปเปเบกเปเบ Double D [2,3] VC 0.00Kb
เบเปเปเปเบเบเบตเปเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเปเบฒ $im เปเบฅเบฐ $line เบเบฐเบเบดเบเบฑเบเบเบปเบงเบเบดเบเบเบฒเบกเบเบตเปเปเบเบปเปเบฒเบเบฒเบเบซเบงเบฑเบเบเบฒเบ a
เบงเบฑเบเบเบธเบเปเบฒเบเบเบทเบเบปเบงเบเบตเป (เบซเบผเบทเปเบเบฎเบนเบ dataflow: เบเบฒเบเบเปเบฝเบเปเบเบเปเบเบเปเปเบกเบนเบเบเบญเบ $line เปเบกเปเบ
เบเบฐเบซเบเบฒเบเบเบฑเบเบเบฑเบ $im):
pdl> $im++
pdl> p $line
[11 12 13 14 15]
pdl> $line += 2
pdl> p $im
[
[ 1 2 3 4 5 ]
[ 6 7 8 9 10 ]
[13 14 15 16 17]
[16 17 18 19 20]
[21 22 23 24 25]
]
เปเบซเปเบชเบฑเบเปเบเบเบงเบดเบเบตเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบ pdls virtual เบเบญเบเปเบเบฑเบเบเปเบญเบเบเปเบฝเบ pdl เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบเบเบญเบเบเปเปเปเบกเป
เปเบฅเบฐเปเบเบเบฒเบเบเบฑเบเบเบฑเบ (เบขเปเบฒเบเปเบเบเปเปเบเบฒเบก, เบเบทเปเบเบเบฒเบ "=" เบกเบญเบเบซเบกเบฒเบเบเปเปเปเบเป, เปเบเป ".=" เปเบเบทเปเบญเปเบซเปเปเบเปเบเบปเบเบเบฐเบเบปเบเบเบฑเปเบ.
เปเบเบดเปเบเบเปเบฒเบเบฅเบธเปเบกเบเบตเปเบชเปเบฒเบฅเบฑเบเปเบซเบเบเบปเบ). pdls เปเบเบฑเบ virtual เปเบกเปเบเบเบฒเบเบชเบดเปเบเบเบฒเบเบขเปเบฒเบเปเบเบฑเปเบ: "เบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบชเบปเบ" เบเบฑเบ
"เบเบปเปเบเบชเบฐเบเบฑเบ" pdl เบเปเปเปเบกเป. เบเบฑเปเบเบเบตเปเปเบเปเบเปเบฒเบงเบเปเบญเบเบซเบเปเบฒเบเบตเป, เบเบงเบเปเบเบปเบฒเบชเบฒเบกเบฒเบเบเบดเบเบงเปเบฒเบเบฐเปเบฎเบฑเบเบงเบฝเบเบเปเบฒเบเบเบทเบเบฑเบเบเบฑเบ a
เบเบปเบงเบเบตเป C. เปเบเปเบเบปเบเบเบฑเบเบเปเบฒเบกเบเบฑเบเบเบปเบงเบเบตเป C, เบเบงเบเปเบเบปเบฒเบกเบตเบเปเปเบกเบนเบเปเบเบตเปเบกเปเบเบตเบกเบซเบผเบฒเบ. เบเปเบญเบเบญเบทเปเบ เปเบปเบ, เบเบงเบเปเบเบปเบฒ
เบฅเบฐเบเบธเปเบเบเบชเปเบฒเบเบเบญเบเบเปเปเบกเบนเบเบเบตเปเบเบงเบเปเบเบปเบฒเปเบเบฑเบเบเบปเบงเปเบเบ (เบเบฐเบซเบเบฒเบเบเบญเบ pdl เปเบซเบกเป) เปเบฅเบฐ
เบญเบฑเบเบเบตเบชเบญเบ, เบเปเบฒเบเบปเบเบงเบดเบเบตเบเบฒเบเบชเปเบฒเบเปเบเบเบชเปเบฒเบเบเบตเปเบเบฒเบเบเปเปเบกเบนเบเบเปเปเปเบกเปเบเบญเบเบกเบฑเบ (เบงเบดเบเบตเบเบฒเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบ
เบเบทเบเบเบฑเบเบขเบนเปเปเบเบเบฒเบเปเบเบเบญเบ PDL เปเบฅเบฐเบเปเปเบชเปเบฒเบเบฑเบเบชเปเบฒเบฅเบฑเบเบเปเบฒเบเบเบตเปเบเบฐเบฎเบนเปเบขเปเบฒเบเปเบเบเปเปเบเบฒเบก (เปเบงเบฑเปเบเปเบชเบเปเบเปเบงเปเบฒเบเปเบฒเบ
เบเปเบญเบเบเบฒเบ hack เบซเบผเบฑเบเปเบเบญเบฐเบเบฒเบเบปเบเบซเบผเบทเบขเบฒเบเบเบฒเบเปเบเบฑเบ PDL guru เปเบเบเบเบปเปเบงเปเบ (เบชเปเบฒเบฅเบฑเบ a
เบเปเบฒเบเบดเบเบฒเบกเบเบญเบเบชเบฑเบเปเบเบเบเบตเปเปเบเบดเปเบ PDL:: เบเบฒเบเปเบ)).
เบเบปเบงเบขเปเบฒเบเบเบตเปเบเปเบฒเบเบกเบฒเปเบเปเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเปเบเบดเบเบเบฒเบเบเปเบฒเปเบเปเบเบปเบเบเบฐเบเบดเบเบญเบเบเบฑเบเบเบฑเบ slice. เบเบฑเบเบเบฑเปเบเปเบเป
เบเบฒเบเบเปเบฒเบเบฒเบเบเบญเบ slicing เบกเบตเบเบงเบฒเบกเบชเปเบฒเบเบฑเบเบซเบผเบฒเบเปเบเบเบตเปเบเบตเปเปเบกเปเบเบเปเบฒเบญเบฐเบเบดเบเบฒเบเบเบญเบ syntax เบชเปเบฒเบฅเบฑเบ string เปเบเป
argument เบเบฑเบ slice:
$vpdl = $a->slice('ind0,ind1...')
เบเปเบญเบเบเบตเป "ind0" เบเปเบฒเบเบปเบเบชเบดเปเบเบเบตเปเบเปเบญเบเปเบฎเบฑเบเบเบฑเบเบเบฑเบเบเบฐเบเบต No 0 เบเบญเบ pdl $a, เปเบฅเบฐเบญเบทเปเบเป. เปเบเปเบฅเบฐเบญเบปเบเบเบฐเบเบญเบเบเบญเบ
เบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบเบตเปเปเบเบเบเปเบงเบเปเบเบทเปเบญเบเปเบฒเบเบเบธเบเบชเบฒเบกเบฒเบเบกเบตเปเบถเปเบเปเบเบฎเบนเบเปเบเบเบเปเปเปเบเบเบตเป:
' : ' เปเบเปเบกเบดเบเบดเบเบฑเบเปเบปเบ
'n' เปเบเปเบเบฝเบเปเบเปเบเบฑเบเบเบฐเบเบต "n". เบเบฐเบซเบเบฒเบเบเบญเบเบเบฑเบเบเบฐเบเบตเบเบตเปเปเบ pdl virtual เบเบปเบเปเบเปเบฎเบฑเบเปเบกเปเบ 1.
เบเบปเบงเบขเปเบฒเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบฎเบนเบเปเบเบเบเบฑเบเบชเบฐเบเบตเบชเบญเบเบญเบฑเบเบเปเบฒเบญเบดเบ:
pdl> $column = $im->slice('2,:')
pdl> $row = $im->slice(':,0')
pdl> p $column
[
[เบเบต 3]
[เบเบต 8]
[15]
[18]
[23]
]
pdl> p $row
[
[1 2 3 4 5]
]
pdl> เบเปเบงเบ $column
เบเบปเบงเปเบเบเบตเปเปเบกเปเบ Double D [1,5] VC 0.00Kb
pdl> เบเปเบงเบ $row
เบเบปเบงเปเบเบเบตเปเปเบกเปเบ Double D [5,1] VC 0.00Kb
'(n)' เปเบเปเบเบฝเบเปเบเปเบเบฑเบเบเบฐเบเบต "n". เบเบฐเบซเบเบฒเบเบเบตเปเบเบทเบเปเบเบเบเปเบฒเบเบญเบญเบเบเบฒเบ pdl เบเบปเบเปเบเปเบฎเบฑเบ (เบญเบตเบเปเบชเป
เบเบงเบฒเบกเบเบดเบเบเบตเปเบงเปเบฒเบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบ 1 เบชเบฒเบกเบฒเบเบเบทเบเปเบเบเบเปเบฒเบเบญเบญเบเบชเบฐเปเบซเบกเบต). เบเบงเบฒเบกเปเบเบเบเปเบฒเบเบฅเบฐเบซเบงเปเบฒเบเบเบตเป
เบเปโเบฅเบฐโเบเบตโเปเบฅเบฐโเบเบตเปโเบเปเบฒเบโเบกเบฒโเบเบฒเบโเปเบเบฑเบโเบชเบดเปเบโเบชเปเบฒโเบเบฑเบโเปเบโเบเบฒเบโเบกเบญเบโเบซเบกเบฒเบโเบเบตเปโเบกเบทโเบเปเบฒเบโเปเบฅเบฐโเบเบงเบฒโ
เบเปเบฒเบเบเปเบฒเบเบเปเบญเบเบกเบตเบเบฐเบซเบเบฒเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก.
pdl> $line = $im->slice(':,(0)')
pdl> เบเปเบงเบ $line
เบเบปเบงเปเบเบเบตเปเปเบกเปเบ Double D [5] -C 0.00Kb
pdl> p $line
[1 2 3 4 5]
เบชเบฑเบเปเบเบเปเบซเบฑเบเบเบงเบฒเบกเปเบเบเบเปเบฒเบเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบเปเบฒเบเบกเบฒเบเป?
'n1:n2' or 'n1:n2:n3'
เปเบญเบปเบฒเบเบญเบเปเบเบเบเบญเบเบเบฑเบเบเบฐเบเบตเบเบฒเบ "n1" เบซเบฒ "n2" เบซเบผเบท (เบฎเบนเบเปเบเบเบเบตเบชเบญเบ) เปเบญเบปเบฒเบเบญเบเปเบเบเบเบญเบ
เบเบปเบงเบเบตเปเบงเบฑเบเบเบฒเบ "n1" เบซเบฒ "n2" เบเปเบงเบเบเบฑเปเบเบเบญเบ "n3". เบเบปเบงเบขเปเบฒเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฒเปเบเปเบฎเบนเบเปเบเบเบเบตเปเปเบกเปเบ
เบเปเบฒเบเบดเบเบฒเบกเบเบตเปเบเปเบฒเบเบกเบฒเบเบญเบเบฎเบนเบเบเบฒเบเบเปเบญเบเบเบฐเบเบญเบเบเปเบงเบเปเบชเบฑเปเบเบเบนเป.
pdl> $even = $im->slice(':,1:-1:2')
เบเบปเบงเบขเปเบฒเบเบเบตเปเบเบฑเบเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเปเบฒเบเบฑเบเบเบฐเบเบตเบเบฒเบเบฅเบปเบเปเบฎเบฑเบเบงเบฝเบเบเบทเบเบฑเบเบเบงเบเบกเบฑเบเบเบปเบเบเบฐเบเบด
เบญเบฒเปเบฃเปเบเบ Perl เปเบเบเบเบฒเบเบเบฑเบเบเบญเบเบซเบผเบฑเบเบเบฒเบเบเบธเบเบชเบดเปเบเบชเบธเบเบเบญเบเบกเบดเบเบด. เบเปเบฒ "n2" เปเบกเปเบ
เบเปเบญเบเบเบงเปเบฒ "n1" (เปเบเบเบปเบงเบขเปเบฒเบ -1 เปเบกเปเบเปเบเบปเปเบฒเบเบฑเบเบเบฑเบเบเบฐเบเบต 4) เบญเบปเบเบเบฐเบเบญเบเปเบ
virtual pdl เบเบทเบเบเบฑเบเบเบทเบเบขเปเบฒเบเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเปเบฝเบงเบเบฑเบเบเปเปเปเบกเปเบเบญเบเบกเบฑเบ.
'*[เบ]'
เปเบเบตเปเบกเบเบฐเบซเบเบฒเบ dummy. เบเบฐเปเบฒเบเบเบญเบเบเบฐเปเบฒเบเบเบตเปเบเบฐเปเบเบฑเบ 1 เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ เบซเบผเบทเปเบเบปเปเบฒเบเบฑเบ
"n" เบเปเบฒเบเบฒเบเปเบเปเบเบฝเบเบเบปเบงเปเบฅเบเบเบฒเบเปเบฅเบทเบญเบเปเบกเปเบเปเบซเป.
เบเบฝเบงเบเบตเป, เบเบตเปเปเบกเปเบเบชเบดเปเบเบเบตเปเปเบเบเบเบฐเบซเบผเบฒเบเปเบเปเปเปเบกเบทเปเบญเปเบซเบฑเบเบเบฑเปเบ เบเบณ เบญเบดเบ. dummy เปเบกเปเบเบซเบเบฑเบ
เบกเบดเบเบด? เบกเบดเบเบด dummy เปเบเบเบกเบดเบเบดเบเบตเปเบเปเปเปเบเบตเบเบกเบตเบกเบฒเบเปเบญเบ. เปเบเบงเปเบ
เปเบกเปเบเปเบฅเปเบงเบเป? เบเบต, เปเบเบเปเบฅเบฐเบเบตเบเบญเบเบเบฐเบซเบเบฒเบเปเบซเบกเปเบเบตเปเบกเบตเบเบฐเบซเบเบฒเบ 1 เบกเบฑเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเปเบเปเบฒเบ
เบญเบฐเบเบดเบเบฒเบเปเบเบเบงเบดเบเบตเบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฒเบเบปเบ vector (เบกเบตเบญเบปเบเบเบฐเบเบญเบ "m") เบเบฑเบ an
"(1,m)" เบซเบผเบท "(m,1)" matrix. เบญเบฑเบเบเบฝเบงเบเบฑเบเบเบทเปเบเปเบเบญเบเบชเปเบฒเบฅเบฑเบเบงเบฑเบเบเบธเบกเบดเบเบดเบฅเบฐเบเบฑเบเบเบตเปเบชเบนเบเบเบงเปเบฒ.
เบซเบเปเบฒเบชเบปเบเปเบเบซเบผเบฒเบเปเบกเปเบเบเปเบฅเบฐเบเบตเบเบญเบเบเบฐเบซเบเบฒเบ dummy เบเบญเบเบเบฐเบซเบเบฒเบเบซเบผเบฒเบเบเปเบงเบฒเบซเบเบถเปเบ (เบเบปเบงเบขเปเบฒเบ
"slice('*5, :')"). เบเบตเปเปเบฎเบฑเบเบงเบฝเบเปเบเบฅเบฑเบเบชเบฐเบเบฐเบเบฝเบงเบเบฑเบเบเบฑเบเบเบฒเบเปเบเบซเบฒเบซเบเปเบฒเบเบตเป dummy เบชเปเบฒเบ
เบเบฐเบซเบเบฒเบ dummy เปเบซเบกเป. เบชเบฐเบเบฑเปเบเบญเปเบฒเบเปเบฅเบฐเบเบงเบเปเบเบดเปเบเบเปเบฒเบญเบฐเบเบดเบเบฒเบเบเบญเบเบกเบฑเบเบเปเบฒเบเบฅเบธเปเบกเบเบตเป.
'([n1:n2[:n3]]=i)'
[เบเบฑเบเบเปเปเบเบฑเบเปเบเปเบเบฐเบเบดเบเบฑเบ ??????] เบเปเบงเบเบเบฒเบเปเบเปเบเบฝเบเปเบเบเบเบตเป เปเบเบปเปเบฒเปเบฎเบฑเบ เปเบเบเบเบปเปเบงเปเบ
เปเบชเบฑเปเบเบเบงเบฒเบ. เปเบเป diagonal เบเบฐเปเบเบฑเบเบกเบดเบเบด. "i" เบเบญเบ pdl เบเบปเบเบเบฐเบฅเบดเบเปเบซเบกเปเปเบฅเบฐ (เบเปเบฒ
เบชเปเบงเบเบเบฒเบเปเบฅเบทเบญเบเปเบเบงเบปเบเปเบฅเบฑเบเบเบตเปเบฅเบฐเบเบธเปเบงเป) เบเบฐเบเบฐเบซเบเบฒเบเปเบเบเบฒเบกเบเบญเบเปเบเบเบเบญเบเบเบฑเบเบเบฐเบเบต
เบฅเบฐเบเบธเบเบฐเบซเบเบฒเบเบเบญเบ pdl เบเบญเบเบเปเปเปเบกเป. เปเบเบเบเบปเปเบงเปเบเบเบฒเบเปเบเปเบเบฝเบเปเบเบฑเปเบเบเบตเป
เบเบฝเบเปเบเปเปเบฎเบฑเบเปเบซเปเบเบงเบฒเบกเบฎเบนเปเบชเบถเบเบเปเบฒเบซเบฒเบเบงเปเบฒเบกเบตเบเบฒเบเปเบเปเบเบฝเบเบญเบทเปเบเปเปเบเบฑเปเบเบเบตเปเปเบเบเบฒเบเปเบเบเบฝเบงเบเบฑเบเบเบฑเบ slice.
เบเบฒเบเบชเปเบงเบเปเบเบงเบปเบเปเบฅเบฑเบเปเบเบฑเบเบเบฒเบเปเบฅเบทเบญเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเปเบเบฝเบเบเบฐเปเบเบเบเบตเป. เบเบฒเบเปเบเปเบเบฝเบเบเบฑเบเบซเบกเบปเบเบเบตเป
เบเบฐเปเบเบเบเบตเปเบฅเบฐเบเบธเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเบซเบกเบฒเบเบเบฝเบงเบเบฑเบ "i" เบเปเบญเบเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเปเบฒเบเบงเบเบเบฝเบงเบเบฑเบเบเบญเบ
เบเบปเบงเบเบตเปเบงเบฑเบเปเบเบเบฐเบซเบเบฒเบเบเบญเบเบเปเปเปเบกเปเบเบญเบเบเบงเบเปเบเบปเบฒ. เบงเบดเบเบตเบเบตเปเบเบตเบเบตเปเบชเบธเบเบเบตเปเบเบฐเบญเบฐเบเบดเบเบฒเบเบกเบฑเบเบญเบฒเบเบเบฐเปเบเบฑเบเบเบฒเบเปเบซเป
เบเบปเบงเบขเปเบฒเบ, เปเบเบเบตเปเบเบตเปเบเบงเบเปเบฎเบปเบฒเบชเปเบฒเบ pdl เบเบตเปเบซเบกเบฒเบเปเบเบดเบเบญเบปเบเบเบฐเบเบญเบเบเบฒเบกเปเบชเบฑเปเบเบเบงเบฒเบเบเบญเบเบเปเบญเบ
pdl เบเปเปเปเบกเปเบเบญเบเบกเบฑเบ (เปเบเบฑเบ cube):
$cube = zeroes(5,5,5);
$sdiag = $cube->slice('(=0),(=0),(=0)');
เบเปเบฒเบชเบฑเปเบเบเปเบฒเบเปเบเบดเบเบชเปเบฒเบ pdl virtual เบเบตเปเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเปเบชเบฑเปเบเบเบงเบฒเบเบเบฒเบก
เบเบฐเปเบฒเบเบเบญเบเบเปเปเปเบกเป. 0, 1 เปเบฅเบฐ 2 เปเบฅเบฐเปเบฎเบฑเบเปเบซเปเบกเบดเบเบดเบเบญเบเบกเบฑเบ 0 (เบกเบดเบเบดเปเบเบปเปเบฒเบเบฑเปเบ) เบเบญเบ
เบกเบฑเบ. เบเปเบฒเบเปเบเป syntax เบเบฐเบซเบเบฒเบเบเปเบฒเบซเบฒเบเบงเปเบฒเบเบฐเบซเบเบฒเบเบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเบเปเปเปเบกเปเบเบญเบเบเปเบฒเบ
เบเปเบญเบโเบเบฒเบโเบเบตเปโเบเบฐโเบชเปเบฒเบโเปเบชเบฑเปเบโเบเบงเบฒเบโเบเบฒเบโเบเบฐโเบซเบเบฒเบโเบเบตเปโเปเบเบโเบเปเบฒเบโเบเบฑเบโเบซเบผเบทโเบเปเบฒเบโเบเปเบญเบโเบเบฒเบโเบเบตเปโเบเบฐโเบเบฑเบโเบเบทเบโเปเบโเบเปเบญเบโ
เบฅเปเบฒเบเบฑเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเปเบเปเบชเบฑเปเบเบเบงเบฒเบ, e.g
$rect = zeroes(12,3,5,6,2);
$vpdl = $rect->slice('2:7,(0:1=1),(4),(5:4=1),(=1)');
เบเบฑเปเบเบเบฑเปเบเบญเบปเบเบเบฐเบเบญเบเบเบญเบ $vpdl เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเบฐเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเปเปเปเบกเปเบเบญเบเบกเบฑเบเปเบเบงเบดเบเบตเบเบตเปเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเป
เบชเบฐเปเบเบเบญเบญเบเปเบเบฑเบ:
vpdl(i,j) = rect(i+2,j,4,5-j,j) 0<=i<5, 0<=j<2
[ เปเบฎเบฑเบเบงเบฝเบเบขเบนเปเปเบเบซเบเปเบฒเบเบตเปเบเบฑเบเบชเบฐเบเบตเปเบซเบกเป: "$b = $a->index($c);" ???? ]
เบกเบต เบกเบต เบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ เบเบฐเปเบเบ of เบงเบฝเบเบกเบญเบ เปเบฒเบ in PDL
เบเบปเบงเบขเปเบฒเบเบเบตเปเบเปเบฒเบเบกเบฒเปเบเปเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเปเบฅเปเบงเบงเปเบฒ pdls virtual เบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเปเบฒเปเบเบตเบเบเบฒเบเบซเบผเบท
เปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบชเปเบงเบเบเบญเบเบเปเปเบกเบนเบเบเบญเบ pdl เบเปเปเปเบกเป. เบเบงเบเปเบเบปเบฒเบเบฑเบเบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเปเบเบฑเบเบกเบนเบเบเปเบฒเปเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบ
(เบเบฑเปเบเบเบตเปเบเบฒเบเปเบเป "++" เปเบเบเบฒเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบเปเบเบดเบเปเบเปเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเปเบฅเปเบง). เบชเปเบฒเบฅเบฑเบเบขเปเบฒเบเบเบฐเปเบเปเบ
เบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบซเปเบเปเปเบกเบนเบเบเบตเปเบชเบฐเปเบเบเปเบเบ virtual pdl เบเบตเปเบเปเบฒเบเบเปเบญเบเปเบเป ".=" เบเบตเป overloaded.
operator (เปเบเบดเปเบเปเบเบชเบฐเบเบฒเบเบเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบเบซเบฒ เบเบฐเบซเบเบฒเบเบเบฑเบเบเปเบงเบ เบเบฒเบเบกเบญเบเบซเบกเบฒเบ). เปเบเบฑเบเบซเบเบฑเบเปเบเบปเปเบฒเบเปเปเบชเบฒเบกเบฒเบเปเบเปเปเบเป
เบเบฐเบเบดเบเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเบเบปเบเบเบฐเบเบด "="?
เบเบต, เปเบเปเบเบญเบเบเปเบฒเบเบเบฑเบเบชเบฒเบกเบฒเบเปเบเปเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบ '=' เปเบเปเบกเบฑเบเบเบฐเบเปเปเปเบฎเบฑเบเบชเบดเปเบเบเบตเปเบเปเบฒเบเบเปเบญเบเบเบฒเบ. เบเบตเป
เปเบกเปเบเปเบเบทเปเบญเบเบกเบฒเบเบฒเบเบเบงเบฒเบกเบเบดเบเบเบตเปเบงเปเบฒเบเบปเบงเบเบฐเบเบดเบเบฑเบเบเบฒเบ '=' เบเปเปเบชเบฒเบกเบฒเบ overloaded เปเบเบเบฒเบเบเบฝเบงเบเบฑเบเบเบฑเบเบเบปเบเบญเบทเปเบ
เบเบนเปเบเบฐเบเบดเบเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบ. เบเปเบฒเบเบงเบเปเบฎเบปเบฒเบเบฐเบเบฒเบเบฒเบกเปเบเป '=' เปเบเบทเปเบญเบเบฐเบเบฒเบเบฒเบกเบกเบญเบเบซเบกเบฒเบเบเปเปเบกเบนเบเปเบซเปเบเบฑเบเบชเปเบงเบเบซเบเบถเปเบเบเบญเบ a
pdl เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบเปเบเบเบเปเบฒเบ pdl virtual เบเบงเบเปเบฎเบปเบฒเบเบฐเบเปเปเบเบฑเบเบฅเบธเบเบปเบเบเบฐเบเบปเบเบเบตเปเบเปเบญเบเบเบฒเบ (เปเบเบเบเบตเปเบเบฐเปเบเบฑเบ
เบเบปเบงเปเบเบเบตเปเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบ pdl virtual (เบเบฒเบเบญเปเบฒเบเบญเบตเบเปเบเบดเบเบชเบดเปเบเบเบตเปเปเบเบฑเบเบเบญเบ) เบเบฐเบซเบผเบฑเบเบเบฒเบ
เบเบฒเบเบกเบญเบเปเบฒเบเบเบฝเบเปเบเปเบเบฐเบเบญเบเบเปเบงเบเบเบฒเบเบญเปเบฒเบเบญเบตเบเปเบเบดเบเบชเบดเปเบเบเบตเปเปเบเบฑเบเบเบญเบเบญเบตเบเบญเบฑเบเบซเบเบถเปเบเบเบตเปเบเบฐเบเบฐเบเบดเบเบฑเบ
เบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบเบญเบฐเบเบฒเบเบปเบเปเบเบฑเบเบชเปเบฒเปเบเบปเบฒ "เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบ" เบเบญเบ rvalue เบเบปเปเบเบชเบฐเบเบฑเบ [เบญเบฑเบเบเบตเปเบเบปเบงเบเบดเบเปเบฅเปเบงเบเบฑเบเบเปเปเบเบฑเบเปเบเป
เบเบฐเปเบเปเบเปเบฅเบฐเปเบเบฑเบเบซเบปเบงเบเปเปเบเบญเบเบเบฒเบเบชเบปเบเบเบฐเบเบฒเปเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบเบฒเบเปเบเบชเบฐเบเบตเบเบฑเบเบเบฑเบเบเบฐเบเบฒ PDL]. เปเบเบเบงเบฒเบกเบซเบกเบฒเบเบเบฑเปเบ
เบเบฐเบเปเบฒเบฅเบฒเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบญเบ pdl เบเบฑเบเบเปเปเปเบกเป [เบเปเปเปเบกเปเบเบเบถเบเบเบดเบเปเบฒเบเบตเปเปเบเบเบงเบฒเบกเบฎเบนเปเบชเบถเบ
เบเบปเบเบเบฑเบเบเปเบฒเบกเบเบฑเบเบชเบดเปเบเบเบตเปเปเบเบตเบเบเบทเปเบเปเบเบเบฐเปเบชเบเปเปเบกเบนเบ, เบเปเบญเบเบเบตเป ".=" เบเปเบฒเบฅเบฒเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบฑเบเบเปเปเปเบกเป? ].
เบเบปเบงเบขเปเบฒเบ
pdl> $line = $im->slice(':,(2)')
pdl> $line = เบชเบนเบ(5)
pdl> $line++;
pdl> p $im
[
[ 1 2 3 4 5 ]
[ 6 7 8 9 10 ]
[13 14 15 16 17]
[16 17 18 19 20]
[21 22 23 24 25]
]
pdl> p $line
[1 1 1 1 1]
เปเบเปเปเบเป ".="
pdl> $line = $im->slice(':,(2)')
pdl> $line .= เบชเบนเบ(5โ)
pdl> $line++
pdl> p $im
[
[ 1 2 3 4 5 ]
[ 6 7 8 9 10 ]
[ 1 1 1 1 1 ]
[16 17 18 19 20]
[21 22 23 24 25]
]
pdl> เบเบดเบก $line
[1 1 1 1 1]
เบเบญเบเบเบฒเบเบเบตเป, เบเปเบฒเบเบชเบฒเบกเบฒเบเบเบปเบเปเบเบเปเบเป
pdl> $line .= 0;
เบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเบกเบญเบโเบซเบกเบฒเบโเบเปเบฒเบโเปเบเบดเบ (เบชเบนเบโเปเบกเปเบโเบเปเบฝเบโเปเบเบฑเบ piddle scalarโ, เบเปเปโเบกเบตโเบเบฐโเบซเบเบฒเบโเบเบฑเปเบโเบเบฑเปเบโ.
เบกเบฑเบเบชเบฒเบกเบฒเบเปเบเปเบฎเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบซเป piddle เปเบ).
เบเบธเบเบเบฐเบชเบปเบกเบเบฑเบเบเบตเปเบเบตเปเบเบชเบฐเบเบฑเบ perl เบเบตเปเบเปเบฒเบเบกเบฒเปเบกเปเบ lvalue subroutines (เปเบเบฑเปเบ, เบฎเบธเปเบ 5.6.x เปเบฅเบฐ
เบชเบนเบเบเบถเปเบเบฅเบงเบกเบเบฑเบ perls เบเบฑเบเบซเบกเบปเบเบเบตเปเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเปเบเบ PDL). เบเบตเปเบญเบฐเบเบธเบเบฒเบเปเบซเปเบซเบเบถเปเบเบเบตเปเบเบฐเบเปเบฒเปเบเป
slicing syntax เบเบฑเบเบชเบญเบเบเปเบฒเบเบเบญเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบ:
pdl> $im->slice(':,(2)').= เบชเบนเบ(5)->xvals-> float
เบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเบธเบเบชเบปเบกเบเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเบเปเบญเบเบเบญเบ lvalue เปเบเบฑเบเบเบฑเปเบเบเบฑเบเบเบฝเบเปเบฅเบฑเบเบเปเบญเบเบชเปเบฒเบฅเบฑเบ unwary: perls เบเบตเปเบเปเบฒเบเบกเบฒ
เปเบเบฐเบเปเบฒ "เบฅเบฑเบเบชเบฐเบเบฐ" เบเบตเปเบเปเบฒเบฅเบฒเบเบเบฒเบเบเปเบฒเปเบเปเบเบญเบ PDL เบเบญเบ lvalue subs เบชเปเบฒเบฅเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบ slice เปเบเปเบงเบฅเบฒเบเบตเป
เปเบฅเปเบเบเบฒเบเปเบเป perl debugger, "perl -d". เบเบฒเบเปเบเป debugger, เบเบฒเบเบเปเบฒเปเบเปเบเปเบฒเบเปเบเบดเบเปเบซเป an
error เปเบเบฑเปเบ: "เบเปเปเบชเบฒเบกเบฒเบเบชเบปเปเบเบเบทเบเบเปเบฒเบเบปเปเบงเบเบฒเบงเบเบฒเบ lvalue subroutine..." เบเบฑเปเบเบเบฑเปเบเบเปเบฒเบเบเปเบญเบเปเบเป syntax.
เปเบเบฑเปเบเบเบตเป:
pdl> ($pdl = $im->slice(':,(2)')).= เบชเบนเบ(5)->xvals-> float
เปเบเบดเปเบเปเบฎเบฑเบเบงเบฝเบเปเบเปเบเบฑเบเปเบเบเบกเบต เปเบฅเบฐเบเปเปเบกเบตเบเบปเบงเบเบตเบเบฑเบ เปเบเปเปเบเบฑเบเบเบฒเบเปเบเปเปเบเปเบเบเบตเปเบชเบฑเบเบชเบปเบ เปเบฅเบฐเบเบธเปเบกเบเปเบฒเบกเปเบเบเบฒเบเบญเปเบฒเบ.
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒเบชเบฒเบกเบฒเบเบกเบตเบเบฑเบเบซเบฒเบเบฑเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบเบเบเบตเปเปเบกเบทเปเบญ lvalue เปเบฅเบฐ rvalue pdls
เบญเปเบฒเบเบญเบตเบเปเบเบดเบเบชเปเบงเบเบเบตเปเบเบฑเบเบเปเบญเบเบเบฑเบเบเบญเบเบเปเปเบกเบนเบเปเบ pdl เบซเบผเบฑเบ:
# เบเบฑเบเบเบทเบเบญเบปเบเบเบฐเบเบญเบเบเบญเบเปเบเบงเบเปเบฒเบญเบดเบเบเบญเบ $a
($tmp = $a->slice(':,(1)')).= $a->slice('-1:0,(1)');
เปเบเบเบฑเบเบเบธเบเบฑเบ, เบเปเปเบกเบนเบเบเปเปเปเบกเปเบขเบนเปเปเบเบทเปเบญเบเบเบงเบฒเบเบญเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเบเปเปเปเบเปเบเบทเบเบเบฑเบเบฅเบญเบเบเปเบญเบ
(เบเบฒเบเปเบ) เบเบฒเบเบกเบญเบเปเบฒเบ loop เบเบณเปเบเบตเบเบเปเปเปเบ. เบเบฑเปเบเบเบฑเปเบ, เบเบปเบเปเบเปเบฎเบฑเบเบเบญเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเบเบตเปเบเบฐเบเบถเปเบเบเบฑเบ
เบเปเบฝเบงเบเบฑเบเบฅเปเบฒเบเบฑเบเบเบตเปเบญเบปเบเบเบฐเบเบญเบเปเบเปเบเบทเบเบกเบญเบเบซเบกเบฒเบเปเบฅเบฐเปเบเบทเบญเบเปเบเปเบเบญเบ เบเปเป เปเบฎเบฑเบเปเบเบชเบดเปเบเบเบตเปเบเปเบฒเบ
เบเปเบญเบเบเบฒเบ. เบเบฑเปเบเบเบฑเปเบ, semantics เบเบฐเบเบธเบเบฑเบ undefined เบชเปเบฒเบฅเบฑเบเปเบเบเบฑเบเบเบธเบเบฑเบเปเบฅเบฐเบฎเบฑเบเบเบดเบเบเบญเบเบเบตเปเบเบฐเบเปเบฝเบเปเบเบเปเบเปเบเบธเบเปเบงเบฅเบฒ. เปเบเบดเบ
เปเบเปโเบฎเบฑเบโเบเบฒเบโเบเบฐโเบเบดโเบเบฑเบโเบเบตเปโเบเปเบญเบโเบเบฒเบโ, เบเบฒเบโเบเปเบฒโเปเบเปโ
($tmp = $a->slice(':,(1)')).= $a->slice('-1:0,(1)')->เบชเบณเปเบเบปเบฒ;
เปเบเบดเปเบเปเบฎเบฑเบเปเบซเปเบชเปเบฒเปเบเบปเบฒเบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบเบเบญเบ slice เบซเบผเบท
($tmp = $a->slice(':,(1)')).= $a->slice('-1:0,(1)')->sever;
เปเบเบดเปเบเปเบซเปเบเบปเบเปเบเบฑเบเบเปเบญเบเบเบฝเบงเบเบฑเบเปเบเปเปเบเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบญเบเบเบญเบเบเบฑเบเบเปเปเปเบกเปเบเบญเบเบกเบฑเบ.
เบญเบทเปเบ เป เบซเบเปเบฒเบเบตเป เบเบตเป manipulate เบเบฐเบซเบเบฒเบ
เปเบเปเปเบงเบปเปเบฒเบขเปเบฒเบเบเบงเปเบฒเบเบเบงเบฒเบเบเปเบฝเบงเบเบฑเบเบซเบเปเบฒเบเบตเปเบเบญเบ slice เบกเบฑเบเบเบงเบเบเบฐเบชเบฑเบเปเบเบเบงเปเบฒเบเบตเปเบเปเปเปเบกเปเบ
เบเบฑเบเบเบฑเบเบเบฑเบเบชเบฐเบเบต PDL เปเบเบปเปเบฒเบเบฑเปเบ. เบกเบตเบซเบเปเบฒเบเบตเปเบเบฑเบเบชเบฐเบเบตเปเบเบตเปเบกเปเบเบตเบกเบเบตเปเบกเบตเบเบฐเปเบซเบเบเปเบเบฑเปเบเบเบฑเบ
(เปเบเบเบชเบฐเปเบเบฒเบฐเปเบเบชเบฐเบเบฒเบเบเบฒเบเบเบญเบเบเบฐเบเบนเปเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฐเปเบงเบปเปเบฒเบเปเบฝเบงเบเบฑเบเบเปเปเบกเบฒ). เบเบตเปเปเบกเปเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเป
เปเบฅเบฐเบเบฒเบเบเบปเบงเบขเปเบฒเบเบงเบดเบเบตเบเบฒเบเบเปเบฒเปเบเปเบเบงเบเบกเบฑเบ.
"dummy"
เปเบชเปโเบเบฐโเบซเบเบฒเบ dummy เบเบญเบโเบเบฐโเบซเบเบฒเบโเบเบตเปโเบเปเบฒเบโเบฅเบฐโเบเบธโเปเบงเป (เบเปเบฒโเปเบฅเบตเปเบกโเบเบปเปเบ 1โ) เปเบโเบชเบฐโเบเบฒเบโเบเบตเปโเปเบฅเบทเบญเบโ.
เบเปเบฒเบโเบเปเปโเบชเบฒโเบกเบฒเบโเบฅเปโเบเปเบฒโเบเบตเปโเบเบฐโเปเบเปโเบเบดเบโเบงเบดโเบเบตโเบเบฒเบโเบเบตเปโเบเบฑเบโเบฅเบธโเปเบเปโ? เปเบฅเปเบง, เบญเบปเบเบเบฐเบเบญเบเบเบฑเบเปเบปเบเบเบตเปเบกเบตเบเบฑเบเบเบฐเบเบต "(X,x,Y)"
("0<=x
pdl (เบเปเบญเบเบเบตเป "X" เปเบฅเบฐ "Y" เบซเบกเบฒเบเปเบเบดเบเบเบธเปเบกเบเบญเบเบเบฑเบเบเบฐเบเบตเบเปเบญเบเปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบชเบฐเบเบฒเบเบเบตเป
เบเปเบญเบโเบเบตเปโเบเบฐโเบซเบเบฒเบ dummy เปเบเปโเบเบทเบโเปเบชเปโ.)
เบเบปเบงเบขเปเบฒเบเบเบตเปเบเบดเบเปเบฅเปเบเบธเบเบเบฐเบชเบฒเบเบเบฒเบ x เบเบญเบเบเบธเบเบชเบนเบเบเบฒเบเบเบญเบเบฎเบนเบเบเบฒเบ (เบเปเปเบกเบฒเบเบงเบเปเบฎเบปเบฒเบเบฐ
เบฎเบฝเบเบฎเบนเปเบงเปเบฒเบเบปเบงเบเบดเบเปเบฅเปเบงเบเบงเบเปเบฎเบปเบฒเบเปเปเบเปเบญเบเบเบฒเบเบเบฐเบซเบเบฒเบ dummy เบเปเบเบญเบเปเบเบเบฑเบ magic เบเบญเบ implicit เปเบเป
threading; เปเบเปเบเบฒเบเบเปเบฒเปเบเปเบเบฐเบซเบเบฒเบ dummy เบฅเบฐเบซเบฑเบเบเบฑเบเบเบฐเปเบฎเบฑเบเบงเบฝเบเบขเบนเปเปเบเปเบฅเบ thread-less;
เปเบเบดเบเปเบกเปเบเบงเปเบฒเปเบกเบทเปเบญเบเปเบฒเบเปเบเปเปเบฎเบฑเบเบงเบฝเบเบเบฑเบเบเบฐเบเบนเป PDL เบเปเบฒเบเบเบฐเบเปเปเบเปเบญเบเบเบฒเบเบเปเบฒเบฅเบปเบเบเบตเบงเบดเบเปเบเบเบเปเปเบกเบตเบเบงเบเบกเบฑเบ
เบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ).
# เบชเบนเบเบเบฒเบ
($xd,$yd) = $im-> dims;
$xc = sum($im*xvals(zeroes($xd))->dummy(1,$yd))/sum($im);
เปเบซเปเบญเบฐเบเบดเบเบฒเบเบงเบดเบเบตเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเปเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเปเบเบตเปเบกเปเบเบตเบกเปเบฅเบฑเบเบเปเบญเบ. เบซเบเปเบฒเบเปเบฒเบญเบดเบ, เบเบฐเบฅเบดเบเบเบฐเบเบฑเบ:
$xvs = xvals(zeroes($xd));
เบเบดเบก $xvs->dummy(1,$yd); # เบเปเบณเปเบเบง $yd เปเบเบทเปเบญ
$prod = $im*xvs->dummy(1,$yd); # เบเบฐเบเบญเบเปเบเบฑเบเบเบฐเบฅเบดเบเบเบฐเบเบฑเบเบเบตเปเบชเบฐเบซเบฅเบฒเบเบเบฑเบ pixels เบฅเบงเบ
# เปเบชเบฑเปเบเบเปเบณเบเบญเบ x-values
เบชเปเบงเบเบเบตเปเปเบซเบผเบทเบญเปเบกเปเบเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบชเบฐเบซเบผเบธเบเบเบปเบเปเบเปเบฎเบฑเบเบเบญเบเบเบฐเบฅเบดเบเบเบฐเบเบฑเบ pixel-wise เบฎเปเบงเบกเบเบฑเบเปเบฅเบฐ
normalizing เบเบฑเบเบเบปเบเบฅเบงเบกเบเบญเบเบเปเบฒ pixels เบฅเบงเบเบเบฑเบเบซเบกเบปเบเปเบเบฎเบนเบเบเบปเปเบเบชเบฐเบเบฑเบเบเบฑเปเบเบเบฑเปเบเบเบฒเบเบเบดเบเปเบฅเป
x-coordinate เบเบญเบ "เบชเบนเบเบเบฒเบเบเบญเบเบกเบฐเบซเบฒเบเบปเบ" เบเบญเบเบฎเบนเบเบเบฒเบ (เบเบฒเบเปเบเบเปเบฒ pixels เปเบเบฑเบ
เบกเบงเบโเบเบปเบโเบเปเบญเบโเบเบดเปเบโ) เบเบถเปเบโเปเบเบฑเบโเบเบตเปโเบฎเบนเปโเบเบฑเบโเปเบเบฑเบโเบชเบนเบโเบเบฒเบโเบเบญเบโเบฎเบนเบโเบเบฒเบโ.
เบเปเปโเปเบโเปเบกเปเบโเปเบเบฑเบ (เบเบฒเบโเบเบธเบโเบเบญเบโเบเบฒเบโเบเปโเบฅเบดโเปเบเบโเบเบงเบฒเบกโเบเบปเบโเบเปเบฒโ) เบเบฒเบโเบเปเบฝเบโเปเบเบโเบฅเบฒโเบเบฒโเบเบทเบโเบซเบผเบฒเบโเบเบฒเบโ
เบเบฐเบซเบเบฒเบเบชเบตเบเบตเปเปเบเบปเปเบฒเปเบเบดเบ RGB, ie เบเบธเบเป pixels เบเบฐเบเบธเบเบฑเบเบเบทเปเบเบฑเบเบชเบฒเบกเปเบเบปเปเบฒเบเบญเบเบเปเบฒเปเบเบเบเบตเปเบเบฐเปเบเบฑเบ scalar.
3 เบเปเบฒเปเบ triple เปเบกเปเบ, เปเบเบเบเบต, เบเบฑเบเบซเบกเบปเบเบเบฝเบงเบเบฑเบเบชเปเบฒเบฅเบฑเบเบฎเบนเบเบเบฒเบเบชเบตเบเบตเปเปเบเบปเปเบฒ, เบเบฑเปเบเบเบฑเปเบ
เบงเปเบฒ trick เบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบฎเบฑเบเบงเบฝเบเปเบเปเบเบตเปเบเบเบตเปเบกเบฑเบเปเบเบเบเบตเปเบเบฑเบเบซเบกเบปเบเบชเบฒเบกเบชเบฐเบกเบฒเบเบดเบเบเบญเบ triple เบเบฑเบ
เบญเบปเบโเบเบฐโเบเบญเบโเปเบซเบผเปเบโเบเบฝเบงโเบเบฑเบโ:
# เบเบฒเบเบเปเบฝเบเบเบฐเปเบฒเบเบชเบตเปเบเบปเบฒเปเบเบฑเบ RGB เบฅเบฒเบเบฒเบเบทเบ
$rgb = $grey->dummy(0,3)
เบเปเบญเบฐเปเบ, เปเบเบฑเบเบฅเบฑเบเบเบตเปเบเปเปเบชเบฒเบกเบฒเบเบเบทเบเปเบเปเปเบเบทเปเบญเบเปเบฝเบเบฎเบนเบ B/W เปเบเบปเปเบฒเบเบญเบเบเปเบฒเบเปเบซเปเปเบเบฑเบเบชเบตเปเบเป
เปเบโเบงเบดโเบเบตโเบเบตเปโเบเปเบฒเบโเบเปเบญเบโเบเบฒเบโ. :(
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒเบเบฒเบเบเปเบฒเปเบเปเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบญเบ piddles เบเบตเปเบกเบตเบเบฐเบซเบเบฒเบ dummy เปเบกเปเบเบกเบตเบเบงเบฒเบกเบญเปเบญเบเปเบซเบงเปเบเบเบชเบฐเปเบเบฒเบฐเบเบฑเบ
เบเบฒเบโเปเบเบฑเบโเบเบปเบงโเปเบเบโเบเบฒเบโเปเบโ. เบเปเบฒ piddle เบชเบฒเบกเบฒเบเบเบทเบเบชเบฐเปเบเบเปเบเบฑเบ virtual affine
(``vaffine'') piddle, เบกเบตเบเบฝเบเปเบเปเปเบเบเบชเปเบฒเบเบเบฒเบเบเบงเบเบเบธเบกเบเบตเปเบเบทเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบงเป. เปเบเปเบเปเบฒ $b เปเบ
$a = เบชเบนเบ(10000)
$b = $a->dummy(1,10000);
เปเบเปเบเบทเบเปเบฎเบฑเบเปเบซเปเบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบเปเบเบเบเบปเบเบเบฐเบเบดเบเบฒเบ, เบเปเบฒเบเบเบฐเบเบปเบเปเบซเบฑเบเบงเปเบฒเบเบฒเบเบเปเบฒเปเบเปเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบญเบเปเบเบเบเบฒเบเบเบญเบเบเปเบฒเบ
เปเบเปเปเบเบตเบเปเบเบขเปเบฒเบเบเบฐเบเบฑเบเบซเบฑเบเปเบเบ 100Mb.
"เปเบชเบฑเปเบเบเบงเบฒเบ"
เปเบเบโเบเบตเปโเบชเบญเบโเบกเบดโเบเบด (เบเบตเปโเบเปเบญเบโเบกเบตโเบเบฐโเบซเบเบฒเบโเปเบเบปเปเบฒโเบเบฝเบกโเบเบฑเบโ) เปเบเบโเบซเบเบถเปเบโเบกเบดโเบเบดโเบเบตเปโ
เบญเปเบฒเบเบญเบตเบเปเบเบดเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเปเบปเบเบเบฒเบก "เปเบชเบฑเปเบเบเบงเบฒเบ" เบเบฒเบกเบชเบญเบเบกเบดเบเบดเบเบฑเปเบเบเปเบฒเบง. เบเบตเป, เบเบงเบเปเบฎเบปเบฒ
เบกเบตเบชเบญเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบเบงเบเบเบฐเบเบธเปเบเปเบเบตเบเบเบฑเบเบเบธเบเบเบปเบเบเบตเปเปเบเบตเบเปเบฎเบฑเบเบเบฒเบเปเบชเบฑเปเบ
เบเบถเบเบเบฐเบเบฐเบเบดเบ. เบเปเบญเบเบญเบทเปเบ เปเบปเบ, เบชเปเบฒเบเบเบฒเบเบฐเบฅเบฒเบเบเบงเบฒเบกเบชเบฒเบกเบฑเบเบเบต:
# เบกเบฒเบเบฃเบดเบเปเบเบทเปเบญเบเบชเบฒเบกเบฑเบเบเบต
$e = zeroes(float, 3, 3); # เปเบฎเบฑเบเปเบซเปเบเบธเบเบขเปเบฒเบเปเบเบฑเบเบชเบนเบ
($tmp = $e->เปเบชเบฑเปเบเบเบงเบฒเบ(0,1)).= 1; # เบเบฑเปเบเบญเบปเบเบเบฐเบเบญเบเบเบฒเบกเปเบชเบฑเปเบเบเบงเบฒเบเปเบเบฑเบ 1
เบเบดเบก $e;
เบซเบผเบทเปเบชเบฑเปเบเบเบงเบฒเบเบญเบทเปเบเป:
($tmp = $e->slice(':-1:0')->เปเบชเบฑเปเบเบเบงเบฒเบ(0,1)).= 2;
เบเบดเบก $e;
(เบเปเบฒเบเบชเบฑเบเปเบเบเปเบซเบฑเบเบเปเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเปเบเปเบเบฑเบเบเบฑเบเบเบญเบ slice เปเบเบทเปเบญเบเบฑเบเบเบทเบเบฅเปเบฒเบเบฑเบเบเบญเบเปเบเบงเบเปเบญเบ
เบเบฑเปเบเปเบชเบฑเปเบเบเบงเบฒเบเบเบญเบเปเบเบฑเบเปเบซเบกเป, เบเบฑเปเบเบเบฑเปเบเบเบฒเบเบเปเบฒเบเบปเบเปเบชเบฑเปเบเบเบงเบฒเบเบเบญเบ
parent ?) เบซเบผเบทเบเบฒเบเบชเปเบฒเบเปเบเบเบเบตเปเบเบฒเบเบเปเบญเบเบเบญเบ matrices เปเบชเบฑเปเบเบเบงเบฒเบเปเบเบซเบฒเบเบฒเบเบชเบฐเบซเบเบฒเบกเปเบเปเบฅเบเบฐเบเบตเป
matrices เปเบเปเบเบทเบเบเปเบฒเบเบปเบ, เบเบฒเบกเบฎเบญเบเบเบญเบ matrix เปเบเบฑเบ:
# เบเบดเบเบเบฒเบกเบกเบฒเบเบฃเบดเบเปเบเบทเปเบญเบ
$trace = sum($mat->เปเบชเบฑเปเบเบเบงเบฒเบ(0,1)); # เบฅเบงเบกเบเบธเบเบญเบปเบเบเบฐเบเบญเบเบเบฒเบเบเบงเบฒเบ
"xchg" เปเบฅเบฐ "mv"
xchg เบเบฒเบเปเบฅเบเบเปเบฝเบเบซเบผเบท "transposes" เบชเบญเบเบเบฐเบซเบเบฒเบเบเบตเปเบฅเบฐเบเบธเปเบงเป. เบเบปเบเปเบเบเบปเบเบกเบฒ
เบเบปเบเบเบปเบงเบขเปเบฒเบ:
# transpose matrix (เปเบเบเบเปเปเบกเบตเบเบฒเบ reshuffling เบเปเปเบกเบนเบเบขเปเบฒเบเบเบฑเบเปเบเบเปเบฅเบฐ
#เปเบฎเบฑเบเบชเบณเปเบเบปเบฒ)
$prod = $ax $a->xchg(0,1);
เปเบเบเบฑเบเบเบธเบเบฑเบ $prod เบเบงเบเบเบฐเปเบเปเบเบดเบเบเบฑเบ matrix เบเบงเบฒเบกเบชเบฒเบกเบฑเบเบเบต เบเปเบฒ $a เปเบเบฑเบ matrix orthogonal.
เบเบปเบเบเบฐเบเบดเปเบฅเปเบง "xchg" เบเบฐเบเบทเบเปเบเปเปเบเบชเบฐเบเบฒเบเบเบฒเบเบเบญเบ threading เปเบเปเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเบงเปเบฒเบเปเปเบกเบฒ.
mv เปเบฎเบฑเบเบงเบฝเบเปเบเปเบเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบ. เบกเบฑเบเบเปเบฒเบเบกเบดเบเบด (เบฅเบฐเบเบธเปเบเบเบเบปเบงเปเบฅเบเบเบญเบเบกเบฑเบเบขเบนเปเปเบ
เบเปเปเปเบกเป) เบเบฑเบเบเปเบฒเปเบซเบเปเบเปเบซเบกเปเปเบ pdl เปเบเบฑเบเปเบซเบกเป:
$b = $a->mv(4,0); # เปเบฎเบฑเบเปเบซเปเบกเบดเบเบดเบเบต 5 เบเบญเบ $a เปเบเบฑเบเบญเบฑเบเบเบฑเบเบเบณเบญเบดเบเปเบ
# เปเบเบฑเบเปเบซเบกเป $b
เบเบงเบฒเบกเปเบเบเบเปเบฒเบเบฅเบฐเบซเบงเปเบฒเบ "xchg" เปเบฅเบฐ "mv" เปเบกเปเบเบงเปเบฒ "xchg" เบเบฝเบเปเบเปเบเปเบฝเบเบเปเบฒเปเบซเบเปเบเบเบญเบเบชเบญเบ
เบกเบดเบเบดเบเบฑเบเบเบฑเบเปเบฅเบฐเบเบฑเบ, เปเบเบเบฐเบเบฐเบเบตเป "mv" เปเบเบเบกเบดเบเบดเบเปเบฒเบญเบดเบเปเบเบซเบฒเบชเบฐเบเบฒเบเบเบตเปเบเบญเบ
เบญเบฑเบเบเบตเบชเบญเบ, เบเบฒเบเปเบเบทเปเบญเบเบเปเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเบญเบทเปเบเปเบเบฐเบกเบฒเบเบเบฒเบกเบเบงเบฒเบกเปเบซเบกเบฒเบฐเบชเบปเบก.
"เบเปเป"
เบซเบเปเปเบซเบผเบฒเบเบกเบดเบเบดเปเบเบฑเบเบญเบฑเบเบเบฝเบง. เบเบฒเบเปเบเปเบเบฝเบเปเบเบปเปเบฒเบเบฑเปเบเบเบญเบเบกเบฑเบเบฅเบฐเบเบธเบงเปเบฒเบกเบตเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเปเบ
เบเบญเบเปเบซเบผเปเบ pdl เบเบงเบเบเบฐเบเบทเบเบเบธเบ (เปเบฅเบตเปเบกเบเบปเปเบเบเบฒเบเบเปเบฒเบญเบดเบ). เปเบเบฑเบ (เบเบญเบกเบฎเบฑเบ
unrealistic) เบเบปเบงเบขเปเบฒเบเปเบกเปเบ 3D pdl เบเบตเปเปเบเบฑเบเบเปเปเบกเบนเบเบเบฒเบ stack เบเบญเบเปเบเบฅเปเบฎเบนเบเบเบฒเบเบเบตเปเบเปเบฒเบ
เบเบฝเบเปเบเปเปเบเปเบญเปเบฒเบเปเบ. เบขเปเบฒเบเปเบเบเปเบเบฒเบก, เบเปเปเบกเบนเบเบเบฒเบเปเบเปเบฅเบฐเบฎเบนเบเบเบฒเบเปเบกเปเบเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเปเบงเบฅเบฒ 1D
เบเบธเบ เปเบฅเบฐเปเบเปเบเบทเบเบเบฑเบเบฅเบฝเบเปเบเบเบเบฑเปเบเปเบเบปเปเบฒเบเบฑเปเบ เปเบเบฒเบฐเบงเปเบฒเบกเบฑเบเบเบทเบเบชเปเบฒเบเปเบเบฑเบเบเบดเบเบดเบเบญเบเบเปเบงเบเบเบญเบ
grabber. เบเบฑเปเบเบเบฑเปเบเปเบเบทเปเบญเปเบซเปเบกเบฑเบเบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบเปเบเบฑเบ array เบเบญเบเบฅเปเบฒเบเบฑเบเบเบตเปเปเบเปเปเบงเบฅเบฒเบเบตเปเบเปเบฒเบเปเบงเบปเปเบฒ
pdl> $seqs = $stack->เบเบธเปเบก(2โ)
pdl> เบเปเบงเบ vars
เบเบปเบงเปเบ PDL เปเบเบเบธเบเบซเบผเบฑเบ::
เบเบทเปเบเบฐเปเบเบ Dimension Flow State Mem
-------------------------------------------------- --------------
$seqs Double D [8000,50] -C 0.00Kb
$stack Double D [100,80,50] P 3.05Mb
เบเปเปเบชเบปเบกเบเบดเบเบเปเบญเบเบงเปเบฒเบกเบฑเบเบญเบฒเบเบเบฐเปเบเบดเปเบเบเบทเบงเปเบฒ, เบเบญเบเปเบงเบเปเบญเบเบเบธเบฅเบฐเบเบฑเบ confocal เบเบญเบเบเบงเบเปเบฎเบปเบฒเบเบฝเบเบเปเปเบกเบนเบ (เบเบฒเบเบเบฑเปเบ)
เบเบฒเบเบเบตเป. เปเบเปเปเบฅเบทเปเบญเบเปเบเปเบฒเบเปเบเป clump เปเบเบทเปเบญเบเบฑเบเบฅเบธเบเบปเบเบเบฐเบเบปเบเบเบตเปเปเบเปเบเบญเบเปเบเปเบงเบฅเบฒเบเบตเปเปเบเป implicit
เบซเบผเบทเบเบฐเบเบนเปเบเบตเปเบเบฐเปเบเปเบ.
เปเบเบซเบฒเปเบเบทเบญเบเปเบฒเบ to เบเบฑเบเบชเบฐเบเบต เบซเบเปเบฒเบเบตเป เบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเป be เบเปเบญเบเปเบชเป
เบเบฑเปเบเบเบตเปเบเปเบฒเบเบญเบฒเบเบเบฐเปเบเปเบชเบฑเบเปเบเบเปเบซเบฑเบเปเบเบเบฒเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบเปเบเบดเบเบเบตเปเปเบเบซเบฒเบซเบเปเบฒเบเบตเปเบเบฑเบเบชเบฐเบเบต
เบชเบฒเบกเบฒเบเบเบทเบเบเปเบญเบเปเบชเปเบขเปเบฒเบเบเบตเบเบฑเบเบเบฑเปเบเปเบเปเบซเบเปเบฒเบเบตเปเบเบฑเบเบซเบกเบปเบเปเบซเบผเบปเปเบฒเบเบตเปเบชเบปเปเบเบเบทเบเบงเบฑเบเบเบธเปเบเบฑเบเบเปเบญเบเบเบตเปเบชเปเบฒเบเบเบถเปเบเปเบซเบกเป.
เบขเปเบฒเบเปเบเบเปเบเบฒเบก, เปเบเปเบงเบฅเบฒเบเบตเปเปเบฎเบฑเบเบเบฒเบเบซเบกเบนเบเปเบเปเบเบฑเบเบเบฐเบเบตเบขเปเบฒเบเบเบงเปเบฒเบเบเบงเบฒเบเปเบเบฅเบฐเบเบปเบเบเปเบญเบเปเบชเปเปเบซเปเปเบเปเปเบเบงเปเบฒเบเบฐเบเบดเบเบเบฒเบกเบชเบดเปเบเบเบตเป
เบเปเบฒเบเบเปเบฒเบฅเบฑเบเปเบฎเบฑเบ, eg
$a->xchg(0,1)->mv(0,4)
เบเปเบฒเบเบกเบดเบเบด 1 เบเบญเบ $a เปเบเบซเบฒเบเบณเปเปเปเบ 4 เบเบฑเปเบเปเบเปเปเบงเบฅเบฒเบเบตเปเบเบณเบชเบฑเปเบเบเบตเบชเบญเบเบเบทเบเบเบฐเบเบดเบเบฑเบ
เบกเบดเบเบดเปเบเบตเบก 1 เปเบเปเบเบทเบเบเปเบฒเบเปเบเบเปเบฒเปเปเปเบ 0 เบเบญเบเบฅเบนเบเปเปเปเบเบตเปเปเบญเบตเปเบ "mv"
เบซเบเปเบฒเบเบตเป. เบเปเบฒเบเบฐเปเบเบปเปเบฒเบเบดเบเบงเปเบฒเบเปเบฒเบเปเบเปเบฎเบฑเบเบเบงเบฒเบกเบเบดเบ (เปเบเบดเบเบงเปเบฒเบเบฐเบกเบตเบเปเบฒเบญเบฐเบเบดเบเบฒเบเบเบตเปเบชเบฑเบเบชเบปเบเบเบญเบเบเปเบญเบ).
เบเบฐเบซเบเบฒเบเบเบฑเบ เบงเบฝเบเบกเบญเบ เปเบฒเบ ('.=') เปเบฅเบฐ dummy เบเบฐเบซเบเบฒเบ
sublety เบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเบฒเบเบชเปเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบกเปเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบซเป pdls เบเบตเปเบกเบตเบเบฐเบซเบเบฒเบ dummy เบเบญเบ
เบเบฐเปเบฒเบเปเบซเบเปเบเบงเปเบฒ 1. เบเบฒเบเบกเบญเบเปเบฒเบเปเบซเบผเบปเปเบฒเบเบตเป (เปเบเบเปเบเป ".=") เบเบทเบเบซเปเบฒเบกเปเบเบทเปเบญเบเบเบฒเบเบญเบปเบเบเบฐเบเบญเบเบซเบผเบฒเบเบญเบฑเบ
เบเบญเบ lvalue pdl เบเบตเปเปเบเบซเบฒเบญเบปเบเบเบฐเบเบญเบเบเบฝเบงเบเบฑเบเบเบญเบเบเปเปเปเบกเป. เบเบฑเปเบเบเบฑเปเบ, เบกเบนเบเบเปเบฒเบเบญเบ
เบญเบปเบโเบเบฐโเบเบญเบโเบเบญเบโเบเปเปโเปเบกเปโเปเบซเบผเบปเปเบฒโเบเบฑเปเบโเปเบกเปเบโเบญเบฒเบโเบเบฐโเบกเบตโเบเบงเบฒเบกโเบเปเปโเบเบฑเบโเปเบเบโเปเบฅเบฐโเบเบฐโเบเบถเปเบโเบเบฑเบโเบฅเปเบฒโเบเบฑเบโเบเบตเปโ
เบเบฒเบเบเบฐเบเบดเบเบฑเบเปเบฎเบฑเบเปเบซเปเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบซเปเบญเบปเบเบเบฐเบเบญเบ. เบเบฑเปเบเบเบฑเปเบ, เบเบฒเบเบกเบญเบเบซเบกเบฒเบเบเบฑเปเบเบเบตเป:
$a = pdl [1,2,3];
$b = $a->dummy(1,4);
$b .= yvals(zeroes(3,4));
เบชเบฒเบกเบฒเบเบเบฐเบฅเบดเบเบเบปเบเปเบเปเบฎเบฑเบเบเบตเปเบเปเปเบเบฒเบเบเบดเบเปเบฅเบฐเบเบปเบเปเบเปเบฎเบฑเบเบขเปเบฒเบเบเบฑเบเปเบเบ undefined เปเบเบ PDL เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒ
เปเบกเบทเปเบญ PDL เปเบเปเบฎเบฑเบเบเบธเบเบชเบปเบกเบเบฑเบเบเบญเบกเบเบดเบงเปเบเบตเปเบเบฐเบซเบเบฒเบ, เบเบปเบเปเบเปเบฎเบฑเบเปเบเบเบฐเบเบธเบเบฑเบเบญเบฒเบเบเบฐเบเปเบฝเบเปเบเบเปเบเปเบเบต.
เบเบฒเบเบเบฑเบเบชเบฐเบเบฐเบเบญเบ dataflow เบเบฒเบเปเบเบฐเบเปเบฒเบเบญเบ dummy เบเบฐเบซเบเบฒเบเปเบซเบเปเบเบงเปเบฒเบซเบเบถเปเบ
เบเบฐโเบซเบเบฒเบโเปเบกเปเบโเบเบทโเบงเปเบฒโเปเบเบฑเบโเบเบฒเบโเบซเบฑเบโเบเปเบฝเบ irreversible (เบเปเบฒเบโเบเบทโเบเบฑเบโเบเบฑเบโเบเปเบฒโเบชเบฑเบโเบเปเบฒเบเปโเปเบ
Thermodynamics) เปเบเบดเปเบเบเบตเบเบเบงเบฒเบเบเบฒเบเบเบฐเบซเบเบฒเบเบเบฑเบเบเบฒเบเบซเบผเบฑเบเบเบญเบเบเบฒเบเบกเบญเบเปเบฒเบเปเบซเปเบเปเปเปเบกเป (เปเบเบปเปเบฒ
เปเบเปเบฎเปเบญเบเบเปเบขเปเบฒเบเบเบฐเปเบเปเบเปเบเบเปเบเป ".=" เบเบฒเบเบกเบญเบเปเบฒเบ). เบเบฑเบเบซเบฒเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบเบเบตเปเบเปเบญเบเบฅเบฐเบงเบฑเบ
เปเบเบตเบเบเบถเปเบเปเบเบเปเบฅเบดเบเบปเบเบเบญเบ threading เบเบตเปเบเบฒเบเบเบฑเปเบเบเบฐเบซเบเบฒเบ dummy เบเบทเบเบชเปเบฒเบเบเบทเปเบ implicitly
เปเบเบฅเบฐเบซเบงเปเบฒเบเบเบฒเบ loop thread (เปเบเบดเปเบเบเปเบฒเบเบฅเบธเปเบกเบเบตเป).
เปเบซเบเบเบปเบ เบชเปเบฒเบฅเบฑเบเบเบฒเบ เปเบเป เบเปเปเปเบกเป/เบฅเบนเบ (เบซเบผเบท "เบเบปเบงเบเบตเป") เปเบเบงเบเบดเบ
[เบญเบฑเบโเบเบตเปโเบเบฐโเบเปเบญเบโเบฅเปโเบเปเบฒโเปเบฅเบฑเบโเบเปเบญเบโ]
XXX เบกเบตเบเบงเบฒเบกเบเบปเบเบเปเบฒเบเบตเปเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบ
XXXX เปเบเบเปเบฅเบดเบเบปเบเบเบญเบ threading
XXXXXX เปเบเบฑเบเบงเบดเบเบตเบเบตเปเบเปเบฝเบเปเบเบเปเบเป เปเบฅเบฐเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบเบซเบผเบฒเบเปเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบชเปเบงเบเบเบญเบเบเปเปเบกเบนเบ pdl
(เปเบโเบงเบดโเบเบตโเบเบฒเบโเบเบปเปเบงโเปเบโเบซเบผเบฒเบโเบโเปโเบงเบฒ secโ, เปเบฅเบฐโเบญเบทเปเบเปโเบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโ)
XXX เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบตเปเบกเบตเบเบฐเบชเบดเบเบเบดเบเบฒเบ
XXXXX เบเบงเบฒเบกเปเบเบเบเปเบฒเบเบเบฑเบเบเบฒเบเบชเปเบงเบ / เบขเบนเป, เปเบฅเบฐเบญเบทเปเบเป.
เบงเบดเบเบตเบเบฒเบ to เปเบฎเบฑเบเปเบซเป เบชเบดเปเบเบเบตเป เบเบฒเบเบเปเบฒเบเบฎเปเบฒเบเบเบฒเบ เบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ
[ XXXXX เบเบทเปเบกเบเปเปเบกเบนเบเปเบชเปเปเบเบเบฒเบเบซเบผเบฑเบเปเบกเบทเปเบญเบเบธเบเบขเปเบฒเบเปเบเปเบเบปเบเบฅเบปเบเบเบทเปเบกเบญเบตเบเปเบฅเบฑเบเบเปเบญเบ ]
** เปเบโเปเบงโเบฅเบฒโเบเบตเปโเบเปเบฒโเปเบเบฑเบ (xsub routine interfacing C lib functionโ)
** เบเบฑเบโเบฅเบธโเปเบเปโเปเบเบงโเปเบ (-โ> เบเบฒเบโเบเปเบฒเบโเบฎเปเบฒเบโเบเบฒเบโ)
** เบงเบดโเบเบตโเบเบฒเบโเบเบปเบโเบชเบญเบ (isphysical (เบญเบฐโเบเบดโเบเบฒเบโเบงเบดโเบเบตโเบเบฒเบโเปเบฎเบฑเบโเบงเบฝเบโเปเบโเบเบฑเบโเบเบธโเบเบฑเบโ)โ)
** -> เบชเปเบฒเปเบเบปเบฒเปเบฅเบฐ -> sever
เบเบฐเบเบนเป
เปเบเบงเบฑเบเบเบตเปเบเปเบฒเบเบกเบฒเบเปเบฝเบงเบเบฑเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเบเบงเบเปเบฎเบปเบฒเปเบเปเบเปเบฒเบงเปเบเบดเบเบเปเบฒเบชเบฑเบเปเบเบเบฒเบเบเบฑเปเบเบเบฒเบงเปเบเป
เปเบเบเบฑเบเบเบธเบเบฑเบเบกเบฑเบเปเบเบฑเบเปเบงเบฅเบฒเปเบเปเปเบเบตเปเบเบฐเปเบงเบปเปเบฒเบขเปเบฒเบเบเบฐเปเบเปเบเบเปเบฝเบงเบเบฑเบ "threading" เบเบฑเบ pdls. เบเปเบฒเบงเปเบฒ threading เบกเบต
เบเบงเบฒเบกโเบซเบกเบฒเบโเบเบตเปโเปเบเบโเบเปเบฒเบโเบเบฑเบโเบซเบผเบฒเบโเปเบโเบเบปเบโเปเบเบโเบเบตเปโเปเบเบโเบเปเบฒเบโเบเบฑเบโเบเบญเบโเบเบญเบกโเบเบดเบงโเปเบเบตโ. เบเบฒเบเปเบเบเบญเบเบเบญเบ PDL เบกเบฑเบ
เบญเบฒเบโเบเบฐโเปเบเปโเบฎเบฑเบโเบเบฒเบโเบเปเบฒโเบเบปเบโเบงเปเบฒเบโเปเบเบฑเบโเบชเบฐโเบเบฒเบโเบเบตเป looping implicitโ. เบกเบฑเบ implicit เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒ
เบเปเบฒเบเบเปเปเปเบเปเบฅเบฐเบเบธเบซเบเบฑเบเปเบเบฑเปเบ: เบเบฒเบเบเบดเบเบเบฑเบ for-loops เปเบเปเบงเปเบฒ loops เปเบกเปเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
(เบซเบผเบท 'magically') เบชเปเบฒเบเบเบถเปเบเปเบเบ PDL เปเบเบเบญเบตเบเปเบชเปเบเบฐเบซเบเบฒเบเบเบญเบ pdls เบเบตเปเบเปเบฝเบงเบเปเบญเบ. เบเบตเป
เบเบงเบเปเบซเปเบเบงเบฒเบกเบเบดเบเบเบณเบญเบดเบเปเบเปเปเบเบปเปเบฒเบงเปเบฒ เปเบเบฑเบเบซเบเบฑเบเปเปเบฒเบเบตเปเบเบฒเบเปเบนเบเปเบเปเบเบฑเบเบเบฐเบเบต/เบเบฐเปเบฒเบเบเบตเปเปเบเบปเปเบฒเปเบเปเบเบปเบ
เปเบเบงเบฑเบเบเบตเปเบเปเบฒเบเบกเบฒเบกเบตเบเบงเบฒเบกเบชเปเบฒเบเบฑเบเปเบเบเบชเบฐเปเบเบฒเบฐเปเบฅเบฐเปเบเบฑเบเบเบฐเปเบซเบเบเปเบเบชเบฐเบเบฒเบเบเบฒเบเบเบญเบ
เบเบฐเบเบนเป. เบชเปเบงเบเบเบฐเบเบญเบเบญเบทเปเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบ threading (เบเบญเบเบเบฒเบ pdls เบเบตเปเบเปเบฝเบงเบเปเบญเบ) เปเบกเปเบ a
เบเบฑเบเบเบฑเบเบเบตเปเบฎเบนเป threading (เปเบเบเบเบปเปเบงเปเบ, เปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบ PDL:: PP เบฅเบงเบเบฅเบงเบกเบซเบเปเบฒเบเบตเป) เปเบฅเบฐ
เบงเปเบฒ pdls เปเบกเปเบ "เบเบฐเบเบนเป" เบซเบผเบฒเบเบเบงเปเบฒ. เบซเบผเบฒเบเบเปเบฝเบงเบเบฑเบเบเปเบฒเบชเบฑเบเบเปเบฒเบเปเปเบฅเบฐเบเบญเบเบเบตเปเปเบซเปเบเบฐเบเบฒเบเบฒเบก
เปเบซเปเบเบงเบฒเบกเบชเบฐเบซเบงเปเบฒเบเบเบฒเบเบขเปเบฒเบเบเปเบฝเบงเบเบฑเบเบชเบดเปเบเบเบตเปเบกเบฑเบเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเบเบฑเบเบซเบกเบปเบ.
เบชเบปเบกเบเบนเบเปเบเบ เบเบฐเบเบนเป - a เบเบฑเปเบเบเปเบฒเบญเบดเบ เบเบปเบเบเบปเบงเบขเปเบฒเบ
เบกเบตเบชเบญเบเบเบปเบงเปเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบฅเบฑเบเบเปเบญเบเบเบญเบ threading. เบเบงเบเปเบฎเบปเบฒเปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบเบชเบดเปเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบเบซเบฒ
"เบเบฐเบเบนเป implicit". เปเบซเปเปเบฅเบทเบญเบเปเบญเบปเบฒเบเบปเบงเบขเปเบฒเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเบฒเบ looping เบเบญเบเบเบฑเบเบเบฑเบ
เบซเบผเบฒเบเบเบงเปเบฒเบญเบปเบเบเบฐเบเบญเบเบเบญเบ pdl. เบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบกเบตเบฎเบนเบเบเบฒเบ RGB เบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฒเบเบเปเบฝเบเปเบเบฑเบเบชเบตเบเบตเปเปเบเบปเปเบฒ.
เบเบฐเปเบฒเบ. เบฎเบนเบเบเบฒเบ RGB เปเบกเปเบเบชเบฐเปเบเบเปเบเบ 3-dim pdl "im(3,x,y)" เบเปเบญเบเบเบตเปเบกเบตเบกเบดเบเบดเบเปเบฒเบญเบดเบ.
เบกเบตเบชเบฒเบกเบญเบปเบเบเบฐเบเบญเบเบชเบตเบเบญเบเปเบเปเบฅเบฐ pixels เปเบฅเบฐ "x" เปเบฅเบฐ "y" เปเบกเปเบ width เปเบฅเบฐเบเบงเบฒเบกเบชเบนเบเบเบญเบ
เบฎเบนเบเบเบฒเบ, เบเบฒเบกเบฅเปเบฒเบเบฑเบ. เบเปเปเปเบ, เบเบงเบเปเบฎเบปเบฒเบเปเบฒเปเบเบฑเบเบเปเบญเบเปเบเปเบเปเบฒเบเบปเบเบงเบดเบเบตเบเบฒเบเปเบเบเปเบเบฑเบเบชเบฒเบกเบชเบตเบเบฒเบกเบเบตเปเบเปเบฒเบเบปเบเปเบงเป
pixels เปเบเบปเปเบฒเปเบเปเบเบกเบนเบเบเปเบฒเบชเบตเบเบตเปเปเบเบปเปเบฒ (เปเบเบทเปเบญเปเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเบตเปเปเบเปเบเบดเบเบกเบฑเบเบเบงเบเบเบฐเปเบเบฑเบเบเบปเบงเปเบเบเบเบญเบเบเบตเปเบเปเบญเบ
เบเบงเบฒเบกเปเบเบฑเปเบกเบเบธเปเบเบเบตเปเปเบเบฅเบเบฒเบเบตเปเบเปเปเบกเบตเบชเบตเบเบญเบเบเบงเบเปเบฎเบปเบฒเบเบฐเบเบงเบเบเบปเบเบชเบตเบเบฑเปเบเปเบเบทเปเบญเบเบฑเบเบฅเบธ
เบชเบดเปเบโเบเบตเปโเบเบงเบโเปเบฎเบปเบฒโเบเบฐโเปเบญเบตเปเบโเบงเปเบฒโเบเบฒเบโเบเปเบฝเบโเปเบเบโเบเปเบฒโเบกเบฐโเบเบฒเบโเบเบฒเบโเบชเบตโเปเบโเปเบเบฑเบโเบชเบตโเบเบตเปโเปเบเบปเปเบฒโ. เบเบฐเบกเบฒเบเบงเปเบฒ
เปเบฎเบฑเบเบงเบฝเบเปเบเปเบเบตเปเบกเปเบเบเบฒเบเบเบดเบเปเบฅเปเบเบงเบฒเบกเปเบเบฑเปเบกเบเบญเบเบชเบตเบเบตเปเปเบเบปเปเบฒเบเบฒเบเปเบเปเบฅเบฐ RGB triplet (r,g,b) เปเบเบฑเบ.
เบฅเบงเบกเบเปเบณเปเบฑเบ
grey-value = 77/256*r + 150/256*g + 29/256*b =
เบเบฒเบเปเบ([77,150,29]/256, [r,g,b])
เบเปเบญเบเบเบตเปเปเบเบเบเบญเบกเบชเบธเบเบเปเบฒเบเบเบตเปเปเบซเปเปเบซเบฑเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเบฝเบเบเบตเปเปเบเบฑเบเบเบฐเบฅเบดเบเบเบฐเบเบฑเบเบเบฒเบเปเบเบเบญเบ 3-vector
เบเบฐโเบเบญเบโเบเปเบงเบโเบโเปโเปเบฒโเบซเบเบฑเบโเบชเปเบฒโเบฅเบฑเบโเบญเบปเบโเบเบฐโเบเบญเบโเบชเบตโเปเบเบโ, เบชเบตโเบเบฝเบงโเปเบฅเบฐโเบชเบตโเบเปเบฒโเบเบตเปโเบกเบต 3 vector เบเบตเปโเบเบฐโเบเบญเบโเบเปเบงเบโ
เบญเบปเบเบเบฐเบเบญเบเบเบญเบเบชเบต. เบเบฒเบกเบเบฐเปเบเบเบต, เบเบงเบเปเบฎเบปเบฒเบญเบฒเบเบเบฐเบเบฝเบเบซเบเปเบฒเบเบตเปเบเปเบฒเบเบเบทเบเปเปเปเบเบเบตเป
เบเบฒเบโเบเบธเบโเปเบเปเบโเบฎเบนเบโเบเบฒเบโเบเบฑเบโเบซเบกเบปเบโ:
@dims=$im-> dims เบเบญเบเบเปเบญเบ;
# เบเบตเปเบเบตเปเบเบปเบเบเบฐเบเบดเบเบงเบเปเบเบดเปเบเบงเปเบฒ dim เบเปเบฒเบญเบดเบเบกเบตเบเบฐเบซเบเบฒเบเบเบตเปเบเบทเบเบเปเบญเบ (3), เปเบฅเบฐเบญเบทเปเบเป
$grey=zeroes(@dims[1,2]); # เปเบฎเบฑเบ pdl เบชเปเบฒเบฅเบฑเบเบฎเบนเบเบเบฒเบเบชเบตเบเบตเปเปเบเบปเปเบฒเบเบปเบเปเบเปเบฎเบฑเบ
$w = pdl [77,150,29] / 256; # vector เบเบญเบเบเปเบณเปเบฑเบ
เบชเปเบฒเบฅเบฑเบ ($j=0;$j
เบชเปเบฒเบฅเบฑเบ ($i=0;$i
# เบเบดเบเปเบฅเปเบเปเบฒ pixels
$tmp = inner($w,$im->slice(':,(i),(j)'));
set($grey,$i,$j,$tmp); # เปเบฅเบฐเบเบฑเปเบเบกเบฑเบเปเบเบฑเบเบฎเบนเบเบชเบตเปเบเบปเบฒ
}
}
เปเบเบเบฑเบเบเบธเบเบฑเบเบเบงเบเปเบฎเบปเบฒเบเบฝเบเบเบฝเบงเบเบฑเบเปเบเบเปเบเป threading (เบชเบฑเบเปเบเบเบงเปเบฒ "เบเบฒเบเปเบ" เปเบกเปเบเบซเบเปเบฒเบเบตเปเบฎเบฑเบเบฎเบนเป threading
เบเบณเบเบปเบเปเบงเปเปเบ PDL::Primitive package)
$grey = เบเบฒเบเปเบ($im,pdl([77,150,29]/256));
เบเบงเบเปเบฎเบปเบฒเปเบเปเบชเบดเปเบเบชเบธเบเบเปเบงเบเปเบชเบฑเปเบเบเบฝเบงเบเบตเปเบชเปเบฒเบ pdl $grey เปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
เบเปเบฒเบเบงเบเปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเปเบฅเบฐเบเปเบฒเปเบเบตเบเบเบฒเบ loops เบญเบฑเบเบเบฐเปเบเบกเบฑเบ ( loops เปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบ
เบเบฐเบเบดเบเบฑเบเปเบเบฑเบเบฅเบฐเบซเบฑเบ C เปเบงเบขเบนเปเปเบเบเบฒเบเปเบเบเบญเบ PDL). เปเบฅเปเบง, เบเบงเบเปเบฎเบปเบฒเบเบฑเบเบเบดเบเปเบตเปเปเบเบปเปเบฒเบขเบนเป
เบเปเบฒเบญเบฐเบเบดเบเบฒเบเบงเบดเบเบตเบเบฒเบ 'magic' เบเบตเปเปเบกเปเบเบเบฑเบเบฅเบธเปเบเป.
เบงเบดเบเบตเบเบฒเบ เบเปเป เปเบเป เบเบปเบเบเบปเบงเบขเปเบฒเบ เบเบฒเบเปเบฎเบฑเบเบงเบฝเบ ?
เบชเบดเปเบเบเปเบฒเบญเบดเบเบเบตเปเบเบงเบเบชเบฑเบเปเบเบเปเบกเปเบเบงเปเบฒเบเบธเบเปเบซเบเปเบฒเบเบตเปเปเบเบฑเบ threading เบฎเบนเป (เปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบเบเปเปเบกเบต
เบเบฑเบเบเบฑเบเบเบฒเบเบเบปเบเปเบงเบฑเปเบเบเบตเปเบฅเบงเบเบฅเบงเบกเบเบฒเบเบเปเบฒเบญเบฐเบเบดเบเบฒเบเบซเบเปเปเปเบเบ PDL::PP, เบเปเปเบกเบฒเปเบญเบตเปเบเบงเปเบฒ PP-
functions) เบเบฒเบเบงเปเบฒเบเบฐเบกเบตเบเปเบฒเบเบงเบเบเบฐเบซเบเบฒเบ (เบเปเบฒเปเบชเบธเบเบเบตเป) เบเปเบฒเบเบปเบ (เบเบงเบเปเบฎเบปเบฒเปเบญเบตเปเบเบงเปเบฒเบเบฐเบซเบเบฒเบเบซเบผเบฑเบ)
เบเบฒเบเปเบเปเบฅเบฐเบเบฒเบเปเบเปเบเบฝเบ pdl เบเบญเบเบกเบฑเบ. เบเบฑเบเบเบฑเบเบเบฒเบเปเบเบเบฒเบเบงเปเบฒเบเบฐเบกเบตเบชเบญเบเบกเบดเบเบดเบซเบเบถเปเบ (เบเบฒเบเบเปเบญเบเบเปเปเบกเบนเบ)
เบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบเบเบตเปเบกเบฑเบเบเบดเบเปเบฅเปเบเปเบฒเบชเบนเบเบกเบดเบเบดเบกเบดเบเบด (เบเบปเบเบเบฐเบฅเบดเบ). เบเบงเบเปเบฎเบปเบฒเบเบฝเบเบงเปเบฒ
เบชเบฑเบเบเบฒเบฅเบฑเบเปเบเบฑเบ "เบเบฒเบเปเบ((n),(n),[o]())" เปเบฅเบฐเปเบญเบตเปเบเบกเบฑเบเบงเปเบฒ "เบเบฒเบเปเบ". เบฅเบฒเบเปเบเบฑเบ, เบเปเบญเบเบเบตเป n เปเบเบฑเบเบเบปเบงเปเบเบ
เบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเบเบฑเปเบ. n เบเบงเบฒเบกเปเบเบปเปเบฒเบเบฝเบกเบเบฑเบเปเบเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบเบเปเบฒเบญเบดเบเปเบฅเบฐเบเบตเบชเบญเบเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒ
เบเบฐโเบซเบเบฒเบโเปเบซเบผเบปเปเบฒโเบเบฑเปเบโเบเปเบญเบโเบกเบตโเบเบฐโเบซเบเบฒเบโเปเบเบปเปเบฒโเบเบฝเบกโเบเบฑเบโเปเบโเบเบฒเบโเปเบโเปเบโเบซเบเบถเปเบโ. เปเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ, เปเบญเบปเบฒ
เบเบฐโเบฅเบดเบโเบเบฐโเบเบฑเบโเบเบฒเบโเบเบญเบโเบเบตเปโเปเบเปโเปเบงโเบฅเบฒโเบชเบญเบ 1D vectors เปเบเบทเปเบญโเบชเปเบฒเบ 2D matrixโ, เบเบฝเบโเบชเบฑเบโเบเบฒโเบฅเบฑเบโเปเบเบฑเบโ
"เบเบญเบ(เบ),(m),[o](n,m))". "[o]" เปเบเบเบฑเบเบชเบญเบเบเบปเบงเบขเปเบฒเบเบเบตเปเปเบซเปเปเบซเบฑเบเบงเปเบฒเบเบตเป (เบเบตเปเบเบตเปเบเบตเบชเบฒเบก)
argument เปเบกเปเบเบเบฒเบเปเบเปเบเบฝเบเบเบปเบเบเบฐเบฅเบดเบ. เปเบเบเบปเบงเบขเปเบฒเบเบชเบธเบเบเปเบฒเบ, เบเบฐเบซเบเบฒเบเบเบญเบเบเปเบฒเบญเบดเบเปเบฅเบฐเบเบตเบชเบญเบ
เบเบฒเบเปเบเปเบเบฝเบเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบญเบเบเบปเบเบฅเบปเบ, เปเบเปเบเปเบฒเบเปเบเบดเปเบเบงเปเบฒเบเบงเบเปเบเบปเบฒเบเปเบฒเบเบปเบเบเบฐเบซเบเบฒเบเบเบญเบเบชเบญเบเบเบฐเบซเบเบฒเบเปเบเบงเปเบ
เบเบญเบเบเบปเบเบเบฐเบฅเบดเบ pdl.
เบเบตเปเปเบกเปเบเบเบธเบเปเบเปเบงเบฅเบฒเบเบตเป threading เบชเบธเบเบเปเบฒเบเปเบเบปเปเบฒเปเบเปเบเปเบเบก. เบเปเบฒเบเปเบฒเบเปเบเบซเบฒ PP-functions เบเบฑเบ
pdls เบเบตเปเบกเบต เปเบเบตเปเบกเปเบเบตเบก เบเปเบงเบฒเบเบฐเบซเบเบฒเบเบซเบผเบฑเบเบเบตเปเบเปเบญเบเบเบฒเบ, เบเบฐเบซเบเบฒเบเบเปเบฒเบญเบดเบเบเบญเบ pdl
arguments เบเบทเบเบเปเบฒเปเบเปเปเบเบฑเบเบเบฐเบซเบเบฒเบเบซเบผเบฑเบเปเบฅเบฐเบเบฐเบซเบเบฒเบเปเบเบตเปเบกเปเบเบตเบกเปเบกเปเบ threaded
เปเบเบตเบ. เบเปโเปเบซเปโเบเบงเบโเปเบฎเบปเบฒโเบชเบฐโเปเบเบโเปเบซเปโเปเบซเบฑเบโเบเบตเปโเบเปเบฒโเบญเบดเบโเบเบตเปโเบกเบตโเบเบปเบงโเบขเปเบฒเบโเบเบญเบโเบเบงเบโเปเบฎเบปเบฒโเบเปเบฒเบโเปเบเบดเบโเบเบตเปโ
$grey = เบเบฒเบเปเบ($im,$w); # w เปเบกเปเบ vector เบเปเปเบฒเบซเบเบฑเบเบเบฒเบเบเปเบฒเบเปเบเบดเบ
เปเบโเบเปโเบฅเบฐโเบเบตโเบเบตเป $w เปเบกเปเบ 1D เปเบฅเบฐโเบชเบฐโเบซเบเบญเบโเปเบซเปโเบเบฝเบโเปเบเปโเบเบฐโเบซเบเบฒเบโเบซเบผเบฑเบโ, $im เปเบกเปเบ 3Dโ, เบซเบผเบฒเบโ
เปเบเบเบชเบฐเปเบเบฒเบฐ "(3,x,y)". เบกเบดเบเบดเบเปเบฒเบญเบดเบ (เบเบฐเบซเบเบฒเบ 3) เปเบกเปเบเบเบฐเบซเบเบฒเบเบซเบผเบฑเบเบเบตเปเบเปเบญเบเบเบฒเบ
เบเบตเปเบเบปเบเบเบฑเบ (เบเบฒเบกเบเบงเบฒเบกเบเปเบญเบเบเบฒเบเบเบญเบเบเบฒเบเปเบ) เบกเบดเบเบดเบเบณเบญเบดเบ (เปเบฅเบฐเบเบฝเบง) เบเบญเบ $w. เบเบตเปโเบชเบญเบ
เบเบฐโเบซเบเบฒเบโเปเบกเปเบโเบเบฐโเบซเบเบฒเบโเบเบฐโเบเบนเปโเบเปเบฒโเบญเบดเบ (เบเบญเบโเบเบฐโเบซเบเบฒเบ "xโ"โ) เปเบฅเบฐโเบเบตโเบชเบฒเบกโเปเบกเปเบโเบขเบนเปโเบเบตเปโเบเบตเปโเบเบฑเปเบโเบเบตโเบชเบญเบโ
เบเบฐเบซเบเบฒเบเบเบฐเบเบนเป (เบเบฐเบซเบเบฒเบ "y"). pdl เบเบปเบโเบเบฐโเบฅเบดเบโเปเบกเปเบโเบเบฒเบโเบชเปเบฒเบโเบเบฑเปเบโเบญเบฑเบโเบเบฐโเปเบโเบกเบฑเบ (เบเบฒเบกโเบเบฒเบโเบฎเปเบญเบโเบเปโเปเบเบ
เบเบฑเปเบ $grey เปเบเบฑเบ "null" เบเปเบญเบเบเบฒเบเปเบญเบตเปเบ). เบเบฐเบซเบเบฒเบเบเบปเบเบเบฐเบฅเบดเบเปเบกเปเบเปเบเปเบฎเบฑเบเปเบเบ
เบเปเปเบเปเบฒเบ loop เบเบฐเบซเบเบฒเบ (เบเบตเปเบเบตเป "(x,y)") เบเบฑเบเบเบฐเบซเบเบฒเบเบเบปเบเบเบฐเบฅเบดเบเบซเบผเบฑเบ (เบเบตเปเบเบตเป 0D) เบเบฑเบ
เบชเบปเปเบเบเบปเบเปเบซเปเบเบฐเปเบฒเบเบชเบธเบเบเปเบฒเบเบเบญเบ pdl เบเบตเปเบชเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ (เบเบตเปเบเบตเป "0D+2D=2D" เปเบเบทเปเบญเปเบซเปเบเบปเบเปเบเปเบฎเบฑเบ 2D
เบเบฐเบซเบเบฒเบ "(x,y)").
เบเบฑเปเบเบเบฑเปเบเบเปเบฒเบชเบฑเปเบเบเปเบฒเบเปเบเบดเบเบเบตเปเปเบญเบตเปเบเบงเปเบฒเบเบฒเบเบเปเบฒเบเบฒเบเบซเบผเบฑเบเบเบตเปเบเบดเบเปเบฅเปเบเบฐเบฅเบดเบเบเบฐเบเบฑเบเบเบฒเบเปเบเบเบญเบเบชเบญเบ
1D vectors "x*y" เปเบงโเบฅเบฒโเบเบฑเบ $w เปเบฅเบฐโเบชเปเบงเบ 1D เบเบฑเบโเบซเบกเบปเบโเบเบญเบโเบฎเบนเบโเปเบเบ "(':,(i),(j)')" เบเบญเบ $im เปเบฅเบฐ
เบเปเบฒเบเบปเบเบญเบปเบเบเบฐเบเบญเบเบเบฒเบกเบฅเปเบฒเบเบฑเบเบเบญเบเบเบปเบเบเบฐเบฅเบดเบ pdl "$grey(i,j)" เบเบฑเบเบเบปเบเปเบเปเบฎเบฑเบเบเบญเบเปเบเปเบฅเบฐ
เบเบฒเบโเบเบดเบโเปเบฅเปโ. เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเบฝเบเปเบเบฑเบเบชเบฑเบเบเบฒเบฅเบฑเบ
$grey(0,0) = f($w,$im(:,(0),(0)))
$grey(1,0) = f($w,$im(:,(1),(0)))
.
.
.
$grey(x-2,y-1) = f($w,$im(:,(x-2),(y-1))))
$grey(x-1,y-1) = f($w,$im(:,(x-1),(y-1))))
เปเบเปเบเบตเปเปเบกเปเบเปเบฎเบฑเบเปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเปเบเบ PDL เปเบเบเบเปเปเบกเบตเบเบฒเบเบเบฝเบ Loop Perl เบขเปเบฒเบเบเบฑเบเปเบเบ. เบเบงเบเปเบฎเบปเบฒเปเบเบดเปเบ
เบงเปเบฒเบเปเบฒเบชเบฑเปเบเบเปเปเบชเปเบฒเบ pdl เบเบปเบเบเบฐเบฅเบดเบเบเบตเปเบกเบตเบเบฐเบซเบเบฒเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเปเบฅเบฐเบเปเบฒเบเบปเบ
เบญเบปเบเบเบฐเบเบญเบเบเบตเปเปเบเปเบเบดเบเปเบกเปเบเบเบปเบเบเบญเบเบเบฒเบเบเบดเบเปเบฅเปเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐ pixels เบฅเบงเบเบเบญเบเบฎเบนเบเบเบฒเบเบเบฒเบเบเปเบญเบเบเปเปเบกเบนเบ.
เปเบเปเบงเบฅเบฒเบเบตเป pdls เปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบดเปเบชเบเปเบกเปเบเบกเบตเบชเปเบงเบเบฎเปเบงเบก, เบชเบดเปเบเบเปเบฒเบเปเบเปเปเบชเบฑเบเบชเบปเบเบซเบผเบฒเบ.
เบเบงเบเปเบฎเบปเบฒเบเปเบฒเบญเบดเบเบเบฐเปเบซเปเบเบปเบเบฅเบฐเบเบฝเบเบเบปเปเบงเปเบเบงเบดเบเบตเบเบฒเบเบเบฐเบซเบเบฒเบเบเบฐเบเบนเปเบเบถเปเบเบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบ
input pdls เบเปเบงเบเปเบซเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเบดเบเบญเบญเบเบเบฐเบซเบเบฒเบเบเบญเบ pdl เบเบปเบเบเบฐเบฅเบดเบเบเบตเปเบชเปเบฒเบเปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
(เบชเปเบฒเบฅเบฑเบเบเบธเบเบเบฒเบเบเปเบญเบเบเปเปเบกเบนเบ pdls เปเบฅเบฐเบเบฐเบซเบเบฒเบเบซเบผเบฑเบเบเบญเบ PP-function เปเบเบเปเบฒเบเบฒเบก). เปเบเป
เบเบปเบเบฅเบฐเบเบฝเบเบเบปเปเบงเปเบเบชเปเบงเบเบซเบผเบฒเบเบญเบฒเบเบเบฐเบชเบฑเบเบชเบปเบเปเบฅเบฑเบเบเปเบญเบเปเบเบชเบฒเบเบเบฒเบเปเบฒเบญเบดเบเบเบฑเปเบเบเบฑเปเบเบเบงเบเปเบฎเบปเบฒเบเบฐเบเปเบฒเบเบปเบเบญเบญเบ
เปเบเบทเปเบญเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเปเบเบดเบเบเบฒเบเบเปเบฒเปเบเปเบเบตเปเบกเบตเบเบธเบเบเบญเบเบเบปเบงเบขเปเบฒเบเปเบเบตเปเบกเปเบเบตเบก (เปเบเบดเปเบเบซเบงเบฑเบเบงเปเบฒเบเบฐ
เบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเปเบฒเบกเบตเบซเบผเบฒเบเบชเบฐเบเบฒเบเบฐเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบปเบงเบเบดเบเบเบตเป threading เปเบเบปเปเบฒเบกเบฒ
เบกเบตเบเบฐเปเบซเบเบเบซเบผเบฒเบ).
A เปเบ เบชเปเบฒเบฅเบฑเบเบเบฒเบ เบฅเบฐเบซเบฑเบ เบฅเบฐเบเบฝเบเบงเบดเปเบ
เบเปเบญเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฐเบเบตเปเปเบซเปเปเบซเบฑเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบเบญเบทเปเบเปเบเบญเบ threading, เบเบฐเบฅเบธเบเบฒเบชเบฑเบเปเบเบเบเบฒเบเปเบเบเบตเปเบชเปเบฒเบฅเบฑเบ
เบฅเบฐเบเบฝเบเบงเบดเปเบเบเบฒเบเบเบฝเบเปเบเบฅเปเบเบฅเบกเปเบเปเบงเบฅเบฒเปเบเป threading:
เปเบเบทเปเบญเบฎเบฑเบเบชเบฒเบเบงเบฒเบกเบชเบฒเบกเบฒเบเปเบเบเบฒเบเบญเปเบฒเบเบเบญเบเบกเบฐเบเบธเบ, เบเบฐเบฅเบธเบเบฒ เบเปเบฒเบเบดเบเบเปเบฒเปเบซเบฑเบเปเบเปเบเบฒเบเบชเบฐเปเบเบเบญเบญเบ nontrivial เปเบเบเบญเบเบเปเบฒเบ
เบฅเบฐเบซเบฑเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบฑเบ threading. เบชเปเบฒเบเบฑเบเบเบตเปเบชเบธเบ, เบชเปเบฒเบฅเบฑเบ subroutine เปเบ, เบเบฐเบเบญเบเบกเบตเบเปเปเบกเบนเบเบเปเบฒเบงเบชเบฒเบเบเบตเป
เบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเบเปเบฝเบงเบเบฑเบเบชเบดเปเบเบเบตเปเบเปเบฒเบเบเบฒเบเบซเบงเบฑเบเบงเปเบฒเบเบฐเบซเบเบฒเบเบเบฐเปเบเบฑเบเบเบปเบงเปเบเบ (เบซเบผเบทเบเบญเบเปเบเบเบเบญเบเบเบฐเบซเบเบฒเบ).
เปเบเบเบฒเบเบฐเปเบเบฑเบเบเบฒเบเปเบเบทเบญเบ, เปเบเบดเปเบเบซเบเปเบฒเบเบตเปเบเปเปเบกเบตเปเบญเบเบฐเบชเบฒเบเบเบตเปเปเบฅเบฐเบเบฐเบเบฒเบเบฒเบกเปเบเบปเบฒเบชเบดเปเบเบเบตเปเบญเบฒเบเบเบฐเปเบเบตเบเบเบถเปเบ:
เบเบฒเบเบเบญเบเบซเบฒเบเปเบญเบ {
my ($im,$palette) = @_;
$res เบเบญเบเบเปเบญเบ;
index($palette->xchg(0,1),
$im->long->dummy(0,($palette->dim)[0]),
($res=null));
เบเบฑเบเบเบทเบ $res;
}
เบเปเบฒเบเบเบปเบเบฅเบปเบเปเบซเบฑเบเบเบตเบงเปเบฒเบกเบฑเบเบญเบฒเบเบเบฐเปเบเบฑเบเบเบฒเบเบเบฒเบเบเบตเปเบเบฐเบเบดเบเบญเบญเบเบเบฐเบซเบเบฒเบเบเบตเปเบเบฒเบเปเบงเป, เบเบธเบเบเบฐเบชเบปเบเบเบญเบ
เบเบปเบเบเบฐเบเบด, เปเบฅเบฐเบญเบทเปเบเป? (เบเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบญเบเบซเบฒเบชเบดเปเบเบเบตเปเบฅเบฐเบซเบฑเบเบเบตเปเปเบฎเบฑเบ, เปเบเบดเปเบเบเปเบฒเบเบฅเบธเปเบกเบเบตเป)
เบงเบดเบเบตเบเบฒเบ to เบฎเบนเบ เบญเบญเบ เปเบเป loop เบเบฐเบซเบเบฒเบ
เบกเบตโเบเบปเบโเบฅเบฐโเบเบฝเบโเบชเบญเบโเบชเบฒเบกโเบเบตเปโเบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโเบเปเบฒเบโเปเบเบทเปเบญโเบเบดเบโเบญเบญเบโเบเปเบฒโเบเบงเบโเปเบฅเบฐโเบเบฐโเบซเบเบฒเบโเบเบญเบ loop เปเบเปโ
เบเบฐเบซเบเบฒเบ (เปเบฅเบฐเบเปเบฒเบเบฐเบซเบเบฒเบเบเบญเบ input pdls เบเบญเบเบเปเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบกเบเบปเบเบฅเบฐเบเบฝเบ threading).
เบเบฐเบซเบเบฒเบเบเบญเบเบเบฒเบเปเบเปเบเบฝเบ pdl เปเบเบเบทเบเปเบเปเบเบญเบญเบเปเบเบฑเบเบชเบญเบเบเบธเปเบกเบเบฑเปเบเบเปเปเปเบเบเบตเป: Core
เบเบฐเบซเบเบฒเบ (เบเบฒเบกเบเบตเปเบเปเบฒเบเบปเบเปเบเบ PP-function, เปเบเบดเปเบ เปเบญเบเบฐเบชเบฒเบเบเปเบญเบ B เบชเปเบฒเบฅเบฑเบเบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบเบญเบ PDL primitives)
เปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบดเปเบชเบเบเบตเปเบเบฐเบเบญเบเบเปเบงเบเบเบฐเบซเบเบฒเบเบเบตเปเบเบฑเบเปเบซเบผเบทเบญเบเบฑเบเบซเบกเบปเบเบเบญเบ pdl เบเบฑเปเบ. เบเบปเบโเบเบปเบงโเบขเปเบฒเบ
เปเบญเบตเปเบเบเบฑเบเบเบฑเบ "func" เบเบตเปเบกเบตเบฅเบฒเบเปเบเบฑเบ "func((n,m),[o](n))" เบเปเบงเบ pdl.
"a(2,4,7,1,3)" เปเบเบฑเบ "f($a,($o = null))" เบชเบปเปเบเบเบปเบเปเบซเปเบเบฒเบเปเบเปเบเบเบฐเปเบฒเบเบเบญเบ a semantic.
เปเบเบปเปเบฒเปเบเปเบ: เบเบฐเบซเบเบฒเบเบซเบผเบฑเบ "(2,4)" เปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบดเปเบชเบ "(7,1,3)".
เบเบฐเปเบฒเบเบซเบผเบฑเบ R0 เบเบทเบเบฅเบฐเบเบธเบเปเบงเบเบเบฐเปเบฒเบ N เบเบณเบญเบดเบเบเบญเบ pdl เบเบตเปเบเปเบฝเบงเบเปเบญเบ
เบเบฒเบเปเบเปเบเบฝเบ (เปเบฅเบฐเบเปเบญเบเบเบฒเบ). เบเบฐเบซเบเบฒเบเปเบเบตเปเบกเปเบเบตเบกเปเบเปเปเบกเปเบเบเบฐเบซเบเบฒเบเบเบดเปเบชเบเปเบฅเบฐเปเบเปเปเบเบทเปเบญ
เบเปเบฒเบเบปเบเบเบฐเบซเบเบฒเบเบเบญเบ loop เปเบเป.
R1 เบเปเบฒเบเบงเบเบเบญเบ ( implicit ) เบเบฐเบซเบเบฒเบ loop เปเบเบปเปเบฒเบเบฑเบเบเปเบฒเบเบงเบเบชเบนเบเบชเบธเบเบเบญเบเบเบดเปเบชเบ
เบเบฐโเบซเบเบฒเบโเบเบตเปโเบเปเบฒโเปเบเปโเปเบโเปเบฅโเบเบฐโเบเบธเบโเบเบญเบโเบเบฒเบโเปเบเปโเบเบฝเบ pdlโ.
R2 เบเบฐเบซเบเบฒเบเบเบญเบเปเบเปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบญเบ loop เปเบกเปเบเบกเบฒเบเบฒเบเบเบฐเบซเบเบฒเบเบเบฒเบกเบฅเปเบฒเบเบฑเบ
เบเบฐเบซเบเบฒเบเบเบญเบเบเบฒเบเปเบเปเบเบฝเบ pdl. เบเบฐเบซเบเบฒเบเบเบญเบเบงเบปเบเปเบซเบงเบเปเบกเปเบเปเบซเปเปเบเบ
เบเบฐเบซเบเบฒเบเบชเบนเบเบชเบธเบเบเบตเปเบเบปเบเปเบซเบฑเบเบขเบนเปเปเบ pdls เปเบเบเบตเปเบกเบตเบเบฐเบซเบเบฒเบเบเบดเปเบชเบเบเบตเป.
R3 เบชเปเบฒเบฅเบฑเบ pdls เบเบฑเบเบซเบกเบปเบเบเบตเปเบกเบตเบเบฐเบซเบเบฒเบเบเบดเปเบชเบเปเบซเป, เบเบฐเบซเบเบฒเบเบเบฐเบเปเบญเบเปเบเบปเปเบฒเบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบ
เบเบฐเบซเบเบฒเบเบเบญเบ loop (เบเบฒเบกเบเบฒเบเบเปเบฒเบเบปเบเปเบเบเบเบปเบเบฅเบฐเบเบฝเบเบเบตเปเบเปเบฒเบเบกเบฒ) เบซเบผเบท 1; เบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบเบเปเบฒเบเบเบปเบ a
เบเปเปเบเบปเบเปเบงเบฑเปเบ runtime. เบเปเบฒเบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเบเบดเปเบชเบเปเบ pdl เปเบกเปเบเบซเบเบถเปเบ
เบเบฐเบเบดเบเบฑเบเปเบเบ implicitly เปเบเบฑเบ dummy เบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเบเบฑเบเบงเปเบฒ loop dim เบเบฐเบซเบเบฒเบเปเบเปเบงเบฅเบฒเบเบตเป
เบเบฐเบเบดเบเบฑเบเบเบฒเบ loop thread.
R4 เบเปเบฒ pdl เบเปเปเบกเบตเบเบฐเบซเบเบฒเบเบเบญเบ loop, เปเบ thread loop pdl เบเบตเปเบเบทเบเบเบฐเบเบดเบเบฑเบเบเบทเบเบฑเบเบงเปเบฒ
เบกเบตเบเบฐเบซเบเบฒเบ dummy เบเบญเบเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบเบงเบปเบ loop เบเบฑเปเบ.
R5 เบเปเบฒโเบซเบฒเบโเบงเปเบฒโเบเบปเบโเบเบฐโเบฅเบดเบโเบเบฒเบโเบชเปเบฒเบโเบญเบฑเบโเบเบฐโเปเบโเบกเบฑเบโเปเบเปโเบเบทเบโเบเปเบฒโเปเบเป (เปเบเบโเบเบฒเบโเบเบฑเปเบ pdl เบเบตเปโเบเปเบฝเบงโเบเปเบญเบโเปเบเบฑเบ "PDL-โ> nullโ" เบเปเบญเบโ.
invocation) เบเปเบฒเบเบงเบเบเบฐเบซเบเบฒเบเบเบญเบ pdl เบเบตเปเบชเปเบฒเบเบเบถเปเบเปเบกเปเบเปเบเบปเปเบฒเบเบฑเบเบเบปเบเบฅเบงเบกเบเบญเบ
เบเปเบฒโเบเบงเบโเบเบฐโเบซเบเบฒเบโเบเบฐโเบฅเบดเบโเบเบฐโเบเบฑเบโเบซเบผเบฑเบ + เบเปเบฒโเบเบงเบโเบเบญเบโเบเบฐโเบซเบเบฒเบ loopโ. เบเบฐเบซเบเบฒเบเบเบญเบเปเบเบ
เบเบฐเบซเบเบฒเบเบเบปเบเบเบฐเบฅเบดเบเปเบกเปเบเบกเบฒเบเบฒเบเบเบฐเบซเบเบฒเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบญเบ input pdls (เบเบฒเบกเบเบตเปเบฅเบฐเบเบธ
เปเบเบเปเบฒเบเบดเบเบฒเบกเบเบฑเบเบเบฑเบ) เปเบฅเบฐเบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบเบญเบทเปเบเปเปเบกเปเบเปเบเบปเปเบฒเบเบฑเบ
เบเบฐโเบซเบเบฒเบโเบเบญเบโเบเบฐโเบซเบเบฒเบ loop เบกเบฑเบโเปเบกเปเบโเปเบเปโเบกเบฒโเบเบฒเบโ. pdl เบชเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเบเบฐเปเบเบฑเบ
เบเบฒเบเบเบฒเบเบฐเบเบฒเบ (เปเบงเบฑเปเบเปเบชเบเปเบเป dataflow เปเบกเปเบเบขเบนเปเปเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบ).
เปเบเบชเบฐเบเบฒเบเบเบฒเบเบเบตเป, เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒเบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฅเปเบเปเบเบปเปเบฒเปเบเปเบเบเบฑเบเบซเบฒเบเบตเปเบกเบตเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบซเปเบเบฑเบ pdls เบเบตเปเบกเบต
เบเบฐเบซเบเบฒเบ dummy เบซเบผเบฒเบเบเบงเปเบฒเบซเบเบถเปเบ (เปเบเบดเปเบเบเปเบฒเบเปเบเบดเบ). เปเบเบดเบเปเบกเปเบเบงเปเบฒ pdl เบเบปเบเบเบฐเบฅเบดเบเบเบญเบเบเปเบฒเบเบเปเปเบกเบต
เบเบธเบเปเบเบฐเบซเบเบฒเบ dummy เปเบเบชเบฐเบเบฒเบเบเบตเปเบเปเบฒเบญเบดเบเบเบตเปเปเบเบปเบฒเปเบเบปเปเบฒเบญเบฒเบเบเบฐเบชเบดเปเบเบชเบธเบเบเปเบงเบ dummy เบชเปเบฒเบ implicitly
เบเบฐเบซเบเบฒเบเบเบฒเบก R4.
เบเบปเบงเบขเปเบฒเบ, เบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบกเบต PP-function (เบเบตเปเบเบตเปเบเปเปเปเบเปเบฅเบฐเบเบธ) เบเบตเปเบกเบตเบฅเบฒเบเปเบเบฑเบ:
func((m,n),(m,n,o),(m),[o](m,o))
เปเบฅเบฐเบเปเบฒเบเปเบญเบตเปเบเบกเบฑเบเบเปเบงเบ 3 pdls "a(5,3,10,11)", "b(5,3,2,10,1,12)", เปเบฅเบฐ "c(5,1,11,12)" เปเบเบฑเบ
func($a,$b,$c,($d=null))
เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ, เบเปเบฒเบเบงเบเบเบฐเบซเบเบฒเบเบเบญเบเบงเบปเบเปเบกเปเบ 3 (เปเบเบ "R0 + R1" เบเบฒเบ $b เปเบฅเบฐ $c) เบเบตเปเบกเบตเบเบฐเบซเบเบฒเบ.
"(10,11,12)" (เปเบเบ R2); เบชเบญเบเบเบฐเบซเบเบฒเบเบซเบผเบฑเบเบเบปเบเบเบฐเบฅเบดเบเปเบกเปเบ "(5,2)" (เบเบฒเบเบฅเบฒเบเปเบเบฑเบเบเบญเบ
func) เบชเบปเปเบเบเบปเบเปเบซเปเบเบปเบเบเบฐเบฅเบดเบ 5 เบกเบดเบเบด pdl $c เบเบญเบเบเบฐเบซเบเบฒเบ "(5,2,10,11,12)" (เปเบเบดเปเบ R5) เปเบฅเบฐ
(เบเบตเปเบชเปเบฒเบเบเบถเปเบเปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ) $d เปเบกเปเบเบกเบฒเบเบฒเบ "($a,$b,$c)" เปเบเบฎเบนเบเปเบเบเบเบตเปเบชเบฒเบกเบฒเบเบชเบฐเปเบเบเบญเบญเบเปเบเป.
เปเบ pdl pseudo-code as
$d(:,:,i,j,k).= func($a(:,:,i,j),$b(:,:,:,i,0,k),$c(:, 0,j,k))
เบเบฑเบ 0<=i<10, 0<=j<=11, 0<=k<12
เบเปเบฒเบเบงเบเปเบฎเบปเบฒเบงเบดเปเบเบฒเบฐเบเบฒเบเบเปเบฝเบเบชเบตเปเบเบฑเบเบชเบตเปเบเบปเบฒเบญเบตเบเบเบฑเปเบเบเปเบงเบเบเบปเบเบฅเบฐเบเบฝเบเปเบซเบผเบปเปเบฒเบเบตเปเบขเบนเปเปเบเปเบเบเบงเบเปเบฎเบปเบฒเบชเบฑเบเปเบเบเปเบซเบฑเบ
เบญเบตเบเบเบฐเบเบฒเบเบซเบเบถเปเบเบเบฐเปเบซเบเบเบเบตเปเบเบดเปเบเปเบซเบเปเบเบญเบเบเบฐเบเบนเป implicit. เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเปเบเบซเบฒเบเบฒเบเปเบเบเบเปเบงเบ pdl
เปเบเบฑเบเบเบปเบงเปเบเบ pixels (im(3)), เปเบชเบฑเปเบเบเบญเบ rgb pixels ("im(3,x)"), เบฎเบนเบเบเบฒเบเบชเบตเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก
("im(3,x,y)") เบซเบผเบทเบฎเบนเบ RGB เบเบฑเบเปเบปเบ ("im(3,x,y,z)"). เบเบฒเบเปเบเบเบตเป $im เปเบกเปเบเบเบญเบ
เบฎเบนเบเปเบเบ "(3, ...)" pdl เบเบปเบเบเบฐเบฅเบดเบเบเบตเปเบชเปเบฒเบเบเบถเปเบเปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเบเบฐเบกเบตเบเปเบฒเบเบงเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก
เบเบฐโเบซเบเบฒเบโเปเบฅเบฐโเบเบฑเบโเบเบธโเบเปเปโเบกเบนเบโเบเบงเบฒเบกโเปเบเบฑเปเบกโเปเบเบโเบเบฑเปเบโเบเบตเปโเบเบงเบโเปเบฎเบปเบฒโเบเบฒเบโเบซเบงเบฑเบโเบงเปเบฒโเบกเบฑเบโเบเบฑเบโเบเบฑเปเบโเปเบเป loops เปเบเปโ
เบเบฐเบเบดเบเบฑเบ implicitly เบเบญเบเปเบ implicit เบเบฐเบเบนเป. เปเบเบปเปเบฒเบชเบฒเบกเบฒเบเปเบเปเบกเบเปเบฒเบงเบเบปเบงเปเบญเบเปเบเปเบเปเบฒเบเปเบงเปเบฒ
เบเบฒเบเปเบเบเปเบงเบเบชเบต pixel $grey เปเบกเปเบ 0D, เบกเบตเบชเบฒเบเบกเบฑเบเบญเบญเบเปเบเบฑเบ 1D grey(x), เบกเบตเบฎเบนเบ
เบเบงเบเปเบฎเบปเบฒเปเบเปเบฎเบฑเบ "grey(x,y)" เปเบฅเบฐเบชเบธเบเบเปเบฒเบเบเบงเบเปเบฎเบปเบฒเปเบเปเบฎเบฑเบ stack เบฎเบนเบเบเบฒเบ "grey(x,y,z)".
เบเปเปเบซเปเบเบทเปเบกเบเบปเบเบฅเบฐเบเบฝเบเบเบปเปเบงเปเบเปเบซเบผเบปเปเบฒเบเบตเปเปเบซเปเบเบฑเบเบเบตเบงเบดเบเบเบทเปเบกเบญเบตเบเปเบเบเบเบฒเบเบเปเบฒเบเบชเบญเบเบชเบฒเบกเบญเบฑเบเบเปเปเปเบ
เบเบปเบงเบขเปเบฒเบ. เบเบนเปโเบญเปเบฒเบโเบญเบฒเบโเบเบฐโเบเบฐโเบเบฒโเบเบฒเบกโเบเบตเปโเบเบฐโเบเบดเบโเบญเบญเบโเปเบเบโเบเบตเปโเบเบฝเบโเปเบเบปเปเบฒโเบเบตเปโเบเบฐโเปเบเปเบโเบชเปเบฒโเบฅเบฑเบโเบเบฒเบ
looping เปเบฅเบฐเบเบฝเบเบเบฝเบเบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเบเบญเบเบเบปเบเบเบฐเบเบดเปเบซเบผเบปเปเบฒเบเบฑเปเบเปเบเบเปเบเป threading implicit เบเบฑเบ the
เบเบฒเบโเบชเปเบฒเบโเบเบฑเปเบโเบขเปเบฒเบโเบเบฑเบโเปเบเบโ. เบเบญเบเบเบฒเบเบเบฑเปเบ, เปเบเบเบชเบฐเปเบเบฒเบฐเปเบเปเบงเบฅเบฒเบเบตเปเบเบฒเบเบเปเบฒเปเบเปเบเบฐเบซเบเบฒเบ thread เบซเบผเบฒเบเบกเบฑเบเปเบเบฑเบ a
เบญเบญเบโเบเปเบฒโเบฅเบฑเบโเบเบฒเบโเบเบตเปโเปเบเบฑเบโเบเบฐโเปเบซเบเบโเปเบเบทเปเบญโเบเบงเบโเบชเบญเบโเบเบงเบฒเบกโเปเบงโเบเบญเบโเบเบตเปโเบเปเบญเบโเปเบเบโเบเบฒเบโเปเบฎเบฑเบโเบเบฒเบโเบเบปเบโเบชเบญเบ benchmark เบเบฒเบ (เบเบตเปโเบเบงเบโเปเบฎเบปเบฒโเบเบฑเบโ
เบเปเบญเบโเปเบฎเบฑเบ).
เบซเบเปเบฒเบเปเบฒเบญเบดเบเปเบเปเบเบงเปเบกเปเบเบเบปเบงเบขเปเบฒเบ centroid เบเบตเปเปเบฎเบฑเบเปเบซเบกเปเปเบฅเบฑเบเบเปเบญเบ, เบเบญเบเบเบตเปเบเบทเบเบฅเบฐเบซเบฑเบเบเปเบงเบ threading
เบเบดเบเปเบ.
# threaded mult เปเบเบทเปเบญเบเบดเบเปเบฅเป centroid coords, เปเบฎเบฑเบเบงเบฝเบเบชเปเบฒเบฅเบฑเบเบเบฒเบ stacks เปเบเบฑเปเบเบเบฝเบงเบเบฑเบ
$xc = sumover(($im*xvals(($im->dims)[0]))->เบเบธเปเบก(2)) /
sumover($im->เบเบธเปเบก(2));
เบเปเปเบซเปเบงเบดเปเบเบฒเบฐเบชเบดเปเบเบเบตเปเปเบเบตเบเบเบถเปเบเปเบเบทเปเบญเบฅเบฐเบเปเบฒเบง. เบซเบเปเบฒเบเปเบฒเบญเบดเบเบเบฐเบฅเบดเบเบเบฐเบเบฑเบ:
$prod = $im*xvals(zeroes(($im->dims)[0]))
เบเบตเปเบเบปเบงเบเบดเบเปเบฅเปเบงเบเบฐเปเบฎเบฑเบเบงเบฝเบเบชเปเบฒเบฅเบฑเบเบเบฒเบ $im เปเบเบฑเบเบซเบเบถเปเบ, เบชเบญเบ, เบชเบฒเบก, เปเบฅเบฐเบกเบดเบเบดเบชเบนเบเบเบงเปเบฒ. เบเปเบฒ $im เปเบกเปเบ
one-dimensional เบกเบฑเบเปเบเบฑเบเบเบฝเบเปเบเปเบเบฐเบฅเบดเบเบเบฐเบเบฑเบเบเปเบฒเบกเบฐเบเบฒ (เปเบเบเบงเบฒเบกเบซเบกเบฒเบเบงเปเบฒเบเบธเบเปเบญเบปเบเบเบฐเบเบญเบเบเบญเบ $im เปเบกเปเบ
เบเบนเบเบเปเบงเบเบญเบปเบเบเบฐเบเบญเบเบเบฒเบกเบฅเปเบฒเบเบฑเบเบเบญเบ "xvals(...)"), เบเปเบฒ $im เบกเบตเบเบฐเบซเบเบฒเบเบซเบผเบฒเบ
เบเบฐเบเบนเปเปเบเบตเปเบกเปเบเบตเบกเปเบกเปเบเปเบฎเบฑเบเปเบเปเปเบเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบซเบเบฒเบ dummy เบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบ "xvals(...)"
เบญเบตเบเบเบฒเบก R4. เบชเบดเปเบเบเบตเปเบชเปเบฒเบเบฑเบเบเบงเปเบฒเบเบฑเปเบ, เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ suover เบชเบญเบเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบญเบดเบเบเบญเบเบงเบดเบเบตเบเบฒเบ
เปเบเบทเปเบญเปเบฎเบฑเบเปเบซเปเบเบฒเบเบเปเบฒเปเบเปเบเปเบฒเบชเบฑเปเบ manipulating เบเบฐเบซเบเบฒเบ. เปเบเบดเปเบเบฅเบฒเบเปเบเบฑเบเบเบญเบ sumover เบขเปเบฒเบเปเบงเบงเบฒ
เบเบฐเปเบเบทเบญเบเบเปเบฒเบเบงเปเบฒเบกเบฑเบเบเบฝเบเปเบเป "gobble" เบเบฐเบซเบเบฒเบเบเปเบฒเบญเบดเบเบเบญเบ pdl เบเปเบญเบเบเปเปเบกเบนเบเปเบซเป.
เปเบเปเบเบฐเปเบเบฑเบเปเบเบงเปเบเบเปเบฒเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฒเบเบเบดเบเปเบฅเปเบเบปเบเบฅเบงเบกเบซเบผเบฒเบเบเบงเปเบฒเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบเบเบญเบเบชเบญเบเบเปเบฒเบญเบดเบ
เบเบฐเบซเบเบฒเบ? เบเบต, เบเปเปเบกเบตเบซเบเบฑเบเปเบฎเบฑเบเปเบซเปเบเบงเบเปเบฎเบปเบฒเบเบฒเบเบเบฒเบเบเปเบฒเบเบเบญเบ pdl virtual เปเบเบปเปเบฒเปเบเปเบ sumover เปเบเบดเปเบเปเบเบเบตเป
เบเปโเบฅเบฐโเบเบตโเปเบกเปเบโเบชเปเบฒเบโเบเบฑเปเบโเบเบถเปเบโเปเบเบ clumping เบชเบญเบโเบกเบดโเบเบดโเบเปเบฒโเบญเบดเบโเบเบญเบ "parent pdlโ" เปเบเบฑเบโเบซเบเบถเปเบโ. เบเบฒเบ
เบเบฑเบเบชเบฐเบเบฐเบเบญเบ pdl เบเปเปเปเบกเป, เบเบปเบเบฅเบงเบกเปเบเปเบเบทเบเบเบดเบเปเบฅเปเปเบเบเบฑเบเบเบธเบเบฑเบเปเบเปเบฅเบเบฐเบชเบญเบเบกเบดเบเบดเบเปเบฒเบญเบดเบ,
เบเบฑเปเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฒเบ, เปเบเบดเบเปเบกเปเบเบงเปเบฒ sumover เปเบเปเปเบฎเบฑเบเบงเบฝเบเบเบฒเบกเบเบตเปเบฅเบฐเบเบธเปเบงเปเปเบเบฅเบฒเบเปเบเบฑเบเบเบญเบเบกเบฑเบ. เปเบเป
เบกเบฑเบ ?
เบญเบตเบเบญเบฑเบเปเบถเปเบเบญเบฑเบเปเบฅเบฑเบเบเปเบญเบเบเบญเบเบเบฒเบเบเบฝเบเบฅเบฐเบซเบฑเบเปเบเบเบเบฑเปเบ: เบเบงเบเปเบฎเบปเบฒเบเบฑเปเบเปเบเปเบเป
"sumover($pdl->เบเบธเปเบก(2))" เปเบเบ "sum($pdl)" เปเบเบทเปเบญเปเบซเปเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเปเบฒเบเบเบฝเบเปเบเปเบฎเบนเบเบเบฒเบ
"(x,y)" เบซเบผเบท stack เบเบญเบเบฎเบนเบ "(x,y,t)" เปเบเบปเปเบฒเปเบเปเบเบเบปเบเบเบฐเบเบดเบเบตเปเปเบฅเบฐเปเบเปเบฎเบฑเบเบเบฝเบเปเบเปเบซเบเบถเปเบ.
x-coordiante เบซเบผเบท vector เบเบญเบ x-coordinates (เบเบฐเบซเบเบฒเบ t) เปเบเบเบฒเบเบเบฑเบเบเบทเบ.
เบเบธเบเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบปเปเบงเปเบเบญเบตเบเบญเบฑเบเบซเบเบถเปเบเปเบกเปเบเบชเบดเปเบเบเบตเปเบเบปเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเปเบญเบตเปเบเบงเปเบฒ "เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบฒเบเบเบฒเบเบเบฐเปเบ". เปเบซเบผเบปเปเบฒเบเบตเป
เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเปเบเปเปเบงเบฅเบฒ ND pdl เปเบเบฑเบ input เปเบฅเบฐเบชเบปเปเบเบเบทเบ a (N-1)-D "projected" pdl. เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเปเบซเบผเบปเปเบฒเบเบตเป
เบกเบฑเบเบเบฐเบเบทเบเบเบฐเบเบดเบเบฑเบเบเปเบงเบเบซเบเปเบฒเบเบตเปเปเบเบฑเปเบ: sumover, prodover, เบเปเบฒเปเบชเบธเบเบเบตเปเปเบฅเบฐเบชเบนเบเบชเบธเบ. เบเบฒเบเบเปเบฒเปเบเป
เบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบเบฎเบนเบเบเบฒเบเปเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบญเบฒเบเบเบฐเบเปเบญเบเบเบฒเบเบเบดเบเปเบฅเปเบเปเบฒ pixels เบชเบนเบเบชเบธเบเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐเปเบชเบฑเปเบ
เบเบญเบเบฎเบนเบเบเบฒเบเบซเบผเบท stack เบฎเบนเบเบเบฒเบ. เบเบงเบเปเบฎเบปเบฒเบฎเบนเปเบงเบดเบเบตเปเบฎเบฑเบเปเบเบงเบเบฑเปเบ
# เบชเบนเบเบชเบธเบเบเบญเบเปเบชเบฑเปเบ (เปเบเบฑเบเบซเบเปเบฒเบเบตเปเบเบญเบเบเปเบฒเบเบงเบเปเบชเบฑเปเบเปเบฅเบฐเปเบงเบฅเบฒ)
เบชเบนเบเบชเบธเบ($stack,($ret=null));
เปเบเปเบเปเบฒเบซเบฒเบเบงเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบตเปเบเบฐเบเบดเบเปเบฅเปเบชเบนเบเบชเบธเบเบเปเปเบเบฑเบเปเบเปเบงเบฅเบฒเบเบตเปเบเบฐเบเบนเป implicit เบชเบฐเปเบซเบกเบตเบเปเบฒเปเบเป
เบเบฒเบเบเปเบฒเบเบฒเบเบซเบผเบฑเบเบเบญเบเบกเบดเบเบดเบเปเบฒเบญเบดเบเปเบฅเบฐเบเบฐเบเบนเปเปเบเปเบฅเบเบฐเบญเบทเปเบเปเบเบฑเบเบซเบกเบปเบ? เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเบงเปเบ
เบเบฑเบโเบฅเบธโเปเบเปโเบงเปเบฒโเปเบเบโเบเบตเปโเบเบฐโเปเบเบฑเบโเบเบฒเบโเบเปเบฒโเบเบฒเบโเบซเบผเบฑเบโเปเบเปโเบเบทเบโเบเปเบฒโเปเบเปโเบเบฑเบโเบกเบดโเบเบดโเบเบตโเบชเบญเบโเปเบฅเบฐโ
threading เปเบกเปเบเปเบฎเบฑเบเปเบเปเบฅเบเบฐเบญเบทเปเบเป. เปเบเบปเปเบฒเปเบเบปเบฒเปเบเปเบเป? เปเบกเปเบเปเบฅเปเบง, เบเบงเบเปเบฎเบปเบฒเบชเปเบฒเบ pdl virtual เบเบตเปเบกเบต
เบกเบดเบเบดเบเบตเบชเบญเบเบเบญเบ "parent pdl" เปเบเบฑเบเบกเบดเบเบดเบเปเบฒเบญเบดเบเบเบญเบเบกเบฑเบเปเบเบเปเบเปเบเปเบฒเบชเบฑเปเบ "mv".
# เบเบฑเบเบชเบนเบเบชเบธเบ (เปเบเบฑเบเปเปเบฒเบเบตเปเบเบญเบเบเบณเบเบงเบเบเบฑเบ เปเบฅเบฐเปเบงเบฅเบฒ)
เบชเบนเบเบชเบธเบ($stack->mv(1,0),($ret=null));
เปเบฅเบฐเบเบฒเบเบเบดเบเปเบฅเปเบเบปเบเบฅเบงเบกเบเบฑเบเบซเบกเบปเบเบเบญเบเบเปเบญเบเบเปเบญเบเปเบเปเบฅเบเบฐเบชเบฒเบกเบกเบดเบเบดเปเบเบเบฑเบเบเบธเบเบฑเบเปเบกเปเบเปเบเบทเบญเบเบเปเบฒเบเปเบเบตเบเปเบ
# เบเบปเบเบฅเบงเบกเบเบญเบ pixels เปเบเปเบงเบฅเบฒ (เบชเบปเบกเบกเบธเบเบงเปเบฒเปเบงเบฅเบฒเปเบกเปเบเบเบงเบฒเบกเบกเบทเบเบเบตเบชเบฒเบก)
sumover($stack->mv(2,0),($ret=null));
เบชเบธเบเบเปเบฒเบ, เบเปเบฒเบซเบฒเบเบงเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบตเปเบเบฐเบเปเบฒเปเบเปเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบฑเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบ (เปเบเบฑเปเบ: เบชเบนเบเบชเบธเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบเบซเบผเบท
เบเบปเบเบเบงเบเบซเบผเบฒเบเบเบงเปเบฒเบญเบปเบเบเบฐเบเบญเบเบเบฑเบเบซเบกเบปเบ) เปเบเบเบเปเปเบเปเบฒเบเบถเบเปเบเบดเบเบเบฐเบซเบเบฒเบเบเบญเบ pdl เปเบเบเปเบฒเบเบฒเบก "clump" เบกเบฒ
เปเบ handy. เปเบเบฑเบเบเบปเบงเบขเปเบฒเบเปเบเบดเปเบเบเปเบฒเบเบดเบเบฒเบกเบเบญเบ "sum" (เบเบฒเบกเบเปเบฒเบเบปเบเปเบ "Ufunc.pm"):
เบเบปเบเบฅเบงเบกเบเปเบญเบ {
PDL::Ufunc::sumover($name->clump(-1),($tmp=null));
เบเบฑเบเบเบทเบ $tmp->at(); # เบชเบปเปเบเบเบทเบเบเบปเบงเปเบฅเบ Perl, เบเปเปเปเบกเปเบ 0D pdl
}
เบเบงเบเปเบฎเบปเบฒเปเบเปเบเปเบฒเบงเบกเบฒเปเบฅเปเบงเบงเปเบฒเบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบทเปเบเบเบฒเบเบเบฑเบเบซเบกเบปเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบ threading เปเบฅเบฐเบเบฒเบเบกเบญเบเบซเบกเบฒเบเปเบกเปเบเบเปเปเบกเบต
เบเปเปโเบเบปเบโเปเบงเบฑเปเบ. เบเบฑเปเบเบเบฑเปเบ, เบเบตเปเปเบกเปเบเบเบฒเบเบกเบญเบเบซเบกเบฒเบเบชเบญเบเบชเบฒเบกเบเบฐเบเบนเป
pdl> $im = zeroes(byte, 10,20)
pdl> $line = exp(-rvals(10)**2/9)
# เบเบฒเบเบกเบญเบเปเบฒเบเปเบเบเบเบฐเบเบนเป
pdl> $im .= $line # เบเบฑเปเบเบเบธเบเปเบชเบฑเปเบเบเบญเบ $im เปเบเบฑเบ $line
pdl> $im2 .= 5 # เบเบฑเปเบเบเบธเบเบญเบปเบเบเบฐเบเบญเบเบเบญเบ $im2 เปเบเบฑเบ 5
เบเบญเบเบเบตเปเปเบเบปเปเบฒเบเบปเบเบเบฐเปเบซเบฑเบเบงเปเบฒเบกเบฑเบเปเบฎเบฑเบเบงเบฝเบเปเบเบงเปเบ เปเบฅเบฐเบกเบฑเบเปเบฎเบฑเบเบซเบเบฑเบ, เบเปเปเปเบกเปเบเบเป?
เปเบเบทเปเบญเบชเปเบฒเปเบฅเบฑเบเบฎเบนเบเบเบปเบงเบขเปเบฒเบเปเบเบงเบฑเบเบเบตเปเปเบกเปเบเบซเบเปเบฒเบเบตเปเบชเปเบฒเบเบฎเบนเบเบเบฒเบ RGB เบเบฒเบ
เบญเบฑเบเบเบตเปเปเบญเบตเปเบเบงเปเบฒเบฎเบนเบ palette. เบฎเบนเบเบเบฒเบ palette เบเบฐเบเบญเบเบเปเบงเบเบชเบญเบเบเบฒเบเบชเปเบงเบ: เบฎเบนเบเบเบฒเบเบเบญเบ
เบเบปเบงเบเบตเปเบงเบฑเบเปเบเบปเปเบฒเปเบเบเบฒเบเบฐเบฅเบฒเบเบเบญเบเบซเบฒเบชเบตเปเบฅเบฐเบเบฒเบเบฐเบฅเบฒเบเบเบญเบเบซเบฒเบชเบตเบเบญเบเบกเบฑเบเปเบญเบ. [เบญเบฐเบเบดเบเบฒเบเบงเบดเบเบตเบเบฒเบ
เปเบฎเบฑเบเบงเบฝเบ] เบเบงเบเปเบฎเบปเบฒเบเบฐเปเบเป PP-function เบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฑเบเบเปเปเปเบเป encoutered เปเบเบทเปเบญเปเบเบเบตเปเบเปเบฒเบเบกเบฒ
เบเบปเบงเบขเปเบฒเบ. เบกเบฑเบโเปเบเบฑเบโเบซเบเปเบฒโเบเบตเปโเบเบฑเบโเบเบฐโเบเบตโเบเบตเปโเบกเบตโเบเบทเปโเบเบตเปโเปเบซเบกเบฒเบฐโเบชเบปเบกโ, เบฅเบฒเบโเปเบเบฑเบ "((nโ)โ, (), [oโ]())" (เปเบเบดเปเบ เปเบญเบเบฐเบชเบฒเบเบเปเบญเบ
B) เบเปเบงเบเบเบฒเบเบเปเบฒเบเบฒเบเบซเบผเบฑเบเบเบตเป "index(pdl (0,2,4,5),2,($ret=null))" เบเบฐเบชเบปเปเบเบเบทเบเบเปเบฒ.
เบญเบปเบเบเบฐเบเบญเบเบเบตเปเบกเบตเบเบฑเบเบเบฐเบเบต 2 เบเบญเบ input pdl เบเปเบฒเบญเบดเบ. เปเบเบเปเบฅเบฐเบเบตเบเบตเป, $ret เบเบฐเบกเบตเบเปเบฒ 4.
เบเบฑเปเบเบเบฑเปเบเบเบตเปเปเบกเปเบเบเบปเบงเบขเปเบฒเบ:
# เบเบฒเบเบเบญเบเบซเบฒเบเบฑเบเบเบฐเบเบตเปเบเบเบเบฐเบเบนเปเปเบเบทเปเบญเบชเปเบฒเบเบฎเบนเบ RGB, เบซเบผเบท RGBA เบซเบผเบท YMCK
# เบเบฒเบเบฎเบนเบ palette (เบชเบฐเปเบเบเปเบเบเบเบฒเบเบฐเบฅเบฒเบเบเบญเบเบซเบฒ $palette เปเบฅเบฐ
# เบฎเบนเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเบชเบต $im)
# เปเบเบปเปเบฒเบชเบฒเบกเบฒเบเปเบงเบปเปเบฒเบเบฝเบเปเบเป dummy(0) เบเบฑเบเบเบฑเปเบเปเบเปเบเบปเบเบฅเบฐเบเบฝเบเบเบญเบ threading เปเบฎเบฑเบเปเบซเปเบกเบฑเบเปเบซเบกเบฒเบฐ
pdl> index($palette->xchg(0,1),
$im->long->dummy(0,($palette->dim)[0]),
($res=null));
เปเบซเปเบเปเบฒเบเบกเบฑเบเปเบฅเบฐเบญเบฐเบเบดเบเบฒเบเบเบฑเปเบเบเบญเบเบเบตเปเบเปเบฝเบงเบเปเบญเบ. เบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเปเบฒเบฅเบฑเบเบเบฑเบเบเบฒเบเบเบฑเบ RGB
lookup-table $palette เบกเบตเบเบฐเปเบฒเบ "(3,x)". เบเปเบฒเบญเบดเบเบเบงเบเปเบฎเบปเบฒเปเบฅเบเบเปเบฝเบเบเบฐเบซเบเบฒเบเบเบญเบ palette เปเบเป
เบเบฑเปเบเบเบฑเปเบเบเบฒเบ looping เปเบกเปเบเปเบฎเบฑเบเปเบเปเบซเบผเบฒเบเบเบงเปเบฒเบกเบดเบเบดเบเปเบฒเบญเบดเบเบเบญเบ $palette (เบเบฐเบซเบเบฒเบ 3 เบเบตเปเปเบเบฑเบเบเบปเบงเปเบเบ r,
g, เปเบฅเบฐ b เบญเบปเบเบเบฐเบเบญเบ). เปเบเบเบฑเบเบเบธเบเบฑเบเปเบเบดเปเบ $im, เบเบงเบเปเบฎเบปเบฒเปเบเบตเปเบกเบเบฐเบซเบเบฒเบ dummy เบเบญเบเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเบเบฑเบ
เบเบงเบฒเบกเบเบฒเบงเบเบญเบเบเปเบฒเบเบงเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบ (เปเบเบเปเบฅเบฐเบเบตเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบฒเบฅเบฑเบเบชเบปเบเบเบฐเบเบฒเบเบตเปเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบกเบตเบเบฝเบเปเบเป
เปเบเปเปเบฅเบ 3 เปเบเบทเปเบญเบเบเบฒเบเบเบงเบเปเบฎเบปเบฒเบกเบต 3 เบญเบปเบเบเบฐเบเบญเบเบชเบต). เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบเปเบฒเปเบเปเบเบฐเบซเบเบฒเบ dummy เบเบฑเบเบเบฑเปเบเปเบเป
เบชเปเบฒเบฅเบฑเบเบญเบปเบเบเบฐเบเบญเบเบชเบตเบชเบตเปเบเบ, เบชเบตเบเบฝเบงเปเบฅเบฐเบชเบตเบเปเบฒ, เบเบงเบเปเบฎเบปเบฒเปเบเปเบเบฑเบเบเบฐเบเบตเบเบฝเบงเบเบฑเบเบเบฒเบเบฎเบนเบเบเบฒเบเบเบปเปเบเบชเบฐเบเบฑเบ,
เบเบปเบงเบขเปเบฒเบ: เบชเบปเบกเบกเบธเบเบงเปเบฒ pixel เบเบตเปเปเบเปเบเบญเบเบเบญเบ $im เบกเบตเบกเบนเบเบเปเบฒ 4 เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเบฒเบเบเบญเบเบซเบฒเบเบงเบเบเบฐเบเบฐเบฅเบดเบ
triple
[palette(0,4),palette(1,4),palette(2,4)]
เบชเปเบฒเบฅเบฑเบเบญเบปเบเบเบฐเบเบญเบเบชเบตเปเบเบ, เบชเบตเบเบฝเบงเปเบฅเบฐเบชเบตเบเปเบฒเปเบซเบกเปเบเบญเบเบฎเบนเบเบเบฒเบเบเบปเบเบเบฐเบฅเบดเบ. เบซเบงเบฑเบเปเบเบฑเบเบขเปเบฒเบเบเบดเปเบเบงเปเบฒเปเบเบเบฑเบเบเบธเบเบฑเบเบเปเบฒเบเบกเบต
เบเบฒเบเบเบฐเปเบเบเบเบญเบเบเบงเบฒเบกเบเบดเบเบชเบดเปเบเบเบตเปเบฅเบฐเบซเบฑเบเบเปเบฒเบเปเบเบดเบเบเบตเปเบเบงเบเบเบฐเปเบฎเบฑเบ (เบกเบฑเบเบกเบฑเบเบเบฐเปเบเบฑเบ
เบเปเบญเบเบเปเบฒเบเบชเบฑเบเบชเบปเบเปเบเบทเปเบญเบญเบฐเบเบดเบเบฒเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเบงเบดเบเบตเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบญเบเบฅเบฐเบซเบฑเบ threading; เบเบฝเบเปเบเปเบชเบทเบเบเปเปเปเบเบตเบเบซเบเปเบฒ
เปเบฅเบฐเบเบปเบเบฅเบญเบเปเบฅเบฑเบเบเปเบญเบเปเบเบทเปเบญเปเบซเปเปเบเปเบเบงเบฒเบกเบฎเบนเปเบชเบถเบเบเบตเปเบเบตเบเบงเปเบฒเบชเปเบฒเบฅเบฑเบเบกเบฑเบ).
เบเปเบฒเบเปเบฒเบเปเบเปเบญเปเบฒเบเบเบปเบเบฅเบฐเบเบฝเบเบเบฐเบเบนเปเบขเปเบฒเบเบฅเบฐเบกเบฑเบเบฅเบฐเบงเบฑเบ, เบเปเบฒเบเบญเบฒเบเบเบฐเบชเบฑเบเปเบเบเปเบซเบฑเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเปเปเปเบเป
เบเปเบญเบเบเบญเบเบขเปเบฒเบเบเบฐเปเบเปเบเบเปเบฝเบงเบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบ dummy เบเบตเปเบเบงเบเปเบฎเบปเบฒเบชเปเบฒเบเบชเปเบฒเบฅเบฑเบ $im; เปเบโเปเบงโเบฅเบฒโเบเบตเปโเบเบงเบโเปเบฎเบปเบฒ
เบชเปเบฒเบเบกเบฑเบเบเปเบงเบเบเบฐเบซเบเบฒเบ 1 (เบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ) เบเบปเบเบฅเบฐเบเบฝเบเบเบญเบ threading เปเบฎเบฑเบเปเบซเปเบกเบฑเบเปเบซเบกเบฒเบฐเบเบฑเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
เบเบฐเบซเบเบฒเบเบเบตเปเบเปเบญเบเบเบฒเบ (เบเบฒเบกเบเบปเบเบฅเบฐเบเบฝเบ R3, เปเบเบเบปเบงเบขเปเบฒเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเบเบฐเบซเบเบฒเบเบเบฐเปเบเบฑเบ 3 เบชเบปเบกเบกเบธเบเบงเปเบฒ palette เบเบญเบ
เบเบฐเบซเบเบฒเบ "(3,x)"). เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒเบชเบฐเบเบฒเบเบฐเบเบฒเบเปเบเบฑเปเบเบเบตเปเปเบเบตเบเบเบถเปเบเปเบฅเบทเปเบญเบเปเปเบเบเบฒเบเบเบฐเบเบดเบเบฑเบ, เบเบตเปเปเบกเปเบเปเบซเบเบเบปเบเปเบเปเป
เบเบปเบเบฅเบฐเบเบฝเบ R3 เปเบเปเบเบทเบเบเปเบฒเบชเบฐเปเบซเบเบต (เบชเปเบงเบเบเบตเปเปเบฎเบฑเบเปเบซเปเบเบฐเบซเบเบฒเบเบเบญเบเบเบฐเบซเบเบฒเบ 1 เปเบซเบกเบฒเบฐเบเบฑเบเบเบฐเบเบนเป
loop เบเบฐโเบซเบเบฒเบ dim). เบเบฑเปเบเบเบฑเปเบเบเบงเบเปเบฎเบปเบฒเบเบฝเบเปเบเปเบชเบฒเบกเบฒเบเปเบงเบปเปเบฒ
pdl> index($palette->xchg(0,1),$im->long->dummy(0),($res=null));
เบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ, เบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบซเปเบเบปเบงเบเปเบฒเบเปเบญเบเบงเปเบฒเบเบปเบเบเบฐเบเบดเบเบตเปเบเบฐเบชเปเบฒเบเบเบปเบเบเบฐเบฅเบดเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบเปเบฒเบเบทเบเปเบญเบตเปเบ
เบเปเบงเบ pixels ($im เปเบกเปเบ 0D), เปเบชเบฑเปเบ ($im เปเบกเปเบ 1D), เบฎเบนเบเบเบฒเบ ($im เปเบกเปเบ 2D), ..., เบเบฒเบเบเบญเบเบซเบฒ RGB
เบเบฒเบเบฐเบฅเบฒเบ (palette เปเบกเปเบ "(3,x)") เปเบฅเบฐเบเบฒเบเบฐเบฅเบฒเบเบเบญเบเบซเบฒ RGBA (palette เปเบกเปเบ "(4,x)", เปเบเบดเปเบเบเบปเบงเบขเปเบฒเบ OpenGL).
เบเบงเบฒเบกเบเบทเบเบซเบเบธเปเบเบเบตเปเปเบกเปเบเบเบฑเบเบฅเบธเปเบเปเปเบเบเบเบปเบเบฅเบฐเบเบฝเบเบเบญเบ threading เบเบตเปเปเบฎเบฑเบเบขเปเบฒเบเบเบทเบเบเปเบญเบ
เบชเบดเปเบเบเบตเปเบขเบนเปเปเบเบชเบฐเบเบฒเบเบฐเบเบฒเบเบชเปเบงเบเปเบซเบเป.
เปเบเบทเปเบญเบซเปเปเบกเบฑเบเบเบฑเบเบซเบกเบปเบเบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ, เปเบเบงเบเบงเบฒเบกเบเบดเบเบเบปเปเบงเปเบเปเบกเปเบเบเบฑเปเบเบเปเปเปเบเบเบตเป. เบเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบฑเบเบฅเบธ
looping เปเบเปเบฅเบเบฐเบชเบฐเปเบเบฒเบฐเปเบเบซเบเบถเปเบเปเบฅเบฐเบกเบต core functionality เบเบณเปเบเปเบเบฑเบเบญเบฑเบเบญเบทเปเบ
เบเบตเปเบเปเบฒเบเบปเบเปเบงเปเบเบญเบเบเบฐเบซเบเบฒเบเบเบตเปเบเปเบฒเบเปเบเปเบเปเบฒเบชเบฑเปเบ manipulating เบกเบดเบเบดเปเบเบทเปเบญเบชเปเบฒเบ (เบซเบผเบท
เบซเบผเบฒเบ) virtual pdl(s) เบเบฑเปเบเบเบฑเปเบเบเบฒเบเบเบธเบเบเบญเบเบเบฑเบเบชเบฐเบเบฐเบเบญเบ เบเปเปเปเบกเป pdl(s) เบเปเบฒเบเปเบเปเบฎเบฑเบเบชเบดเปเบเบเบตเป
เบเปเบฒเบเบเปเบญเบเบเบฒเบ (เบชเบฐเปเบซเบกเบตเบกเบตเบฅเบฒเบเปเบเบฑเบเบเบญเบเบซเบเปเบฒเบเบตเปเบขเบนเปเปเบเบเปเบฒเบเบฒเบกเปเบฅเบฐ R1-R5 เบขเบนเปเปเบเปเบ!).
เบเปเบฒเบ, เบเปเปเปเบกเปเบเบเป?
เบเบปเบเบเบฐเบฅเบดเบ เบเบฒเบเบชเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ เปเบฅเบฐ เบเบฑเบเบเบฑเบ PP เปเบเบซเบฒ เบญเบฐเบเบธเบชเบฑเบเบเบฒ
เปเบเบเบธเบเบเบตเป, เบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบซเบฑเบเปเบเบซเบฒเบฅเบฒเบเบฅเบฐเบญเบฝเบเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบเบเบฒเบเบขเปเบฒเบเบเบตเปเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเบปเปเบงเปเบ
เบเบฒเบเปเบญเบตเปเบเบชเบปเบเบเบดเบชเบฑเบเบเบฒเบเบญเบ PP-functions เปเบฅเบฐเบเบฒเบเบชเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเบเบญเบเบเบฒเบเปเบเปเบเบฝเบเบเบปเบเบเบฐเบฅเบดเบ.
เปเบเบเบเบทเปเบเบเบฒเบเปเบฅเปเบง, เบกเบตเบชเบญเบเบงเบดเบเบตเบเบญเบเบเบฒเบเปเบญเบตเปเบ pdl routines, เบเบท
$result = func($a,$b);
เปเบฅเบฐ
func($a,$b,$result);
เบเปเบฒเบเปเบฒเบเบเบฝเบเปเบเปเปเบเป threading implicit เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเบปเบงเปเบเบเบปเบเบเบฐเบฅเบดเบเบชเบฒเบกเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
เบชเปเบฒเบเปเบเบ PDL. เบเปเบฒเบเบเบฑเปเบเบเบธเบเบเบฑเปเบเปเบชเป PP-function เปเบเบเบเปเบฒเบเบปเบเบเบฒเบเปเบเปเบเบฝเบเบเบปเบเบเบฐเบฅเบดเบเปเบเบฑเบ a
pdl เบเบฐเปเบเบเบเบดเปเบชเบเบเบตเปเบเบทเบเบชเบปเปเบเบเบทเบเบเบฒเบเบเบฒเบเปเบเบซเบฒเบเบฑเบเบเบฑเบ "PDL->null" เบเบตเปเบเบฑเบเบเบทเบเบกเบฒ
pdl เบเบตเปเบเปเบฒเปเบเบฑเบ "เบซเบงเปเบฒเบเปเบเบปเปเบฒ" (เบชเปเบฒเบฅเบฑเบเบเบนเปเบเบตเปเบชเบปเบเปเบเปเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเบกเบตเบเบธเบเบขเบนเปเปเบ C pdl
เปเบเบเบเบฐเบเบญเบเบเบฒเบเบเบตเป). เบเบฐเบซเบเบฒเบเบเบญเบ pdl เบเบตเปเบชเปเบฒเบเบเบถเปเบเปเบกเปเบเบเบทเบเบเปเบฒเบเบปเบเปเบเบเบเบปเบเบฅเบฐเบเบฝเบเบเบญเบ
เบเบฐเบเบนเป implicit: เบเบฐเบซเบเบฒเบเบเปเบฒเบญเบดเบเปเบกเปเบเบเบฐเบซเบเบฒเบเบเบปเบเบเบฐเบฅเบดเบเบซเบผเบฑเบเบเบตเป
เบเบฐโเบซเบเบฒเบโเบเบฐโเบเบนเปโเปเบกเปเบโเปเบเปโเบเปเปโเบเปเบฒเบ (เบเบถเปเบโเปเบโเบเบฑเปเบโเบเปเบฒโเบเบปเบโเปเบเบโเบเบฐโเบซเบเบฒเบโเบเบญเบโ
input pdls เบเบฑเปเบเบเบตเปเบญเบฐเบเบดเบเบฒเบเบเปเบฒเบเปเบเบดเบ). เบเบฑเปเบเบเบฑเปเบเปเบเบปเปเบฒเบชเบฒเบกเบฒเบเปเบงเบปเปเบฒเปเบเป
func($a,$b,($result=PDL->null));
or
$result = func($a,$b)
เปเบเบดเปเบเปเบกเปเบ เบขเปเบฒเบโเปเบเปโเบเบญเบ เบเบฝเบเปเบเบปเปเบฒ.
เปเบเปเบฎเบฑเบเบเบฒเบเปเบเบทเบญเบเบงเปเบฒเบเปเบฒเบเบชเบฒเบกเบฒเบเปเบฎเบฑเบเปเบเป เบเปเป เปเบเปเบเบฒเบเบชเปเบฒเบเบเบปเบเบเบฐเบฅเบดเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบเปเบเปเบงเบฅเบฒเบเบตเปเปเบเป threading explicit (เบชเปเบฒเบฅเบฑเบ
เปเบซเบเบเบปเบเบญเบฐเบเบดเบเบฒเบเปเบเบเบฒเบเบเปเปเปเบเบเบตเปเบเปเบฝเบงเบเบฑเบ เบขเปเบฒเบเบเบฑเบเปเบเบ เบเบฐเบเบนเป, variant เบเบตเบชเบญเบเบเบญเบ
threading).
เปเบ loops "เปเบซเบเปเบ" เบเปเบฒเบเบญเบฒเบเบเบฐเบเปเบญเบเบเบฒเบเบเบตเปเบเบฐเบซเบผเบตเบเปเบงเบฑเปเบเบเบฒเบเบชเปเบฒเบ implicit เบเบญเบ pdl เบเบปเปเบงเบเบฒเบงเปเบ
เปเบเปเบฅเบฐเบเบฑเปเบเบเบญเบเบเบญเบ loop เบเบตเปเบกเบฒเบเปเบญเบกเบเบฑเบเบฎเบนเบเปเบเบ "เบซเบเปเบฒเบเบตเป" เปเบเปเปเบเบเบเบตเปเบเบฐเปเบงเบปเปเบฒ
# เบชเปเบฒเบ pdl เบเบปเบเบเบฐเบฅเบดเบเบเบญเบเบเบฐเบซเบเบฒเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบเบฝเบเปเบเปเบขเบนเปเปเบเบเบฒเบเบฎเบฝเบเบฎเปเบญเบเบเบฑเปเบเบเปเบฒเบญเบดเบ
$result = null;
เบชเปเบฒเบฅเบฑเบ (0...$n) {
func($a,$b,$result); # เบเบฑเบเปเบปเบเปเบเปเบเบฒเบเบฎเบฝเบเบฎเปเบญเบเบเบณเบญเบดเบ $result
func2($b); # เบเบทเบเบเปเบฒเบเบปเบเปเบฅเบฐเบกเบตเบเบฐเบซเบเบฒเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบ
# เปเบญเบปเบฒเบเบปเบเปเบเปเบฎเบฑเบเบเบตเปเบชเบฐเบซเบเบญเบเปเบซเป $b's dims เบเปเปเบเปเบฝเบเปเบเบ
twiddle($result,$a); # เปเบฎเบฑเบเบเบฒเบเบขเปเบฒเบเบเบฒเบ $result เบซเบฒ $a เปเบเบทเปเบญเปเบฎเบฑเบเบเปเบณ
}
เบเปเปเบเบงเบฒเบกเบเบตเปเปเบญเบปเบฒเบขเบนเปเปเบฎเบทเบญเบเบเบญเบเบเบฒเบเบเบตเปเบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ: เบเบปเปเบเบฎเบนเปเปเบเบดเบเบเปเปเบเปเบฒเบเบฑเบเบเบญเบเบเบปเบเบเบฐเบฅเบดเบ
เบเบฒเบเบชเปเบฒเบเปเบเปเบงเบฅเบฒเบเบตเปเบเบฒเบเบเปเบฒเปเบเป เบขเปเบฒเบเบเบฑเบเปเบเบ เบเบฐเบเบนเป.
เปเบเบเบชเบฐเปเบเบฒเบฐ เบเบฐเบเบนเป
เบกเบฒเปเบเบดเบเบเบญเบเบเบฑเปเบเบเบฝเบเปเบเปเปเบงเบปเปเบฒเปเบเบดเบเบฅเบปเบเบเบฒเบเบเปเบฒเบญเบดเบเบเบญเบเบเบฐเบเบนเป, เบกเบฑเบเปเบเบดเบเปเบงเบฅเบฒเปเบฅเปเบง
เปเบเบฐเบเปเบฒเบเบปเบงเปเบเบเบตเบชเบญเบ. เปเบเบเบเบตเปเบเบฐ shuffling เบเบฐเบกเบฒเบเบเบฐเบซเบเบฒเบเบเบฐเบซเบผเบญเบเปเบงเบฅเบฒเปเบฅเบฐ
เบญเบตเบเปเบชเปเบเบปเบเบฅเบฐเบเบฝเบเบเบญเบเบเบฐเบเบนเป implicit เปเบเบทเปเบญเปเบซเปเบกเบฑเบเบเบทเบเบเปเบญเบเบเบฑเบเบซเบกเบปเบเบเบฒเบเปเบเบทเปเบญเปเบเบปเปเบฒเบญเบฒเบเบเบฐเบเปเบญเบเบเบฒเบ
เบฅเบฐเบเบธเปเบเบงเบดเบเบตเบเบฒเบเบเบตเปเบเบฐเปเบเปเบเบเบงเปเบฒเบงเบดเบเบตเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบ loop thread. เบกเบฑเบเบญเบฒเบเบเบฐเบเปเปเบเบทเบเบฑเบ
เปเบเบเปเบเบเบตเป variant เบเบญเบเปเบเบกเบเบตเปเปเบกเปเบเปเบญเบตเปเบเบงเปเบฒ เบขเปเบฒเบเบเบฑเบเปเบเบ เบเบฐเบเบนเป. เปเบเบเบฑเบเบเบธเบเบฑเบ, เบเปเบญเบเบเบตเปเบเบงเบเปเบฎเบปเบฒ
เบชเปเบฒเบเบเบงเบฒเบกเบเบฐเบเบฑเบเปเบเบเบตเปเบเปเปเบเบทเบเบเปเบญเบ: เบกเบฑเบเบเปเปเปเบกเปเบ implicit or เบขเปเบฒเบเบเบฑเบเปเบเบ; เบชเบญเบเบฅเบปเบเบเบฒเบเปเบฎเบฑเบ
เบเบฐเบชเบปเบก. เปเบเปเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเบงเปเบฒเบเปเปเบกเบฒ.
เบชเบญเบเบเบฑเบเบเบฑเบเบเบตเปเปเบเปเบซเบผเบฒเบเบเบตเปเบชเบธเบเบเบตเปเบกเบต threading เบขเปเบฒเบเบเบฑเบเปเบเบเปเบกเปเบ thread เปเบฅเบฐ unthread. เบเบงเบเปเบฎเบปเบฒเปเบฅเบตเปเบกเบเบปเปเบ
เบเปเบงเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเปเบเบดเบเบเบฒเบเบเปเบฒเปเบเปเบเบปเบเบเบฐเบเบดเบเบญเบเบญเบฐเบเบตเบ:
[ # ** เบเบตเปเปเบกเปเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบฎเปเบฒเบเปเบฎเบเบเบตเปเบชเบธเบเบเบตเปเบเบฐเปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบ]
# เปเบเปเบชเบฒเบกเบฒเบเปเบเปเปเบเบทเปเบญเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเปเบฒ $mat += $line เปเบเบเบเปเบฒเบเบเบฒเบ
# $mat->เบเบฐโเบเบนเป(0) += $line
# threading explicit เปเบเบทเปเบญเปเบเบตเปเบก vector เปเบชเปเปเบเปเบฅเบฐเบเบฑเบเบเบญเบ matrix
pdl> $mat = เบชเบนเบ(4,3)
pdl> $line = pdl (3.1416,2,-2)
pdl> ($tmp = $mat->เบเบฐโเบเบนเป(0)) += $line
เปเบเบเบปเบงเบขเปเบฒเบเบเบตเป, "$mat->เบเบฐโเบเบนเป(0)" เบเบญเบ PDL เบงเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเบกเบดเบเบดเบเบตเบชเบญเบเบเบญเบเบชเบดเปเบเบเบตเป
pdl เบเบตเปเบเบฐ threaded เบเปเบฒเบญเบดเบเบเบตเปเบเปเบฒเปเบเบชเบนเป loop thread เบเบตเปเบชเบฒเบกเบฒเบเบชเบฐเปเบเบเบญเบญเบเปเบเบฑเบ
เบชเปเบฒเบฅเบฑเบ (j=0; j<3; j++) {
เบชเปเบฒเบฅเบฑเบ (i=0; i<4; i++) {
mat(i,j) += src(j);
}
}
"เบเบฐเบเบนเป" เปเบญเบปเบฒเบเบฑเบเบเบตเบฅเบฒเบเบเบทเปเบเบญเบเบเบปเบงเปเบฅเบเปเบเบฑเบ arguments เบเบตเปเบฅเบฐเบเบธเบขเปเบฒเบเบเบฑเบเปเบเบเบงเปเบฒเบเบฐเบซเบเบฒเบเปเบ
เบเบฐเบเบนเปเบเปเบญเบ. เบเปเบงเบเบเบฒเบเปเบเบฐเบเปเบฒเบเบญเบเบเบฐเบเบนเปเบเบตเปเบเบฑเบเปเบเบ, เบเบฐเบซเบเบฒเบเบเบญเบ pdl เปเบกเปเบ
เปเบเบงเบเบงเบฒเบกเบเบดเบเปเบเปเบเบญเบญเบเปเบเบฑเบเบชเบฒเบกเบเบธเปเบกเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ, เบชเบญเบเบญเบฑเบเบชเบธเบเบเปเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบกเบตเบขเบนเปเปเบฅเปเบง
เบเบปเบ: เบเบฐเปเบฒเบเบเบฐเบเบนเป, เบเบฐเปเบฒเบเบซเบผเบฑเบ เปเบฅเบฐ เบเบฐเปเบฒเบเบเบดเปเบชเบ.
เปเบเบงเบเบงเบฒเบกเบเบดเบ, เบกเบฑเบเบเบตเบเบตเปเบชเบธเบเบเบตเปเบเบฐเบเบดเบเปเบเบดเบเบเบฐเบซเบเบฒเบเบเบญเบ pdl เบเบตเปเปเบเปเบฅเบฐเบเบธเปเบงเปเปเบ
เบเบฒเบเปเบเบซเบฒ "เบเบฐเบเบนเป" เบเบตเปเบเบทเบเปเบญเบปเบฒเปเบเบเบฒเบเบเบฐเบซเบเบฒเบเบเบปเบเบเบฐเบเบดเปเบฅเบฐเปเบชเป a
stack เปเบเบเบเปเบฒเบเบซเบฒเบ. เบเบฑเปเบเบเบฑเปเบเบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบกเบต pdl "a(4,7,2,8)" เปเบงเบปเปเบฒ
$b = $a->เบเบฐเบเบนเป(2,1)
เบชเปเบฒเบ pdl virtual เปเบซเบกเปเบเบญเบเบเบฐเบซเบเบฒเบ "b(4,8)" (เบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบญเบตเปเบเบงเปเบฒ dims เบเบตเปเบเบฑเบเปเบซเบผเบทเบญ) เบเบตเป.
เบเบฑเบเบกเบตเบเบฐเบซเบเบฒเบ 2 thread เบเบญเบเบเบฐเบซเบเบฒเบ "(2,7)". เบชเปเบฒเบฅเบฑเบเบเบธเบเบเบฐเบชเบปเบเบเบญเบเปเบญเบเบฐเบชเบฒเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฝเบ
เบเบตเปเปเบเบฑเบเบชเบฑเบเบเบฒเบฅเบฑเบเปเบเบฑเบ "b(4,8){2,7}". เบเบงเบฒเบกเปเบเบเบเปเบฒเบเบเบตเปเบชเปเบฒเบเบฑเบเบเบฑเบเบเบปเบงเบขเปเบฒเบเบเบตเปเบเปเบฒเบเบกเบฒเบเปเบญเบเบเบตเป
เบเบฝเบเปเบเปเปเบเป threading implicit เปเบกเปเบเบเบงเบฒเบกเบเบดเบเบเบตเปเบงเปเบฒเบเบฐเบซเบเบฒเบเบซเบผเบฑเบเบเบทเบเบเบฑเบเบเบนเปเบเบฑเบ
เปเบเป เบเบฑเบเปเบซเบผเบทเบญ เบเบฐเบซเบเบฒเบ เปเบเบดเปเบเบเปเปเบเปเบฒเปเบเบฑเบเบเบฐเบซเบเบฒเบเบเปเบฒเบญเบดเบเบเบญเบ pdl. เบเบงเบเปเบฎเบปเบฒ
เบเบญเบเบเบตเปเบเบฐเบฅเบฐเบเบธเบงเปเบฒเบเบฐเปเบฒเบเบเบญเบเบเบฐเบเบนเปเบเปเบฝเบเปเบเบเบเบปเบเบฅเบฐเบเบฝเบ R1-R5 เปเบเบงเปเบเบชเบณเบฅเบฑเบเบเบฐเบเบนเป
loops (เปเบเบดเปเบเปเบเปเบเบฑเบเบเปเบฅเบฐเบเบตเบเบดเปเบชเบเบเบตเปเบเปเปเบกเบตเบเบฒเบเปเบเปเบเบฝเบ pdl เปเบเป
เบเบฐเบซเบเบฒเบ).
เบเบฐเบซเบเบฒเบ T0 Core เบเบทเบเบเบฑเบเบเบนเปเบเบฑเบ n เบเปเบฒเบญเบดเบ เบเบฑเบเปเบซเบผเบทเบญ เบเบฐเบซเบเบฒเบ เบเบญเบ pdl
เบเบฒเบเปเบเปเบเบฝเบ (เบชเบฑเบเปเบเบเบเบงเบฒเบกเปเบเบเบเปเบฒเบเบเบฑเบ R1). เบเบทเปเบกเบญเบตเบ เบเบฑเบเปเบซเบผเบทเบญ เบเบฐเบซเบเบฒเบ เบกเบต เบเบดเปเบชเบ
เบเบฐเบซเบเบฒเบ เปเบฅเบฐเบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเปเบฒเบเบปเบ implicit loop เบเบฐเบซเบเบฒเบ.
T1a เบเปเบฒเบเบงเบเบเบญเบ implicit loop เบเบฐเบซเบเบฒเบ เปเบเบปเปเบฒเบเบฑเบเบเปเบฒเบเบงเบเบชเบนเบเบชเบธเบเบเบญเบเบเบดเปเบชเบ
เบเบฐโเบซเบเบฒเบโเบเบตเปโเบเปเบฒโเปเบเปโเปเบโเปเบฅโเบเบฐโเบเบธเบโเบเบญเบโเบเบฒเบโเปเบเปโเบเบฝเบ pdlโ.
T1b เบเปเบฒเบเบงเบเบเบญเบ เบขเปเบฒเบเบเบฑเบเปเบเบ loop เบเบฐเบซเบเบฒเบ เปเบเบปเปเบฒเบเบฑเบเบเบณเบเบงเบเบชเบนเบเบชเบธเบเบเบญเบเบเบฐเบเบนเป
เบเบฐโเบซเบเบฒเบโเบเบตเปโเบเปเบฒโเปเบเปโเปเบโเปเบฅโเบเบฐโเบเบธเบโเบเบญเบโเบเบฒเบโเปเบเปโเบเบฝเบ pdlโ.
T1c เบเปเบฒเบเบงเบเบเบฑเบเบซเบกเบปเบเบเบญเบ loop เบเบฐเบซเบเบฒเบ เปเบกเปเบเปเบเบปเปเบฒเบเบฑเบเบเบปเบเบฅเบงเบกเบเบญเบ เบขเปเบฒเบเบเบฑเบเปเบเบ loop เบเบฐเบซเบเบฒเบ
เปเบฅเบฐ implicit loop เบเบฐเบซเบเบฒเบ. เปเบ loop thread, เบขเปเบฒเบเบเบฑเบเปเบเบ loop เบเบฐเบซเบเบฒเบ เบกเบต
threaded เบเปเบฒเบญเบดเบเบเบฐเบเบดเบเบฑเบเบเบฒเบกเปเบเบ implicit loop เบเบฐเบซเบเบฒเบ.
T2 เบเบฐเบซเบเบฒเบเบเบญเบเปเบเปเบฅเบฐเบเบปเบ loop เบเบฐเบซเบเบฒเบ เปเบกเปเบเปเบเปเบกเบฒเบเบฒเบเบเบฐเบซเบเบฒเบเบเบฒเบกเบฅเปเบฒเบเบฑเบ
เบเบฐเบซเบเบฒเบเบเบญเบเบเบฒเบเปเบเปเบเบฝเบ pdl. เบกเบฑเบเปเบเปเบเบทเบเบกเบญเบเปเบซเปเปเบเบเบเบฐเบซเบเบฒเบเบชเบนเบเบชเบธเบเบเบตเปเบเบปเบเปเบ pdls เปเบ
เบกเบตเบเบฐเบซเบเบฒเบเบเบฐเบเบนเปเบเบตเป (เบชเปเบฒเบฅเบฑเบ เบขเปเบฒเบเบเบฑเบเปเบเบ loop เบเบฐเบซเบเบฒเบ) เบซเบผเบทเบเบฐเบซเบเบฒเบเบเบดเปเบชเบ (เบชเปเบฒเบฅเบฑเบ
implicit loop เบเบฐเบซเบเบฒเบ).
T3 เบเบปเบเบฅเบฐเบเบฝเบเบเบตเปเปเบเปเบเบฑเบเบเบธเบ เบขเปเบฒเบเบเบฑเบเปเบเบ loop dimension เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเปเบเป implicit loop
dimension. เบชเปเบฒเบฅเบฑเบ pdls เบเบฑเบเบซเบกเบปเบเบเบตเปเปเบซเป thread / เบเบดเปเบชเบ dimension เบเบฐเบซเบเบฒเบเบเปเบญเบเปเบเบฑเบ
เปเบเบปเปเบฒเบเบฑเบเบเบฐเบซเบเบฒเบเบเบฒเบกเบฅเปเบฒเบเบฑเบ เบเบฑเบเปเบเบ / implicit loop dimension เบซเบผเบท 1; เบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบ
เบเปเบฒเบเบเบปเบเบเปเปเบเบปเบเปเบงเบฑเปเบ runtime. เบเปเบฒเบเบฐเบซเบเบฒเบเบเบญเบ เบ thread / เบเบดเปเบชเบ dimension เบเบญเบ pdl เปเบกเปเบเบซเบเบถเปเบ
เบกเบฑเบเปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบเปเบเบ implicitly เปเบเบฑเบเบเบฐเบซเบเบฒเบ dummy เบเบญเบเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเบเบฑเบ เบเบฑเบเปเบเบ / implicit
loop dimension.
T4 เบเปเบฒ pdl เบเปเปเบกเบต a thread / เบเบดเปเบชเบ dimension เบเบตเปโเบชเบญเบโเบเปเบญเบโเบเบฑเบโเบเบฑเบโ
เบเบฑเบเปเบเบ / implicit loop dimension, เปเบ loop thread pdl เบเบตเปเบเบทเบเบเบฐเบเบดเบเบฑเบเบเบทเบเบฑเบเบงเปเบฒเบกเบต
เบเบฐเบซเบเบฒเบ dummy เบเบญเบเบเบฐเบซเบเบฒเบเปเบเบปเปเบฒเบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบเบงเบปเบ loop เบเบฑเปเบ.
T4a pdl เบเบฑเบเปเบปเบเบเบตเปเบกเบต เบเบฐโเบเบนเป เบเบฐเบซเบเบฒเบ เบเปเบญเบเบกเบตเบเปเบฒเบเบงเบเบเบฐเบเบนเปเบเบฝเบงเบเบฑเบ
เบเบฐ เปเบฒเบ.
T5 Output auto-creation เบเปเปเบชเบฒเบกเบฒเบเปเบเปเปเบเปเบเปเบฒเบซเบฒเบเบงเปเบฒเบเบฒเบเปเบเปเบเบฝเบ pdl เปเบเป เบเบฐโเบเบนเป
เบเบฐเบซเบเบฒเบ. เบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบ R5 เบเบณเปเบเป.
เบเปเปโเบเปเบฒโเบเบฑเบโเบเบฝเบงโเบเบฑเบโเบเปเบฒโเปเบเปโเบเปเบฝเบงโเบเบฑเบโเบเบฐโเบซเบเบฒเบ dummy implicit (เบชเปเบฒเบโเปเบเบ
เบเปเบฒโเบฎเปเบญเบโเบชเบฐโเบซเบกเบฑเบ T4โ) เบเบฑเปเบโเบเบตเปโเปเบเปโเบเปเบฒเบงโเบกเบฒโเปเบฅเปเบงโเปเบโเบเบฒเบโเบชเปเบงเบโเบเปเบฝเบงโเบเบฑเบโเบเบฐโเบเบนเป implicitโ: เบเปเบฒโเบซเบฒเบโเบงเปเบฒโเบกเบตโ
pdls เบเบปเบโเบเบฐโเบฅเบดเบโเบกเบต (เบขเปเบฒเบโเบเบฑเบโเปเบเบโเบซเบผเบทโเบเบฒเบโเบชเปเบฒเบโเปเบเบ implicitly) เบเบฐโเบซเบเบฒเบ dummy เบซเบผเบฒเบโเบโเปโเบงเบฒโเบซเบเบถเปเบ
เบเบฒเบเบเบปเบเปเบงเบฑเปเบ runtime เบเบฐเบเบทเบเบเบปเบเบเบถเปเบเบกเบฒ.
เปเบซเปเบเบงเบเปเบฎเบปเบฒเบชเบฐเปเบเบเบเบปเบเบฅเบฐเบเบฝเบเปเบซเบผเบปเปเบฒเบเบตเปเบขเบนเปเปเบเบเปเบญเบเปเบฎเบฑเบเบงเบฝเบเปเบเบเปเบฅเบฐเบเบตเบเบปเปเบงเปเบ. เบชเบปเบกเบกเบธเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบกเบต (เบเบตเปเบเบตเป
unspecified) PP-function เบเบตเปเบกเบตเบฅเบฒเบเปเบเบฑเบ:
func((m,n),(m),(),[o](m))
เปเบฅเบฐเบเปเบฒเบเปเบญเบตเปเบเบกเบฑเบเบเปเบงเบ 3 pdls "a(5,3,10,11)", "b(3,5,10,1,12)", "c(10)" เปเบฅเบฐ pdl เบเบปเบเบเบฐเบฅเบดเบ
"d(3,11,5,10,12)" (เปเบเบดเปเบเบชเบฒเบกเบฒเบเบเบตเปเบเบตเป เบเปเป เบเบฐเบเบทเบเบชเปเบฒเบเบเบทเปเบเปเบเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ) เปเบเบฑเบ
func($a->thread(1,3),$b->thread(0,3),$c,$d->thread(0,1))
เบเบฒเบเบฅเบฒเบเปเบเบฑเบเบเบญเบ func เปเบฅเบฐเบเปเบฒเบเปเบเบดเบเปเบเบซเบฒ pdls เปเบเปเบเบญเบญเบเปเบเบฑเบเบเบธเปเบกเบเบฑเปเบเบเปเปเปเบเบเบตเปเบเบญเบ
เบเบฐเบซเบเบฒเบเบซเบผเบฑเบ, เบเบดเปเบชเบ เปเบฅเบฐ thread (เบเบฝเบเปเบเบฎเบนเบเปเบเบ "pdl(core dims){thread dims}[extra
dims]"):
a(5,10){3,11}[] b(5){3,1}[10,12] c(){}[10] d(5){3,11}[10,12]
เบเปเบงเบเบชเบดเปเบเบเบตเปเปเบเบทเปเบญเบเปเบงเบเบเบงเบเปเบฎเบปเบฒ (เปเบเบเบเบปเปเบงเปเบเปเบฅเปเบงเบกเบฑเบเปเบเบฑเบเบเบฐเปเบซเบเบเบเบตเปเบเบฐเบเบฝเบเบเบฒเบเปเบเปเบเบฝเบเบฅเบปเบเปเบเบเบเบตเป
เปเบเปเบงเบฅเบฒเบเบตเปเบเปเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเบกเบฑเบเบซเบผเบตเปเบเบเบฑเบ threading เปเบฅเบฐเบเปเบญเบเบเบฒเบเบเบตเปเบเบฐเบเบดเบเบเบฒเบกเบชเบดเปเบเบเบตเปเปเบเบตเบเบเบถเปเบ) เบเบงเบเปเบฎเบปเบฒ
เปเบเบตเปเบกเปเบเบตเบก deduce เบงเปเบฒเบเปเบฒเบเบงเบเบเบญเบเบเบฐเบซเบเบฒเบ loop explicit เปเบกเปเบ 2 (เปเบเบ T1b เบเบฒเบ $a เปเบฅเบฐ $b)
with sizes "(3,11)" (เปเบเบ T2); 2 เบเบฐเปเบฒเบเบเบญเบ loop implicit (เปเบเบ T1a เบเบฒเบ $b เปเบฅเบฐ $d) เบเบญเบเบเบฐเบซเบเบฒเบ
"(10,12)" (เปเบเบ T2) เปเบฅเบฐเบญเบปเบเบเบฐเบเบญเบเบเบญเบเปเบเปเบเบทเบเบเบดเบเปเบฅเปเบเบฒเบ input pdls เปเบเบเบฒเบเบเบตเปเบชเบฒเบกเบฒเบ
เบชเบฐเปเบเบเบญเบญเบเปเบ pdl pseudo-code as
เบชเปเบฒเบฅเบฑเบ (l=0;l<12;l++)
เบชเปเบฒเบฅเบฑเบ (k=0;k<10;k++)
เบชเปเบฒเบฅเบฑเบ (j=0;j<11;j++) เบเบปเบเบเบฐเบเบปเบเบเบญเบเบเบฒเบเบเบดเปเบเบเบปเบงเบกเบฑเบเปเบเบฑเบ dummy dim (เบเบฑเบเบเบฐเบเบต j)
เบชเปเบฒเบฅเบฑเบ (i=0;i<3;i++) |
d(i,j,:,k,l) โโ= func(a(:,i,:,j),b(i,:,k,0,l),c(k))
Ugh, เบเบปเบงเบขเปเบฒเบเบเบตเปเบเปเปเบเปเปเบเปเบฒเบเปเบเปเบเปเบเบญเบเบเบฒเบเบฎเบฑเบเบชเบฒเบเบฑเบเบเบต. เบกเบฑเบเปเบซเปเบเปเบฅเบดเบเบฒเบเบชเปเบงเบเปเบซเบเปเปเบเบฑเบ
เบเบปเบงเบขเปเบฒเบเบงเบดเบเบตเบเบฒเบเบเบดเบเบญเบญเบเบงเปเบฒเบกเบตเบซเบเบฑเบเปเบเบตเบเบเบถเปเบเปเบเปเบงเบฅเบฒเบเบตเปเบเปเบฒเบเบเบปเบเบเบฑเบเบเบฒเบเปเบเบดเปเบเบเบตเปเบชเบฑเบเบชเบปเบ
เบเบฒเบเบชเบฐเปเบเบเบญเบญเบ. เปเบเปเบเบฝเบงเบเบตเปเปเบเบดเบเปเบงเบฅเบฒเปเบเปเปเบเบตเปเบเบฐเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเปเบฒเบเบฒเบเปเบชเปเบเบฐเบเบนเปเบกเบตเบเบฐเปเบซเบเบเปเบเบเบเบฒเบเปเบซเปเบเบฒเบเบชเปเบงเบเบเบทเปเบกเบญเบตเบ
เบเบปเบงเบขเปเบฒเบเบเบตเปเปเบญเบตเปเบเบงเปเบฒ "เบเบฐเบเบดเบเบฑเบ" เบเบญเบเบเบงเบเปเบฎเบปเบฒ.
[ เบเบปเบงเบขเปเบฒเบเบเปเปเปเบเบเบตเปเบเบฐเบเปเบญเบเบกเบตเบเปเบฒเบญเบฐเบเบดเบเบฒเบเปเบเบตเปเบกเปเบเบตเบกเปเบเบญเบฐเบเบฒเบเบปเบ. เบชเปเบฒโเบฅเบฑเบ
เปเบเบเบฑเบเบเบธเบเบฑเบเบเบฐเบฅเบธเบเบฒเบเบฐเบเบฒเบเบฒเบกเบเปเบฒเบฅเบปเบเบเบตเบงเบดเบเบเบฑเบเบเปเบฒเปเบซเบฑเบเปเบเบเบดเปเบเบฅเบฐเบซเบฑเบ. ]
เบเบปเบงเบขเปเบฒเบ 1:
*** เบเบตเปเบเบเบฑเบเบเบญเบเบกเบฒเบเบฃเบดเบเปเบเบทเปเบญเบเบชเบฐเปเบเบเปเบเบ eigvecs เปเบฅเบฐ eigvals
** เปเบซเปเปเบกเบเบฃเบดเบเบชเบปเบกเบกเบฒเบเบฃเบดเบเปเบเบทเปเบญเบ M = A^T x diag(lambda_i) x A
** => เบเบตเปเบ M^-1 = A^T x diag(1/lambda_i) x A
** เบเบณเบญเบดเบ $tmp = diag(1/lambda_i)*A
** เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ A^T * $tmp เปเบเบเบเบฐเบฅเบดเบเบเบฐเบเบฑเบเบเบฒเบเปเบ threaded
# เบเบฒเบเบเบฑเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบเบทเปเบญเปเบซเป matrices เบเบดเบกเบเบทเบเบเปเบญเบเบเบฒเบเปเบเป pdl
$inv .= $evecs*0; # เบเบฝเบเปเบเปเบชเปเบฒเปเบเบปเบฒเปเบเบทเปเบญเปเบซเปเปเบเปเบเบปเบเบเบฐเบฅเบดเบเบเบฐเบซเบเบฒเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบก
$tmp .= $evecs; # เปเบเบทเปเบญเบเบเบปเปเบ, เบเปเปเบกเบตเบเบฒเบเบเบฐเบซเบเบฒเบเบเบฑเบเบเบทเบ
($tmp2 = $tmp->เบเบฐโเบเบนเป(0)) // $evals; # เบเบฒเบเปเบเปเบเบเบฐเบเบนเป
# เปเบฅเบฐเบเบฝเบงเบเบตเปเบเบฒเบเบเบนเบเบกเบฒเบเบฃเบดเบเปเบเบทเปเบญเบเปเบเบเบฒเบเบเบญเบกเบเบปเบง
PDL::Primitive::inner($evecs->xchg(0,1)->thread(-1,1),
$tmp->thread(0,-1),
$inv->thread(0,1));
# เบเบฒเบเปเบฅเบทเบญเบเบชเปเบฒเบฅเบฑเบ matrix mult เปเบเบเปเบเป threading implicit,
# xchg เบเปเบฒเบญเบดเบเบเบฝเบเปเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฒเบเบเบญเบ
PDL::Primitive::inner($evecs->xchg(0,1)->dummy(1)
$tmp->xchg(0,1)->dummy(2)
($inv=null));
เบเบปเบงเบขเปเบฒเบ 2:
# เบเบฐเบฅเบดเบเบเบฐเบเบฑเบเบเบญเบเปเบเบเบเบฒเบเบเบนเบ threaded
# เบเบงเบฒเบกเบเบปเบเบเบฑเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเปเบญเบเปเบฎเบฑเบเบเปเบงเบเบเบฒเบเปเบเบซเบฒ my_biop1 เบขเปเบฒเบเบเบฐเปเบเปเบ
# เปเบกเบทเปเบญเปเบเปเบเบฐเบเบนเปเบเบตเปเบเบฑเบเปเบเบ
$res=zeroes(($a->dims)[0],($b->dims)[0]);
my_biop1($a->thread(0,-1),$b->thread(-1,0),$res->(0,1),"*");
# เบชเบดเปเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบเปเบเบเบเบฒเบเปเบชเปเบเบฐเบเบนเป implicit เบเบฑเบ pdl เบชเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
$res = $a->dummy(1) * $b->dummy(0)
เบเบปเบงเบขเปเบฒเบ 3:
# เบเบฒเบเบเปเบฒเปเบเปเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเบเบญเบ thread เปเบฅเบฐ unthread เปเบเบทเปเบญ shuffle เบเปเบฒเบเบงเบเบเบญเบ
# เบกเบดเบเบดเปเบเบเบฑเปเบเบเบฝเบงเปเบเบเบเปเปเบกเบตเบเบฒเบเปเบเบซเบผเบฒเบเปเบเบซเบฒ ->xchg เปเบฅเบฐ ->mv
# เปเบเป thread/unthread เปเบเบทเปเบญเบชเบฐเบซเบผเบฑเบเบเบฐเปเบฒเบเบญเปเบญเบกเบฎเบญเบ
# เบเบฝเบเปเบเปเบฅเบญเบเบกเบฑเบเบญเบญเบเปเบฅเบฐเบเบฝเบเบเบฝเบ pdl เบเบญเบเปเบเบฑเบเบเบฑเบเบเปเปเปเบกเป
$trans = $a->thread(4,1,0,3,2)->unthread;
เบเบปเบงเบขเปเบฒเบ 4:
# เบเบดเบเปเบฅเปเบชเบญเบเบชเบฒเบกเบเปเบญเบ
# $bb เบเบฐเบเบท BB เปเบเบฑเบ [xmin,xmax],[ymin,ymax],[zmin,zmax]
# เบเบงเบเปเบฎเบปเบฒเปเบเป thread เปเบฅเบฐ unthread เบญเบตเบเปเบเบทเปเบญ เปเบถเปเบ เปเบเบทเปเบญเบชเบฐเบซเบผเบฑเบเบเบฐ เปเบฒเบ เบญเปเบญเบกเบฎเบญเบ
pdl> $bb = zeroes(double, 2,3 );
pdl> เบเปเบฒเปเบชเบธเบเบเบตเป($vertices->เบเบฐโเบเบนเป(0)-> clump->unthread(1), $bb->slice('(0), :'));
pdl> เบชเบนเบเบชเบธเบ ($vertices->เบเบฐโเบเบนเป(0)-> clump->unthread(1), $bb->slice('(1), :'));
เบเบปเบงเบขเปเบฒเบ 5:
# เบเบดเบโเปเบฅเปโเบเบฒเบโเปเบเปเบโเบเบฑเบโเบเปเบงเบโเบเบปเบโเปเบญเบ (เปเบเบฑเปเบโ: เบเบฒเบโเบเบปเบโเบเบฐโเบเบดโเบเบญเบโเบเบปเบโเปเบญเบโ) เบฅเปเบฒโเบเบฑเบโเบเบญเบโเบฎเบนเบโเบเบฒเบโ
# เปเบเป threading explicit เปเบฅเบฐเบเบฒเบเปเบเปเบ threaded implicitly
$stack = read_image_stack();
# เบเบดเบเปเบฅเปเบเปเบฒเบชเบฐเปเบฅเปเบ (เบเปเป pixel เบชเบฐเปเบฅเปเบ) เบเบญเบเบฎเบนเบ $n+1 เบเบณเบญเบดเบ
$aver = zeroes([stack->dims]->[0,1]); # เปเบฎเบฑเบเปเบซเปเบเบปเบเบเบฐเบฅเบดเบ pdl
sumover($stack->slice(":,:,0:$n")->เบเบฐเบเบนเป(0,1),$aver);
$aver /= ($n+1);
$stack /= $aver; # เปเบฎเบฑเบเปเบซเป stack เปเบเบฑเบเบเบปเบเบเบฐเบเบดเปเบเบเบเบฒเบเปเบฎเบฑเบเบเบฒเบเปเบเปเบ threaded
# implicit เบเบฑเบ explicit
# เบเบฒเบเปเบฅเบทเบญเบเปเบเบเบฒเบเบเบดเบเปเบฅเป $aver เบเปเบงเบเบเบฒเบเปเบชเปเบเบฐเบเบนเป implicit เปเบฅเบฐเบเบฒเบเบชเปเบฒเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ
sumover($stack->slice(":,:,0:$n")->mv(2,0),($aver=null));
$aver /= ($n+1);
#
เบชเบปเบกเบเบนเบเปเบเบ เปเบกเบทเปเบญเบเบฝเบเบเบฑเบ เบขเปเบฒเบเบเบฑเบเปเบเบ เบเบฐเบเบนเป
เปเบเบงเบฑเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฐเบเบปเบเบเบปเบงเบขเปเบฒเบเปเบเปเบงเบฅเบฒเบเบตเปเบเบฒเบเปเบชเปเบเบฐเบเบนเปเบเบตเปเบเบฑเบเปเบเบเปเบกเปเบเบเบตเบเบงเปเบฒ
เบเบฐเบเบนเป implicit เปเบฅเบฐเปเบเบเบฒเบเบเบฑเบเบเบฑเบ. เปเบเปเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ, เบเบตเปเบญเบฒเบเบเบฐเบเปเปเปเบกเปเบเบงเบดเบเบตเบเบตเปเบเบตเบเบตเปเบชเบธเบ
เปเบญเบปเบฒเบเปเบฅเบฐเบเบตเบเบฑเปเบเปเบเปเปเบเบปเปเบฒเบฎเบนเปเปเบฅเปเบง: เบเบฑเบเบชเบญเบเบฅเบปเบเบเบฒเบเบเบฐเบชเบปเบกเบเบฑเบ. เบเบฑเปเบเบเบฑเปเบ, เบกเบฑเบเปเบเบตเปเบกเปเบเบตเบกเบเปเบฝเบงเบเบฑเบเบงเบดเบเบตเบเบฒเบ
เปเบเบทเปเบญเปเบซเปเปเบเปเบฎเบฑเบเบชเบดเปเบเบเบตเปเบเบตเบเบตเปเบชเบธเบเบเบญเบเบเบฑเบเบชเบญเบเปเบฅเบเปเบฅเบฐ, เปเบเบงเปเบเบเปเปเบเบฒเบก, เปเบเบเบตเปเบเบตเบเบตเปเบชเบธเบเบเบญเบ Perl เบเบฐเปเบเบเบต: TIMTOWTDI !
[เบเปเบญเบฐเปเบ, เบญเบฑเบเบเบตเปเบเบฑเบเบเปเบญเบเปเบเปเบเบทเปเบกเปเบชเปเปเบเบชเบฐเบเบฑเบเบเปเปเบกเบฒ; เบญเบฒเบเบเบฐเบญเปเบฒเบเปเบเบดเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบเปเบเบดเบ
เบซเบผเบทโเปเบฅเบทเบญเบโเปเบญเบปเบฒโเบเบฒเบโเบญเบฑเบโเปเบซเบกเปโ]
เบชเบธเบเบเปเบฒเบ, เบเบตเปเบญเบฒเบเบเบฐเปเบเบฑเบเบเปเบญเบเบเบตเปเบเบตเบเบตเปเบเบฐเบเบฝเบเปเบเปเปเบซเปเบฅเบฒเบเบฅเบฐเบญเบฝเบเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบเบเบฑเบเบซเบกเบปเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเปเบเปเปเบ
เบขเบนเปเปเบเบเบฐเบกเบฒเบเบชเบญเบเบชเบฒเบกเบซเบเปเบฒ: เปเบเบฑเบเบซเบเบฑเบเบเบฐเบเบนเป?
เบเบต, เบฅเบฐเบซเบฑเบเบเบตเปเปเบเป threading เบเบงเบ (เบซเบผเบฒเบ) เปเบงเบเบงเปเบฒเบฅเบฐเบซเบฑเบเบเบตเปเปเบเป
explicit for-loops (เบซเบผเบทเบเบฒเบเบชเปเบฒเบ Perl เบเบตเปเบเปเบฒเบเบเบทเบเบฑเบ) เปเบเบทเปเบญเบเบฑเบเบฅเบธเบซเบเปเบฒเบเบตเปเบเบฝเบงเบเบฑเบ.
เปเบเบโเบชเบฐโเปเบเบฒเบฐโเปเบกเปเบโเบเปเบฝเบงโเบเบฑเบโเบเบญเบกโเบเบดเบงโเปเบเบต (เบกเบตโเบญเบธโเบเบฐโเบเบญเบโเบเบฒเบโเบเบญเบกโเบเบดเบงโเปเบเบต vector / เบเบฐโเบซเบเบฒเบโ) PDLโ
threading เบเบฐเบเบทเบเบเบฐเบเบดเบเบฑเบเปเบเบงเบดเบเบตเบเบตเปเปเบเปเบเบฐเปเบซเบเบเบเบฒเบเบชเบดเปเบเบญเปเบฒเบเบงเบเบเบงเบฒเบกเบชเบฐเบเบงเบเปเบเบตเปเบกเปเบเบตเบก
เบเบญเบโเปเบเบทเปเบญเบโเบเบฑเบโเปเบซเบผเบปเปเบฒโเบเบตเปโ. เบเบดเปเบเปเบเบเบงเปเบฒเบเบฑเปเบ, เบกเบฑเบเปเบเบฑเบเบเบฒเบเบชเปเบฒเบเปเบเบงเบเบงเบฒเบกเบเบดเบเบเบฝเบเปเบเป (เปเบเบดเบเปเบกเปเบเบงเปเบฒเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบ
เบฅเบฒเบเบฅเบฐเบญเบฝเบเบญเบฒเบเบเบฐเบกเบตเบชเปเบงเบเบฎเปเบงเบกเปเบเบเบฒเบเบเบฑเปเบ) เปเบฅเบฐเบชเบฒเบกเบฒเบ เบขเปเบฒเบเบซเบผเบงเบเบซเบผเบฒเบ เบซเบผเบธเบโเบเปเบญเบโเบเบงเบฒเบกโเบชเบฑเบโเบชเบปเบ syntactical เบเบญเบโ
เบฅเบฐเบซเบฑเบ PDL (เปเบเปเบฎเบฑเบเบชเบฒเบเปเบฒเปเบเบทเบญเบเบชเปเบฒเบฅเบฑเบเปเบญเบเบฐเบชเบฒเบเบขเบนเปเปเบเปเบ). เปเบกเบทเปเบญเปเบเบปเปเบฒเบชเบฐเบเบงเบเบชเบฐเบเบฒเบ
เบเบฑเบ เบเบฐเบเบนเป เบงเบดเบเบตเบเบฒเบเบเบดเบ (เปเบฅเบฐเบเบฒเบเบเบฝเบเบฅเบฐเบซเบฑเบ) เบกเบฑเบเบเปเปเบเบงเบเบเบฐเบเบฒเบเปเบเบตเบเปเบเบเบตเปเบเบฐ
เปเบเบปเปเบฒโเปเบโเบฅเบฐโเบซเบฑเบโเบเบตเปโเบเบนเปโเบญเบทเปเบโเปเบเปโเบเบฝเบโเบโเปโเบงเบฒ (เบชเบฐโเบซเบเบญเบโเปเบซเปโเปเบเบปเบฒโเปเบเบปเปเบฒโเปเบซเปโเบเบงเบฒเบกโเบเบดเบโเบงเปเบฒโเปเบเบงโเปเบโ
เบเบฐเบซเบเบฒเบเบงเบฑเบเบชเบฐเบเบธเบเปเบญเบเบเบตเปเบเบฒเบเบงเปเบฒเบเบฐเบกเบต, เปเบฅเบฐเบญเบทเปเบเป). เปเบเบฑเบเบเปเบฒเปเบเบฐเบเปเบฒเบเบปเปเบงเปเบเปเบเบทเปเบญเปเบเบตเปเบกเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบญเบเบเปเบฒเบ
เบฅเบฐเบซเบฑเบ: เบเปเบฒเบเปเบฒเบเบเปเบญเบเปเบเบฐเบเปเบฒ loop เปเบเบปเปเบฒเปเบเปเบเบฅเบฐเบซเบฑเบเบเบญเบเบเปเบฒเบ, เบเบฐเบเบฒเบเบฒเบกเบเบฐเบเบดเบฎเบนเบเบเบฑเบเบซเบฒเบเบฑเปเบเบเปเบฒเบง
เบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเปเบฒเปเบเป threading เปเบเบทเปเบญเบเบฐเบเบดเบเบฑเบ loop เปเบเป (เปเบเบฑเปเบเบเบฝเบงเบเบฑเบเบเบฑเบเบชเบดเปเบเบเบตเปเบกเบตเบเปเปเบเบปเบเปเบงเบฑเปเบ
เบเบปเบโเบฅเบฐโเบเบฝเบโเบเบตเปโ; เปเบเปเบเบนเปเบเบฝเบเบเบญเบเปเบญเบเบฐเบชเบฒเบเบเบตเปเบกเบฑเบเบเบฐเบเบดเบเบงเปเบฒเบชเบดเปเบเปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบเบซเบฒเบเบฒเบ
เบเปเบฅเบฐเบเบต ;).
PDL::PP
An เบเปเบฒเบ เบงเบดเบเบตเบเบฒเบ to เบเปเบฒเบเบปเบ เบซเบเปเบฒเบเบตเป เบเบตเป เบกเบต เบฎเบนเป of เบเบฑเบเบชเบฐเบเบต เปเบฅเบฐ เบเบฐเบเบนเป (เปเบฅเบฐ เปเบเป เบเบฑเบเบเบฐเบงเบฒเบ เปเบฅเบฐ
เบเบธเบเบขเปเบฒเบ)
PDL:PP เปเบกเปเบเบชเปเบงเบเบซเบเบถเปเบเบเบญเบเบเบฒเบเปเบเบเบขเบฒเบ PDL. เบกเบฑเบเบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบชเปเบฒเบเบซเบเปเบฒเบเบตเปเบฎเบฑเบเบฎเบนเป
indexing เปเบฅเบฐ threading เบเบปเบเบฅเบฐเบเบฝเบเบเบฒเบเบเปเบฒเบญเบฐเบเบดเบเบฒเบเบซเบเปเปเบซเบผเบฒเบ. เบกเบฑเบเบชเบฒเบกเบฒเบเปเบเบฑเบเบเบฐเปเบซเบเบเบชเปเบฒเบฅเบฑเบเบเปเบฒเบเบเปเบฒเบซเบฒเบเบงเปเบฒ
เบเปเบฒเบโเบเปเบญเบโเบเบฒเบโเบเบตเปโเบเบฐโเบเบฝเบโเบซเบเปเบฒโเบเบตเปโเบเบญเบโเบเบปเบโเปเบญเบโเบซเบผเบทโเบเปเบฒโเบซเบฒเบโเบงเปเบฒโเบเปเบฒเบโเบเปเบญเบโเบเบฒเบโเบเบตเปโเบเบฐโเปเบเปโเบเบญเบโเบซเบเปเบฒโเบเบตเปโเบเบฒเบโเบเบฒเบโ
เบซเปเบญเบเบชเบฐเบซเบกเบธเบเบเบฒเบเบเบญเบเปเบเบทเปเบญเปเบซเปเบเบงเบเปเบเบปเบฒเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบฅเบฐเบเบฐเบเบนเป (เปเบฅเบฐเบเบฒเบเบเบตเบเบฒเบเปเบซเบฅเบเบญเบเบเปเปเบกเบนเบเปเบเบฑเปเบเบเบฝเบงเบเบฑเบ,
เปเบเบดเปเบ PDL::Dataflow). เบชเปเบฒเบฅเบฑเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเปเบเบตเปเบกเปเบเบตเบกเบเบงเบเปเบเบดเปเบ PDL::PP.
เปเบญเบเบฐเบชเบฒเบเบเปเบญเบ A
Affine เบเบฒเบเบซเบฑเบเปเบเบฑเบ - a เบเบดเปเบชเบ เบฅเบฐเบเบฑเบ of เบเปเบฒเบเบเบฒเบ เปเบฅเบฐ เบเบฐเบชเบดเบเบเบดเบเบฒเบ เบเบฒเบเบซเบฑเบเปเบเบฑเบ
[ เบญเบฑเบเบเบตเปเบเบฑเบเปเบเบฑเบเบชเบดเปเบเบเบตเปเบเบฐเปเบเบตเปเบกเปเบเบปเปเบฒเปเบเบเบฒเบเบเปเบญเบเปเบเบญเบฐเบเบฒเบเบปเบ. เบเบงเบเปเบฎเบปเบฒเบกเบตเบเบปเปเบงเปเบเปเบฅเปเบงเบเป
make_affine routine เปเบ PDL ? เบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฐเบญเปเบฒเบเปเบเบดเบเบเบนเปเบเบฒเบเบเบตเปเปเบซเบกเบฒเบฐเบชเบปเบกเบญเบทเปเบ
เบซเบเปเบฒโเบเบฒเบโเบเบตเปโเบเบตเปโ]
เปเบญเบเบฐเบชเบฒเบเบเปเบญเบ B
เบฅเบฒเบเปเบเบฑเบ of เบกเบฒเบเบเบฐเบเบฒเบ PDL::PP เบฅเบงเบเบฅเบงเบก เบซเบเปเบฒเบเบตเป
เบเบฒเบเบเบฑเบเปเบฅเบทเบญเบเบฅเบฒเบเปเบเบฑเบเบเบญเบ PDL primitives เปเบเบทเปเบญเบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบเบงเปเบฒ PP เบฅเบงเบเบฅเบงเบกเบเบฐเบซเบเบฒเบเปเบ
เบซเบเปเบฒเบเบตเป gobble เปเบเบดเบ (เปเบฅเบฐเบเบฑเปเบเบเบฑเปเบเบเปเบฒเบเบชเบฒเบกเบฒเบเบเบดเบเบญเบญเบเบชเบดเปเบเบเบตเปเบเบฐเปเบเปเบฎเบฑเบเบเบฒเบ threaded เปเบเปเบฅเบเบฐ). เบชเปเบงเบเปเบซเบเป
เบซเบเปเบฒเบเบตเปเปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบเบเบทเปเบเบเบฒเบเบเบตเปเบเปเบฒเบเบปเบเปเบงเปเปเบ "primitive.pd"
# เบเบฑเบเบเบฑเบเปเบ primitive.pd
#
sumover ((n),[o]())
prodover ((n),[o]())
axisvalues โโ((n)) เปเบเบ
เบเบฒเบเปเบ ((n),(n),[o]())
เบเบญเบ ((n),(m),[o](n,m))
innerwt ((n),(n),(n),[o]())
inner2 ((m),(m,n),(n),[o]())
inner2t ((j,n),(n,m),(m,k),[o]())
เบเบฑเบเบเบฐเบเบต (1D,0D,[o])
เบเบฑเปเบเบเปเบณ (1D,[o])
เบชเบนเบเบชเบธเบ (1D,[o])
wstat ((n),(n),(),[o],())
assgn (( ),())
# เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบทเปเบเบเบฒเบ
เบเบฒเบโเบเปเบฒโเปเบเบตเบโเบเบฒเบโเบเบนเป ((),(),[o]())
เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบ unary ((),[o]())
เบเบนเปเบเบฝเบ & COPYRIGHT
เบฅเบดเบเบฐเบชเบดเบ (C) 1997 Christian Soeller ([email protected]) & Tuomas J. Lukka
([email protected]). เบชเบฐเบซเบเบงเบเบฅเบดเบเบฐเบชเบดเบเบเบฑเบเปเบปเบ. เปเบเบดเบเปเบกเปเบเบงเปเบฒ destined เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบญเบเปเบเบฑเบเบซเบเปเบฒเบเบนเปเบเบฒเบ
เบเปเบงเบเบเบฒเบเปเบเบเบขเบฒเบ PDL เบกเบฒเบเบเบฐเบเบฒเบ, เบกเบฑเบเบเปเปเปเบกเปเบเปเบเปเบกเบเบชเบฒเบเบฒเบฅเบฐเบเบฐ. เบเบฒเบโเบญเบฐโเบเบธโเบเบฒเบโเปเบกเปเบโเบญเบฐโเบเบธโเบเบฒเบโเปเบซเปโ
เปเบเบเบขเบฒเบเปเบญเบเบฐเบชเบฒเบเบชเบฐเบเบฑเบเบเบตเปเบขเปเบฒเบเปเบชเบฅเบตเปเบเบเบเปเปเปเบซเปเบกเบตเบเบฒเบเบเบฑเบเปเบเปเบเบฒเบเบเบญเบ
เบเบฒเบเบเบฑเบเบฎเบนเบเปเบเบเบเบฐเบเบทเบเปเบฎเบฑเบ, เปเบฅเบฐเปเบเปเบเบเบฒเบเบชเบฐเบเบฑเบเบเบตเปเบเบฑเบเบเบปเบ intact. เปเบเบปเปเบฒเปเบเปเบฎเบฑเบเบญเบฐเบเบธเบเบฒเบเปเบฅเบฐ
เบเบธเบเบเบนเปเปเบซเปเปเบเปเบฅเบฐเบซเบฑเบเปเบฅเบฐเบเบปเบงเบญเบฐเบเบธเบเบฑเบเบเบญเบเบกเบฑเบเบขเบนเปเปเบเบฅเบฐเบซเบฑเบเปเบซเบผเปเบเบเบญเบเบเปเบฒเบเปเบญเบเปเบเบทเปเบญเบเบงเบฒเบกเบกเปเบงเบเบซเบผเบทเบชเปเบฒเบฅเบฑเบ
เบเบณเปเบฅเบเบฒเบกเบเบตเปเปเบเบปเปเบฒเปเบซเบฑเบเบเปเบเบต.
เปเบเป PDL::Indexingp เบญเบญเบเปเบฅเบเปเปเบเบเปเบเปเบเปเบฅเบดเบเบฒเบ onworks.net