FEATool

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
FEATool Multiphysics
FEATool Multiphysics Toolbox with MATLAB GUI
ТипComputer-aided engineering (CAE), мультифізика, finite element analysis (FEA), simulation software
РозробникиPrecise Simulation
Стабільний випуск1.14 (19 квітня 2021)
Операційна системаUnix/Linux/Windows/Mac
Мова програмуванняMATLAB
Вебсайтwww.featool.com[1]

FEATool Multiphysics (Finite Element Analysis Toolbox for Multiphysics)  - це простий у використанні інструментарій моделювання фізики за допомогою методу скінченних елементів[2]в рівняннях часткових похідних для MATLAB[3]. FEATool Multiphysics надає можливість повністю моделювати задачі теплобміну, динаміки рідини, хімічних реакцій, структурної механіки та електромагнетизму в 1D, 2D (осесимметрія) або 3D, все це в зручному графічному інтерфейсі користувача(GUI)[4]. FEATool був спеціально розробленим для того, щоб використовуватись без необхідності консультаційної документації, тому знайшов використання в академічних дослідженнях, навчанні та моделювання промислової інженерії[5][6].

Особливості

[ред. | ред. код]

Повністю скриптовий інтерфейс

[ред. | ред. код]

FEATool Multiphysics - це повністю інтегроване середовище моделювання фізики та РЧП, включаючи попередню обробку, моделей CAD та геометрії, автоматичне створення сітки, знаходження розв'язку  та обробка результатів[7]. Операції з графічним інтерфейсом також записуються як еквівалентні функції MATLAB, тому, крім бінарних форматів, моделі також можуть бути збережені та експортовані як  скриптові файли m-script, сумісні з MATLAB та Octave[8]. Короткий сценарій MATLAB нижче демонструє, як можна обчислити повний потік навколо циліндра для задачі динаміки обчислювальної рідини(CFD) за допомогою функцій m-script FEATool[9][10][11]. Зокрема, звичайні рівняння з частинними похідними(РЧП) чи математичні вирази можна просто ввести і працювати з ними як із символьними виразами, без необхідності додаткової компіляції чи написання власних функцій[12].

% Генерація сітки та геометрії.
fea.sdim = { 'x' 'y' };
fea.geom.objects = { gobj_rectangle( 0, 2.2, 0, 0.41, 'R1' ), ...
                     gobj_circle( [0.2 0.2], 0.05, 'C1' ) };
fea = geom_apply_formula( fea, 'R1-C1' );
fea.grid = gridgen( fea, 'hmax', 0.02 );


