TK Solver

Last updated

TK Solver
Other namesTK!Solver
Developer(s) Software Arts; Universal Technical Systems
Initial release1982
Stable release
6.0 / 2019
Operating system Windows
Available inEnglish
Type Mathematics/engineering
License proprietary by subscription only
Website www.uts.com

TK Solver (originally TK!Solver) [1] is a mathematical modeling and problem solving software system based on a declarative, rule-based language, commercialized by Universal Technical Systems, Inc. [2]

Contents

History

Invented by Milos Konopasek in the late 1970s and initially developed in 1982 by Software Arts, the company behind VisiCalc, [1] TK Solver was acquired by Universal Technical Systems in 1984 after Software Arts fell into financial difficulty and was sold to Lotus Software. [3] Konopasek's goal in inventing the TK Solver concept was to create a problem solving environment in which a given mathematical model built to solve a specific problem could be used to solve related problems (with a redistribution of input and output variables) with minimal or no additional programming required: once a user enters an equation, TK Solver can evaluate that equation as iswithout isolating unknown variables on one side of the equals sign.

Software Arts also released a series of "Solverpacks" - "ready-made versions of some of the formulas most commonly used in specific areas of application." [4]

The New York Times described TK Solver as doing "for science and engineering what word processing did for corporate communictions [sic] and calc packages did for finance." [1]

Universal Technical Systems

Lotus, which had acquired Software Arts, including TK Solver, in 1984 [3] sold its ownership of the software to Universal Technical Systems less than two years later. [2] Release 5 was still considered "one of the longest–standing mathematical equation solvers on the market today" in 2012. [5] [6]

Core technology

TK Solver's core technologies are a declarative programming language, algebraic equation solver, [1] an iterative equation solver, and a structured, object-based interface, using a command structure. [1] [7] The interface comprises nine classes of objects that can be shared between and merged into other TK files:

Each class of object is listed and stored on its own worksheet—the Rule Sheet, Variable Sheet, Unit Sheet, etc. Within each worksheet, each object has properties summarized on subsheets or viewed in a property window. The interface uses toolbars and a hierarchal navigation bar that resembles the directory tree seen on the left side of the Windows Explorer.

The declarative programming structure is embodied in the rules, functions and variables that form the core of a mathematical model. [8]

Rules, variables and units

All rules are entered in the Rule Sheet or in user-defined functions. Unlike a spreadsheet or imperative programming environment, the rules can be in any order or sequence and are not expressed as assignment statements. "A + B = C / D" is a valid rule in TK Solver and can be solved for any of its four variables. Rules can be added and removed as needed in the Rule Sheet without regard for their order and incorporated into other models. A TK Solver model can include up to 32,000 rules, and the library that ships with the current version includes utilities for higher mathematics, statistics, engineering and science, finances, and programming.

Variables in a rule are automatically posted to the Variable Sheet when the rule is entered and the rule is displayed in mathematical format in the MathLook View window at the bottom of the screen. Any variable can operate as an input or an output, and the model [8] will be solved for the output variables depending on the choice of inputs.

A database of unit conversion factors also ships with TK Solver, and users can add, delete, or import unit conversions in a way similar to that for rules. Each variable is associated with a "calculation" unit, but variables can also be assigned "display" units and TK automatically converts the values. For example, rules may be based upon meters and kilograms, but units of inches and pounds can be used for input and output.

Problem-solving

TK Solver has three ways of solving systems of equations. The "direct solver" solves a system algebraically by the principle of consecutive substitution. When multiple rules contain multiple unknowns, the program can trigger an iterative solver which uses the Newton–Raphson algorithm to successively approximate based on initial guesses for one or more of the output variables. Procedure functions can also be used to solve systems of equations. Libraries of such procedures are included with the program and can be merged into files as needed. A list solver feature allows variables to be associated with ranges of data or probability distributions, solving for multiple values, which is useful for generating tables and plots and for running Monte Carlo simulations. The premium version now also includes a "Solution Optimizer" for direct setting of bounds and constraints in solving models [8] for minimum, maximum, or specific conditions.

TK Solver includes roughly 150 built-in functions: mathematical, trigonometric, Boolean, numerical calculus, matrix operations, database access, and programming functions, including string handling and calls to externally compiled routines. Users may also define three types of functions: declarative rule functions; list functions, for table lookups and other operations involving pairs of lists; and procedure functions, for loops and other procedural operations which may also process or result in arrays (lists of lists). The complete NIST database of thermodynamic and transport properties is included, with built-in functions for accessing it. TK Solver is also the platform for engineering applications marketed by UTS, [9] including Advanced Spring Design, Integrated Gear Software, Interactive Roark’s Formulas, Heat Transfer on TK, and Dynamics and Vibration Analysis.

Data display and sharing

