Więzy tie w Abaqus – jak z nich poprawnie korzystać? 

Czym są więzy tie? 

Niewątpliwie najczęściej stosowanym typem więzów w oprogramowaniu Abaqus są więzy tie. Wynika to z ich wszechstronności i łatwości użycia, choć poprawne korzystanie z nich i unikanie poważnych błędów z nimi związanych wymaga zrozumienia ich sposobu działania i możliwości. 

W skrócie więzy tie można opisać jako trwale łączące dwie powierzchnie. Są więc łatwą w użyciu i szybką alternatywą dla modelowania kontaktu. Mogą symulować trwałe sklejenie/zespawanie komponentów lub zapewniać ciągłość siatek w obrębie pojedynczych części - są nawet generowane automatycznie dla części z niekompatybilnymi siatkami (np. elementy tetra i hexa) w sąsiadujących obszarach. Nie należy ich jednak nadużywać lub stosować bez przemyślenia. Wyniki analiz mechanicznych są zwykle szczególnie istotne w obszarach koncentracji naprężeń w miejscach połączeń, więc poprawny sposób ich modelowania ma duże znaczenie. 

Uniwersalność więzów tie wynika przede wszystkim z możliwości łączenia różnych typów elementów (np. bryłowych, powłokowych i belkowych w wielu kombinacjach) i różnych rodzajów stopni swobody, w tym termicznych, elektrycznych czy akustycznych. Nie zawsze są one jednak najlepszym rozwiązaniem, np. do łączenia krawędzi powłok z powierzchniami brył zaleca się korzystanie z więzu shell-to-solid coupling. 

Jak działają więzy tie i jak są definiowane? 

Więzy tie pozwalają zrównać ze sobą translacyjne i rotacyjne oraz inne (niekoniecznie mechaniczne) stopnie swobody dla dwóch powierzchni, domyślnie znajdujących się blisko siebie. Podobnie jak w przypadku kontaktu, jedna powierzchnia jest nadrzędna (master/main) a druga drugorzędna (slave/secondary). Dostępne są dwa sformułowania - surface-to-surface (powierzchnia do powierzchni) domyślne w Abaqus/Standard i node-to-surface (węzeł do powierzchni) domyślne w Abaqus/Explicit. To pierwsze automatycznie zamienia się w drugie jeśli któraś z powierzchni jest typu node-based, rzut wzdłuż kierunku normalnego powierzchni secondary nie przecina powierzchni main lub jednostronne powierzchnie secondary i main mają w przybliżeniu zbieżne kierunki normalne. Zarówno powierzchnia main, jak i secondary może być typu element-based (oparta o ścianki lub krawędzie elementów) bądź node-based (oparta o węzły). Powierzchnia main może też być typu analytical rigid. Sformułowanie surface-to-surface minimalizuje szum numeryczny w naprężeniach dla niekompatybilnych siatek. Wymusza ono więzy w sposób uśredniony na pewnym obszarze zamiast w dyskretnych punktach, jak to ma miejsce w przypadku tradycyjnego podejścia node-to-surface. Jest to zbliżone do sformułowania surface-to-surface kontaktu, ale w skład każdego więzu wchodzi tylko jeden węzeł secondary (i wiele węzłów main). Z kolei sformułowanie node-to-surface ustawia współczynniki używane do interpolacji wielkości z węzłów main w punktach, w których węzły secondary są rzutowane na powierzchnię main. W przypadku powierzchni main opartej o elementy, wyznaczany jest punkt na powierzchni main najbliższy danemu węzłowi secondary aby określić węzły main wchodzące w skład więzu. 

Dobór powierzchni main i secondary jest istotny dla poprawności rozwiązania, szczególnie dla sformułowania node-to-surface. Jeśli obie powierzchnie są deformowalne, powierzchnia main powinna być tą o rzadszej siatce. W Abaqus/Standard sztywna powierzchnia nie może być drugorzędna. 

Co ciekawe, obie powierzchnie mogą być nieciągłe niezależnie od sformułowania więzu tie. Ułatwia to definiowanie więzów dla wielu części. 

Podstawowa definicja więzów tie z użyciem słów kluczowych ma postać: 

*TIE, NAME=nazwa 

nazwa_powierzchni_secondary, nazwa_powierzchni_main 