% Постановка задачі
% (Нестиснуте рівняння Нав'є Стокса в режимі мультифізики).
fea = addphys( fea, @navierstokes );

% Вказуємо в'язкість рідини (Густина має значення за замовчуванням 1).
fea.phys.ns.eqn.coef{2,end} = { 0.001 };

% Граничні умови
% (не вказані межі за замовчуванням встановлюються як нековзкі стіни і нульовою швидкістю).

% Притік (гранична умова 2 типу) на границі 4.
fea.phys.ns.bdr.sel(4) = 2;

% Відтік (гранична умова 3 типу, нульовий тиск) на границі 2.
fea.phys.ns.bdr.sel(2) = 3;

% Параболічний притік вираз для швидкісті по x.
fea.phys.ns.bdr.coef{2,end}{1,4} = '4*0.3*y*(0.41-y)/0.41^2';


% Перевірити,зчитати, розв'язати
fea = parsephys( fea );
fea = parseprob( fea );
fea.sol.u = solvestat( fea );

% Альтернативний розв'язок за допомгою  OpenFOAM
% fea.sol.u = openfoam( fea );


% Обробка результатів та візуалізація.
postplot( fea, 'surfexpr', 'sqrt(u^2+v^2)', ...
               'arrowexpr', {'u' 'v'} )

p_cyl_front = evalexpr( 'p', [0.15; 0.2], fea );
p_cyl_back  = evalexpr( 'p', [0.25; 0.2], fea );
delta_p_computed  = p_cyl_front - p_cyl_back
delta_p_reference = 0.117520

Зовнішнє моделювання програмних інтерфейсів

[ред. | ред. код]

FEATool Multiphysics також має вбудовану можливість інтегрувати коди інших систем моделювання, таким чином можна підключити зовнішні сіточні генератори DistMesh[13], Gmsh[14] і PSLG(трикутниками)[15], а також спеціальні розв'язувачі CFD, такі як OpenFOAM, і FEM solver FEniCS, що дозволяє використовувати високопродуктивні паралельні обчислення та мультифізичні симуляції, які слід налаштувати та виконувати безпосередньо в MATLAB та Octave[16].

Інші особливості

[ред. | ред. код]
  • Повністю інтегрований і простий у використанні графічний інтерфейс.
  • Багатоплатформеність, MATLAB та Octave сумісності, включаючи інші набори інструментів.
  • Великий вибір МСЕ у вигляді функцій бібліотеки (лінійний та високий порядок відповідає P1-P5, а також дискректизації МСЕ).
  • 15 заздалегідь визначених рівнянь та режимів мультифізики в 1D, 2D картезіанських та циліндричних координатах, а також повний 3D.
  • Підтримка користувальницьких рівнянь з частинними похідними.
  • Імпорт, експорт та перетворення сіткок та геометрій між OpenFOAM, Dolfin / FEniCS XML, GiD[17], Gmsh, GMV[18], PSLG(трикутниками) та звичайними форматами сітки в ASCII[19].

Дивись також

[ред. | ред. код]

Посилання

[ред. | ред. код]
  1. FEATool Multiphysics homepage.
  2. Савула, Ярема (2004). Числовий аналіз задач математичної фізики варіаційними методами. Львівський нац. ун-т ім. І. Франка. с. 222.
  3. FEM Multiphysics Simulation for MATLAB!? (engineer.com). Архів оригіналу за 12 червня 2018. Процитовано 21 травня 2018. [Архівовано 2018-06-12 у Wayback Machine.]
  4. Engineering - FEM Multiphysics Simulation for MATLAB (engineering.com). Архів оригіналу за 12 червня 2018. Процитовано 21 травня 2018.
  5. Modeling the Effects of Increased Glucose Concentration on Intraocular Pressure CSURE 2014 Summer Program (PDF). Архів оригіналу (PDF) за 30 грудня 2020. Процитовано 21 травня 2018.
  6. Topology Optimization Modeling with MATLAB and FEATool Multiphysics. Архів оригіналу за 12 червня 2018. Процитовано 21 травня 2018.
  7. FEATool Multiphysics online documentation suite.
  8. Digital Engineering Editor’s Pick: FEATool Multiphysics 1.4 (digitaleng.news). Архів оригіналу за 12 червня 2018. Процитовано 21 травня 2018.
  9. Benchmark computations of laminar flow around a cylinder. Flow Simulation with High-Performance Computers II, Notes on Numerical Fluid Dynamics. 52: 547—566. 1996.
  10. On higher order methods for the stationary incompressible Navier-Stokes equations (PhD). University of Heidelberg. 1998. Архів оригіналу за 19 травня 2018. Процитовано 21 травня 2018.
  11. Higher-order finite element discretizations in a benchmark problem for incompressible flows. International Journal for Numerical Methods in Fluids. 37 (8): 885—903. 2001.
  12. Black-Scholes custom equation and PDE modeling tutorial.
  13. A Simple Mesh Generator in MATLAB. SIAM Review. 46 (2): 329—345. 2004.
  14. Comparison of open source mesh generators (DistMesh, Gmsh, and Triangle). Архів оригіналу за 12 червня 2018. Процитовано 21 травня 2018.
  15. Triangle: Engineering a 2D quality mesh generator and Delaunay triangulator. Applied Computational Geometry Towards Geometric Engineering. 1148: 203—222. 1996.
  16. What is Multiphysics CAE Simulation?. Архів оригіналу за 24 березня 2017. Процитовано 21 травня 2018. [Архівовано 2017-03-24 у Wayback Machine.]
  17. GiD - The personal pre and post processor homepage. Архів оригіналу за 26 березня 2022. Процитовано 24 квітня 2022.
  18. GMV - The General Mesh Viewer homepage. Архів оригіналу за 26 вересня 2013. Процитовано 21 травня 2018. [Архівовано 2013-09-26 у Wayback Machine.]
  19. FEATool Multiphysics technical specifications.

Зовнішні посилання та ресурси

[ред. | ред. код]