API Reference    


Qalculate! news

.: 2016-08-28 :. Qalculate! version 0.9.10 released

Qalculate! version 0.9.10 includes a small number of important bug fixes. Only libqalculate has been updated.

  • Unit conversion fixes (e.g. "1/s to ms" and "1/ns to GHz")
  • Fixed parsing of degrees sign (used in defult symbol for temperature units)

.: 2016-07-26 :. Qalculate! version 0.9.9 released

Qalculate! version 0.9.9 is a minor release with some important bug fixes, as well as a few new features.

  • libqalculate will no longer cause segmentation faults when using a locale unsupported by the users system
  • Parsing of "today" fixed and "tomorrow" and "yesterday" added
  • Qalculate! now compiles, without errors and warning, using clang
  • Only a single instance of the GUI will run by default (use command line switch '-n' for old behaviour)
  • New commands/options in qalc which list available variables, functions and units
  • New command in qalcfor deletion of variables

.: 2016-06-15 :. Qalculate! version 0.9.8 released

After almost a decade of very little development, the project has been revived and during the last two months many improvements have been made, until it is now time to release a new version. Qalculate! version 0.9.8 includes many bug fixes, but due to limited testing some new bugs have probably been introduced. Any external applications using libqalculate need to be recompiled to function properly with the new version.

  • Lots of bug fixes and minor improvements
  • Three different parsing modes can be chosen from (providing mainly different handling of implicit multiplication). The default 'adaptive' mode has been enhanced.
  • By default prefixes will not be added to for example imperial units.
  • Changed handling of degrees Celsius and Fahrenheit. Conversion will take place already during parsing.
  • When converting to unit without prefix, no prefix will be added to the result unless the unit expression is prepended with '?' ('0' works in the opposite direction).
  • Option to ignore commas in numbers (for use as thousands separator).
  • Possibility to abort slow number printing without using crash prone thread cancellation (use Calculator::startPrintControl() and related functions).
  • New function: fibonacci (Qalculate! can now tell you that the millionth fibonacci number is approximately 1,953282129 * 10^208987, although for obvious reasons the exact number cannot be displayed).
  • New units: Hartree, Rydberg, Dalton (same as u).
  • Physical constant have been updated with the CODATA values from 2014.
  • Currencies have been updated to reflect the available data from ECB.
  • Use ~/.local and ~/.conf to store configuration and definitions
  • The GTK+ UI has been ported to GTK+ 3 and has been polished in the process.
  • The convert dialog has been transformed into a tab page in the main window, with auto-selection of unit category and continuous conversion. (GTK+ UI)
  • Less obtrusive display of errors and warnings. They are now shown as tooltips for an icon next to the expression entry. (GTK+ UI)
  • Spinners show calculation/display progress and an icon in the expression entry halts the process, instead of a message dialog. (GTK+ UI)
  • A tooltip for the result display will show the result in text format less open to interpretation. (GTK+ UI)
  • Better resizing of main windows. Tabs will be resized instead of result display and keypad view will remember size independently of the history view. (GTK+ UI)
  • 'to' can now not only be used for conversion to unit expressions. "to bin", "to oct", "to hex" and "to bases" changes number base displayed, "to factors" factorizes, "to fraction" displays as fraction, and "to base" and "to optimal" auto-converts units. (CLI and GTK+ UI)
  • The KDE UI has been abandoned for now and is not included in this release.

.: 2016-04-30 :. A new version coming soon...

The graphical user interface has been ported to GTK+ 3 (unfortunately the KDE version has been abandoned for now) and lots of bugs have been fixed. Even a few new features have been introduced in the process. Only few more fixes and a lot more testing are needed before I will release a shiny new version of Qalculate.

.: 2010-01-06 :. Qalculate! version 0.9.7 released

After a long time without updates, a new version of Qalculate! is available for download. This is a bug fix and build update release. Qalculate! should now compile and work on most modern systems.

  • General build updates and bug fixes, including the ability to build against cln >= 1.2
  • Bug fix for segfaults with some uses of integrate()
  • New Simplified Chinese translation
  • Fix crash with unsupported operator in RPN syntax
  • Fix reduction of vector size

.: 2007-06-17 :. Qalculate! version 0.9.6 released

