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

2023-04-17

Qalculate! version 4.6.1 released

Changes:
- Fix segfault in Gnome shell search provider with GLib 2.76 (GTK)
- Improve abortion of slow calculations
- Fix segfault and inconsistent behaviour in calculation of a^n mod b when n is negative
- Add modular exponentiation function, powmod(), with support for calculation of modular inverse
- Do not make any difference between row and column vectors in magnitude(), norm(), and dot() functions
- Fix division and exponentiation of scalar by matrix/vector, e.g. 4./[8 4.5]
- Improve parsing of element-wise operators with comma as decimal separator
- Fix rref() with different units for different elements
- Fix segfault with empty vector in uncertainty calculation
- Fix segfault trying to solve cbrt(x)^(1/3)-x=0
- Fix segfault in handling of vector variable with uncertainty
- Fix segfault in function assignment with equals sign (e.g. F()=...), when an object with the same name already exists
- Fix segfaults in some corner cases
- Fix internal id does not exist error
- Fix erroneous simplification of sin(x)^2*y-cos(x)*sin(x)^2*y
- Do not try to calculate norm() and magnitude() for matrices
- Fix some memory leaks
- Fix order of argument titles in csum() function
- Fix abbreviation for variable units (varunits) command in information (CLI)
- Support WebKitGTK version in configure option, e.g. --with-webkitgtk=4.1 (GTK)