Domyślnie wiązane są również rotacyjne stopnie swobody jeśli obie powierzchnie je mają. Można to zmienić przy pomocy: 

*TIE, NO ROTATION 

W takim wypadku i z separacją między powierzchniami, możliwe jest również użycie parametru CONSTRAINT RATIO określającego położenie między powierzchnią main a węzłem secondary, w którym powinien działać więz translacyjny. Ma to wpływ na rozkład momentu na powierzchnie. Zwykle jest to punkt, w którym spotykają się faktyczne powierzchnie dolne/góre łączonych powłok z offsetem. 

Które węzły biorą udział w więzach tie? 

Jednym z najważniejszych parametrów więzów tie jest tolerancja położenia: 

*TIE, POSITION TOLERANCE=odległość 

Określa ona, które węzły secondary mają być związane. Domyślna wartość tej tolerancji zapewnia wiązanie tylko węzłów w niewielkiej odległości od powierzchni main na początku analizy. Domyślnie bierze ona pod uwagę grubość powłok i ich odsunięcie dla powierzchni element-based, ale można z tego zrezygnować: 

*TIE, NO THICKNESS 

Wartość tolerancji jest określana w węźle secondary: 

Dla powierzchni main typu element-based domyślna wartość tolerancji to 5% (sformułowanie node-to-surface) lub 10% (surface-to-surface) typowej długości przekątnej ścianki elementu powierzchni main. Odległość dla danego punktu na powierzchni secondary jest oparta o najbliższy punkt na powierzchni main. 

Dla powierzchni main typu node-based domyślna wartość tolerancji wynika ze średniej odległości między węzłami powierzchni main. Dla danego węzła secondary odległość między powierzchniami jest oparta o najbliższy węzeł main. Jeśli jest mniejsza niż tolerancja, utworzony zostanie więz między węzłem secondary, najbliższym węzłem main i innymi węzłami main w zbliżonej odległości od węzła secondary. 

Dla powierzchni main typu analytical rigid domyślna tolerancja to 5% (node-to-surface) lub 10% (surface-to-surface) typowej długości przekątnej ścianki elementu powierzchni secondary typu element-based. Dla powierzchni secondary typu node-based jest to 5% typowej odległości między węzłami secondary. Odległość między powierzchniami w danym punkcie na powierzchni secondary jest dla powierzchni main typu analytical rigid oparta o najbliższy punkt na powierzchni main. 

Oczywiście tolerancję można dowolnie zwiększyć aby związać węzły powierzchni leżących nawet daleko od siebie. Alternatywnym dla parametru tolerancji sposobem określenia węzłów secondary, które mają być związane jest wskazanie setu je zawierającego: 

*TIE, TIED NSET=nazwa_setu 

Daje to bezpośrednią kontrolę nad tym, które węzły zostaną związane i bywa bardzo przydatne w wielu przypadkach. 

Węzły secondary nie spełniające kryterium tolerancji odległości lub nie wskazane w TIED NSET nie biorą udziału w działaniu więzu tie i mogą przenikać powierzchnię main jeśli nie ma dla nich zdefiniowanego kontaktu. Informację o tym, które węzły zostały związane a które nie można znaleźć w pliku .dat. 

Na czym polega dociąganie węzłów w więzach tie? 

Domyślnie Abaqus automatycznie przemieszcza węzły secondary biorące udział w działaniu więzu tie (spełniające jedno z kryteriów powyżej), tak aby stykały się z powierzchnią main. To dociąganie odbywa się bez generowania odkształceń i ma na celu zamknięcie przerw między powierzchniami. Bierze pod uwagę grubości powłok (chyba że jest to wyłączone, jak opisano wyżej), ale nie grubości belek i membran. Zatem przerwa między powierzchniami referencyjnymi powłok może występować nawet po dociąganiu, ze względu na uwzględnianie grubości powłok. Dociąganie nie jest przeprowadzane jeśli wiązane powierzchnie są w odległości od siebie mniejszej niż połączone połowy grubości powłok. Powierzchnie nigdy nie są odpychane od siebie, mogą się tylko przybliżyć na skutek dociągania. Węzeł secondary jest przesuwany do najbliższego punktu (dla powierzchni main typu element-based) lub węzła (dla powierzchni main typu node-based) na powierzchni main. Korzystanie z tego dociągania jest zalecane, szczególnie jeśli obie powierzchnie nie mają obrotowych stopni swobody (wtedy ich separacja może prowadzić do nieprawidłowego zachowania przy sztywnych obrotach). Jednak w niektórych przypadkach dociąganie może prowadzić do nadmiernego zniekształcenia elementów i nawet błędów o ujemnej objętości (na skutek odwrócenia elementów na drugą stronę). 