A new version of Qalculate! providing enhanced stability and usability with bug fixes and feature enhancements is now available.

  • Use Lambert W to solve more equations and avoid infinite loop when solving some equations
  • More data on elements
  • Fix simplification of (1-1/x)^3 and similar
  • Fix clumsy mistakes in with prefixes leading to crashes
  • Fix parsing of unit expressions (when converting) such as W/(m K)
  • Add more exact values for sin() and cos() and avoid floating point underflow by, in approximate mode, checking against the value of pi
  • Always input decimal separator sign on keypad separator press
  • Fix crash when expression entry reclaims focus if compiled with optimizations (GTK+)
  • New units: typographic units, pouce, pied du roi, grams of TNT and tons of TNT
  • New functions: lambertW(), addDays(), addMonths(), addYear(), addTime(), isNumber(), isReal(), isRational(), isInteger(), representsNumber(), representsReal(), representsRational(), representsInteger()
  • New variable: omega constant
  • Other minor fixes and enhancements

.: 2006-12-17 :. Qalculate! version 0.9.5 finally released

After a long time with sporadic development, here is a new version with many new features and bug fixes.

  • French translation (not fully complete yet)
  • Return value in save() and add "name := value" as shortcut
  • Integer factorization
  • Interpret 0x[0-9,a-f] as hexadecimal number (do not require first digit to be 0-9)
  • Add "Engineering" display mode
  • Several fixes to display of units and prefixes
  • Show value for variables without title in expression completion
  • New functions: cross(), heaviside(), rectangular(), triangular(), ramp() kronecker(), sigmoid(), and logit()
  • Use radius as argument for circumference()
  • Add optional upper and lower limit arguments to integrate() for definite integrals
  • Fix precision in logn()
  • Ability to set shortcuts for meta modes (KDE)
  • Make separate options for "Sort Minus Last" and "Negative Exponents" in numerical display menu
  • Add "Edit Expression", "Edit Result", and "Insert Result Variable" to history context menu (KDE)
  • Global shortcut for show/hide (KDE)
  • Use localized comma for insert matrix/vector
  • Remove use of libgnomeui completely and add --with-libgnome configure option
  • Fix parsing of "x!)!"
  • Use Julian year for light-year value
  • Add several accelerator keys (GTK+)
  • Connect "Exp" button Exp RPN operation and add Ctrl+Shift+E shortcut
  • Fixes for old KDE and Qt versions
  • New command line options for qalc: -terse (-t), -nodefs (-n), -nocurrencies, -nodatasets, -nofunctions, -nounits, -novariables

.: 2006-06-02 :. Qalculate! version 0.9.4 released

This version includes many enhancements, such as a true RPN mode, a Dutch translation, new icons, API documenation, and bug fixes.

  • True RPN mode with stack manipulation
  • Dutch translation (from Jaap Woldringh and the Dutch KDE translation team)
  • New application icons (from Thomas Lübking)
  • API documentation (approximately halfway)
  • Enhanced edit matrix/vector dialogs, with widget for GTK+
  • View/edit/insert matrix/vector menu items (GTK+)
  • Combined dialog for number bases in result and expression (GTK+)
  • Fix comma as decimal sign with KDE GUI
  • "Convert to Best Unit" and "Convert to Base Units" was swapped (KDE)
  • Ignore commas (with dot as decimal sign) in numbers and option to use dot as thousands separator
  • Fix removal of factors in simplifaction ("1 kg m/s" was simplified to "1000 m/s")
  • Fix unresolved symbols (with patch from Thomas de Grenier de Latour)
  • Fix bug that caused all number arguments to require numbers to be rational
  • Interpret 0x..., 0o... and 0b... as hexadecimal, octal and binary numbers, respectively, when base is decimal
  • Ability to represent numbers as 0x0feff (for HEX), 0b0011101010 (for BIN)
  • Set vectors and matrices as the first argument by default (foremost changes some statistical functions)
  • New functions: tetrahedron(), tetrahedron_sa(), tetrahedron_height(), sqpyramid(), sqpyramid_sa(), sqpyramid_height(), stack() and register()
  • component() and components() removed (use element() and dimension())
  • Fix integration
  • New unit: psi
  • New name format in data files for more flexible translations
  • Change some dubious mathematical wordings
  • ...and many more enhancements and fixes...

.: 2006-03-24 :. KDE GUI updated

Version of the KDE GUI for Qalculate! (only the qalculate-kde package has been updated) has been released. This version fixes session management and puts Qalculate! in the system tray by default. Also new are a combined dialog for number bases in result and expression, and a command line option to calculate the clipboard content.

