Publications

Publications / Conference

Object construction and destruction design patterns in Fortran 2003

Rouson, Damian R.; Xia, Jim; Xu, Xiaofeng

This paper presents object-oriented design patterns in the context of object construction and destruction. The examples leverage the newly supported object-oriented features of Fortran 2003. We describe from the client perspective two patterns articulated by Gamma et al. [1]: ABSTRACT FACTORY and FACTORY METHOD. We also describe from the implementation perspective one new pattern: the OBJECT pattern. We apply the Gamma et al. patterns to solve a partial differential equation, and we discuss applying the new pattern to a quantum vortex dynamics code. Finally, we address consequences and describe the use of the patterns in two open-source software projects: ForTrilinos and Morfeus.