Silakan periksa cabang dev yang sedikit kurang berantakan.
Koleksi tutorial matematika di C
Sementara yang lalu, ketika saya mulai melakukan beberapa aljabar linier di C, itu membuat saya terkejut melihat ada begitu sedikit tutorial untuk Blas, Lapack, dan API fundamental lainnya. Terlepas dari kenyataan bahwa mereka entah bagaimana merupakan blok bangunan dari banyak perpustakaan lainnya. Untuk alasan itu saya mulai mengumpulkan semua contoh yang bisa saya temukan di seluruh jaring untuk Blas, Lapack, Clapack, Lapacke, Atlas, OpenBlas ... dalam repo GitHub ini. Nah, saya harus memperingatkan Anda bahwa sebagai insinyur mesin saya memiliki sedikit pengalaman dalam mengelola repo seperti itu dan pertama -tama mungkin tampak sebagai kekacauan yang lengkap bagi kalian. Namun jika Anda berhasil mengatasi kekacauan, Anda akan menemukan semua jenis contoh dan instruksi yang mungkin membantu. Saya telah mencoba paling banyak dan yang tidak menyusun yang telah saya sebutkan. Saya telah memodifikasi banyak dari mereka untuk dikompilasi dengan kompiler GNU (GCC, G ++ dan GFortran). Saya telah membuat file yang dapat Anda baca untuk mempelajari bagaimana Anda dapat memanggil rutinitas fortran individu dalam program C atau C ++. Saya juga telah menempatkan beberapa instruksi instalasi untuk Mac dan Linux (maaf windows guys!). Saya ingin memastikan apakah Anda adalah pengembang C Anda dapat menggunakan salah satu perpustakaan ini tanpa masalah terlepas dari platform atau perangkat keras Anda
Masalah:
- Tidak dapat mengkompilasi atlas di Mac OS X. Laporan bug dibuat di SourceForce: https://sourceForge.net/p/math-atlas/bugs/261/
- Untuk beberapa contoh BLA dan CBLA, -LGForTran diatur untuk dikompilasi. Saya tidak tahu mengapa! (Di Mac OS X Anda perlu menginstal GForTran dan kemudian mencari libgfortran.dylib dan menautkannya saat menyusun)
untuk melakukan:
- Buat kompilasi/instalasi untuk semua perpustakaan untuk platform yang berbeda
- Periksa Makefile S pada platform lain (hanya diuji pada Mac OS X)
Sumber yang akan dipelajari:
- http://physics.oregonstate.edu/~landaur/nacphy/lapack/cprogp.html
- https://people.sc.fsu.edu/~jburkardt/c_src/clapack/clapack.html
- http://stackoverflow.com/questions/22085277/how-to-call-clapack-from-c
- ftp://ftp.icm.edu.pl/packages/netlib/lapack/lapackke.txt
- https://pleiades.ucsc.edu/hyades/lapack
- http://www.ccp4.ac.uk/dist/checkout/lapack-3.5.0/lapacke/example/example_dgels_colmajor.c
- http://www.linuxquestions.org/linux/answers/programming/installation_and_use_common_scientific_libraries_unix_part_2_lapack_and_its_wrappers_lapacke_and_atlas
- http://theoryno3.blogspot.nl/2010/12/compiling-lapack-as-shared-library-in.html
- http://www.dreamincode.net/forums/topic/287490-anyone-familiar-with-lapack-and-blas/
- https://software.intel.com/sites/products/documentation/doclib/mkl_sa/11/mkl_lapack_examples/index.htm#zgesv.htm
- https://pleiades.ucsc.edu/hyades/blas
- https://software.intel.com/en-us/node/522288
- http://stackoverflow.com/questions/17858104/what-is-the-relation-between-blas-lapack-and-atlas/17858345#17858345
- http://stackoverflow.com/questions/1303182/how-does-blas-get-such-extreme-performance/1142134#11421344
- http://stackoverflow.com/questions/1380371/what-are-the-most-widely-used--vector-matrix-math-linear-algebra-librarium-1452950#1452950
- http://stackoverflow.com/questions/8206563/purpose-of-lda-argument-in-blas-dgemm/8209290#8209290
- http://stackoverflow.com/questions/966249/scientific-math-with-functional-languages/966324#966324
- http://stackoverflow.com/questions/24071622/replicating-blas-atix-multiplication-performance-can-i-batch-it
- Cephes -> http://www.netlib.org/cephes/
- Crlibm-> http://lipforge.ens-lyon.fr/www/crlibm/index.html