Vážení čtenáři časopisu IT CAD, napsal jsem pro vás článek, kterým vás, doufám, inspiruji. Přišlo mi neobyčejně zajímavé, že se na internetu vyskytují velmi kvalitní softwarové projekty distribuované zdarma, které se dají komerčně velmi pěkně využít. Taky je asi škoda, že se jim mnoho lidí nevěnuje. Buď o těchto projektech nevědí, nebo nevědí, jak s nimi začít apod. Proto jsem se odhodlal k napsání tohoto článku. Postupně v něm naleznete jak teoretickou část, kde naznačuji, co byste mohli dělat, tak mé praktické zkušenosti s popisem toho, co jsem dělal a zkoušel já.
Jak se v tom vyznat? Záplava softwaru se neustále rozrůstá. I toho softwaru, který je zdarma, i toho, který je placený. Běžnou situací dnešních dnů je volba, kdy se rozhodujeme, zda s něčím experimentovat, nebo ne. Čas jsou peníze. Teoreticky můžeme někde ušetřit za licence nebo vylepšit naši „virtuální pracovní účinnost“, ale taky můžeme bezvýsledně ztratit hodně času na zbytečných experimentech se špatnými programy, od kterých jsme původně očekávali velkou pomoc. Také se ale může stát, že existuje software, který je zdarma a přitom má pro nás komerčně použitelnou kvalitu. Prostě se jen ztrácí v té záplavě a my o něm nevíme. Tento článek si klade za cíl na jeden takový software přinejmenším upozornit. V lepším případě rozšířit jeho uživatelskou základnu. V tomto článku se budu nejvíce věnovat programu Salome, který je dostupný zdarma na internetu pod GNU GPL licencí. Program umí importovat geometrii ve STEP / IGES formátu, umí s ní manipulovat a umí ji exportovat zpátky do IGES / STEP. Protože Salome je součástí výpočtářského balíku, umí přesně ty úpravy geometrie, které mají výpočtáři rádi, např. udělat malé obloučky, vyříznout geometrii tam, kde konstruktér zapomněl, udělat generální kontrolu geometrie, celkově zjednodušit geometrii ap. Jednoduché použití Salome budu demonstrovat na dvou ilustrativních příkladech z praxe. První příklad bude na propojení Salome s COMSOL Multiphysics 3.4, druhý příklad na propojení Salome a ANSYSu 12.0. Závěrem se trochu rozepíši o jiných potenciálních možnostech virtuálního experimentování a v průběhu článku si sem tam neodpustím nějakou tu ironickou poznámku ;-) Électricité de France (EDF) Je to hooodně velká francouzská společnost, která vyrábí elektřinu. Podle Wikipedie vyrobila v roce 2003 22 % elektřiny vyrobené v EU, z toho 74,5 % v jaderných elektrárnách. V roce 2004 měla aktivních 58 jaderných reaktorů. V roce 2009 u ní pracovalo 169 140 lidí. Takový drobeček, který se na stránky časopisu IT CAD dostal kvůli jedné věci. Tato společnost dlouho vyvíjela vlastní in-house výpočtářský software, který pak postupně uvolnila pod GNU GPL licencí. Software umí naimportovat geometrii z CADu, spočítat mechanické úlohy, tepelné úlohy a úlohy z proudění kapalin. Halelůja!!! Halelůja?! Zlí jazykové tvrdí, že software bude zdarma, než si vybuduje přijatelnou (tj. velkou) uživatelskou základnu. Pak prý zdraží. Napřed trochu, pak víc a pak to bude normální pálka. To nevím, netuším. Já zase potutelně tvrdím, že uvolnění balíku tajně sponzorovala francouzská vláda, která takto tiše protlačuje francouzštinu jako světový jazyk matematického modelování (viz právo a francouzština). Popravdě řečeno učení je (výrazně!) namáhavější a horší než u „normálních“ komerčních produktů. Na druhou stranu máte šanci ušetřit na licencích :-) Pokud ale nic z těch pomluv není pravda, tak naučit se alespoň trochu pracovat s programy od EDF se člověku v konečném důsledku může vyplatit. Salome – reálné použití a ušetřené penízky Já osobně z celého balíku softwarových možností od EDF používám zatím pouze Salome, protože už je celé v angličtině a funguje. Postupně by měla být přeložena i dokumentace ostatních programů od EDF. Pak to bude opravdu zajímavé (pozn. pro optimisty – dokumentace se už pár let překládá a dobrovolníci stále ještě nemají všechny nadpisy kapitol zvládnuté ;-)) Salome funguje asi takto: V prvním kroku se v něm vytvoří geometrické zadání úlohy, které se následně vysíťuje. V druhém kroku se úloha spustí v některém z navazujících externích řešičů. Vyřešená úloha se opět načte do Salome pro post-processing. Salome je velmi dobře přeloženo do angličtiny a na oficiálních stránkách [1] jsou přístupné tutoriály, které případné zájemce provedou příklady na obsluhu a manipulaci s geometrií. Salome je tedy schopno jak načíst, upravit a exportovat CAD geometrii, tak ji i síťovat. Oficiální manipulátory s geometrií pro výpočetní nástroje obvykle stojí několik tisícovek (eur ;-)) Toto je vlastnost Salome, kterou bych velmi rád nad ty ostatní vlastnosti vyzdvihl. Praktická část – prohlášení o neodpovědnosti Chtěl bych zde čestně prohlásit, že postupy, které budu demonstrovat, nemusí vždy fungovat. Lépe řečeno: zde uvedené postupy ne vždy fungují. Tzn. ani Salome vám nemusí pomoci. Občas prostě geometrie opravdu rozumně naimportovat nejde. Jen tak pro jistotu... Hezký příklad použití z praxe číslo 1 – Comsol Multiphysics 3.4 Pokud nic nenaimportujete, tak ani nic nespočítáte. Pokud nic nespočítáte, nevykážete činnost. Co ale když geometrie naimportovat nejde?
Obr. 1. Interní chyba, model se nepodařilo importovat Obr. 2. Import do Salome a následně do COMSOLu 3.4 Na obr. 1 je geometrie po neúspěšném importu do Comsolu s odpovídajícím chybovým hlášením. Úkolem celého výpočtu bylo pohlídat si, aby senzor při montáži v servisu nepraskl při zatlačení na konektor. Aby geometrie fungovala, stačilo ji načíst do Salome, v menu Repair zvolit Shape Processing, nechat defaultní nastavení, kliknout na OK (viz obr. 2). Poté už jen dát export. Na obr. 3 je úspěšně vytvořená výpočetní síť v Comsolu na už upravené geometrii. Na obr. 4 je provedený výpočet statického zatížení konektoru silou. Tento výpočet by v Comsolu bez Salome neexistoval. Přesto tento postup má malou vadu na kráse – občas nefunguje. Tady třeba úprava pomohla IGES geometrii, když jsem ale ten samý postup zkoušel na STEP geometrii, už nefungoval a měl jsem stále chybu importu. Závěr tohoto příkladu bych shrnul takto: Pokud je v geometrii něco špatně, co váš CAE výpočtový nástroj při importu nepřeloží, tak ani Salome mu nemusí pomoci. Ale může!!! :-) Mám to odzkoušené.
Obr. 3. Výpočetní síť po úpravě v Salome Obr. 4. Výpočet výchylky při zatížení konektoru stat. silou Hezký příklad použití z praxe číslo 2 – ANSYS v12.0 Představte si, že nemáte zaplacený Design Modeler pro ANSYS, a nejste tedy schopni udělat sebemenší úpravu geometrie. Tato situace vznikla, když se předpokládalo, že mechanická konstrukce vždy vypustí dobrý virtuální model. Což je víceméně pravda. V realitě je geometrie většinou v pořádku až na nějaký drobný detail. A ani tento detail nejste schopni upravit bez licence na geometrickou úpravu. Pokud tedy nevíte o Salome. V tomto příkladu jsem hledal první vlastní frekvenci takzvaného NTC holderu (NTC holder je terminologie vývoje senzorů ve Frenštátě p. R. a znamená NTC s plastovou oporou). Proč je toto téma zajímavé, si můžete přečíst tady [2]. V každém případě se to nějak stalo a chybou exportu geometrie do STEPu z pro/E zmizely dírky pro nožičky v hlavičce NTC (viz obr. 5 a obr. 6).
Obr. 5. ANSYS 12.0 - NTC holder vypadá v pořádku Obr. 6. ANSYS 12.0 Detail chyb exportu Takováto geometrie se nedá spočítat, je pro řešič nesmyslná (geometrické objekty se objemově prolínají). Dá se to ale několika kliknutími v Salome opravit, poté úspěšně naimportovat do ANSYSu a spočítat (viz obr. 7 a obr. 8). 
Obr. 7. ANSYS 12.0 – série jednoduchých úprav v Salome Obr. 8. ANSYS 12.0 – po úpravě už model lze spočítat Řešení pomocí Salome je hezké, funkční a hlavně levné. Netuším, jak by v Salome dopadly úpravy složitějších geometrií, případně složité úpravy jako takové. Salome je v praxi použitelné minimálně na jednoduché úpravy geometrie v IGES a STEP. A to se hodí, ne, navíc když je celé zdarma? Virtualizační berličky vám mohou pomoci Jak Salome použít, pokud zrovna nejste přímo příznivcem operačního systému s tučňákem v logu? A co když nedáte dopustit na svůj MAC? Co pak? Jednou z možností je počkat, až se těžce vývojová verze Salome pro Windows stane méně těžce vývojovou verzí Salome pro Windows a bude trochu fungovat. Ta doba určitě přijde. Možná se objeví verze i pro Apple. Ale co když nechcete čekat? Mně se nejpřijatelnější možností jeví projekt CAELinux. Je to projekt jednoho člověka (asi trochu šíleného), který se snaží shrnout co nejvíce výpočtářského softwaru pod otevřenými licencemi dohromady a dát je do jedné linuxové live distribuce. Jedním z nich je i Salome. Verze CAELinuxu z roku 2008 má i svůj VMware obraz (pro ty rozmlsané), verze CAELinuxu z roku 2009 má už jen ISO pro live distribuci. A live distribuce se lehce spouští ve Virtual Boxu od SUNu, že :-) Mezi nevýhody virtualizace patří její hlad po zdrojích, na druhou stranu je velmi pohodlná :-) Salome není samo EDF neuvolnilo jen samotné Salome. V tom je ta krása. Uvolnilo i řešiče pro teplotní, mechanické a CFD úlohy. Ty se dají sdružovat a dá se mluvit o klasické numerické multifyzice tak, jak by klasická numerická multifyzika měla vypadat :-)) Zbytek článku věnuji jejich popisu. Pro masovější rozšíření těchto programů je klíčové úspěšné dokončení překladu jejich dokumentace. Ten zatím není hotov. Potenciál je ale velký. Sám jsem je ale nijak pečlivě netestoval, pouze jsem prošel některé tutoriály. Moc se ale těším, až budu mít trochu času a… Syrthes Mně osobně se líbí nejvíc. Sice jsem ho nikdy neměl spuštěný a o tom, že existuje, vím pouze z Wikipedie, ale stejně. Je to jeden z mála programů, který je zdarma (GNU GPL) a má v sobě možnost výpočtu přenosu tepla zářením. Ne každý sice vypočítává rozložení teploty v pecích od 800 stupňů výše, přesto se taková vlastnost může hodit. Proto se mi Syrthes líbí. Teoreticky, přiznávám, nezkoušel jsem ho. Mraky open source softwaru umí Large Eddy, k-omega, přenos tepla vedením, výpočet mechanického stresu při zatížení statickou silou atd. atd. Ale jen velmi málo umí přenos tepla zářením. Přenos tepla zářením beru jako takový osobní benchmarkový test, podle kterého určuji vyspělost výpočtářského softwaru. Code Aster 1246 dokumentů lehce dostupných. Super. Ehm. Pokud teda umíte francouzsky. Vy neumíte francouzsky? Code Aster má cca 1 500 000 řádek kódu napsaného převážně v Pythonu a Fortranu (pro srovnání Windows 95 měly 5 miliónů řádek kódu). Není to žádný drobeček a podle dokumentace je velmi vyspělý. Dokáže počítat kontakty, velké deformace, vibrační analýzy. Čistě podle dokumentace má implementované vlastnosti, za které normálně jinde platíte desítky tisíc eur. Problém bych viděl spíš v té francouzštině. Co ušetříte za licence, dáte za lektorku francouzštiny a čas. Třeba to ale bude mladá milá hezká professeur de Français ;-) Code Saturne Má podobné pozadí jako Code Aster. Také je velmi vyspělý, řeší proudění kapalin. Umí řešit i turbulentní proudění a proudění s přestupem tepla aj. Je balík softwaru od EDF vhodný pro začátečníky? Z předchozího článku jste mohli získat názor, že na internetu existuje výpočtářský software, který je zdarma a má úžasné vlastnosti. Ano i ne. Smiřte se s velkým nepohodlím, pokud začnete. Jedině Salome je velmi pěkně přeloženo do angličtiny. Překlad do angličtiny u zbylých balíků zatím stále pokulhává. Takže: Je balík softwaru od EDF vhodný pro začátečníky? To je otázka, na kterou si vůbec netroufám odpovědět. Závěr Zajímaly by mě názory vás čtenářů (i redakci by určitě zajímaly názory vás čtenářů a určitě i ostatní čtenáře by zajímaly názory jiných čtenářů. Salome může pomoct, pokud používáte STEP / IGES. Pokud používáte parasolid, můžete také použít Salome, ale musíte zase trochu platit (za modul importu parasolidu do Salome, ten není zdarma). Pokud exportujete do výpočtářského softwaru přímo z pro/E nebo CATIE, Salome vám nepomůže. Pokud jsou ve vaší společnosti výpočty denní chleba, Salome asi zdržuje. Pokud chcete nebo musíte experimentovat, Salome by vám mohlo pomoci. Co ale používáte ve skutečnosti?
Odkazy: [1] www.salome-platform.org [2] http://dsp.vscht.cz/konference_matlab/MATLAB09/prispevky/029_gajdarus.pdf
|