Qalculate!
- the ultimate desktop calculator
Qalculate! features

Math Library
  • Calculation and parsing:
    • Basic operations and operators: + - * / mod ^ E () && || ! < > >= <= != ~ & | << >> xor
    • Fault-tolerant parsing of strings: log 5 / 2 .5 (3) + (2( 3 +5 = ln(5) / (2.5 * 3) + 2 * (3 + 5)
    • Expressions may contain any combination of numbers, functions, units, variables, vectors and matrices, and dates
    • Supports complex and infinite numbers
    • Propagation of uncertainty
    • Interval arithmetic
    • Supports all common number bases, as well as negative and non-integer radices, sexagesimal numbers, time format, and roman numerals
    • Ability to disable functions, variables, units or unknown variables for less confusion: e.g. when you do not want (a+b)^2 to mean (are+barn)^2 but ("a"+"b")^2
    • Customizable implicit multiplication
    • Matrices and vectors, and related operations (determinants etc.)
    • Verbose error messages
    • Arbitrary precision
    • RPN mode

  • Result display:
    • Supports all common number bases, as well as negative and non-integer radices, sexagesimal numbers, time format, and roman numerals
    • Many customization options: precision, max/min decimals, complex form, multiplication sign, etc.
    • Exact or approximate: sqrt(32) returns 4 * sqrt(2) or 5.66
    • Simple and mixed fractions: 4 / 6 * 2 = 1.333... = 4/3 = 1 + 1/3

  • Symbolic calculation:
    • E.g. (x + y)^2 = x^2 + 2xy + y^2; 4 "apples" + 3 "oranges"
    • Factorization and simplification
    • Differentiation and integration
    • Can solve most equations and inequalities
    • Customizable assumptions give different results (e.g. ln(2x) = ln(2) + ln(x) if x is assumed positive)

  • Functions:
    • Hundreds of flexible functions: trigonometry, exponents and logarithms, combinatorics, geometry, calculus, statistics, finance, time and date, etc.
    • Can easily be created, edit and saved to a standard XML file

  • Units:
    • Supports all SI units and prefixes (including binary), as well as imperial and other unit systems
    • Automatic conversion: ft + yd + m = 2.2192 m
    • Explicit conversion: 5 m/s to mi/h = 11.18 miles/hour
    • Smart conversion: automatically converts 5 kg*m/s^2 to 5 N
    • Currency conversion with retrieval of daily exchange rates
    • Different name forms: abbreviation, singular, plural (m, meter, meters)
    • Can easily be created, edited and saved to a standard XML file

  • Variables and constants:
    • Basic constants: pi, e, etc.
    • Lots of physical constants (with or without units) and properties of chemical element
    • CSV file import and export
    • Can easily be created, edited and saved to a standard XML file
    • Flexible - may contain simple numbers, units, or whole expressions
    • Data sets with objects and associated properties in database-like structure

  • Plotting:
    • Uses Gnuplot
    • Can plot functions or data (matrices and vectors)
    • Ability to save plot to PNG image, postscript, etc.
    • Several customization options
  • and more...
The manual includes a complete list of included functions, units, and variables, and some examples.
User Interface
  • Graphical user interfaces implemented using GTK or Qt
  • Flexible expression entry with customizable completion, hints, and continious display of parsed expression
  • Optional calculate-as-you-type mode (GTK)
  • Small and ... not so small mode (GTK)
  • Calculation history which allows the user to access the text and value of and apply operations to previous expressions and result
  • Optional traditional calculator keypad, with quick access to most features, and a programming mode
  • Practical menus give fast access to all advanced features
  • Customizable meta modes for quickly switching between different settings (GTK)
  • Dialogs for management of and easy access to functions, variables and units (with quick conversion)
  • User friendly dialogs for functions, with description and entries for arguments
  • Create/edit functions, variables and units
  • Easy editing of matrices and vectors
  • Various tools for fast conversion between number bases, floating point conversion, calendar conversion, and percentage calculation (GTK), and a period table (GTK)
  • Convenient interface to gnuplot
  • Configurable keyboard shortcuts (GTK)
  • Additional text based interface with full functionality
  • and more...