PrePoMax 1.4.0 wprowadza analizy dynamiczne

PrePoMax 1.4.0 wprowadza analizy dynamiczne

09/08/2023
|

PrePoMax został po raz pierwszy przedstawiony na tym portalu w artykule PrePoMax. Najlepszy darmowy program do analiz MES? [O programie + TEST]. Kolejna publikacja na jego temat, zatytułowana PrePoMax – kluczowe zmiany i nowe funkcjonalności w darmowym programie do analiz MES opisywała takie istotne nowości jak przejście na status open-source, powstanie dokumentacji, forum dyskusyjnego i kanału YouTube z filmikami instruktażowymi oraz rozszerzenie zakresu wspieranych analiz o zagadnienia termiczne, termomechaniczne i dwuwymiarowe. Od czasu opublikowania tamtego artykułu minął ponad rok, a nowa wersja programu, udostępniona jako stabilna na przełomie lipca i sierpnia 2023 r., również przynosi ważne zmiany.

Analizy dynamiczne w PrePoMax

Do tej pory, PrePoMax wspierał tylko jeden typ symulacji dynamicznych zaimplementowanych w wykorzystywanym przez niego otwartoźródłowym solverze CalculiX – analizy drgań własnych. Jest to zdecydowanie najczęściej spotykany rodzaj symulacji z zakresu dynamiki. Pozwala nie tylko wyznaczyć częstości i postaci drgań własnych, a więc uniknąć zjawiska rezonansu w przewidywanym zakresie częstotliwości obciążeń w czasie pracy konstrukcji, ale też m.in. sprawdzić warunki brzegowe i połączenia w modelach numerycznych złożeń przeznaczonych do analiz statycznych, w których niedozwolone są tzw. ruchy sztywne. Innym powszechnym zastosowaniem analiz drgań własnych jest przeprowadzanie symulacji dynamicznych korzystających z superpozycji modalnej, a więc wymagających wyznaczenia postaci drgań własnych.

Wersja 1.4.0 wprowadziła wsparcie dla prawie wszystkich pozostałych analiz dynamicznych dostępnych w solverze CalculiX (z wyjątkiem rzadko stosowanej procedury complex frequency, służącej wyznaczaniu częstości i postaci drgań własnych z uwzględnieniem sił Coriolisa w dynamice wirników). Oznacza to, że dostępne są dwa typy symulacji należące do liniowej dynamiki, korzystające z superpozycji modalnej oraz dwa typy symulacji należące do nieliniowej dynamiki, korzystające z bezpośredniego całkowania równań ruchu. Te pierwsze dwie procedury, zakładające brak nieliniowości (takich jak plastyczność, nieliniowość geometryczna czy kontakt), ale pozwalające uwzględnić obciążenia wstępne z poprzedzających je kroków statycznych nieliniowych to:

  • steady state dynamics – analizy drgań ustalonych, zakładające obciążenie harmoniczne (opcjonalnie nieharmoniczne, ale periodyczne) i dające odpowiedź w dziedzinie częstotliwości,
  • modal dynamics – analizy pozwalające uwzględnić zmienność obciążenia w czasie i dające odpowiedź w dziedzinie czasu.

Pozostałe dwie procedury, umożliwiające uwzględnianie nieliniowości, to:

  • dynamic implicit – analizy wykorzystujące niejawne całkowanie równań ruchu po czasie,
  • dynamic explicit – analizy wykorzystujące jawne całkowanie równań ruchu po czasie.

Dynamika liniowa

Obie przedstawione wyżej procedury z grupy liniowej dynamiki korzystają z metody superpozycji modalnej, a więc wymagają zdefiniowania poprzedzającego je kroku obliczeniowego typu frequency (drgania własne) z włączonym parametrem Storage.

Analizy drgań ustalonych (steady state dynamics) to tzw. frequency sweep – sprawdzenie odpowiedzi konstrukcji na obciążenie harmoniczne (o sinusoidalnej zmienności w czasie) dla wybranego zakresu częstotliwości. Wymuszenie może mieć postać siły (z opcjonalnym przesunięciem w fazie) lub zadanego ruchu. Ta druga forma obciążenia powinna być realizowana przy pomocy warunku brzegowego typu base motion (ruch podłoża o zadanej amplitudzie przemieszczenia bądź przyspieszenia). Nie jest on jeszcze zaimplementowany w programie PrePoMax, ale można go łatwo dodać korzystając z wbudowanego edytora słów kluczowych. Wymagana składnia jest opisana w dokumentacji na stronie CalculiX’a. Możliwe jest również uwzględnienie tłumienia definiowanego na jeden z następujących sposobów – jako bezwymiarowy współczynnik tłumienia (stały bądź różny dla poszczególnych zakresów postaci drgań) lub jako współczynniki tłumienia Rayleigha. Oprócz zakresu częstotliwości, definiuje się ile częstotliwości z tego zakresu ma być sprawdzonych i z jakim rozkładem (parametr Bias=1 oznacza równomierny rozkład). Ze względu na specyfikę tych analiz, wprowadzone zostały nowe opcje prezentacji wyników. Możliwe jest przełączanie między mapami konturowymi wielkości rzeczywistych, urojonych, amplitudy, kąta fazowego, wartości dla wybranego kąta oraz wartości maksymalnej/minimalnej lub kąta, dla którego ona występuje. Dodano również możliwość tworzenia animacji harmonicznych i generowania krzywych dla odpowiedzi harmonicznej z map konturowych.

