Computational & Technology Resources
an online resource for computational,
engineering & technology publications
Civil-Comp Proceedings
ISSN 1759-3433
CCP: 94
PROCEEDINGS OF THE SEVENTH INTERNATIONAL CONFERENCE ON ENGINEERING COMPUTATIONAL TECHNOLOGY
Edited by:
Paper 127

Design of a Multi-Physics Integration Tool

B. Patzák

Department of Mechanics, Faculty of Civil Engineering, Czech Technical University, Prague, Czech Republic

Full Bibliographic Reference for this paper
, "Design of a Multi-Physics Integration Tool", in , (Editors), "Proceedings of the Seventh International Conference on Engineering Computational Technology", Civil-Comp Press, Stirlingshire, UK, Paper 127, 2010. doi:10.4203/ccp.94.127
Keywords: multi-physics simulations, software integration, object oriented design.

Summary
Numerical simulations are now routinely used in research and industry and are accepted as reliable analysis tools. The existing knowledge in various disciplines has been integrated into advanced simulation tools, that have been developed over many years. In recent years, it becomes increasingly clear, that the focus will be on the integration of existing knowledge from different disciplines to enable further progress in many fields, including structural and material engineering. Therefore, one of the challenges in numerical modeling is to enable the efficient use and inter-operation of a wide variety of problem-specific computational tools to simulate, analyze and understand the complex, multi-physics problems.

The paper presents the design of multi-physics integration tool with object-oriented architecture, facilitating the implementation of multi-physics and multi-level simulations, assembled from independently developed applications (components). It provides a high-level support for mutual data exchange between codes, including support for different discretization techniques and specific field transfer operators, aware of underlying physical phenomena.

Each application or application agent is required to implement application and data interfaces. An application interface is intended to provide services for steering individual applications. This interface primarily declares methods for processing and updating the solution step state, methods requesting the application and solution state (check for converged state, reporting critical time step, etc.). A data interface permits a request to update solution domains and fields. Also the classes representing and implementing any multi-physics analysis should themselves implement these interfaces. This approach allows a hierarchy of cooperating applications to bebuitl to solve the desired problem.

The parallel and distributed applications and their aspects are addressed as well. The parallel applications typically come with distributed parallel data structure and several application instances running on different processors. The aim is to have unified application data access and steering, hiding the differences between individual applications and allowing serial and parallel applications to be managed using the same interface. This will be achieved by application agents. These agents will be aware of distributed application data structure, allowing the efficient execution of data request operations by routing the requests to processes that the data owns.

The Python [1] language will be extended by modules, representing interfaces to existing codes, with specific functionality. The high-level language serves as a "glue" to tie the modules or components together, to create the specialized application. Also, the application interface can be conveniently realized by wrapping the application code. This approach also allows a single source version of the component code to be maintained.

References
1
G. van Rossum, F.L. Drake Jr., (Editors), "An Introduction to Python", Network Theory Ltd, 2006.

purchase the full-text of this paper (price £20)

go to the previous paper
go to the next paper
return to the table of contents
return to the book description
purchase this book (price £125 +P&P)