8/38 Solidification of Metals and Alloys, No. 38, 998 Krzepnięcie Metali i Stopów, nr 38, 998 ANALIZA OBIEKTOWA MODELOWANIA NUMERYCZNEGO POWSTAWANIA NAPRĘŻEŃ W KRZEPNĄCYCH ODLEWACH SCZYGIOL Norbert, SZWARC Grzegorz, OLAS Tomasz Instytut Mechaniki i Podstaw Konstrukcji Maszyn, Politechnika Częstochowska 42-200 Częstochowa, ul. Dąbrowskiego 73, Polska STRESZCZENIE Praca dotyczy analizy obiektowej numerycznego modelu krzepnięcia odlewu. Analizie poddano model powstawania naprężeń otrzymany w wyniku zastosowania metody elementów skończonych. Przedstawiono dekompozycje rozważanego zagadnienia na elementy składowe oraz omówiono wzajemne powiązania między nimi.. WPROWADZENIE Tworzenie systemów informatycznych, a w tym także symulatorów zjawisk fizycznych, wymaga uwzględniania coraz większej liczby czynników oddziaływujących na model, co tym samym powoduje lawinowy wzrost trudności w implementacji tych systemów. Obecnie najczęściej stosowaną techniką ogarnięcia złożoności dziedziny problemu jest metodyka obiektowa. Pozwala ona na osiągnięcie jak najmniejszej luki pomiędzy myśleniem o rzeczywistości, a myśleniem o danych i procesach, stając się intuicyjnym narzędziem do celów modelowania pojęciowego. Podstawowymi mechanizmami obiektowości są: mechanizm abstrakcji, pozwalający budować coraz większe jednostki oprogramowania i operować nimi bez wnikania w ich wewnętrzną budowę, mechanizm kompozycji i dekompozycji, pozwalający na zamykanie detali projektu w coraz większe jednostki oraz dekomponowanie złożonych struktur na ich fragmenty i rozpatrywanie ich niezależnie od siebie i niezależnie od całości, mechanizm ponownego użycia, pozwalający na wykorzystanie wcześniej wytworzonych komponentów projektu. Jak każda metodyka tak i metodyka obiektowa ma swoją notację. Podstawowym jej składnikiem jest diagram obiektów. Zawiera on klasy obiektów, w ramach klas specyfikacje atrybuty i metody, związki generalizacji, związki asocjacji i agregacji oraz liczności tych związków.
56 Diagram obiektów powstaje na etapie analizy dziedziny problemu, która przeprowadzana jest niezależnie od jakiegokolwiek języka programowania (na ogół wnoszącym pewne ograniczenia) i w tym zakresie pozwala m. in. na lepsze odwzorowanie dziedziny problemu [,2,5,6]. 2. ANALIZA OBIEKTOWA METODY ELEMENTÓW SKOŃCZONYCH W wyniku analizy systemu do modelowania zjawisk fizycznych przy pomocy Metody Elementów Skończonych wyodrębniono pewną abstrakcyjną część zgrupowaną w pakiet FEMCore. W pakiecie tym znajdują się podstawowe klasy MES niezależne od typu rozwiązywanego zagadnienia. Poprzez mechanizm dziedziczenia tworzy się klasy opisujące konkretne modelowane zadanie (rys ). FEMCore HeatTransfer Solidification Stress Rys.. Podział na pakiety Fig.. Division in packages W skład pakietu FEMCore wchodzą podstawowe składowe MES: węzeł - klasa Node, element skończony - klasa Element, warunki brzegowe - BoundaryCondition, własności materiałowe dla grupy elementów - oraz klasa rozwiązująca układy równań - SystemOfEquationSolver (rys. 2). Są to w większości klasy abstrakcyjne, tzn. nie podaje się w nich liczby współrzędnych węzła, liczby węzłów w elemencie, funkcji aproksymujących, rodzaju warunków brzegowych, własności materiałowych, a także metody rozwiązania układów równań. Wszystkie te informacje są uszczegóławiane na etapie modelowania konkretnego zjawiska. Klasą konsolidującą, poprzez związek agregacji, jest klasa Solver. Zawiera ona w sobie kolekcje wszystkich obiektów klas węzłów, elementów, warunków brzegowych i warunków materiałowych występujących w zadaniu. Klasy Node, Element, i BoundaryCondition opisują kolejno pojedynczy węzeł, pojedynczy element skończony, własności dla pojedynczego obszaru oraz wprowadzone warunki brzegowe (w zależności od rodzaju) do pojedynczego elementu lub węzła. W trakcie rozwiązywania zadnia tworzone są kolekcje obiektów tych klas. Ich liczba jest dostosowywana do rozmiarów zadania, tzn. do liczby węzłów, elementów, brzegów i obszarów. Klasa Element została tak zaprojektowana, że tworzy układ równań tylko dla jednego elementu skończonego. Zbudowanie pełnego układu równań dla całego zadania polega na wywołaniu metody BuildSystemOfEquations dla wszystkich obiektów kolekcji elementów skończonych. Umożliwia to jednakowe traktowanie (w obrębie jednego zadania) elementów o od-
57 Time TimeStep FinishTime CurrentStep Solve TimeLoop SetInitialConditions SetBoundaryConditions SaveResult A b x Solver SystemOfEquations SystemOfEquationsSolver BoundaryConditions.. Data.. NodeValues 2.. Node Coordinates Index BoundaryCondition Nodes.. Nodes 2.. Nodes Elements.. Element BuildSystemOfEquations CentreOfGravity DetJ Solve s Rys. 2. Zawartość pakietu FEMCore Fig. 2. Contents of the FEMCore package miennej geometrii, różnych funkcjach aproksymujących oraz elementów o różnych własnościach materiałowych. Takie jednolite traktowanie elementów kolekcji wykorzystano również dla klasy BoundaryCondition, gdzie wprowadzanie warunków brzegowych odbywa się poprzez wywołanie takiej samej metody niezależnie od rodzaju warunku brzegowego. Kolejnym etapem analizy obiektowej jest wyspecjalizowanie klas polegające na ich uściśleniu dla rozwiązywanego problemu. 3. ANALIZA OBIEKTOWA MODELU POWSTAWANIA NAPRĘŻEŃ Aby rozwiązać zagadnienie powstawania naprężeń powstających podczas krzepnięcia odlewu należy uwzględnić pola temperatury rozważanego obszaru oraz kinetykę krzepnięcia. Informacje te otrzymywane są z rozwiązania zadania aplikacją modelującą krzepnięcie, powstałą z implementacji pakietu Solidification (rys. ) [3]. Szczegółowy model matematyczny modelowanego zjawiska został przedstawiony w pracy [4]. Z analizy sposobu wyznaczania naprężeń w krzepnącym odlewie wynika, że w nie znacznym stopniu różni się on od metody obliczania pola naprężenia ciał stałych. Naprężenia w odlewie, w zakresie termo-sprężysto-plastycznym, liczone są, gdy udział fazy stałej przekroczy pewną zadaną wartość (np. 08. ).
58 Time TimeStep FinishTime CurrentStep Solver Solve TimeLoop SetInitialConditions SetBoundaryConditions SaveResult StressSolver IsStressStatePlane Prepare SetBoundaryConditions FindBoundaryElements PreventOverlaping StrainsAndStresses StrainsInElement StressesInElement SolidificationStressSolver TemperatureField SolidPhaseField IsBoundarySolid ChekCastBoundariesState ConstrainInPartialBoundaries PreventOverlaping Rys. 3. Specjalizacje klasy Solver Fig. 3. Specialisation of the Solver class Podobieństwo wyznaczania naprężeń wykorzystano w analizie obiektowej wywodząc z klasy StressSolver klasę SolidificationStressSolver (rys. 3). W klasie tej znajdują się metody związane z analizą stanu zakrzepnięcia odlewu oraz nakładania się obszarów (odlewu i formy) na siebie. Jeżeli takie oddziaływanie zachodzi - to odpowiednie węzły na granicy obszarów są ze sobą wiązane, a proces obliczeniowy powtarzany. W rozważanym zagadnieniu wyprowadzono z klasy Element klasę StressElement (rys. 4) z metodą BuildSystemOfEquations tworzącą układ równań dla wyznaczenia przemieszczeń węzłów w jednym elemencie skończonym. Element Data BuildSystemOfEquations CentreOfGravity DetJ StressElement BuildSystemOfEquations Stress YoungModule PoissonCoeficient Alpha Rys. 4. Specjalizacja klasy Element Fig. 4. Specialisation of the Element class Rys. 5. Specjalizacja klasy Fig. 5. Specialisation of the class
59 Wyznaczenie przemieszczeń jest uzależnione od własności fizycznych materiału. Atrybut Data klasy jest kolekcją obiektów modelujących własności materiałowe, które mogą być opisane przez stałą wartość, funkcję lub być przedstawione w postaci tabelarycznej. W modelu matematycznym uwzględniono tylko podstawowe własności mające wpływ na zachowanie się materiału, dlatego też w klasie Stress kolekcja własności liczy trzy elementy do których dostęp następuje poprzez metody YoungModule, PoissonCoeficient oraz Alpha (rys. 5). BoundaryCondition NodeValues ContactBC AppliedForce Stuck IsNodePairStuck OverlappingOccured HandleOverlapping StickNodePair NofStuckNodes SickBoundaries AnStickAll IsInDirectionX IsInDirectionY ConstraintBC Direction BoundaryLoadBC Rys. 6. Klasy warunków brzegowych Fig. 6. Boundary conditions classes Z abstrakcyjnej klasy BoundaryCondition wyprowadzono klasy modelujące poszczególne warunki brzegowe (rys. 6). Oprócz klas modelujących podstawowe warunki brzegowe dla zadania naprężeniowego (utwierdzenie, obciążenie ciągłe, siła skupiona) uwzględniono oddziaływanie obszarów na siebie. Atrybutami klas potomnych są wielkości charakteryzujące poszczególne warunki brzegowe. We wszystkich klasach potomnych występuje jedna dziedziczona usługa odpowiedzialna za wprowadzenie warunków brzegowych do utworzonego układu równań. 4. UWAGI KOŃCOWE Stosowanie analizy obiektowej umożliwia makroskopowe spojrzenie na rozwiązywany problem i uchwycenie pewnych wspólnych cech stosowanych metod. Ponadto pozwala na rozbicie dziedziny problemu na mniejsze części, co na etapie implementacji gwarantuje szybszą lokalizację ewentualnych błędów, a także proste udoskonalanie modeli lub wprowadzanie nowych.
60 Zastosowanie metodyki obiektowej do metody elementów skończonych rozpoczęło się na początku lat dziewięćdziesiątych [7], a obecnie jest coraz częściej stosowana w tworzeniu oprogramowania do modelowania i symulacji komputerowych różnych zjawisk fizycznych. Bardzo silnym argumentem za stosowaniem metodologii obiektowej, w pracach nad systemami informatycznymi, jest fakt bardzo silnego wsparcia tej metodyki ze strony współczesnych języków programowania. Dzięki czemu zapis idei systemu, jako wynik analizy, w postaci diagramów obiektów, jest bezpośrednio przenoszony do kodu źródłowego aplikacji. LITERATURA [] Coad P., Yourdon E., Analiza obiektowa. Oficyna Wydawnicza Read Me, Warszawa 994. [2] Praca zbiorowa, UML Guide, http://www.rational.com/uml. [3] Sczygiol N., Szwarc G., Application of Object-Oriented Finite Element Programming for Castings Solidification Problems. Solidification of Metals and Alloys, 995,23,55-60. [4] Sczygiol N., Modelowanie numeryczne powstawania naprężeń w krzepnących odlewach. Solidification of Metals and Alloys (w druku). [5] Subieta K., http://www.ipipan.waw.pl/~subieta/oosemin/uml.pdf. [6] Taylor D.A., Technika obiektowa. Helion 994. [7] Zimmermann T., Dubois-Pelerin Y., Bomme P., Object-oriented finite element programming: I. Governing principles. Comp. Meth. App. Mech. Eng. 98(992),29-303. Praca wykonana została w ramach grantu nr 8 TF 06 2 finansowanego przez KBN w latach 997-999. OBJECT-ORIENTED ANALYSIS OF THE NUMERICAL MODELLING OF STRESS FORMATION IN SOLIDIFYING CASTINGS The present work concerns the object-oriented analysis of the numerical solidification model of casting. The stresses formation modelled by using the finite element method were considered. Decomposition of the considered problem into elementary components and their mutual relationships were presented.