Analizy modalne czasowe (modal dynamics) polegają na sprawdzeniu odpowiedzi konstrukcji w dziedzinie czasu na zmienne w czasie (np. impulsowe) obciążenie. Jeśli włączony jest parametr Steady state to symulacja trwa aż do osiągnięcia stanu ustalonego (który jest obiektem rozważań w analizie typu steady state dynamics) ze zdefiniowaną przez użytkownika dokładnością. W innym wypadku należy podać czas analizy. Zmienność obciążenia definiuje się przy pomocy amplitud tabelarycznych, dostępnych już od wcześniejszych wersji programu. Również w tych analizach możliwe jest uwzględnienie tłumienia definiowanego na podane wcześniej sposoby.

PrePoMax 1.4.0 2

Dynamika nieliniowa

Poza opisanymi wyżej procedurami dynamiki liniowej, korzystającymi z metody superpozycji modalnej w celu skrócenia czasu obliczeń za cenę braku nieliniowości, dostępne są również wspomniane wcześniej procedury dynamiki nieliniowej – znacznie bardziej „kosztowne” obliczeniowo, ale dające większe możliwości w kwestii badania odpowiedzi dynamicznej w dziedzinie czasu. Można je więc w dużym uproszczeniu uznać za nieliniowe wersje procedury modal dynamics.

Analizy dynamiczne z niejawnym całkowaniem równań ruchu (dynamic implicit) korzystają z podejścia stosowanego również w statyce, co wiąże się z analogicznymi ograniczeniami. Wymagane są iteracje i mogą występować problemy ze zbieżnością (często spowodowane działaniem kontaktu), ale metoda jest bezwarunkowo stabilna a przyrosty czasowe mogą być dowolnie duże (ograniczone jedynie zbieżnością analizy w danej chwili). Metoda ta nadaje się głównie do symulacji dynamicznych stosunkowo wolnych zjawisk, bez bardzo silnych, nieciągłych nieliniowości. Aktywuje się ją wybierając Implicit/Implicit jako Solution procedure w kroku Dynamic. Nazwa tej opcji jest podwójna, ponieważ druga część dotyczy obliczeń płynów, które obecnie nie są wspierane w programie PrePoMax, ale umożliwia je solver CalculiX. Istotny jest parametr Alpha, który określa ilość tłumienia numerycznego poprawiającego zbieżność. Wartość maksymalna to -0.333. Możliwe jest również zdefiniowanie tłumienia Rayleigha.

Analizy dynamiczne z jawnym całkowaniem równań ruchu (dynamic explicit) korzystają z odmiennego podejścia, które charakteryzuje się brakiem iteracji i problemów ze zbieżnością, ale też warunkową stabilnością, narzucającą istotne ograniczenie na wielkość przyrostów czasowych. W przypadku tych analiz występuje tzw. stabilny przyrost czasowy, który nie może zostać przekroczony. Zmniejsza go m.in. zagęszczanie siatki i redukcja gęstości materiału. Metoda ta jest stosowana przede wszystkim do symulacji szybkich zjawisk dynamicznych, takich jak uderzenia czy upadki, ale też wolnych procesów o bardzo silnych nieliniowościach, z którymi nie radzi sobie procedura implicit. W tym drugim przypadku mówi się o quasi-statyce. Aby przyspieszyć obliczenia quasi-statyczne (które przez ograniczenie stabilnego przyrostu trwają długo dla analiz wolnych procesów), skraca się czas w jakim zachodzi symulowany proces lub stosuje tzw. skalowanie masy, które sztucznie zwiększa gęstość, a co za tym idzie powiększa stabilny przyrost czasowy. Aby skorzystać z tej drugiej opcji należy podać żądany przyrost jako minimum time increment w ustawieniach kroku. Jeśli stabilny przyrost będzie od niego mniejszy to solver aktywuje skalowanie masy. Stosując te podejścia trzeba jednak uważnie sprawdzać wyniki, a w szczególności sprawdzić stosunek energii kinetycznej do wewnętrznej w modelu (zmienne te można dodać jako history output). Energia kinetyczna nie powinna być większa niż kilka procent (ok. 1-5%) energii wewnętrznej aby rozwiązanie można było uznać za quasi-statyczne. W innym wypadku dominujące stają się siły bezwładności i pojawia się niepożądana odpowiedź dynamiczna.

