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
2022-10-17
Qalculate! version 4.4 released
Changes:
• New prime number functions: primePi(), primes(), nthprime(), nextprime(), prevprime(), and isprime()
• New functions for intervals and uncertainties: upperEndpoint(), lowerEndpoint(), midpoint(), and errorPart()
• Add meter of water and related pressure units, and more derived flow rate units
• Support for vectors and matrices in uncertainty propagation calculation
• Proper support for uncertainty propagation in total(), sum(), product(), and for() functions
• Simplify display of parsed expression (primarily for quantities with units)
• Avoid parsing of implicit multiplication as nested multiplication
• Allow use of curly brackets as alternative parentheses
• Include +/- statement in function argument without parentheses
• Return values for approximate variables in exact mode in dimension() and elements()
• Improve parsing of quotation marks as feet/inch or arcmin/arcsec (e.g. do not parse s" as sin)
• Partial Georgian translation
• Fix exact calculation of re((a*i)^(n/2)) (wrong sign in some cases)
• Fix erroneous calculation in some cases with physical constants both outside and inside unit relations when interval calculation is set to interval arithmetic
• Fix segfault in Calculator destructor
• Fix segfaults in some corner cases
• Fix use of random numbers in iterative functions
• Fix writing beyond end of array during exchange rates check in some cases (results in activation of old style matrices)
• Fix automatic reactivation of deactivated global object if a function with the same name exists
• Do not convert function arguments which do not allow units (fixes "arcsin(0.5+/-0.1) to deg")
• Fix prefix after conversion to optimal unit when the optimal unit includes a prefix
• Fix exact calculation when function argument is an approximate vector variable (fail)
• Add "Clear history" to available keyboard shortcut and button actions (GTK, Qt)
• Show exchange rates source, and update time, for current calculation in tooltip (GTK, Qt)
• Fix "Set Prefix" for auto-calculated result (GTK)
• Fix copying of result during delay before calculate-as-you-type result is added to history (GTK)
• Fix removal of additional keyboard shortcuts, after first removal (Qt)