From 2fe98299baff89c26b594704ea6baf6bd8336346 Mon Sep 17 00:00:00 2001 From: gregory guy Date: Sat, 7 Aug 2021 11:45:47 +0200 Subject: Conversion to the cmake building system. Added a man page taken from the Debian packaging system. Changed the doc folder's layout. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: gregory guy CMake: Use tde_add_project_translations common macro. Signed-off-by: Slávek Banko --- CMakeLists.txt | 78 + ConfigureChecks.cmake | 39 + config.h.cmake | 11 + doc/en/Makefile.am | 6 +- doc/en/calculation-history.png | Bin 0 -> 38304 bytes doc/en/calculator-buttons.png | Bin 0 -> 68093 bytes doc/en/completion.png | Bin 0 -> 19114 bytes doc/en/convert-number-bases.png | Bin 0 -> 11963 bytes doc/en/convert-unit.png | Bin 0 -> 10193 bytes doc/en/edit-function.png | Bin 0 -> 23237 bytes doc/en/edit-matrix.png | Bin 0 -> 23716 bytes doc/en/edit-unit.png | Bin 0 -> 27183 bytes doc/en/edit-variable.png | Bin 0 -> 19408 bytes doc/en/function-manager.png | Bin 0 -> 43458 bytes doc/en/functions.docbook | 3570 +++++++++++++++++++++++++ doc/en/gnuplot.png | Bin 0 -> 13415 bytes doc/en/import-csv.png | Bin 0 -> 22564 bytes doc/en/index.docbook | 1515 +++++++++++ doc/en/insert-function.png | Bin 0 -> 49542 bytes doc/en/mainwindow.png | Bin 0 -> 28260 bytes doc/en/plot-data.png | Bin 0 -> 28043 bytes doc/en/plot-settings.png | Bin 0 -> 24958 bytes doc/en/qalculate_tde/Makefile.am | 2 - doc/en/qalculate_tde/calculation-history.png | Bin 38304 -> 0 bytes doc/en/qalculate_tde/calculator-buttons.png | Bin 68093 -> 0 bytes doc/en/qalculate_tde/completion.png | Bin 19114 -> 0 bytes doc/en/qalculate_tde/convert-number-bases.png | Bin 11963 -> 0 bytes doc/en/qalculate_tde/convert-unit.png | Bin 10193 -> 0 bytes doc/en/qalculate_tde/edit-function.png | Bin 23237 -> 0 bytes doc/en/qalculate_tde/edit-matrix.png | Bin 23716 -> 0 bytes doc/en/qalculate_tde/edit-unit.png | Bin 27183 -> 0 bytes doc/en/qalculate_tde/edit-variable.png | Bin 19408 -> 0 bytes doc/en/qalculate_tde/function-manager.png | Bin 43458 -> 0 bytes doc/en/qalculate_tde/functions.docbook | 3570 ------------------------- doc/en/qalculate_tde/gnuplot.png | Bin 13415 -> 0 bytes doc/en/qalculate_tde/import-csv.png | Bin 22564 -> 0 bytes doc/en/qalculate_tde/index.docbook | 1515 ----------- doc/en/qalculate_tde/insert-function.png | Bin 49542 -> 0 bytes doc/en/qalculate_tde/mainwindow.png | Bin 28260 -> 0 bytes doc/en/qalculate_tde/plot-data.png | Bin 28043 -> 0 bytes doc/en/qalculate_tde/plot-settings.png | Bin 24958 -> 0 bytes doc/en/qalculate_tde/rpn-mode.png | Bin 25514 -> 0 bytes doc/en/qalculate_tde/store-variable.png | Bin 12866 -> 0 bytes doc/en/qalculate_tde/unit-manager.png | Bin 48346 -> 0 bytes doc/en/qalculate_tde/units.docbook | 3455 ------------------------ doc/en/qalculate_tde/variable-manager.png | Bin 41010 -> 0 bytes doc/en/qalculate_tde/variables.docbook | 631 ----- doc/en/rpn-mode.png | Bin 0 -> 25514 bytes doc/en/store-variable.png | Bin 0 -> 12866 bytes doc/en/unit-manager.png | Bin 0 -> 48346 bytes doc/en/units.docbook | 3455 ++++++++++++++++++++++++ doc/en/variable-manager.png | Bin 0 -> 41010 bytes doc/en/variables.docbook | 631 +++++ doc/man/qalculate-tde.1 | 16 + po/CMakeLists.txt | 1 + src/CMakeLists.txt | 62 + src/qalculateexpressionedit.cpp | 4 +- src/qalculateinsertmatrixvectordialog.cpp | 12 +- 58 files changed, 9388 insertions(+), 9185 deletions(-) create mode 100644 CMakeLists.txt create mode 100644 ConfigureChecks.cmake create mode 100644 config.h.cmake create mode 100644 doc/en/calculation-history.png create mode 100644 doc/en/calculator-buttons.png create mode 100644 doc/en/completion.png create mode 100644 doc/en/convert-number-bases.png create mode 100644 doc/en/convert-unit.png create mode 100644 doc/en/edit-function.png create mode 100644 doc/en/edit-matrix.png create mode 100644 doc/en/edit-unit.png create mode 100644 doc/en/edit-variable.png create mode 100644 doc/en/function-manager.png create mode 100644 doc/en/functions.docbook create mode 100644 doc/en/gnuplot.png create mode 100644 doc/en/import-csv.png create mode 100644 doc/en/index.docbook create mode 100644 doc/en/insert-function.png create mode 100644 doc/en/mainwindow.png create mode 100644 doc/en/plot-data.png create mode 100644 doc/en/plot-settings.png delete mode 100644 doc/en/qalculate_tde/Makefile.am delete mode 100644 doc/en/qalculate_tde/calculation-history.png delete mode 100644 doc/en/qalculate_tde/calculator-buttons.png delete mode 100644 doc/en/qalculate_tde/completion.png delete mode 100644 doc/en/qalculate_tde/convert-number-bases.png delete mode 100644 doc/en/qalculate_tde/convert-unit.png delete mode 100644 doc/en/qalculate_tde/edit-function.png delete mode 100644 doc/en/qalculate_tde/edit-matrix.png delete mode 100644 doc/en/qalculate_tde/edit-unit.png delete mode 100644 doc/en/qalculate_tde/edit-variable.png delete mode 100644 doc/en/qalculate_tde/function-manager.png delete mode 100644 doc/en/qalculate_tde/functions.docbook delete mode 100644 doc/en/qalculate_tde/gnuplot.png delete mode 100644 doc/en/qalculate_tde/import-csv.png delete mode 100644 doc/en/qalculate_tde/index.docbook delete mode 100644 doc/en/qalculate_tde/insert-function.png delete mode 100644 doc/en/qalculate_tde/mainwindow.png delete mode 100644 doc/en/qalculate_tde/plot-data.png delete mode 100644 doc/en/qalculate_tde/plot-settings.png delete mode 100644 doc/en/qalculate_tde/rpn-mode.png delete mode 100644 doc/en/qalculate_tde/store-variable.png delete mode 100644 doc/en/qalculate_tde/unit-manager.png delete mode 100644 doc/en/qalculate_tde/units.docbook delete mode 100644 doc/en/qalculate_tde/variable-manager.png delete mode 100644 doc/en/qalculate_tde/variables.docbook create mode 100644 doc/en/rpn-mode.png create mode 100644 doc/en/store-variable.png create mode 100644 doc/en/unit-manager.png create mode 100644 doc/en/units.docbook create mode 100644 doc/en/variable-manager.png create mode 100644 doc/en/variables.docbook create mode 100644 doc/man/qalculate-tde.1 create mode 100644 po/CMakeLists.txt create mode 100644 src/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..80777ec --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,78 @@ +############################################ +# # +# Improvements and feedbacks are welcome # +# # +# This file is released under GPL >= 3 # +# # +############################################ + + +cmake_minimum_required( VERSION 2.8.12 ) + + +#### general package setup + +project( qalculate_tde ) +set( VERSION R14.1.0 ) + + +#### include essential cmake modules + +include( FindPkgConfig ) +include( CheckFunctionExists ) +include( CheckSymbolExists ) +include( CheckIncludeFile ) +include( CheckLibraryExists ) +include( CheckCSourceCompiles ) +include( CheckCXXSourceCompiles ) + + +#### include our cmake modules + +set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) +include( TDEMacros ) + + +##### setup install paths + +include( TDESetupPaths ) +tde_setup_paths( ) + + +##### optional stuff + +option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) +option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} ) + + +##### user requested modules + +option( BUILD_ALL "Build all" ON ) +option( BUILD_DOC "Build documentation" ${BUILD_ALL} ) +option( BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL} ) + + +##### configure checks + +include( ConfigureChecks.cmake ) + + +###### global compiler settings + +add_definitions( -DHAVE_CONFIG_H -UTQT_NO_ASCII_CAST ) + +set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) +set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" ) +set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" ) + + +##### directories + +add_subdirectory( src ) +tde_conditional_add_project_docs( BUILD_DOC ) +tde_conditional_add_subdirectory( BUILD_TRANSLATIONS po ) + + +##### write configure files + +configure_file( config.h.cmake config.h @ONLY ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake new file mode 100644 index 0000000..2f6cb2a --- /dev/null +++ b/ConfigureChecks.cmake @@ -0,0 +1,39 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + +# required stuff +find_package( TQt ) +find_package( TDE ) + +tde_setup_architecture_flags( ) + +include(TestBigEndian) +test_big_endian(WORDS_BIGENDIAN) + +tde_setup_largefiles( ) + + +##### check for gcc visibility support + +if( WITH_GCC_VISIBILITY ) + tde_setup_gcc_visibility( ) +endif( WITH_GCC_VISIBILITY ) + + +##### Threading support + +find_package( Threads ) + + +##### look for libqalculate + +pkg_search_module( QALCULATE libqalculate ) + +if( NOT QALCULATE_FOUND ) + tde_message_fatal( "libqalculate is required but was not found on your system." ) +endif( NOT QALCULATE_FOUND ) diff --git a/config.h.cmake b/config.h.cmake new file mode 100644 index 0000000..a326e62 --- /dev/null +++ b/config.h.cmake @@ -0,0 +1,11 @@ +#define VERSION "@VERSION@" + +// Defined if you have fvisibility and fvisibility-inlines-hidden support. +#cmakedefine __TDE_HAVE_GCC_VISIBILITY 1 + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@ + +/* Defined for .rc file and icons */ +#define PACKAGE "qalculate_tde" diff --git a/doc/en/Makefile.am b/doc/en/Makefile.am index 2f9ab2c..dacaeed 100644 --- a/doc/en/Makefile.am +++ b/doc/en/Makefile.am @@ -1,4 +1,2 @@ -# the SUBDIRS is filled automatically by am_edit. If files are -# in this directory they are installed into the english dir - -SUBDIRS = qalculate_tde +KDE_DOCS = qalculate_tde +KDE_LANG = en diff --git a/doc/en/calculation-history.png b/doc/en/calculation-history.png new file mode 100644 index 0000000..0027d24 Binary files /dev/null and b/doc/en/calculation-history.png differ diff --git a/doc/en/calculator-buttons.png b/doc/en/calculator-buttons.png new file mode 100644 index 0000000..38a4f4f Binary files /dev/null and b/doc/en/calculator-buttons.png differ diff --git a/doc/en/completion.png b/doc/en/completion.png new file mode 100644 index 0000000..efaf7f1 Binary files /dev/null and b/doc/en/completion.png differ diff --git a/doc/en/convert-number-bases.png b/doc/en/convert-number-bases.png new file mode 100644 index 0000000..c33b3f9 Binary files /dev/null and b/doc/en/convert-number-bases.png differ diff --git a/doc/en/convert-unit.png b/doc/en/convert-unit.png new file mode 100644 index 0000000..1b4f266 Binary files /dev/null and b/doc/en/convert-unit.png differ diff --git a/doc/en/edit-function.png b/doc/en/edit-function.png new file mode 100644 index 0000000..768921b Binary files /dev/null and b/doc/en/edit-function.png differ diff --git a/doc/en/edit-matrix.png b/doc/en/edit-matrix.png new file mode 100644 index 0000000..ec7f1e5 Binary files /dev/null and b/doc/en/edit-matrix.png differ diff --git a/doc/en/edit-unit.png b/doc/en/edit-unit.png new file mode 100644 index 0000000..ff7472f Binary files /dev/null and b/doc/en/edit-unit.png differ diff --git a/doc/en/edit-variable.png b/doc/en/edit-variable.png new file mode 100644 index 0000000..1f00bdc Binary files /dev/null and b/doc/en/edit-variable.png differ diff --git a/doc/en/function-manager.png b/doc/en/function-manager.png new file mode 100644 index 0000000..3a92011 Binary files /dev/null and b/doc/en/function-manager.png differ diff --git a/doc/en/functions.docbook b/doc/en/functions.docbook new file mode 100644 index 0000000..777fa4e --- /dev/null +++ b/doc/en/functions.docbook @@ -0,0 +1,3570 @@ + +Function List + +Algebra + + +Find Linear Function + +linearfunction(x1, y1, x2, y2) +Finds the linear function for the straight line between two distinct points. + +Arguments +x1: a free value +y1: a free value +x2: a free value +y2: a free value + + + + + +Product + +product(Factor expression, Lower limit (i), Upper limit (n)[, Index variable]) +ΠCorresponds to the product symbol. Multiplies factors for each x ranging from the lower to the upper limit. + +Arguments +Factor expression: a free value +Lower limit (i): an integer +Upper limit (n): an integer +Index variable: an unknown variable/symbol (optional, default: x) + + + +Requirement +"Upper limit (n)" >= "Lower limit (i)" + + + + + +Solve equation + +solve(Equation[, With respect to]) + +Arguments +Equation: a free value +With respect to: an unknown variable/symbol (optional, default: x) + + + + + +Solve for multiple variables + +multisolve(Equation vector, Variable vector) + +Arguments +Equation vector: a vector +Variable vector: a vector with an unknown variable/symbol, ... + + + +Requirement +dimension("Equation vector")=dimension("Variable vector") + + + + + +Solve for two variables + +solve2(Equation 1, Equation 2[, Variable 1][, Variable 2]) +Solves two equations with two unknown variables. Returns the value of the first variable. + +Arguments +Equation 1: a free value +Equation 2: a free value +Variable 1: an unknown variable/symbol (optional, default: x) +Variable 2: an unknown variable/symbol (optional, default: y) + + + + + +Sum + +sum(Term expression, Lower limit (i), Upper limit (n)[, Index variable]) +ΣCorresponds to the sum symbol. Adds terms for each x ranging from the lower to the upper limit. + +Arguments +Term expression: a free value +Lower limit (i): an integer +Upper limit (n): an integer +Index variable: an unknown variable/symbol (optional, default: x) + + + +Requirement +"Upper limit (n)" >= "Lower limit (i)" + + + + + + + +Analysis + + +Beta Function + +beta(argument 1, argument 2) + +Arguments +1: an integer +2: an integer + + + + + +Gamma Function + +gamma(argument 1) + +Arguments +1: a number + + + + + +Imaginary Part + +im(Complex number) + +Arguments +Complex number: a number + + + + + +Real Part + +re(Complex number) + +Arguments +Complex number: a number + + + + + + + +Calculus + + +Derive + +diff(Function[, With respect to][, Order]) + +Arguments +Function: a free value +With respect to: an unknown variable/symbol (optional, default: x) +Order: an integer >= 1 (optional, default: 1) + + + + + +Extreme Values + +extremum(Function[, With respect to]) + +Arguments +Function: a free value +With respect to: an unknown variable/symbol (optional, default: x) + + + + + +Integrate + +integrate(Function[, Variable of integration][, Lower limit][, Upper limit]) + +Arguments +Function: a free value +Variable of integration: an unknown variable/symbol (optional, default: x) +Lower limit: a free value (optional, default: undefined) +Upper limit: a free value (optional, default: undefined) + + + + + + + +Combinatorics + + +Binomial Coefficient + +binomial(Exponent, Index) + +Arguments +Exponent: an integer >= 1 +Index: an integer >= 0 + + + +Requirement +"Exponent">="Index" + + + + + +Combinations + +comb(Objects, Size) +Returns the number of possible arrangements of an unordered list with a number of objects to choose from and a list size. If there are three objects (1, 2 and 3) that is put in a list with place for two, the alternatives are [1, 2], [1, 3], and [2, 3], and thus the number of combinations is 3. + +Arguments +Objects: a free value +Size: a free value + + + + + +Derangements + +derangements(Number of elements) +Returns the number of possible rearrangements of an ordered list, of a certain size, where none of the objects are on their original position. If the original list is [1, 2, 3], the possible derangements is [2, 3, 1] and [3, 1, 2], and thus the number of derangements is 2. + +Arguments +Number of elements: an integer >= 1 + + + + + +Double Factorial + +factorial2(Value) +Calculates the doublefactorial of an integer. Mulitplies the argument with every second lesser positive integer (n(n-2)(n-4)...). Can also be entered as a number followed by two exclamation marks.ex. factorial2(5) = 5!! = 5 * 3 * 1 = 15 + +Arguments +Value: an integer >= -1 + + + + + +Factorial + +factorial(Value) +Calculates the factorial of an integer. Mulitplies the argument with every lesser positive integer (n(n-1)(n-2)...2*1). Can also be entered as a number followed by one exclamation mark.ex. factorial(5) = 5! = 5 * 4 * 3 * 2 * 1 = 120 + +Arguments +Value: an integer + + + + + +Hyperfactorial + +hyperfactorial(Value) +Calculates the hyperfactorial of an integer. Mulitplies the argument raised by itself with every lesser positive integer raised by themselves (1^1 * 2^2 ... n^n). ex. hyperfactorial(3) = (3^3) * (2^2) * (1^1) = 108 + +Arguments +Value: an integer >= 1 + + + + + +Multifactorial + +multifactorial(Value, Factorial) +Calculates the multifactorial of an integer. Mulitplies the argument with every x lesser positive integer (n(n-x)(n-2x)...). Can also be entered as a number followed by three or more exclamation marks.ex. multifactorial(18, 4) = 18!!!! = 18 * 14 * 10 * 6 * 2 = 30 240 + +Arguments +Value: an integer >= 0 +Factorial: an integer >= 1 + + + + + +Permutations + +perm(Objects, Size) +Returns the number of possible arrangements of an ordered list with a number of objects to choose from and a list size. If there are three objects (1, 2 and 3) that is put in a list with two positions, the alternatives are [1, 2], [2, 1], [1, 3], [3, 1], [2, 3] and [3, 2], and thus the number of permutations is 6. + +Arguments +Objects: a free value +Size: a free value + + + + + +Superfactorial + +superfactorial(Value) +Calculates the superfactorial of an integer. Mulitplies the factorial of the argument with the factorial of every lesser positive integer (1! * 2! ... n!). ex. superfactorial(5) = 5! * 4! * 3! * 2! * 1! = 34 560 + +Arguments +Value: an integer >= 0 + + + + + + + +Data Sets + + +Elements + +atom(Element[, Property]) +Retrieves data from the Elements data set for a given object and property. If "info" is typed as property, all properties of the object will be listed. +Arguments +Element: an object from "Elements" (use symbol, number, or name) +Property: name of a data property (symbol, number, name, class, or weight) (optional, default: info) + + + +Properties +Symbol: symbol (key) +Number: number (key) +Name: name (key) +Classification: classA number representing an element group:1 Alkali Metal2 Alkaline-Earth Metal3 Lanthanide4 Actinide5 Transition Metal6 Metal7 Metalloid8 Non-Metal9 Halogen10 Noble Gas11 Transactinide +Weight: weight, mass + + + + + +Planets + +planet(Planet[, Property]) +Retrieves data from the Planets data set for a given object and property. If "info" is typed as property, all properties of the object will be listed.This data uses material from the Wikipedia articles"Earth" (http://www.wikipedia.org/wiki/Earth),"Jupiter (planet)" (http://www.wikipedia.org/wiki/Jupiter_(planet)),"Mars (planet)" (http://www.wikipedia.org/wiki/Mars_(planet)),"Mercury (planet)" (http://www.wikipedia.org/wiki/Mercury_(planet)),"Neptune (planet)" (http://www.wikipedia.org/wiki/Neptune_(planet)),"Pluto (planet)" (http://www.wikipedia.org/wiki/Pluto_(planet)),"Saturn (planet)" (http://www.wikipedia.org/wiki/Saturn_(planet)),"Uranus (planet)" (http://www.wikipedia.org/wiki/Uranus_(planet)), and"Venus (planet)" (http://en.wikipedia.org/wiki/Venus_(planet)),licensed under the GNU Free Documentation License (http://www.gnu.org/copyleft/fdl.html) + +Arguments +Planet: an object from "Planets" (use name) +Property: name of a data property (name, year, speed, eccentricity, inclination, satellites, mass, density, area, gravity, or temperature) (optional, default: info) + + + +Properties +Name: name (key) +Orbital Period (Year): year +Average Orbital Speed: speed +Eccentricity: eccentricity +Inclination: inclination +Number of Satellites: satellites +Mass: mass +Mean Density: density +Surface Area: area +Equatorial Gravity: gravity +Mean Surface Temperature: temperature + + + + + + + +Date & Time + + +Current Time + +time() + + + +Date to Unix Timestamp + +timestamp([Date]) + +Arguments +Date: a date (optional, default: now) + + + + + +Day of Month + +day([Date]) + +Arguments +Date: a date (optional, default: today) + + + + + +Day of Week + +weekday([Date][, Week begins on Sunday]) + +Arguments +Date: a date (optional, default: today) +Week begins on Sunday: a boolean (0 or 1) (optional, default: 0) + + + + + +Day of Year + +yearday([Date]) + +Arguments +Date: a date (optional, default: today) + + + + + +Days between two dates + +days(First date, Second date[, Day counting basis][, Financial function mode]) +Returns the number of days between two dates.Basis is the type of day counting you want to use: 0: US 30/360, 1: real days (default), 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +First date: a date +Second date: a date +Day counting basis: an integer >= 0 and <= 4 (optional, default: 1) +Financial function mode: a boolean (0 or 1) (optional, default: 0) + + + + + +Local Date Format + +localdate([Date]) + +Arguments +Date: a date (optional, default: today) + + + + + +Month + +month([Date]) + +Arguments +Date: a date (optional, default: today) + + + + + +Standard Date Format + +isodate([Date]) + +Arguments +Date: a date (optional, default: today) + + + + + +Unix Timestamp to Date + +stamptodate(Timestamp) + +Arguments +Timestamp: an integer + + + + + +Week of Year + +week([Date][, Week begins on Sunday]) + +Arguments +Date: a date (optional, default: today) +Week begins on Sunday: a boolean (0 or 1) (optional, default: 0) + + + + + +Year + +year([Date]) + +Arguments +Date: a date (optional, default: today) + + + + + +Years between two dates + +yearfrac(First date, Second date[, Day counting basis][, Financial function mode]) +Returns the number of years (fractional) between two dates.Basis is the type of day counting you want to use: 0: US 30/360, 1: real days (default), 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +First date: a date +Second date: a date +Day counting basis: an integer >= 0 and <= 4 (optional, default: 1) +Financial function mode: a boolean (0 or 1) (optional, default: 0) + + + + + + + +Economics + +Finance + + +Accrued interest of security paying at maturity + +accrintm(Issue date, Settlement date, Annual rate of security[, Par value][, Day counting basis]) +Returns the accrued interest for a security which pays interest at maturity date.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Issue date: a date +Settlement date: a date +Annual rate of security: a free value +Par value: a free value (optional, default: 1000) +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Accrued interest of security with periodic interest payments + +accrint(Issue date, First interest, Settlement date, Annual rate of security, Par value, Frequency[, Day counting basis]) +Returns accrued interest for a security which pays periodic interest.Allowed frequencies are 1 - annual, 2 - semi-annual or 4 - quarterly. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Issue date: a date +First interest: a date +Settlement date: a date +Annual rate of security: a free value +Par value: a free value +Frequency: an integer >= 1 and <= 4 +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Amount received at maturity for a security bond + +received(Settlement date, Maturity date, Investment, Discount rate[, Day counting basis]) +Returns the amount received at the maturity date for an invested security.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. The settlement date must be before maturity date. + +Arguments +Settlement date: a date +Maturity date: a date +Investment: a free value +Discount rate: a free value +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Compound + +compound(Principal, Nominal interest rate, Periods per year, Years) +Returns the value of an investment, given the principal, nominal interest rate, compounding frequency and time. + +Arguments +Principal: a free value +Nominal interest rate: a free value +Periods per year: a free value +Years: a free value + + + + + +Discount rate for a security + +disc(Settlement date, Maturity date, Price per $100 face value, Redemption[, Day counting basis]) +Returns the discount rate for a security.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Settlement date: a date +Maturity date: a date +Price per $100 face value: a free value +Redemption: a free value +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Dollar Decimal + +dollarde(Fractional dollar, Denominator of fraction) +Converts a dollar price expressed as a fraction into a dollar price expressed as a decimal number. + +Arguments +Fractional dollar: a free value +Denominator of fraction: an integer >= 1 + + + + + +Dollar Fraction + +dollarfr(Decimal dollar, Denominator of fraction) +Converts a decimal dollar price into a dollar price expressed as a fraction. + +Arguments +Decimal dollar: a free value +Denominator of fraction: an integer >= 1 + + + + + +Effective Interest Rate + +effect(Nominal interest rate, Periods) +Calculates the effective interest for a given nominal rate. + +Arguments +Nominal interest rate: a free value +Periods: a free value + + + + + +Future Value + +fv(Interest rate, Number of periods, Payment made each period[, Present value][, Type]) +Computes the future value of an investment. This is based on periodic, constant payments and a constant interest rate.If type = 1 then the payment is made at the beginning of the period, If type = 0 (or omitted) it is made at the end of each period. + +Arguments +Interest rate: a free value +Number of periods: a free value +Payment made each period: a free value +Present value: a free value (optional, default: 0) +Type: a boolean (0 or 1) (optional, default: 0) + + + + + +Interest paid on a given period of an investment (ISPMT) + +ispmt(Periodic interest rate, Amortizement period, Number of periods, Present value) +Calculates the interest paid on a given period of an investment. + +Arguments +Periodic interest rate: a free value +Amortizement period: an integer >= 1 +Number of periods: an integer >= 1 +Present value: a free value + + + + + +Interest rate for a fully invested security + +intrate(Settlement date, Maturity date, Investment, Redemption[, Day counting basis]) +Returns the interest rate for a fully invested security.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Settlement date: a date +Maturity date: a date +Investment: a free value +Redemption: a free value +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Level-Coupon Bond + +level_coupon(Face value, Coupon rate, Coupons per year, Years, Market interest rate) +Calculates the value of a level-coupon bond. + +Arguments +Face value: a free value +Coupon rate: a free value +Coupons per year: a free value +Years: a free value +Market interest rate: a free value + + + + + +Nominal Interest Rate + +nominal(Effective interest rate, Periods) +Calculates the nominal interest rate from a given effective interest rate compounded at given intervals. + +Arguments +Effective interest rate: a free value +Periods: a free value + + + + + +Number of coupons to be paid + +coupnum(Settlement date, Maturity date, Frequency[, Day counting basis]) +Returns the number of coupons to be paid between the settlement and the maturity.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Settlement date: a date +Maturity date: a date +Frequency: an integer >= 1 and <= 12 +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Payment for a loan + +pmt(Rate, Number of periods, Present value[, Future value][, Type]) +Returns the amount of payment for a loan based on a constant interest rate and constant payments (each payment is equal amount).If type = 1 then the payment is made at the beginning of the period, If type = 0 (or omitted) it is made at the end of each period. + +Arguments +Rate: a free value +Number of periods: a free value +Present value: a free value +Future value: a free value (optional, default: 0) +Type: a boolean (0 or 1) (optional, default: 0) + + + + + +Payment of an annuity going towards interest (IPMT) + +ipmt(Periodic interest rate, Period, Number of periods, Present value[, Future value][, Type]) +Calculates the amount of a payment of an annuity going towards interest.Type defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. + +Arguments +Periodic interest rate: a free value +Period: an integer >= 1 +Number of periods: an integer >= 1 +Present value: a free value +Future value: a free value (optional, default: 0) +Type: a boolean (0 or 1) (optional, default: 0) + + + + + +Payment of an annuity going towards principal (PPMT) + +ppmt(Periodic interest rate, Amortizement period, Number of periods, Present value[, Desired future value][, Type]) +Calculates the amount of a payment of an annuity going towards principal.Type defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. + +Arguments +Periodic interest rate: a free value +Amortizement period: an integer >= 1 +Number of periods: an integer >= 1 +Present value: a free value +Desired future value: a free value (optional, default: 0) +Type: a boolean (0 or 1) (optional, default: 0) + + + + + +Periods for investment to attain desired value + +g_duration(Rate, Present value, Future value) +Returns the number of periods needed for an investment to attain a desired value. + +Arguments +Rate: a free value +Present value: a free value +Future value: a free value + + + + + +Periods of an investment + +nper(Interest rate, Payment made each period, Present value[, Future value][, Type]) +Calculates number of periods of an investment based on periodic constant payments and a constant interest rate.Type defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. + +Arguments +Interest rate: a free value +Payment made each period: a free value +Present value: a free value +Future value: a free value (optional, default: 0) +Type: a free value (optional, default: 0) + + + + + +Present Value + +pv(Interest rate, Number of periods, Payment made each period[, Future value][, Type]) +Returns the present value of an investment.If type = 1 then the payment is made at the beginning of the period, If type = 0 (or omitted) it is made at the end of each period. + +Arguments +Interest rate: a free value +Number of periods: a free value +Payment made each period: a free value +Future value: a free value (optional, default: 0) +Type: a boolean (0 or 1) (optional, default: 0) + + + + + +Price per $100 face value of a security + +pricemat(Settlement date, Maturity date, Issue date, Discount rate, Annual yield[, Day counting basis]) +Calculates and returns the price per $100 face value of a security. The security pays interest at maturity.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Settlement date: a date +Maturity date: a date +Issue date: a date +Discount rate: a free value +Annual yield: a free value +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Price per $100 face value of a security bond + +pricedisc(Settlement date, Maturity date, Discount, Redemption[, Day counting basis]) +Calculates and returns the price per $100 face value of a security bond. The security does not pay interest at maturity.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. + +Arguments +Settlement date: a date +Maturity date: a date +Discount: a free value +Redemption: a free value +Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) + + + + + +Return on continuously compounded interest + +continuous(Principal, Interest rate, Years) +Calculates the return on continuously compounded interest, given the principal, nominal rate and time in years. + +Arguments +Principal: a free value +Interest rate: a free value +Years: a free value + + + + + +Straight Line Depreciation + +sln(Cost, Salvage value, Life) +Determines the straight line depreciation of an asset for a single period.Cost is the amount you paid for the asset. Salvage is the value of the asset at the end of the period. Life is the number of periods over which the asset is depreciated. SLN divides the cost evenly over the life of an asset. + +Arguments +Cost: a free value +Salvage value: a free value +Life: a free value + + + + + +Sum-of-Years Digits Depreciation + +syd(Cost, Salvage value, Life, Period) +Calculates the sum-of-years digits depreciation for an asset based on its cost, salvage value, anticipated life, and a particular period. This method accelerates the rate of the depreciation, so that more depreciation expense occurs in earlier periods than in later ones. The depreciable cost is the actual cost minus the salvage value. The useful life is the number of periods (typically years) over which the asset is depreciated. + +Arguments +Cost: a free value +Salvage value: a free value +Life: a free value +Period: a free value + + + + + +Treasury Bill Equivalent + +tbilleq(Settlement date, Maturity date, Discount rate) +Returns the bond equivalent for a treasury bill. + +Arguments +Settlement date: a date +Maturity date: a date +Discount rate: a free value + + + + + +Treasury Bill Price + +tbillprice(Settlement date, Maturity date, Discount rate) +Returns the price per $100 value for a treasury bill. + +Arguments +Settlement date: a date +Maturity date: a date +Discount rate: a free value + + + + + +Treasury Bill Yield + +tbillyield(Settlement date, Maturity date, Price per $100 face value) +Returns the yield for a treasury bill. + +Arguments +Settlement date: a date +Maturity date: a date +Price per $100 face value: a free value + + + + + +Zero Coupon + +zero_coupon(Face value, Interest rate, Years) +Calculates the value of a zero-coupon (pure discount) bond. + +Arguments +Face value: a free value +Interest rate: a free value +Years: a free value + + + + + + + +Microeconomics + + +Elasticity + +elasticity(Demand function, Price[, Price variable]) +Calculates the demand elesticity. Also works for supply elasticity, income elasticity, cross-price elasticity, etc. Just replace demand, with supply, or price with income...Ex. elasticity(100-x^2, 3) calculates the demand elasticity when the price is 3 for the function "Q = 100 - x^2" where x is the default price variable. + +Arguments +Demand function: a free value +Price: a free value +Price variable: an unknown variable/symbol (optional, default: x) + + + + + + + + +Exponents & Logarithms + + +10 raised the to power X + +exp10(Exponent) + +Arguments +Exponent: a free value + + + + + +2 raised the to power X + +exp2(Exponent) + +Arguments +Exponent: a free value + + + + + +Base-10 Logrithm + +log10(Value) +Returns the base n logarithm. + +Arguments +Value: a number >= 0 + + + + + +Base-2 Logrithm + +log2(Value) +Returns the base n logarithm. + +Arguments +Value: a number >= 0 + + + + + +Base-N Logarithm + +log(Value[, Base]) + +Arguments +Value: a number that is nonzero +Base: a number that is nonzero (optional, default: e) + + + + + +Complex Exponential (Cis) + +cis(Exponent) + +Arguments +Exponent: a free value + + + + + +Cube Root + +cbrt(Value) + +Arguments +Value: a free value + + + + + +Exponential (e^x) + +exp(Exponent) + +Arguments +Exponent: a free value + + + + + +Natural Logarithm + +ln(Value) + +Arguments +Value: a number that is nonzero + + + + + +Nth root + +root(Base, Exponent) + +Arguments +Base: a free value +Exponent: a free value + + + + + +Square + +sq(Value) + +Arguments +Value: a free value + + + + + +Square Root + +sqrt(Value) + +Arguments +Value: a free value + + + + + +Square root (x * pi) + +sqrtpi(Non-negative value) +Returns the non-negative square root of x * pi + +Arguments +Non-negative value: a number >= 0 + + + + + +X raised to the power Y + +pow(Base, Exponent) + +Arguments +Base: a free value +Exponent: a free value + + + + + + + +Geometry + +Circle + + +Circle Area + +circle(Radius) +Calculates the area of a circle using the radius + +Arguments +Radius: a free value + + + + + +Circle Circumference + +circumference(Radius) +Calculates the area of a circle using the radius + +Arguments +Radius: a free value + + + + + + + +Cone + + +Cone Volume + +cone(Radius, Height) + +Arguments +Radius: a free value +Height: a free value + + + + + +Surface Area of Cone + +cone_sa(Radius, Height) + +Arguments +Radius: a free value +Height: a free value + + + + + + + +Cube + + +Cube Volume + +cube(Length of side) + +Arguments +Length of side: a free value + + + + + +Surface Area of Cube + +cube_sa(Length of side) + +Arguments +Length of side: a free value + + + + + + + +Cylinder + + +Cylinder Volume + +cylinder(Radius, Height) + +Arguments +Radius: a free value +Height: a free value + + + + + +Surface Area of Cylinder + +cylinder_sa(Radius, Height) + +Arguments +Radius: a free value +Height: a free value + + + + + + + +Parallelogram + + +Parallelogram Area + +parallelogram(Base, Height) +Calculates the area of a four-sided figure whose opposite sides are both parallel and equal in length. + +Arguments +Base: a free value +Height: a free value + + + + + +Parallelogram Perimeter + +parallelogram_perimeter(Side A, Side B) +Calculates the perimeter of a four-sided figure whose opposite sides are both parallel and equal in length. + +Arguments +Side A: a free value +Side B: a free value + + + + + + + +Prism + + +Surface Area of Rectangular Prism + +rectprism_sa(Length, Width, Height) +Calculates the surface area of a prism with rectangular base. + +Arguments +Length: a free value +Width: a free value +Height: a free value + + + + + +Volume of Rectangular Prism + +rectprism(Length, Width, Height) +Calculates the volume of a prism with rectangular base. + +Arguments +Length: a free value +Width: a free value +Height: a free value + + + + + +Volume of Triangular Prism + +triangleprism(Length, Width, Height) +Calculates the volume of a prism with triangular base. + +Arguments +Length: a free value +Width: a free value +Height: a free value + + + + + + + +Pyramid + + +Height of Regular Tetrahedron + +tetrahedron_height(Length of side) + +Arguments +Length of side: a free value + + + + + +Height of Square Pyramid + +sqpyramid_height(Length of side) + +Arguments +Length of side: a free value + + + + + +Pyramid Volume + +pyramid(Length of base, Width of base, Height) +Calculates the volume of a 3-dimensional shape standing on a rectangular base and terminating in a point at the top. + +Arguments +Length of base: a free value +Width of base: a free value +Height: a free value + + + + + +Surface Area of Regular Tetrahedron + +tetrahedron_sa(Length of side) + +Arguments +Length of side: a free value + + + + + +Surface Area of Square Pyramid + +sqpyramid_sa(Length of side) + +Arguments +Length of side: a free value + + + + + +Volume of Regular Tetrahedron + +tetrahedron(Length of side) + +Arguments +Length of side: a free value + + + + + +Volume of Square Pyramid + +sqpyramid(Length of side) + +Arguments +Length of side: a free value + + + + + + + +Rectangle + + +Rectangle Area + +rect(Length, Width) + +Arguments +Length: a free value +Width: a free value + + + + + +Rectangle Perimeter + +rect_perimeter(Length, Width) + +Arguments +Length: a free value +Width: a free value + + + + + + + +Sphere + + +Sphere Volume + +sphere(Radius) + +Arguments +Radius: a free value + + + + + +Surface Area of Sphere + +sphere_sa(Radius) + +Arguments +Radius: a free value + + + + + + + +Square + + +Square Area + +square(Length of side) + +Arguments +Length of side: a free value + + + + + +Square Perimeter + +square_perimeter(Length of side) + +Arguments +Length of side: a free value + + + + + + + +Trapezoid + + +Trapezoid Area + +trapezoid(Side A, Side B, Height) +Calculates the area of a four-sided figure with two parallel sides. + +Arguments +Side A: a free value +Side B: a free value +Height: a free value + + + + + + + +Triangle + + +Hypotenuse + +hypot(Side A, Side B) + +Arguments +Side A: a free value +Side B: a free value + + + + + +Triangle Area + +triangle(Base, Height) + +Arguments +Base: a free value +Height: a free value + + + + + +Triangle Perimeter + +triangle_perimeter(Side A, Side B) + +Arguments +Side A: a free value +Side B: a free value + + + + + + + + +Logical + + +Bitwise Exclusive OR + +bitxor(Value 1, Value 2) + +Arguments +Value 1: an integer or a vector +Value 2: an integer or a vector + + + + + +Bitwise Shift + +shift(Number, Bits) + +Arguments +Number: an integer +Bits: an integer + + + + + +For...Do + +for(Initial value of counter, Counter variable, For condition, Counter update function, Initial value, Do function, Value variable) + +Arguments +Initial value of counter: a free value +Counter variable: an unknown variable/symbol +For condition: a free value +Counter update function: a free value +Initial value: a free value +Do function: a free value +Value variable: an unknown variable/symbol + + + + + +If...Then...Else + +if(Condition, Expression if condition is met, Expression if condition is NOT met) +Tests a condition and returns a value depending on the result. + +Arguments +Condition: a real number +Expression if condition is met: a free value +Expression if condition is NOT met: a free value + + + + + +Logical Exclusive OR + +xor(Value 1, Value 2) + +Arguments +Value 1: a free value +Value 2: a free value + + + + + + + +Matrices & Vectors + + +Adjugate (Adjoint) + +adj(Matrix) +Calculates the adjugate or adjoint of a matrix. + +Arguments +Matrix: a square matrix + + + + + +Cofactor + +cofactor(Matrix, Row, Column) +Calculates the cofactor of the element at specified position. + +Arguments +Matrix: a matrix +Row: an integer >= 1 +Column: an integer >= 1 + + + + + +Columns + +columns(Matrix) +Returns the number of columns in a matrix. + +Arguments +Matrix: a matrix + + + + + +Construct Matrix + +matrix(Rows, Columns, Elements) +Returns a matrix with specified dimensions and listed elements. Omitted elements are set to zero. + +Arguments +Rows: an integer >= 1 +Columns: an integer >= 1 +Elements: a vector + + + + + +Construct Vector + +vector([argument 1], ...) +Returns a vector with listed elements. + +Arguments +1: a free value (optional) + + + + + +Convert Matrix to Vector + +matrix2vector(Matrix) +Puts each element of a matrix in vertical order in a vector. + +Arguments +Matrix: a matrix + + + + + +Cross Product + +cross(Vector 1, Vector 2) +Calculates the cross product of a 3-dimensional vector. + +Arguments +Vector 1: a vector that fulfills the condition: "dimension(\x)==3" +Vector 2: a vector that fulfills the condition: "dimension(\x)==3" + + + + + +Determinant + +det(Matrix) +Calculates the determinant of a matrix. + +Arguments +Matrix: a square matrix + + + + + +Dimension + +dimension(Vector) +Returns the number of elements in a vector. + +Arguments +Vector: a vector + + + + + +Element + +element(Matrix/vector, Row/index[, Column]) +Returns the element at specified position in a matrix (row and column) or vector (index). + +Arguments +Matrix/vector: a vector +Row/index: an integer >= 1 +Column: an integer (optional, default: 0) + + + + + +Elements + +elements(Matrix or vector) +Returns the number of elements in a matrix or vector. + +Arguments +Matrix or vector: a vector + + + + + +Export To CSV File + +export(Matrix/vector, Filename[, Separator]) +Exports a matrix to a CSV data file. + +Arguments +Matrix/vector: a vector +Filename: a valid file name +Separator: a text string (optional, default: ,) + + + + + +Extract Column as Vector + +column(Matrix, Column) +Returns a column in a matrix as a vector. + +Arguments +Matrix: a matrix +Column: an integer >= 1 + + + + + +Extract row as vector + +row(Matrix, Row) +Returns a row in a matrix as a vector. + +Arguments +Matrix: a matrix +Row: an integer >= 1 + + + + + +Generate Vector + +genvector(Function, Min, Max, Dimension / Step size[, Variable][, Use step size]) +Returns a vector generated from a function with a variable (default x) running from min to max. The fourth argument is either the requested number of elements if the sixth argument is false (default) or the step between each value of the variable. + +Arguments +Function: a free value +Min: a free value +Max: a free value +Dimension / Step size: a free value +Variable: an unknown variable/symbol (optional, default: x) +Use step size: a boolean (0 or 1) (optional, default: 0) + + + + + +Identity + +identity(Matrix or rows/columns) +Returns the identity matrix of a matrix or with specified number of rows/columns. + +Arguments +Matrix or rows/columns: an integer >= 1 or a square matrix + + + + + +Load CSV File + +load(Filename[, First data row][, Separator]) +Returns a matrix imported from a CSV data file. + +Arguments +Filename: a valid file name +First data row: an integer >= 1 (optional, default: 1) +Separator: a text string (optional, default: ,) + + + + + +Matrix Area + +area(Matrix, Start row, Start column, End row, End column) +Returns a part of a matrix. + +Arguments +Matrix: a matrix +Start row: an integer >= 1 +Start column: an integer >= 1 +End row: an integer >= 1 +End column: an integer >= 1 + + + + + +Matrix Inverse + +inverse(Matrix) +Calculates the inverse of a matrix. The inverse is the matrix that multiplied by the original matrix equals the identity matrix (AB = BA = I). + +Arguments +Matrix: a square matrix + + + + + +Merge Vectors + +mergevectors(Vector 1[, Vector 2], ...) +Returns a vector with the elements from two vectors. + +Arguments +Vector 1: a vector +Vector 2: a vector (optional) + + + + + +Norm (length) + +norm(Vector) +Calculates the norm/length of a vector. + +Arguments +Vector: a vector + + + + + +Permanent + +permanent(Matrix) +Calculates the permanent of a matrix. The permanent differs from a determinant in that all signs in the expansion by minors are taken as positive. + +Arguments +Matrix: a square matrix + + + + + +Rank + +rank(Vector[, Ascending]) +Returns a vector with values of elements replaced with their mutual ranks.ex. rank([6, 1, 4]) = [3, 1, 2] + +Arguments +Vector: a vector +Ascending: a boolean (0 or 1) (optional, default: 1) + + + + + +Rows + +rows(Matrix) +Returns the number of rows in a matrix. + +Arguments +Matrix: a matrix + + + + + +Sort + +sort(Vector[, Ascending]) +Returns a sorted vector.ex. sort([6, 1, 4])=[1, 4, 6] + +Arguments +Vector: a vector +Ascending: a boolean (0 or 1) (optional, default: 1) + + + + + +Transpose + +transpose(Matrix) +Returns the transpose of a matrix. + +Arguments +Matrix: a matrix + + + + + +Vector Limits + +limits(Vector, Lower limit, Upper limit) +Returns a part of a vector between two positions. + +Arguments +Vector: a vector +Lower limit: an integer +Upper limit: an integer + + + + + + + +Miscellaneous + + +Body Mass Index (BMI) + +bmi(Weight, Length) +Calculates the Body Mass Index. The resulting BMI-value is sometimes interpreted as follows (although varies with age, sex, etc.):Underweight < 18.5Normal weight 18.5-25Overweight 25-30Obesity > 30Note that you must use units for weight (ex. 59kg) and length (ex. 174cm). + +Arguments +Weight: a free value +Length: a free value + + + + + +Kronecker Delta + +kronecker(Value 1 (i)[, Value 2 (j)]) +Returns 0 if i != j and 1 if i = j. + +Arguments +Value 1 (i): a real number +Value 2 (j): a real number (optional, default: 0) + + + + + +Riemann Zeta + +zeta(Integral point) + +Arguments +Integral point: an integer >= 1 and <= 2.1474836E9 + + + + + +Roman Number + +roman(Roman number) + +Arguments +Roman number: a text string + + + + + + + +Number Theory + + +Absolute Value + +abs(Value) + +Arguments +Value: a number + + + + + +Greatest Common Divisor + +gcd(1st value, 2nd value) + +Arguments +1st value: a free value that is rational (polynomial) +2nd value: a free value that is rational (polynomial) + + + + + +Least Common Multiplier + +lcm(1st value, 2nd value) + +Arguments +1st value: a free value that is rational (polynomial) +2nd value: a free value that is rational (polynomial) + + + + + + +Arithmetics + + +Add + +add(Terms) + +Arguments +Terms: a vector + + + + + +Denominator + +denominator(Number) + +Arguments +Number: a rational number + + + + + +Divide + +divide(Numerator, Denominator) + +Arguments +Numerator: a free value +Denominator: a free value + + + + + +Modulus + +mod(Numerator, Denominator) + +Arguments +Numerator: a real number +Denominator: a real number that is nonzero + + + + + +Multiply + +multiply(Factors) + +Arguments +Factors: a vector + + + + + +Negate + +neg(Value) + +Arguments +Value: a free value + + + + + +Numerator + +numerator(Number) + +Arguments +Number: a rational number + + + + + +Raise + +raise(Base, Exponent) + +Arguments +Base: a free value +Exponent: a free value + + + + + +Reciprocal + +inv(Value) + +Arguments +Value: a free value + + + + + +Remainder + +rem(Numerator, Denominator) + +Arguments +Numerator: a real number +Denominator: a real number that is nonzero + + + + + +Signum + +sgn(Number) + +Arguments +Number: a number + + + + + +Subtract + +subtract(Terms) + +Arguments +Terms: a vector + + + + + + + +Integers + + +Even + +even(Number) + +Arguments +Number: an integer + + + + + +Odd + +odd(Number) + +Arguments +Number: an integer + + + + + + + +Number Bases + + +Binary + +bin(Binary number) +Returns a decimal integer from a binary number + +Arguments +Binary number: a text string + + + + + +Hexadecimal + +hex(Hexadecimal number) +Returns a decimal value from a hexadecimal number + +Arguments +Hexadecimal number: a text string + + + + + +Number Base + +base(Number, Base) +Returns a decimal integer from a number of specified base between 2 and 36 + +Arguments +Number: a text string +Base: an integer >= 2 and <= 36 + + + + + +Octal + +oct(Octal number) +Returns a decimal integer from an octal number + +Arguments +Octal number: a text string + + + + + + + +Polynomials + + +Coefficient + +coeff(Polynomial, Number[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Number: an integer >= 0 +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Content Part + +pcontent(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Leading Coefficient + +lcoeff(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Lowest Degree (Valuation) + +ldegree(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Polynomial Degree + +degree(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Primitive Part + +primpart(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Trailing Coefficient + +tcoeff(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + +Unit Part + +punit(Polynomial[, Variable]) + +Arguments +Polynomial: a free value that is rational (polynomial) +Variable: an unknown variable/symbol (optional, default: x) + + + + + + + +Rounding + + +Extract Fractional Part + +frac(Value) + +Arguments +Value: a real number + + + + + +Extract Integer Part + +int(Value) + +Arguments +Value: a real number + + + + + +Round + +round(Value) + +Arguments +Value: a real number + + + + + +Round Downwards + +floor(Value) + +Arguments +Value: a real number + + + + + +Round Towards Zero + +trunc(Value) + +Arguments +Value: a real number + + + + + +Round Upwards + +ceil(Value) + +Arguments +Value: a real number + + + + + + + + +Statistics + + +Random Number + +rand([Ceil]) +Generates a pseudo-random number. Returns a real number between 0 and 1, if ceil is zero (default), or an integer between 1 and (including) ceil. + +Arguments +Ceil: an integer (optional, default: -1) + + + + + +Random Number Between Limits + +randbetween(Bottom, Top) +Returns an integer between (including) bottom and top. + +Arguments +Bottom: an integer +Top: an integer + + + +Requirement +"Bottom"<="Top" + + + + + + +Descriptive Statistics + + +Decile + +decile(Data, Decile) + +Arguments +Data: a vector +Decile: a number >= 0 and <= 100 + + + + + +Interquartile Range + +iqr(Data) +Calculates the difference between the first and third quartile. + +Arguments +Data: a vector + + + + + +Max + +max(Vector) +Returns the highest value. + +Arguments +Vector: a vector + + + + + +Median + +median(Data) + +Arguments +Data: a vector + + + + + +Min + +min(Vector) +Returns the lowest value. + +Arguments +Vector: a vector + + + + + +Mode + +mode(Vector) +Returns the most frequently occuring value. + +Arguments +Vector: a vector + + + + + +Number of Samples + +number(Data) +Returns the number of samples. + +Arguments +Data: a vector + + + + + +Percentile + +percentile(Vector, Percentile (%)) + +Arguments +Vector: a vector +Percentile (%): a number > 0 and < 99 + + + + + +Quartile + +quartile(Data, Quartile) + +Arguments +Data: a vector +Quartile: an integer >= 1 and <= 3 + + + + + +Range + +range(Data) +Calculates the difference between the min and max value. + +Arguments +Data: a vector + + + + + +Sum (total) + +total(Data) + +Arguments +Data: a vector + + + + + + + +Distribution + + +Logistic Distribution + +logistic(X, Scale) +Returns the probability density p(x) at x for a logistic distribution with scale parameter. (from Gnumeric) + +Arguments +X: a free value +Scale: a number >= 0 + + + + + +Pareto Distribution + +pareto(X, Exponent, Scale) +Returns the probability density p(x) at x for a Pareto distribution with exponent and scale. (from Gnumeric) + +Arguments +X: a free value +Exponent: a number >= 0 +Scale: a number >= 0 + + + + + +Rayleigh Distribution + +rayleigh(X, Sigma) +Returns the probability density p(x) at x for a Rayleigh distribution with scale parameter sigma. (from Gnumeric) + +Arguments +X: a free value +Sigma: a number >= 0 + + + + + +Rayleigh Tail Distribution + +rayleightail(X, Lower limit, Sigma) +Returns the probability density p(x) at x for a Rayleigh tail distribution with scale parameter sigma and a lower limit. (from Gnumeric) + +Arguments +X: a free value +Lower limit: a free value +Sigma: a number >= 0 + + + + + + + +Means + + +Geometric Mean + +geomean(Data) + +Arguments +Data: a vector + + + + + +Harmonic Mean + +harmmean(Data) + +Arguments +Data: a vector + + + + + +Mean + +mean(Data) +average +Arguments +Data: a vector + + + + + +Quadratic Mean (RMS) + +rms(Data) + +Arguments +Data: a vector + + + + + +Trimmed Mean + +trimmean(Data, Trimmed percentage (at each end)) + +Arguments +Data: a vector +Trimmed percentage (at each end): a free value + + + + + +Weighted Mean + +weighmean(Data, Weights) + +Arguments +Data: a vector +Weights: a vector + + + + + +Winsorized Mean + +winsormean(Data, Winsorized percentage (at each end)) + +Arguments +Data: a vector +Winsorized percentage (at each end): a free value + + + + + + + +Moments + + +Covariance + +cov(Data 1, Data 2) +covar +Arguments +Data 1: a vector +Data 2: a vector + + + + + +Mean Deviation + +meandev(Data) + +Arguments +Data: a vector + + + + + +Pooled Variance + +poolvar(Data 1, Data 2) + +Arguments +Data 1: a vector +Data 2: a vector + + + + + +Standard Deviation (entire population) + +stdevp(Data) + +Arguments +Data: a vector + + + + + +Standard Deviation (random sampling) + +stdev(Data) + +Arguments +Data: a vector + + + + + +Standard Error + +stderr(Data) + +Arguments +Data: a vector + + + + + +Variance (entire population) + +varp(Data) + +Arguments +Data: a vector + + + + + +Variance (random sampling) + +var(Data) + +Arguments +Data: a vector + + + + + + + +Regression + + +Pearson's Correlation Coefficient + +pearson(Data 1, Data 2) +correl +Arguments +Data 1: a vector +Data 2: a vector + + + +Requirement +dimension("Data 1")=dimension("Data 2") + + + + + +Spearman's Rho + +spearman(Data 1, Data 2) + +Arguments +Data 1: a vector +Data 2: a vector + + + +Requirement +dimension("Data 1")=dimension("Data 2") + + + + + +Statistical Correlation + +cor(Data 1, Data 2) + +Arguments +Data 1: a vector +Data 2: a vector + + + + + + + +Statistical Tests + + +Paired T-Test + +pttest(Data 1, Data 2) + +Arguments +Data 1: a vector +Data 2: a vector + + + + + +Unpaired T-Test + +ttest(Data 1, Data 2) + +Arguments +Data 1: a vector +Data 2: a vector + + + + + + + + +Step Functions + + +Heaviside Step Function + +heaviside(Value) +Discontinuous function also known as "unit step function". Returns 0 if x < 0, 1 if x > 0, and 1/2 if x = 0. + +Arguments +Value: a real number + + + + + +Logit Transformation + +logit(Value) + +Arguments +Value: a number + + + + + +Ramp Function + +ramp(Value) + +Arguments +Value: a real number + + + + + +Rectangular Function + +rectangular(Value) + +Arguments +Value: a real number + + + + + +Sigmoid Function + +sigmoid(Value) + +Arguments +Value: a number + + + + + +Triangular Function + +triangular(Value) + +Arguments +Value: a real number + + + + + + + +Trigonometry + + +Cosecant + +csc(Angle) + +Arguments +Angle: an angle or a number (using the default angle unit) + + + + + +Cosine + +cos(Angle) + +Arguments +Angle: an angle or a number (using the default angle unit) + + + + + +Cotangent + +cot(Angle) + +Arguments +Angle: an angle or a number (using the default angle unit) + + + + + +Hyperbolic Cosecant + +csch(argument 1) + +Arguments +1: a free value + + + + + +Hyperbolic Cosine + +cosh(argument 1) + +Arguments +1: a number + + + + + +Hyperbolic Cotangent + +coth(argument 1) + +Arguments +1: a free value + + + + + +Hyperbolic Secant + +sech(argument 1) + +Arguments +1: a free value + + + + + +Hyperbolic Sine + +sinh(argument 1) + +Arguments +1: a number + + + + + +Hyperbolic Tangent + +tanh(argument 1) + +Arguments +1: a free value + + + + + +Inverse Cosecant + +acsc(argument 1) + +Arguments +1: a free value + + + + + +Inverse Cosine + +acos(argument 1) + +Arguments +1: a number + + + + + +Inverse Cotangent + +acot(argument 1) + +Arguments +1: a free value + + + + + +Inverse Hyperbolic Cosecant + +acsch(argument 1) + +Arguments +1: a free value + + + + + +Inverse Hyperbolic Cosine + +acosh(argument 1) + +Arguments +1: a number + + + + + +Inverse Hyperbolic Cotangent + +acoth(argument 1) + +Arguments +1: a free value + + + + + +Inverse Hyperbolic Secant + +asech(argument 1) + +Arguments +1: a free value + + + + + +Inverse Hyperbolic Sine + +asinh(argument 1) + +Arguments +1: a number + + + + + +Inverse Hyperbolic Tangent + +atanh(argument 1) + +Arguments +1: a number + + + + + +Inverse Secant + +asec(argument 1) + +Arguments +1: a free value + + + + + +Inverse Sine + +asin(argument 1) + +Arguments +1: a number + + + + + +Inverse Tangent + +atan(argument 1) + +Arguments +1: a number + + + + + +Radians to Default Angle Unit + +radtodef(Radians) + +Arguments +Radians: a free value + + + + + +Secant + +sec(Angle) + +Arguments +Angle: an angle or a number (using the default angle unit) + + + + + +Sine + +sin(Angle) + +Arguments +Angle: an angle or a number (using the default angle unit) + + + + + +Tangent + +tan(Angle) + +Arguments +Angle: an angle or a number (using the default angle unit) + + + + + + + +Utilities + + +ASCII Char + +char(Value) + +Arguments +Value: an integer >= 32 and <= 127 + + + + + +ASCII Value + +code(Character) + +Arguments +Character: a text string that fulfills the condition: "len(\x) = 1" + + + + + +Concatenate Strings + +concatenate(Text string 1[, Text string 2], ...) + +Arguments +Text string 1: a text string +Text string 2: a text string (optional) + + + + + +Custom Sum of Elements + +csum(First element, Last element, Initial value, Function, Value variable, Element variable, Vector[, Index variable][, Vector variable]) + +Arguments +First element: an integer +Last element: an integer +Initial value: a free value +Function: a free value +Value variable: an unknown variable/symbol +Element variable: an unknown variable/symbol +Vector: a vector +Index variable: an unknown variable/symbol (optional, default: "") +Vector variable: an unknown variable/symbol (optional, default: "") + + + + + +Display Error + +error(Message) + +Arguments +Message: a text string + + + + + +Display Message + +message(Message) + +Arguments +Message: a text string + + + + + +Display Warning + +warning(Message) + +Arguments +Message: a text string + + + + + +Function + +function(Expression, Arguments) + +Arguments +Expression: a text string +Arguments: a vector + + + + + +Length of string + +len(Text) + +Arguments +Text: a text string + + + + + +Process Matrix Elements + +processm(Function, Element variable, Matrix[, Row variable][, Column variable][, Matrix variable]) + +Arguments +Function: a free value +Element variable: an unknown variable/symbol +Matrix: a matrix +Row variable: an unknown variable/symbol (optional, default: "") +Column variable: an unknown variable/symbol (optional, default: "") +Matrix variable: an unknown variable/symbol (optional, default: "") + + + + + +Process Vector Elements + +process(Function, Element variable, Vector[, Index variable][, Vector variable]) + +Arguments +Function: a free value +Element variable: an unknown variable/symbol +Vector: a vector +Index variable: an unknown variable/symbol (optional, default: "") +Vector variable: an unknown variable/symbol (optional, default: "") + + + + + +RPN Stack Register + +register(Index) +Returns the value of a RPN stack register. + +Arguments +Index: an integer >= 1 + + + + + +RPN Stack Vector + +stack() +Returns the RPN stack as a vector. + + + +Replace + +replace(Expression, Original value, New value[, Precalculate expression]) +Replaces a certain value in an expression with a new value. The expression is calculated before the replacement if the fourth argument is true. + +Arguments +Expression: a free value +Original value: a free value +New value: a free value +Precalculate expression: a boolean (0 or 1) (optional, default: 0) + + + + + +Save as Variable + +save(Value, Name[, Category][, Title]) + +Arguments +Value: a free value +Name: a text string +Category: a text string (optional, default: Temporary) +Title: a text string (optional) + + + + + +Select Vector Elements + +select(Vector, Condition[, Element variable][, Select first match]) + +Arguments +Vector: a free value +Condition: a free value +Element variable: an unknown variable/symbol (optional, default: x) +Select first match: a boolean (0 or 1) (optional, default: 0) + + + + + +Strip Units + +nounit(Expression) +strip_unitsRemoves all units from an expression. The expression is calculated before the removal. + +Arguments +Expression: a free value + + + + + +Title + +title(Name) + +Arguments +Name: a valid function, unit or variable name + + + + + + + diff --git a/doc/en/gnuplot.png b/doc/en/gnuplot.png new file mode 100644 index 0000000..62cdd01 Binary files /dev/null and b/doc/en/gnuplot.png differ diff --git a/doc/en/import-csv.png b/doc/en/import-csv.png new file mode 100644 index 0000000..12561d3 Binary files /dev/null and b/doc/en/import-csv.png differ diff --git a/doc/en/index.docbook b/doc/en/index.docbook new file mode 100644 index 0000000..3ae43a3 --- /dev/null +++ b/doc/en/index.docbook @@ -0,0 +1,1515 @@ + +Qalculate! 0.9.7"> + + + + + + + +]> + + + + +The &qalculate_tde; Handbook + + + + + +Niklas Knutsson + +
nq@altern.org
+
+
+
+ + + + +2005 +Niklas Knutsson + + + +&FDLNotice; + + + +2007-05-25 +0.9.7 + + + +&qalculate_tde; is a multi-purpose desktop calculator for GNU/Linux. +It is small and simple to use but with much power and versatility underneath. +Features include customizable functions, units, arbitrary precision, plotting, and a user-friendly +interface. + + + + +KDE +qalculate-tde +calculator +math + + +
+ + +Introduction + +Qalculate! is not your regular software replication of the cheapest available calculator. Qalculate! aims to make full use of the superior interface, power and flexibility of modern computers. + + +The center of attention in Qalculate! is the expression entry, Instead of entering each number in a mathematical expression separately, you can directly write the whole expression and later modify it. Just enter an expression as you would write it on paper, press Enter and voila! + + +The interpretation of expressions is flexible and fault tolerant, and if you nevertheless do something wrong, Qalculate! will tell you so. Not fully solvable expressions are however not errors. Qalculate! will simplify as far as it can and answer with an expression. + + +In addition to numbers and arithmetic operators, an expression may contain any combination of variables, units, and functions. These are immediately accessible from the user interface — the menu bar, the managers, the calculator keypad, and automatic completion. + + +Qalculate! also has some special tools to increase your efficiency, including a number base conversion dialog and a simple plotting interface. + + +Although use of Qalculate! for simple calculations should be natural and self-explanatory, reading the rest of the manual can help you maximize your productivity and discover some maybe unexpected features. More advanced users should read on and discover a large number of customization options and the ability to create and modify your own variables, functions and units directly from the user interface. + + + + +User Interface + +Main Window +
+ Main Window + + + + + + + +
+ +The main window provides a menu bar, the expression entry, the result display and a calculator keypad or history view which can be shown/hidden by clicking on Keypad and History, respectively. There are three buttons to the right of the expression entry and the result display. The upper button performs calculation of the entered expression (same as Enter), the one below saves the current result as a variable (see ), while the last button opens a dialog for conversion of units in the result (see ). When non-default options for the interpretion of expressions have been selected, the choice will be indicated in a small status area below the expression entry, to the right. + +
+ +Expression Entry + +The expression entry is the most important part of the Qalculate! user interface. The normal calculation procedure in Qalculate! is to type in a mathematical expression (ex. 5+5) and press Enter (or click Execute). The result (10) is then displayed below the expression entry in the result display. + +
+ Completion + + + + + + + +
+ +Qalculate! helps out with the expression by giving a list of possible endings to words representing functions, variables and units. The list will narrow with each letter typed. Select an item in the list and the name will be completed. If a function was selected, parenthesis will be added and the position moved for immediate entry of arguments. + + +As the expression is typed in, the area directly direclty below the expression entry, to the left, will show useful information. By default the calculator's interpretation of the expression is shown (ex. 5 * meter for 5m). The interpretation will be displayed in red (configurable) if there are errors in the expression or in blue for lesser errors (for example too many arguments in a function). If the last typed in text represents a function, and arguments are about to be entered, the functions name and its arguments will be displayed. The first argument in the information text is highlighted and includes information about its type and restrictions and when an argument has been entered, the next will be highlighted. + + +After execution of an expression, the whole expression will be marked. This normally means that if something new is entered, the old expression will be overwritten. If, however, an operator (+, −, *, /, ^) is entered first, the old expression will instead be the target of action. The operator will then apply to the whole expression, which is put in parenthesis. This works on all marked ranges, meaning that this way an expression can conveniently be put in parenthesis. Functions set the selection as their first argument. + + +The Up and Down keys will access previously entered expressions. With focus in the expression entry, Up traverses backwards in the expression history and Down forward. + + +The font used for the expression entry can be selected in the preferences dialog (EditConfigure Qalculate!). + +
+ +Result Display + +The result of calculations is displayed in the open area below the expression entry. The font used for the result display can be selected in the preferences dialog (EditConfigure Qalculate!). Use of Unicode signs can be turned off in the same dialog. Otherwise Qalculate! will try to make the result as fancy as possible and print π for pi, √ for sqrt, € for euro, and so on. Information about customization of the mathematical result output is available in . + + +In front of the result an equals or approximately equals sign is shown. This indicates whether Qalculate! was able to calculate/display the result exact or only approximate, in the current mode. + + +The result display has a context menu, which pops up when clicking with the right mouse button anywhere in the field. This menu provides a subset of the display alternatives from the mode menu () and some actions from the edit menu (). See more info in . Show Parsed Expression shows how the entered expression was interpreted before the calculation leading to the current result. + + +When you move the mouse over parts of the result, descriptions will pop up for variables, functions and units. This will only work if you have tooltips enabled in KDE. You can also show this information by double clicking or selecting Show Object Info in the context menu. For matrices and vectors, this will open a window with a spreadsheet-like table displaying the contents of the matrix/vector. + + +To copy the result, either select EditCopy Result, or mark and copy the text from the result display or history. Note that all results are not displayed in the result display as an expression which can be used directly in the expression entry. This is true for divisions, powers and vectors. For example, when the result "x^5" is marked and copied, the power sign will be lost. + + + +Keypad + +The keypad provides access to a fairly small set of traditional calculator buttons, which work as expected. The top buttons (from left to right) toggles exact calculation, toggles fractional number display, selects display mode and selects number base in result (see ). +
+ Keypad + + + + + + + +
+
+
+ +Calculation History + +The history view provides access to previous calculation results (50 rows are reloaded on restart). Previous expressions and results, as well as errors and warnings, are displayed in plain text and can be marked and copied (from the right-button context menu or with CtrlC) to the expression entry or elsewhere. +
+ Calculation History + + + + + + + +
+ +
+
+ +Menu Bar + +The menus in the menu bar provides access to most of the functionality of Qalculate!. Their contents are listed and described below. + + + File Menu + + + + + + Menu Item + Description + + + + + New + Submenu for creation of new objects. See . + + + Import CSV File... + Opens a dialog for import of a data file as a matrix or vectors. + + + Export CSV File... + Opens a dialog for export of a matrix or vector to a data file. + + + Store Result... (CtrlS) + Stores the current result as a variable. See . + + + Save Result Image... + Saves the result display to a PNG image. + + + Save Definitions + Saves all user definitions (variables, functions and units). + + + Update Exchange Rates + Downloads current exchange rates from the Internet. + + + Plot Functions/Data + Opens the plot dialog. See . + + + Convert Number Bases + Opens the number bases converter. See + + + Periodic Table + Shows a periodic table, with property values which can be inserted in the expression, in a new window. + + + Quit (CtrlQ) + Exits Qalculate! + + + +
+ + New Menu + + + + + + Menu Item + Description + + + + + Variable + Opens the variable edit dialog for creation of a new variable. + + + Matrix + Opens a dialog for entry of a new matrix variable. + + + Vector + Opens a dialog for entry of a new vector variable. + + + Unknown Variable + Opens the variable edit dialog for creation of a new unknown variable. + + + Function + Opens the function edit dialog for creation of a new function. + + + Data Set + Opens the data set edit dialog for creation of a new data set. + + + Unit + Opens the unit edit dialog for creation of a new unit. + + + +
+ + Edit Menu + + + + + + Menu Item + Description + + + + + Manage Variables (F2) + Opens the variable manager. See . + + + Manage Functions (F3) + Opens the function manager. See . + + + Manage Units (F4) + Opens the unit manager. See . + + + Manage Data Sets + Opens the data set manager. + + + Factorize + Factorizes the current result. For multivariate rational polynomials, only square free factorization is supported. + + + Simplify + Simplifies the current result. Note that easy simplifications are always automatically performed. + + + Set Unknowns... + Opens a dialog where the values of unknown variables in the result can be set and the result recalculated. + + + Convert To Unit + Submenu with units. Select a unit to convert the current result. + + + Set Prefix + Submenu for choice of unit prefix in current result. + + + Convert To Unit Expression (CtrlT) + Opens the convert to unit dialog for conversion of result to custom unit expression. See . + + + Convert To Base Units + Splits up unit(s) in the current result into base units. + + + Convert To Best Unit + Tries to convert the units in the current result so that as few units as possible is used. Base units are prioritized. + + + Insert Matrix + Opens a dialog where you can create a matrix in a spreadsheet-like table and insert into the expression entry. If selected expression text is a matrix, then the matrix is edited. + + + Insert Vector + Opens a dialog where you can create a vector in a spreadsheet-like table and insert into the expression entry. If selected expression text is a vector, then the vector is edited. + + + Copy Result (F5) + Copies the current result to the clipboard. + + + Configure Qalculate! + Opens the preferences dialog, which controls settings for visual appearance and start/exit actions. + + + Configure Shortcuts... + Opens a dialog for configuring keyboard shortcuts. + + + +
+ + Mode Menu + + + + + + Menu Item + Description + + + + + Number Base + Submenu with a list of number bases (binary, octal, decimal, hexadecimal, sexagesimal, time format, and other bases, and roman numerals) to select for result display, and a menu item (CtrlB) for opening a dialog to switch number bases in expression (input) and result (output). + + + Numerical Display + Submenu which selects numerical display mode. See . + + + Fractional Display + Submenu which selects decimal, fractional or combined fractional display. See . + + + Unit Display + Submenu which controls the display of units and prefixes. See . + + + Angle Unit + Submenu which sets the default angle unit for trigonometric functions. + + + Abbreviate Names + Toggles on/off use of abbreviation for unit, prefix, variable and function names in result display. + + + Enabled Objects + Submenu which enables/disables variables, functions, units and unknowns (will not affect defined unknown variables and quoted unknowns), and calculation of variables (If calculation of variables is not on, all variables will be treated as unknown). Here you can also disable complex and infinite results. + + + Approximation + Submenu which switches between different approximation modes. + + + Assumptions + Submenu which changes default assumptions for unknown variables. + + + Algebraic Mode + Submenu with options to automatically simplify or factorize the final result. Note that even if this is set to none, easy simplifications will be performed. In this menu, the option toggle on/off use of the assumption that unknown denominators not are zero is also found. This alternative makes it possible to avoid the situation where expressions such as (x-1)/(x-1) can not be further simplified because the denominator might be zero (if x equals 1). + + + Read Precision + Enables/disables interpretation of input numbers with decimals as approximate with a precision equal to the number of digits (after preceding zeroes). + + + Limit Implicit Multiplication + Activates/deactivates limits to implicit multiplication when parsing and displaying expressions. For details see + + + RPN Mode (CtrlR) + Toggles Reverse Polish Notation mode on/off. For details see + + + RPN Syntax + Toggles use of Reverse Polish Notation syntax in expressions on/off. + + + Precision + Opens a dialog to change precision in calculations. + + + Decimals + Opens a dialog to change displayed number of decimals. + + + Meta Modes + Provides a list of available meta modes for loading and menu items to save and delete modes. + + + Save Default Mode + Saves the current calculator mode as the startup default. + + + +
+ + Functions Menu + + + + + + Menu Item + Description + + + + + (Recent functions list) + Select a function to open the insert function dialog. + + + (Function list) + Select a function to open the insert function dialog. + + + +
+ + Variables Menu + + + + + + Menu Item + Description + + + + + (Recent variables list) + Select a variable to insert it into the expression entry. + + + (Variable list) + Select a variable to insert it into the expression entry. + + + +
+ + Units Menu + + + + + + Menu Item + Description + + + + + (Recent units list) + Select a unit to insert it into the expression entry. + + + (Unit list) + Select a unit to insert it into the expression entry. + + + +
+ + Help Menu + + + + + + Menu Item + Description + + + + + Qalculate! Handbook(F1) + Invokes the KDE Help system starting at the Qalculate! help pages. (this document). + + + What's This?(ShiftF1) + Changes the mouse cursor to a combination arrow and question mark. Clicking on items within Qalculate! will open a help window (if one exists for the particular item) explaining the item's function. + + + About Qalculate! + This will display version and author information. + + + About KDE + This displays the KDE version and other basic information. + + + +
+ +
+ +Variable/Function/Unit Managers + +The manager windows provide a structural way of working with variables, functions and units (collectively referred to as objects). The managers for the three different objects are essentially similar. They can be opened from the edit menu. F2, F3 and F4 can also be used for variables, functions and units respectively. The function manager can also be opened with the f(x) button in the keypad. + +
+ Variable Manager + + + + + + + +
+ +To the left is a category tree and beside that is a list of all objects in the selected category, including all subcategories. Objects without a category are put under Uncategorized. The top category, All, provides a list of all objects, except those that are deactivated and available in the second top-level category — Inactive. The object list does, in addition to descriptive names, for variables have an extra column for values of variables, and units have additional columns for abbreviation/singular/plural and base unit. + + +The buttons on the right work on the selected object in the list. New opens a dialog for creation of a new object, while Edit opens the same dialog to edit the selected unit. Insert inserts the object into the expression entry in the main window, Delete removes the object and (De)activate toggles recognition in expressions on/off. The unit manager has an additional button for conversion of the current result and the variable manager a button for export to a data file. + +
+ Function Manager + + + + + + + +
+ +The function manager has a description box at the bottom, which shows the syntax, description and arguments of the selected function. + +
+ Unit Manager + + + + + + + +
+ +The unit manager has an area for quick conversion between units. This converts between the selected unit in the list and the selected unit in the option menu. The menu contains the same units that are available in the list. Units are converted by specification of a quantity, in the entry next to the unit to convert from, followed by Enter. + + +For more information about variables, functions and units, see , and . + +
+ +Convert Number Bases Dialog + +The number bases dialog, accessible from the File Menu, is an efficient and convenient tool for conversion between binary, octal, decimal and hexadecimal numbers. This dialog contains entries for each number base. When a number is typed in any of the entries, the others are automatically updated to display the current number in their format. Numbers, or expressions, entered follow the same rules as expressions in the main expression entry. +
+ Convert Number Bases Dialog + + + + + + + +
+
+
+
+ + +Expressions + +Expressions are mathematical statements. Mathematical questions are asked through expressions, which contains objects tied together with operators. The result of an expression may also be an expression, if the result is not a single object. Apples and oranges can be mixed, but the result will hold them apart. Qalculate! knows algebra. + + +Objects + +In Qalculate! mathematical entities, such as numbers and variables, are referred to as objects. The recognized object types are listed below. + + + + + Numbers + + These are the regular numbers composed by digits 0-9 and a decimal sign — a dot, or a comma if it is the default decimal point in the locale/language used. If comma is used as decimal sign, the dot is still kept as an alternative decimal sign, if not explicitely turned off in the preferences dialog with Ignore dots in number (to allow it to be used as thousand separator instead). Numbers include integers, real numbers, and complex numbers. The imaginary part of complex numbers are written with as regular number followed by the special variable i, which represents the square root of -1 (ex. 2 + 3i). Spaces between digits are ignored (5 5 = 55). E (or e) can be considered as a shortcut for writing many zeroes and is equivalent to multiplication by 10 raised to the power of the right-hand value (ex. 5E3 = 5000). + Sexagesimal numbers (and time) can be entered directly using colons (ex. 5:30 = 5.5). A number immediately preceeded 0b, 0o or 0x are interpreted as a number with base 2, 8 or 16, respectively (if the default base is 10, ex. 0x3f = 63). The number base in can also be selected, either by using the base(), bin(), oct(), hex() and roman() functions, or by setting the base used for all numbers in the whole expression from ModeNumber BaseSelect Result and Expression Base.... + + + + Vectors and Matrices + + A matrix is a two-dimensional rectangular array of mathematical objects. Vectors are matrices with only one row or column, thus one-dimensional sequences of objects, Vectors and matrices are generated by vector(), matrix() and similar functions, or stored in a variable. Syntax in the form of [1, 2, 3, 4] and [[1, 2], [3, 4]] can also be used. + + + + Variables/Constants + + See . + + + + Functions + + See . + + + + Units and Prefixes + + Qalculate! understands abbreviated, plural and singular forms of unit names and prefixes. Prefixes must be put immediately before the unit to be interpreted as prefixes — 5 mm = 0.005 m, but 5 m m = 5 m^2. Also, for convenience units allow the power operator to be left out. A number following immediately after a unit is interpreted as an exponent (ex. 5 m2 = 5 m^2). This does not apply to currencies, as they might be put in front of the quantity. More information in . + + + + Unknowns + + Unknowns are text strings without any associated value. If Qalculate! finds a character that are not associated with any variable, function or unit in an expression, then it will be regarded as an unknown variable. These are temporary unknown variables with default assumptions. Unknowns can also be explicitly entered by putting a text string in quotes. This is also necessary for undefined unknown variables with more than one character (ex.xy is just one object, while xy means x * y). See . + + + + Text + + This category represent a number of different function argument types, such as regular text, dates and file names. They can, but do not need to be put in quotes except when containing the argument separator (, or ;). + + + + + +To avoid confusion, functions, units, variables and unknown variables can independently be disabled. + + +Variables, functions and units are all accessible in the menus and in the variable, function and unit managers, If their names are not remembered. Functions accessed this way has some extra conveniences. If the function has at least one argument, a dialog will pop up where arguments can be entered and a description of the +function and its arguments is available. + + +Qalculate! can handle most commonly used symbols for certain variables, functions and units, even though most are difficult to find on a keyboard. These include π for pi, √ for sqrt, € for euro, and so on. Most importantly it is possible to copy these symbols when used in the result. + + +For more information about variables, functions and units, see , and . + + + +Operators + +The following operators are defined in Qalculate! and may be used in expressions. + + + Operators + + + + + + + + + Operation + Symbol + Description + Example + Result + + + + + Addition + + + Adds the right value to the left value. + 1 + 1 + 2 + + + Subtraction + + Subtracts the right value from the left value. + 1 − 1 + 0 + + + Multiplication + ⋅ or * + Multiplies the left value by the right value. + 2 * 2 + 4 + + + Division + / + Divides the left value by the right value. + 2 / 2 + 1 + + + Exponent + ^ + Raises the left value by the right value. Can also be typed as **. Note that x^y^z equals x^(y^z), and not (x^y)^z. + 2^3 + 8 + + + 10^x + E + Multiplies the left value with 10 raised to the power of the right value. Equivalent to the exponential number format in result display. E is as much an operator as part of numbers. + 1E3 + 1000 + + + Parenthesis + ( and ) + Evaluates the expression in parenthesis first. + 5 * (1 + 1) + 10 + + + Less than + < + Returns 1 for true, if the left value is is less than the right, and 0 for false. + 1 < 2 + 1 + + + Greater than + > + Returns 1 for true, if the left value is greater than the right, and 0 for false. + 1 >2 + 0 + + + Less than or equal + ≤ or <= + Returns 1 for true, if the left value is less than or equal the right, and 0 for false. + 1 <= 2 + 1 + + + Greater than or equal + ≥ or >= + Returns 1 for true, if the left value is greater than or equal the right, and 0 for false. + 1 >= 2 + 0 + + + Equals + = + Returns 1 for true, if the left value equals the right, and 0 for false. + 1 = 2 + 0 + + + Not equals + ≠ or != + Returns 1 for true, if the left value not equals the right, and 0 for false. + 1 != 2 + 1 + + + Logical NOT + ! + Returns 1 for true, if the value to the right is false, and 0 for false. + !(1>2) + 1 + + + Logical OR + || or OR + Returns 1 for true, if the right or left value is true, and 0 for false. + 1>2 || 2>1 + 1 + + + Logical AND + && or AND + Returns 1 for true, if the right and left value is true, and 0 for false. + 1>2 && 2>1 + 0 + + + Bitwise NOT + ~ + Equivalent to -1-x. + ~(0010 | 1100) + -1111 + + + Bitwise Shift Left + << + Shifts the bits of the left value x steps to the left, where x is the value on the right. Implemented as a shortcut for shift() + 0011 << 1 + 0110 + + + Bitwise Shift Right + >> + Shifts the bits of the left value x steps to the right, where x is the value on the right. Implemented as a shortcut for shift() + 0011 << 1 + 0001 + + + Bitwise OR + | + If a bit is 1 in one of the numbers set it to 1, otherwise 0. Also functions as elementwise logical operator on vectors. + 0010 | 1100 + 1110 + + + Bitwise AND + & + If a bit is 1 in both numbers set it to 1, otherwise 0. Also functions as elementwise logical operator on vectors. + 1010 & 0011 + 0010 + + + +
+ +The operator names plus, minus, times, per, AND and OR may also be used, surrounded by space, for the corresponding operation (ex. 5 plus 2, but not 5plus2, equals 5 + 2). +These operator names are localized, but AND and OR are always available. +In addition to these operators there are a couple of shortcuts for certain functions, such as 5! which equals factorial(5). + + +The multiplication sign can generally be left out. This is not true for numbers (5(5) = 25 but 5 5 = 55). Expressions can also generally be written with or without spaces with the same result (2xsin(2) equals 2 x sin(2) which equals 2*x*sin(2)), but be careful. The vast number of functions and units means that without separating spaces, the result might not be obvious. To avoid confusion Qalculate! can limit the use of implicit multiplication (ModeLimit Implicit Multiplication), so that space, operator or parenthesis must be put between functions, units and variables (in this mode esqrt(5) does not equal e * sqrt(5)). Also note that unit prefixes must be put immediately before the unit, to be interpreted as prefixes (5 mm = 0.005 m, but 5 m m = 5m^2). You can see how to expression was interpreted in the history window. + + +Usually, mathematical expressions are written as normally expected. Standard operator precedence apply. Expressions are evaluated according to the following priorities: + + Parenthesis + E (10^x) + Short multiplication in front of variables, units, functions, parenthesis etc. (ex. 5(2+3)). Note that this implies that 2/5 cm equals 2/(5 cm) and not (2/5) cm + Functions (ex. sqrt(2)) + Exponents (x^y) + Multiplication and division (*, /) + Addition and subtraction (+, −) + Bitwise NOT (~) + << and >> + Bitwise AND (&) + Bitwise OR (|) + Comparison (>, <, =, >=, <=) + Logical NOT (!) + Logical AND (&&) + Logical OR (||) + + + + +
+
+ + +Calculator Modes + +Qalculate! provides flexible parsing, calculation output and result display. There are several ways in which parsing of expression and display of results can be customized. These modes can generally be changed through the mode menu. The state of each mode can be saved under a name in ModeMeta Modes for quick access. The Preset and Default meta modes are always available and represents the state when Qalculate! is load for the first time and the mode settings automatically loaded at each startup (and by default saved on exit), respectively. Different modes are summarized below. + + +Number Bases + +Non-decimal bases can be selected for display of numbers in the result. This include regular number bases (binary, octal, hexadecimal, sexagesimal) as well as sexagesimal time format and roman numerals. All number bases between 2 and 36, and base for expression input, can be selected from a dialog window accessed from ModeNumber BaseOther... or ModeNumber BaseSelect Result and Expression Base.... The convert number bases dialog (see ) is efficient for simple conversion between common bases. + + + +Numerical Display + +These modes mainly control when numbers are displayed exponentially (ex. 2.62E3 which equals 2620). In the default normal mode, numbers are displayed in exponential format if the exponent will be greater than the current precision. In scientific mode the lowest exponent is 3. In simple numerical mode the exponential format is never used and it is always used in purely scientific mode. In the engineering mode, the exponent is always a multiple of three. This is naturally equivalently true for numbers less than one and negative exponents. When the scientific modes are selected in the keypad (not from the menubar), negative exponents are automatically activated and sort minus last deactivated, while normal and simple modes do the opposite. + + + +Indicate Infinite Series + +If this option is on, Qalculate! will not round infinitely repeating digit sequences if discovered. Instead ... will be displayed after the maximal number of decimals and the result indicated as exact (compare 2/3 = 0.666667 with 2/3 = 0.666666...). + + + +Round Halfway Number To Even + +With this option, halfway numbers will be rounded to even instead of upwards (ex. 2.65 is then rounded to 2.6 instead of 2.7). Note that this behavior is always applied in the round() function. + + + +Show Ending Zeroes + +if this option is on, approximate numbers in the result will be appended with zeroes, so that the number of digits (after preceding zeroes) will equal the precision. + + + +Negative Exponents + +If negative exponents is activated, division is shown as a negative power (ex. x * y^-1 instead of x / y). + + + +Sort Minus Last + +This option decides if minus signs should be avoided in the first positions of the result expression. + + + +Fractional Display + +This controls if numbers are displayed in fractional or decimal mode. Decimal mode displays numbers as usually expected (6/4 = 1.5), combined displays a whole number and a fraction (6/4 = 1 1/2) and fractional only displays as fraction (6/4 = 3/2). + + + +Unit Display + +The use of prefixes for units can be toggled on and off. By default prefixes representing a power of ten not dividable by three (centi, deci, deca and hekto) are not used and need to be enabled. If denominator prefixes are not explicitly enabled, prefixes will only be set for the numerator in a fractional unit expression (ex. 1 Mg/m or 1 kg/mm). The place units separately alternative controls the display of unit expressions in result. If it is enabled (default) units will be displayed separate from other parts of the expression at the end (compare (5x*m)/(y*s) and 5x/y m/s). + + + +Abbreviate Names + +The display of unit, prefix, variable and function names can be controlled by selecting to display abbreviations or full length names (ex. 5 cm or 5 centimeters). Both abbreviations and long names can however always be entered in expressions. + + + +Approximation + +When always exact mode is on, the calculation will not go further than what can be calculated exactly (ex. sqrt(2+3) = sqrt(5)). The default Try Exact mode, will calculate the result exact as far as possible and then approximately. Approximate mode will directly calculate a approximate result, thus being a bit faster but giving a less correct approximate indication (sin(pi/2) return approximately one instead of exactly one). + + + +Assumptions + +This controls the default assumptions for unknown variables without explicitly defined assumptions. See . +The assume denominators non-zero alternative makes it possible to avoid the situation where expressions such as (x-1)/(x-1) can not be further simplified because the denominator might be zero (if x equals 1). With this alternative activated the example can be reduced to 1. + + + +Precision + +Precision controls the precision in approximate numbers and the number of significant digits. If the read precision option is turned on, input numbers with decimals will be interpreted as approximate with a precision equal to the number of digits (ex. 2.50 + 3.4567 = 5.96). + + + +Decimals + +In the decimals dialog, the number of decimals displayed can be controlled. This includes minimal (will fill out with zeroes) and maximal number of decimals (will round numbers). + + + +Limit Implicit Multiplication + +If the limit implicit multiplication mode is activated, the use of implicite multiplication when parsing expressions and displaying results will be limited to avoid confusion. For example, if this mode is not activated and integrte(5x) is accidently typed instead of integrate(5x), the expression is interpreted as int(e * e * (5 * x) * gr * t) (displayed in history window). The result will then without any error be int(2.3940139x * km^2) instead of 2.5x^2. If limit implicit multiplication is turned on to mistyped expression would instead show an error telling that integrte is not a valid variable, function or unit (unless unknowns is not enabled in which case the result will be 5 "integrate" * x). When implicit multiplication is limited variables, functions and units must be separated by a space, opertor or parenthesis (xy does not equal x * y). + + + + + +The RPN Mode + +The Reverse Polish Notation mode can be activated with ModeRPN Mode, CtrlR or from the context menu of the expression entry. For details about what Reverse Polish Notation is and how it generally works, see for example the RPN article at Wikipedia. + + +Central to the RPN mode is the stack, a list of registers/values that is operated on by functions and operators. The stack has a variable number of registers which can hold an unlimited number of values. The stack size is dynamically changed when a new value is added and the first value on the stack is shown in the result display. Mathematical operators such as plus and minus then operates on the first two, last added, values on the stack. The second value is changed with input from the first value. For example, the minus operator subtracts the first value from the second. Functions which require exactly one argument operates on the first value on the stack. Other functions, which require multiple arguments, must be entered in normal expression based way. + + +The RPN mode still allows full expression to be entered (you can add 5x+3+23+sin(2) directly to the stack). The buttons on the keypad do not insert operators and functions in the expression entry, but instead applies them to the stack. This is also true for the keypad keys on the keyboard. Enter calculates the current expressions and adds it to the stack. If the expression entry is not empty when applying an operator or function to the stack, the expression is first calculated and added to the stack. All keys on the main part of the keyboard add the corresponding characters in expression entry, unless the Use only keypad keys for RPN option is deactivated from the preferences dialog. To apply the raise operator '^' to the stack, without clicking the keypad button with the mouse, use the Ctrl* (keypad) shortcut. If the expression only contains an operator or a function, which requires exactly one argument, the operator/function is applied to the stack. + + +For example, 5 ENTER 3 + 2 / adds 5 to the stack, then adds 3 to the stack and moves 5 down a step and adds 3 to 5. The first value, 3, is removed from the stack and the value left is 8. Then 2 is added to the stack and 8 is divided by 2, resulting in 4. This would in a single expression be entered as (5+3)/2. + +
+ RPN Mode + + + + + + + +
+ +The RPN mode adds a third page to the main window, for display and manipulation of the values on the stack. This shows a list of values on the stack, with the last added value on the top. On the right are buttons for moving the selected value up or down, editing or removing the selected value, or remove all values from the stack. The equals buttons do in RPN mode in addition to calculating the expression, add it to the stack. + + +Changes in the display of result only affects the first value on the stack. + + +Note that Qalculate! in addition to the RPN mode, has a RPN syntax. The RPN syntax controls how expressions is interpreted. This means that instead of as with a traditional RPN calculator, where each value and operator is put on the stack separately, all values and operators are entered directly in an expression, with ENTER replaced by space (ex. 5 2 + which corresponds to 5 ENTER 2 ENTER +, and equals 5 + 2 in regular notation). + +
+
+ + +Variables + +Variables are used to conveniently store a fixed value/result under a name. Variables can store everything that a result may contain, including numbers, units, variables, unsolved expressions and functions etc. + + +There two different kinds of variables known and unknown. Known variables represents a fixed value, usually a number, while unknown variables represents a range or type of values (ex. a non-negative integer). + + +Some common constants that can only be approximately represented by a real number, such as pi and e, are special known variables. They are not fixed but are recalculated each time precision changes, thereby not compromising the arbitrary precision of Qalculate!. + + +The ans variable, which always contains the last calculated result, is another special and useful variable. + + +The unknown variables x, y and z are predefined. They cannot be deleted, but changed. By default they use the default assumptions. + + +For a complete list of available variables see or the variable manager. + + +Variable creation/editing +
+ Store Result + + + + + + + +
+ +The easiest way to create a known variable is to store the current result. This can be done by clicking the STO button or selecting FileStore Result.... Type a name for the variable in the dialog that pops up and optionally enter a category and descriptive name to keep variables well organized. + + +Known variables can also be created from scratch by selecting FileNewVariable or by clicking New in the variable manager. The value can then be filled in, in the text field below the name, and specified as exact or approximate. + +
+ New Variable + + + + + + + +
+ +The dialog for creation of unknown variables are accessed by selecting FileNewUnknown Variable. Instead of a value, an assumed type and sign can then be entered. + + +Edit a variable by clicking Edit in the variable manager. + + + +Variables stored in the Temporary category will not be saved after the program exit. + + +
+ +Vectors and Matrices + +Vectors and matrices are most effectively used stored in a variable. Qalculate! provides separate tools for these variables. They use a different dialog, where each element can be edited separately as in a spreadsheet. As with other variables, click Edit in the variable manager to edit a matrix/vector variable, but to create a new, select FileNewMatrix or FileNewVector. + +
+ Matrix/Vector Edit Dialog + + + + + + + +
+ +In this dialog, name, category and descriptive name are typed in as usual, but instead of a single value entry, the matrix/vector edit dialog has a table of entries. Select number of rows and columns above. In a vector this only determines how many value entries that are shown in the table and empty entries will be ignored. For matrices, each entry in the table is an element in the matrix. It is possible to switch between matrix and vector in the dialog (the menu item selected only determines the initial mode). + + + +Matrices and vectors can also be loaded from data files. These files most be plain text files with values organized in separated rows and columns. Select FileImport CSV File... and a dialog window pops up. First select the file to import and then specify whether if it shall be imported as a matrix or vectors. A name, descriptive name and category can optionally be typed in. If the name field is empty, the file name will be used instead. After that, the row in the file where the data starts should be specified. as well as whether this first row contains column headings. Finally the delimiter, used to separate columns in the file, must be selected. Click OK and variables will be generated from the file. If vectors are to be generated and the file contains more than one column, the name will be used as a subcategory and each variable will add the column heading (or Column 1, Column 2, ...) to the name and the descriptive name. + +
+ Import CSV Dialog + + + + + + + +
+ +The load() function can be used to access a CSV file directly in an expression. The reversed action is also available with export(), or the dialog accessed with FileExport CSV File... or from the variable manager. + +
+
+ + +Functions + +Functions are essentially mathematical formulas. They are used to store expressions with variable values, arguments. To execute a function, the values for a number of arguments need to specified. These arguments are then inserted into the expression, making it possible to calculate. + + +Functions is normally entered in an expression by writing the name followed by arguments, separated by commas (or semicolons in languages with comma as decimal point), in parenthesis, thus following the syntax name(arg1, arg2, ...). Qalculate! will give a helpful error message if the arguments are not correct. + +
+ Insert function dialog + + + + + + + +
+ +The insert function dialog presents an easy way to insert a function and its arguments. + + +Although it can lower the readability of an expression, it is perfectly legal to skip the parenthesis and put the arguments after a space, and end with a space or operator. This is most useful in short expressions with single argument functions (ex. sqrt 5). + + +Argument types include: + + Free — anything + Number — a numeric value + Integer — a whole number + Symbol — a defined or undefined unknown variable + Text — a free text string + Date — a date in local or standard format (Year-Month-Day, recommended) + Vector + Matrix + Boolean — 0 for false, 1 for true + Object — the name of a variable, function or unit + Variable — the name of a variable + Function — the name of a function + Unit — the name of a unit + File — the path to a file + Angle — an angle used in trigonometric functions, meaning a number and an angle unit. If no angle unit is included the default is used. + + + +The argument can be restricted by further conditions. For example that a number must be positive. + + +Available Functions + +Here the main function categories and some of their members are described, to give an overview of available functions. For information about separate functions and a complete list of all available functions see or the function manager. + + +Algebra + +Contains sum() and product(), which corresponds to the sum and product signs. solve() solves equations (ex. solve(x * 2 = 8) returns 4 meaning that x equals 4). Use solve2() and multisolve() to solve multiple equations with multiple variables. + + + +Calculus + +Includes diff(), which calculates the derivative of an expression with optional arguments with respect to (default x) and order (default 1), and a limited integration function. + + + +Combinatorics + +Contains functions such as perm() for permutations, comb() for combinations, and factorial(). + + + +Data Sets + +A data set consists of a set of properties and objects, which can be accessed by a function which takes two arguments — object and property. The function returns the object's value for the selected property. +For example, the data in the Elements data set is accessed with the atom() function, with the element (referenced using atomic symbol, number or name) and property (ex. weight) as arguments. +The special property info displays all properties of the object in a dialog window. + + + +Date & Time + +Includes days() and yearfrac() which returns the number of days and fractional years, respectively, between two dates. + + + +Exponents & Logarithms + +Standard logarithmic and exponential functions. ln() calculates the natural logarithm of a number, while log() allows a choice of base as the second argument. The exponential functions does not really add anything beyond the capabilities of the exponential operator, ^. + + + +Economics + +This essentially includes most of the financial functions that are usually found in spreadsheet applications. + + + +Elements + +This category includes functions to retrieve data such as atomic weight. The atom() function opens a window with available data of an element. These functions accept the number, symbol or name of the element as argument. The data are loaded on demand. + + + +Geometry + +Category with formulas mostly for calculation of circumference, area and volume of geometric shapes. + + + +Logical + +Some procedural functions mainly for use in other functions. These include if(), which tests a conditional expression and returns a value depending on if the expression evaluates true or false, and for(), which processes a value while a condition is true. + + + +Matrices & Vectors + +These are functions that generate, access and process matrices and vectors. The vector() function generates a vector from a variable number of arguments for elements, while matrix() first needs the number of rows and columns and then the elements from left to right. Matrices can also be imported directly from a CSV file with load(). + + +Separate elements at a specified row and column are accessed with element(). Other functions include det() for calculation of the determinant of a matrix and inverse() which returns the inverse of the given matrix, as well as functions such as sort() and rank(). + + + +Miscellaneous + +A category for functions that do not fit elsewhere. + + + +Number Theory + +Contains subcategories arithmetics, number bases, and rounding, in addition to functions such as abs(), which returns the absolute value of a number, and gcd(), the greatest common divisor. round() is the standard rounding function (note that halfway numbers are rounded to even). The functions for number bases translates a text string, representing an expression (bases that use letters does not allow variables, functions and units) with numbers in a different base, to a decimal number. Includes bin() for binary numbers, hex() for hexadecimal numbers, oct() for octal numbers and base() for numbers in a base between 2 and 36 specified in the second argument. + + + +Statistics + +Contains a lot of functions for descriptive statistics and some statistical tests. Data sets are stored as vectors. Generally, functions with a vector/data set as last argument can take elements/samples as a variable number of arguments directly instead of in a vector (ex. mean(1, 2, 3) equals mean(vector(1, 2, 3))). Also contains the rand() function, which returns a pseudo random number between 0 and 1, and does not take any arguments. + + + +Trigonometry + +Trigonometric functions, including sin(), cos(), tan(), sec(), csc(), cot(), and hyperbolic and inverse versions of those. These functions take as argument an angle. If the default angle unit (ModeAngle Unit) is set to none, the argument must have an angle unit appended (degrees, radians or gradians), otherwise the default unit will be appended automatically (and removed from result of inverse functions). + + + +Utilities + +Various utility functions. Most are only useful in definition of other functions. The save() function can however be a quick way of storing a value in a variable, and csum() can be a powerful tool for data processing. This category also contains some functions, such as char() and ascii(), that might be useful for programmers. , replace() provides an easy way of replacing unknown variables by known expressions in a value (ex. replace(5x^2+x, x, 3) equals 5*3^2+3). + + + + + + +Function creation/editing + +Functions are a bit more complex than variables, but can nevertheless be relatively easily created. FileNewFunction or click New in the function manager and the function edit dialog pops up. This dialog consists of two tabs/pages; the first with general descriptive information and the last for the function definition. First enter a name, used to reference the function in an expression. If an expression is entered a bit further down, then the function will already be fully working. A bit more does however need to be said about the function expression. + + +The expression of a function is basically a normal expression with placeholders for arguments. These placeholders consists of a backslash and a letter — x, y, z for the 1st, 2nd and 3rd arguments and a to u for argument 4 to 24. They are replaced by entered arguments when a function is calculated. The placeholders naturally also decide the number of arguments that a function requires. For example the function for triangle area (base * height / 2) has the name triangle and the expression (\x*\y)/2, which gives that triangle(2, 3) equals (2*3) / 2 and returns 3 as result. An argument can be used more than one time and all arguments must not necessarily be in order in the expression. +
+ Function Edit Dialog + + + + + + + +
+
+ +Additionally, optional arguments can be put in the expression with upper-case (X, Y, Z, ...) instead of lower-case letters (x, y, z, ...). The default value can be put in brackets after the letter (ex. \X{2}). The default value may be omitted and is then zero. All additional arguments after an optional argument must also be optional. + + +A condition that must be true (>0) for the function to be calculated, can optionally be entered in the text field below the expression. This follows the same conventions as function expressions. For example if the second argument must be higher than the first, \y > \x may be entered as condition. + + +Further, name, type and condition for each argument can be specified. + + +To keep functions well organized, supply a category, descriptive name and description. A function can also hidden from menus with the corresponding check box, which can be useful for sub functions. + + +Global, system-wide functions can not actually be changed by the user, but if one of these functions is edited, they are deactivated and seemingly replaced by a new function. This way global functions can be deleted by deactivation. Some functions are however hard-coded and cannot be changed by the user. + +
+
+ + +Units + +Units give numbers meaning in the real world. They specify what is measured by the numbers and the scale used. Qalculate! fully incorporates units in calculations and includes all standard SI units as well as many non-standard local units. +For a complete list of available units see or the unit manager. + + +Currency + +Among units, Qalculate! has support for currencies with up-to-date exchange rates. Currencies are normally referenced with the standard three letter code due to name clashes, but a number of currency unit can also be accessed through their regular name and symbol. U.S. dollars can, for example, be referenced both as USD and dollar/dollars, or with the $ symbol. + + +Current exchange rates are automatically fetched from the European Central Bank on the Internet, the first time Qalculate! is started. By default the exchange rates will thereafter have to be updated manually from FileUpdate Exchange Rates, unless automatic updates are enabled in the preferences dialog. + + + +Conversion + +Expressions can be converted to a specific unit directly in the expression entry with the to operator, which converts the left-hand expression to a specified unit (ex. 5 feet + 2 inches to cm converts the result of 5 feet + 2 inches to centimeters and displays it). Unit expressions may only contain units, prefixes, exponents, multiplication and division. Other elements are ignored. + + +The unit conversion dialog, accessible from the Convert button, EditConvert To Unit Expression... or CtrlT, can also be used. Enter a unit in the dialog that pops up, click Apply or OK and the displayed result is then converted. In this dialog, you can also select a unit from a list accessed by clicking Selector >>. When a unit is selected from the list the expression is updated and Apply automatically pressed. +
+ Unit Conversion Dialog + + + + + + + +
+
+ +The final way to convert to another unit is to use the predefined units in the EditConvert To Unit menu or press Convert Result in the unit manager. EditSet Prefix can be used to select a prefix. + + +It is also possible to let Qalculate! automagically convert the result to appropriate units with EditConvert To Best Unit or EditConvert To Base Units. If instead the corresponding choice is selected from ModeUnit Display, each result will automatically be converted until the choice is deactivated (ModeUnit DisplayNo Automatic Conversion). + +
+ +Unit creation/editing + +There are three different unit classes in Qalculate! — base, alias and composite units. Base units are units defined as basis for other units. Meters and seconds are typical base units. Alias units is defined in relation to another unit. For example, hour is defined as an alias unit that equals 60 minutes which in turn is defined in relation to seconds. Finally, composite units are defined by a unit expression with multiple units. Composite units often have an alias unit associated with them, as they do not have a reference name on their own. For example, a joule is defined as an alias defined in relation to a composite unit defined as Newton * meter. + + +Select FileNewUnit, or click New in the unit manager, and the unit edit dialog pops up. +
+ Unit Edit Dialog + + + + + + + +
+First the unit class needs to be selected. Depending on the unit class, different elements in the dialog will be enabled. For all units, category and descriptive name can be specified to keep them well organized. A unit can also be hidden from unit menus with the corresponding check box, which can be useful for some composite units. +
+ +Base and alias units normally have three different name forms defined for use in expressions — abbreviation (ex. m), singular (meter) and plural (meters). Composite units only have an internal name, used to reference the unit in definitions of other units. + + +For base units, the name is all that is needed. For alias units, on the other hand, a base unit, exponent and relation are necessary. For more complex relations an inverse relation can also be specified for conversion back from the base unit. The base unit must not necessarily be of the base unit class and it is recommended that an alias unit is defined in relation to the closest unit (ex. 1ft = 3 hands, 1 hand = 4 in, and 1 in = 0.0254 m). The relation is usually just a number that tells how large quantity of the base unit is needed to get the alias unit (alias unit = base unit * relation). More complex units can specify the relation as a full-blown expression where \x is replaced by the quantity of the base unit and \y is the exponent. For example, Degrees Celsius has the relation \x + 273.15 and the inverse relation \x − 273.15 to the base unit Kelvin. For simple relations, the reversion is automatic and ought not be defined separately. The check box below relation in the dialog specifies if the relation is exact or approximate. The exponent defines the exponential relation to the base unit, so that the alias unit equals the base unit raised to the exponent. For simple unit relations this gives: alias unit = relation * base unit^exponent. + + +Composite units need a unit expression with multiple units as base, in the base unit field. These expressions may only contain units, prefixes, exponents, multiplication and division (ex. km/h). + +
+
+ + +Plotting + +Plotting in Qalculate! is done through an external program, Gnuplot. Thus Gnuplot (>= v. 3.7) need to be installed on the computer for plotting to work. + + +To plot functions or data sets, select FilePlot Functions/Data, which brings up the plot dialog. The plot dialog consists of three tabs/pages — the first for the data, the second for the function range and sampling rate, and the last for control of function sampling and appearance. + +
+ Plot Data + + + + + + + +
+ +Plot functions are normal expressions that represents f(x) in y=f(x) (ex. sin(x)). The x can be specified as a different unknown variable (x, y, z) or a quoted text string (actually any mathematical expression which will then be matched in the plot expression and replaced by the values on the x axis) in the variable entry below the function/data list. + + +To plot a data set, enter an expression that results in a matrix or vector. Select Vector/Matrix below and vectors will appear as one series and matrices will appear with each column or row (if selected) as a series, If the paired matrix option instead is selected, the first column/row of the matrix will constitute the y-values and the second the x-values. + + +Type in an expression, press Enter and a new window will open with the plot. The title of the series, the diagram style and smoothing of the line can also be set. The series modified must be selected in the list and to apply changes click Apply. More series that will appear in the same plot window can be added. If the scale of the y values differ, series can be put on a secondary y-axis. + + + +Even though Qalculate! does all the calculations before handing over the data to Gnuplot, the resulting data must only consist of pure numbers, as Gnuplot knows nothing about the functions, variables, units, etc. of Qalculate!. + + + +For functions, the function range — min and max x value, and the number of values or the size of the step between each y value calculated — can be specified in the function range page. + +
+ Plot Settings + + + + + + + +
+ +A title can be set to appear at the top of the plot, as well as labels for the x and y axis. The appearance can also be controlled by selecting or disabling legend placement, displaying/hiding the grid and borders on the top and the right side of the diagram and choosing color or monochrome graphics. The x and y scales can be made logarithmic by clicking the box on the right and filling in a desired logarithmic base. + + +To update the plot window, click Apply at the bottom of the dialog. + +
+ Gnuplot + + + + + + + +
+ +The plot can be saved as an image file. Click Save and select a file name and folder. The extension of the file name will decide the file type (.png for PNG image, .svg for SVG, .ps for postscript, .eps for encapsulated postscript, .tex for LaTeX, and .fig for XFig). Default is to save as a PNG image. + +
+ + + + + +Credits and License + + +&qalculate_tde; + + +Program copyright 2005 Niklas Knutsson nq@altern.org + + + +Documentation copyright 2005 Niklas Knutsson nq@altern.org + + + + +&underFDL; + + + +&underGPL; + + + +&functionlist; +&variablelist; +&unitlist; + +&documentation.index; +
diff --git a/doc/en/insert-function.png b/doc/en/insert-function.png new file mode 100644 index 0000000..99e5940 Binary files /dev/null and b/doc/en/insert-function.png differ diff --git a/doc/en/mainwindow.png b/doc/en/mainwindow.png new file mode 100644 index 0000000..b38ddde Binary files /dev/null and b/doc/en/mainwindow.png differ diff --git a/doc/en/plot-data.png b/doc/en/plot-data.png new file mode 100644 index 0000000..3e78d3f Binary files /dev/null and b/doc/en/plot-data.png differ diff --git a/doc/en/plot-settings.png b/doc/en/plot-settings.png new file mode 100644 index 0000000..fa4f3a0 Binary files /dev/null and b/doc/en/plot-settings.png differ diff --git a/doc/en/qalculate_tde/Makefile.am b/doc/en/qalculate_tde/Makefile.am deleted file mode 100644 index e97402c..0000000 --- a/doc/en/qalculate_tde/Makefile.am +++ /dev/null @@ -1,2 +0,0 @@ -KDE_DOCS = AUTO -KDE_LANG = en diff --git a/doc/en/qalculate_tde/calculation-history.png b/doc/en/qalculate_tde/calculation-history.png deleted file mode 100644 index 0027d24..0000000 Binary files a/doc/en/qalculate_tde/calculation-history.png and /dev/null differ diff --git a/doc/en/qalculate_tde/calculator-buttons.png b/doc/en/qalculate_tde/calculator-buttons.png deleted file mode 100644 index 38a4f4f..0000000 Binary files a/doc/en/qalculate_tde/calculator-buttons.png and /dev/null differ diff --git a/doc/en/qalculate_tde/completion.png b/doc/en/qalculate_tde/completion.png deleted file mode 100644 index efaf7f1..0000000 Binary files a/doc/en/qalculate_tde/completion.png and /dev/null differ diff --git a/doc/en/qalculate_tde/convert-number-bases.png b/doc/en/qalculate_tde/convert-number-bases.png deleted file mode 100644 index c33b3f9..0000000 Binary files a/doc/en/qalculate_tde/convert-number-bases.png and /dev/null differ diff --git a/doc/en/qalculate_tde/convert-unit.png b/doc/en/qalculate_tde/convert-unit.png deleted file mode 100644 index 1b4f266..0000000 Binary files a/doc/en/qalculate_tde/convert-unit.png and /dev/null differ diff --git a/doc/en/qalculate_tde/edit-function.png b/doc/en/qalculate_tde/edit-function.png deleted file mode 100644 index 768921b..0000000 Binary files a/doc/en/qalculate_tde/edit-function.png and /dev/null differ diff --git a/doc/en/qalculate_tde/edit-matrix.png b/doc/en/qalculate_tde/edit-matrix.png deleted file mode 100644 index ec7f1e5..0000000 Binary files a/doc/en/qalculate_tde/edit-matrix.png and /dev/null differ diff --git a/doc/en/qalculate_tde/edit-unit.png b/doc/en/qalculate_tde/edit-unit.png deleted file mode 100644 index ff7472f..0000000 Binary files a/doc/en/qalculate_tde/edit-unit.png and /dev/null differ diff --git a/doc/en/qalculate_tde/edit-variable.png b/doc/en/qalculate_tde/edit-variable.png deleted file mode 100644 index 1f00bdc..0000000 Binary files a/doc/en/qalculate_tde/edit-variable.png and /dev/null differ diff --git a/doc/en/qalculate_tde/function-manager.png b/doc/en/qalculate_tde/function-manager.png deleted file mode 100644 index 3a92011..0000000 Binary files a/doc/en/qalculate_tde/function-manager.png and /dev/null differ diff --git a/doc/en/qalculate_tde/functions.docbook b/doc/en/qalculate_tde/functions.docbook deleted file mode 100644 index 777fa4e..0000000 --- a/doc/en/qalculate_tde/functions.docbook +++ /dev/null @@ -1,3570 +0,0 @@ - -Function List - -Algebra - - -Find Linear Function - -linearfunction(x1, y1, x2, y2) -Finds the linear function for the straight line between two distinct points. - -Arguments -x1: a free value -y1: a free value -x2: a free value -y2: a free value - - - - - -Product - -product(Factor expression, Lower limit (i), Upper limit (n)[, Index variable]) -ΠCorresponds to the product symbol. Multiplies factors for each x ranging from the lower to the upper limit. - -Arguments -Factor expression: a free value -Lower limit (i): an integer -Upper limit (n): an integer -Index variable: an unknown variable/symbol (optional, default: x) - - - -Requirement -"Upper limit (n)" >= "Lower limit (i)" - - - - - -Solve equation - -solve(Equation[, With respect to]) - -Arguments -Equation: a free value -With respect to: an unknown variable/symbol (optional, default: x) - - - - - -Solve for multiple variables - -multisolve(Equation vector, Variable vector) - -Arguments -Equation vector: a vector -Variable vector: a vector with an unknown variable/symbol, ... - - - -Requirement -dimension("Equation vector")=dimension("Variable vector") - - - - - -Solve for two variables - -solve2(Equation 1, Equation 2[, Variable 1][, Variable 2]) -Solves two equations with two unknown variables. Returns the value of the first variable. - -Arguments -Equation 1: a free value -Equation 2: a free value -Variable 1: an unknown variable/symbol (optional, default: x) -Variable 2: an unknown variable/symbol (optional, default: y) - - - - - -Sum - -sum(Term expression, Lower limit (i), Upper limit (n)[, Index variable]) -ΣCorresponds to the sum symbol. Adds terms for each x ranging from the lower to the upper limit. - -Arguments -Term expression: a free value -Lower limit (i): an integer -Upper limit (n): an integer -Index variable: an unknown variable/symbol (optional, default: x) - - - -Requirement -"Upper limit (n)" >= "Lower limit (i)" - - - - - - - -Analysis - - -Beta Function - -beta(argument 1, argument 2) - -Arguments -1: an integer -2: an integer - - - - - -Gamma Function - -gamma(argument 1) - -Arguments -1: a number - - - - - -Imaginary Part - -im(Complex number) - -Arguments -Complex number: a number - - - - - -Real Part - -re(Complex number) - -Arguments -Complex number: a number - - - - - - - -Calculus - - -Derive - -diff(Function[, With respect to][, Order]) - -Arguments -Function: a free value -With respect to: an unknown variable/symbol (optional, default: x) -Order: an integer >= 1 (optional, default: 1) - - - - - -Extreme Values - -extremum(Function[, With respect to]) - -Arguments -Function: a free value -With respect to: an unknown variable/symbol (optional, default: x) - - - - - -Integrate - -integrate(Function[, Variable of integration][, Lower limit][, Upper limit]) - -Arguments -Function: a free value -Variable of integration: an unknown variable/symbol (optional, default: x) -Lower limit: a free value (optional, default: undefined) -Upper limit: a free value (optional, default: undefined) - - - - - - - -Combinatorics - - -Binomial Coefficient - -binomial(Exponent, Index) - -Arguments -Exponent: an integer >= 1 -Index: an integer >= 0 - - - -Requirement -"Exponent">="Index" - - - - - -Combinations - -comb(Objects, Size) -Returns the number of possible arrangements of an unordered list with a number of objects to choose from and a list size. If there are three objects (1, 2 and 3) that is put in a list with place for two, the alternatives are [1, 2], [1, 3], and [2, 3], and thus the number of combinations is 3. - -Arguments -Objects: a free value -Size: a free value - - - - - -Derangements - -derangements(Number of elements) -Returns the number of possible rearrangements of an ordered list, of a certain size, where none of the objects are on their original position. If the original list is [1, 2, 3], the possible derangements is [2, 3, 1] and [3, 1, 2], and thus the number of derangements is 2. - -Arguments -Number of elements: an integer >= 1 - - - - - -Double Factorial - -factorial2(Value) -Calculates the doublefactorial of an integer. Mulitplies the argument with every second lesser positive integer (n(n-2)(n-4)...). Can also be entered as a number followed by two exclamation marks.ex. factorial2(5) = 5!! = 5 * 3 * 1 = 15 - -Arguments -Value: an integer >= -1 - - - - - -Factorial - -factorial(Value) -Calculates the factorial of an integer. Mulitplies the argument with every lesser positive integer (n(n-1)(n-2)...2*1). Can also be entered as a number followed by one exclamation mark.ex. factorial(5) = 5! = 5 * 4 * 3 * 2 * 1 = 120 - -Arguments -Value: an integer - - - - - -Hyperfactorial - -hyperfactorial(Value) -Calculates the hyperfactorial of an integer. Mulitplies the argument raised by itself with every lesser positive integer raised by themselves (1^1 * 2^2 ... n^n). ex. hyperfactorial(3) = (3^3) * (2^2) * (1^1) = 108 - -Arguments -Value: an integer >= 1 - - - - - -Multifactorial - -multifactorial(Value, Factorial) -Calculates the multifactorial of an integer. Mulitplies the argument with every x lesser positive integer (n(n-x)(n-2x)...). Can also be entered as a number followed by three or more exclamation marks.ex. multifactorial(18, 4) = 18!!!! = 18 * 14 * 10 * 6 * 2 = 30 240 - -Arguments -Value: an integer >= 0 -Factorial: an integer >= 1 - - - - - -Permutations - -perm(Objects, Size) -Returns the number of possible arrangements of an ordered list with a number of objects to choose from and a list size. If there are three objects (1, 2 and 3) that is put in a list with two positions, the alternatives are [1, 2], [2, 1], [1, 3], [3, 1], [2, 3] and [3, 2], and thus the number of permutations is 6. - -Arguments -Objects: a free value -Size: a free value - - - - - -Superfactorial - -superfactorial(Value) -Calculates the superfactorial of an integer. Mulitplies the factorial of the argument with the factorial of every lesser positive integer (1! * 2! ... n!). ex. superfactorial(5) = 5! * 4! * 3! * 2! * 1! = 34 560 - -Arguments -Value: an integer >= 0 - - - - - - - -Data Sets - - -Elements - -atom(Element[, Property]) -Retrieves data from the Elements data set for a given object and property. If "info" is typed as property, all properties of the object will be listed. -Arguments -Element: an object from "Elements" (use symbol, number, or name) -Property: name of a data property (symbol, number, name, class, or weight) (optional, default: info) - - - -Properties -Symbol: symbol (key) -Number: number (key) -Name: name (key) -Classification: classA number representing an element group:1 Alkali Metal2 Alkaline-Earth Metal3 Lanthanide4 Actinide5 Transition Metal6 Metal7 Metalloid8 Non-Metal9 Halogen10 Noble Gas11 Transactinide -Weight: weight, mass - - - - - -Planets - -planet(Planet[, Property]) -Retrieves data from the Planets data set for a given object and property. If "info" is typed as property, all properties of the object will be listed.This data uses material from the Wikipedia articles"Earth" (http://www.wikipedia.org/wiki/Earth),"Jupiter (planet)" (http://www.wikipedia.org/wiki/Jupiter_(planet)),"Mars (planet)" (http://www.wikipedia.org/wiki/Mars_(planet)),"Mercury (planet)" (http://www.wikipedia.org/wiki/Mercury_(planet)),"Neptune (planet)" (http://www.wikipedia.org/wiki/Neptune_(planet)),"Pluto (planet)" (http://www.wikipedia.org/wiki/Pluto_(planet)),"Saturn (planet)" (http://www.wikipedia.org/wiki/Saturn_(planet)),"Uranus (planet)" (http://www.wikipedia.org/wiki/Uranus_(planet)), and"Venus (planet)" (http://en.wikipedia.org/wiki/Venus_(planet)),licensed under the GNU Free Documentation License (http://www.gnu.org/copyleft/fdl.html) - -Arguments -Planet: an object from "Planets" (use name) -Property: name of a data property (name, year, speed, eccentricity, inclination, satellites, mass, density, area, gravity, or temperature) (optional, default: info) - - - -Properties -Name: name (key) -Orbital Period (Year): year -Average Orbital Speed: speed -Eccentricity: eccentricity -Inclination: inclination -Number of Satellites: satellites -Mass: mass -Mean Density: density -Surface Area: area -Equatorial Gravity: gravity -Mean Surface Temperature: temperature - - - - - - - -Date & Time - - -Current Time - -time() - - - -Date to Unix Timestamp - -timestamp([Date]) - -Arguments -Date: a date (optional, default: now) - - - - - -Day of Month - -day([Date]) - -Arguments -Date: a date (optional, default: today) - - - - - -Day of Week - -weekday([Date][, Week begins on Sunday]) - -Arguments -Date: a date (optional, default: today) -Week begins on Sunday: a boolean (0 or 1) (optional, default: 0) - - - - - -Day of Year - -yearday([Date]) - -Arguments -Date: a date (optional, default: today) - - - - - -Days between two dates - -days(First date, Second date[, Day counting basis][, Financial function mode]) -Returns the number of days between two dates.Basis is the type of day counting you want to use: 0: US 30/360, 1: real days (default), 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -First date: a date -Second date: a date -Day counting basis: an integer >= 0 and <= 4 (optional, default: 1) -Financial function mode: a boolean (0 or 1) (optional, default: 0) - - - - - -Local Date Format - -localdate([Date]) - -Arguments -Date: a date (optional, default: today) - - - - - -Month - -month([Date]) - -Arguments -Date: a date (optional, default: today) - - - - - -Standard Date Format - -isodate([Date]) - -Arguments -Date: a date (optional, default: today) - - - - - -Unix Timestamp to Date - -stamptodate(Timestamp) - -Arguments -Timestamp: an integer - - - - - -Week of Year - -week([Date][, Week begins on Sunday]) - -Arguments -Date: a date (optional, default: today) -Week begins on Sunday: a boolean (0 or 1) (optional, default: 0) - - - - - -Year - -year([Date]) - -Arguments -Date: a date (optional, default: today) - - - - - -Years between two dates - -yearfrac(First date, Second date[, Day counting basis][, Financial function mode]) -Returns the number of years (fractional) between two dates.Basis is the type of day counting you want to use: 0: US 30/360, 1: real days (default), 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -First date: a date -Second date: a date -Day counting basis: an integer >= 0 and <= 4 (optional, default: 1) -Financial function mode: a boolean (0 or 1) (optional, default: 0) - - - - - - - -Economics - -Finance - - -Accrued interest of security paying at maturity - -accrintm(Issue date, Settlement date, Annual rate of security[, Par value][, Day counting basis]) -Returns the accrued interest for a security which pays interest at maturity date.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Issue date: a date -Settlement date: a date -Annual rate of security: a free value -Par value: a free value (optional, default: 1000) -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Accrued interest of security with periodic interest payments - -accrint(Issue date, First interest, Settlement date, Annual rate of security, Par value, Frequency[, Day counting basis]) -Returns accrued interest for a security which pays periodic interest.Allowed frequencies are 1 - annual, 2 - semi-annual or 4 - quarterly. Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Issue date: a date -First interest: a date -Settlement date: a date -Annual rate of security: a free value -Par value: a free value -Frequency: an integer >= 1 and <= 4 -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Amount received at maturity for a security bond - -received(Settlement date, Maturity date, Investment, Discount rate[, Day counting basis]) -Returns the amount received at the maturity date for an invested security.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. The settlement date must be before maturity date. - -Arguments -Settlement date: a date -Maturity date: a date -Investment: a free value -Discount rate: a free value -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Compound - -compound(Principal, Nominal interest rate, Periods per year, Years) -Returns the value of an investment, given the principal, nominal interest rate, compounding frequency and time. - -Arguments -Principal: a free value -Nominal interest rate: a free value -Periods per year: a free value -Years: a free value - - - - - -Discount rate for a security - -disc(Settlement date, Maturity date, Price per $100 face value, Redemption[, Day counting basis]) -Returns the discount rate for a security.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Settlement date: a date -Maturity date: a date -Price per $100 face value: a free value -Redemption: a free value -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Dollar Decimal - -dollarde(Fractional dollar, Denominator of fraction) -Converts a dollar price expressed as a fraction into a dollar price expressed as a decimal number. - -Arguments -Fractional dollar: a free value -Denominator of fraction: an integer >= 1 - - - - - -Dollar Fraction - -dollarfr(Decimal dollar, Denominator of fraction) -Converts a decimal dollar price into a dollar price expressed as a fraction. - -Arguments -Decimal dollar: a free value -Denominator of fraction: an integer >= 1 - - - - - -Effective Interest Rate - -effect(Nominal interest rate, Periods) -Calculates the effective interest for a given nominal rate. - -Arguments -Nominal interest rate: a free value -Periods: a free value - - - - - -Future Value - -fv(Interest rate, Number of periods, Payment made each period[, Present value][, Type]) -Computes the future value of an investment. This is based on periodic, constant payments and a constant interest rate.If type = 1 then the payment is made at the beginning of the period, If type = 0 (or omitted) it is made at the end of each period. - -Arguments -Interest rate: a free value -Number of periods: a free value -Payment made each period: a free value -Present value: a free value (optional, default: 0) -Type: a boolean (0 or 1) (optional, default: 0) - - - - - -Interest paid on a given period of an investment (ISPMT) - -ispmt(Periodic interest rate, Amortizement period, Number of periods, Present value) -Calculates the interest paid on a given period of an investment. - -Arguments -Periodic interest rate: a free value -Amortizement period: an integer >= 1 -Number of periods: an integer >= 1 -Present value: a free value - - - - - -Interest rate for a fully invested security - -intrate(Settlement date, Maturity date, Investment, Redemption[, Day counting basis]) -Returns the interest rate for a fully invested security.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Settlement date: a date -Maturity date: a date -Investment: a free value -Redemption: a free value -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Level-Coupon Bond - -level_coupon(Face value, Coupon rate, Coupons per year, Years, Market interest rate) -Calculates the value of a level-coupon bond. - -Arguments -Face value: a free value -Coupon rate: a free value -Coupons per year: a free value -Years: a free value -Market interest rate: a free value - - - - - -Nominal Interest Rate - -nominal(Effective interest rate, Periods) -Calculates the nominal interest rate from a given effective interest rate compounded at given intervals. - -Arguments -Effective interest rate: a free value -Periods: a free value - - - - - -Number of coupons to be paid - -coupnum(Settlement date, Maturity date, Frequency[, Day counting basis]) -Returns the number of coupons to be paid between the settlement and the maturity.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Settlement date: a date -Maturity date: a date -Frequency: an integer >= 1 and <= 12 -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Payment for a loan - -pmt(Rate, Number of periods, Present value[, Future value][, Type]) -Returns the amount of payment for a loan based on a constant interest rate and constant payments (each payment is equal amount).If type = 1 then the payment is made at the beginning of the period, If type = 0 (or omitted) it is made at the end of each period. - -Arguments -Rate: a free value -Number of periods: a free value -Present value: a free value -Future value: a free value (optional, default: 0) -Type: a boolean (0 or 1) (optional, default: 0) - - - - - -Payment of an annuity going towards interest (IPMT) - -ipmt(Periodic interest rate, Period, Number of periods, Present value[, Future value][, Type]) -Calculates the amount of a payment of an annuity going towards interest.Type defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. - -Arguments -Periodic interest rate: a free value -Period: an integer >= 1 -Number of periods: an integer >= 1 -Present value: a free value -Future value: a free value (optional, default: 0) -Type: a boolean (0 or 1) (optional, default: 0) - - - - - -Payment of an annuity going towards principal (PPMT) - -ppmt(Periodic interest rate, Amortizement period, Number of periods, Present value[, Desired future value][, Type]) -Calculates the amount of a payment of an annuity going towards principal.Type defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. - -Arguments -Periodic interest rate: a free value -Amortizement period: an integer >= 1 -Number of periods: an integer >= 1 -Present value: a free value -Desired future value: a free value (optional, default: 0) -Type: a boolean (0 or 1) (optional, default: 0) - - - - - -Periods for investment to attain desired value - -g_duration(Rate, Present value, Future value) -Returns the number of periods needed for an investment to attain a desired value. - -Arguments -Rate: a free value -Present value: a free value -Future value: a free value - - - - - -Periods of an investment - -nper(Interest rate, Payment made each period, Present value[, Future value][, Type]) -Calculates number of periods of an investment based on periodic constant payments and a constant interest rate.Type defines the due date. 1 for payment at the beginning of a period and 0 (default) for payment at the end of a period. - -Arguments -Interest rate: a free value -Payment made each period: a free value -Present value: a free value -Future value: a free value (optional, default: 0) -Type: a free value (optional, default: 0) - - - - - -Present Value - -pv(Interest rate, Number of periods, Payment made each period[, Future value][, Type]) -Returns the present value of an investment.If type = 1 then the payment is made at the beginning of the period, If type = 0 (or omitted) it is made at the end of each period. - -Arguments -Interest rate: a free value -Number of periods: a free value -Payment made each period: a free value -Future value: a free value (optional, default: 0) -Type: a boolean (0 or 1) (optional, default: 0) - - - - - -Price per $100 face value of a security - -pricemat(Settlement date, Maturity date, Issue date, Discount rate, Annual yield[, Day counting basis]) -Calculates and returns the price per $100 face value of a security. The security pays interest at maturity.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Settlement date: a date -Maturity date: a date -Issue date: a date -Discount rate: a free value -Annual yield: a free value -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Price per $100 face value of a security bond - -pricedisc(Settlement date, Maturity date, Discount, Redemption[, Day counting basis]) -Calculates and returns the price per $100 face value of a security bond. The security does not pay interest at maturity.Basis is the type of day counting you want to use: 0: US 30/360 (default), 1: real days, 2: real days/360, 3: real days/365 or 4: European 30/360. - -Arguments -Settlement date: a date -Maturity date: a date -Discount: a free value -Redemption: a free value -Day counting basis: an integer >= 0 and <= 4 (optional, default: 0) - - - - - -Return on continuously compounded interest - -continuous(Principal, Interest rate, Years) -Calculates the return on continuously compounded interest, given the principal, nominal rate and time in years. - -Arguments -Principal: a free value -Interest rate: a free value -Years: a free value - - - - - -Straight Line Depreciation - -sln(Cost, Salvage value, Life) -Determines the straight line depreciation of an asset for a single period.Cost is the amount you paid for the asset. Salvage is the value of the asset at the end of the period. Life is the number of periods over which the asset is depreciated. SLN divides the cost evenly over the life of an asset. - -Arguments -Cost: a free value -Salvage value: a free value -Life: a free value - - - - - -Sum-of-Years Digits Depreciation - -syd(Cost, Salvage value, Life, Period) -Calculates the sum-of-years digits depreciation for an asset based on its cost, salvage value, anticipated life, and a particular period. This method accelerates the rate of the depreciation, so that more depreciation expense occurs in earlier periods than in later ones. The depreciable cost is the actual cost minus the salvage value. The useful life is the number of periods (typically years) over which the asset is depreciated. - -Arguments -Cost: a free value -Salvage value: a free value -Life: a free value -Period: a free value - - - - - -Treasury Bill Equivalent - -tbilleq(Settlement date, Maturity date, Discount rate) -Returns the bond equivalent for a treasury bill. - -Arguments -Settlement date: a date -Maturity date: a date -Discount rate: a free value - - - - - -Treasury Bill Price - -tbillprice(Settlement date, Maturity date, Discount rate) -Returns the price per $100 value for a treasury bill. - -Arguments -Settlement date: a date -Maturity date: a date -Discount rate: a free value - - - - - -Treasury Bill Yield - -tbillyield(Settlement date, Maturity date, Price per $100 face value) -Returns the yield for a treasury bill. - -Arguments -Settlement date: a date -Maturity date: a date -Price per $100 face value: a free value - - - - - -Zero Coupon - -zero_coupon(Face value, Interest rate, Years) -Calculates the value of a zero-coupon (pure discount) bond. - -Arguments -Face value: a free value -Interest rate: a free value -Years: a free value - - - - - - - -Microeconomics - - -Elasticity - -elasticity(Demand function, Price[, Price variable]) -Calculates the demand elesticity. Also works for supply elasticity, income elasticity, cross-price elasticity, etc. Just replace demand, with supply, or price with income...Ex. elasticity(100-x^2, 3) calculates the demand elasticity when the price is 3 for the function "Q = 100 - x^2" where x is the default price variable. - -Arguments -Demand function: a free value -Price: a free value -Price variable: an unknown variable/symbol (optional, default: x) - - - - - - - - -Exponents & Logarithms - - -10 raised the to power X - -exp10(Exponent) - -Arguments -Exponent: a free value - - - - - -2 raised the to power X - -exp2(Exponent) - -Arguments -Exponent: a free value - - - - - -Base-10 Logrithm - -log10(Value) -Returns the base n logarithm. - -Arguments -Value: a number >= 0 - - - - - -Base-2 Logrithm - -log2(Value) -Returns the base n logarithm. - -Arguments -Value: a number >= 0 - - - - - -Base-N Logarithm - -log(Value[, Base]) - -Arguments -Value: a number that is nonzero -Base: a number that is nonzero (optional, default: e) - - - - - -Complex Exponential (Cis) - -cis(Exponent) - -Arguments -Exponent: a free value - - - - - -Cube Root - -cbrt(Value) - -Arguments -Value: a free value - - - - - -Exponential (e^x) - -exp(Exponent) - -Arguments -Exponent: a free value - - - - - -Natural Logarithm - -ln(Value) - -Arguments -Value: a number that is nonzero - - - - - -Nth root - -root(Base, Exponent) - -Arguments -Base: a free value -Exponent: a free value - - - - - -Square - -sq(Value) - -Arguments -Value: a free value - - - - - -Square Root - -sqrt(Value) - -Arguments -Value: a free value - - - - - -Square root (x * pi) - -sqrtpi(Non-negative value) -Returns the non-negative square root of x * pi - -Arguments -Non-negative value: a number >= 0 - - - - - -X raised to the power Y - -pow(Base, Exponent) - -Arguments -Base: a free value -Exponent: a free value - - - - - - - -Geometry - -Circle - - -Circle Area - -circle(Radius) -Calculates the area of a circle using the radius - -Arguments -Radius: a free value - - - - - -Circle Circumference - -circumference(Radius) -Calculates the area of a circle using the radius - -Arguments -Radius: a free value - - - - - - - -Cone - - -Cone Volume - -cone(Radius, Height) - -Arguments -Radius: a free value -Height: a free value - - - - - -Surface Area of Cone - -cone_sa(Radius, Height) - -Arguments -Radius: a free value -Height: a free value - - - - - - - -Cube - - -Cube Volume - -cube(Length of side) - -Arguments -Length of side: a free value - - - - - -Surface Area of Cube - -cube_sa(Length of side) - -Arguments -Length of side: a free value - - - - - - - -Cylinder - - -Cylinder Volume - -cylinder(Radius, Height) - -Arguments -Radius: a free value -Height: a free value - - - - - -Surface Area of Cylinder - -cylinder_sa(Radius, Height) - -Arguments -Radius: a free value -Height: a free value - - - - - - - -Parallelogram - - -Parallelogram Area - -parallelogram(Base, Height) -Calculates the area of a four-sided figure whose opposite sides are both parallel and equal in length. - -Arguments -Base: a free value -Height: a free value - - - - - -Parallelogram Perimeter - -parallelogram_perimeter(Side A, Side B) -Calculates the perimeter of a four-sided figure whose opposite sides are both parallel and equal in length. - -Arguments -Side A: a free value -Side B: a free value - - - - - - - -Prism - - -Surface Area of Rectangular Prism - -rectprism_sa(Length, Width, Height) -Calculates the surface area of a prism with rectangular base. - -Arguments -Length: a free value -Width: a free value -Height: a free value - - - - - -Volume of Rectangular Prism - -rectprism(Length, Width, Height) -Calculates the volume of a prism with rectangular base. - -Arguments -Length: a free value -Width: a free value -Height: a free value - - - - - -Volume of Triangular Prism - -triangleprism(Length, Width, Height) -Calculates the volume of a prism with triangular base. - -Arguments -Length: a free value -Width: a free value -Height: a free value - - - - - - - -Pyramid - - -Height of Regular Tetrahedron - -tetrahedron_height(Length of side) - -Arguments -Length of side: a free value - - - - - -Height of Square Pyramid - -sqpyramid_height(Length of side) - -Arguments -Length of side: a free value - - - - - -Pyramid Volume - -pyramid(Length of base, Width of base, Height) -Calculates the volume of a 3-dimensional shape standing on a rectangular base and terminating in a point at the top. - -Arguments -Length of base: a free value -Width of base: a free value -Height: a free value - - - - - -Surface Area of Regular Tetrahedron - -tetrahedron_sa(Length of side) - -Arguments -Length of side: a free value - - - - - -Surface Area of Square Pyramid - -sqpyramid_sa(Length of side) - -Arguments -Length of side: a free value - - - - - -Volume of Regular Tetrahedron - -tetrahedron(Length of side) - -Arguments -Length of side: a free value - - - - - -Volume of Square Pyramid - -sqpyramid(Length of side) - -Arguments -Length of side: a free value - - - - - - - -Rectangle - - -Rectangle Area - -rect(Length, Width) - -Arguments -Length: a free value -Width: a free value - - - - - -Rectangle Perimeter - -rect_perimeter(Length, Width) - -Arguments -Length: a free value -Width: a free value - - - - - - - -Sphere - - -Sphere Volume - -sphere(Radius) - -Arguments -Radius: a free value - - - - - -Surface Area of Sphere - -sphere_sa(Radius) - -Arguments -Radius: a free value - - - - - - - -Square - - -Square Area - -square(Length of side) - -Arguments -Length of side: a free value - - - - - -Square Perimeter - -square_perimeter(Length of side) - -Arguments -Length of side: a free value - - - - - - - -Trapezoid - - -Trapezoid Area - -trapezoid(Side A, Side B, Height) -Calculates the area of a four-sided figure with two parallel sides. - -Arguments -Side A: a free value -Side B: a free value -Height: a free value - - - - - - - -Triangle - - -Hypotenuse - -hypot(Side A, Side B) - -Arguments -Side A: a free value -Side B: a free value - - - - - -Triangle Area - -triangle(Base, Height) - -Arguments -Base: a free value -Height: a free value - - - - - -Triangle Perimeter - -triangle_perimeter(Side A, Side B) - -Arguments -Side A: a free value -Side B: a free value - - - - - - - - -Logical - - -Bitwise Exclusive OR - -bitxor(Value 1, Value 2) - -Arguments -Value 1: an integer or a vector -Value 2: an integer or a vector - - - - - -Bitwise Shift - -shift(Number, Bits) - -Arguments -Number: an integer -Bits: an integer - - - - - -For...Do - -for(Initial value of counter, Counter variable, For condition, Counter update function, Initial value, Do function, Value variable) - -Arguments -Initial value of counter: a free value -Counter variable: an unknown variable/symbol -For condition: a free value -Counter update function: a free value -Initial value: a free value -Do function: a free value -Value variable: an unknown variable/symbol - - - - - -If...Then...Else - -if(Condition, Expression if condition is met, Expression if condition is NOT met) -Tests a condition and returns a value depending on the result. - -Arguments -Condition: a real number -Expression if condition is met: a free value -Expression if condition is NOT met: a free value - - - - - -Logical Exclusive OR - -xor(Value 1, Value 2) - -Arguments -Value 1: a free value -Value 2: a free value - - - - - - - -Matrices & Vectors - - -Adjugate (Adjoint) - -adj(Matrix) -Calculates the adjugate or adjoint of a matrix. - -Arguments -Matrix: a square matrix - - - - - -Cofactor - -cofactor(Matrix, Row, Column) -Calculates the cofactor of the element at specified position. - -Arguments -Matrix: a matrix -Row: an integer >= 1 -Column: an integer >= 1 - - - - - -Columns - -columns(Matrix) -Returns the number of columns in a matrix. - -Arguments -Matrix: a matrix - - - - - -Construct Matrix - -matrix(Rows, Columns, Elements) -Returns a matrix with specified dimensions and listed elements. Omitted elements are set to zero. - -Arguments -Rows: an integer >= 1 -Columns: an integer >= 1 -Elements: a vector - - - - - -Construct Vector - -vector([argument 1], ...) -Returns a vector with listed elements. - -Arguments -1: a free value (optional) - - - - - -Convert Matrix to Vector - -matrix2vector(Matrix) -Puts each element of a matrix in vertical order in a vector. - -Arguments -Matrix: a matrix - - - - - -Cross Product - -cross(Vector 1, Vector 2) -Calculates the cross product of a 3-dimensional vector. - -Arguments -Vector 1: a vector that fulfills the condition: "dimension(\x)==3" -Vector 2: a vector that fulfills the condition: "dimension(\x)==3" - - - - - -Determinant - -det(Matrix) -Calculates the determinant of a matrix. - -Arguments -Matrix: a square matrix - - - - - -Dimension - -dimension(Vector) -Returns the number of elements in a vector. - -Arguments -Vector: a vector - - - - - -Element - -element(Matrix/vector, Row/index[, Column]) -Returns the element at specified position in a matrix (row and column) or vector (index). - -Arguments -Matrix/vector: a vector -Row/index: an integer >= 1 -Column: an integer (optional, default: 0) - - - - - -Elements - -elements(Matrix or vector) -Returns the number of elements in a matrix or vector. - -Arguments -Matrix or vector: a vector - - - - - -Export To CSV File - -export(Matrix/vector, Filename[, Separator]) -Exports a matrix to a CSV data file. - -Arguments -Matrix/vector: a vector -Filename: a valid file name -Separator: a text string (optional, default: ,) - - - - - -Extract Column as Vector - -column(Matrix, Column) -Returns a column in a matrix as a vector. - -Arguments -Matrix: a matrix -Column: an integer >= 1 - - - - - -Extract row as vector - -row(Matrix, Row) -Returns a row in a matrix as a vector. - -Arguments -Matrix: a matrix -Row: an integer >= 1 - - - - - -Generate Vector - -genvector(Function, Min, Max, Dimension / Step size[, Variable][, Use step size]) -Returns a vector generated from a function with a variable (default x) running from min to max. The fourth argument is either the requested number of elements if the sixth argument is false (default) or the step between each value of the variable. - -Arguments -Function: a free value -Min: a free value -Max: a free value -Dimension / Step size: a free value -Variable: an unknown variable/symbol (optional, default: x) -Use step size: a boolean (0 or 1) (optional, default: 0) - - - - - -Identity - -identity(Matrix or rows/columns) -Returns the identity matrix of a matrix or with specified number of rows/columns. - -Arguments -Matrix or rows/columns: an integer >= 1 or a square matrix - - - - - -Load CSV File - -load(Filename[, First data row][, Separator]) -Returns a matrix imported from a CSV data file. - -Arguments -Filename: a valid file name -First data row: an integer >= 1 (optional, default: 1) -Separator: a text string (optional, default: ,) - - - - - -Matrix Area - -area(Matrix, Start row, Start column, End row, End column) -Returns a part of a matrix. - -Arguments -Matrix: a matrix -Start row: an integer >= 1 -Start column: an integer >= 1 -End row: an integer >= 1 -End column: an integer >= 1 - - - - - -Matrix Inverse - -inverse(Matrix) -Calculates the inverse of a matrix. The inverse is the matrix that multiplied by the original matrix equals the identity matrix (AB = BA = I). - -Arguments -Matrix: a square matrix - - - - - -Merge Vectors - -mergevectors(Vector 1[, Vector 2], ...) -Returns a vector with the elements from two vectors. - -Arguments -Vector 1: a vector -Vector 2: a vector (optional) - - - - - -Norm (length) - -norm(Vector) -Calculates the norm/length of a vector. - -Arguments -Vector: a vector - - - - - -Permanent - -permanent(Matrix) -Calculates the permanent of a matrix. The permanent differs from a determinant in that all signs in the expansion by minors are taken as positive. - -Arguments -Matrix: a square matrix - - - - - -Rank - -rank(Vector[, Ascending]) -Returns a vector with values of elements replaced with their mutual ranks.ex. rank([6, 1, 4]) = [3, 1, 2] - -Arguments -Vector: a vector -Ascending: a boolean (0 or 1) (optional, default: 1) - - - - - -Rows - -rows(Matrix) -Returns the number of rows in a matrix. - -Arguments -Matrix: a matrix - - - - - -Sort - -sort(Vector[, Ascending]) -Returns a sorted vector.ex. sort([6, 1, 4])=[1, 4, 6] - -Arguments -Vector: a vector -Ascending: a boolean (0 or 1) (optional, default: 1) - - - - - -Transpose - -transpose(Matrix) -Returns the transpose of a matrix. - -Arguments -Matrix: a matrix - - - - - -Vector Limits - -limits(Vector, Lower limit, Upper limit) -Returns a part of a vector between two positions. - -Arguments -Vector: a vector -Lower limit: an integer -Upper limit: an integer - - - - - - - -Miscellaneous - - -Body Mass Index (BMI) - -bmi(Weight, Length) -Calculates the Body Mass Index. The resulting BMI-value is sometimes interpreted as follows (although varies with age, sex, etc.):Underweight < 18.5Normal weight 18.5-25Overweight 25-30Obesity > 30Note that you must use units for weight (ex. 59kg) and length (ex. 174cm). - -Arguments -Weight: a free value -Length: a free value - - - - - -Kronecker Delta - -kronecker(Value 1 (i)[, Value 2 (j)]) -Returns 0 if i != j and 1 if i = j. - -Arguments -Value 1 (i): a real number -Value 2 (j): a real number (optional, default: 0) - - - - - -Riemann Zeta - -zeta(Integral point) - -Arguments -Integral point: an integer >= 1 and <= 2.1474836E9 - - - - - -Roman Number - -roman(Roman number) - -Arguments -Roman number: a text string - - - - - - - -Number Theory - - -Absolute Value - -abs(Value) - -Arguments -Value: a number - - - - - -Greatest Common Divisor - -gcd(1st value, 2nd value) - -Arguments -1st value: a free value that is rational (polynomial) -2nd value: a free value that is rational (polynomial) - - - - - -Least Common Multiplier - -lcm(1st value, 2nd value) - -Arguments -1st value: a free value that is rational (polynomial) -2nd value: a free value that is rational (polynomial) - - - - - - -Arithmetics - - -Add - -add(Terms) - -Arguments -Terms: a vector - - - - - -Denominator - -denominator(Number) - -Arguments -Number: a rational number - - - - - -Divide - -divide(Numerator, Denominator) - -Arguments -Numerator: a free value -Denominator: a free value - - - - - -Modulus - -mod(Numerator, Denominator) - -Arguments -Numerator: a real number -Denominator: a real number that is nonzero - - - - - -Multiply - -multiply(Factors) - -Arguments -Factors: a vector - - - - - -Negate - -neg(Value) - -Arguments -Value: a free value - - - - - -Numerator - -numerator(Number) - -Arguments -Number: a rational number - - - - - -Raise - -raise(Base, Exponent) - -Arguments -Base: a free value -Exponent: a free value - - - - - -Reciprocal - -inv(Value) - -Arguments -Value: a free value - - - - - -Remainder - -rem(Numerator, Denominator) - -Arguments -Numerator: a real number -Denominator: a real number that is nonzero - - - - - -Signum - -sgn(Number) - -Arguments -Number: a number - - - - - -Subtract - -subtract(Terms) - -Arguments -Terms: a vector - - - - - - - -Integers - - -Even - -even(Number) - -Arguments -Number: an integer - - - - - -Odd - -odd(Number) - -Arguments -Number: an integer - - - - - - - -Number Bases - - -Binary - -bin(Binary number) -Returns a decimal integer from a binary number - -Arguments -Binary number: a text string - - - - - -Hexadecimal - -hex(Hexadecimal number) -Returns a decimal value from a hexadecimal number - -Arguments -Hexadecimal number: a text string - - - - - -Number Base - -base(Number, Base) -Returns a decimal integer from a number of specified base between 2 and 36 - -Arguments -Number: a text string -Base: an integer >= 2 and <= 36 - - - - - -Octal - -oct(Octal number) -Returns a decimal integer from an octal number - -Arguments -Octal number: a text string - - - - - - - -Polynomials - - -Coefficient - -coeff(Polynomial, Number[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Number: an integer >= 0 -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Content Part - -pcontent(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Leading Coefficient - -lcoeff(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Lowest Degree (Valuation) - -ldegree(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Polynomial Degree - -degree(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Primitive Part - -primpart(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Trailing Coefficient - -tcoeff(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - -Unit Part - -punit(Polynomial[, Variable]) - -Arguments -Polynomial: a free value that is rational (polynomial) -Variable: an unknown variable/symbol (optional, default: x) - - - - - - - -Rounding - - -Extract Fractional Part - -frac(Value) - -Arguments -Value: a real number - - - - - -Extract Integer Part - -int(Value) - -Arguments -Value: a real number - - - - - -Round - -round(Value) - -Arguments -Value: a real number - - - - - -Round Downwards - -floor(Value) - -Arguments -Value: a real number - - - - - -Round Towards Zero - -trunc(Value) - -Arguments -Value: a real number - - - - - -Round Upwards - -ceil(Value) - -Arguments -Value: a real number - - - - - - - - -Statistics - - -Random Number - -rand([Ceil]) -Generates a pseudo-random number. Returns a real number between 0 and 1, if ceil is zero (default), or an integer between 1 and (including) ceil. - -Arguments -Ceil: an integer (optional, default: -1) - - - - - -Random Number Between Limits - -randbetween(Bottom, Top) -Returns an integer between (including) bottom and top. - -Arguments -Bottom: an integer -Top: an integer - - - -Requirement -"Bottom"<="Top" - - - - - - -Descriptive Statistics - - -Decile - -decile(Data, Decile) - -Arguments -Data: a vector -Decile: a number >= 0 and <= 100 - - - - - -Interquartile Range - -iqr(Data) -Calculates the difference between the first and third quartile. - -Arguments -Data: a vector - - - - - -Max - -max(Vector) -Returns the highest value. - -Arguments -Vector: a vector - - - - - -Median - -median(Data) - -Arguments -Data: a vector - - - - - -Min - -min(Vector) -Returns the lowest value. - -Arguments -Vector: a vector - - - - - -Mode - -mode(Vector) -Returns the most frequently occuring value. - -Arguments -Vector: a vector - - - - - -Number of Samples - -number(Data) -Returns the number of samples. - -Arguments -Data: a vector - - - - - -Percentile - -percentile(Vector, Percentile (%)) - -Arguments -Vector: a vector -Percentile (%): a number > 0 and < 99 - - - - - -Quartile - -quartile(Data, Quartile) - -Arguments -Data: a vector -Quartile: an integer >= 1 and <= 3 - - - - - -Range - -range(Data) -Calculates the difference between the min and max value. - -Arguments -Data: a vector - - - - - -Sum (total) - -total(Data) - -Arguments -Data: a vector - - - - - - - -Distribution - - -Logistic Distribution - -logistic(X, Scale) -Returns the probability density p(x) at x for a logistic distribution with scale parameter. (from Gnumeric) - -Arguments -X: a free value -Scale: a number >= 0 - - - - - -Pareto Distribution - -pareto(X, Exponent, Scale) -Returns the probability density p(x) at x for a Pareto distribution with exponent and scale. (from Gnumeric) - -Arguments -X: a free value -Exponent: a number >= 0 -Scale: a number >= 0 - - - - - -Rayleigh Distribution - -rayleigh(X, Sigma) -Returns the probability density p(x) at x for a Rayleigh distribution with scale parameter sigma. (from Gnumeric) - -Arguments -X: a free value -Sigma: a number >= 0 - - - - - -Rayleigh Tail Distribution - -rayleightail(X, Lower limit, Sigma) -Returns the probability density p(x) at x for a Rayleigh tail distribution with scale parameter sigma and a lower limit. (from Gnumeric) - -Arguments -X: a free value -Lower limit: a free value -Sigma: a number >= 0 - - - - - - - -Means - - -Geometric Mean - -geomean(Data) - -Arguments -Data: a vector - - - - - -Harmonic Mean - -harmmean(Data) - -Arguments -Data: a vector - - - - - -Mean - -mean(Data) -average -Arguments -Data: a vector - - - - - -Quadratic Mean (RMS) - -rms(Data) - -Arguments -Data: a vector - - - - - -Trimmed Mean - -trimmean(Data, Trimmed percentage (at each end)) - -Arguments -Data: a vector -Trimmed percentage (at each end): a free value - - - - - -Weighted Mean - -weighmean(Data, Weights) - -Arguments -Data: a vector -Weights: a vector - - - - - -Winsorized Mean - -winsormean(Data, Winsorized percentage (at each end)) - -Arguments -Data: a vector -Winsorized percentage (at each end): a free value - - - - - - - -Moments - - -Covariance - -cov(Data 1, Data 2) -covar -Arguments -Data 1: a vector -Data 2: a vector - - - - - -Mean Deviation - -meandev(Data) - -Arguments -Data: a vector - - - - - -Pooled Variance - -poolvar(Data 1, Data 2) - -Arguments -Data 1: a vector -Data 2: a vector - - - - - -Standard Deviation (entire population) - -stdevp(Data) - -Arguments -Data: a vector - - - - - -Standard Deviation (random sampling) - -stdev(Data) - -Arguments -Data: a vector - - - - - -Standard Error - -stderr(Data) - -Arguments -Data: a vector - - - - - -Variance (entire population) - -varp(Data) - -Arguments -Data: a vector - - - - - -Variance (random sampling) - -var(Data) - -Arguments -Data: a vector - - - - - - - -Regression - - -Pearson's Correlation Coefficient - -pearson(Data 1, Data 2) -correl -Arguments -Data 1: a vector -Data 2: a vector - - - -Requirement -dimension("Data 1")=dimension("Data 2") - - - - - -Spearman's Rho - -spearman(Data 1, Data 2) - -Arguments -Data 1: a vector -Data 2: a vector - - - -Requirement -dimension("Data 1")=dimension("Data 2") - - - - - -Statistical Correlation - -cor(Data 1, Data 2) - -Arguments -Data 1: a vector -Data 2: a vector - - - - - - - -Statistical Tests - - -Paired T-Test - -pttest(Data 1, Data 2) - -Arguments -Data 1: a vector -Data 2: a vector - - - - - -Unpaired T-Test - -ttest(Data 1, Data 2) - -Arguments -Data 1: a vector -Data 2: a vector - - - - - - - - -Step Functions - - -Heaviside Step Function - -heaviside(Value) -Discontinuous function also known as "unit step function". Returns 0 if x < 0, 1 if x > 0, and 1/2 if x = 0. - -Arguments -Value: a real number - - - - - -Logit Transformation - -logit(Value) - -Arguments -Value: a number - - - - - -Ramp Function - -ramp(Value) - -Arguments -Value: a real number - - - - - -Rectangular Function - -rectangular(Value) - -Arguments -Value: a real number - - - - - -Sigmoid Function - -sigmoid(Value) - -Arguments -Value: a number - - - - - -Triangular Function - -triangular(Value) - -Arguments -Value: a real number - - - - - - - -Trigonometry - - -Cosecant - -csc(Angle) - -Arguments -Angle: an angle or a number (using the default angle unit) - - - - - -Cosine - -cos(Angle) - -Arguments -Angle: an angle or a number (using the default angle unit) - - - - - -Cotangent - -cot(Angle) - -Arguments -Angle: an angle or a number (using the default angle unit) - - - - - -Hyperbolic Cosecant - -csch(argument 1) - -Arguments -1: a free value - - - - - -Hyperbolic Cosine - -cosh(argument 1) - -Arguments -1: a number - - - - - -Hyperbolic Cotangent - -coth(argument 1) - -Arguments -1: a free value - - - - - -Hyperbolic Secant - -sech(argument 1) - -Arguments -1: a free value - - - - - -Hyperbolic Sine - -sinh(argument 1) - -Arguments -1: a number - - - - - -Hyperbolic Tangent - -tanh(argument 1) - -Arguments -1: a free value - - - - - -Inverse Cosecant - -acsc(argument 1) - -Arguments -1: a free value - - - - - -Inverse Cosine - -acos(argument 1) - -Arguments -1: a number - - - - - -Inverse Cotangent - -acot(argument 1) - -Arguments -1: a free value - - - - - -Inverse Hyperbolic Cosecant - -acsch(argument 1) - -Arguments -1: a free value - - - - - -Inverse Hyperbolic Cosine - -acosh(argument 1) - -Arguments -1: a number - - - - - -Inverse Hyperbolic Cotangent - -acoth(argument 1) - -Arguments -1: a free value - - - - - -Inverse Hyperbolic Secant - -asech(argument 1) - -Arguments -1: a free value - - - - - -Inverse Hyperbolic Sine - -asinh(argument 1) - -Arguments -1: a number - - - - - -Inverse Hyperbolic Tangent - -atanh(argument 1) - -Arguments -1: a number - - - - - -Inverse Secant - -asec(argument 1) - -Arguments -1: a free value - - - - - -Inverse Sine - -asin(argument 1) - -Arguments -1: a number - - - - - -Inverse Tangent - -atan(argument 1) - -Arguments -1: a number - - - - - -Radians to Default Angle Unit - -radtodef(Radians) - -Arguments -Radians: a free value - - - - - -Secant - -sec(Angle) - -Arguments -Angle: an angle or a number (using the default angle unit) - - - - - -Sine - -sin(Angle) - -Arguments -Angle: an angle or a number (using the default angle unit) - - - - - -Tangent - -tan(Angle) - -Arguments -Angle: an angle or a number (using the default angle unit) - - - - - - - -Utilities - - -ASCII Char - -char(Value) - -Arguments -Value: an integer >= 32 and <= 127 - - - - - -ASCII Value - -code(Character) - -Arguments -Character: a text string that fulfills the condition: "len(\x) = 1" - - - - - -Concatenate Strings - -concatenate(Text string 1[, Text string 2], ...) - -Arguments -Text string 1: a text string -Text string 2: a text string (optional) - - - - - -Custom Sum of Elements - -csum(First element, Last element, Initial value, Function, Value variable, Element variable, Vector[, Index variable][, Vector variable]) - -Arguments -First element: an integer -Last element: an integer -Initial value: a free value -Function: a free value -Value variable: an unknown variable/symbol -Element variable: an unknown variable/symbol -Vector: a vector -Index variable: an unknown variable/symbol (optional, default: "") -Vector variable: an unknown variable/symbol (optional, default: "") - - - - - -Display Error - -error(Message) - -Arguments -Message: a text string - - - - - -Display Message - -message(Message) - -Arguments -Message: a text string - - - - - -Display Warning - -warning(Message) - -Arguments -Message: a text string - - - - - -Function - -function(Expression, Arguments) - -Arguments -Expression: a text string -Arguments: a vector - - - - - -Length of string - -len(Text) - -Arguments -Text: a text string - - - - - -Process Matrix Elements - -processm(Function, Element variable, Matrix[, Row variable][, Column variable][, Matrix variable]) - -Arguments -Function: a free value -Element variable: an unknown variable/symbol -Matrix: a matrix -Row variable: an unknown variable/symbol (optional, default: "") -Column variable: an unknown variable/symbol (optional, default: "") -Matrix variable: an unknown variable/symbol (optional, default: "") - - - - - -Process Vector Elements - -process(Function, Element variable, Vector[, Index variable][, Vector variable]) - -Arguments -Function: a free value -Element variable: an unknown variable/symbol -Vector: a vector -Index variable: an unknown variable/symbol (optional, default: "") -Vector variable: an unknown variable/symbol (optional, default: "") - - - - - -RPN Stack Register - -register(Index) -Returns the value of a RPN stack register. - -Arguments -Index: an integer >= 1 - - - - - -RPN Stack Vector - -stack() -Returns the RPN stack as a vector. - - - -Replace - -replace(Expression, Original value, New value[, Precalculate expression]) -Replaces a certain value in an expression with a new value. The expression is calculated before the replacement if the fourth argument is true. - -Arguments -Expression: a free value -Original value: a free value -New value: a free value -Precalculate expression: a boolean (0 or 1) (optional, default: 0) - - - - - -Save as Variable - -save(Value, Name[, Category][, Title]) - -Arguments -Value: a free value -Name: a text string -Category: a text string (optional, default: Temporary) -Title: a text string (optional) - - - - - -Select Vector Elements - -select(Vector, Condition[, Element variable][, Select first match]) - -Arguments -Vector: a free value -Condition: a free value -Element variable: an unknown variable/symbol (optional, default: x) -Select first match: a boolean (0 or 1) (optional, default: 0) - - - - - -Strip Units - -nounit(Expression) -strip_unitsRemoves all units from an expression. The expression is calculated before the removal. - -Arguments -Expression: a free value - - - - - -Title - -title(Name) - -Arguments -Name: a valid function, unit or variable name - - - - - - - diff --git a/doc/en/qalculate_tde/gnuplot.png b/doc/en/qalculate_tde/gnuplot.png deleted file mode 100644 index 62cdd01..0000000 Binary files a/doc/en/qalculate_tde/gnuplot.png and /dev/null differ diff --git a/doc/en/qalculate_tde/import-csv.png b/doc/en/qalculate_tde/import-csv.png deleted file mode 100644 index 12561d3..0000000 Binary files a/doc/en/qalculate_tde/import-csv.png and /dev/null differ diff --git a/doc/en/qalculate_tde/index.docbook b/doc/en/qalculate_tde/index.docbook deleted file mode 100644 index 3ae43a3..0000000 --- a/doc/en/qalculate_tde/index.docbook +++ /dev/null @@ -1,1515 +0,0 @@ - -Qalculate! 0.9.7"> - - - - - - - -]> - - - - -The &qalculate_tde; Handbook - - - - - -Niklas Knutsson - -
nq@altern.org
-
-
-
- - - - -2005 -Niklas Knutsson - - - -&FDLNotice; - - - -2007-05-25 -0.9.7 - - - -&qalculate_tde; is a multi-purpose desktop calculator for GNU/Linux. -It is small and simple to use but with much power and versatility underneath. -Features include customizable functions, units, arbitrary precision, plotting, and a user-friendly -interface. - - - - -KDE -qalculate-tde -calculator -math - - -
- - -Introduction - -Qalculate! is not your regular software replication of the cheapest available calculator. Qalculate! aims to make full use of the superior interface, power and flexibility of modern computers. - - -The center of attention in Qalculate! is the expression entry, Instead of entering each number in a mathematical expression separately, you can directly write the whole expression and later modify it. Just enter an expression as you would write it on paper, press Enter and voila! - - -The interpretation of expressions is flexible and fault tolerant, and if you nevertheless do something wrong, Qalculate! will tell you so. Not fully solvable expressions are however not errors. Qalculate! will simplify as far as it can and answer with an expression. - - -In addition to numbers and arithmetic operators, an expression may contain any combination of variables, units, and functions. These are immediately accessible from the user interface — the menu bar, the managers, the calculator keypad, and automatic completion. - - -Qalculate! also has some special tools to increase your efficiency, including a number base conversion dialog and a simple plotting interface. - - -Although use of Qalculate! for simple calculations should be natural and self-explanatory, reading the rest of the manual can help you maximize your productivity and discover some maybe unexpected features. More advanced users should read on and discover a large number of customization options and the ability to create and modify your own variables, functions and units directly from the user interface. - - - - -User Interface - -Main Window -
- Main Window - - - - - - - -
- -The main window provides a menu bar, the expression entry, the result display and a calculator keypad or history view which can be shown/hidden by clicking on Keypad and History, respectively. There are three buttons to the right of the expression entry and the result display. The upper button performs calculation of the entered expression (same as Enter), the one below saves the current result as a variable (see ), while the last button opens a dialog for conversion of units in the result (see ). When non-default options for the interpretion of expressions have been selected, the choice will be indicated in a small status area below the expression entry, to the right. - -
- -Expression Entry - -The expression entry is the most important part of the Qalculate! user interface. The normal calculation procedure in Qalculate! is to type in a mathematical expression (ex. 5+5) and press Enter (or click Execute). The result (10) is then displayed below the expression entry in the result display. - -
- Completion - - - - - - - -
- -Qalculate! helps out with the expression by giving a list of possible endings to words representing functions, variables and units. The list will narrow with each letter typed. Select an item in the list and the name will be completed. If a function was selected, parenthesis will be added and the position moved for immediate entry of arguments. - - -As the expression is typed in, the area directly direclty below the expression entry, to the left, will show useful information. By default the calculator's interpretation of the expression is shown (ex. 5 * meter for 5m). The interpretation will be displayed in red (configurable) if there are errors in the expression or in blue for lesser errors (for example too many arguments in a function). If the last typed in text represents a function, and arguments are about to be entered, the functions name and its arguments will be displayed. The first argument in the information text is highlighted and includes information about its type and restrictions and when an argument has been entered, the next will be highlighted. - - -After execution of an expression, the whole expression will be marked. This normally means that if something new is entered, the old expression will be overwritten. If, however, an operator (+, −, *, /, ^) is entered first, the old expression will instead be the target of action. The operator will then apply to the whole expression, which is put in parenthesis. This works on all marked ranges, meaning that this way an expression can conveniently be put in parenthesis. Functions set the selection as their first argument. - - -The Up and Down keys will access previously entered expressions. With focus in the expression entry, Up traverses backwards in the expression history and Down forward. - - -The font used for the expression entry can be selected in the preferences dialog (EditConfigure Qalculate!). - -
- -Result Display - -The result of calculations is displayed in the open area below the expression entry. The font used for the result display can be selected in the preferences dialog (EditConfigure Qalculate!). Use of Unicode signs can be turned off in the same dialog. Otherwise Qalculate! will try to make the result as fancy as possible and print π for pi, √ for sqrt, € for euro, and so on. Information about customization of the mathematical result output is available in . - - -In front of the result an equals or approximately equals sign is shown. This indicates whether Qalculate! was able to calculate/display the result exact or only approximate, in the current mode. - - -The result display has a context menu, which pops up when clicking with the right mouse button anywhere in the field. This menu provides a subset of the display alternatives from the mode menu () and some actions from the edit menu (). See more info in . Show Parsed Expression shows how the entered expression was interpreted before the calculation leading to the current result. - - -When you move the mouse over parts of the result, descriptions will pop up for variables, functions and units. This will only work if you have tooltips enabled in KDE. You can also show this information by double clicking or selecting Show Object Info in the context menu. For matrices and vectors, this will open a window with a spreadsheet-like table displaying the contents of the matrix/vector. - - -To copy the result, either select EditCopy Result, or mark and copy the text from the result display or history. Note that all results are not displayed in the result display as an expression which can be used directly in the expression entry. This is true for divisions, powers and vectors. For example, when the result "x^5" is marked and copied, the power sign will be lost. - - - -Keypad - -The keypad provides access to a fairly small set of traditional calculator buttons, which work as expected. The top buttons (from left to right) toggles exact calculation, toggles fractional number display, selects display mode and selects number base in result (see ). -
- Keypad - - - - - - - -
-
-
- -Calculation History - -The history view provides access to previous calculation results (50 rows are reloaded on restart). Previous expressions and results, as well as errors and warnings, are displayed in plain text and can be marked and copied (from the right-button context menu or with CtrlC) to the expression entry or elsewhere. -
- Calculation History - - - - - - - -
- -
-
- -Menu Bar - -The menus in the menu bar provides access to most of the functionality of Qalculate!. Their contents are listed and described below. - - - File Menu - - - - - - Menu Item - Description - - - - - New - Submenu for creation of new objects. See . - - - Import CSV File... - Opens a dialog for import of a data file as a matrix or vectors. - - - Export CSV File... - Opens a dialog for export of a matrix or vector to a data file. - - - Store Result... (CtrlS) - Stores the current result as a variable. See . - - - Save Result Image... - Saves the result display to a PNG image. - - - Save Definitions - Saves all user definitions (variables, functions and units). - - - Update Exchange Rates - Downloads current exchange rates from the Internet. - - - Plot Functions/Data - Opens the plot dialog. See . - - - Convert Number Bases - Opens the number bases converter. See - - - Periodic Table - Shows a periodic table, with property values which can be inserted in the expression, in a new window. - - - Quit (CtrlQ) - Exits Qalculate! - - - -
- - New Menu - - - - - - Menu Item - Description - - - - - Variable - Opens the variable edit dialog for creation of a new variable. - - - Matrix - Opens a dialog for entry of a new matrix variable. - - - Vector - Opens a dialog for entry of a new vector variable. - - - Unknown Variable - Opens the variable edit dialog for creation of a new unknown variable. - - - Function - Opens the function edit dialog for creation of a new function. - - - Data Set - Opens the data set edit dialog for creation of a new data set. - - - Unit - Opens the unit edit dialog for creation of a new unit. - - - -
- - Edit Menu - - - - - - Menu Item - Description - - - - - Manage Variables (F2) - Opens the variable manager. See . - - - Manage Functions (F3) - Opens the function manager. See . - - - Manage Units (F4) - Opens the unit manager. See . - - - Manage Data Sets - Opens the data set manager. - - - Factorize - Factorizes the current result. For multivariate rational polynomials, only square free factorization is supported. - - - Simplify - Simplifies the current result. Note that easy simplifications are always automatically performed. - - - Set Unknowns... - Opens a dialog where the values of unknown variables in the result can be set and the result recalculated. - - - Convert To Unit - Submenu with units. Select a unit to convert the current result. - - - Set Prefix - Submenu for choice of unit prefix in current result. - - - Convert To Unit Expression (CtrlT) - Opens the convert to unit dialog for conversion of result to custom unit expression. See . - - - Convert To Base Units - Splits up unit(s) in the current result into base units. - - - Convert To Best Unit - Tries to convert the units in the current result so that as few units as possible is used. Base units are prioritized. - - - Insert Matrix - Opens a dialog where you can create a matrix in a spreadsheet-like table and insert into the expression entry. If selected expression text is a matrix, then the matrix is edited. - - - Insert Vector - Opens a dialog where you can create a vector in a spreadsheet-like table and insert into the expression entry. If selected expression text is a vector, then the vector is edited. - - - Copy Result (F5) - Copies the current result to the clipboard. - - - Configure Qalculate! - Opens the preferences dialog, which controls settings for visual appearance and start/exit actions. - - - Configure Shortcuts... - Opens a dialog for configuring keyboard shortcuts. - - - -
- - Mode Menu - - - - - - Menu Item - Description - - - - - Number Base - Submenu with a list of number bases (binary, octal, decimal, hexadecimal, sexagesimal, time format, and other bases, and roman numerals) to select for result display, and a menu item (CtrlB) for opening a dialog to switch number bases in expression (input) and result (output). - - - Numerical Display - Submenu which selects numerical display mode. See . - - - Fractional Display - Submenu which selects decimal, fractional or combined fractional display. See . - - - Unit Display - Submenu which controls the display of units and prefixes. See . - - - Angle Unit - Submenu which sets the default angle unit for trigonometric functions. - - - Abbreviate Names - Toggles on/off use of abbreviation for unit, prefix, variable and function names in result display. - - - Enabled Objects - Submenu which enables/disables variables, functions, units and unknowns (will not affect defined unknown variables and quoted unknowns), and calculation of variables (If calculation of variables is not on, all variables will be treated as unknown). Here you can also disable complex and infinite results. - - - Approximation - Submenu which switches between different approximation modes. - - - Assumptions - Submenu which changes default assumptions for unknown variables. - - - Algebraic Mode - Submenu with options to automatically simplify or factorize the final result. Note that even if this is set to none, easy simplifications will be performed. In this menu, the option toggle on/off use of the assumption that unknown denominators not are zero is also found. This alternative makes it possible to avoid the situation where expressions such as (x-1)/(x-1) can not be further simplified because the denominator might be zero (if x equals 1). - - - Read Precision - Enables/disables interpretation of input numbers with decimals as approximate with a precision equal to the number of digits (after preceding zeroes). - - - Limit Implicit Multiplication - Activates/deactivates limits to implicit multiplication when parsing and displaying expressions. For details see - - - RPN Mode (CtrlR) - Toggles Reverse Polish Notation mode on/off. For details see - - - RPN Syntax - Toggles use of Reverse Polish Notation syntax in expressions on/off. - - - Precision - Opens a dialog to change precision in calculations. - - - Decimals - Opens a dialog to change displayed number of decimals. - - - Meta Modes - Provides a list of available meta modes for loading and menu items to save and delete modes. - - - Save Default Mode - Saves the current calculator mode as the startup default. - - - -
- - Functions Menu - - - - - - Menu Item - Description - - - - - (Recent functions list) - Select a function to open the insert function dialog. - - - (Function list) - Select a function to open the insert function dialog. - - - -
- - Variables Menu - - - - - - Menu Item - Description - - - - - (Recent variables list) - Select a variable to insert it into the expression entry. - - - (Variable list) - Select a variable to insert it into the expression entry. - - - -
- - Units Menu - - - - - - Menu Item - Description - - - - - (Recent units list) - Select a unit to insert it into the expression entry. - - - (Unit list) - Select a unit to insert it into the expression entry. - - - -
- - Help Menu - - - - - - Menu Item - Description - - - - - Qalculate! Handbook(F1) - Invokes the KDE Help system starting at the Qalculate! help pages. (this document). - - - What's This?(ShiftF1) - Changes the mouse cursor to a combination arrow and question mark. Clicking on items within Qalculate! will open a help window (if one exists for the particular item) explaining the item's function. - - - About Qalculate! - This will display version and author information. - - - About KDE - This displays the KDE version and other basic information. - - - -
- -
- -Variable/Function/Unit Managers - -The manager windows provide a structural way of working with variables, functions and units (collectively referred to as objects). The managers for the three different objects are essentially similar. They can be opened from the edit menu. F2, F3 and F4 can also be used for variables, functions and units respectively. The function manager can also be opened with the f(x) button in the keypad. - -
- Variable Manager - - - - - - - -
- -To the left is a category tree and beside that is a list of all objects in the selected category, including all subcategories. Objects without a category are put under Uncategorized. The top category, All, provides a list of all objects, except those that are deactivated and available in the second top-level category — Inactive. The object list does, in addition to descriptive names, for variables have an extra column for values of variables, and units have additional columns for abbreviation/singular/plural and base unit. - - -The buttons on the right work on the selected object in the list. New opens a dialog for creation of a new object, while Edit opens the same dialog to edit the selected unit. Insert inserts the object into the expression entry in the main window, Delete removes the object and (De)activate toggles recognition in expressions on/off. The unit manager has an additional button for conversion of the current result and the variable manager a button for export to a data file. - -
- Function Manager - - - - - - - -
- -The function manager has a description box at the bottom, which shows the syntax, description and arguments of the selected function. - -
- Unit Manager - - - - - - - -
- -The unit manager has an area for quick conversion between units. This converts between the selected unit in the list and the selected unit in the option menu. The menu contains the same units that are available in the list. Units are converted by specification of a quantity, in the entry next to the unit to convert from, followed by Enter. - - -For more information about variables, functions and units, see , and . - -
- -Convert Number Bases Dialog - -The number bases dialog, accessible from the File Menu, is an efficient and convenient tool for conversion between binary, octal, decimal and hexadecimal numbers. This dialog contains entries for each number base. When a number is typed in any of the entries, the others are automatically updated to display the current number in their format. Numbers, or expressions, entered follow the same rules as expressions in the main expression entry. -
- Convert Number Bases Dialog - - - - - - - -
-
-
-
- - -Expressions - -Expressions are mathematical statements. Mathematical questions are asked through expressions, which contains objects tied together with operators. The result of an expression may also be an expression, if the result is not a single object. Apples and oranges can be mixed, but the result will hold them apart. Qalculate! knows algebra. - - -Objects - -In Qalculate! mathematical entities, such as numbers and variables, are referred to as objects. The recognized object types are listed below. - - - - - Numbers - - These are the regular numbers composed by digits 0-9 and a decimal sign — a dot, or a comma if it is the default decimal point in the locale/language used. If comma is used as decimal sign, the dot is still kept as an alternative decimal sign, if not explicitely turned off in the preferences dialog with Ignore dots in number (to allow it to be used as thousand separator instead). Numbers include integers, real numbers, and complex numbers. The imaginary part of complex numbers are written with as regular number followed by the special variable i, which represents the square root of -1 (ex. 2 + 3i). Spaces between digits are ignored (5 5 = 55). E (or e) can be considered as a shortcut for writing many zeroes and is equivalent to multiplication by 10 raised to the power of the right-hand value (ex. 5E3 = 5000). - Sexagesimal numbers (and time) can be entered directly using colons (ex. 5:30 = 5.5). A number immediately preceeded 0b, 0o or 0x are interpreted as a number with base 2, 8 or 16, respectively (if the default base is 10, ex. 0x3f = 63). The number base in can also be selected, either by using the base(), bin(), oct(), hex() and roman() functions, or by setting the base used for all numbers in the whole expression from ModeNumber BaseSelect Result and Expression Base.... - - - - Vectors and Matrices - - A matrix is a two-dimensional rectangular array of mathematical objects. Vectors are matrices with only one row or column, thus one-dimensional sequences of objects, Vectors and matrices are generated by vector(), matrix() and similar functions, or stored in a variable. Syntax in the form of [1, 2, 3, 4] and [[1, 2], [3, 4]] can also be used. - - - - Variables/Constants - - See . - - - - Functions - - See . - - - - Units and Prefixes - - Qalculate! understands abbreviated, plural and singular forms of unit names and prefixes. Prefixes must be put immediately before the unit to be interpreted as prefixes — 5 mm = 0.005 m, but 5 m m = 5 m^2. Also, for convenience units allow the power operator to be left out. A number following immediately after a unit is interpreted as an exponent (ex. 5 m2 = 5 m^2). This does not apply to currencies, as they might be put in front of the quantity. More information in . - - - - Unknowns - - Unknowns are text strings without any associated value. If Qalculate! finds a character that are not associated with any variable, function or unit in an expression, then it will be regarded as an unknown variable. These are temporary unknown variables with default assumptions. Unknowns can also be explicitly entered by putting a text string in quotes. This is also necessary for undefined unknown variables with more than one character (ex.xy is just one object, while xy means x * y). See . - - - - Text - - This category represent a number of different function argument types, such as regular text, dates and file names. They can, but do not need to be put in quotes except when containing the argument separator (, or ;). - - - - - -To avoid confusion, functions, units, variables and unknown variables can independently be disabled. - - -Variables, functions and units are all accessible in the menus and in the variable, function and unit managers, If their names are not remembered. Functions accessed this way has some extra conveniences. If the function has at least one argument, a dialog will pop up where arguments can be entered and a description of the -function and its arguments is available. - - -Qalculate! can handle most commonly used symbols for certain variables, functions and units, even though most are difficult to find on a keyboard. These include π for pi, √ for sqrt, € for euro, and so on. Most importantly it is possible to copy these symbols when used in the result. - - -For more information about variables, functions and units, see , and . - - - -Operators - -The following operators are defined in Qalculate! and may be used in expressions. - - - Operators - - - - - - - - - Operation - Symbol - Description - Example - Result - - - - - Addition - + - Adds the right value to the left value. - 1 + 1 - 2 - - - Subtraction - - Subtracts the right value from the left value. - 1 − 1 - 0 - - - Multiplication - ⋅ or * - Multiplies the left value by the right value. - 2 * 2 - 4 - - - Division - / - Divides the left value by the right value. - 2 / 2 - 1 - - - Exponent - ^ - Raises the left value by the right value. Can also be typed as **. Note that x^y^z equals x^(y^z), and not (x^y)^z. - 2^3 - 8 - - - 10^x - E - Multiplies the left value with 10 raised to the power of the right value. Equivalent to the exponential number format in result display. E is as much an operator as part of numbers. - 1E3 - 1000 - - - Parenthesis - ( and ) - Evaluates the expression in parenthesis first. - 5 * (1 + 1) - 10 - - - Less than - < - Returns 1 for true, if the left value is is less than the right, and 0 for false. - 1 < 2 - 1 - - - Greater than - > - Returns 1 for true, if the left value is greater than the right, and 0 for false. - 1 >2 - 0 - - - Less than or equal - ≤ or <= - Returns 1 for true, if the left value is less than or equal the right, and 0 for false. - 1 <= 2 - 1 - - - Greater than or equal - ≥ or >= - Returns 1 for true, if the left value is greater than or equal the right, and 0 for false. - 1 >= 2 - 0 - - - Equals - = - Returns 1 for true, if the left value equals the right, and 0 for false. - 1 = 2 - 0 - - - Not equals - ≠ or != - Returns 1 for true, if the left value not equals the right, and 0 for false. - 1 != 2 - 1 - - - Logical NOT - ! - Returns 1 for true, if the value to the right is false, and 0 for false. - !(1>2) - 1 - - - Logical OR - || or OR - Returns 1 for true, if the right or left value is true, and 0 for false. - 1>2 || 2>1 - 1 - - - Logical AND - && or AND - Returns 1 for true, if the right and left value is true, and 0 for false. - 1>2 && 2>1 - 0 - - - Bitwise NOT - ~ - Equivalent to -1-x. - ~(0010 | 1100) - -1111 - - - Bitwise Shift Left - << - Shifts the bits of the left value x steps to the left, where x is the value on the right. Implemented as a shortcut for shift() - 0011 << 1 - 0110 - - - Bitwise Shift Right - >> - Shifts the bits of the left value x steps to the right, where x is the value on the right. Implemented as a shortcut for shift() - 0011 << 1 - 0001 - - - Bitwise OR - | - If a bit is 1 in one of the numbers set it to 1, otherwise 0. Also functions as elementwise logical operator on vectors. - 0010 | 1100 - 1110 - - - Bitwise AND - & - If a bit is 1 in both numbers set it to 1, otherwise 0. Also functions as elementwise logical operator on vectors. - 1010 & 0011 - 0010 - - - -
- -The operator names plus, minus, times, per, AND and OR may also be used, surrounded by space, for the corresponding operation (ex. 5 plus 2, but not 5plus2, equals 5 + 2). -These operator names are localized, but AND and OR are always available. -In addition to these operators there are a couple of shortcuts for certain functions, such as 5! which equals factorial(5). - - -The multiplication sign can generally be left out. This is not true for numbers (5(5) = 25 but 5 5 = 55). Expressions can also generally be written with or without spaces with the same result (2xsin(2) equals 2 x sin(2) which equals 2*x*sin(2)), but be careful. The vast number of functions and units means that without separating spaces, the result might not be obvious. To avoid confusion Qalculate! can limit the use of implicit multiplication (ModeLimit Implicit Multiplication), so that space, operator or parenthesis must be put between functions, units and variables (in this mode esqrt(5) does not equal e * sqrt(5)). Also note that unit prefixes must be put immediately before the unit, to be interpreted as prefixes (5 mm = 0.005 m, but 5 m m = 5m^2). You can see how to expression was interpreted in the history window. - - -Usually, mathematical expressions are written as normally expected. Standard operator precedence apply. Expressions are evaluated according to the following priorities: - - Parenthesis - E (10^x) - Short multiplication in front of variables, units, functions, parenthesis etc. (ex. 5(2+3)). Note that this implies that 2/5 cm equals 2/(5 cm) and not (2/5) cm - Functions (ex. sqrt(2)) - Exponents (x^y) - Multiplication and division (*, /) - Addition and subtraction (+, −) - Bitwise NOT (~) - << and >> - Bitwise AND (&) - Bitwise OR (|) - Comparison (>, <, =, >=, <=) - Logical NOT (!) - Logical AND (&&) - Logical OR (||) - - - - -
-
- - -Calculator Modes - -Qalculate! provides flexible parsing, calculation output and result display. There are several ways in which parsing of expression and display of results can be customized. These modes can generally be changed through the mode menu. The state of each mode can be saved under a name in ModeMeta Modes for quick access. The Preset and Default meta modes are always available and represents the state when Qalculate! is load for the first time and the mode settings automatically loaded at each startup (and by default saved on exit), respectively. Different modes are summarized below. - - -Number Bases - -Non-decimal bases can be selected for display of numbers in the result. This include regular number bases (binary, octal, hexadecimal, sexagesimal) as well as sexagesimal time format and roman numerals. All number bases between 2 and 36, and base for expression input, can be selected from a dialog window accessed from ModeNumber BaseOther... or ModeNumber BaseSelect Result and Expression Base.... The convert number bases dialog (see ) is efficient for simple conversion between common bases. - - - -Numerical Display - -These modes mainly control when numbers are displayed exponentially (ex. 2.62E3 which equals 2620). In the default normal mode, numbers are displayed in exponential format if the exponent will be greater than the current precision. In scientific mode the lowest exponent is 3. In simple numerical mode the exponential format is never used and it is always used in purely scientific mode. In the engineering mode, the exponent is always a multiple of three. This is naturally equivalently true for numbers less than one and negative exponents. When the scientific modes are selected in the keypad (not from the menubar), negative exponents are automatically activated and sort minus last deactivated, while normal and simple modes do the opposite. - - - -Indicate Infinite Series - -If this option is on, Qalculate! will not round infinitely repeating digit sequences if discovered. Instead ... will be displayed after the maximal number of decimals and the result indicated as exact (compare 2/3 = 0.666667 with 2/3 = 0.666666...). - - - -Round Halfway Number To Even - -With this option, halfway numbers will be rounded to even instead of upwards (ex. 2.65 is then rounded to 2.6 instead of 2.7). Note that this behavior is always applied in the round() function. - - - -Show Ending Zeroes - -if this option is on, approximate numbers in the result will be appended with zeroes, so that the number of digits (after preceding zeroes) will equal the precision. - - - -Negative Exponents - -If negative exponents is activated, division is shown as a negative power (ex. x * y^-1 instead of x / y). - - - -Sort Minus Last - -This option decides if minus signs should be avoided in the first positions of the result expression. - - - -Fractional Display - -This controls if numbers are displayed in fractional or decimal mode. Decimal mode displays numbers as usually expected (6/4 = 1.5), combined displays a whole number and a fraction (6/4 = 1 1/2) and fractional only displays as fraction (6/4 = 3/2). - - - -Unit Display - -The use of prefixes for units can be toggled on and off. By default prefixes representing a power of ten not dividable by three (centi, deci, deca and hekto) are not used and need to be enabled. If denominator prefixes are not explicitly enabled, prefixes will only be set for the numerator in a fractional unit expression (ex. 1 Mg/m or 1 kg/mm). The place units separately alternative controls the display of unit expressions in result. If it is enabled (default) units will be displayed separate from other parts of the expression at the end (compare (5x*m)/(y*s) and 5x/y m/s). - - - -Abbreviate Names - -The display of unit, prefix, variable and function names can be controlled by selecting to display abbreviations or full length names (ex. 5 cm or 5 centimeters). Both abbreviations and long names can however always be entered in expressions. - - - -Approximation - -When always exact mode is on, the calculation will not go further than what can be calculated exactly (ex. sqrt(2+3) = sqrt(5)). The default Try Exact mode, will calculate the result exact as far as possible and then approximately. Approximate mode will directly calculate a approximate result, thus being a bit faster but giving a less correct approximate indication (sin(pi/2) return approximately one instead of exactly one). - - - -Assumptions - -This controls the default assumptions for unknown variables without explicitly defined assumptions. See . -The assume denominators non-zero alternative makes it possible to avoid the situation where expressions such as (x-1)/(x-1) can not be further simplified because the denominator might be zero (if x equals 1). With this alternative activated the example can be reduced to 1. - - - -Precision - -Precision controls the precision in approximate numbers and the number of significant digits. If the read precision option is turned on, input numbers with decimals will be interpreted as approximate with a precision equal to the number of digits (ex. 2.50 + 3.4567 = 5.96). - - - -Decimals - -In the decimals dialog, the number of decimals displayed can be controlled. This includes minimal (will fill out with zeroes) and maximal number of decimals (will round numbers). - - - -Limit Implicit Multiplication - -If the limit implicit multiplication mode is activated, the use of implicite multiplication when parsing expressions and displaying results will be limited to avoid confusion. For example, if this mode is not activated and integrte(5x) is accidently typed instead of integrate(5x), the expression is interpreted as int(e * e * (5 * x) * gr * t) (displayed in history window). The result will then without any error be int(2.3940139x * km^2) instead of 2.5x^2. If limit implicit multiplication is turned on to mistyped expression would instead show an error telling that integrte is not a valid variable, function or unit (unless unknowns is not enabled in which case the result will be 5 "integrate" * x). When implicit multiplication is limited variables, functions and units must be separated by a space, opertor or parenthesis (xy does not equal x * y). - - - - - -The RPN Mode - -The Reverse Polish Notation mode can be activated with ModeRPN Mode, CtrlR or from the context menu of the expression entry. For details about what Reverse Polish Notation is and how it generally works, see for example the RPN article at Wikipedia. - - -Central to the RPN mode is the stack, a list of registers/values that is operated on by functions and operators. The stack has a variable number of registers which can hold an unlimited number of values. The stack size is dynamically changed when a new value is added and the first value on the stack is shown in the result display. Mathematical operators such as plus and minus then operates on the first two, last added, values on the stack. The second value is changed with input from the first value. For example, the minus operator subtracts the first value from the second. Functions which require exactly one argument operates on the first value on the stack. Other functions, which require multiple arguments, must be entered in normal expression based way. - - -The RPN mode still allows full expression to be entered (you can add 5x+3+23+sin(2) directly to the stack). The buttons on the keypad do not insert operators and functions in the expression entry, but instead applies them to the stack. This is also true for the keypad keys on the keyboard. Enter calculates the current expressions and adds it to the stack. If the expression entry is not empty when applying an operator or function to the stack, the expression is first calculated and added to the stack. All keys on the main part of the keyboard add the corresponding characters in expression entry, unless the Use only keypad keys for RPN option is deactivated from the preferences dialog. To apply the raise operator '^' to the stack, without clicking the keypad button with the mouse, use the Ctrl* (keypad) shortcut. If the expression only contains an operator or a function, which requires exactly one argument, the operator/function is applied to the stack. - - -For example, 5 ENTER 3 + 2 / adds 5 to the stack, then adds 3 to the stack and moves 5 down a step and adds 3 to 5. The first value, 3, is removed from the stack and the value left is 8. Then 2 is added to the stack and 8 is divided by 2, resulting in 4. This would in a single expression be entered as (5+3)/2. - -
- RPN Mode - - - - - - - -
- -The RPN mode adds a third page to the main window, for display and manipulation of the values on the stack. This shows a list of values on the stack, with the last added value on the top. On the right are buttons for moving the selected value up or down, editing or removing the selected value, or remove all values from the stack. The equals buttons do in RPN mode in addition to calculating the expression, add it to the stack. - - -Changes in the display of result only affects the first value on the stack. - - -Note that Qalculate! in addition to the RPN mode, has a RPN syntax. The RPN syntax controls how expressions is interpreted. This means that instead of as with a traditional RPN calculator, where each value and operator is put on the stack separately, all values and operators are entered directly in an expression, with ENTER replaced by space (ex. 5 2 + which corresponds to 5 ENTER 2 ENTER +, and equals 5 + 2 in regular notation). - -
-
- - -Variables - -Variables are used to conveniently store a fixed value/result under a name. Variables can store everything that a result may contain, including numbers, units, variables, unsolved expressions and functions etc. - - -There two different kinds of variables known and unknown. Known variables represents a fixed value, usually a number, while unknown variables represents a range or type of values (ex. a non-negative integer). - - -Some common constants that can only be approximately represented by a real number, such as pi and e, are special known variables. They are not fixed but are recalculated each time precision changes, thereby not compromising the arbitrary precision of Qalculate!. - - -The ans variable, which always contains the last calculated result, is another special and useful variable. - - -The unknown variables x, y and z are predefined. They cannot be deleted, but changed. By default they use the default assumptions. - - -For a complete list of available variables see or the variable manager. - - -Variable creation/editing -
- Store Result - - - - - - - -
- -The easiest way to create a known variable is to store the current result. This can be done by clicking the STO button or selecting FileStore Result.... Type a name for the variable in the dialog that pops up and optionally enter a category and descriptive name to keep variables well organized. - - -Known variables can also be created from scratch by selecting FileNewVariable or by clicking New in the variable manager. The value can then be filled in, in the text field below the name, and specified as exact or approximate. - -
- New Variable - - - - - - - -
- -The dialog for creation of unknown variables are accessed by selecting FileNewUnknown Variable. Instead of a value, an assumed type and sign can then be entered. - - -Edit a variable by clicking Edit in the variable manager. - - - -Variables stored in the Temporary category will not be saved after the program exit. - - -
- -Vectors and Matrices - -Vectors and matrices are most effectively used stored in a variable. Qalculate! provides separate tools for these variables. They use a different dialog, where each element can be edited separately as in a spreadsheet. As with other variables, click Edit in the variable manager to edit a matrix/vector variable, but to create a new, select FileNewMatrix or FileNewVector. - -
- Matrix/Vector Edit Dialog - - - - - - - -
- -In this dialog, name, category and descriptive name are typed in as usual, but instead of a single value entry, the matrix/vector edit dialog has a table of entries. Select number of rows and columns above. In a vector this only determines how many value entries that are shown in the table and empty entries will be ignored. For matrices, each entry in the table is an element in the matrix. It is possible to switch between matrix and vector in the dialog (the menu item selected only determines the initial mode). - - - -Matrices and vectors can also be loaded from data files. These files most be plain text files with values organized in separated rows and columns. Select FileImport CSV File... and a dialog window pops up. First select the file to import and then specify whether if it shall be imported as a matrix or vectors. A name, descriptive name and category can optionally be typed in. If the name field is empty, the file name will be used instead. After that, the row in the file where the data starts should be specified. as well as whether this first row contains column headings. Finally the delimiter, used to separate columns in the file, must be selected. Click OK and variables will be generated from the file. If vectors are to be generated and the file contains more than one column, the name will be used as a subcategory and each variable will add the column heading (or Column 1, Column 2, ...) to the name and the descriptive name. - -
- Import CSV Dialog - - - - - - - -
- -The load() function can be used to access a CSV file directly in an expression. The reversed action is also available with export(), or the dialog accessed with FileExport CSV File... or from the variable manager. - -
-
- - -Functions - -Functions are essentially mathematical formulas. They are used to store expressions with variable values, arguments. To execute a function, the values for a number of arguments need to specified. These arguments are then inserted into the expression, making it possible to calculate. - - -Functions is normally entered in an expression by writing the name followed by arguments, separated by commas (or semicolons in languages with comma as decimal point), in parenthesis, thus following the syntax name(arg1, arg2, ...). Qalculate! will give a helpful error message if the arguments are not correct. - -
- Insert function dialog - - - - - - - -
- -The insert function dialog presents an easy way to insert a function and its arguments. - - -Although it can lower the readability of an expression, it is perfectly legal to skip the parenthesis and put the arguments after a space, and end with a space or operator. This is most useful in short expressions with single argument functions (ex. sqrt 5). - - -Argument types include: - - Free — anything - Number — a numeric value - Integer — a whole number - Symbol — a defined or undefined unknown variable - Text — a free text string - Date — a date in local or standard format (Year-Month-Day, recommended) - Vector - Matrix - Boolean — 0 for false, 1 for true - Object — the name of a variable, function or unit - Variable — the name of a variable - Function — the name of a function - Unit — the name of a unit - File — the path to a file - Angle — an angle used in trigonometric functions, meaning a number and an angle unit. If no angle unit is included the default is used. - - - -The argument can be restricted by further conditions. For example that a number must be positive. - - -Available Functions - -Here the main function categories and some of their members are described, to give an overview of available functions. For information about separate functions and a complete list of all available functions see or the function manager. - - -Algebra - -Contains sum() and product(), which corresponds to the sum and product signs. solve() solves equations (ex. solve(x * 2 = 8) returns 4 meaning that x equals 4). Use solve2() and multisolve() to solve multiple equations with multiple variables. - - - -Calculus - -Includes diff(), which calculates the derivative of an expression with optional arguments with respect to (default x) and order (default 1), and a limited integration function. - - - -Combinatorics - -Contains functions such as perm() for permutations, comb() for combinations, and factorial(). - - - -Data Sets - -A data set consists of a set of properties and objects, which can be accessed by a function which takes two arguments — object and property. The function returns the object's value for the selected property. -For example, the data in the Elements data set is accessed with the atom() function, with the element (referenced using atomic symbol, number or name) and property (ex. weight) as arguments. -The special property info displays all properties of the object in a dialog window. - - - -Date & Time - -Includes days() and yearfrac() which returns the number of days and fractional years, respectively, between two dates. - - - -Exponents & Logarithms - -Standard logarithmic and exponential functions. ln() calculates the natural logarithm of a number, while log() allows a choice of base as the second argument. The exponential functions does not really add anything beyond the capabilities of the exponential operator, ^. - - - -Economics - -This essentially includes most of the financial functions that are usually found in spreadsheet applications. - - - -Elements - -This category includes functions to retrieve data such as atomic weight. The atom() function opens a window with available data of an element. These functions accept the number, symbol or name of the element as argument. The data are loaded on demand. - - - -Geometry - -Category with formulas mostly for calculation of circumference, area and volume of geometric shapes. - - - -Logical - -Some procedural functions mainly for use in other functions. These include if(), which tests a conditional expression and returns a value depending on if the expression evaluates true or false, and for(), which processes a value while a condition is true. - - - -Matrices & Vectors - -These are functions that generate, access and process matrices and vectors. The vector() function generates a vector from a variable number of arguments for elements, while matrix() first needs the number of rows and columns and then the elements from left to right. Matrices can also be imported directly from a CSV file with load(). - - -Separate elements at a specified row and column are accessed with element(). Other functions include det() for calculation of the determinant of a matrix and inverse() which returns the inverse of the given matrix, as well as functions such as sort() and rank(). - - - -Miscellaneous - -A category for functions that do not fit elsewhere. - - - -Number Theory - -Contains subcategories arithmetics, number bases, and rounding, in addition to functions such as abs(), which returns the absolute value of a number, and gcd(), the greatest common divisor. round() is the standard rounding function (note that halfway numbers are rounded to even). The functions for number bases translates a text string, representing an expression (bases that use letters does not allow variables, functions and units) with numbers in a different base, to a decimal number. Includes bin() for binary numbers, hex() for hexadecimal numbers, oct() for octal numbers and base() for numbers in a base between 2 and 36 specified in the second argument. - - - -Statistics - -Contains a lot of functions for descriptive statistics and some statistical tests. Data sets are stored as vectors. Generally, functions with a vector/data set as last argument can take elements/samples as a variable number of arguments directly instead of in a vector (ex. mean(1, 2, 3) equals mean(vector(1, 2, 3))). Also contains the rand() function, which returns a pseudo random number between 0 and 1, and does not take any arguments. - - - -Trigonometry - -Trigonometric functions, including sin(), cos(), tan(), sec(), csc(), cot(), and hyperbolic and inverse versions of those. These functions take as argument an angle. If the default angle unit (ModeAngle Unit) is set to none, the argument must have an angle unit appended (degrees, radians or gradians), otherwise the default unit will be appended automatically (and removed from result of inverse functions). - - - -Utilities - -Various utility functions. Most are only useful in definition of other functions. The save() function can however be a quick way of storing a value in a variable, and csum() can be a powerful tool for data processing. This category also contains some functions, such as char() and ascii(), that might be useful for programmers. , replace() provides an easy way of replacing unknown variables by known expressions in a value (ex. replace(5x^2+x, x, 3) equals 5*3^2+3). - - - - - - -Function creation/editing - -Functions are a bit more complex than variables, but can nevertheless be relatively easily created. FileNewFunction or click New in the function manager and the function edit dialog pops up. This dialog consists of two tabs/pages; the first with general descriptive information and the last for the function definition. First enter a name, used to reference the function in an expression. If an expression is entered a bit further down, then the function will already be fully working. A bit more does however need to be said about the function expression. - - -The expression of a function is basically a normal expression with placeholders for arguments. These placeholders consists of a backslash and a letter — x, y, z for the 1st, 2nd and 3rd arguments and a to u for argument 4 to 24. They are replaced by entered arguments when a function is calculated. The placeholders naturally also decide the number of arguments that a function requires. For example the function for triangle area (base * height / 2) has the name triangle and the expression (\x*\y)/2, which gives that triangle(2, 3) equals (2*3) / 2 and returns 3 as result. An argument can be used more than one time and all arguments must not necessarily be in order in the expression. -
- Function Edit Dialog - - - - - - - -
-
- -Additionally, optional arguments can be put in the expression with upper-case (X, Y, Z, ...) instead of lower-case letters (x, y, z, ...). The default value can be put in brackets after the letter (ex. \X{2}). The default value may be omitted and is then zero. All additional arguments after an optional argument must also be optional. - - -A condition that must be true (>0) for the function to be calculated, can optionally be entered in the text field below the expression. This follows the same conventions as function expressions. For example if the second argument must be higher than the first, \y > \x may be entered as condition. - - -Further, name, type and condition for each argument can be specified. - - -To keep functions well organized, supply a category, descriptive name and description. A function can also hidden from menus with the corresponding check box, which can be useful for sub functions. - - -Global, system-wide functions can not actually be changed by the user, but if one of these functions is edited, they are deactivated and seemingly replaced by a new function. This way global functions can be deleted by deactivation. Some functions are however hard-coded and cannot be changed by the user. - -
-
- - -Units - -Units give numbers meaning in the real world. They specify what is measured by the numbers and the scale used. Qalculate! fully incorporates units in calculations and includes all standard SI units as well as many non-standard local units. -For a complete list of available units see or the unit manager. - - -Currency - -Among units, Qalculate! has support for currencies with up-to-date exchange rates. Currencies are normally referenced with the standard three letter code due to name clashes, but a number of currency unit can also be accessed through their regular name and symbol. U.S. dollars can, for example, be referenced both as USD and dollar/dollars, or with the $ symbol. - - -Current exchange rates are automatically fetched from the European Central Bank on the Internet, the first time Qalculate! is started. By default the exchange rates will thereafter have to be updated manually from FileUpdate Exchange Rates, unless automatic updates are enabled in the preferences dialog. - - - -Conversion - -Expressions can be converted to a specific unit directly in the expression entry with the to operator, which converts the left-hand expression to a specified unit (ex. 5 feet + 2 inches to cm converts the result of 5 feet + 2 inches to centimeters and displays it). Unit expressions may only contain units, prefixes, exponents, multiplication and division. Other elements are ignored. - - -The unit conversion dialog, accessible from the Convert button, EditConvert To Unit Expression... or CtrlT, can also be used. Enter a unit in the dialog that pops up, click Apply or OK and the displayed result is then converted. In this dialog, you can also select a unit from a list accessed by clicking Selector >>. When a unit is selected from the list the expression is updated and Apply automatically pressed. -
- Unit Conversion Dialog - - - - - - - -
-
- -The final way to convert to another unit is to use the predefined units in the EditConvert To Unit menu or press Convert Result in the unit manager. EditSet Prefix can be used to select a prefix. - - -It is also possible to let Qalculate! automagically convert the result to appropriate units with EditConvert To Best Unit or EditConvert To Base Units. If instead the corresponding choice is selected from ModeUnit Display, each result will automatically be converted until the choice is deactivated (ModeUnit DisplayNo Automatic Conversion). - -
- -Unit creation/editing - -There are three different unit classes in Qalculate! — base, alias and composite units. Base units are units defined as basis for other units. Meters and seconds are typical base units. Alias units is defined in relation to another unit. For example, hour is defined as an alias unit that equals 60 minutes which in turn is defined in relation to seconds. Finally, composite units are defined by a unit expression with multiple units. Composite units often have an alias unit associated with them, as they do not have a reference name on their own. For example, a joule is defined as an alias defined in relation to a composite unit defined as Newton * meter. - - -Select FileNewUnit, or click New in the unit manager, and the unit edit dialog pops up. -
- Unit Edit Dialog - - - - - - - -
-First the unit class needs to be selected. Depending on the unit class, different elements in the dialog will be enabled. For all units, category and descriptive name can be specified to keep them well organized. A unit can also be hidden from unit menus with the corresponding check box, which can be useful for some composite units. -
- -Base and alias units normally have three different name forms defined for use in expressions — abbreviation (ex. m), singular (meter) and plural (meters). Composite units only have an internal name, used to reference the unit in definitions of other units. - - -For base units, the name is all that is needed. For alias units, on the other hand, a base unit, exponent and relation are necessary. For more complex relations an inverse relation can also be specified for conversion back from the base unit. The base unit must not necessarily be of the base unit class and it is recommended that an alias unit is defined in relation to the closest unit (ex. 1ft = 3 hands, 1 hand = 4 in, and 1 in = 0.0254 m). The relation is usually just a number that tells how large quantity of the base unit is needed to get the alias unit (alias unit = base unit * relation). More complex units can specify the relation as a full-blown expression where \x is replaced by the quantity of the base unit and \y is the exponent. For example, Degrees Celsius has the relation \x + 273.15 and the inverse relation \x − 273.15 to the base unit Kelvin. For simple relations, the reversion is automatic and ought not be defined separately. The check box below relation in the dialog specifies if the relation is exact or approximate. The exponent defines the exponential relation to the base unit, so that the alias unit equals the base unit raised to the exponent. For simple unit relations this gives: alias unit = relation * base unit^exponent. - - -Composite units need a unit expression with multiple units as base, in the base unit field. These expressions may only contain units, prefixes, exponents, multiplication and division (ex. km/h). - -
-
- - -Plotting - -Plotting in Qalculate! is done through an external program, Gnuplot. Thus Gnuplot (>= v. 3.7) need to be installed on the computer for plotting to work. - - -To plot functions or data sets, select FilePlot Functions/Data, which brings up the plot dialog. The plot dialog consists of three tabs/pages — the first for the data, the second for the function range and sampling rate, and the last for control of function sampling and appearance. - -
- Plot Data - - - - - - - -
- -Plot functions are normal expressions that represents f(x) in y=f(x) (ex. sin(x)). The x can be specified as a different unknown variable (x, y, z) or a quoted text string (actually any mathematical expression which will then be matched in the plot expression and replaced by the values on the x axis) in the variable entry below the function/data list. - - -To plot a data set, enter an expression that results in a matrix or vector. Select Vector/Matrix below and vectors will appear as one series and matrices will appear with each column or row (if selected) as a series, If the paired matrix option instead is selected, the first column/row of the matrix will constitute the y-values and the second the x-values. - - -Type in an expression, press Enter and a new window will open with the plot. The title of the series, the diagram style and smoothing of the line can also be set. The series modified must be selected in the list and to apply changes click Apply. More series that will appear in the same plot window can be added. If the scale of the y values differ, series can be put on a secondary y-axis. - - - -Even though Qalculate! does all the calculations before handing over the data to Gnuplot, the resulting data must only consist of pure numbers, as Gnuplot knows nothing about the functions, variables, units, etc. of Qalculate!. - - - -For functions, the function range — min and max x value, and the number of values or the size of the step between each y value calculated — can be specified in the function range page. - -
- Plot Settings - - - - - - - -
- -A title can be set to appear at the top of the plot, as well as labels for the x and y axis. The appearance can also be controlled by selecting or disabling legend placement, displaying/hiding the grid and borders on the top and the right side of the diagram and choosing color or monochrome graphics. The x and y scales can be made logarithmic by clicking the box on the right and filling in a desired logarithmic base. - - -To update the plot window, click Apply at the bottom of the dialog. - -
- Gnuplot - - - - - - - -
- -The plot can be saved as an image file. Click Save and select a file name and folder. The extension of the file name will decide the file type (.png for PNG image, .svg for SVG, .ps for postscript, .eps for encapsulated postscript, .tex for LaTeX, and .fig for XFig). Default is to save as a PNG image. - -
- - - - - -Credits and License - - -&qalculate_tde; - - -Program copyright 2005 Niklas Knutsson nq@altern.org - - - -Documentation copyright 2005 Niklas Knutsson nq@altern.org - - - - -&underFDL; - - - -&underGPL; - - - -&functionlist; -&variablelist; -&unitlist; - -&documentation.index; -
diff --git a/doc/en/qalculate_tde/insert-function.png b/doc/en/qalculate_tde/insert-function.png deleted file mode 100644 index 99e5940..0000000 Binary files a/doc/en/qalculate_tde/insert-function.png and /dev/null differ diff --git a/doc/en/qalculate_tde/mainwindow.png b/doc/en/qalculate_tde/mainwindow.png deleted file mode 100644 index b38ddde..0000000 Binary files a/doc/en/qalculate_tde/mainwindow.png and /dev/null differ diff --git a/doc/en/qalculate_tde/plot-data.png b/doc/en/qalculate_tde/plot-data.png deleted file mode 100644 index 3e78d3f..0000000 Binary files a/doc/en/qalculate_tde/plot-data.png and /dev/null differ diff --git a/doc/en/qalculate_tde/plot-settings.png b/doc/en/qalculate_tde/plot-settings.png deleted file mode 100644 index fa4f3a0..0000000 Binary files a/doc/en/qalculate_tde/plot-settings.png and /dev/null differ diff --git a/doc/en/qalculate_tde/rpn-mode.png b/doc/en/qalculate_tde/rpn-mode.png deleted file mode 100644 index e9aff38..0000000 Binary files a/doc/en/qalculate_tde/rpn-mode.png and /dev/null differ diff --git a/doc/en/qalculate_tde/store-variable.png b/doc/en/qalculate_tde/store-variable.png deleted file mode 100644 index ddcb4e7..0000000 Binary files a/doc/en/qalculate_tde/store-variable.png and /dev/null differ diff --git a/doc/en/qalculate_tde/unit-manager.png b/doc/en/qalculate_tde/unit-manager.png deleted file mode 100644 index 3e222f1..0000000 Binary files a/doc/en/qalculate_tde/unit-manager.png and /dev/null differ diff --git a/doc/en/qalculate_tde/units.docbook b/doc/en/qalculate_tde/units.docbook deleted file mode 100644 index 0020f2d..0000000 --- a/doc/en/qalculate_tde/units.docbook +++ /dev/null @@ -1,3455 +0,0 @@ - -Unit List - -Angle - -Angular Acceleration - -Units: Angular Acceleration - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Radians per Second Squared -(rad_p_sqs) -rad/s^2 - - - - -
-
- -Angular Velocity - -Units: Angular Velocity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Radians per Second -(rad_p_s) -rad/s - - - - -
-
- -Plane Angle - -Units: Plane Angle - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Arcminute -arcminute / arcminutes -° -1/60 - - -Arcsecond -arcsecond / arcseconds -arcminute -1/60 - - -Degree -deg / ° / degree / degrees -rad -pi/180 - - -Gradian (Gon) -gra / gradian / gradians / gon / gons -rad -pi/200 - - -Meter per Meter -(m_p_m) -m/m - - - -Radian -rad / radian / radians -m_p_m -1 - - -Turn -turn / turns -° -360 - - - -
-
- -Solid Angle - -Units: Solid Angle - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Square Meter per Square Meter -(sqm_p_sqm) -m^2/m^2 - - - -Steradian -sr / steradian / steradians -m_p_m -1 - - - -
-
-
- -Area - -Units: Area - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Acre -acre / acres -ch^2 -10 - - -Are -a / are / ares -m^2 -100 - - -Barn -b / barn / barns -m^2 -1E-28 - - -Hectare -(ha) -ha - - - -Rood -rood / roods -yd^2 -1210 - - -Section -section / sections -mi^2 -1 - - -Square Foot -(sqft) -ft^2 - - - -Square Inch -(sqin) -in^2 - - - -Square Kilometer -(sqkm) -km^2 - - - -Square Meter -(sqm) -m^2 - - - -Square Mile -(sqmi) -mi^2 - - - -Township -township / townships -section -36 - - - -
-
- -Currency - -Units: Currency - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Australian Dollars -AUD - -exchange rate - - -Austrian Schilling -ATS / schilling - -1/13.7603 - - -Belgian Franc -BEF - -1/40.3399 - - -British Pounds -GBP / £ - -exchange rate - - -Bulgarian Lev -lev / BGN - -exchange rate - - -Canadian Dollars -CAD - -exchange rate - - -Cent (USD) -¢ / cent / cents -$ -1/100 - - -Croatian Kuna -HRK - -exchange rate - - -Cypriot Pound -CYP - -exchange rate - - -Czech Koruna -CZK - -exchange rate - - -Danish Kroner -DKK - -exchange rate - - -Deutche Mark -DEM / mark - -1/1.95583 - - -Dutch Guilder -NLG / guilder - -1/2.20371 - - -Estonian Kroon -EEK - -exchange rate - - -Euro Cent -eurocent / eurocents - -1/100 - - -European Euros -EUR / € / euro / euros - - - - -Finnish Markka -FIM / markka - -1/5.94573 - - -French Franc -FRF / franc - -1/6.55957 - - -Greek Drachma -GRD - -1/340.750 - - -Hong Kong Dollars -HKD - -exchange rate - - -Hungarian Forint -forint / HUF - -exchange rate - - -Icelandic Krona -ISK - -exchange rate - - -Indonesian Rupiah -IDR - -exchange rate - - -Irish Pound -IEP - -1/0.787564 - - -Italian Lira -ITL / lira - -1/1936.27 - - -Japanese Yen -JPY / ¥ / yen - -exchange rate - - -Latvian Lat -lat / LVL - -exchange rate - - -Lithuanian Lit -lit / LTL - -exchange rate - - -Luxembourg Franc -LUF - -1/40.3399 - - -Malaysian Ringgit -MYR - -exchange rate - - -Maltese Lira -MTL - -exchange rate - - -New Zealand Dollars -NZD - -exchange rate - - -Norwegian Kroner -NOK - -exchange rate - - -Phillipine Peso -PHP - -exchange rate - - -Polish Zloty -zloty / PLN - -exchange rate - - -Portuguese Escudo -PTE / escudo - -1/200.482 - - -Romanian New Leu -leu / RON - -exchange rate - - -Russian Ruble -RUB / ruble - -exchange rate - - -Singapore Dollars -SGD - -exchange rate - - -Slovakian Koruna -SKK - -exchange rate - - -Slovenian Tolar -tolar / SIT - -exchange rate - - -South African Rand -ZAR - -exchange rate - - -South Korean Won -KRW - -exchange rate - - -Spanish Peseta -ESP / peseta / pesetas - -1/166.386 - - -Swedish Krona -SEK - -exchange rate - - -Swiss Francs -CHF - -exchange rate - - -Thai Bat -THB - -exchange rate - - -Turkish New Lira -TRY - -exchange rate - - -U.S. Dollars -$ / USD / dollar / dollars - -exchange rate - - -Yuan Renmimbi (PR China) -CNY - -exchange rate - - - -
-
- -Electricity - -Capacitance - -Units: Capacitance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Coulomb per Volt -(C_p_V) -C/V - - - -Farad -F / farad / farads -C_p_V -1 - - - -
-
- -Current Density - -Units: Current Density - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Ampere per Meter Squared -(A_p_sqm) -A/m^2 - - - - -
-
- -Electric Charge - -Units: Electric Charge - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Abcoulomb -abcoulomb / abcoulombs / abC / aC -C -10 - - -Coulomb -C / coulomb / coulombs -s_A -1 - - -Second Ampere -(s_A) -s A - - - -Statcoloumb (Franklin) -statcoulomb / statcoulombs / statC / franklin / Fr / franklins -C -3.3356410E-10 (approximate) - - - -
-
- -Electric Charge Density - -Units: Electric Charge Density - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Coulomb per Cubic Meter -(C_p_cum) -C/m^3 - - - - -
-
- -Electric Conductance - -Units: Electric Conductance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Ampere per Volt -(A_p_V) -A/V - - - -Siemens -S / siemens -A_p_V -1 - - - -
-
- -Electric Current - -Units: Electric Current - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Abampere -abampere / abA / aA / abamperes -A -10 - - -Ampere -A / ampere / amperes - - - - - -
-
- -Electric Field Strength - -Units: Electric Field Strength - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Volt per Meter -(V_p_m) -V/m - - - - -
-
- -Electric Flux Density - -Units: Electric Flux Density - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Coulomb per Meter Squared -(C_p_sqm) -C/m^2 - - - - -
-
- -Electric Potential - -Units: Electric Potential - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Abvolt -abvolt / abvolts / abV -V -1E-8 - - -Statvolt -statvolt / statvolts / statV -V -299.792458 - - -Volt -V / volt / volts -W_p_A -1 - - -Watt per Ampere -(W_p_A) -W/A - - - - -
-
- -Electric Resistance - -Units: Electric Resistance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Abohm -abohm / abohms / abΩ -Ω -1E-9 - - -Ohm -Ω / ohm / ohms -V_p_A -1 - - -Statohm -statohm / statohms / statΩ -Ω -8.9875517874E11 (approximate) - - -Volt per Ampere -(V_p_A) -V/A - - - - -
-
- -Inductance - -Units: Inductance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Henry -H / henry / henrys -Wb_p_A -1 - - -Weber per Ampere -(Wb_p_A) -Wb/A - - - - -
-
- -Permeability - -Units: Permeability - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Henry per Meter -(H_p_m) -H/m - - - - -
-
- -Permittivity - -Units: Permittivity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Farad per Meter -(F_p_m) -F/m - - - - -
-
-
- -Energy - -Units: Energy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -British Thermal Unit (IT) -Btu -J -1055.056 - - -Calorie (15 degrees Celcius) -cal_fifteen -J -4.185880 (approximate) - - -Calorie (capital C) -Calorie / Calories -cal_IT -1000 - - -Calorie (international table) -cal_IT / cal / calorie / calories -J -4.1868 - - -Calorie (mean) -cal_mean -J -4.19002 (approximate) - - -Calorie (thermochemical) -cal_th -J -4.184 - - -Electron Volt -eV / electron_volt / electron_volts -J -1.602177E-19 (approximate) - - -Erg -erg / ergs -J -1E-7 - - -Foe -foe / foes -erg -1E51 - - -Foot-Pound Force -(ft_lbf) -ft lbf - - - -Joule -J / joule / joules -N_m -1 - - -Kilowatt Hour -(W_h) -kW h - - - -Watt Hour -(W_h) -W h - - - - -
- -Energy Density - -Units: Energy Density - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Joule per Cubic Meter -(J_p_cum) -J/m^3 - - - - -
-
- -Entropy - -Units: Entropy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Joule per Kelvin -(J_p_K) -J/K - - - - -
-
- -Molar Energy - -Units: Molar Energy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Joule per Mole -(J_p_mol) -J/mol - - - - -
-
- -Molar Entropy - -Units: Molar Entropy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Joule per Mole Kelvin -(J_p_mol_K) -J/(mol K) - - - - -
-
- -Power - -Units: Power - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Horse Power -hp / horsepower / horsepowers -W -745.699987158227022 - - -Joule per Second -(J_p_s) -J/s - - - -Pferdestärke -PS / pferdestärke -W -735.49875 - - -Watt -W / watt / watts -J_p_s -1 - - - -
-
- -Specific Energy - -Units: Specific Energy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Joule per Kilogram -(J_p_kg) -J/kg - - - - -
-
- -Specific Entropy - -Units: Specific Entropy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Joule per Kilogram Kelvin -(J_p_kg_K) -J/(kg K) - - - - -
-
- -Thermal Conductivity - -Units: Thermal Conductivity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Watt per Meter Kelvin -(W_p_m_K) -W/(m K) - - - - -
-
-
- -Force - -Units: Force - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Dyne -dyn / dyne / dynes -N -1E-5 - - -Kilopond (Kilogram-Force) -(kpond_c) -kpond - - - -Meter Kilogram per Second Squared -(m_kg_p_sqs) -m kg/s^2 - - - -Newton -N / newton / newtons -m_kg_p_sqs -1 - - -Pond (Gram-Force) -pond / ponds / gf -N -0.00980665 - - -Pound Foot per Second Squared -(lb_ft_p_sqs) -lb ft/s^2 - - - -Pound-force -lbf / pound_force -N -4.4482216152605 - - -Poundal -poundal / poundals / pdl -lb_ft_p_sqs -1 - - - -
- -Dynamic Viscosity - -Units: Dynamic Viscosity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Pascal Second -(Pa_s) -Pa s - - - -Poise -P / poise / poises -Pa_s -0.1 - - - -
-
- -Kinematic Viscosity - -Units: Kinematic Viscosity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Square Meter per Second -(sqm_p_s) -m^2/s - - - -Stokes -St / stokes -sqm_p_s -0.0001 - - - -
-
- -Moment of Force - -Units: Moment of Force - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Newton Meter -(N_m) -N m - - - - -
-
- -Pressure - -Units: Pressure - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Atmosphere -atm / atmosphere / atmospheres -Pa -101325 - - -Bar -bar / bars -Pa -100000 - - -Millimeter of Mercury -mmHg -atm -1/760 - - -Newton per Meter Squared -(N_p_sqm) -N/m^2 - - - -Pascal -Pa / pascal / pascals -N_p_sqm -1 - - -Pound-force per Square Inch -(lbf_p_sqin) -lbf/in^2 - - - -Pound-force per Square Inch (psi) -psi -lbf_p_sqin -1 - - -Torr -torr / torrs -atm -1/760 - - - -
-
- -Surface Tension - -Units: Surface Tension - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Newton per Meter -(N_p_m) -N/m - - - - -
-
-
- -Information - -Units: Information - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Bit -bit / bits - - - - -Byte (8-bit) -byte / bytes / octet / octets -bit -8 - - -Gibibit -(Gibit_c) -Gibit - - - -Gibibyte -(Gibyte_c) -Gibyte - - - -Gigabit -(Gbit_c) -Gbit - - - -Gigabyte -(Gbyte_c) -Gbyte - - - -Kibibit -(Kibit_c) -Kibit - - - -Kibibyte -(Kibyte_c) -Kibyte - - - -Kilobit -(kbit_c) -kbit - - - -Kilobyte -(kbyte_c) -kbyte - - - -Mebibit -(Mibit_c) -Mibit - - - -Mebibyte -(Mibyte_c) -Mibyte - - - -Megabit -(Mbit_c) -Mbit - - - -Megabyte -(Mbyte_c) -Mbyte - - - -Nibble -nibble / nibbles / nybble / nybbles / semioctet / semioctets -bit -4 - - -Terabit -(Tbit_c) -Tbit - - - -Terabyte -(Tbyte_c) -Tbyte - - - -Tribble -tribble / tribbles -nibble -3 - - -Word (16-bit) -word / words -bit -16 - - - -
-
- -Length - -Units: Length - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Astronomical Unit -AU / astronomical_unit / astronomical_units -m -149578706600 - - -Centimeter -(cm_c) -cm - - - -Chain -ch / chain / chains -li -100 - - -Decimeter -(dm_c) -dm - - - -Fathom -fathom / fathoms -yd -2 - - -Foot -ft / foot / feet -hand -3 - - -Furlong -fur / furlong / furlongs -yd -220 - - -Hand -hand / hands -in -4 - - -Inch -in / inch / inches -m -0.0254 - - -Kilometer -(km_c) -km - - - -Light Year -ly / lightyear / lightyears -m -9460730472580800 - - -Link -li / link / links -ft -66/100 - - -Meter -m / meter / meters / metre / metres - - - - -Mil (1/1000 in) -mil / mils -in -0.001 - - -Mile -mi / mile / miles -ch -80 - - -Millimeter -(mm_c) -mm - - - -Nautical Mile -nautical_mile / nautical_miles -m -1852 - - -Parsec -pc / parsec / parsecs -AU -648000/pi - - -Rod (pole/perch) -rd / rod / rods -US_ft -16.5 - - -U.S. Survey Foot -US_ft / US_foot / US_feet -US_in -12 - - -U.S. Survey Inch -US_in / US_inch / US_inches -m -100/3937 - - -U.S. Survey Mile -US_mi / US_mile / US_miles -US_ft -5280 - - -Yard -yd / yard / yards -ft -3 - - -Ångström -Å / ångström / angstrom -m -1E-10 - - - -
-
- -Light - -Illuminance - -Units: Illuminance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Foot-Candle -fc / footcandle / footcandles -lm_p_sqft -1 - - -Lumen per Foot Squared -(lm_p_sqft) -lm/ft^2 - - - -Lumen per Meter Squared -(lm_p_sqm) -lm/m^2 - - - -Lux -lx / lux -lm_p_sqm -1 - - -Phot -ph / phot / phots -lx -10000 - - - -
-
- -Irradiance - -Units: Irradiance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Einstein per Meter Squared per Second -(einstein_p_sqm_p_s) -einstein/(s m^2) - - - -Microeinstein per Meter Squared per Second -(microeinstein_p_sqm_p_s) -µeinstein/(s m^2) - - - -Watt per Meter Squared -(W_p_sqm) -W/m^2 - - - - -
-
- -Luminance - -Units: Luminance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Candela per Meter Squared -(cd_p_sqm) -cd/m^2 - - - -Stilb -sb / stilb / stilbs -cd_p_sqm -10000 - - - -
-
- -Luminous Flux - -Units: Luminous Flux - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Candela Steradian -(cd_sr) -cd sr - - - -Lumen -lm / lumen / lumens -cd_sr -1 - - - -
-
- -Luminous Intensity - -Units: Luminous Intensity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Candela -cd / candela / candelas - - - - - -
-
- -Radiance - -Units: Radiance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Watt per Square Meter Steradian -(W_p_sqm_sr) -W/(sr m^2) - - - - -
-
- -Radiant Intensity - -Units: Radiant Intensity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Watt per Steradian -(W_p_sr) -W/sr - - - - -
-
-
- -Magnetism - -Magnetic Field Strength - -Units: Magnetic Field Strength - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Ampere per Meter -(A_p_m) -A/m - - - -Oersted -Oe / oersted / oersteds -A_p_m -1000/(4*pi) - - - -
-
- -Magnetic Flux - -Units: Magnetic Flux - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Maxwell -Mx / maxwell / maxwells -Wb -1E-8 - - -Volt Seconds -(V_s) -V s - - - -Weber -Wb / weber / webers -V_s -1 - - - -
-
- -Magnetic Flux Density - -Units: Magnetic Flux Density - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Gauss -gauss -T -0.0001 - - -Tesla -T / tesla / teslas -Wb_p_sqm -1 - - -Weber per Meter Squared -(Wb_p_sqm) -Wb/m^2 - - - - -
-
- -Wave Number - -Units: Wave Number - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Reciprocal Meter -(recm) -m^-1 - - - - -
-
-
- -Mass - -Units: Mass - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Carat -carat / carats -g -0.2 - - -Cental -cental / centals -lb -100 - - -Dram -dr / dram / drams -g -1.7718451953125 - - -Grain -gr / grain / grains -g -0.06479891 - - -Gram -g / gram / grams - - - - -Hektogram -(hg_c) -hg - - - -Kilogram -(kg_c) -kg - - - -Long Hundredweight -l_cwt / long_hundredweight / long_hundredweights -lb -112 - - -Long Ton -l_ton / long_ton / long_tons -lb -2240 - - -Metric Ton (Tonne) -t / tonne / tonnes / ton / tons -g -1000000 - - -Ounce -oz / ounce / ounces -dr -16 - - -Ounce (troy) -oz_t / troy_ounce / troy_ounces -pwt -20 - - -Pennyweight -pwt / pennyweight / pennyweights -gr -24 - - -Pfund -pfund -g -500 - - -Pound -lb / pound / pounds -oz -16 - - -Pound (troy) -lb_t / troy_pound / troy_pounds -oz_t -12 - - -Short Hundredweight -cwt / hundredweight / hundredweights -lb -100 - - -Short Ton -s_ton / short_ton / short_tons -lb -2000 - - -Stone -stone / stones -lb -14 - - -Zentner -zentner -pfund -100 - - - -
- -Density - -Units: Density - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Atomic Mass Unit -u / atomic_mass_unit / atomic_mass_units -g_p_mol -1 - - -Gram per Cubic Centimeter -(g_p_cucm) -g/cm^3 - - - -Gram per Cubic Decimeter -(g_p_cudm) -g/dm^3 - - - -Gram per Mole -(g_p_mol) -g/mol - - - -Kilogram per Cubic Meter -(kg_p_cum) -kg/m^3 - - - - -
-
- -Mass Fraction - -Units: Mass Fraction - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Kilogram per Kilogram -(kg_p_kg) -kg/kg - - - - -
-
-
- -Radioactivity - -Units: Radioactivity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Becquerel -Bq / becquerel / becquerels -s^-1 -1 - - -Curie -Ci / curie / curies -Bq -3.7E10 - - - -
- -Absorbed Dose - -Units: Absorbed Dose - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Gray -Gy / gray / grays -J_p_kg -1 - - -Rad -rad_radioactivity -Gy -1/100 - - - -
-
- -Absorbed Dose Rate - -Units: Absorbed Dose Rate - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Gray per Second -(Gy_p_s) -Gy/s - - - - -
-
- -Dose Equivalent - -Units: Dose Equivalent - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Rem -rem_radioactivity -Sv -1/100 - - -Sievert -Sv / sievert / sieverts -J_p_kg -1 - - - -
-
- -Exposure - -Units: Exposure - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Coulomb per Kilogram -(C_p_kg) -C/kg - - - -Roentgen -R / roentgen / roentgens -C_p_kg -0.000258 - - - -
-
-
- -Ratio - -Units: Ratio - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Bel -B / bel / bels -Np -0.5*ln(10) - - -Decibel -(dB_c) -dB - - - -Neper -Np / neper / nepers - - - - - -
-
- -Speed - -Units: Speed - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Kilometer per Hour -(km_p_h) -km/h - - - -Knot -knot / knots -nautical_mile_p_h -1 - - -Meter per Second -(m_p_s) -m/s - - - -Miles per Hour -(mile_p_h) -mi/h - - - -Miles per Hour -mph -mile_p_h -1 - - -Nautical Mile per Hour -(nautical_mile_p_h) -nautical_mile/h - - - - -
- -Acceleration - -Units: Acceleration - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Galileo -Gal / galileo / galileos -m_p_sqs -1/100 - - -Gee -gee / gees -m_p_sqs -9.80665 - - -Meter per Second Squared -(m_p_sqs) -m/s^2 - - - - -
-
-
- -Substance - -Units: Substance - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Einstein -einstein / einsteins - - - - -Mole -mol / mole / moles - - - - - -
- -Catalytic Activity - -Units: Catalytic Activity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Katal -kat / katal / katals -recs_mol -1 - - -Reciprocal Seconds Mole -(recs_mol) -mol/s - - - - -
-
- -Catalytic Concentration - -Units: Catalytic Concentration - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Katal per Cubic Meter -(kat_p_cum) -kat/m^3 - - - - -
-
- -Substance Concentration - -Units: Substance Concentration - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Mole per Cubic Meter -(mol_p_cum) -mol/m^3 - - - - -
-
-
- -Temperature - -Units: Temperature - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Degree Celcius -oC / °C / celcius -K -\x + 273.15 - - -Degrees Fahrenheit -oF / °F / fahrenheit -K -(2298.35+5\x)/9 - - -Degrees Rankine -oR / °R / rankine -K -5\x/9 - - -Kelvin -K / kelvin / kelvins - - - - - -
-
- -Time - -Units: Time - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Day -d / day / days -h -24 - - -Fortnight -fortnight / fortnights -week -2 - - -Hour -h / hour / hours -min -60 - - -Julian Year -year / years -d -365.25 - - -Minute -min / minute / minutes -s -60 - - -Second -s / second / seconds - - - - -Week -week / weeks -d -7 - - - -
- -Frequency - -Units: Frequency - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Hertz -Hz / hertz -s^-1 -1 - - - -
-
-
- -Volume - -Units: Volume - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Centiliter -(cl_c) -cL - - - -Cubic Inch -(cuin) -in^3 - - - -Cubic Meter -(cum) -m^3 - - - -Deciliter -(dl_c) -dL - - - -Liter -L / l / liter / liters / litre / litres -m^3 -0.001 - - -Milliliter -(ml_c) -mL - - - - -
- -Cooking - -Units: Cooking - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Cup -cup / cups -L -0.250 - - -Dessertspoon -dessertspoon / dessertspoons -teaspoon -2 - - -Tablespoon -tablespoon / tablespoons -teaspoon -3 - - -Teaspoon -teaspoon / teaspoons -L -0.005 - - - -
-
- -Fuel Economy - -Units: Fuel Economy - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Kilometer per Liter -(km_p_l) -km/L - - - -Liter per Kilometer -(l_p_km) -L/km - - - -Miles per Gallon -(mile_p_gal) -mi/gal - - - -Miles per Gallon -mpg -mile_p_gal -1 - - - -
-
- -Imperial Capacity - -Units: Imperial Capacity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Imperial Bushel -UK_bu / imperial_bushel / imperial_bushels -UK_gal -8 - - -Imperial Fluid Drachm -UK_fl_dr / imperial_fluid_drachm / imperial_fluid_drachms -imperial_fluid_scuple -3 - - -Imperial Fluid Ounce -UK_fl_oz / imperial_fluid_ounce / imperial_fluid_ounces -L -0.0284130625 - - -Imperial Fluid Scuple -imperial_fluid_scuple / imperial_fluid_scuples -imperial_minim -20 - - -Imperial Gallon -UK_gal / imperial_gallon / imperial_gallons -UK_qt -4 - - -Imperial Gill -UK_gi / imperial_gill / imperial_gills -UK_fl_oz -5 - - -Imperial Minim -imperial_minim / imperial_minims -UK_fl_oz -1/480 - - -Imperial Pint -UK_pt / imperial_pint / imperial_pints -UK_gi -4 - - -Imperial Quart -UK_qt / imperial_quart / imperial_quarts -UK_pt -2 - - - -
-
- -Specific Volume - -Units: Specific Volume - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -Cubic Meter per Kilogram -(cum_p_kg) -m^3/kg - - - - -
-
- -U.S. Capacity - -Units: U.S. Capacity - - - - - - - -Title -Names -Base Unit(s) -Relation - - - - -U.S. Barrell (oil) -bbl / barrell / barrells -gal -42 - - -U.S. Bushel -bu / bushel / bushels -pk -4 - - -U.S. Dry Pint -dry_pt / dry_pint / dry_pints -in^3 -33.6003125 - - -U.S. Dry Quart -dry_qt / dry_quart / dry_quarts -dry_pt -2 - - -U.S. Fluid Drachm -fl_dr / fluid_drachm / fluid_drachms -minim -60 - - -U.S. Fluid Ounce -fl_oz / fluid_ounce / fluid_ounces -in^3 -231/128 - - -U.S. Gallon -gal / gallon / gallons -liq_qt -4 - - -U.S. Gill -gi / gill / gills -fl_oz -4 - - -U.S. Liquid Pints -liq_pt / liquid_pint / liquid_pints -gi -4 - - -U.S. Liquid Quarts -liq_qt / liquid_quart / liquid_quarts -liq_pt -2 - - -U.S. Minim -minim / minims -fl_oz -1/480 - - -U.S. Peck -pk / peck / pecks -dry_qt -8 - - - -
-
-
-
diff --git a/doc/en/qalculate_tde/variable-manager.png b/doc/en/qalculate_tde/variable-manager.png deleted file mode 100644 index 7ea3c32..0000000 Binary files a/doc/en/qalculate_tde/variable-manager.png and /dev/null differ diff --git a/doc/en/qalculate_tde/variables.docbook b/doc/en/qalculate_tde/variables.docbook deleted file mode 100644 index ab96abe..0000000 --- a/doc/en/qalculate_tde/variables.docbook +++ /dev/null @@ -1,631 +0,0 @@ - -Variable List - -Basic Constants - -Variables: Basic Constants - - - - - - -Title -Names -Value - - - - -Apery's Constant -apery -zeta(3) - - -Archimede's Constant (pi) -π / pi -3.1415927 (approximate) - - -Catalan's Constant -catalan -0.91596559 (approximate) - - -Euler's Constant -γ / euler -0.57721566 (approximate) - - -Pythagora's Constant (sqrt 2) -pythagoras -sqrt(2) - - -The Base of Natural Logarithms (e) -e -2.7182818 (approximate) - - -The Golden Ratio -golden / φ -(1+sqrt(5))/2 - - - -
-
- -Large Numbers - -Variables: Large Numbers - - - - - - -Title -Names -Value - - - - -Billion -billion -1E9 - - -Centillion -centillion -1E303 - - -Decillion -decillion -1E33 - - -Duodecillion -duodecillion -1E39 - - -Googol -googol -10^100 - - -Googolplex -googolplex -10^(10^100) - - -Hundred -hundred -1E2 - - -Million -million -1E6 - - -Nonillion -nonillion -1E30 - - -Novemdecillion -novemdecillion -1E60 - - -Octillion -octillion -1E27 - - -Octodecillion -octodecillion -1E57 - - -Quadrillion -quadrillion -1E15 - - -Quattuordecillion -quattuordecillion -1E45 - - -Quindecillion -quindecillion -1E48 - - -Quintillion -quintillion -1E18 - - -Septendecillion -septendecillion -1E54 - - -Septillion -septillion -1E24 - - -Sexdecillion -sexdecillion -1E51 - - -Sextillion -sextillion -1E21 - - -Thousand -thousand -1E3 - - -Tredecillion -tredecillion -1E42 - - -Trillion -trillion -1E12 - - -Undecillion -undecillion -1E36 - - -Vigintillion -vigintillion -1E63 - - - -
-
- -Physical Constants - -Atomic and Nuclear Constants - -Variables: Atomic and Nuclear Constants - - - - - - -Title -Names -Value - - - - -Alpha Particle Mass -alpha_particle_mass / m_α -6.6446565E-24*g (approximate) - - -Bohr Radius -bohr_radius / a_o -0.5291772108E-10*m (approximate) - - -Classical Electron Radius -classical_electron_radius / r_e -2.817940325E-15*m (approximate) - - -Compton Wavelength -compton_wavelength / λ_C -2.426310238E-12*m (approximate) - - -Electron Mass -electron_mass / m_e -9.1093826E-28*g (approximate) - - -Helion Mass -helion_mass / m_h -5.00641214E-24*g (approximate) - - -Neutron Mass -neutron_mass / m_n -1.67492728E-24*g (approximate) - - -Proton Mass -proton_mass / m_p -1.67262171E-24*g (approximate) - - -Rydberg Constant -rydberg / R_∞ -10973731.568525*m^(-1) (approximate) - - -Tau Mass -tau_mass / m_τ -3.16777E-24*g (approximate) - - - -
-
- -Electromagnetic Constants - -Variables: Electromagnetic Constants - - - - - - -Title -Names -Value - - - - -Borh Magneton -bohr_magneton / μ_B -927.400949E-26*J*T^(-1) (approximate) - - -Conductance Quantum -conductance_quantum / G_0 -7.748091733E-5*S (approximate) - - -Elementary Charge -elementary_charge / e_charge -1.60217653E-19*C (approximate) - - -Josephson Constant -josephson / K_J -483597.879E9*Hz*V^(-1) (approximate) - - -Magnetic Flux Quantum -magnetic_flux_quantum / Φ_0 -2.06783372E-15*Wb (approximate) - - -Nuclear Magneton -nuclear_magneton / μ_N -5.05078343E-27*J*T^(-1) (approximate) - - -von Klitzing Constant -klitzing / R_K -25812.807449*ohm (approximate) - - - -
-
- -Physico-Chemical Constants - -Variables: Physico-Chemical Constants - - - - - - -Title -Names -Value - - - - -Atomic Mass Constant -atomic_mass / m_u -1.66053886E-24*g (approximate) - - -Avogadro Constant -avogadro / N_A -6.0221415E23*mol^(-1) (approximate) - - -Boltzmann Constant -boltzmann -1.3806505E-23*J*K^(-1) (approximate) - - -Faraday Constant -faraday -96485.3383*C*mol^(-1) (approximate) - - -First Radiation Constant -first_radiation / c_1 -3.74177138E-16*W*m^2 (approximate) - - -Ideal Gas Constant -ideal_gas -8.314472*J*K^(-1)*mol^(-1) (approximate) - - -Second Radiation Constant -second_radiation / c_2 -1.4387752E-2*m*K (approximate) - - - -
-
- -Universal Constants - -Variables: Universal Constants - - - - - - -Title -Names -Value - - - - -Characteristic Impedance of Vacuum -characteristic_impedance / Z_0 -4E-7*pi*299792458*ohm - - -Electric Constant (Permittivity of Free Space) -electric_constant / ε_0 -1/(4E-7*pi*299792458^2)*F*m^(-1) - - -Magnetic Constant (Permeability of Free Space) -magnetic_constant / μ_0 -4E-7*pi*N*A^(-2) - - -Newtonian Constant of Gravitation -newtonian_constant / G -6.6742E-11*m^3*kg^(-1)*s^(-2) (approximate) - - -Planck Constant -planck -6.6260693E-34*J*s (approximate) - - -Planck Constant over 2 pi -planck2pi -planck/(2*pi) - - -Planck Length -planck_length / l_P -1.61624E-35*m (approximate) - - -Planck Mass -planck_mass / m_P -2.17645E-5*g (approximate) - - -Planck Temperature -planck_temperature / T_P -1.41679E32*K (approximate) - - -Planck Time -planck_time / t_P -5.39121E-44*s (approximate) - - -Speed of Light in Vacuum -c / speed_of_light -299792458*m*s^(-1) - - - -
-
-
- -Small Numbers - -Variables: Small Numbers - - - - - - -Title -Names -Value - - - - -Per Mille -permille / ‰ -1/1000 - - -Per Myriad -permyriad / ‱ -1/10000 - - -Procent -% / procent -1/100 - - - -
-
- -Special Numbers - -Variables: Special Numbers - - - - - - -Title -Names -Value - - - - -False -false / no -0 - - -Imaginary i (sqrt -1) -i -i - - -Infinity -infinity -infinity - - -Negative Infinity -minus_infinity --(+infinity) - - -Positive Infinity -plus_infinity -(+infinity) - - -True -true / yes -1 - - -Undefined -undefined -undefined - - - -
-
- -Temporary - -Variables: Temporary - - - - - - -Title -Names -Value - - - - -Answer 2 -ans2 -a previous result - - -Answer 3 -ans3 -a previous result - - -Answer 4 -ans4 -a previous result - - -Answer 5 -ans5 -a previous result - - -Last Answer -ans / answer / ans1 -a previous result - - - -
-
- -Unknowns - -Variables: Unknowns - - - - - - -Title -Names -Value - - - - -x -x -default assumptions - - -y -y -default assumptions - - -z -z -default assumptions - - - -
-
-
diff --git a/doc/en/rpn-mode.png b/doc/en/rpn-mode.png new file mode 100644 index 0000000..e9aff38 Binary files /dev/null and b/doc/en/rpn-mode.png differ diff --git a/doc/en/store-variable.png b/doc/en/store-variable.png new file mode 100644 index 0000000..ddcb4e7 Binary files /dev/null and b/doc/en/store-variable.png differ diff --git a/doc/en/unit-manager.png b/doc/en/unit-manager.png new file mode 100644 index 0000000..3e222f1 Binary files /dev/null and b/doc/en/unit-manager.png differ diff --git a/doc/en/units.docbook b/doc/en/units.docbook new file mode 100644 index 0000000..0020f2d --- /dev/null +++ b/doc/en/units.docbook @@ -0,0 +1,3455 @@ + +Unit List + +Angle + +Angular Acceleration + +Units: Angular Acceleration + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Radians per Second Squared +(rad_p_sqs) +rad/s^2 + + + + +
+
+ +Angular Velocity + +Units: Angular Velocity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Radians per Second +(rad_p_s) +rad/s + + + + +
+
+ +Plane Angle + +Units: Plane Angle + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Arcminute +arcminute / arcminutes +° +1/60 + + +Arcsecond +arcsecond / arcseconds +arcminute +1/60 + + +Degree +deg / ° / degree / degrees +rad +pi/180 + + +Gradian (Gon) +gra / gradian / gradians / gon / gons +rad +pi/200 + + +Meter per Meter +(m_p_m) +m/m + + + +Radian +rad / radian / radians +m_p_m +1 + + +Turn +turn / turns +° +360 + + + +
+
+ +Solid Angle + +Units: Solid Angle + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Square Meter per Square Meter +(sqm_p_sqm) +m^2/m^2 + + + +Steradian +sr / steradian / steradians +m_p_m +1 + + + +
+
+
+ +Area + +Units: Area + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Acre +acre / acres +ch^2 +10 + + +Are +a / are / ares +m^2 +100 + + +Barn +b / barn / barns +m^2 +1E-28 + + +Hectare +(ha) +ha + + + +Rood +rood / roods +yd^2 +1210 + + +Section +section / sections +mi^2 +1 + + +Square Foot +(sqft) +ft^2 + + + +Square Inch +(sqin) +in^2 + + + +Square Kilometer +(sqkm) +km^2 + + + +Square Meter +(sqm) +m^2 + + + +Square Mile +(sqmi) +mi^2 + + + +Township +township / townships +section +36 + + + +
+
+ +Currency + +Units: Currency + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Australian Dollars +AUD + +exchange rate + + +Austrian Schilling +ATS / schilling + +1/13.7603 + + +Belgian Franc +BEF + +1/40.3399 + + +British Pounds +GBP / £ + +exchange rate + + +Bulgarian Lev +lev / BGN + +exchange rate + + +Canadian Dollars +CAD + +exchange rate + + +Cent (USD) +¢ / cent / cents +$ +1/100 + + +Croatian Kuna +HRK + +exchange rate + + +Cypriot Pound +CYP + +exchange rate + + +Czech Koruna +CZK + +exchange rate + + +Danish Kroner +DKK + +exchange rate + + +Deutche Mark +DEM / mark + +1/1.95583 + + +Dutch Guilder +NLG / guilder + +1/2.20371 + + +Estonian Kroon +EEK + +exchange rate + + +Euro Cent +eurocent / eurocents + +1/100 + + +European Euros +EUR / € / euro / euros + + + + +Finnish Markka +FIM / markka + +1/5.94573 + + +French Franc +FRF / franc + +1/6.55957 + + +Greek Drachma +GRD + +1/340.750 + + +Hong Kong Dollars +HKD + +exchange rate + + +Hungarian Forint +forint / HUF + +exchange rate + + +Icelandic Krona +ISK + +exchange rate + + +Indonesian Rupiah +IDR + +exchange rate + + +Irish Pound +IEP + +1/0.787564 + + +Italian Lira +ITL / lira + +1/1936.27 + + +Japanese Yen +JPY / ¥ / yen + +exchange rate + + +Latvian Lat +lat / LVL + +exchange rate + + +Lithuanian Lit +lit / LTL + +exchange rate + + +Luxembourg Franc +LUF + +1/40.3399 + + +Malaysian Ringgit +MYR + +exchange rate + + +Maltese Lira +MTL + +exchange rate + + +New Zealand Dollars +NZD + +exchange rate + + +Norwegian Kroner +NOK + +exchange rate + + +Phillipine Peso +PHP + +exchange rate + + +Polish Zloty +zloty / PLN + +exchange rate + + +Portuguese Escudo +PTE / escudo + +1/200.482 + + +Romanian New Leu +leu / RON + +exchange rate + + +Russian Ruble +RUB / ruble + +exchange rate + + +Singapore Dollars +SGD + +exchange rate + + +Slovakian Koruna +SKK + +exchange rate + + +Slovenian Tolar +tolar / SIT + +exchange rate + + +South African Rand +ZAR + +exchange rate + + +South Korean Won +KRW + +exchange rate + + +Spanish Peseta +ESP / peseta / pesetas + +1/166.386 + + +Swedish Krona +SEK + +exchange rate + + +Swiss Francs +CHF + +exchange rate + + +Thai Bat +THB + +exchange rate + + +Turkish New Lira +TRY + +exchange rate + + +U.S. Dollars +$ / USD / dollar / dollars + +exchange rate + + +Yuan Renmimbi (PR China) +CNY + +exchange rate + + + +
+
+ +Electricity + +Capacitance + +Units: Capacitance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Coulomb per Volt +(C_p_V) +C/V + + + +Farad +F / farad / farads +C_p_V +1 + + + +
+
+ +Current Density + +Units: Current Density + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Ampere per Meter Squared +(A_p_sqm) +A/m^2 + + + + +
+
+ +Electric Charge + +Units: Electric Charge + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Abcoulomb +abcoulomb / abcoulombs / abC / aC +C +10 + + +Coulomb +C / coulomb / coulombs +s_A +1 + + +Second Ampere +(s_A) +s A + + + +Statcoloumb (Franklin) +statcoulomb / statcoulombs / statC / franklin / Fr / franklins +C +3.3356410E-10 (approximate) + + + +
+
+ +Electric Charge Density + +Units: Electric Charge Density + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Coulomb per Cubic Meter +(C_p_cum) +C/m^3 + + + + +
+
+ +Electric Conductance + +Units: Electric Conductance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Ampere per Volt +(A_p_V) +A/V + + + +Siemens +S / siemens +A_p_V +1 + + + +
+
+ +Electric Current + +Units: Electric Current + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Abampere +abampere / abA / aA / abamperes +A +10 + + +Ampere +A / ampere / amperes + + + + + +
+
+ +Electric Field Strength + +Units: Electric Field Strength + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Volt per Meter +(V_p_m) +V/m + + + + +
+
+ +Electric Flux Density + +Units: Electric Flux Density + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Coulomb per Meter Squared +(C_p_sqm) +C/m^2 + + + + +
+
+ +Electric Potential + +Units: Electric Potential + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Abvolt +abvolt / abvolts / abV +V +1E-8 + + +Statvolt +statvolt / statvolts / statV +V +299.792458 + + +Volt +V / volt / volts +W_p_A +1 + + +Watt per Ampere +(W_p_A) +W/A + + + + +
+
+ +Electric Resistance + +Units: Electric Resistance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Abohm +abohm / abohms / abΩ +Ω +1E-9 + + +Ohm +Ω / ohm / ohms +V_p_A +1 + + +Statohm +statohm / statohms / statΩ +Ω +8.9875517874E11 (approximate) + + +Volt per Ampere +(V_p_A) +V/A + + + + +
+
+ +Inductance + +Units: Inductance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Henry +H / henry / henrys +Wb_p_A +1 + + +Weber per Ampere +(Wb_p_A) +Wb/A + + + + +
+
+ +Permeability + +Units: Permeability + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Henry per Meter +(H_p_m) +H/m + + + + +
+
+ +Permittivity + +Units: Permittivity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Farad per Meter +(F_p_m) +F/m + + + + +
+
+
+ +Energy + +Units: Energy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +British Thermal Unit (IT) +Btu +J +1055.056 + + +Calorie (15 degrees Celcius) +cal_fifteen +J +4.185880 (approximate) + + +Calorie (capital C) +Calorie / Calories +cal_IT +1000 + + +Calorie (international table) +cal_IT / cal / calorie / calories +J +4.1868 + + +Calorie (mean) +cal_mean +J +4.19002 (approximate) + + +Calorie (thermochemical) +cal_th +J +4.184 + + +Electron Volt +eV / electron_volt / electron_volts +J +1.602177E-19 (approximate) + + +Erg +erg / ergs +J +1E-7 + + +Foe +foe / foes +erg +1E51 + + +Foot-Pound Force +(ft_lbf) +ft lbf + + + +Joule +J / joule / joules +N_m +1 + + +Kilowatt Hour +(W_h) +kW h + + + +Watt Hour +(W_h) +W h + + + + +
+ +Energy Density + +Units: Energy Density + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Joule per Cubic Meter +(J_p_cum) +J/m^3 + + + + +
+
+ +Entropy + +Units: Entropy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Joule per Kelvin +(J_p_K) +J/K + + + + +
+
+ +Molar Energy + +Units: Molar Energy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Joule per Mole +(J_p_mol) +J/mol + + + + +
+
+ +Molar Entropy + +Units: Molar Entropy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Joule per Mole Kelvin +(J_p_mol_K) +J/(mol K) + + + + +
+
+ +Power + +Units: Power + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Horse Power +hp / horsepower / horsepowers +W +745.699987158227022 + + +Joule per Second +(J_p_s) +J/s + + + +Pferdestärke +PS / pferdestärke +W +735.49875 + + +Watt +W / watt / watts +J_p_s +1 + + + +
+
+ +Specific Energy + +Units: Specific Energy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Joule per Kilogram +(J_p_kg) +J/kg + + + + +
+
+ +Specific Entropy + +Units: Specific Entropy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Joule per Kilogram Kelvin +(J_p_kg_K) +J/(kg K) + + + + +
+
+ +Thermal Conductivity + +Units: Thermal Conductivity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Watt per Meter Kelvin +(W_p_m_K) +W/(m K) + + + + +
+
+
+ +Force + +Units: Force + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Dyne +dyn / dyne / dynes +N +1E-5 + + +Kilopond (Kilogram-Force) +(kpond_c) +kpond + + + +Meter Kilogram per Second Squared +(m_kg_p_sqs) +m kg/s^2 + + + +Newton +N / newton / newtons +m_kg_p_sqs +1 + + +Pond (Gram-Force) +pond / ponds / gf +N +0.00980665 + + +Pound Foot per Second Squared +(lb_ft_p_sqs) +lb ft/s^2 + + + +Pound-force +lbf / pound_force +N +4.4482216152605 + + +Poundal +poundal / poundals / pdl +lb_ft_p_sqs +1 + + + +
+ +Dynamic Viscosity + +Units: Dynamic Viscosity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Pascal Second +(Pa_s) +Pa s + + + +Poise +P / poise / poises +Pa_s +0.1 + + + +
+
+ +Kinematic Viscosity + +Units: Kinematic Viscosity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Square Meter per Second +(sqm_p_s) +m^2/s + + + +Stokes +St / stokes +sqm_p_s +0.0001 + + + +
+
+ +Moment of Force + +Units: Moment of Force + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Newton Meter +(N_m) +N m + + + + +
+
+ +Pressure + +Units: Pressure + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Atmosphere +atm / atmosphere / atmospheres +Pa +101325 + + +Bar +bar / bars +Pa +100000 + + +Millimeter of Mercury +mmHg +atm +1/760 + + +Newton per Meter Squared +(N_p_sqm) +N/m^2 + + + +Pascal +Pa / pascal / pascals +N_p_sqm +1 + + +Pound-force per Square Inch +(lbf_p_sqin) +lbf/in^2 + + + +Pound-force per Square Inch (psi) +psi +lbf_p_sqin +1 + + +Torr +torr / torrs +atm +1/760 + + + +
+
+ +Surface Tension + +Units: Surface Tension + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Newton per Meter +(N_p_m) +N/m + + + + +
+
+
+ +Information + +Units: Information + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Bit +bit / bits + + + + +Byte (8-bit) +byte / bytes / octet / octets +bit +8 + + +Gibibit +(Gibit_c) +Gibit + + + +Gibibyte +(Gibyte_c) +Gibyte + + + +Gigabit +(Gbit_c) +Gbit + + + +Gigabyte +(Gbyte_c) +Gbyte + + + +Kibibit +(Kibit_c) +Kibit + + + +Kibibyte +(Kibyte_c) +Kibyte + + + +Kilobit +(kbit_c) +kbit + + + +Kilobyte +(kbyte_c) +kbyte + + + +Mebibit +(Mibit_c) +Mibit + + + +Mebibyte +(Mibyte_c) +Mibyte + + + +Megabit +(Mbit_c) +Mbit + + + +Megabyte +(Mbyte_c) +Mbyte + + + +Nibble +nibble / nibbles / nybble / nybbles / semioctet / semioctets +bit +4 + + +Terabit +(Tbit_c) +Tbit + + + +Terabyte +(Tbyte_c) +Tbyte + + + +Tribble +tribble / tribbles +nibble +3 + + +Word (16-bit) +word / words +bit +16 + + + +
+
+ +Length + +Units: Length + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Astronomical Unit +AU / astronomical_unit / astronomical_units +m +149578706600 + + +Centimeter +(cm_c) +cm + + + +Chain +ch / chain / chains +li +100 + + +Decimeter +(dm_c) +dm + + + +Fathom +fathom / fathoms +yd +2 + + +Foot +ft / foot / feet +hand +3 + + +Furlong +fur / furlong / furlongs +yd +220 + + +Hand +hand / hands +in +4 + + +Inch +in / inch / inches +m +0.0254 + + +Kilometer +(km_c) +km + + + +Light Year +ly / lightyear / lightyears +m +9460730472580800 + + +Link +li / link / links +ft +66/100 + + +Meter +m / meter / meters / metre / metres + + + + +Mil (1/1000 in) +mil / mils +in +0.001 + + +Mile +mi / mile / miles +ch +80 + + +Millimeter +(mm_c) +mm + + + +Nautical Mile +nautical_mile / nautical_miles +m +1852 + + +Parsec +pc / parsec / parsecs +AU +648000/pi + + +Rod (pole/perch) +rd / rod / rods +US_ft +16.5 + + +U.S. Survey Foot +US_ft / US_foot / US_feet +US_in +12 + + +U.S. Survey Inch +US_in / US_inch / US_inches +m +100/3937 + + +U.S. Survey Mile +US_mi / US_mile / US_miles +US_ft +5280 + + +Yard +yd / yard / yards +ft +3 + + +Ångström +Å / ångström / angstrom +m +1E-10 + + + +
+
+ +Light + +Illuminance + +Units: Illuminance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Foot-Candle +fc / footcandle / footcandles +lm_p_sqft +1 + + +Lumen per Foot Squared +(lm_p_sqft) +lm/ft^2 + + + +Lumen per Meter Squared +(lm_p_sqm) +lm/m^2 + + + +Lux +lx / lux +lm_p_sqm +1 + + +Phot +ph / phot / phots +lx +10000 + + + +
+
+ +Irradiance + +Units: Irradiance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Einstein per Meter Squared per Second +(einstein_p_sqm_p_s) +einstein/(s m^2) + + + +Microeinstein per Meter Squared per Second +(microeinstein_p_sqm_p_s) +µeinstein/(s m^2) + + + +Watt per Meter Squared +(W_p_sqm) +W/m^2 + + + + +
+
+ +Luminance + +Units: Luminance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Candela per Meter Squared +(cd_p_sqm) +cd/m^2 + + + +Stilb +sb / stilb / stilbs +cd_p_sqm +10000 + + + +
+
+ +Luminous Flux + +Units: Luminous Flux + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Candela Steradian +(cd_sr) +cd sr + + + +Lumen +lm / lumen / lumens +cd_sr +1 + + + +
+
+ +Luminous Intensity + +Units: Luminous Intensity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Candela +cd / candela / candelas + + + + + +
+
+ +Radiance + +Units: Radiance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Watt per Square Meter Steradian +(W_p_sqm_sr) +W/(sr m^2) + + + + +
+
+ +Radiant Intensity + +Units: Radiant Intensity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Watt per Steradian +(W_p_sr) +W/sr + + + + +
+
+
+ +Magnetism + +Magnetic Field Strength + +Units: Magnetic Field Strength + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Ampere per Meter +(A_p_m) +A/m + + + +Oersted +Oe / oersted / oersteds +A_p_m +1000/(4*pi) + + + +
+
+ +Magnetic Flux + +Units: Magnetic Flux + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Maxwell +Mx / maxwell / maxwells +Wb +1E-8 + + +Volt Seconds +(V_s) +V s + + + +Weber +Wb / weber / webers +V_s +1 + + + +
+
+ +Magnetic Flux Density + +Units: Magnetic Flux Density + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Gauss +gauss +T +0.0001 + + +Tesla +T / tesla / teslas +Wb_p_sqm +1 + + +Weber per Meter Squared +(Wb_p_sqm) +Wb/m^2 + + + + +
+
+ +Wave Number + +Units: Wave Number + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Reciprocal Meter +(recm) +m^-1 + + + + +
+
+
+ +Mass + +Units: Mass + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Carat +carat / carats +g +0.2 + + +Cental +cental / centals +lb +100 + + +Dram +dr / dram / drams +g +1.7718451953125 + + +Grain +gr / grain / grains +g +0.06479891 + + +Gram +g / gram / grams + + + + +Hektogram +(hg_c) +hg + + + +Kilogram +(kg_c) +kg + + + +Long Hundredweight +l_cwt / long_hundredweight / long_hundredweights +lb +112 + + +Long Ton +l_ton / long_ton / long_tons +lb +2240 + + +Metric Ton (Tonne) +t / tonne / tonnes / ton / tons +g +1000000 + + +Ounce +oz / ounce / ounces +dr +16 + + +Ounce (troy) +oz_t / troy_ounce / troy_ounces +pwt +20 + + +Pennyweight +pwt / pennyweight / pennyweights +gr +24 + + +Pfund +pfund +g +500 + + +Pound +lb / pound / pounds +oz +16 + + +Pound (troy) +lb_t / troy_pound / troy_pounds +oz_t +12 + + +Short Hundredweight +cwt / hundredweight / hundredweights +lb +100 + + +Short Ton +s_ton / short_ton / short_tons +lb +2000 + + +Stone +stone / stones +lb +14 + + +Zentner +zentner +pfund +100 + + + +
+ +Density + +Units: Density + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Atomic Mass Unit +u / atomic_mass_unit / atomic_mass_units +g_p_mol +1 + + +Gram per Cubic Centimeter +(g_p_cucm) +g/cm^3 + + + +Gram per Cubic Decimeter +(g_p_cudm) +g/dm^3 + + + +Gram per Mole +(g_p_mol) +g/mol + + + +Kilogram per Cubic Meter +(kg_p_cum) +kg/m^3 + + + + +
+
+ +Mass Fraction + +Units: Mass Fraction + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Kilogram per Kilogram +(kg_p_kg) +kg/kg + + + + +
+
+
+ +Radioactivity + +Units: Radioactivity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Becquerel +Bq / becquerel / becquerels +s^-1 +1 + + +Curie +Ci / curie / curies +Bq +3.7E10 + + + +
+ +Absorbed Dose + +Units: Absorbed Dose + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Gray +Gy / gray / grays +J_p_kg +1 + + +Rad +rad_radioactivity +Gy +1/100 + + + +
+
+ +Absorbed Dose Rate + +Units: Absorbed Dose Rate + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Gray per Second +(Gy_p_s) +Gy/s + + + + +
+
+ +Dose Equivalent + +Units: Dose Equivalent + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Rem +rem_radioactivity +Sv +1/100 + + +Sievert +Sv / sievert / sieverts +J_p_kg +1 + + + +
+
+ +Exposure + +Units: Exposure + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Coulomb per Kilogram +(C_p_kg) +C/kg + + + +Roentgen +R / roentgen / roentgens +C_p_kg +0.000258 + + + +
+
+
+ +Ratio + +Units: Ratio + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Bel +B / bel / bels +Np +0.5*ln(10) + + +Decibel +(dB_c) +dB + + + +Neper +Np / neper / nepers + + + + + +
+
+ +Speed + +Units: Speed + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Kilometer per Hour +(km_p_h) +km/h + + + +Knot +knot / knots +nautical_mile_p_h +1 + + +Meter per Second +(m_p_s) +m/s + + + +Miles per Hour +(mile_p_h) +mi/h + + + +Miles per Hour +mph +mile_p_h +1 + + +Nautical Mile per Hour +(nautical_mile_p_h) +nautical_mile/h + + + + +
+ +Acceleration + +Units: Acceleration + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Galileo +Gal / galileo / galileos +m_p_sqs +1/100 + + +Gee +gee / gees +m_p_sqs +9.80665 + + +Meter per Second Squared +(m_p_sqs) +m/s^2 + + + + +
+
+
+ +Substance + +Units: Substance + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Einstein +einstein / einsteins + + + + +Mole +mol / mole / moles + + + + + +
+ +Catalytic Activity + +Units: Catalytic Activity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Katal +kat / katal / katals +recs_mol +1 + + +Reciprocal Seconds Mole +(recs_mol) +mol/s + + + + +
+
+ +Catalytic Concentration + +Units: Catalytic Concentration + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Katal per Cubic Meter +(kat_p_cum) +kat/m^3 + + + + +
+
+ +Substance Concentration + +Units: Substance Concentration + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Mole per Cubic Meter +(mol_p_cum) +mol/m^3 + + + + +
+
+
+ +Temperature + +Units: Temperature + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Degree Celcius +oC / °C / celcius +K +\x + 273.15 + + +Degrees Fahrenheit +oF / °F / fahrenheit +K +(2298.35+5\x)/9 + + +Degrees Rankine +oR / °R / rankine +K +5\x/9 + + +Kelvin +K / kelvin / kelvins + + + + + +
+
+ +Time + +Units: Time + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Day +d / day / days +h +24 + + +Fortnight +fortnight / fortnights +week +2 + + +Hour +h / hour / hours +min +60 + + +Julian Year +year / years +d +365.25 + + +Minute +min / minute / minutes +s +60 + + +Second +s / second / seconds + + + + +Week +week / weeks +d +7 + + + +
+ +Frequency + +Units: Frequency + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Hertz +Hz / hertz +s^-1 +1 + + + +
+
+
+ +Volume + +Units: Volume + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Centiliter +(cl_c) +cL + + + +Cubic Inch +(cuin) +in^3 + + + +Cubic Meter +(cum) +m^3 + + + +Deciliter +(dl_c) +dL + + + +Liter +L / l / liter / liters / litre / litres +m^3 +0.001 + + +Milliliter +(ml_c) +mL + + + + +
+ +Cooking + +Units: Cooking + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Cup +cup / cups +L +0.250 + + +Dessertspoon +dessertspoon / dessertspoons +teaspoon +2 + + +Tablespoon +tablespoon / tablespoons +teaspoon +3 + + +Teaspoon +teaspoon / teaspoons +L +0.005 + + + +
+
+ +Fuel Economy + +Units: Fuel Economy + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Kilometer per Liter +(km_p_l) +km/L + + + +Liter per Kilometer +(l_p_km) +L/km + + + +Miles per Gallon +(mile_p_gal) +mi/gal + + + +Miles per Gallon +mpg +mile_p_gal +1 + + + +
+
+ +Imperial Capacity + +Units: Imperial Capacity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Imperial Bushel +UK_bu / imperial_bushel / imperial_bushels +UK_gal +8 + + +Imperial Fluid Drachm +UK_fl_dr / imperial_fluid_drachm / imperial_fluid_drachms +imperial_fluid_scuple +3 + + +Imperial Fluid Ounce +UK_fl_oz / imperial_fluid_ounce / imperial_fluid_ounces +L +0.0284130625 + + +Imperial Fluid Scuple +imperial_fluid_scuple / imperial_fluid_scuples +imperial_minim +20 + + +Imperial Gallon +UK_gal / imperial_gallon / imperial_gallons +UK_qt +4 + + +Imperial Gill +UK_gi / imperial_gill / imperial_gills +UK_fl_oz +5 + + +Imperial Minim +imperial_minim / imperial_minims +UK_fl_oz +1/480 + + +Imperial Pint +UK_pt / imperial_pint / imperial_pints +UK_gi +4 + + +Imperial Quart +UK_qt / imperial_quart / imperial_quarts +UK_pt +2 + + + +
+
+ +Specific Volume + +Units: Specific Volume + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +Cubic Meter per Kilogram +(cum_p_kg) +m^3/kg + + + + +
+
+ +U.S. Capacity + +Units: U.S. Capacity + + + + + + + +Title +Names +Base Unit(s) +Relation + + + + +U.S. Barrell (oil) +bbl / barrell / barrells +gal +42 + + +U.S. Bushel +bu / bushel / bushels +pk +4 + + +U.S. Dry Pint +dry_pt / dry_pint / dry_pints +in^3 +33.6003125 + + +U.S. Dry Quart +dry_qt / dry_quart / dry_quarts +dry_pt +2 + + +U.S. Fluid Drachm +fl_dr / fluid_drachm / fluid_drachms +minim +60 + + +U.S. Fluid Ounce +fl_oz / fluid_ounce / fluid_ounces +in^3 +231/128 + + +U.S. Gallon +gal / gallon / gallons +liq_qt +4 + + +U.S. Gill +gi / gill / gills +fl_oz +4 + + +U.S. Liquid Pints +liq_pt / liquid_pint / liquid_pints +gi +4 + + +U.S. Liquid Quarts +liq_qt / liquid_quart / liquid_quarts +liq_pt +2 + + +U.S. Minim +minim / minims +fl_oz +1/480 + + +U.S. Peck +pk / peck / pecks +dry_qt +8 + + + +
+
+
+
diff --git a/doc/en/variable-manager.png b/doc/en/variable-manager.png new file mode 100644 index 0000000..7ea3c32 Binary files /dev/null and b/doc/en/variable-manager.png differ diff --git a/doc/en/variables.docbook b/doc/en/variables.docbook new file mode 100644 index 0000000..ab96abe --- /dev/null +++ b/doc/en/variables.docbook @@ -0,0 +1,631 @@ + +Variable List + +Basic Constants + +Variables: Basic Constants + + + + + + +Title +Names +Value + + + + +Apery's Constant +apery +zeta(3) + + +Archimede's Constant (pi) +π / pi +3.1415927 (approximate) + + +Catalan's Constant +catalan +0.91596559 (approximate) + + +Euler's Constant +γ / euler +0.57721566 (approximate) + + +Pythagora's Constant (sqrt 2) +pythagoras +sqrt(2) + + +The Base of Natural Logarithms (e) +e +2.7182818 (approximate) + + +The Golden Ratio +golden / φ +(1+sqrt(5))/2 + + + +
+
+ +Large Numbers + +Variables: Large Numbers + + + + + + +Title +Names +Value + + + + +Billion +billion +1E9 + + +Centillion +centillion +1E303 + + +Decillion +decillion +1E33 + + +Duodecillion +duodecillion +1E39 + + +Googol +googol +10^100 + + +Googolplex +googolplex +10^(10^100) + + +Hundred +hundred +1E2 + + +Million +million +1E6 + + +Nonillion +nonillion +1E30 + + +Novemdecillion +novemdecillion +1E60 + + +Octillion +octillion +1E27 + + +Octodecillion +octodecillion +1E57 + + +Quadrillion +quadrillion +1E15 + + +Quattuordecillion +quattuordecillion +1E45 + + +Quindecillion +quindecillion +1E48 + + +Quintillion +quintillion +1E18 + + +Septendecillion +septendecillion +1E54 + + +Septillion +septillion +1E24 + + +Sexdecillion +sexdecillion +1E51 + + +Sextillion +sextillion +1E21 + + +Thousand +thousand +1E3 + + +Tredecillion +tredecillion +1E42 + + +Trillion +trillion +1E12 + + +Undecillion +undecillion +1E36 + + +Vigintillion +vigintillion +1E63 + + + +
+
+ +Physical Constants + +Atomic and Nuclear Constants + +Variables: Atomic and Nuclear Constants + + + + + + +Title +Names +Value + + + + +Alpha Particle Mass +alpha_particle_mass / m_α +6.6446565E-24*g (approximate) + + +Bohr Radius +bohr_radius / a_o +0.5291772108E-10*m (approximate) + + +Classical Electron Radius +classical_electron_radius / r_e +2.817940325E-15*m (approximate) + + +Compton Wavelength +compton_wavelength / λ_C +2.426310238E-12*m (approximate) + + +Electron Mass +electron_mass / m_e +9.1093826E-28*g (approximate) + + +Helion Mass +helion_mass / m_h +5.00641214E-24*g (approximate) + + +Neutron Mass +neutron_mass / m_n +1.67492728E-24*g (approximate) + + +Proton Mass +proton_mass / m_p +1.67262171E-24*g (approximate) + + +Rydberg Constant +rydberg / R_∞ +10973731.568525*m^(-1) (approximate) + + +Tau Mass +tau_mass / m_τ +3.16777E-24*g (approximate) + + + +
+
+ +Electromagnetic Constants + +Variables: Electromagnetic Constants + + + + + + +Title +Names +Value + + + + +Borh Magneton +bohr_magneton / μ_B +927.400949E-26*J*T^(-1) (approximate) + + +Conductance Quantum +conductance_quantum / G_0 +7.748091733E-5*S (approximate) + + +Elementary Charge +elementary_charge / e_charge +1.60217653E-19*C (approximate) + + +Josephson Constant +josephson / K_J +483597.879E9*Hz*V^(-1) (approximate) + + +Magnetic Flux Quantum +magnetic_flux_quantum / Φ_0 +2.06783372E-15*Wb (approximate) + + +Nuclear Magneton +nuclear_magneton / μ_N +5.05078343E-27*J*T^(-1) (approximate) + + +von Klitzing Constant +klitzing / R_K +25812.807449*ohm (approximate) + + + +
+
+ +Physico-Chemical Constants + +Variables: Physico-Chemical Constants + + + + + + +Title +Names +Value + + + + +Atomic Mass Constant +atomic_mass / m_u +1.66053886E-24*g (approximate) + + +Avogadro Constant +avogadro / N_A +6.0221415E23*mol^(-1) (approximate) + + +Boltzmann Constant +boltzmann +1.3806505E-23*J*K^(-1) (approximate) + + +Faraday Constant +faraday +96485.3383*C*mol^(-1) (approximate) + + +First Radiation Constant +first_radiation / c_1 +3.74177138E-16*W*m^2 (approximate) + + +Ideal Gas Constant +ideal_gas +8.314472*J*K^(-1)*mol^(-1) (approximate) + + +Second Radiation Constant +second_radiation / c_2 +1.4387752E-2*m*K (approximate) + + + +
+
+ +Universal Constants + +Variables: Universal Constants + + + + + + +Title +Names +Value + + + + +Characteristic Impedance of Vacuum +characteristic_impedance / Z_0 +4E-7*pi*299792458*ohm + + +Electric Constant (Permittivity of Free Space) +electric_constant / ε_0 +1/(4E-7*pi*299792458^2)*F*m^(-1) + + +Magnetic Constant (Permeability of Free Space) +magnetic_constant / μ_0 +4E-7*pi*N*A^(-2) + + +Newtonian Constant of Gravitation +newtonian_constant / G +6.6742E-11*m^3*kg^(-1)*s^(-2) (approximate) + + +Planck Constant +planck +6.6260693E-34*J*s (approximate) + + +Planck Constant over 2 pi +planck2pi +planck/(2*pi) + + +Planck Length +planck_length / l_P +1.61624E-35*m (approximate) + + +Planck Mass +planck_mass / m_P +2.17645E-5*g (approximate) + + +Planck Temperature +planck_temperature / T_P +1.41679E32*K (approximate) + + +Planck Time +planck_time / t_P +5.39121E-44*s (approximate) + + +Speed of Light in Vacuum +c / speed_of_light +299792458*m*s^(-1) + + + +
+
+
+ +Small Numbers + +Variables: Small Numbers + + + + + + +Title +Names +Value + + + + +Per Mille +permille / ‰ +1/1000 + + +Per Myriad +permyriad / ‱ +1/10000 + + +Procent +% / procent +1/100 + + + +
+
+ +Special Numbers + +Variables: Special Numbers + + + + + + +Title +Names +Value + + + + +False +false / no +0 + + +Imaginary i (sqrt -1) +i +i + + +Infinity +infinity +infinity + + +Negative Infinity +minus_infinity +-(+infinity) + + +Positive Infinity +plus_infinity +(+infinity) + + +True +true / yes +1 + + +Undefined +undefined +undefined + + + +
+
+ +Temporary + +Variables: Temporary + + + + + + +Title +Names +Value + + + + +Answer 2 +ans2 +a previous result + + +Answer 3 +ans3 +a previous result + + +Answer 4 +ans4 +a previous result + + +Answer 5 +ans5 +a previous result + + +Last Answer +ans / answer / ans1 +a previous result + + + +
+
+ +Unknowns + +Variables: Unknowns + + + + + + +Title +Names +Value + + + + +x +x +default assumptions + + +y +y +default assumptions + + +z +z +default assumptions + + + +
+
+
diff --git a/doc/man/qalculate-tde.1 b/doc/man/qalculate-tde.1 new file mode 100644 index 0000000..90682e5 --- /dev/null +++ b/doc/man/qalculate-tde.1 @@ -0,0 +1,16 @@ +.TH QALC 1 "28 December 2008" +.SH NAME +qalculate-tde \- Powerful and easy to use desktop calculator +.SH SYNOPSIS +.B qalculate-tde +.SH DESCRIPTION +Qalculate! is a small and simple to use calculator but with much power and +versatility underneath. Features include customizable functions, units, +arbitrary precision using a one-line fault-tolerant expression entry. +.PP +\fBqalculate-tde\fP is the TDE version of Qalculate!. +.SH AUTHORS +Original qalculate-kde was written by Niklas Knutsson . +.PP +This manual page was originally written by Vincent Legout , +for the Debian system (but may be used by others). diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt new file mode 100644 index 0000000..24e3bd8 --- /dev/null +++ b/po/CMakeLists.txt @@ -0,0 +1 @@ +tde_add_project_translations() diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..4996d27 --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,62 @@ + +include_directories( + ${CMAKE_BINARY_DIR} + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} + ${QALCULATE_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} + ${TDE_LIB_DIR} +) + + +##### qalculate-tde (executable) + +tde_add_executable( qalculate-tde AUTOMOC + + SOURCES + buttonwithindexsignal.cpp kqalculate.cpp + main.cpp preferences.cpp qalculatebuttonwithdata.cpp + qalculateconvertnumberbasesdialog.cpp + qalculateconvertunitsdialog.cpp qalculatedatasetsdialog.cpp + qalculatedecimalsdialog.cpp qalculateeditdataobjectdialog.cpp + qalculateeditdatasetdialog.cpp qalculateeditfunctiondialog.cpp + qalculateeditmatrixvectordialog.cpp qalculateeditnamesdialog.cpp + qalculateeditunitdialog.cpp qalculateeditunknownvariabledialog.cpp + qalculateeditvariabledialog.cpp qalculateexportcsvdialog.cpp + qalculateexpressionedit.cpp qalculatefunctionsdialog.cpp + qalculateimportcsvdialog.cpp qalculateinsertfunctiondialog.cpp + qalculateinsertmatrixvectordialog.cpp qalculate_tde_utils.cpp + qalculateperiodictabledialog.cpp qalculateplotdialog.cpp + qalculateprecisiondialog.cpp qalculatepreferencesdialog.cpp + qalculatesetbasedialog.cpp qalculateunitsdialog.cpp + qalculatevariablesdialog.cpp qalculateresultdisplay.cpp + LINK + tdecore-shared + tdeui-shared + tdeio-shared + ${CMAKE_THREAD_LIBS_INIT} + ${QALCULATE_LIBRARIES} + + DESTINATION ${BIN_INSTALL_DIR} +) + + +##### icons + +tde_install_icons( ) + + +##### other data + +install( + FILES qalculate_tdeui.rc + DESTINATION ${DATA_INSTALL_DIR}/qalculate_tde +) + + +tde_create_translated_desktop( qalculate_tde.desktop ) diff --git a/src/qalculateexpressionedit.cpp b/src/qalculateexpressionedit.cpp index 3eff804..0dfc5b9 100644 --- a/src/qalculateexpressionedit.cpp +++ b/src/qalculateexpressionedit.cpp @@ -413,7 +413,7 @@ void QalculateExpressionEdit::keyPressEvent(TQKeyEvent *e) { switch(e->key()) { case Key_Period: { if(e->state() == Keypad) { - insert(CALCULATOR->getDecimalPoint()); + insert(CALCULATOR->getDecimalPoint().c_str()); e->accept(); return; } @@ -421,7 +421,7 @@ void QalculateExpressionEdit::keyPressEvent(TQKeyEvent *e) { } case Key_Comma: { if(e->state() == Keypad) { - insert(CALCULATOR->getDecimalPoint()); + insert(CALCULATOR->getDecimalPoint().c_str()); e->accept(); return; } diff --git a/src/qalculateinsertmatrixvectordialog.cpp b/src/qalculateinsertmatrixvectordialog.cpp index 07835aa..d8791e9 100644 --- a/src/qalculateinsertmatrixvectordialog.cpp +++ b/src/qalculateinsertmatrixvectordialog.cpp @@ -170,7 +170,7 @@ void QalculateInsertMatrixVectorDialog::slotOk() { TQString str2 = elementsTable->text(index_r, index_c).stripWhiteSpace(); if(!str2.isEmpty()) { if(b) { - matrixstr += CALCULATOR->getComma(); + matrixstr += CALCULATOR->getComma().c_str(); matrixstr += " "; } else { b = true; @@ -186,7 +186,7 @@ void QalculateInsertMatrixVectorDialog::slotOk() { bool b1 = false; for(int index_r = 0; index_r < r; index_r++) { if(b1) { - matrixstr += CALCULATOR->getComma(); + matrixstr += CALCULATOR->getComma().c_str(); matrixstr += " "; } else { b1 = true; @@ -195,7 +195,7 @@ void QalculateInsertMatrixVectorDialog::slotOk() { bool b2 = false; for(int index_c = 0; index_c < c; index_c++) { if(b2) { - matrixstr += CALCULATOR->getComma(); + matrixstr += CALCULATOR->getComma().c_str(); matrixstr += " "; } else { b2 = true; @@ -219,7 +219,7 @@ void QalculateInsertMatrixVectorDialog::insertSelection() { TQString str2 = elementsTable->text(index_r, index_c).stripWhiteSpace(); if(!str2.isEmpty()) { if(b) { - matrixstr += CALCULATOR->getComma(); + matrixstr += CALCULATOR->getComma().c_str(); matrixstr += " "; } else { b = true; @@ -235,7 +235,7 @@ void QalculateInsertMatrixVectorDialog::insertSelection() { bool b1 = false; for(int index_r = sel.topRow(); index_r <= sel.bottomRow(); index_r++) { if(b1) { - matrixstr += CALCULATOR->getComma(); + matrixstr += CALCULATOR->getComma().c_str(); matrixstr += " "; } else { b1 = true; @@ -244,7 +244,7 @@ void QalculateInsertMatrixVectorDialog::insertSelection() { bool b2 = false; for(int index_c = sel.leftCol(); index_c <= sel.rightCol(); index_c++) { if(b2) { - matrixstr += CALCULATOR->getComma(); + matrixstr += CALCULATOR->getComma().c_str(); matrixstr += " "; } else { b2 = true; -- cgit v1.2.1