Ce que nous avons développé
L’application regroupe les outils de calcul dans une seule interface, avec des écrans pour les calculs, les graphiques, les matrices, les statistiques et les conversions. Les modules d’ingénierie précisent les variables, les unités, les hypothèses et les conditions de validité, tandis que l’historique des calculs conserve le contexte des résultats antérieurs.
Périmètre de mise en œuvre
- Calculs scientifiques, graphiques, matrices et équations.
- Intégration numérique, statistiques, conversion d'unités et outils d'ingénierie.
- Historique des calculs et préférences d’apparence enregistrés localement.
- Une interface en anglais dont la navigation s’adapte aux largeurs des téléphones et des tablettes.
Architecture technique
Le code source sépare les écrans, les services mathématiques et les modules d’ingénierie. Flutter et Dart fournissent l’interface et la logique, Provider gère l’état, et SharedPreferences enregistre les préférences et l’historique local.
Un choix de réalisation
Les formules d’ingénierie définissent les dimensions des données d’entrée, les unités, les limites et les hypothèses. Cette structure permet de vérifier les saisies et les conditions de validité avant d’afficher un résultat. Le chargement de l’historique traite individuellement les enregistrements endommagés, sans empêcher la restauration de l’ensemble de l’historique.
Un exemple technique tiré de l’application
L’intégration numérique utilise la méthode adaptative de Simpson avec estimation de l’erreur et récursion bornée, en gérant les échantillons non finis et l’absence de convergence. Le service de statistiques emploie une sommation compensée et l’algorithme de variance de Welford. Il s’agit d’exemples d’implémentation, et non d’un benchmark de performances publié.