ELLPACK(ID:6930/ell010)Partial differenctial equation language Related languages
References: ELLPACK Following the renowned cooperative effort that resulted in the development of the EISPACK program package, another project called ELLPACK [30, 47] was started around 1975. The aim of ELLPACK is to provide a research and educational computer package for the evaluation and testing of methods for solving PDEs. The most important lesson learned from the EISPACK project is that the development and distribution of quality software can be achieved by the joint efforts of several different organizations. The ELLPACK project involves cooperative effort of several groups including Purdue, University of Texas, and Harvard. The first stage of the project deals with elliptic problems for two- and three-dimensional rectangular domains. ELLPACK is constantly being improved and extended. The future modifications will allow nonrectangular geometries as well as parabolic and hyperbolic equations. At present, the basic organization of ELLPACK is reasonably fixed [46]. The program package consists of modules performing various computational tasks. The typical sequence of modules to solve a PDE is the following: domain processing, discretization, difference equation indexing, solution, and output. However, not the modules, but rather the interfaces between them are the fixed points of the computational structure. The information at any interface is not destroyed by the execution of any module that is invoked later. Thus it is always possible to return to any interface and to restart the calculation by specifying the execution sequence containing other modules. The user communicates with ELLPACK by means of a special input language. First, he defines a problem to be solved (PDE, domain, boundary conditions, and rectangular mesh). Then he enters the execution phase and specifies the sequence of modules to be used. He can experiment with the available discretization techniques, reorganize the set of difference equations, and use different methods to solve it. in ACM Transactions on Mathematical Software (TOMS) 6(4) December 1980 view details in ACM Transactions on Mathematical Software (TOMS) 6(4) December 1980 view details in ACM Transactions on Mathematical Software (TOMS) 6(4) December 1980 view details in ACM Transactions on Mathematical Software (TOMS) 6(4) December 1980 view details Introduction Recently, demand for numerical routines which simulate physical phenomena has been rapidly increasing. The hardware used for such numerical simulation has made remarkable advances through innovations in LSI technology and computer architecture, such as vector and parallel processors. However, the programming itself still remains at a relatively elementary level. The development of simulation programs by such conventional languages as FORTRAN faces the following problems. A long period of time is necessary to develop even a simple simulator, and special knowledge of numerical analysis methods like discretization is needed. In addition a specialized programming technique is required to exploit the performance of vector/parallel processors. Moreover, such programs are so lengthy and complicated that they are unfeasible to extend. One approach for coping with these problems is the use of mathematical libraries or software packages designed for the special application fields. However, there are distinct limitations in applicable fields and the adopted numerical algorithms. Additionally, users can not control the numerical scheme in detail, and they frequently can not understand or utilize the complicated functions and interfaces. To address these limitations, several simulation language systems has been developed, such as SALEM, PDEL, and ELLPACK. ELLPACK especially seems to be a powerful system. ELLPACK has ample problem solving capabilities due to its extensive library, which is still expanding in response to the demands of the interactive and distributed system environment. However, the new solver architecture which has been proposed for ELLPACK is not for enhancing its application to practical complex simulation problems. On the other hand, the present study proposes a high level programming language system DEQSOL(Differential EQuation SOLver) by which the numerical models can be described flexibly and which can automatically generate efficient simulation programs from the high level descriptions. This system has two main targets: (1)To enhance programming productivity by establishing a new architecture-independent language interface between numerical analyst and computer. (2)To generate highly vectorizable FORTRAN codes from DEQSOL descriptions using its intrinsic parallelism. (DEQSOL) The structure of the previously developed DEQSOL system and its processing flow are shown in Fig.1. The DEQSOL description is automatically translated into the FORTRAN simulation program by the DEQSOL translator. The results of several benchmark tests, which indicate that the programming productivity has been improved by almost an order of magnitude over FORTRAN, are shown in Table 1. The table also shows that most of the generated codes have extremely high vectorization ratios(91%-98%) on the Hitachi S-81 0 vector processor. Both the Finite Difference Method(FDM) and the Finite Element Method(FEM) are available as discretiration method. The key feature of DEQSOL is that users can describe various numerical schemes for a wide range of problems quite naturally by using fundamental DEQSOL statements. One of the principal functions in DEQSOL is the implicit solution function. Here, this function acts to discretize the objective linear PDE into a system of linear equations. It then obtains a discrete PDE solution by solving this linear equation system. The restriction on the former DEQSOL implicit solution function has been that only one PDE in a rectangular region is permitted for a single implicit solution function. As a result, tightly coupled simultaneous PDEs, or PDEs defined in non-rectangular regions, have not been accepted. Because practical problems are sometimes formulated as described above, this restriction must be eliminated in order to make DEQSOL a practical solver. In this paper, an advanced implicit solution function is presented for removing these restrictions. Consequently, the tightly coupled simultaneous PDEs defined in regions described by unions or by differences in rectangular subregions can be solved by DEQSOL. In addition, a block-iteration scheme aimed at reducing the region size needed to execute large-scale problems can be developed. in ACM Transactions on Mathematical Software (TOMS) 6(4) December 1980 view details in ACM Transactions on Mathematical Software (TOMS) 6(4) December 1980 view details |