Tables, plots, comments, and the MathLook notation display tool can be used to enrich TK Solver models. Models can be linked to other components with Microsoft Visual Basic and .NET tools, or they can be web-enabled using the RuleMaster product or linked with Excel spreadsheets using the Excel Toolkit product. There is also a DesignLink option linking TK Solver models with CAD drawings and solid models. In the premium version, standalone models can be shared with others who do not have a TK license, opening them in Excel or the free TK Player.

Reception

BYTE 's 1982 preview of TK Solver said that it was "an interesting program that does for equation-solving what the pocket calculator does for arithmetic—replacees drudgery and the possibility of error with speed and accuracy". [10] The magazine's 1984 review stated that "TK!Solver is superb for solving almost any kind of equation", but that it did not handle matrices, and that a programming language like Fortran or APL was superior for simultaneous solution of linear equations. The magazine concluded that despite limitations, it was a "powerful tool, useful for scientists and engineers. No similar product exists". [11] By version 5.0, TK Solver added Matrix handling functionality. [6]

Competitive products appeared by mid-1988: Mathsoft's Mathcad and Borland's Eureka: The Solver. [12] [13] [14]

Dan Bricklin, known for VisiCalc and his Software Arts's initial development of TK Solver, was quoted as saying that the market "wasn't as big as we thought it would be because not that many people think in equations." [14]

See also

Related Research Articles

Control theory is a field of control engineering and applied mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a desired state, while minimizing any delay, overshoot, or steady-state error and ensuring a level of control stability; often with the aim to achieve a degree of optimality.

<span class="mw-page-title-main">Dan Bricklin</span> VisiCalc inventor

Daniel Singer Bricklin is an American businessman and engineer who is the co-creator, with Bob Frankston, of VisiCalc, the first spreadsheet program. He also founded Software Garden, Inc., of which he is currently president, and Trellix, which he left in 2004. He currently serves as the chief technology officer of Alpha Software.

A mathematical model is an abstract description of a concrete system using mathematical concepts and language. The process of developing a mathematical model is termed mathematical modeling. Mathematical models are used in applied mathematics and in the natural sciences and engineering disciplines, as well as in non-physical systems such as the social sciences. It can also be taught as a subject in its own right.

<span class="mw-page-title-main">Numerical analysis</span> Methods for numerical approximations

Numerical analysis is the study of algorithms that use numerical approximation for the problems of mathematical analysis. It is the study of numerical methods that attempt to find approximate solutions of problems rather than the exact ones. Numerical analysis finds application in all fields of engineering and the physical sciences, and in the 21st century also the life and social sciences like economics, medicine, business and even the arts. Current growth in computing power has enabled the use of more complex numerical analysis, providing detailed and realistic mathematical models in science and engineering. Examples of numerical analysis include: ordinary differential equations as found in celestial mechanics, numerical linear algebra in data analysis, and stochastic differential equations and Markov chains for simulating living cells in medicine and biology.

<span class="mw-page-title-main">Spreadsheet</span> Computer application for organization, analysis, and storage of data in tabular form

A spreadsheet is a computer application for computation, organization, analysis and storage of data in tabular form. Spreadsheets were developed as computerized analogs of paper accounting worksheets. The program operates on data entered in cells of a table. Each cell may contain either numeric or text data, or the results of formulas that automatically calculate and display a value based on the contents of other cells. The term spreadsheet may also refer to one such electronic document.

Metafont is a description language used to define raster fonts. It is also the name of the interpreter that executes Metafont code, generating the bitmap fonts that can be embedded into e.g. PostScript. Metafont was devised by Donald Knuth as a companion to his TeX typesetting system.

<span class="mw-page-title-main">Maple (software)</span> Mathematical computing environment

Maple is a symbolic and numeric computing environment as well as a multi-paradigm programming language. It covers several areas of technical computing, such as symbolic mathematics, numerical analysis, data processing, visualization, and others. A toolbox, MapleSim, adds functionality for multidomain physical modeling and code generation.

<span class="mw-page-title-main">HP-22S</span>

The HP-22S is an electronic calculator from the Hewlett-Packard company which is algebraic and scientific. This calculator is comparable to the HP-32S. A solver was included instead of programming. It had the same constraints as the 32S, lacking enough RAM for serious use. Functions available include TVM and unit conversions. Only single letter variable names are allowed. Marketed as a student calculator, the 22S uses infix notation rather than the reverse polish notation used on some higher-end HP calculators of the same era.

<span class="mw-page-title-main">Mathcad</span> Computer system for mathematical calculation

Mathcad is computer software for the verification, validation, documentation and re-use of mathematical calculations in engineering and science, notably mechanical, chemical, electrical, and civil engineering. Released in 1986 on DOS, it introduced live editing (WYSIWYG) of typeset mathematical notation in an interactive notebook, combined with automatic computations. It was originally developed by Mathsoft, and since 2006 has been a product of Parametric Technology Corporation.

