What we built
The app brings calculation tools into one interface, with screens for calculations, graphs, matrices, statistics and conversions. Engineering modules specify variables, units, assumptions and validity conditions, while calculation history retains context for earlier results.
Implementation scope
- Scientific calculations, graphs, matrices and equations.
- Numerical integration, statistics, unit conversion and engineering tools.
- Local calculation history and appearance preferences.
- English interface with navigation that adapts to phone and tablet widths.
Technical architecture
The source separates screens, mathematical services and engineering modules. Flutter and Dart provide the interface and logic, Provider manages state, and SharedPreferences stores preferences and local history.
An implementation decision
Engineering formulas define input dimensions, units, limits and assumptions. This structure supports checking inputs and validity conditions before showing a result. History loading handles damaged records individually rather than preventing the entire history from being restored.
A technical example from the application
Numerical integration uses adaptive Simpson integration with error estimation and bounded recursion, handling non-finite samples and failure to converge. The statistics service uses compensated summation and Welford’s variance algorithm. These are implementation examples, not a published performance benchmark.