For a long time efficient use of massively parallel computers has been hindered by dependencies introduced in software through low-level implementation practice. This paper presents a programming environment and language called ObjectMath (Object oriented Mathematical language for scientific computing), which aims at eliminating this problem by allowing the user to represent mathematical equational models directly in the system. The system performs dependency analysis of equations to extract parallelism and automatically generates parallel code for numerical solution.
The system is currently being used for industrial applications in advanced mechanical analysis, but is generally applicable to other areas. Using ObjectMath, it is possible to model classes of equation objects, to support inheritance of equations, and to solve systems of equations.