ABSTRACTABSTRACTThis paper examines the application of object-oriented programming techniques to the finite element method. First a tool library is briefly presented: it includes mathematical objects such as vector, m...
详细信息
ABSTRACTABSTRACTThis paper examines the application of object-oriented programming techniques to the finite element method. First a tool library is briefly presented: it includes mathematical objects such as vector, matrix and tensor, as well as generic types such as array, list and encapsulated pointer. Design patterns are then presented. They allow the defining of reusable implementation strategies which help to obtain a flexible extensible code. Finally the paper demonstrates the use of the different patterns in the case of objects describing finite elements and object representing material behaviors.RÉSUMÉCet article examine l'application des techniques de programmation orientée objet à la méthode des éléments finis. En premier lieu, une bibliothèque d'utilitaires est brièvement présentée. Elle comprend des objets mathématiques tels les vecteurs, les matrices et les tenseurs, ainsi que des types génériques tels que les tableaux, les listes ou les pointeurs encapsulés. Des schémas de conception sont ensuite présentés. Ils permettent de définir des stratégies d'implantation réutilisables qui permettent d'obtenir un code flexible et extensible. Finalement, l'article montre l'utilisation des différents schémas dans le cas des objets de type ‘éléments finis’ et des objets de type ‘comportement’.
This Nifty Assignment submission outlines a programming in which students implement a simulator for the German Enigma machine from World War II-an encryption standard successfully broken by a team of mathematicians an...
详细信息
ISBN:
(纸本)9781450394338
This Nifty Assignment submission outlines a programming in which students implement a simulator for the German Enigma machine from World War II-an encryption standard successfully broken by a team of mathematicians and engineers at Bletchley Park, England. The project is organized into six milestones, each of which requires only a small amount of code, making it easily accessible to an audience familiar with defining classes and using standard dictionary and list structures. The assignment uses the Model-View-Controller pattern as its underlying structure, thereby giving students a sense of how programming patterns work. Students are responsible only for implementing the model; the graphics code for the view and controller are provided in starter files available in both Python and Java. Through this project, students gain a greater understanding of object-oriented design in the context of an important event in the early history of computing.
暂无评论