Definicja dociągania: 

*TIE, ADJUST=YES/NO 

Jak zapobiegać błędom overconstraint dla więzów tie? 

Zdecydowanie najczęstsze błędy związane z więzami tie to overconstraints (nadmierne związanie). Jeśli dwie definicje więzów tie mają częściowo lub całkowicie wspólne powierzchnie main lub powierzchnia main w jednej definicji jest powierzchnią secondary w kolejnej, Abaqus próbuje je połączyć. Jednak jeśli dwie definicje więzów tie mają wspólne węzły powierzchni secondary z aktywnymi więzami tie, w modelu występuje overconstraint. Zaleca się stosowanie odpowiedniej kolejności definicji więzów tie (są one przetwarzane według kolejności występowania w pliku .inp lub alfabetycznie w Abaqus/CAE). Z kolei w przypadku gdy węzły secondary więzu tie biorą udział w więzach innego typu, Abaqus zamienia te węzły w innych więzach na odpowiadające im węzły main z więzu tie. 

Występowanie overconstraint (wspólne powierzchnie secondary dwóch definicji więzów tie) może mieć różny efekt: 

Poniższy przykład ilustruje różne konfiguracje prowadzące lub nie do overconstraint dla 2 definicji więzów tie jednocześnie: 

 

 W praktyce łatwiej o wystąpienie overconstraint, szczególnie na krawędziach brył i w przypadku powłok. 

Jak sprawdzać poprawność działania więzów tie? 

Bardzo istotne jest sprawdzanie poprawności działania więzów tie w modelu. Należy zwracać uwagę na wszelkie ostrzeżenia (warningi) w pliku .dat z nimi związane. Zwykle jest ich najwięcej właśnie dla tych więzów. Tworzone są również node sety wskazujące węzły, które zostały dociągnięte (WarnNodeAdjust) i dla których więzy nie zostały utworzone (WarnNodeMissMainIntersect) bądź wystąpiły overconstraints (WarnNodeOverconTieSecondary). Odpowiednie sety wskazują też lokalizacje błędów związanych z overconstraints (ErrNodeOverconTieSecondary). W Abaqus/Viewer można łatwo sprawdzić zawartość tych setów. 

Bardzo przydatna jest również wizualizacja więzów tie przy pomocy Display Groups. 

Ponadto, w Abaqus/Explicit dostępne są zmienne TIEDSTATUS i TIEADJUST pozwalające odpowiednio sprawdzić które węzły zostały związane a które nie i zwizualizować dociągnięcia. 

Poprawność zdefiniowania połączeń (i to, czy jakieś powierzchnie nie zostały pominięte przy tworzeniu więzów tie) można również zweryfikować przy pomocy analiz drgań własnych (*FREQUENCY). 

Więzy tie można tworzyć automatycznie przy pomocy narzędzia Find Contact Pairs, ale dla większych modeli często skutkuje to błędami overconstraints i koniecznością ręcznego poprawiania więzów. Pewnym ułatwieniem może być automatyczne generowanie więzów dla kolejnych segmentów modelu osobno zamiast wskazywania całego modelu jako obszaru poszukiwań. Często jednak łatwiej po prostu zdefiniować więzy tie ręcznie. Stosowanie odpowiednich nazw (wskazujących np. łączone komponenty i ich kolejność w definicji) ułatwia dalszą pracę. 

Jakie są różnice między więzami tie a kontaktem typu tied? 

Choć koncepcja i efekty ich działania są podobne, więzy tie są typu eliminacyjnego, nie korzystają z algorytmów stosowanych dla kontaktu i dzięki temu są znacznie bardziej wydajne obliczeniowo niż tied contact. Więzy tie działają też na rotacyjnych stopniach swobody. Zalecane jest więc korzystanie z więzów tie zamiast kontaktu typu tied w większości przypadków.