few problems lend themselves to closed-form solution, we often need to convert formal definitions into practical numerical methods. One such problem deals with the Principal Value integral , which many students encounter in a course on functions of a complex variable. However, the prospect of evaluating one numerically might seem rather daunting. To the… (More)
The April 2000 issue of ACM SIGPLAN Notices contained several articles that touched directly or indirectly on finite state machines (FSMs). In Fortran and Basic the computed GOTO provides a direct, if cumbersome, method for constructing state machines. Languages with CASE or SWITCH provide a more structured route. When none of these is available, FSMs may… (More)
This installment of computing prescriptions illustrates how complex arithmetic can simplify algorithms in two-dimensional Cartesian vector space as well as how to make difficult numerical integrals tractable. In other words, computer languages for scientific applications should support complex arithmetic.
Forth is a language that, for most programmers, is like the back side of the Moon: they know it is there but have never laid eyes on it. Yet Forth is mature (about as old as Lisp or C)) ubiquitous in everyday applications such as automated tellers, package tracking, airline reservations, telephone switching systems, and microcontrollers everywheree and… (More)
and Reduce, only a small portion of the scientific community knows about them. This article aims to introduce one such method—Gröbner bases—for non-mathematicians in an intuitive way. Specifically , we show the analogies and differences between linear and algebraic system solving, with an emphasis on the underlying geometric aspects. In the next issue, we… (More)
Standard) double precision would not yield a sufficiently accurate result. For most current machines, 53-bit double precision is the highest provided in hardware, giving about 16 significant digits. (By " significant digits, " I mean the number of equivalent decimal digits of precision, rather than the number with base ≠ 10.) Calculating with 30 or 40… (More)
and elegant way to translate certain mathematical relations into programs, and it's a great technique for discovering efficient algorithms. Given its utility, you might wonder why people seldom use it. Here are just some of the reasons why: • Not all computer languages permit recursion (although most do today). Recursion seems arcane to scientific… (More)
more points that lie on the same circle in 2D computations or five or more on the same sphere in 3D. Figure 1 shows a dramatic application of Francis Sullivan's and my degener-acy method 1 by Alexander Agathos (http://users.forthnet. gr/ath/agalex), who used it for surface reconstruction and simplification. Triangulation Triangulations are used for… (More)