OpenFOAM
Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de
versiunea revizuită la 15 martie 2022; verificările necesită
3 modificări .
OpenFOAM ( în engleză Open Source Field Operation And Manipulation CFD ToolBox ) este o platformă deschisă integrabilă pentru simularea numerică a problemelor din mecanica continuumului .
Caracteristici generale
OpenFOAM este un set de instrumente CFD distribuit gratuit pentru operațiuni cu câmpuri ( scalar , vector și tensor). Astăzi este una dintre aplicațiile complete și binecunoscute pentru calculul
FVM .
Codul OpenFOAM, dezvoltat inițial în Marea Britanie de OpenCFD, Limited , este în prezent întreținut și dezvoltat de The OpenFOAM Foundation, o organizație non-profit fondată de Henry Weller (creatorul codului sursă FOAM), Chris Greenshields și Cristel de Rouvray. Codul își ia numele și ideologia construcției de la predecesorul său FOAM (Field Operation And Manipulation). Inițial, programul a fost destinat calculelor de rezistență, dar, ca urmare a multor ani de dezvoltare academică și industrială, astăzi permite rezolvarea multor probleme diferite ale mecanicii continue (nu se limitează la aceasta), în special:
- calcule de rezistență;
- Hidrodinamica fluidelor vâscoase newtoniene și non-newtoniene în aproximații atât incompresibile, cât și compresibile, ținând cont de transferul de căldură convectiv și de acțiunea forțelor gravitaționale . Pentru a simula curgerile turbulente , este posibil să utilizați RANS - modele, LES- și DNS -metode. Este posibil să se rezolve probleme subsonice, transonice și supersonice;
- Probleme de conducere a căldurii într-un corp solid;
- Probleme cu mai multe faze , inclusiv cele cu o descriere a reacțiilor chimice ale componentelor curgerii;
- Sarcini legate de deformarea grilei de calcul;
- Sarcini conexe;
- Alte probleme, a căror formulare matematică necesită rezolvarea ecuațiilor diferențiale în derivate parțiale în condiții de geometrie complexă a mediului;
- Paralelizarea calculului pentru a rula pe sisteme multiprocesor (inclusiv pe cele cluster ).
Codul se bazează pe un set de biblioteci care oferă instrumente pentru rezolvarea sistemelor de ecuații cu diferențe parțiale atât în spațiu, cât și în timp. Limbajul de lucru al codului este OOP C++ . În ceea ce privește acest limbaj, majoritatea operatorilor matematici diferențiali și tensori din codul programului (înainte de traducerea într-un fișier executabil) a ecuațiilor pot fi prezentați într-o formă care poate fi citită de om, iar metoda de discretizare și soluție pentru fiecare operator poate fi aleasă de către utilizator în timpul procesului de calcul. Astfel, codul încapsulează și separă complet conceptele de grilă de calcul (metoda de discretizare), discretizarea ecuațiilor de bază și metodele de rezolvare a ecuațiilor algebrice. De exemplu, ecuația de conservare a impulsului pentru un fluid incompresibil newtonian fără acțiunea forțelor corpului:
poate fi reprezentat ca:
rezolva
(
fvm::ddt(rho, U)
+ fvm::div(rho, U, U)
- fvm::laplacian(mu, U)
==
-fvc::grad(p)
);
Împreună cu codul, este furnizat un set de programe „rezolvatoare”, în care sunt implementate diverse modele matematice de mecanică a continuului.
Programul poate rula sub Windows printr-o mașină virtuală ; există și implementări care nu folosesc suplimente suplimentare [2] .
Relația cu standardele
Pachetul OpenFOAM are multe utilitare care vă permit să convertiți formate terțe în format OpenFOAM (de exemplu, ANSYS, Fluent, Gambit, VTK etc.). Pentru a accesa utilitățile, trebuie să mergeți în folderul $FOAM_UTILITIES , acest lucru se poate face și cu comanda util[3] .
Ramuri
- blueCFD este o versiune încrucișată a OpenFOAM pentru a rula pe sistemele de operare Windows, un derivat al OpenFlow. Include instrumente și funcționalități suplimentare utilizate în OpenFOAM. Dezvoltarea este susținută de blueCAPE.
- FreeFOAM este o versiune independentă de sistemul de operare a OpenFOAM, care este portabilă și mai ușor de instalat. Proiectul se dezvoltă în paralel cu versiunile oficiale ale OpenCFD și nu are nicio funcționalitate suplimentară. Utilizează CMake pentru a construi. Din 2017, proiectul nu mai este susținut conform informațiilor de pe site-ul proiectului.
- OpenFlow este un cod sursă suplimentar pentru distribuția OpenFOAM compilată încrucișat care rulează pe sistemele de operare Windows. Componentele OpenFOAM din blueCFD sunt dezvoltate din codul sursă OpenFlow. Dezvoltarea este susținută de Symscape.
- OpenFOAM-extend este întreținut de Wikki Ltd. Această ramură include dezvoltări ale comunității, dintre care majoritatea pot fi instalate în versiunea oficială OpenFOAM cu modificări minime. Ramura este dezvoltată în paralel cu lansarea oficială a OpenFOAM, dar în versiunile recente, lansările ramurii extinse sunt în urmă cu unul până la doi ani.
Relația cu alte proiecte open source
- SALOME - pachet pentru lucrul cu geometrie și ochiuri
- ParaView - un pachet pentru vizualizarea rezultatelor și grilelor de calcul, furnizat implicit cu OpenFOAM
- FreeCAD este un sistem CAD parametric cu sursă deschisă , de uz general . Împreună cu extensia cfdOF , oferă capabilități de bază ale interfeței grafice - vă permite să pregătiți un model 3D, să desemnați limitele, intrările și ieșirile sale, să specificați parametrii de pornire și să începeți calculele.
Note
- ↑ OpenFOAM Versiunea 2206 . (nedefinit)
- ↑ OpenFOAM pentru MS Windows . Consultat la 9 aprilie 2016. Arhivat din original pe 13 februarie 2010. (nedefinit)
- ↑ Utilități standard . Preluat la 16 iulie 2011. Arhivat din original la 9 august 2011. (nedefinit)
Literatură
- Darwish, M.; Mangani, L.; Moukalled, F. Metoda volumului finit în dinamica fluidelor computaționale: o introducere avansată cu OpenFOAM® și Matlab®. - Ed. I .. - Springer , 2015. - T. 113. - xxiv + 791 p. - (Mecanica fluidelor și aplicațiile sale). - ISBN 978-3-319-16873-9 .
- Joey Bernard. La CFD sau nu la CFD? . Linux Journal (19 septembrie 2011). Consultat la 13 noiembrie 2016. Arhivat din original pe 14 noiembrie 2016. (nedefinit)
Link -uri