Software Arts was a software company founded by Dan Bricklin and Bob Frankston in 1979 to develop VisiCalc, which was published by a separate company, Personal Software Inc., later named VisiCorp.

A problem solving environment (PSE) is a completed, integrated and specialised computer software for solving one class of problems, combining automated problem-solving methods with human-oriented tools for guiding the problem resolution. A PSE may also assist users in formulating problem resolution. A PSE may also assist users in formulating problems, selecting algorithm, simulating numerical value and viewing and analysing results.

<span class="mw-page-title-main">Mathomatic</span> Computer algebra system

Mathomatic is a free, portable, general-purpose computer algebra system (CAS) that can symbolically solve, simplify, combine and compare algebraic equations, and can perform complex number, modular, and polynomial arithmetic, along with standard arithmetic. It can perform symbolic calculus (derivative, extrema, Taylor series, and polynomial integration and Laplace transforms), numerical integration, and can handle all elementary algebra except logarithms. Trigonometric functions can be entered and manipulated using complex exponentials, with the GNU m4 preprocessor. Not currently implemented are general functions such as f(x), arbitrary-precision and interval arithmetic, as well as matrices.

<span class="mw-page-title-main">Casio 9850 series</span> Series of graphing calculators by Casio

The Casio CFX-9850G series is a series of graphing calculators manufactured by Casio Computer Co., Ltd. from 1996 to 2008.

<span class="mw-page-title-main">Software calculator</span> Calculator as a computer program

A software calculator is a calculator that has been implemented as a computer program, rather than as a physical hardware device.

<span class="mw-page-title-main">SMath Studio</span> Algebra and graphing software

SMath Studio is a freeware, closed-source, mathematical notebook program similar to Mathcad. It is available for Windows, Linux, iOS, Android, Universal Windows Platform, and on some handhelds.

Engineering Equation Solver (EES) is a commercial software package used for solution of systems of simultaneous non-linear equations. It provides many useful specialized functions and equations for the solution of thermodynamics and heat transfer problems, making it a useful and widely used program for mechanical engineers working in these fields. EES stores thermodynamic properties, which eliminates iterative problem solving by hand through the use of code that calls properties at the specified thermodynamic properties. EES performs the iterative solving, eliminating the tedious and time-consuming task of acquiring thermodynamic properties with its built-in functions.

PROSE was the mathematical 4GL virtual machine that established the holistic modeling paradigm known as Synthetic Calculus. A successor to the SLANG/CUE simulation and optimization language developed at TRW Systems, it was introduced in 1974 on Control Data supercomputers. It was the first commercial language to employ automatic differentiation (AD), which was optimized to loop in the instruction-stack of the CDC 6600 CPU.

This glossary of computer science is a list of definitions of terms and concepts used in computer science, its sub-disciplines, and related fields, including terms relevant to software, data science, and computer programming.

References

  1. 1 2 3 4 5 6 Erik Sandberg-Diment (August 2, 1983). "New software for science and engineering". The New York Times . Retrieved July 23, 2019.
  2. 1 2 "Briefs: Lotus sold its TKSolver software program to Universal Technical Systems". The New York Times . January 1, 1986.
  3. 1 2 David E. Sanger (April 9, 1985). "Lotus Set to Acquire Software Arts". The New York Times .
  4. Erik Sandberg-Diment (August 9, 1983). "Ready-to-use formulas for finance to physics". The New York Times .
  5. "TK Solver R5". Springs. Spring Manufacturers Institute. Summer 2012.
  6. 1 2 "TK Solver 5.0 Premium (Standalone) from Universal Technical Systems". uts.com. Retrieved April 20, 2017.
  7. /M for move, /I for insert ... "carried over from Visicalc."
  8. 1 2 3 Nirmala Khandan (2001). Modeling Tools for Environmental Engineers and Scientists. CRC Press. ISBN   1420003399.
  9. "Universal Technical Systems' TK! Solver Plus". PC Magazine . March 14, 1989. p. 310. There is much to admire in Universal Technical Systems' $395 TK! Solver Plus ...
  10. Williams, Gregg (October 1982). "Software Arts' TK Solver". BYTE. pp. 360–376. Retrieved December 30, 2024.
  11. Miller, Alan R. (December 1984). "TK!Solver". BYTE. pp. 263–272.
  12. Ronald Shone, "Software for Solving Equations: Eureka: The Solver, TK Solver Plus and Mathcad", Journal of Economic Surveys3:1:83–95 doi : 10.1111/j.1467-6419.1989.tb00059.x (March 1989)
  13. "Mathcad, by Mathsoft Inc. of Cambridge, Mass.; Eureka, by Borland International of Scotts Valley, Calif.
  14. 1 2 Andrew Pollack (June 24, 1988). "A Top Scientist's Latest: Math Software". The New York Times .