Procedurę dynamic explicit aktywuje się ustawiając Explicit/Explicit jako Solution procedure w kroku Dynamic. Dla niej również dostępne jest tłumienie Rayleigha. Ze względu na duże liczby przyrostów czasowych w tego typu symulacjach, co z kolei wynika z omówionej wyżej kwestii warunkowej stabilności, zwykle konieczne jest zmniejszenie częstotliwości zapisu wyników (domyślnie są one zapisywane dla każdego przyrostu). Służy do tego parametr Output frequency w ustawieniach kroku analizy. Warto dodać, że kolejna wersja solvera CalculiX 2.21 (opublikowana 01.08.2023 r.) dołączona do aktualnej paczki z PrePoMax 1.4.0, wprowadziła m.in. nowy model materiałowy – model plastyczności Johnsona-Cooka przeznaczony do analiz dynamicznych, zwłaszcza typu explicit. Na razie nie jest on jednak dostępny bezpośrednio w PrePoMax i wymaga użycia edytora słów kluczowych.

Chcąc zasymulować uderzenia/upadki, najlepiej umieścić obiekt tuż nad celem i skorzystać z nowego typu warunku początkowego – prędkości początkowej.

PrePoMax 1.4.0 3

Inne nowości w PrePoMax

Wersja 1.4.0 programu PrePoMax wprowadziła też różne mniejsze nowości. Zmianie uległ sposób definiowania parametrów siatki – obecnie należy dodać Meshing Parameters na podobnej zasadzie jak dostępne od dawna Mesh Refinements (definicje lokalnego zagęszczenia siatki). Dostępny jest tryb podstawowy i zaawansowany. W ramach tego drugiego można definiować rozmiar elementów jako bezwzględny lub względny (przy pomocy bezwymiarowych współczynników). Wprowadzona została też możliwość tworzenia map konturowych typu Limit (rozkłady współczynnika bezpieczeństwa i jego odwrotności) oraz Envelope (rozkłady wartości maksymalnych, minimalnych i średnich spośród wszystkich klatek analizy).

Wcześniejsze wersje, które zostały wydane od czasu poprzedniego artykułu o programie PrePoMax również wprowadziły kilka istotnych nowości. Należy do nich chociażby dodanie obciążenia w postaci ciśnienia hydrostatycznego, które nie jest bezpośrednio wspierane przez solver CalculiX, więc wymaga wewnętrznego przekształcenia na siły węzłowe. Funkcjonalność ta jest kluczowa m.in. w analizach zbiorników. Zaimplementowane zostało również obciążenie typu imported pressure, które wykorzystuje wartości ciśnienia z analiz CFD przeprowadzonych w środowisku OpenFOAM (opisanym w artykule Symulacje CFD w darmowym oprogramowaniu OpenFOAM) jako obciążenia w analizie wytrzymałościowej. Pozwala to np. analizować konstrukcje obciążone wiatrem lub statki powietrzne.

Podsumowanie

Możliwości programu PrePoMax stale się zwiększają, wspieranych jest coraz więcej funkcjonalności solvera CalculiX a narzędzi ułatwiających pre- i postprocessing również przybywa. Wersja 1.4.0 stanowi istotny etap w rozwoju programu dzięki wprowadzeniu wsparcia dla szerokiego zakresu analiz dynamicznych. Warto przy tym dodać, że wciąż naprawiane są pojedyncze błędy wykryte przez użytkowników i zgłoszone na forum programu w dziale Bug Reports. Najlepiej obserwować dział News oraz zakładkę Downloads na stronie programu, gdzie dosyć często pojawiają się paczki z nowymi wersjami, a czasami także zaktualizowane pliki aktualnej wersji jeśli wprowadzono niewielkie zmiany (np. podmiana pliku solvera na nowszą wersję). Notki przy plikach wskazują, z których wersji najlepiej korzystać i ew. kiedy wprowadzono zmiany.

Na koniec warto dodać, że głównym celem na dalszy rozwój programu jest zaimplementowanie podstawowych funkcji programu Gmsh pozwalających na tworzenie siatek z elementami typu hex. Jest to obecnie najbardziej oczekiwana funkcjonalność, chociaż możliwe jest tworzenie takich siatek bezpośrednio w Gmsh i ich import do PrePoMax. Interfejsowi Gmsh daleko jednak do wygody pracy w PrePoMax.


BEZPATNY-NEWSLETTER (3)