An Object-oriented Environment for Developing Finite Element Codes for Multi-disciplinary Applications
Autor: | Pooyan Dadvand, Eugenio Oñate, Riccardo Rossi |
---|---|
Jazyk: | angličtina |
Rok vydání: | 2019 |
Předmět: |
Structure (mathematical logic)
Engineering drawing Object-oriented programming Engineering Civil business.industry Computer science Interface (Java) Applied Mathematics Engineering Multidisciplinary Data structure Computer Science Software Engineering Engineering Marine Computer Science Applications Engineering Manufacturing Engineering Mechanical Variable (computer science) Engineering Industrial Node (circuits) Engineering Ocean Software engineering business Engineering Aerospace Engineering Biomedical Abstraction (linguistics) Reusability |
Zdroj: | Scipedia Open Access Scipedia SL |
Popis: | The objective of this work is to describe the design and implementation of a framework for building multi-disciplinary finite element programs. The main goals are generality, reusability, extendibility, good performance and memory efficiency. Another objective is preparing the code structure for team development to ensure the easy collaboration of experts in different fields in the development of multi-disciplinary applications. Kratos, the framework described in this work, contains several tools for the easy implementation of finite element applications and also provides a common platform for the natural interaction of different applications. To achieve this, an innovative variable base interface is designed and implemented. This interface is used at different levels of abstraction and showed to be very clear and extendible. Avery efficient and flexible data structure and an extensible IO are created to overcome difficulties in dealing with multi-disciplinary problems. Several other concepts in existing works are also collected and adapted to coupled problems. The use of an interpreter, of different data layouts and variable number of dofs per node are examples of such approach. In order to minimize the possible conflicts arising in the development, a kernel and application approach is used. The code is structured in layers to reflect the working space of developers with different fields of expertise. Details are given on the approach chosen to increase performance and efficiency. Examples of application of Kratos to different multidisciplinary problems are presented in order to demonstrate the applicability and efficiency of the new object oriented environment. |
Databáze: | OpenAIRE |
Externí odkaz: |