Você está na página 1de 7

KALKULATOR - ABOUT THE PROGRAM ================================ You can buy a decent scientific calculator in your drugstore for $15

or less. Put it next to your computer's keyboard - and why bother with any calculator program? This means that a program of this kind, in order to be more than just a gadget, has to have features you will not find in any calculator. Here I will try to convince you that Kalkulator is such an application, although, of course, ultimately you will be the judge. What follows is a brief listing of Kalkulator's features. 1. EXPRESSION EVALUATION On most calculators (with a notable exception of some Sharp and Casio models) an expression is being evaluated while you are entering it. As soon as the next operand (numeric value) has been entered, you do not see the previous one(s). Upon completion of an expression, you cannot really see what went into it. If you make (or suspect) an error, everything has to be re-entered from the beginning. In Kalkulator the whole expression is entered first in a notation very much like that used on paper. Only when the expression has been entered, you compute it. The expression stays there, and at any moment you can review it, modify and recompute. More, you can switch between six different expressions at a time (twenty-four in the registered version). More, Kalkulator allows you to enter expressions into dialog boxes wherever a numerical input is expected. For example, you can plot a function from Pi/3-A to Pi+2A without precomputing the graph limits. 2. FUNCTION SET Kalkulator has more functions that any competition I am aware of (and, certainly, more than some "ultimate Windows calculators", boasting "logarithms, power, pi and much more" - no, I am not inventing this!): - 39 standard functions: logarithmic and exponential (base e, 10 and 2), trigonometric and inverse, hyperbolic and inverse, square, cube and corresponding roots, some handy utility functions (like fractional part, absolute value etc.). - 4 Euler (or related) functions: gamma, logarithmic gamma, beta, combinations (the factorial operator is also provided) - 44 statistical distribution functions for eight most commonly used distributions; this includes left, right and central distribution integrals and functions inverse to distribution integrals (the latter, so commonly used in statistics, cannot be found in any calculator, regardless of the price)

- 3 random generator functions (uniform, Normal, Poisson) to perform statistical what-if calculations - 3 conditional functions (e.g., "if the first argument is negative, take the second one, else take the third") - 3 mixed-unit entry functions: pounds/ounces, feet/inches, hours/ minutes/seconds - 12 user defined functions of one, two or three arguments All these add up to more than 100 functions, computed, when only possible, with not less than 18 decimal digits of accuracy. 3. RESULT REFORMATTING Any result can be displayed in a number of formats: - Fixed- and floating point with a user-selectable number of digits (you can also let the program decide) - Whole part and fraction, e.g., "8 9/17" - Pounds, ounces and a fraction, e.g. "3 7 9/16" - Feet, inches and a fraction, similar to the above - Degrees, minutes and seconds of angle - Decimal degrees of angle, same for minutes or seconds - Hours, minutes and seconds of time 4. VARIABLES Results of calculations can be stored in variables (memories), denoted as A..Z. These variables can then be used in other expressions. 5. UNIT CONVERSION Any calculation result can be converted between different measurement units. Conversions for area, energy, force, length, mass, power, pressure, speed, temperature, time and volume are provided. In addition, a number of physical constants have been defined in the program. Possibly, not many users will need this feature, but all it costs you is just the space for one button. 6. NUMERICAL OPERATIONS Kalkulator will take a function typed in as an expression and perform on it the following numerical operations: - Numerical integration over a given interval

