Sari la conținut

Analiză statică a unui model de matriță la scară mare

Acesta este un studiu de caz de analiză statică liniară în care se aplică o presiune distribuită uniform unui ansamblu de matriță. Sunt disponibile patru plase cu elemente tetraedrice de ordinul al doilea, de la aproximativ 1 milion de noduri până la aproximativ 210 milioane de noduri.

Modelul de cea mai mare dimensiune, Mold_200mil, a fost rulat pe 13 noduri de calcul cu 208 procese și poate fi folosit ca exemplu pentru scara până la care pot fi tratate modele cu geometrii utilizate în practică. Cele patru modele au în comun geometria, materialul și condițiile la limită și diferă numai prin gradul de rafinare a plasei, astfel încât se poate compara și influența dimensiunii modelului asupra preciziei și resurselor de calcul.

Geometria de ansamblu, geometria părții inferioare și secțiunea modelului de matriță

Figura 1. Ansamblul matriței: toate componentele, componentele inferioare și secțiunea.

Model de analiză

Cele patru modele au în comun geometria, materialul și condițiile la limită și diferă prin gradul de rafinare a plasei.

Element Conținut
Geometrie și conexiuni Ansamblu de matriță. Componentele sunt conectate prin noduri comune.
Elemente Elemente tetraedrice de ordinul al doilea
Material Oțel structural, material elastic liniar. Modulul lui Young 200 GPa, coeficientul lui Poisson 0.3
Sarcină Presiune distribuită uniform de 1 MPa pe suprafața superioară (grupul de suprafețe PRESSURE1)
Constrângeri Cele trei componente de translație sunt fixate pe suprafața inferioară (grupul de noduri CONSTRAINT1)

Pozițiile sarcinii și constrângerilor pe matriță și grupurile de fețe ale elementelor de pe suprafața produsului

Figura 2. Sarcina de presiune, constrângerile de deplasare și grupurile de suprafețe ale produsului.

Rezultatele analizei

Deplasare și tensiune în funcție de dimensiunea plasei

Numele modelului Valoarea minimă a deplasării Z (mm) Tensiunea Mises maximă, valoare nodală (MPa) Tensiunea Mises maximă, valoare de element (MPa)
Mold_001mil -0.2527 118.2 75.9
Mold_011mil -0.2638 130.7 101.3
Mold_055mil -0.2659 189.9 156.5
Mold_200mil -0.2666 250.4 213.1

Pe măsură ce plasa este rafinată, variația valorii minime a deplasării Z devine mai mică, iar diferența dintre ultimele două dimensiuni este de 0.0007 mm la precizia valorilor afișate în tabel. În schimb, tensiunea Mises maximă continuă să crească atât pentru valorile nodale, cât și pentru valorile de element. Pentru a determina dacă tensiunea converge sau dacă există un punct singular, trebuie examinate poziția valorii maxime, geometria din jur și condițiile la limită.

Mold_001mil Mold_011mil
Detaliu al tensiunii Mises: Mold_001mil Detaliu al tensiunii Mises: Mold_011mil
Mold_055mil Mold_200mil
Detaliu al tensiunii Mises: Mold_055mil Detaliu al tensiunii Mises: Mold_200mil
Figura 3. Plasa și tensiunea von Mises nodală pentru cele patru dimensiuni ale modelului (MPa).

Figura 3 prezintă valorile extrapolate la noduri (NodalMISES), iar legenda este fixată la 0–50 MPa în toate imaginile. Diferențele dintre plase pot fi comparate după muchiile elementelor.

Înregistrarea execuției la scară mare

Calculele au fost efectuate în iulie 2020 utilizând FrontISTR 5.1.0, cu metoda CG, pragul de convergență 1.0E-06 și un număr maxim de 100,000 de iterații. Mediul de execuție a fost un cluster de PC-uri; fiecare nod de calcul era echipat cu două procesoare Xeon E5-2670 (2.6 GHz, 8 nuclee), 128 GB de memorie și conexiuni InfiniBand FDR. Modul de paralelizare a fost Flat MPI (1 proces, 1 fir de execuție).

Numele modelului Procese MPI (noduri) Precondiționare Număr de iterații Timpul solverului (s)
Mold_001mil 32 (2) AMG (ML) 611 80.16
Mold_011mil 64 (4) AMG (ML) 854 782.65
Mold_055mil 128 (8) AMG (ML) 778 2,015.05
Mold_200mil 208 (13) Scalare diagonală 92,626 96,969.34

Timpii sunt valorile solve din jurnalele de execuție. Când s-a utilizat AMG pentru Mold_200mil, memoria a fost insuficientă chiar și pe 13 noduri, astfel că precondiționarea a fost schimbată la scalare diagonală; numărul de iterații a fost 92,626, iar timpul de calcul a fost de aproximativ 27 de ore.

Date de analiză

Numele modelului Număr de noduri Număr de elemente Dimensiune comprimată Descărcare
Mold_001mil 1,015,778 638,041 35.6 MB Mold_001mil.tar.gz
Mold_011mil 11,036,922 7,617,345 461 MB Mold_011mil.tar.gz
Mold_055mil 55,508,692 39,271,921 2.41 GB Mold_055mil.tar.gz
Mold_200mil 209,893,102 151,044,460 9.58 GB 5 părți (mai jos)

Versiunea datelor este 1.0.0.

Obținerea Mold_200mil

Mold_200mil depășește limita pentru un singur fișier (5 GB), de aceea este înregistrat în 5 părți de câte 2 GiB. Descărcați toate fișierele în același director, apoi concatenați-le.

for i in 00 01 02 03 04; do
  curl -fLO "https://gitlab.com/api/v4/projects/21515176/packages/generic/Mold_200mil/1.0.0/Mold_200mil.tar.gz.part$i"
done
cat Mold_200mil.tar.gz.part?? > Mold_200mil.tar.gz

Valoarea SHA-256 a fișierului rezultat după concatenare este c67d5b8990302c84103de7e8a2848449f0035f7813cd122fb443e206f38b8606.

Referințe

Contribuții

  • Crearea modelului CAD și a datelor de intrare: TechnoStar
  • Conversie pentru FrontISTR și analiză paralelă: Yamaguchi și Inagaki