Hak Cipta 2016-2022 James Paul Turner.
File ini adalah bagian dari Perpustakaan ARPRA.
Perpustakaan ARPRA adalah perangkat lunak gratis: Anda dapat mendistribusikannya kembali dan/atau memodifikasinya di bawah ketentuan Lisensi Publik Umum GNU yang lebih rendah seperti yang diterbitkan oleh Yayasan Perangkat Lunak Gratis, baik versi 3 lisensi, atau (pada opsi Anda) versi selanjutnya.
Perpustakaan ARPRA didistribusikan dengan harapan akan bermanfaat, tetapi tanpa jaminan apa pun; bahkan tanpa jaminan tersirat dari dapat diperjualbelikan atau kebugaran untuk tujuan tertentu. Lihat Lisensi Publik Umum GNU yang lebih rendah untuk lebih jelasnya.
Anda seharusnya menerima salinan Lisensi Publik Umum GNU yang lebih rendah bersama dengan Perpustakaan ARPRA. Jika tidak, lihat http://www.gnu.org/licenses/.
Untuk rentang tahun hak cipta yang ditentukan sebagai yyyy-zzzz dalam paket ini, perhatikan bahwa rentang menentukan setiap tahun dalam interval tertutup itu.
ARPRA adalah perpustakaan C untuk (AR) Bitrary- (P) Recision (R) Ange (a) Nalisis IEEE-754 komputasi poin-poin, berdasarkan GNU MPFR. Kasus penggunaan utama ARPRA adalah mempertahankan batas atas dan bawah dari kesalahan numerik yang dihitung untuk semua variabel, setiap saat, di seluruh perhitungan. ARPRA menggunakan campuran interval/affine yang dipangkas dengan pengurangan istilah penyimpangan untuk mencapai hal ini.
Affine aritmatika adalah varian aritmatika interval yang menjelaskan korelasi variabel. Dengan demikian, itu tidak menderita dari apa yang disebut 'masalah ketergantungan', di mana interval tumbuh terlalu besar karena kurangnya pertimbangan untuk korelasi variabel. Masalahnya dijelaskan lebih lanjut di https://en.wikipedia.org/wiki/interval_arithmetic#dependency_problem. Dengan menggabungkan hasil aritmatika aritmatika dan affine interval, seseorang menghindari masalah ketergantungan aritmatika interval, dan fungsi nonlinier overshoot/undershoot masalah aritmatika affine.
ARPRA mengimplementasikan affine aritmatika menggunakan backend MPFR GNU. MPFR adalah perpustakaan poin floating-point presisi yang sewenang-wenang, yang berarti variabel MPFR titik mengambang dapat menjadi presisi sewenang-wenang. Untuk informasi lebih lanjut, lihat situs web proyek MPFR di http://www.mpfr.org/. Dengan menerapkan aritmatika affine dengan backend presisi-sewenang-wenang, seseorang dapat, misalnya, untuk menguji bagaimana perubahan dalam skema presisi atau integrasi numerik mempengaruhi kesalahan lokal dan global selama simulasi numerik yang lama, tanpa interval 'ledakan' masalah interval aritmatika yang diderita aritmatika.
Untuk informasi lebih lanjut tentang implementasi dan fitur ARPRA, seperti pemangkasan jangkauan dan pengurangan istilah penyimpangan, lihat artikel asli yang diterbitkan:
Turner, JP, & Nowotny, T. (2021). ARPRA: Perpustakaan analisis rentang presisi sewenang -wenang. Perbatasan dalam Neuroinformatika, 30.
https://doi.org/10.3389/fninf.2021.632729
ARPRA mengikuti paradigma pembangunan perangkat lunak GNU/Linux yang akrab. Prosedur instalasi yang khas terdiri dari yang berikut.
Jika menginstal dari repositori sumber git (yaitu bukan tarball dist), skrip konfigurasi dan file auxillary lainnya perlu dihasilkan dengan menjalankan perintah berikut di root repositori:
autoreconf -i -Wall
Ini menghasilkan file konfigurasi dari file configure.ac dan makefile.am (perhatikan bahwa autotools GNU harus diinstal untuk menjalankan autoreconf). Selanjutnya jalankan perintah konfigurasi, bangun dan instal:
./configure
make
sudo make install
Semua file ARPRA yang diinstal dapat secara bersih dihapus dari sistem dengan menjalankan perintah berikut:
sudo make uninstall
Serangkaian program pengujian dapat dieksekusi dengan perintah berikut:
make check
Semua Kontribusi (Laporan Bug EG, Permintaan Fitur, Pengetahuan Ahli, Kode Sumber dan Kontribusi Dokumentasi) diterima dengan penuh syukur melalui Tracker masalah https://github.com/arpra-project/arpra/issues atau permintaan pull.
Repositori kode sumber untuk ARPRA di -host di GitHub. Kloning itu menggunakan:
git clone https://github.com/arpra-project/arpra