- Computing a derivative at a given point - Computing a sum within given argument limits, with a given step - Find a zero of the function, i.e. solve an equation f(x)=0 inside a given interval If you do not need these operations, just ignore them: all they take is another four small buttons at the bottom of the screen. 7. POLYNOMIAL ROOTS Kalkulator computes equations with real Equations up to the the program) can be roots (real or complex) of polynomial coefficients, e.g. c0+c1*t+c3*t^2=0. third degree (fourth in registered copies of solved.

8. SYSTEMS OF NON-LINEAR EQUATIONS Kalkulator will solve, or at least attempt to solve, a system of up to 9 simultaneous non-linear equations with the same number of unknowns. The Newton-Raphson method is used and, for well-behaved equations, 17 or 18 digit accuracy is provided. 9. FUNCTION OPTIMIZATION Given a function of up to nine arguments, Kalkulator will search for its extremum (minimum or maximum), starting from a given initial guess. The robust downhill simplex algorithm is used here. 10. FUNCTION GRAPHS A function defined as an expression can be plotted within a given x-range; the y-range can be entered manually or computed and rounded by the program. A number of functions can be plotted on a single graph canvas, either one by one or simultaneously. The plotting algorithms are quite smart, making necessary adjustments to the local line curvature and being capable of handling points or areas where the function is not computable. You can invent a function formula to fool any plotting algorithm, but Kalkulator's is more difficult to fool than most, at least those I'm aware of. There is a provision to add coordinate grid, and the graph can be saved to the Windows clipboard for use in other programs. 11. STATISTICAL OPERATIONS Kalkulator has a data buffer, capable of storing single data values (X points) or 64 pairs of values (XY points). Simple statistical and/on graphic operations can be performed on the data:

- computing the population parameters: mean, variance, standard deviation, minimum and maximum values, covariance (for XY points) - drawing a data histogram (X points) - drawing a scatter plot (XY points), computing linear or square regression coefficients and adding the regression line to the plot - computing the "goodness of fit" statistics for data distribution (chi-square, likelihood) or curvilinear regression (sum of squares or of absolute values) The data values and the computed parameters can then be used in any Kalkulator expressions. You can also define a formula to compute the X or Y values; this formula may also refer to any points in the buffer. [The registered version of Kalkulator adds some capabilities here: the data buffer has the capacity of 6400/3200 data points, and the program will do polynomial regression up to the ninth degree. It also allows for saving the data to (or reading from) an ASCII file.] 12. DATA POINT AND DISTRIBUTION FITTING Kalkulator will fit tha data stored in the buffer with an arbitrary function with up to nine free parameters. - A population of values can be fitted with any distribution density function using the chi-square or maximum likelihood best fit definition - A set of XY data points can be fitted with any curvilinear regression function minimizing the sum of squared or absolute deviations. 13. LINEAR ALGEBRA Kalkulator performs elementary linear algebra operations: vector and matrix arithmetic's, matrix inversion, solving systems of simultaneous linear equations. Matrices up to 16x16 can be used in the registered version. The elements of vectors and matrices can be also used as components of arithmetic expressions in all other Kalkulator operations. 14. DIFFERENTIAL EQUATIONS Kalkulator will solve a system of up to nine ordinary differential equations like dy1/dx = f1(x,y1, ... ,yn) dy2/dx = f2(x,y1, ... ,yn) ...

dyn/dx = fn(x,y1, ... ,yn) with given start conditions, x0 and y1(x0)..yn(x0). The fourth-order Runge-Kutta method is used. All and any of y1..yn can be plotted against y. 15. COMPUTER MATH A separate small panel serves as an add-on RPN computer math calculator to perform arithmetic operations on integers of a finite bit length (8, 16 or 32 bits) in various input/display modes (binary, octal, hexadecimal, decimal). Unsigned and signed (twos complement) modes are supported. 16. THE USER INTERFACE, LOOK AND FEEL Too many programs throw in lots of features and a kitchen sink, to the point when navigation through program features becomes confusing (not to say irritating). In the case of Kalkulator the major design principle was that the user should not be hampered by the features he/she does not access. This is, of course, a highly subjective issue, but Kalkulator at least makes a honest attempt in this area. Many of the less-used functions or operations are accessed from tabbed panels. When not in use, only a tab reminds the user about their existence. The buttons for more advanced operations (like, say, numerical integration) can be hidden (which also saves you the valuable screen space). All operations, without a single exception, can be performed without the mouse, using the keyboard only. This was done primarily with laptop users in mind. Another nice option allows to shrink Kalkulator vertically to not much more than two lines of text - just enough space to enter the expression and to see the result. You may find this feature handy when using the program while working on some document. (Yes, cut and paste operations are, of course, supported.) Last but not least, two different display fonts are provided: one suitable for the not-so-sharp CRT monitors, and another primarily (but not only) for the super-sharp active matrix displays. 17. FAULT TOLERANCE Kalkulator traps internally all user errors. If you attempt an illegal operation, you will get just a message with the error diagnostics. For expression syntax errors, the input cursor will be placed at the offending expression element, so that correcting the problem is quite easy. (Compare this with the "E------" display you see on the "regular" calculators.)

18. PERSISTENCE When you exit the program, the current status of all operations and the data is saved to a disk file. Next time you run the program, you will be able to pick up from the place you left it. You can also save or reload the program status at any time. 19. ON-LINE HELP Yes, of course. Kalkulator comes with a standard Windows help file, quite detailed and comprehensive. Good-looking, too. THINGS KALKULATOR DOES NOT DO - Calculations on complex numbers (except of those mentioned in [8]) - Symbolic algebra - Financial math (compound interest, pay-offs etc.) - Programmability (loops, branching) - Plotting two-, three- and n-dimensional surfaces - Bessel functions, elliptic integrals - Your homework Depending on your response, some of these features may be implemented in the future releases (some have been taken from this list in the last two years); check my Web page every two months or so. Some will, however, never make it into the program: symbolic algebra, financial math, advanced plotting. Many of these features (especially, symbolic algebra) are implemented in the most impressive Texas Instruments TI-92 calculator (sold at $190 or so). I use it occasionally and I recommend it very highly. If you are into more serious math, you have to have a look at the TI-92. Still, as a software engineer and applied mathematician, for most of my daily tasks I prefer Kalkulator (don't trust me here as I wrote it; better check for yourself). ADDITIONAL NOTES Kalkulator has been developed for about fifteen years: the general concept and much of the user interface are inherited from "El_Cal - an Elementary Calculator", quite popular in the Atari ST environment. El_Cal has been under permanent development between 1988 and 1993 (at that time the ST could run circles around PC clones!). The expression parser, graphing algorithms and a major part of the internal program logic are the same as in Ex, a scientific and engineering program for the HP LX Palmtop computers. This

program, released in 1993 and still being supported, became one of the more popular pieces of software on the HP LX platform (at least judging from the number of CompuServe downloads). Finally, most of the numerical algorithms used in Kalkulator have been developed and refined in the last 20 years or so, in the course of my various home and job-related projects. Some of them, in addition to being used in the programs mentioned above, might already have affected your life, being a part of various U.S. Government projects. (Although a physicist by education, I am making my life as a software engineer.) The only really new part of Kalkulator is the Windows user interface. The rest of the program has been around. ###

Você também pode gostar