Ini adalah perintah PDL::Coursep yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
PDL::Course - Perjalanan melalui dokumentasi PDL, dari pemula hingga mahir.
PENGARANG, TANGGAL
Ini ditulis oleh David Mertens dengan suntingan oleh Daniel Carrera.
Kata pengantar
Dokumentasi PDL sangat luas. Beberapa bagian mencakup sihir inti dalam sementara yang lain mencakup
topik yang lebih umum seperti IO dan komputasi numerik. Bagaimana ini terkait? Dimana seharusnya?
kamu mulai?
Dokumen ini merupakan upaya untuk menarik semua dokumentasi PDL kunci bersama-sama dalam satu koheren
kursus belajar, mulai dari tingkat pemula, hingga ahli.
Saya telah merinci semuanya berdasarkan tingkat keahlian, dan dalam keahlian yang telah saya bahas
dokumentasi, perpustakaan, dan modul alur kerja. Modul dokumentasi berguna untuk
apa yang mereka katakan kepada Anda; modul perpustakaan berguna untuk fungsi yang mereka tetapkan untuk
Anda; modul alur kerja berguna karena memungkinkan Anda menyelesaikan pekerjaan
dengan cara baru dan berbeda.
Pengantar
Jika Anda baru mengenal PDL, modul dokumentasi ini akan membantu Anda memulai dengan benar
jalur untuk menggunakan PDL.
Dokumentasi
Modul yang memberi tahu Anda cara mulai menggunakan PDL. Banyak dari ini adalah modul perpustakaan
secara teknis, tetapi mereka disertakan ketika Anda "menggunakan PDL", jadi saya telah menyertakannya untuk mereka
dokumentasi.
Setelah tiga yang pertama, sebagian besar dokumen yang tercantum di bawah ini agak kering. Mungkin mereka akan menjadi
lebih baik diringkas oleh tabel atau sinopsis yang lebih baik. Anda setidaknya harus memindai melalui mereka untuk
biasakan diri Anda dengan kemampuan dasar PDL.
· PDL::Filsafat, PDL::Mulai Cepat
Beberapa pengantar singkat untuk PDL. Yang kedua sedikit lebih praktis. Jika kamu
baru mengenal PDL, Anda harus mulai dengan ini.
· PDL::Dasar
Meliputi rutinitas pembuatan piddle dasar seperti "urutan", "rvals", dan "logxvals" ke nama
beberapa acak. Juga mencakup "hist" dan "transpose".
· PDL :: Tidak berfungsi
Menjelaskan kumpulan besar fungsi bawaan yang, jika diberikan piddle dimensi-N,
akan membuat piddle dengan dimensi N-1.
· PDL::Irisan Bagus
PDL menjadi dewasa tepat di sekitar pergantian milenium dan NiceSlice muncul di
adegan sedikit setelah itu. Beberapa dokumen masih belum menyusul. NiceSlice adalah
cara 'modern' untuk mengiris dan memotong piddles Anda. Baca Sinopsisnya, lalu scroll ke bawah
ke Sintaks Slicing Baru. Setelah Anda membaca sampai bawah, kembali ke dan baca
barang di atas.
· PDL::Primitif
Mendefinisikan banyak fungsi built-in yang berguna. Ini adalah hal-hal yang
pemula cenderung menulis ke daftar dan berkata, "Bagaimana saya melakukan xxx?" Anda akan menjadi
baik dalam perjalanan Anda untuk mempelajari tali setelah Anda menyelesaikan dokumen ini.
· Pilihan dari PDL::Core
Seperti PDL::Primitive, mendefinisikan sekumpulan besar fungsi yang berguna. Sayangnya, beberapa dari
fungsinya cukup esoteris, tetapi bercampur dengan yang lain dan sederhana
yang mudah. Telusuri seluruh dokumen, lewati fungsi yang rumit untuk saat ini.
Saya akan menunjukkan secara khusus fungsi "perkiraan".
Workflow
· Shell perldl atau pdl2
Shell Perldl adalah REPL (Read-Evaluate-Print-Loop, dengan kata lain, prompt atau
shell) yang memungkinkan Anda untuk bekerja dengan PDL (atau Perl apa pun, dalam hal ini) dalam 'waktu nyata',
memuat data dari file, merencanakan, memanipulasi... Apa pun yang dapat Anda lakukan dalam skrip,
dapat Anda lakukan di PDL Shell, dengan umpan balik instan!
perpustakaan
· PDL
Modul pekerja keras utama. Anda akan menyertakan ini di hampir setiap program PDL yang Anda tulis.
Normal penggunaan
Jenis modul yang kemungkinan besar akan Anda gunakan secara normal dalam skrip atau dari dalam
cangkang perldl. Beberapa modul ini mungkin tidak pernah Anda gunakan, tetapi Anda harus tetap waspada
bahwa mereka ada, untuk berjaga-jaga jika Anda membutuhkan fungsionalitasnya.
Dokumentasi
· PDL::Irisan
Selain menjelaskan fungsi slicing dan dicing asli - untuk itu Anda
biasanya dapat menggunakan PDL::NiceSlice - ini juga mencakup banyak fungsi penanganan dimensi
seperti "mv", "xchg", dan "reorder". Ini juga secara menyeluruh mendokumentasikan "rentang"
fungsi, yang bisa sangat kuat, dan mencakup sejumlah fungsi internal, yang
mungkin bisa dilewati.
· PDL::Pengindeksan
Ini mencakup banyak landasan konseptual yang lebih dalam yang harus Anda pahami benar-benar
menggunakan PDL secara maksimal. Itu menjadi lebih kompleks seiring berjalannya waktu, jadi jangan
bermasalah jika Anda kehilangan minat di tengah jalan. Namun, membaca
dokumen ini akan membawa Anda lebih dekat ke pencerahan PDL.
· PDL::IO
PDL memiliki beberapa modul IO, yang sebagian besar dibahas dalam modul ringkasan ini.
· PDL::Kiat
Kumpulan dari beberapa ide Tuomas untuk memanfaatkan PDL dengan baik.
· PDL::Nilai Buruk
Menjelaskan apa itu nilai-nilai buruk dan bagaimana dan mengapa nilai-nilai itu diterapkan.
· Pilihan dari Inline::Pdlpp
Meskipun menulis kode PDL::PP dianggap sebagai topik Lanjutan, dan tercakup dalam
bagian selanjutnya, Anda harus menyadari bahwa mungkin (dan sangat sederhana) untuk
menulis kode sadar PDL. Anda tidak perlu membaca semuanya pada saat ini, tetapi untuk mendapatkan beberapa
merasakan cara kerjanya, Anda harus membaca semuanya melalui contoh pertama. A
salinan dokumentasi ini terdapat dalam PDL::PP-Inline.
· PDL::Objek
Menjelaskan cara mensubklasifikasikan objek piddle.
· PDL::Indeks
Hal ini telah dibahas dalam Kata Pengantar. Ini adalah file yang dibuat secara otomatis yang mencantumkan
semua modul PDL di komputer Anda. Ada banyak modul yang mungkin ada pada Anda
mesin tetapi yang tidak didokumentasikan di sini, seperti binding ke perpustakaan FFTW, atau
GSL. Bacalah!
perpustakaan
· PDL::Kompleks
Dukungan bilangan kompleks. Tidak, PDL tidak memiliki dukungan bilangan kompleks yang terpasang di dalam
inti, tetapi ini akan membantu Anda.
· PDL::FFT
Fast Fourier Transform milik PDL sendiri. Jika Anda memiliki FFTW, maka Anda mungkin harus menggunakan
dari itu; ini adalah implementasi internal PDL dan harus selalu tersedia.
· GSM
PDL tidak memiliki ikatan untuk setiap sub-perpustakaan di Perpustakaan Ilmiah GNU, tetapi itu
memiliki beberapa. Jika Anda telah menginstal GSL di mesin Anda, maka kemungkinannya layak
bahwa PDL Anda memiliki binding GSL. Untuk daftar lengkap binding GSL, periksa
PDL::Indeks.
· PDL::Fungsi
Antarmuka yang agak seragam untuk modul interpolasi yang berbeda dalam PDL.
· PDL::Buruk
Mencakup beberapa fungsi dasar bernilai buruk, termasuk fungsi untuk menanyakan apakah ada piddle
memiliki nilai buruk ("isbad") dan berfungsi untuk menetapkan elemen tertentu sebagai buruk ("setbadat" dan
"setbadif"). Di antara tempat lain, nilai buruk digunakan di PDL::Graphics::PLplot's
xyplot untuk membuat celah dalam plot garis.
· PDL::DiskCache
Modul keren yang memungkinkan Anda untuk mengikat array Perl ke kumpulan file di
disk, yang akan dimuat masuk dan keluar dari memori sebagai piddles. Jika Anda menemukan diri Anda sendiri
menulis skrip untuk memproses banyak file data, terutama jika pemrosesan data itu tidak
harus berurutan, Anda harus mempertimbangkan untuk menggunakan PDL::DiskCache.
· PDL::Kar
Subkelas PDL yang memungkinkan Anda untuk menyimpan dan memanipulasi koleksi dengan panjang tetap
string karakter menggunakan PDL.
· PDL::Gambar2D
Seluruh kumpulan metode untuk memanipulasi gambar yang data gambarnya disimpan dalam a
kencing. Ini termasuk metode untuk konvolusi (penghalusan), pengisian poligon, penskalaan,
rotasi, dan warping, antara lain.
· PDL::GambarND
Berisi beberapa fungsi yang secara konseptual terkait dengan pemrosesan gambar, tetapi yang
dapat didefinisikan untuk data berdimensi lebih tinggi. Sebagai contoh modul ini mendefinisikan high-
konvolusi dan interpolasi dimensi, antara lain.
· PDL::GambarRGB
Mendefinisikan beberapa fungsi yang berguna untuk bekerja dengan data gambar RBG. Ini bukan fitur-
penuh, tetapi mungkin memiliki sesuatu yang Anda butuhkan, dan jika tidak, Anda selalu dapat menambahkan lebih banyak!
· PDL::Transformasi
Membuat kelas transformasi, yang memungkinkan Anda membuat berbagai transformasi koordinat.
Misalnya, jika data Anda adalah kumpulan koordinat Cartesian, Anda dapat membuat
mengubah objek untuk mengubahnya menjadi koordinat Spherical-Polar (walaupun banyak yang seperti itu)
transformasi koordinat standar telah ditentukan sebelumnya untuk Anda, dalam hal ini disebut
"t_sferis").
· PDL::Pilihan::Simpleks
Paket ini menyatakan bahwa "mengimplementasikan optimasi simpleks yang umum digunakan
algoritma." Saya akan berasumsi bahwa jika Anda membutuhkan algoritma ini maka Anda sudah tahu
apa itu.
· PDL::Matematika
Kumpulan fungsi matematika yang cukup standar, seperti trigonometri terbalik
fungsi, fungsi hiperbolik dan inversnya, dan lain-lain. Modul ini adalah
termasuk dalam panggilan standar untuk "menggunakan PDL", tetapi tidak dalam versi Lite.
· PDL::Matriks
Menyediakan beberapa fungsi yang menggunakan notasi Matriks matematis standar dari baris-
pengindeksan kolom daripada baris kolom standar PDL. Tampaknya modul ini
belum banyak diuji dengan modul lain, jadi meskipun harus bekerja dengan yang lain
modul, jangan kaget jika ada yang rusak saat Anda menggunakannya (dan jangan ragu untuk
menawarkan perbaikan yang mungkin Anda kembangkan).
· PDL::MatrixOps
Menyediakan banyak operasi matriks standar untuk piddle, seperti menghitung nilai eigen,
pembalik matriks persegi, dekomposisi LU, dan penyelesaian sistem persamaan linier.
Meskipun tidak dibangun di atas PDL::Matrix, umumnya harus bekerja dengan modul itu.
Juga, metode yang disediakan oleh modul ini tidak bergantung pada perpustakaan eksternal seperti:
Slatec atau GSL.
· PDL::Kurangi
Mengimplementasikan antarmuka ke semua fungsi yang mengembalikan piddle dengan satu lebih sedikit
dimensi (misalnya, "sumover"), sehingga mereka dapat dipanggil dengan menambahkan
nama, sebagai string.
Workflow
· PDL::Pemuat Otomatis
Mengaktifkan pemuatan otomatis gaya Matlab. Saat Anda memanggil fungsi yang tidak dikenal, alih-alih
mengeluh dan parau, PDL akan mencari-cari di direktori yang Anda tentukan di
mencari file bernama serupa. Sangat berguna saat digunakan dengan Perldl Shell.
· PDL::Dbg
Mendeklarasikan fungsi "px", yang berguna untuk men-debug skrip PDL Anda dan/atau
perintah shell perldl.
· PDL::Opsi
Misalkan Anda mendefinisikan fungsi yang kuat dan serbaguna. Kemungkinannya bagus bahwa Anda akan
menerima argumen dalam bentuk hash atau hashref. Sekarang Anda menghadapi masalah
memproses hashref itu. PDL::Options membantu Anda menulis kode untuk memprosesnya
pilihan. (Anda akan mengira Perl memiliki banyak sekali modul semacam ini,
tetapi saya tidak dapat menemukannya.) Perhatikan bahwa modul ini tidak bergantung pada PDL untuk penggunaannya atau
instalasi.
· PDL::pdldoc
Pernah menyalakan shell perldl hanya untuk mencari bantuan untuk fungsi tertentu?
Anda dapat menggunakan "pdldoc" sebagai gantinya. Skrip shell ini mengekstrak informasi dari bantuan
index tanpa perlu memulai shell perldl.
Advanced penggunaan
Jenis modul dan dokumentasi yang akan Anda gunakan jika Anda menulis modul yang menggunakan PDL,
atau jika Anda bekerja pada pemeliharaan PDL. Modul ini mungkin sulit digunakan, tetapi memungkinkan Anda
untuk mengatasi beberapa masalah Anda yang lebih sulit.
· PDL::Lite, PDL::LiteF
Pengganti ringan untuk "gunakan PDL", dari sudut pandang polusi namespace dan
waktu muat.
· Sebaris::Pdlpp
Ini telah disebutkan sebelumnya. Sebelum Anda mulai membaca tentang PDL::PP (berikutnya), Anda harus
ingatkan diri Anda tentang cara menggunakan ini. Inline::Pdlpp akan membantu Anda bereksperimen dengan
PDL::PP tanpa harus melalui kesulitan membangun modul dan konstruksi
makefiles (tapi lihat PDL::pptemplate untuk bantuan tentang itu).
· PDL::PP
Pra-Prosesor PDL, yang sangat menyederhanakan membuat Anda bermain kode C atau Fortran
Perl dan piddle. Sebagian besar fungsi dasar PDL ditulis menggunakan PDL::PP, jadi jika
Anda berpikir tentang bagaimana Anda dapat mengintegrasikan beberapa perpustakaan numerik yang ditulis dalam C,
tidak terlihat lagi.
· PDL::pptemplat
Sebuah skrip yang mengotomatiskan pembuatan modul yang menggunakan PDL::PP, yang seharusnya membuat
hidup Anda sebagai penulis modul sedikit lebih sederhana.
· PDL::PanggilanExt
Memungkinkan Anda memanggil fungsi menggunakan perpustakaan bersama eksternal. Ini adalah alternatif
untuk menggunakan PDL::PP. Perbedaan utama antara PDL::PP dan PDL::CallExt adalah bahwa
mantan akan menangani threading melalui dimensi utas implisit untuk Anda, sedangkan
PDL::CallExt hanya memanggil fungsi eksternal. PDL::PP umumnya direkomendasikan
cara untuk menghubungkan kode Anda dengan PDL, tetapi itu bukan Perl jika tidak ada yang lain
cara untuk melakukannya.
· PDL::Konfigurasi
Mendefinisikan %PDL::Config hash, yang memiliki banyak informasi berguna yang berkaitan dengan . Anda
membangun PDL.
· PDL::Dok
Penjelasan konvensi dokumentasi PDL, dan antarmuka ke PDL
Pengurai dokumentasi. Mengikuti panduan ini saat menulis dokumentasi untuk PDL
fungsi akan memastikan bahwa dokumentasi indah Anda dapat diakses dari perldl
shell dan dari panggilan ke "muntah". (Apakah Anda memperhatikan bahwa "muntah" menggunakan dokumentasi Anda?
Saatnya membaca ulang PDL::Core...)
· PDL::Eksportir
Pengganti sederhana untuk modul Eksportir standar. Satu-satunya perbedaan utama adalah
bahwa modul bawaan yang diimpor adalah yang bertanda ':Func'.
· PDL::Jenis
Mendefinisikan beberapa fungsi yang berguna untuk mendapatkan tipe piddle, serta mendapatkan
informasi tentang jenis itu.
· PDL::Versi
Cukup definisikan skalar $PDL::Version::Version dengan versi PDL saat ini, sebagai
didefinisikan dalam PDL.pm. Ini sangat berguna jika Anda mendistribusikan modul Anda sendiri di CPAN, gunakan
PDL::Lite atau PDL::LiteF dan ingin memastikan bahwa pengguna Anda memiliki cukup
versi PDL. Karena variabel didefinisikan dalam PDL.pm, Anda tidak memerlukan modul ini
jika Anda "menggunakan PDL".
Expert penggunaan
· PDL::Inti::Pengembangan
Menyediakan beberapa fungsi yang cukup berguna yang cukup banyak hanya dibutuhkan oleh PDL
kuli.
· PDL::API
Menjelaskan cara membuat piddle by tangan, dari Perl atau kode sumber C Anda, menggunakan PDL
API.
· PDL::Internal
Menjelaskan seluk beluk struktur data PDL. Setelah membaca ini (beberapa kali
:), Anda harus dapat membuat piddle sepenuhnya dari awal (yaitu tanpa menggunakan
API PDL). Sedikit berbeda, jika Anda ingin memahami cara kerja PDL::PP,
Anda harus membaca ini.
HAK CIPTA
Hak Cipta 2010 David Mertens ([email dilindungi]). Anda dapat mendistribusikan dan/atau memodifikasi
dokumen ini di bawah persyaratan yang sama dengan lisensi Perl saat ini.
Lihat: http://dev.perl.org/licenses/
Gunakan PDL::Kursus online menggunakan layanan onworks.net