Qalculate!
- the ultimate desktop calculator
Qalculate! is a multi-purpose cross-platform desktop calculator. It is simple to use but provides power and versatility normally reserved for complicated math packages, as well as useful tools for everyday needs (such as currency conversion and percent calculation). Features include a large library of customizable functions, unit calculations and conversion, physical constants, symbolic calculations (including integrals and equations), arbitrary precision, uncertainty propagation, interval arithmetic, plotting, and a user-friendly interface (Gtk, Qt, and CLI).
Qalculate! is free software, licensed under the GNU Public License v2 (or later).
Latest News
2026-03-30
Qalculate! version 5.10 released
Changes:
- Improve factorization and simplification (particularly with radicals, logarithms, and absolute value)
- Add ton of refrigeration, slug, mol/dm³, mol/L, and molar units
- Add pcm, ppm, ppb, ppt, and ppq (parts per …), and lakh and crore variables
- Add XAG, XAU, XPD, and XPT currencies (precious metals)
- Use a maximum 4 decimals and minimum of 2 decimals by default for display of value of converted currencies
- Improve handling of "to mixed" after previous conversion statement (e.g. "1 m to in to mixed")
- Improve interval calculation, with interval arithmetic, with division by zero and/or both real and complex numbers in derivative of expression
- Treat 0^0 as undefined (instead of equal to 1), and fix limit for 0^0
- Set initial random seed using /dev/random (or BCryptGenRandom on Windows)
- Do not show warning about denominators assumed non-zero when converting to expression with non-unit objects
- Do not show negative exponents (if "negexp" is deactivated) when expressions contains unknown variables, even if all units have negative exponents
- Do not show possibly real expression in complex exponential form
- Initial support for comparison of vectors and matrices
- Allow use of apostrophe as thousands separator in input, when specified as such by locale
- Fix segfault with recursive variable in "where" expression
- Fix segfault in some cases when argument in det() contains only a single element
- Fix wrong simplification of "sin(2-cosh(x)^2/x+x)"
- Fix negative exponents always used for units with rounding set to (halfway) down or up
- Fix file paths with non-ASCII characters on Windows
- Fix loading of history on Windows (CLI)
- Fix adaptive interval display for calculate-as-you-type result (Gtk, Qt)
- Fixes and improvements for number bases (Qt)
- Minor bug fixes and feature enhancements
Donate