Copyright 2016-2022 James Paul Turner.
Ce fichier fait partie de la bibliothèque ARPRA.
La bibliothèque ARPRA est un logiciel gratuit: vous pouvez le redistribuer et / ou le modifier en vertu des termes de la licence publique GNU Unser General, publiée par la Free Software Foundation, soit la version 3 de la licence, ou (à votre option) n'importe quelle version ultérieure.
La bibliothèque ARPRA est distribuée dans l'espoir qu'elle sera utile, mais sans aucune garantie; Sans même la garantie implicite de qualité marchande ou d'adéquation à un usage particulier. Voir la licence publique générale GNU Leser pour plus de détails.
Vous auriez dû recevoir une copie de la licence publique GNU Leser le moins avec la bibliothèque ARPRA. Sinon, voir http://www.gnu.org/licenses/.
Pour toute plage d'année de droits d'auteur spécifiée comme Yyyy-Zzzz dans ce package, notez que la plage spécifie chaque année dans cet intervalle fermé.
ARPRA est une bibliothèque C pour (AR) Bitrary- (P) Révision (R) Ange (a) Nalysis des calculs à virgule flottante IEEE-754, basés sur GNU MPFR. Le cas d'utilisation principale de l'ARPRA est de maintenir les limites supérieures et inférieures calculées d'erreur numérique pour toutes les variables, à tout moment tout au long d'un calcul. L'ARPRA utilise un intervalle mixte intervalle / arithmétique affine avec une réduction des termes de déviation pour y parvenir.
L'arithmétique affine est une variante de l'arithmétique d'intervalle qui tient compte des corrélations variables. En tant que tel, il ne souffre pas du soi-disant «problème de dépendance», où les intervalles deviennent trop importants en raison du manque de considération pour les corrélations variables. Le problème est décrit plus en détail sur https://en.wikipedia.org/wiki/Interval_arithmetic#dependency_problem. En combinant les résultats de l'arithmétique intervalle et de l'arithmétique affine, on évite à la fois le problème de dépendance de l'arithmétique intervalle, et la fonction non linéaire dépasse / sous-tendre le problème de l'arithmétique affine.
ARPRA implémente l'arithmétique affine à l'aide d'un backend GNU MPFR. MPFR est une bibliothèque à virgule flottante de précision arbitraire, ce qui signifie que les variables MPFR à virgule flottante peuvent être de précision arbitraire. Pour plus d'informations, reportez-vous au site Web du projet MPFR à http://www.mpfr.org/. En mettant en œuvre l'arithmétique affine avec un backend de précision arbitraire, on est capable, par exemple, de tester comment un changement dans la précision numérique ou le schéma d'intégration affecte l'erreur locale et globale pendant une longue simulation numérique, sans l'intervalle d'intervalle régulier, l'arithmétique à l'intervalle.
Pour plus d'informations sur la mise en œuvre et les caractéristiques de l'ARPRA, telles que la réduction des termes de la gamme et la réduction des termes, reportez-vous à l'article publié original:
Turner, JP et Nowotny, T. (2021). ARPRA: une bibliothèque d'analyse de plage de précision arbitraire. Frontières en neuroinformatique, 30.
https://doi.org/10.3389/fninf.2021.632729
ARPRA suit le paradigme familier du bâtiment des logiciels GNU / Linux. La procédure d'installation typique se compose des éléments suivants.
Si l'installation à partir du référentiel source GIT (c'est-à-dire pas un TARBALL DE DIST), le script de configuration et d'autres fichiers auxllaires doivent être générés en exécutant la commande suivante à la racine du référentiel:
autoreconf -i -Wall
Cela génère les fichiers de configuration à partir des fichiers configure.ac et des fichiers MakeFile.am (notez que les AutoTools GNU doivent être installés afin d'exécuter AutoreConf). Exécutez ensuite les commandes Configurer, construire et installer:
./configure
make
sudo make install
Tous les fichiers ARPRA installés peuvent être proprement désinstallés à partir du système en exécutant la commande suivante:
sudo make uninstall
Une suite de programmes de test peut être exécutée avec la commande suivante:
make check
Toutes les contributions (par exemple les rapports de bogues, les demandes de fonctionnalités, les connaissances d'experts, le code source et les contributions de documentation) sont reçus avec gratitude via le tracker du numéro https://github.com/arpra-project/arpra/issues ou demande de demande.
Le référentiel de code source pour ARPRA est hébergé chez GitHub. Clone It en utilisant:
git clone https://github.com/arpra-project/arpra