MATLAB & COMSOL Multiphysics - Humusoft
MATLAB & COMSOL Multiphysics - Humusoft
MATLAB & COMSOL Multiphysics - Humusoft
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
1<br />
<strong>MATLAB</strong><br />
&<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Pavel Beneš<br />
benes@humusoft.cz<br />
enes@humusoft.cz<br />
Karel Bittner<br />
bittner@humusoft.cz<br />
ittner@humusoft.cz<br />
HUMUSOFT s.r.o.
2<br />
<strong>MATLAB</strong><br />
Pavel Beneš<br />
benes enes@humusoft.<br />
@humusoft.cz cz<br />
www.humusoft.cz<br />
info@humusoft.cz<br />
www.mathworks.com<br />
HUMUSOFT s.r.o.
3<br />
HUMUSOFT s.r.o.<br />
Profil společnosti<br />
Název firmy: <strong>Humusoft</strong> s.r.o.<br />
Založena: 1990<br />
Počet zaměstnanců: 11<br />
Sídlo: Praha 8, Pobřežní 20<br />
HUMUSOFT s.r.o.<br />
• <strong>MATLAB</strong>, Simulink, Stateflow (The The MathWorks, Inc.) Inc.<br />
– technické výpočty, modelování a simulace…<br />
• WITNESS (Lanner Lanner Group, Ltd.) Ltd.<br />
– interaktivní simulace a optimalizace podnikových procesů<br />
• dSPACE - vývojové systémy (dSPACE GmbH.<br />
dSPACE GmbH.)<br />
– systémy pro řízení a simulace v reálném čase<br />
• Comsol <strong>Multiphysics</strong> (Comsol AB)<br />
– otevřený systém pro MKP analýzu<br />
• Vývoj vlastního software & hardware (<strong>Humusoft</strong> s.r.o.)<br />
<strong>Humusoft</strong> s.r.o.)<br />
– Virtual Reality Toolbox, Real Time Toolbox, RTWT<br />
– měřicí karty<br />
– modely pro výuku teorie řízení<br />
– HeavyHorse (multiprocesorové stanice) !NOVINKA!<br />
• Haptická zařízení a aplikace<br />
– nástroje a zařízení pro tvorbu aplikací využívajících<br />
hmatovou interakci
4<br />
Co je to <strong>MATLAB</strong>?<br />
Světový standard pro technické výpočty<br />
• výkonný programovací<br />
jazyk<br />
• interaktivní výpočetní a<br />
vývojové prostředí:<br />
- technické výpočty<br />
- analýza a vizualizace dat<br />
- vývoj a testování algoritmů<br />
- sběr a zpracování dat<br />
- zpracování signálů a obrazů<br />
- programování a tvorba uživatelských aplikací<br />
- distribuované/paralelní výpočty<br />
HUMUSOFT s.r.o.
5<br />
Co <strong>MATLAB</strong> nabízí?<br />
• Intuitivní uživatelské rozhraní<br />
<strong>MATLAB</strong> Desktop<br />
• Rychlé výpočetní jádro<br />
• Programovací jazyk 4. generace<br />
• Více než 1 000 funkcí<br />
- vektorová/maticová matematika<br />
- 2D, 3D grafika a GUI designér<br />
- funkce pro vstup a výstup dat<br />
- integrace programů v jazycích C/C++, Fortran, Java, COM<br />
• Interaktivní ovládání nástrojů pomocí grafického rozhraní<br />
• Rozsáhlá, snadno přístupná HTML nápověda<br />
HUMUSOFT s.r.o.
Struktura systému <strong>MATLAB</strong><br />
Samostatné<br />
aplikace<br />
6<br />
Toolboxy<br />
(specializované<br />
knihovny funkcí)<br />
<strong>MATLAB</strong><br />
Výpočty, programování, vizualizace...<br />
(matematické funkce, grafické funkce...)<br />
HUMUSOFT s.r.o.
7<br />
Způsob práce se systémem <strong>MATLAB</strong><br />
1. Přístup k datům<br />
2. Analýza a vizualizace dat<br />
3. Programování a vývoj vlastních algoritmů<br />
4. Sdílení informací, integrace, tvorba a šíření aplikací<br />
HUMUSOFT s.r.o.
8<br />
Způsob práce se systémem <strong>MATLAB</strong><br />
1. Přístup k datům a jejich zpracování<br />
• Přístup k datům<br />
Datové soubory<br />
- Excel, textové, binární<br />
- multimedia (zvuk, video, foto)<br />
- web, XML<br />
Aplikace a jazyky<br />
- C, C++, Fortran, Java, COM, DLL<br />
- databáze (Oracle, Microsoft SQL Server…)<br />
Měřicí přístroje<br />
- počítačové karty a další měřicí HW<br />
- samostatné měřicí přístroje (voltmetry, osciloskopy…)<br />
• Zpracování dat<br />
- interpolace a decimace<br />
- extrakce určitých úseků dat<br />
- vyhlazování a filtrace<br />
HUMUSOFT s.r.o.
9<br />
Způsob práce se systémem <strong>MATLAB</strong><br />
2. Analýza a vizualizace dat<br />
• Analýza dat<br />
- snadná manipulace, předzpracování a správa dat<br />
- přesná analýza pomocí předdefinovaných<br />
matematických a inženýrských funkcí<br />
• Vizualizace<br />
- 2D, 3D a objemová vizualizace dat<br />
- interaktivní nástroje pro úpravu grafických objektů<br />
• Toolboxy pro pokročilejší analýzu, vizualizaci a grafické<br />
zpracování<br />
- Image Processing Toolbox<br />
- Signal Processing Toolbox<br />
- Curve Fitting Toolbox<br />
- Neural Network Toolbox<br />
- ...<br />
HUMUSOFT s.r.o.
10<br />
Způsob práce se systémem <strong>MATLAB</strong><br />
3. Programování a vývoj vlastních algoritmů<br />
• Strukturovaný jazyk 4. generace<br />
• Interaktivní tvorba programu<br />
• Akcelerace výpočtů - JIT<br />
• Vývojové nástroje<br />
- Guide (Graphical User Interface<br />
Development Environment)<br />
- Editor/Debugger<br />
- Profiler (analýza programu, hledání slabin)<br />
- M-Lint (nabízí optimální řešení)<br />
HUMUSOFT s.r.o.
11<br />
Způsob práce se systémem <strong>MATLAB</strong><br />
4. Sdílení informací, integrace, tvorba a šíření aplikací<br />
• sdílení uživatelských M-souborů (multiplatformní)<br />
• možnost publikování/exportu M kódu do programů a formátů<br />
- HTML, Word, Excel, PowerPoint…<br />
• integrace s externími aplikacemi a jazyky<br />
- C, C++, Java, COM, .NET, Fortran...<br />
• tvorba a šíření na <strong>MATLAB</strong>u nezávislých aplikací<br />
HUMUSOFT s.r.o.<br />
http://www.mathworks.com/products/matlab/demos.html
12<br />
HUMUSOFT s.r.o.<br />
Samostatné aplikace v systému <strong>MATLAB</strong><br />
<strong>MATLAB</strong> Compiler<br />
• <strong>MATLAB</strong> Compiler umožňuje vytvářet<br />
- samostatné EXE aplikace (Stand Alone Applications)<br />
- sdilené knihovny C/C++<br />
- moduly add-ins do Excelu (<strong>MATLAB</strong> Builder for Excel)<br />
- .NET aplikace (<strong>MATLAB</strong> Builder for .NET)<br />
- JAVA aplikace (<strong>MATLAB</strong> Builder for JAVA)<br />
• šíření vytvořených „Stand Alone“ aplikací<br />
- na počítači, kde má běžet aplikace, je nutno instalovat MCR (<strong>MATLAB</strong> Compiler Runtime)<br />
- instalační soubor MCRInstaller.exe<br />
- součástí instalace <strong>MATLAB</strong> Compileru, volně šiřitelné<br />
• závěr<br />
- cokoliv můžeme počítat v <strong>MATLAB</strong>u zvládá ML Compiler<br />
- aplikace nejsou licenčně omezeny (volně šiřitelné)<br />
http://www.mathworks.com/products/compiler/demos.html
13<br />
HUMUSOFT s.r.o.<br />
Distribuované a paralelní výpočty v <strong>MATLAB</strong>u<br />
Paralelizace algoritmů implementována na třech úrovních:<br />
1. <strong>MATLAB</strong><br />
- základní matematické knihovny s podporou více jader<br />
2. Distributed Computing Toolbox<br />
- běh až čtyř paralelních procesů na jednom počítači<br />
3. Distributed Computing Toolbox + Distributed Computing Engine<br />
- běh paralelních procesů na jednom počítači s více<br />
procesory nebo v síti počítačů (max. počet 256CPU)
14<br />
HUMUSOFT s.r.o.<br />
Distribuované a paralelní výpočty v <strong>MATLAB</strong>u<br />
Distributed Computing Toolbox / Distributed Computing Engine<br />
- umožňují provádění distribuovaných / paralelních výpočtů v <strong>MATLAB</strong>u a spouštění<br />
simulačních modelů Simulinku v počítačových clusterech<br />
Distributed<br />
Computing Toolbox<br />
Klient<br />
<strong>MATLAB</strong> Distributed Computing Engine<br />
Job<br />
Manager<br />
Worker 1<br />
Worker 2<br />
Worker 3<br />
Worker 4<br />
Worker 5<br />
Worker 6<br />
Worker 7<br />
Worker 8
15<br />
• Klient spouští ze svého PC job - počítaná úloha<br />
HUMUSOFT s.r.o.<br />
Distribuované a paralelní výpočty v <strong>MATLAB</strong>u<br />
- uživatel rozdělí job na menší segmenty (tasky) pomocí Distributed Computing<br />
Toolboxu<br />
- <strong>MATLAB</strong> Distributed Computing Engine zajistí výpočet úlohy (job a segmenty) a<br />
vrací výsledky klientovi<br />
- Job manager (část Distributed Computing Engine) koordinuje provedení jobu a<br />
tasků a rozesílá je na jednotlivé workery (procesory)<br />
• Podpora paralelních výpočtů<br />
- Distribuovaná pole - segmentace proměnných<br />
- Interaktivní paralelní režim - pmode<br />
- Paralelní smyčka for - parfor<br />
• Podpora platforem Windows 32/64-bit, Linux 32/64-bit a MAC<br />
• Klient, job manager a worker nemusí pracovat na stejné platformě, podpora<br />
heterogenních clusterů a kombinace 32 a 64-bitových strojů<br />
http://www.mathworks.com/products/distribtb/demos.html
16<br />
Aplikační oblasti systému <strong>MATLAB</strong><br />
• Matematické výpočty a optimalizace<br />
• Distribuované a paralelní výpočty<br />
• Statistika a analýza dat<br />
• Návrh a analýza řídicích systémů<br />
• Zpracování signálů a komunikace<br />
• Zpracování obrazu a videa<br />
• Měření a testování<br />
• Výpočetní biologie<br />
• Finanční analýza a modelování<br />
• Tvorba aplikací<br />
• Reportování a spolupráce s databázemi, Excelem<br />
HUMUSOFT s.r.o.
17<br />
Přehled řehled toolboxů systému <strong>MATLAB</strong><br />
• Distribuované výpočty<br />
Distributed Computing Toolbox<br />
<strong>MATLAB</strong> Distributed Computing Engine<br />
• Matematické výpočty a optimalizace<br />
Optimization Toolbox<br />
Symbolic Math Toolbox<br />
Extended Symbolic Math Toolbox<br />
Partial Differential Equation Toolbox<br />
Genetic Algorithm and Direct Search Toolbox<br />
• Statistika a analýza dat<br />
Statistics Toolbox<br />
Neural Network Toolbox<br />
Curve Fitting Toolbox<br />
Spline Toolbox<br />
HUMUSOFT s.r.o.<br />
Model-Based Calibration Toolbox<br />
• Návrh a analýza řídicích systémů<br />
Control System Toolbox<br />
System Identification Toolbox<br />
Fuzzy Logic Toolbox<br />
Robust Control Toolbox<br />
Model Predictive Control Toolbox<br />
Aerospace Toolbox
18<br />
Přehled řehled toolboxů systému <strong>MATLAB</strong><br />
• Zpracování signálů a komunikace<br />
Signal Processing Toolbox<br />
Communications Toolbox<br />
Filter Design Toolbox<br />
Filter Design HDL Coder<br />
Wavelet Toolbox<br />
Fixed-Point Toolbox<br />
RF Toolbox<br />
Link for Code Composer Studio<br />
Link for ModelSim®<br />
Link for Cadence Incisive®<br />
• Zpracování obrazu<br />
Image Processing Toolbox<br />
Image Acquisition Toolbox<br />
Mapping Toolbox<br />
• Měření a testování<br />
Data Acquisition Toolbox<br />
Instrument Control Toolbox<br />
Image Acquisition Toolbox<br />
SystemTest<br />
OPC Toolbox<br />
HUMUSOFT s.r.o.
19<br />
Přehled řehled toolboxů systému <strong>MATLAB</strong><br />
• Výpočetní biologie<br />
Bioinformatics Toolbox<br />
SimBiology<br />
• Finanční analýza a modelování<br />
Financial Toolbox<br />
Financial Derivatives Toolbox<br />
GARCH Toolbox<br />
Datafeed Toolbox<br />
Fixed-Income Toolbox<br />
• Tvorba aplikací<br />
<strong>MATLAB</strong>® Compiler<br />
Excel Link<br />
<strong>MATLAB</strong> Builder for .NET<br />
<strong>MATLAB</strong>® Builder for Excel<br />
<strong>MATLAB</strong>® Builder for Java<br />
HUMUSOFT s.r.o.<br />
• Reportování a spolupráce s databázemi<br />
Database Toolbox<br />
<strong>MATLAB</strong>® Report Generator
Proč používat systém <strong>MATLAB</strong>?<br />
• široké aplikační využití v rámci celé organizace<br />
20<br />
HUMUSOFT s.r.o.<br />
• snadnější definice technických úloh a jejich rychlejší řešení oproti tradičním<br />
programovacím jazykům jako jsou např. C++, Fortran<br />
• jednotné prostředí pro interaktivní výpočty, vizualizaci výsledků a programování<br />
• přístup k tisícům vestavěných inženýrských a vědeckých algoritmů a funkcí<br />
• načítání dat z externích zdrojů - datové zdroje, měřicí karty, osciloskopy, ...<br />
• propojení s programovacími jazyky a nástroji - C, C++, Fortran, Excel, COM a<br />
.NET objekty, Java...
21<br />
Oblasti využití systému <strong>MATLAB</strong><br />
Tradiční<br />
Letectví, kosmonautika a obrana<br />
Automobilový průmysl<br />
Automatizace a strojírenství<br />
Komunikace, elektronika, polovodiče a výpočetní<br />
technika<br />
Školství<br />
Nově vznikající<br />
Další<br />
Biotechnologie, zdravotnictví a farmacie<br />
Finance a ekonomika<br />
Přístrojová technika<br />
Chemie a petrochemie<br />
Přírodní vědy<br />
Energetika a veřejné služby<br />
HUMUSOFT s.r.o.<br />
http://www.mathworks.com/industries/<br />
http://www.mathworks.com/academia/
22<br />
vstupy řešení<br />
automatizace<br />
HUMUSOFT s.r.o.<br />
výstupy
23<br />
Co je to Simulink?<br />
Prostředí pro simulaci, modelování, analýzu a<br />
implementaci dynamických a embedded systémů<br />
• prostředí blokových schémat<br />
• modelování, simulace a analýza<br />
rozsáhlých dynamických systémů<br />
• přesný návrh, implementace a<br />
testování:<br />
- řídicí systémy<br />
- systémy pro zpracování signálu<br />
- komunikační systémy<br />
- další dynamické systémy<br />
• platforma pro Model-Based Design<br />
HUMUSOFT s.r.o.<br />
Tvorba fyzických prototypů nahrazena prací s digitálním modelem fyzikálních<br />
vlastností komponent a výrobků s následným automatickým generováním kódu<br />
pro cílovou platformu
24<br />
Co Simulink nabízí?<br />
• Přehledné grafické uživatelské prostředí<br />
- systém práce "drag and drop"<br />
• Hierarchické modelování využívající<br />
knihovny objektů a komponent<br />
- předdefinované knihovny bloků<br />
- tvorba vlastních funkčních bloků<br />
• Otevřené rozhraní pro tvorbu aplikací (API)<br />
- začlenění kódu z programů <strong>MATLAB</strong>, C, Fortran<br />
• Hybridní simulace, simulace systémů s<br />
různými vzorkovacími frekvencemi, simulace<br />
víceúlohových (multi-task) systémů<br />
• Integrace s <strong>MATLAB</strong>em<br />
HUMUSOFT s.r.o.
25<br />
Aplikační oblasti systému Simulink<br />
HUMUSOFT s.r.o.<br />
• Modelování obecných dynamických systémů<br />
• Modelování systémů v pevné řádové čárce<br />
• Modelování systémů diskrétních událostí<br />
• Modelování fyzikálních soustav<br />
- hydraulické, mechanické a elektrické systémy (Simscape)<br />
- fyzikální veličiny: síly, momenty a pohyby (SimMechanics + Simscape)<br />
- elektrické a energetické systémy (SimPowerSystems)<br />
- návrh pohonů a hnacích soustav (SimDriveline + Simscape)<br />
- hydraulické systémy (SimHydraulics + Simscape)<br />
• Simulační grafika<br />
• Návrh a analýza řídicích systémů<br />
• Zpracování signálů a komunikace<br />
• Automatické generování kódu<br />
• Tvorba prototypů řídicích systémů a HIL simulace<br />
• Embedded Targets<br />
• Verifikace, validace a testování
26<br />
Struktura systému Simulink<br />
Tvorba<br />
aplikací<br />
Toolboxy<br />
(knihovny funkcí)<br />
<strong>MATLAB</strong><br />
Výpočty, programování, vizualizace...<br />
HUMUSOFT s.r.o.<br />
Aplikace v reálném čase<br />
Blocksety<br />
(knihovny bloků)<br />
Simulink<br />
Simulace a modelování dynamických systémů
27<br />
Aplikační knihovny Simulinku Aplikační knihovny <strong>MATLAB</strong>u<br />
<strong>MATLAB</strong> Product Family<br />
HUMUSOFT s.r.o.<br />
Oblasti využití produktů
28<br />
Stateflow<br />
HUMUSOFT s.r.o.<br />
• Nadstavba Simulinku (nástroj pro modelování událostmi řízených systémů)<br />
- efektivním způsobem začleňuje složitou, událostmi řízenou logiku do modelů Simulinku<br />
- intuitivní grafické uživatelské rozhraní<br />
• Simulace<br />
- simulace dynamiky fyzikální podstaty soustav (spojité procesy)<br />
- simulace chování logiky řídicího systému<br />
• Využití<br />
- automobilový průmysl (ABS systém...)<br />
- obrana (návrhy radarových a naváděcích systémů...)<br />
- letecký průmysl (systémy automatické pilotáže...)<br />
- počítačový průmysl<br />
- spotřební elektronika<br />
- komunikace<br />
http://www.mathworks.com/products/stateflow/demos.html
Real Time Toolbox<br />
• Nadstavba Simulinku pro práci v reálném čase<br />
29<br />
– sběr dat<br />
– on-line řízení<br />
– synchronizace s reálným časem<br />
• Interaktivní práce (modely není nutno kompilovat)<br />
• Knihovna bloků reprezentujících komponenty RT systémů<br />
• Podpora ~160 akvizičních karet<br />
– <strong>Humusoft</strong> MF624, AD622, National Instrument, Computer Boards...<br />
Real Time Toolbox 4.0:<br />
– zcela nové uživatelské rozhraní<br />
– objektové programátorské rozhraní<br />
– výrazné zvýšení rychlosti<br />
– kompatibilita s nejnovějšími typy procesorů<br />
Příklad:<br />
Řízení polohy elektro-mechanického<br />
systému (magnetická levitace)<br />
HUMUSOFT s.r.o.
Řídicí systémy dSPACE<br />
• vývojové a řídicí systémy pro simulace v reálném čase<br />
30<br />
– Rapid prototyping<br />
– Simulace Hardware-in-the-loop (HIL)<br />
HUMUSOFT s.r.o.<br />
• tvorba fyzických prototypů nahrazena prací s digitálním modelem fyzikálních<br />
vlastností komponent a výrobků s následným automatickým generováním kódu<br />
pro cílovou platformu<br />
• v simulované řídicí smyčce je zapojen skutečný hardware<br />
• modely pracující v reálném čase, PC vybavené hardwarem pro styk s reálnými<br />
komponenty systému umožňují simulaci a testování různých kombinací<br />
modelovaných / skutečných subsystémů a řídicích jednotek<br />
• k dispozici existuje řada modelů<br />
komponent a interagujících systémů<br />
– Dynamika vozidla<br />
– Pohonné a řídicí jednotky<br />
– Pneumatiky<br />
– Okolí, ....<br />
Příklad:<br />
Testování řídicí jednotky<br />
automatické převodovky
31<br />
Přehled řehled blocksetů systému Simulink<br />
Simulink Accelerator<br />
Simulink Report Generator<br />
• Modelování systému v pevné řádové čárce<br />
Simulink Fixed-Point<br />
• Modelování systému diskrétních událostí<br />
Stateflow®<br />
SimEvents<br />
• Modelování fyzikálních soustav<br />
Simscape<br />
SimMechanics<br />
SimPowerSystems<br />
SimDriveline<br />
SimHydraulics<br />
• Simulační grafika<br />
Virtual Reality Toolbox<br />
Gauges Blockset<br />
HUMUSOFT s.r.o.<br />
• Návrh a analýza řídicích systému<br />
Simulink Control Design<br />
Simulink Response Optimatization<br />
Simulink Parameter Estimation<br />
Aerospace Blockset<br />
• Zpracování signálu a komunikace<br />
Signal Processing Blockset<br />
Communications Blockset<br />
RF Blockset<br />
Video and Image Processing Blockset<br />
• Automatické generování kódu<br />
Real Time Workshop<br />
Real-Time Workshop Embedded Coder<br />
Stateflow Coder<br />
Simulink HDL Coder
32<br />
Přehled řehled blocksetů systému Simulink<br />
• Tvorba prototypu řídicích<br />
systému a HIL simulace<br />
xPC Target<br />
xPC Target Embeded Option<br />
xPC TargetBox®<br />
Real-Time Windows Target<br />
• Embedded Targets<br />
Embedded Target for Infineon C166® Microcontrollers<br />
Embedded Target for Motorola® HC12<br />
Embedded Target for Motorola® MPC555<br />
Embedded Target for TI C2000 DSP<br />
Embedded Target for TI C6000 DSP<br />
HUMUSOFT s.r.o.<br />
• Verifikace, validace a testování<br />
Link for Code Composer Studio<br />
Link for ModelSim®<br />
Simulink® Verification and Validation<br />
SystemTest<br />
Link for TASKING®<br />
Link for Incisive®
33<br />
Podporované platformy<br />
HUMUSOFT s.r.o.<br />
• Windows 2000 (SP 3 nebo 4), XP (SP 1 nebo 2), Vista, Server 2003<br />
• Windows XP x64, Windows Sever 2003<br />
- RAM (512) 1024 MB, místo na HDD 460 MB (jen <strong>MATLAB</strong> a Help)<br />
- Pentium III, IV, Xeon, M, AMD Athlon, MP, XP, 64, AMD Opteron, Intel Core Duo, 2<br />
• Solaris 8, 9, 10<br />
- SPARC, UltraSPARC<br />
• Linux 32-bit Kernel 2.4.x nebo 2.6.x, glibc 2.3.2<br />
- Pentium III, IV, Xeon, M, AMD Athlon, MP, XP, 64, AMD Opteron, Intel Core Duo, 2<br />
• Linux 64-bit Kernel 2.4.x nebo Kernel 2.6.x, glibc 2.3.4<br />
- Intel EM64T, AMD64, Intel Core 2 Duo<br />
• Macintosh<br />
- Tiger, Panther, Intel<br />
http://www.mathworks.com/products/matlab/requirements.html
34<br />
Odkazy:<br />
• www.humusoft.cz<br />
- domovská stránka firmy <strong>Humusoft</strong> s.r.o.<br />
• www.humusoft.cz/matlab/knihy.htm<br />
- CZ/SK knihy a publikace využívající nebo popisující systém <strong>MATLAB</strong>/Simulink<br />
• www.humusoft.cz/matlab/seminar.htm<br />
HUMUSOFT s.r.o.<br />
- on-line webové semináře týkající se systému <strong>MATLAB</strong>/Simulink a jejich nadstaveb<br />
• www.humusoft.cz/akce/matlab06/index.htm<br />
- příspěvky uživatelů z konference <strong>MATLAB</strong> o využití systému <strong>MATLAB</strong>/Simulink v praxi<br />
• www.mathworks.com<br />
- domovská stránka firmy The MathWorks<br />
• www.mathworks.com/matlabcentral/<br />
- prostor pro vzájemnou komunikaci mezi uživateli a příznivci systému <strong>MATLAB</strong>/Simulink<br />
(otevřená platforma pro prezentaci vlastních aplikací, výměnu souborů, názorů i zkušeností)<br />
• www.mathworks.com/support/books/<br />
- kompletní seznam knih a publikací využívající nebo popisující systém <strong>MATLAB</strong>/Simulink
35<br />
Připravované řipravované akce akce:<br />
• 25.9.2007 Seminář „Simulink for Signal Processing Design“<br />
HUMUSOFT s.r.o.<br />
• 23.10.2007 Seminář „Model Based Design for Automotive Industry“<br />
• 14.11.2007 Mezinárodní konference „Technical Computing Prague 2007“<br />
- setkání uživatelů a příznivců systému <strong>MATLAB</strong>/Simulink<br />
• Seminář „<strong>MATLAB</strong> & <strong>COMSOL</strong> <strong>Multiphysics</strong>“<br />
- Olomouc, Bratislava, Košice, Plzeň, Brno, Žilina, Ostrava<br />
http://www.humusoft.cz/seminare/index.htm
36<br />
Školení:<br />
• <strong>MATLAB</strong> I<br />
- ovládání a základní prvky jazyka<br />
- grafika a základy systému Handle Graphics<br />
- import a export dat, základy programování (M-soubory)<br />
• <strong>MATLAB</strong> II<br />
- tvorba grafického uživatelského rozhraní<br />
- objektové orientované programování<br />
- nástroje pro ladění programů<br />
- tvorba rozsáhlých aplikací<br />
HUMUSOFT s.r.o.<br />
• Simulink I<br />
- modelování dynamických systémů v Simulinku<br />
- knihovna bloků<br />
- simulační algoritmy<br />
- subsystémy<br />
- tvorba uživatelských bloků<br />
• Simulink II + Stateflow<br />
- nástroje pro ladění modelu v Simulinku<br />
- pokročilé ovládání simulace<br />
- S-funkce<br />
- modelování sekvenčních automatů ve Stateflow<br />
- propojení Stateflow a Simulinku<br />
- generování C kódu pomocí Real Time Workshopu<br />
http://www.humusoft.cz/matlab/skoleni.htm
37<br />
HUMUSOFT s.r.o.<br />
• podrobný popis produktů<br />
• přehled funkcí<br />
• systémové požadavky<br />
• aktuální novinky<br />
• dokumentace a literatura<br />
• využití produktů v praxi<br />
• dema, semináře, kurzy...
38<br />
HUMUSOFT s.r.o.<br />
Pracovní Pracovní<br />
stanice <strong>Humusoft</strong> HeavyHorse<br />
• vysoce výkonný počítač pro paralelní výpočty<br />
• modely se čtyřmi nebo osmi výpočetními jádry<br />
– založeno na technologii AMD Opteron<br />
• operační systém Windows nebo Linux<br />
– standardně 64-bitový, na přání 32-bitový<br />
• optimalizovaný pro použití s <strong>MATLAB</strong>em<br />
– možnost předinstalace <strong>MATLAB</strong>u a <strong>MATLAB</strong> Distributed<br />
Computing Engine<br />
• usnadňuje vstup do světa paralelních výpočtů<br />
– výrazně jednodušší správa výpočetního clusteru<br />
– příznivá cena
39<br />
HUMUSOFT s.r.o.<br />
Konfigurace stanic <strong>Humusoft</strong> HeavyHorse<br />
• procesory AMD Opteron<br />
– dva nebo čtyři dvoujádrové<br />
– frekvence CPU 2.0 až 2.8 GHz<br />
• 4-16 GB RAM<br />
• video ATI Radeon<br />
• pevný disk 320 GB<br />
• operační systém podle přání<br />
– OpenSuSE Linux 64-bit<br />
– Microsoft Windows XP 64-bit<br />
– Microsoft Windows Vista 64-bit<br />
• Možnost předinstalace aplikací<br />
– <strong>MATLAB</strong> Distributed Computing<br />
Engine
40<br />
HUMUSOFT s.r.o.<br />
<strong>Humusoft</strong> HeavyHorse model 4x070<br />
• dva dvoujádrové procesory AMD<br />
Opteron 270 2.0 GHz<br />
• 4 GB RAM<br />
• video ATI Radeon X1600 Pro<br />
• výsledky <strong>MATLAB</strong> benchmarku<br />
pro 1 jádro !!!<br />
http://www.humusoft.cz/heavyhorse/
41<br />
Děkuji Vám za pozornost<br />
HUMUSOFT s.r.o.<br />
Pavel Beneš<br />
benes enes@humusoft.<br />
@humusoft.cz cz
42<br />
Karel Bittner<br />
bittner ittner@humusoft.<br />
@humusoft.cz cz<br />
www.humusoft.cz<br />
info@humusoft.cz<br />
www.comsol<br />
www. comsol.com com<br />
HUMUSOFT s.r.o.<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong>
43<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
HUMUSOFT s.r.o.
44<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong>, Švédsko<br />
• Společnost založena v červenci 1986 ve Stockholmu<br />
HUMUSOFT s.r.o.<br />
• Pobočky v Dánsku, Norsku, Německu, Francii, Anglii, Itálii, USA,<br />
Japonsku, Číně, atd.<br />
• Současný počet pracovníků kolem 100 lidí<br />
• Zaměření firmy na simulační SW, PDE Toolbox v roce 1995, do roku<br />
2005 FEMLAB, FEMLAB,<br />
nyní vlastní produkt <strong>COMSOL</strong> <strong>Multiphysics</strong><br />
• Komerční zákazníci - Bell Labs, Labs Danish Steel Works, Ericsson, Honeywel,<br />
SAAB, VOLVO, Procter & Gamble a další.<br />
• University a vědecké laboratoře - USA, Evropa, Asie<br />
http://www.comsol.com
45<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
HUMUSOFT s.r.o.
Pracovní postup při řešení úlohy:<br />
46<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– volba 3D prostoru pro modelování<br />
– aplikační režim pružnost a pevnost<br />
z MEMS modulu<br />
– definice použitých proměnných<br />
nebo konstant<br />
– vytvoření geometrie modelu<br />
– zadání vlastnosti použitého<br />
materiálu (definice oblastí)<br />
– definice okrajových podmínek<br />
– generování FEM sítě<br />
– řešení, využití parametrického<br />
řešiče<br />
– následné zpracování získaných<br />
výsledků (postprocesor<br />
( postprocesor)<br />
Konstrukce modelu:<br />
HUMUSOFT s.r.o.<br />
– zrcátko s pružnými podporami<br />
– ocelový střed<br />
– hliníkové nosníky s opačným<br />
předpětím<br />
– metoda se používá např. pro mírné<br />
zakřivení nosníků
47<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– Volba 3D prostoru pro modelování<br />
– Volba aplikace Stress-strain<br />
Stress-strain<br />
ze<br />
specializovaného modulu pro<br />
MEMS<br />
HUMUSOFT s.r.o.
Definice:<br />
48<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– konstanty<br />
– funkce<br />
– výrazy<br />
– souřad. souřad syst. syst<br />
HUMUSOFT s.r.o.
Tvorba geometrie<br />
49<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– 2D, 3D<br />
– Booleovské operace<br />
HUMUSOFT s.r.o.
Fyzikální podmínky<br />
50<br />
– oblasti 1.skup.<br />
(subdomény<br />
subdomény)<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
ocel<br />
HUMUSOFT s.r.o.
Fyzikální podmínky<br />
51<br />
– oblasti 2.skup.<br />
(subdomény<br />
subdomény)<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
hliník<br />
HUMUSOFT s.r.o.
Fyzikální podmínky<br />
52<br />
– oblasti 3.skup.<br />
(subdomény<br />
subdomény)<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
hliník<br />
HUMUSOFT s.r.o.
Fyzikální podmínky<br />
53<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– okraj podmínky<br />
(skupina 1)<br />
volné uchycení<br />
HUMUSOFT s.r.o.
Fyzikální podmínky<br />
54<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– okraj podmínky<br />
(skupina 2)<br />
pevné uchycení<br />
HUMUSOFT s.r.o.
Tvorba FEM sítě<br />
55<br />
– protlačení ve<br />
dvou vrstvách<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
HUMUSOFT s.r.o.
Řešení úlohy<br />
56<br />
– parametrický<br />
řešič<br />
parametr v rozsahu<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
0:1e9:10e9 MPa<br />
HUMUSOFT s.r.o.
Postprocesor<br />
57<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– data na hranicích a v subdoménách<br />
– izočáry, izočáry izoplochy<br />
– proudnice<br />
– řezy ve 2D a 3D<br />
– grafy<br />
– animace<br />
– export dat do ASCII souboru<br />
– export dat do <strong>MATLAB</strong>u<br />
– export dat do <strong>COMSOL</strong> Scriptu<br />
HUMUSOFT s.r.o.
58<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Multifyzikální úloha<br />
– tepelná, elektrická a<br />
pevnostní vazba<br />
Tři aplikační režimy ve 3D:<br />
MEMS - Conductive media DC<br />
CM/HT - Conduction<br />
MEMS - Solid, Stress - Strain<br />
Rozměry:<br />
délka 13 µm, m, výška 1 µm<br />
uzemění<br />
HUMUSOFT s.r.o.<br />
Tekoucí proud generuje teplo, teplo vytváří pnutí a v důsledku<br />
tepelné roztažnosti materiálu nastává deformace geometrie.<br />
el. napětí 0,2 V
Component Library<br />
59<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– obsahuje jednotlivé části (modely)<br />
vytvořené uživatelem<br />
– komponenta má vlastní materiálová data,<br />
nastavení okrajových podmínek a řešení<br />
– z komponent lze vytvářet komplexní model<br />
– z množiny stejných komponent lze vytvářet<br />
různé varianty modelů<br />
HUMUSOFT s.r.o.
60<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Material Library<br />
HUMUSOFT s.r.o.
61<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Knihovna materiálů - Material Library<br />
– 2500 druhů materiálů<br />
– rozdělení do skupin (tekutiny,<br />
plyny, prvky, polovodiče, materiály<br />
pro MEMS, horniny, tepelné<br />
koeficienty)<br />
– možnost vyhledávání (DIN, UNS)<br />
– definice vlastní knihovny<br />
– funkční závislosti (např. na T)<br />
– možnost vykreslování dat<br />
– samostatný modul s dokumentací<br />
HUMUSOFT s.r.o.
62<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Material Library<br />
CAD Import Module<br />
CATIA V4, V5<br />
Pro/E<br />
Autodesk Inventor<br />
VDA-FS<br />
SolidWorks<br />
HUMUSOFT s.r.o.
63<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
CAD Import Module (Defeaturing<br />
( Defeaturing, Repair) Repair<br />
Import mport do <strong>COMSOL</strong> <strong>Multiphysics</strong> ve formátech<br />
– STL (.stl (. stl), ), VRML (.wrl (. wrl), ), DXF (2D) (.dxf (. dxf), ), GDS (2D) (.gds (. gds), ), NASTRAN<br />
CAD Import Module rozšiřuje formáty grafických souborů<br />
– STEP (.stp (. stp), ), IGES (.igs (. igs), ), SAT (.sat (. sat) and Parasolid (.x_t), SolidWorks®, SolidWorks , Solid Edge®, Edge<br />
NX, NX , On-line propojení se SolidWorks®<br />
SolidWorks<br />
HUMUSOFT s.r.o.
64<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Material Library<br />
CAD Import Module<br />
Heat Transfer Module<br />
Earth Science<br />
MEMS Module<br />
Acoustics Module<br />
AC/DC Module<br />
RF Module<br />
Structural Mechanics Module<br />
Chemical Engineering Module<br />
CATIA V4, V5<br />
Pro/E<br />
Autodesk Inventor<br />
VDA-FS<br />
SolidWorks<br />
HUMUSOFT s.r.o.
65<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Material Library<br />
CAD Import Module<br />
Heat Transfer Module<br />
Earth Science<br />
MEMS Module<br />
Acoustics Module<br />
AC/DC Module<br />
RF Module<br />
Structural Mechanics Module<br />
Chemical Engineering Module<br />
CATIA V4, V5<br />
Pro/E<br />
Autodesk Inventor<br />
VDA-FS<br />
SolidWorks<br />
HUMUSOFT s.r.o.<br />
<strong>COMSOL</strong> Script<br />
<strong>MATLAB</strong>
66<br />
<strong>COMSOL</strong> Script<br />
• Samostatné programo programovací<br />
vací prostředí<br />
– rozšiřuje možnosti <strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– používá vlastní interpret<br />
– umožňuje tvorbu samostatných aplikací<br />
HUMUSOFT s.r.o.<br />
• Uživatelské funkce, práce s M-soubory, kompatibilita s <strong>MATLAB</strong>em<br />
– obsahuje kolem 500 funkcí<br />
• Maticové operace, lineární algebra, zpracování dat<br />
• Frekvenční analýza, řešení ODE<br />
• Funkce pro tvorbu grafických objektů (<strong>COMSOL</strong> <strong>Multiphysics</strong>)<br />
<strong>Multiphysics</strong><br />
• Nadstavbové moduly <strong>COMSOL</strong> Scriptu<br />
– Optimization Lab<br />
– Signals & Systems Lab<br />
– <strong>COMSOL</strong> Reaction Engineering Lab
67<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Material Library<br />
CAD Import Module<br />
Heat Transfer Module<br />
Earth Science<br />
MEMS Module<br />
Acoustics Module<br />
AC/DC Module<br />
RF Module<br />
Structural Mechanics Module<br />
Chemical Engineering Module<br />
CATIA V4, V5<br />
Pro/E<br />
Autodesk Inventor<br />
VDA-FS<br />
SolidWorks<br />
HUMUSOFT s.r.o.<br />
<strong>COMSOL</strong> Script<br />
<strong>MATLAB</strong><br />
Optimization Lab<br />
Signals & Systems Lab<br />
Reaction Engineering Lab
68<br />
<strong>COMSOL</strong> Script<br />
<strong>COMSOL</strong> Reaction Enginnering Lab (CREL)<br />
HUMUSOFT s.r.o.<br />
– Nástroj pro simulaci a modelování chemických systémů<br />
– Automatické nastavení hmotové a energetické bilance<br />
– Prostředí pro virtuální experimenty v chemii<br />
– Modelování chem. chem.<br />
reakcí v modelu ideálního reaktoru<br />
– Propojení s Chemical Engineering Modulem (Chem ( Chem)<br />
– Aplikace odladěných chem. chem.<br />
rovnic na geometrickém modelu v Chem<br />
• CREL + <strong>COMSOL</strong> Script ---> časově závislé úlohy<br />
• CREL + <strong>COMSOL</strong> Script + CM + Chem ---> prostorové prostorové<br />
úlohy<br />
• Oblast využití<br />
– biochemie (genová terapie)<br />
– spalování (hoření v ovzduší)<br />
– potravinářství (předpověď koncentrace mikrobů)<br />
– farmakologie
69<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Vybrané příklady<br />
HUMUSOFT s.r.o.
70<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Model trysky inkoustové tiskárny<br />
– určující parametry, rychlost a rozlišení<br />
– změna tvaru trysky, druh inkoustu může<br />
určovat výkon tiskárny<br />
– délka procesu asi 180 µs, s, hmotnost kapky<br />
1.8·10 -10 kg, vzdálenost 0.7·10 -3 m<br />
Řešení pomocí MEMS aplikace<br />
– Level Set Two-Phase Two Phase Flow. Flow<br />
– Využívá Navier-Stokesovu<br />
Navier Stokesovu rovnici a<br />
konzervativní level set metodu (funkce<br />
nabývá hodnot od 0 pro vzduch do 1 pro<br />
inkoust)<br />
Řešič 2D modelu SPOOLES<br />
– 2D řešení se promítne do 3D modelu<br />
– Transformace přes Extrusion Coupling<br />
Variables<br />
HUMUSOFT s.r.o.
Radiofrekvenční tavící pec pro výrobu polovodičů<br />
71<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– reaktor vytvářející polovodivou vrstvu na nějakém<br />
základě (obvykle wafer), wafer),<br />
tloušťka vrstvy je 0.5mm<br />
– vrstva se vytváří při teplotách v rozsahu kolem 2000°C<br />
– teplotu vytváří radiofrekvenční cívka s výkonem do 10kW<br />
– přesný návrh komory reaktoru je základem zákl dem pro<br />
stejnoměrné rozložení teploty uvnitř komory, pro účinný<br />
ohřev a jeho řízení<br />
Řešemí v <strong>COMSOL</strong> <strong>Multiphysics</strong><br />
HUMUSOFT s.r.o.<br />
– aplikace General Heat Transfer (HT) a Induction currents (AC/DC),<br />
závisle proměnné jsou T, radiozita J, složky vektoru magnetic. magnetic<br />
potenciálu A (jenom A pole)<br />
– cívky jsou z mědi, wafer je uchycen v uhlíkových úchytkách, celkový<br />
protékající proud je 21.5 kA což odpovídá ohřevu o výkonu 8kW<br />
– řeší se teplota pouze v susceptoru a křemíková trubice
Proudění ohnutou trubkou<br />
72<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– proudění plynu s ρ = 1 kgm -3 , při Reynoldsově<br />
čísle Re = 3.10 5 , rozměr trubky - Φ = 0.49m,<br />
dynamická viskozita η = 1/Re<br />
– rychlost na vstupu (ve směru osy z) je 1ms -1<br />
Řešení pomocí k-ε k- turbulentního modelu<br />
– řešení pomocí přímého paralelního řešiče<br />
PARDISO<br />
HUMUSOFT s.r.o.<br />
v = 1m.s -1
Pevnostní analýza uchycení v konstrukci stožáru<br />
73<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– aplikace SMM stress - strain<br />
– materiál je konstrukční ocel, modul pružnosti pr žnosti v tahu E =<br />
2.10 11 N.m -2 , působící síla v okách vidlice 30kN, tloušťka<br />
stěn je 10 mm, celková délka součásti je 310 mm<br />
Assembly - určení identických párů (Identity pairs) pairs<br />
– na jednotlivých částech je jiná síť<br />
Okrajové podmínky<br />
– zatěž. zatěž.<br />
síly a podpory Rx, Rx Ry, Ry Rz = 0<br />
HUMUSOFT s.r.o.
Kontaktní úloha - pružnost a pevnost<br />
74<br />
– rovinná deformace, osově symetrický 2D model, ocelový<br />
válec, hliníková základna<br />
– řeší se rozložení tlaku v dotykovém bodě a délka<br />
kontaktu mezi základnou a válcem<br />
– definice kontaktního páru:<br />
kontaktovaná geometrie - master boundary<br />
kontaktující geometrie - slave boundary<br />
– porovnání výpočtu s analytickým řešením<br />
Slave<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Master<br />
pmax=3851MPa<br />
HUMUSOFT s.r.o.<br />
35 kN
Schema rotační pumpy<br />
75<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
– aplikační režim Chemical Eng. Eng.<br />
Modulu<br />
– Navier-Stokes<br />
Navier Stokes + Moving Mesh (ALE), bere v úvahu momentovou<br />
a hmotovou bilanci v rotačním souřad. souřad.<br />
systému<br />
– geometrie - assembly, assembly,<br />
vytvoření páru<br />
HUMUSOFT s.r.o.<br />
p=0<br />
vnitřní oblast<br />
vnější oblast<br />
neutral
76<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
HUMUSOFT s.r.o.<br />
• Požadavky na HW<br />
– Windows 2000, Windows XP, Windows XP Professional x64 Edition, Edition,<br />
Windows<br />
Vista<br />
– Pentium III nebo novější (AMD Opteron, Opteron,<br />
AMD Athlon 64, Pentium 4 s EM64T,<br />
nebo Xeon s EM64T)<br />
– OpenGL 1.1 Microsoft nebo akcelerátor podporující OpenGL 1.1, nebo Direct X<br />
verze 8.0 nebo pozdější. Grafická karta min. 32 MB paměti.<br />
– Pro práci s <strong>MATLAB</strong>em verze <strong>MATLAB</strong> 6.5, 6.5.1, 7.0, 7.0.1, 7.0.4, 7.1,<br />
2006a, 2006b<br />
– minimální doporužená RAM 1 GB<br />
• Unix<br />
– Solaris 8,9,10 (UltraSPARC<br />
( UltraSPARC II nebo pozdější)<br />
– Linux (AMD Opteron, Opteron,<br />
AMD Athlon 64, EM64T, Itanium 2)<br />
– Debian 3.0, RedHat Enterprise 4, Fedora Core 5, SUSE 9.0, 9.3, 10.1<br />
– 64-bit: SUSE 9.0, 9.3 10.1, RedHat Enterprise 4 (AMD64/Intel EM64T)<br />
– MAC, PowerPC G4 nebo PowerPC G5, Intel processor
77<br />
<strong>COMSOL</strong> <strong>Multiphysics</strong><br />
Děkuji za pozornost.<br />
Karel Bittner<br />
bittner@humusoft<br />
bittner humusoft.cz cz<br />
HUMUSOFT s.r.o.