.: 2006-03-14 :. Qalculate! version 0.9.3 released

This is primarily a bug fix release with relatively few changes.

  • Avoid floating point overflow and underflow (bug #1432571)
  • Do not use "Read Precision" in plot (bug #1429523)
  • cos(x*pi*rad) equals 1 if x is even, not -1 (bug #1416048)
  • isodate(), localdate(), timestamp(), stamptodate() functions
  • Fix show ending zeroes
  • Fix prefixes with automatic simplification/factorization
  • Approximate comparison
  • ...and some more...

.: 2005-12-22 :. Happy Yule to you all!   Qalculate! version 0.9.2 released

This is a major release (hence the .2 increase) that focuses on the CAS functionality, with greatly enhanced factorization/simplification and solving of equations and inequalities.

  • Enhanced factorization, with square free factorization of rational multivariate polynomials
  • New simplification using the enhanced factorization
  • Much more efficient determinant and matrix inverse calculation
  • Greatly enhanced and reworked solving of equations and inequalities
  • More efficient evaluation avoiding recalculations
  • Generally enhanced and more correct algebraic functionality
  • Faster calculation of powers with large exponent and base close to one
  • Option to automatically simplify or factorize
  • Option to warn about denominators assumed non-zero
  • Fix negative exponents with lower-case e
  • Fix fetching of exchange rates with gnome-vfs < 2.10
  • Polynomial functions: coeff(), lcoeff(), pcontent(), degree(), etc.
  • Fix ln(e^x)
  • Display "x < 3 && x > 1" as "1 < x < 3"
  • Display "&&" and "||" as "and" and "or" by default
  • Fix display of fractions in "Decimal (Try Exact)" mode
  • Add "Clear" to history popup menu
  • Add "Enable/Disable Completion", "Read Precision", "Limit Implicit Multiplication", "RPN Mode", and "Meta Modes" to expression entry popup menu (GTK+)
  • Fix crash with newline character in pasted text (GTK+)
  • Fix completion with or after unicode signs (KDE)
  • Compile without errors or warnings with -pedantic and -Wextra
  • Fix compilation with --enable-final (KDE)
  • Status text fixes (GTK+)
  • Unicode fixes
  • ...and many more minor fixes and enhancements (and probably some new bugs)...

.: 2005-11-03 :. Qalculate! version 0.9.0 released

This release includes many visual and non-visual enhancements. Users will first notice the redesigned main window, and then the as-you-type parse and function hint display, and enhanced completion. But there are more to be discovered...

  • Redesigned GTK+ GUI with history view in the main window
  • Redesigned keypad in the KDE GUI
  • Display of as-you-type expression parsing and function hints
  • Enhanced completion
  • Scaling of result display to vertically fit the window
  • Nicer history listing
  • Enhanced result display in GTK+ GUI with much nicer parentheses
  • Meta modes
  • 67 new units: bel (B) and neper (Np), information units such as bit and byte, many convenience units (km/h, deciliter, etc), and more.
  • Binary prefixes
  • Some new variables and functions
  • Fixed help display in new yelp
  • Fixed compile with cln-1.1.10
  • Fixed regressions in simplification
  • Fixed f(x) return type analysis (ex. log(x) represents a real number if x represents a positive). This was by accident unused.
  • ...and many more bug fixes and enhancements...

.: 2005-10-11 :. Quick fix for result cropping in new pango

The gtk+ version of Qalculate! was updated to handle new behaviour in pango >= 1.10.0.

.: 2005-10-10 :. New Applications: Qalculate! Bases, Qalculate! Currency, Qalculate! Units

In some cases the big (bloated) Qalculate! application is not the most efficient and user friendly interface. Why should you, for example, need to load and learn to use the full application just to convert a simple binary number to a decimal, or to see what the price of a foreign product is in your national currency with the current exchange rates. Therefore, I am now releasing three small utilities: Qalculate! Bases, Qalculate! Currency, and Qalculate! Units. The full libqalculate capabilities is of course available in these applications (arbitrary precision, expression evaluation, etc.), but in graphical user interfaces more fine-tuned for the specific purposes. The screenshots should be self-explanatory.

.: 2005-10-10 :. Qalculate! version 0.8.2

A new full release with mostly bug fixes.

  • Use gnomevfs instead of wget if available
  • Allow user to specify wget options
  • Add -export-dynamic to LDFLAGS to fix libglade without libgnome
  • Update currencies
  • Close gnuplot and disable save button when no series defined (GTK+)
  • Fix round halfway numbers to even menu item (KDE)
  • Also process operators entered with keypad (KDE)
  • System tray icon and close to system tray option (of by default, KDE)
  • Do not create qalculate symlink to qalc (confusing when installing GUI in other location)

.: 2005-09-22 :. libQalculate! version

This is a bug fix release of libqalculate.

  • Fix (1/2)^n < 0.5 in equalities (bug #1265104)
  • Fix transformation of unicode signs in expressions with quotes
  • Fix conversion of 0 ºC to ºF
  • New units: mph and mpg

.: 2005-06-11 :. Qalculate! version

The purpose if this release is to check and lower the version numbers of required libraries. Some additional enhancements did however sneak in... qalculate-gtk has not been updated but needs to be recompiled if libqalculate is updated.

  • Remove requirement glib-2.0 >= 2.4 and require libxml2 >= 2.3.8
  • Do not use unicode prefix names for long names
  • Add even(), odd() and shift() functions and operators "<<" and ">>"
  • Compile with kdelibs and Qt >= 3.1 (KDE)
  • Add glib-2.0 and libxml-2.0 to PKG_CHECK_MODULES (KDE)
  • Display prefix in object info (KDE)
  • Confirm overwriting result and plot image files (KDE)
  • Use KIO instead of wget for fetching exchange rates (KDE)
  • Close gnuplot and disable save button when no series defined (KDE)

.: 2005-06-09 :. Qalculate! version 0.8.1

This release includes several major bug fixes and new features in the KDE interface. The new version also adds support for bitwise operators (~, &, |). This means that '&&' or 'AND', and '||' or 'OR' must be used for logical operations.

  • Bitwise operators
  • XOR function
  • Update currencies (more added)
  • Do not crash when saving data sets
  • Put buttons on the right (KDE)
  • Add web address to about data and correct bug address (KDE)
  • Add tooltips (KDE)
  • Base and numeric mode combo boxes should not be editable (KDE)
  • Support QT without STL support (KDE)
  • Insert matrix/vector dialogs (KDE)
  • Many enhancements to result display (KDE)
  • Add list items add the end of the list to get the right order (KDE)
  • Allow only one instance (KDE)
  • Display ampersands in menus for categorys and titles (KDE)
  • Hide completion when expression is empty (KDE)
  • Handle input keys ^+digit as "^"+digit (KDE)
  • and more...

.: 2005-06-01 :. Qalculate! version 0.8.0 released with new KDE interface

This release includes a completely new graphical user interface using KDE with all features of the old GTK+ GUI. It features a redesigned main window, with new features such as a history view (instead of in its own window), selectable result and tooltips for variables, functions and units in the result. Note that this does NOT mean that the old interface will be abandoned. The Qalculate! package has been split in three: liqalculate, qalculate-gtk and qalculate-kde.

  • New KDE GUI
  • Allow use of 'e' as well as 'E': 5e2 = 5E2 = 500
  • Update solve2()
  • Reenable message dialog without buttons for gtk+ >= 2.6.2
  • Do not look at function arguments in contains... functions
  • Update integration and differentiation (sin(x) != sin(x)*rad) after change in sin() and cos() behaviour
  • Fix documentation typos
  • Fix includes.h for gcc-4.0

.: 2005-02-01 :. Qalculate! version 0.7.2

This release includes some requested feature enhancements and minor bug fixes.

  • Show base (if not decimal, hexadecimal or non-standard) as subscript
  • Use singular instead of abbreviated name for completion
  • Fix "Convert result" button
  • Use the last operator for leftover stack values
  • Fix RPN crash and don't add lonely stack value to itself
  • Workaround freeze with message dialog without buttons

.: 2004-11-22 :. Qalculate! version 0.7.1

This is mainly a bug fix release.

  • Only use unicode character if available in the used font. Fixes plus sign not displayed correctly in keypad (bug #933234, bug #932828 and debian bug #281096), and wide keypad (bug #1063474)
  • Do not round exact integers not in exponential format. Fixes display of large numbers in non-decimal number bases (debian bug #278973)
  • Fix crash on systems, such as amd64, where size_t is not long int (bug #1049570)
  • Do not update plot data when not changed
  • Rearrange plot dialog and make x variable separate for each plot function
  • Generate vector function
  • Fix some cases with nested trigonometric functions by adding option to set default angle unit to none, to allow angle unit in argument
  • Try with assumptions set to unknown in solve function if not successful
  • Be more picky in comparisons with units
  • Fix comparison of unit with unknown
  • Fix 0.5!

.: 2004-10-18 :. Qalculate! version 0.7.0

This release includes some structural changes, a text-based interface, some major speed-ups and a number of bug fixes. Libqalculate is now installed as a shared library and in addition to the now optional gtk+ GUI, there is now a text-based/command line interface with an executable named qalc and access to the full functionality of Qalculate!.

  • New text interface: qalc
  • Change package name to qalculate
  • Install libqalculate as a shared library
  • Make compilation of qalculate-gtk and qalc optional
  • Drop support for gtk+ < 2.4
  • Separate internationalization files for definitions
  • Add appendix with auto generated function, variable and unit lists to documentation
  • Make definitions loading more than twice as fast
  • Calculation speed-ups, with some statistical functions now being many times faster with large vectors
  • Add option to limit use of implicit multiplication when parsing expressions
  • Support fractions of two in gamma function and do not transform to factorial for unsupported values
  • Double-, multi-, hyper- and superfactorials
  • Alternative to use step size instead of sampling rate for generation of plot data
  • Ask if exchange rates shall be downloaded on first run
  • Change promille to permille and add permille sign
  • Lots of approximation indication fixes
  • Fix: atan ignored selected angle unit
  • Fix: large numbers displayed approximately was not reported as approximate
  • Fix: read precision from zero with decimals
  • Fix: x!! != (x!)!
  • Fix: change non-unicode abbreviation for micro from n to u

.: 2004-09-27 :. Qalculate! version 0.6.4

This release includes, in addition to a large variety of enhancements and bug fixes, a new data set concept, to be able to handle large sets of variables, and significant algebraic enhancements.

  • New data set concept
  • Improve factorization
  • Status text
  • Ability to save result to image file (png)
  • Simple integration
  • Polynomial division and other division enhancements
  • Enhanced equation solving
  • Transform sqrt(54) to 3*sqrt(6) (and similar) in exact mode
  • Alternative to assume that unknown denominators are non-zero
  • Set unknowns dialog
  • Finish system property of units
  • Allow use of operation name instead of sign (ex. "5 meters per second" instead of "5 m/s")
  • New variables: thousand, hundred, ans2, ans3, ans4 and ans5
  • New units: day and year
  • New functions: solve2(), multisolve(), integrate()
  • Save and load accel map
  • Better sorting
  • Display error when plot data contains non-numerical elements
  • Fix xy-xy=xy !
  • Fix RPN mode
  • Fix saving of unknowns entered with quotation marks
  • Fix install over old installation
  • Fix display of application icon
  • Fix diff() with variables and functions that contains x
  • Many additional minor enhancements and bug fixes

.: 2004-08-16 :. Qalculate! version 0.6.3

A new exciting release of Qalculate! is ready with a lot of bug fixes and some interesting new features, including a periodic table, lots of physical constants, and new more flexible internal systems and user options for precision and object names (now case-insensitive).

  • Periodic Table and functions to retrieve element data
  • Non-abbreviated names are now case-insensitive
  • Individual precision for approximate values
  • Solve quadratic equations (note that Qalculate! is still not really a good tool for solving advanced equations)
  • New system for variable, unit and function names which allows unlimited number of different names for each object, translation of all names, and suffixes
  • New variables: lots of physical constants, and true (yes), false (no), undefined
  • Option to show ending zeroes (to see actual precision)
  • Option to interpret input numbers with decimals as approximate with a precision equal to the number of digits (after preceding zeroes)
  • Optional automatic conversion to best unit or base units
  • New units: atomic mass unit (u), stilb, phot, oersted, maxwell, gauss, dyne, poise, stokes, mass fraction (kg/kg)
  • New functions: bmi(), atomic_weight(), atomic_name(), atomic_symbol(), atomic_number(), atom()
  • Convert to best unit now only converts to SI units
  • Fix insert complex unit ("m/s" instead of "m_p_s")
  • Fix right parenthesis added before (but no left after) vector
  • Remove arg() until it has been fixed, and remove quarter unit as it might be confusing
  • Do not prefix currencies in all locales
  • Fix parsing of numbers with base <10 and decimal point
  • Result display fixes
  • Numerous minor enhancements and bug fixes...
The element data is rather limited at moment and I'm not exactly a chemist, so if someone is willing to step forward and fill in the missing properties I would very much appreciate it. I could also use some more suggestions on functions that you think should be included, how the user interface can become more user-friendly, and any new features that would be useful.

.: 2004-07-29 :. Qalculate! ebuild now in portage

Qalculate! is now available in Gentoo.
Install with ACCEPT_KEYWORDS="~x86" emerge qalculate-gtk

.: 2004-07-19 :. Qalculate! version 0.6.2

The new version includes some urgent bug fixes and a number of feature enhancements.

  • Fix segfault on exit
  • Force use of -O2 instead of -Os
  • Fix a^b^c = a^(b^c) not (a^b)^c
  • Fix rounding and precision in display of numbers
  • if(), function, error, warning, load, save and title functions were not activated (oops!)
  • Fix parsing of default value of text argument
  • Fix display of empty vector
  • Fix import of CSV file to matrix
  • Fix E in rpn mode
  • Fix rad unit being dropped in unsolved sin/cos function
  • Fix ! (NOT)
  • Change -5^2 = (-5)^2 to = -(5^2)
  • Variable edit fixes
  • Display also the parsed and formatted expression in history window
  • GUI for subfunctions
  • GUI to show numbers in base between 2 and 36
  • Alternative to use lower case letters in numbers
  • Alternative to round halfway numbers to even in display
  • Alternative disable complex and infinite results
  • Ability set number base for whole expression and enter epxressions in base functions
  • Export to CSV file
  • Fetching exchange rates message and slightly changed behaviour
  • Undefined, implicit unknowns disabled by default
  • Make symlink from qalculate-gtk to qalculate
  • Documentation updates
  • ...

.: 2004-07-10 :. Problems with -Os optimization

I have discovered that with "-Os" in CFLAGS/CXXFLAGS, Qalculate! will crash on startup. Replace with "-O2".

.: 2004-07-07 :. Qalculate! version 0.6.1

This release fixes some urgent bugs.

  • Fix input of numbers in bases > 10
  • Terminate threads before exit
  • Fix compilation by including unistd.h in
  • Follow ISO 8601 standard for week numbers (glib doesn't)
  • Fix approximate integers
  • Fix is approximate indication

.: 2004-06-24 :. Quick fix

If you downloaded version 0.6 yesterday, you should try again today.

.: 2004-06-23 :. Qalculate! version 0.6 finally released

This release features completely rewritten math structures, including how expressions are represented, simplified and calculated internally. This means that all known bugs and mathematical errors have been fixed, and hopefully results in much improved reliability. As almost no code was left untouched, a bunch of new bugs should however be expected.

User visible changes include
  • Correct calculations :-)
  • Selectable assumptions and definition of separate unknown variables
  • Some infinity support
  • Some new and changed variables and functions (some removed)
  • New result drawing routines
  • Exact mode -> "Always Exact", "Try Exact" and "Approximate" approximation choices
  • Fixed plotting
  • Multiplication sign selection
  • New boolean entry
  • Do not create a new thread (and stack space) for every calculation
  • ...

.: 2004-05-12 :. Status Update

Relatively long time has gone by since the last release, but this does not mean that development has stalled. I am currently rewriting the core math code, including how expressions are represented, simplified and calculated internally.

The rewrite will take some time, but will hopefully result in much improved reliability. Some functionality will be lost in the process and some will be added, such as assumptions (although the current version makes some inconsistent on its own) and display of the actual expression calculated, but most user-visible features will remain unchanged. Also, the API will be closer to being ready for a separate library release.

I seriously considered fully moving to Giac, but found that it was still lacking the stability needed for a desktop application and I also felt that I was moving too far a way from the main purpose of Qalculate!, which is to be a user-friendly and efficient tool for a wide array of everyday and simple scientific calculations. Those who need a full CAS will probably be more efficient with the tools provided with Giac.

.: 2004-04-06 :. Qalculate! version 0.5.1

This version includes some important bug fixes (mostly related to trigonometric functions and multiple roots) and a new solve function.

  • Fix multiple real roots as far as possible
  • Fix polynomial division (sin() / tan() was broken)
  • Fix trigonometric function units
  • Equation solver independent of Giac and isolation of x in comparisons
  • Fix comparison of approximate values
  • Elasticity and extremum functions
  • Do not display any extra trailing zeros
  • Fix invocation of newly created function
  • Minimal integrate function without Giac
  • Nicer complex number display
  • Fix precision dialog
  • Additional minor bug fixes

.: 2004-04-02 :. Multiple roots is broken

The mode for calculation of multiple roots is seriously broken. Make sure that you disable it!

.: 2004-03-29 :. Qalculate! version 0.5

This version includes a relatively large number of feature enhancements and fixes. The user interface has been partly redesigned (see screenshots) and does now have convenient completion for expressions. Note that gtk+-2.4 is recommended for this release, as it is needed for some of the new features.

  • Redesigned GUI with menubar, history window, etc.
  • Full completion of variables, functions and units in the expression entry
  • Context-sensitive popup menu for the result
  • Customizable expression entry font.
  • A new solution for languages with comma as decimal point that actually should be working
  • Actions for automatic unit conversion: convert to best unit and convert to base units
  • Allow use of [] for creation of matrices and vectors
  • Polynomial division
  • Imperial and U.S. capacity units
  • New functions: sum (old sum renamed to total), product, area, code, char, cis, derangements, sec, re, im, time, week, weekday, year, month, day, asec, sech, asech, csc, acsc, csch, acsch, cot, acot, coth, acoth
  • Use symbols for some common currencies in result and put them in front of the quantity, which is now fully supported in expressions
  • Roman and sexagesimal numbers
  • A new derivative function which does not depend on Giac
  • Simple factorization without Giac
  • A new convenient number class replaces fractions and integers internally
  • Make use of the relations between e, pi and i to give exact results
  • Define all trigonometric functions as expressions in relation to e and ln()
  • Allow "today" for dates
  • Fix ugly result display with gtk pixmap themes
  • Fixes for newer Giac versions
  • Some result display adjustments
  • Fix some unit conversion cases
  • Fix rem, mod and abs
  • Fix trimmed, weighted and winsorized mean
  • Fix date calculations with different basis
  • Fix printing of exponent 1E...
  • Some additional minor fixes

.: 2004-03-10 :. Qalculate! version 0.4.2a: "Oops!"

Fixes compilation without Giac.

.: 2004-03-09 :. Qalculate! version 0.4.2: Now with documentation!

This release includes a first manual draft. Please note that English is not my native language and this quite extensive manual was written during one hectic week. Version 0.4.2 also includes some bug fixes and new features.

  • Manual and a help menu item
  • Load function for accessing data files directly in expressions
  • Save history between sessions
  • Expression history, accessed with Up and Down keys
  • Calculate expression given in command line
  • Yen, pound, dollar and cent signs
  • Allow currencies to be put immediately before the quantity
  • Move some options from preferences dialog to menus
  • Fix unit conversion for ch^2 to acre and similar
  • Fix log with negative result
  • Fix exponential display in non-fractional mode with negative exponents
  • Fix problem with Gnuplot labels and quotation marks
  • Fix Gnuplot's dislike of local decimal points
  • Fix abort when locale not supported by C library
  • Fix some problems related to complex numbers

.: 2004-02-26 :. Qalculate! version 0.4.1

This is a bug fix release that fixes all problems related to strptime (by not using it) and parsing of text/date arguments.

  • Replace strptime
  • Fix parsing of text/date arguments
  • Fix gtk warnings on start-up
  • Use gtk's new file dialog

.: 2004-02-18 :. Qalculate! version 0.4

This release adds complex numbers and optional support for Giac, a computer algebra system. Even though some bug fixes have been made, this version is considered less stable than the previous. Most changes dates back to early November before a long break and I'm still waiting for the time and motivation to do the necessary rewrite of the core math structures.

  • Complex numbers
  • Preliminary Giac support, including derive, integrate, solve and a generic giac function, as well as the possibility to factorize the result
  • Start with gnuplot absent
  • "Copy Result" menu item
  • Use of Newton's Binomial Formula to speed up symbolic calculations
  • Show argument names in error messages
  • Define trigonometric functions as non-builtins when possible
  • Handle pi correcly in trigonometric functions
  • Delay inexact calculations: sqrt(2)^2 is no longer approximate
  • Permutations and combinations

.: 2004-02-03 :. Binary packages available

Debian packages (by Martin Waitz) are now available.

.: 2004-01-31 :. Minor bug fix release

Qalculate! version foremost fixes crash on display of matrix and incorrect calculation of division by root with multiple solutions.