Introduction
It is a common and somewhat erroneous belief that Java will be "too slow" for scientific computing. [1] However, Java is not a machine-oriented language but is intented to be as machine-independent as possible. Identical numerical results on every machine is an important part of that goal. Java can be improved in its sutiability for numerical computation, but allowing operator notation to be extended to user-defined types, and by recognizing IEEE 754 exceptions. [2]
Java Access to Numerical Libraries
Some attemptions are trying to use Java as a numerical tool. One of them is solving via Numerical Libraries.
The pure Java attempted to guarantee numerical robustness by constraining the language so that all numerical computations would produce identical results across all Java platforms. However, this should pay high price on platforms supporting wide intermediate registers or extra-precise operations. RealJava extends Pure Java to support an alternative approach - a programming model giving portable access to the features of all Java platforms. RealJava derives from the belief that users want accurate answers delivered at the hightest speed, rather than less accurate results delivered more slowly, whether or not they match results on less capable machines. [3]
Features
Criticizm
Efforts like Borneo and RealJava are doomed to fail if success be defined as influencing the official definiton of Java on their own merits - since no amount of numerical merit is really significant in the big scheme of things. [4]
These projects approach the solution as different method. These provide Java programs with access to the numerical codes which have already been implemented in other language like Fortran. Netsolve allow Java applications or applets to access computational servers that can directly use pre-installed Fortran librarieds. However, f2j project translate the Fortran source code of the libraries of interest into Java class files. These two projects are developed at the University of Tennessee. [1]
Numerical Analysis and other applications
Numerical Analysis is the main application field using Java language. Other numerical computation applications are surveyed below.
Reference