next up previous [pdf]

Next: Structures and Interfaces Up: IWAVE Structure and Basic Previous: IWAVE Structure and Basic

Introduction

IWAVE combines minimal physics- and scheme-specific code with a common base of memory allocation, SPMD communication and other forms of parallelism, i/o, and job control code to produce complete wave modeling applications. This paper explains what code must be written to implement a wave modeling application in IWAVE, and how IWAVE makes various modeling options available via a set of examples. It ends with a discussion of various other extensions and capabilities, implemented or planned, including various forms of inversion.

The next section describes the general organization of the IWAVE core code and the additional code that must be added to form an application. Following this generic structural description, I explain how to implement it in the case of the simplest useful example, constant density acoustics.

Some design aspects of IWAVE arise from the intended use cases not discussed here: parallel processing of shots, subdomains, and loops, and interface with an object oriented optimization package, the Rice Vector Library, to facilitate inversion applications. These use cases and their design implications will form the subjects of other reports.


next up previous [pdf]

Next: Structures and Interfaces Up: IWAVE Structure and Basic Previous: IWAVE Structure and Basic

2015-04-20