GALAHAD adalah perpustakaan paket Fortran modern untuk optimasi nonlinier dengan antarmuka C, Python, Julia dan MATLAB. Ini berisi paket untuk optimasi umum yang dibatasi dan tidak dibatasi, pemrograman linier dan kuadrat, penyesuaian kuadrat terkecil nonlinier dan optimasi global, serta untuk memecahkan berbagai macam submasalah optimasi dasar.
Informasi lebih lanjut mengenai paket di GALAHAD dapat ditemukan di https://www.galahad.rl.ac.uk.
Semua paket utama GALAHAD didokumentasikan dalam Fortran, C, Python dan Julia:
File bantuan disediakan untuk fungsi MATLAB.
Kami menyediakan perpustakaan GALAHAD yang telah dikompilasi di tab rilis untuk Linux, macOS (Intel & Silicon) dan Windows.
GALAHAD dapat diinstal dari sumber menggunakan sistem build Meson (semua perintah di bawah ini dijalankan dari atas pohon sumber):
meson setup builddir -Dtests=true
meson compile -C builddir
meson install -C builddir
meson test -C builddir
Untuk opsi Meson yang lebih komprehensif ( -Doption=value
), termasuk cara menentukan jalur ke berbagai perpustakaan dan paket, silakan lihat meson_options.txt dan README.meson. Kami memberikan beberapa contoh di bawah ini untuk opsi Meson yang paling penting.
GALAHAD mendukung sejumlah besar paket perangkat lunak opsional untuk meningkatkan fungsionalitas, yang paling penting adalah:
Secara default, GALAHAD akan dibuat dengan OpenBLAS jika dapat menemukannya (jika tidak, Anda mungkin perlu meneruskan jalur OpenBLAS melalui opsi libblas_path
dan liblapack_path
ke meson setup
). Anda mungkin juga ingin menggunakan implementasi BLAS/LAPACK khusus vendor seperti salah satu dari berikut ini:
Silakan lihat README.meson untuk instruksi tentang cara memberitahu Meson di mana menemukan dependensi opsional ini.
Secara default GALAHAD akan membangun linear solver SSIDS, alternatif linear solver lainnya adalah:
Silakan lihat README.meson untuk instruksi tentang cara memberitahu Meson di mana menemukan dependensi opsional ini.
GALAHAD dapat menggunakan soal tes optimasi dari kumpulan tes CUTest. Misalnya, untuk menghubungkan GALAHAD dengan presisi ganda CUTEst yang dikompilasi dengan gfortran pada mesin Linux 64bit:
meson setup builddir -Dlibcutest_double_path=/path/to/CUTEst/objects/pc64.lnx.gfo/double/ -Dlibcutest_double_modules=/path/to/CUTEst/modules/pc64.lnx.gfo/double/ -Dsingle=false
meson compile -C builddir
meson install -C builddir
Seseorang juga dapat menghubungkan GALAHAD dengan presisi tunggal CUTEst, silakan lihat meson_options.txt.
Untuk menginstal antarmuka C menggunakan sistem build Meson:
meson setup builddir -Dciface=true
meson compile -C builddir
meson install -C builddir
meson test -C builddir --suite=C
Untuk menginstal antarmuka Python menggunakan sistem build Meson:
meson setup builddir -Dpythoniface=true -Dpython.install_env=auto
meson compile -C builddir
meson install -C builddir
meson test -C builddir --suite=Python
Silakan lihat GALAHAD.jl dan dokumentasi terkait.
Silakan lihat README.matlab dan instruksi yang diberikan di sana.
GALAHAD juga dapat diinstal melalui perintah "make" sebagai bagian dari ekosistem optimasi Optrove yang juga mencakup CUTEst, SIFDecode, dan ARCHDefs. Keuntungannya adalah menyediakan skrip untuk menjalankan contoh CUTEst langsung dari GALAHAD dan mengizinkan panggilan dari Matlab, namun memiliki waktu pembuatan yang jauh lebih lama.
Untuk menggunakan varian ini, ikuti petunjuk di wiki GALAHAD.