Metoda přímek (angl. method of lines, MOL)

Při diskretizaci prostorové domény a ponechání časové domény spojité můžeme využít veškerých dostupných numerických řešičů pro obyčejné diferenciální rovnice, tedy v Matlabu nám dobře známé funkce jako ode45.

Metoda konečných prvků (angl. finite elements method, FEM)

V oblasti elektrických, mechanických, elektromechanických ale i tepelných systémů jsou dnes nejpoužívanějšími numerickými metodami tzv. metody konečných prvků (angl. Finite Elements Methods, FEM). Existuje několik komerčních i free&opensource implementací takových solverů.  

Comsol Multiphysics

My sami (na katedře řídicí techniky) máme zkušenost s komerčním softwarem Comsol Multiphysics. Jde o profesionální nástroj, který vás provede všemi kroky, které jsou pro simulaci prostorově distribuovaného systému nutné. Nejdříve zakreslíte 3D (případně i jen 2D) prostorovou doménu, nad kterou budete chtít hledat řešení. Následně ze seznamu parciálních diferenciálních rovnic vyberete takovou, která se hodí ve vašem případě, případně si zapíšete svoji vlastní. Ve vybrané rovnici doplníte konkrétní hodnoty fyzikálních parametrů a pak už zbývá jen specifikovat okrajové podmínky. Tím je zadání úplné a zbývá už jen Comsol nechat provést diskretizaci prostorové domény a pro takovou síť (anglicky mesh) spočítat řešení a toto řešení následně vizualizovat. Pohodlnou vlastností Comsolu je, že umožňuje velmi pohodlnou komunikaci a převod dat s Matlabem. Pre- a post-processing (včetně vizualizace) tak je možno realizovat právě v Matlabu. Z pohledu dostupnosti licence bohužel pro studenty dobrou zprávu nemáme - studentskou licenci na FEL či celém ČVUT zatím nemáme.

Partial Differential Equations Toolbox for Matlab

Zhruba stejnou funkcionalitu avšak o něco nižší výkonnost (omezení pouze na 2D domény) i uživatelský komfort nabízí Partial Differential Equation Toolbox for Matlab, který je vyvíjen přímo firmou The Mathworks. Tady je ta licenční zpráva pozitivní - toolbox je součástí celoškolní licence pro produkty firmy The Mathworks, tedy k němu mají přístup i studenti.

Ansys

Dalším populárním "heavy-duty" komerčním nástrojem je Ansys. Vlastní zkušenost s ním nemám(e), avšak na výrobce nabízí studentskou verzi, která je zdarma. Snad jen upozorním, že tento software (stejně jako Comsol) jsou opravdu velmi náročné na výpočetní schopnosti počítače - na velmi slabém PC poběží řešení středně náročného modelu nepoužitelně pomalu. 

Open-source nástroje

Fanoušky free&opensoure softwaru potěším i nepotěším. Takové projekty skutečně existují, avšak jejich výkonnost stejně jako uživatelský komfort jsou hodně daleko od jejich komerčních konkurentů. Mezi ty zralejší projekty patří: FreeFEM++, GetFEM++, Elmer.  Zkušenost s nimi osobně nemám(e) žádnou.

Velmi zajímavý (protože současně zralý a dále vyvíjený) se zdá být open-source projekt FEniCS. Tutoriál k němu (jak text tak i kód v Pythonu) je na https://fenicsproject.org/tutorial/. Dokonce existuje i wrapper do čím dál populárnější Julie (https://github.com/JuliaDiffEq/FEniCS.jl).

Spektrální metody

Chebfun

Samostatnou "kapitolou" mezi balíky pro numerické řešení PDE je přístup reprezentovaný (volně dostupným) matlabským toolboxem Chebfun. Jakkoliv toto jde již za hranice našeho úvodního předmětu, velmi studenty povzbuzujeme, aby se na tento balík příležitostně podívali. Je mimořádně dobře zdokumentovaný a webová stránka obsahuje dlouhou řadu příkladů.

Last modified: Monday, 6 January 2020, 11:30 PM