Sestavení projektu programu OptiSLang
Na této stránce je popsáno definování nového projektu a vytvoření obslužných souborů.Nový projekt v programu OptiSLang začínáme definováním projektu a adresáře projektu (animace 1).
Do adresáře projektu pak nahrajeme vstupní a výstupní soubory OptiSLangu a další potřebné soubory. Prvním souborem, který do adresáře nahrajeme, bude soubor modelu MSC.Marc pasek.mud.
Jelikož naším úkolem je optimalizovat úhel sklonu vláken potřebujeme vstupní (textový) soubor, který změní úhel vláken modelu na požadovanou hodnotu. Takovým souborem bude soubor zmen_uhel.proc obsahující příkazy:
*open_model ..\..\pasek.mud |
*set_orient_angle |
-40.4 |
*write_marc pasek_uprava.dat yes |
*quit yes |
Při přípravě vstupního souboru je nutné myslet na několik věcí. Vstupní soubor bude v každém kroku optimalizace tištěn do nového adresáře (..\adresář projektu\adresář analýzy\DesignXXXX) a proto soubory v adresáři projektu budou umístěny o dva adresáře výše než samotný vstupní soubor (viz. pasek.mud - 1. řádek kódu). Z tohoto důvodu je dobré používat relativní cesty souborů. Dále je vhodné čísla proměnných v souboru zadávat v odpovídajícím tvaru (reálná čísla s desetinou čárkou, maximální počet číslic), aby nedocházelo ke změně typu při načítání do programu OptiSlang. Poslední věcí je použití formátu .dat na uložení modelu (pasek_uprava.dat - 4. řádek kódu) do adresáře kroku analýzy (DesignXXXX), tak aby mohl být výpočet spuštěn z příkazové řádky.
Dále do adresáře projektu zkopírujeme výstupní soubor, tedy soubor obsahující hodnoty nutné k vyčíslení cílové funkce. V našem případě je to soubor pruhyb.txt získaný použitím pasek_vyhodnot.proc, který byl použit pro vyhodnocení na stránce zadání testovací úlohy. Tento .proc soubor uložíme do adresáře projektu pod názvem vyhodnot.proc s tím, že upravíme první řádek na:
*post_open pasek_uprava.t16 |
Posledním souborem, který budeme potřebovat je dávkový soubor krok.bat (vytvořený textovým editorem) obsahující příkazy:
call mentat -bg -pr zmen_uhel.proc |
call run_marc -j pasek_uprava |
copy ..\..\vyhodnot.proc |
call mentat -bg -pr vyhodnot.proc |
Za upozornění stojí, že .proc soubory jsou spouštěny pomocí příkazu mentat s argumentem -bg (běh v pozadí) a že MKP výpočet je spuštěn pomocí příkazu call, aby dávkový soubor počkal na jeho dokončení. Průběh jednoho kroku analýzy lze tedy popsat takto:
→
OptiSLang vytiskne do adresáře kroku analýzy soubor zmen_uhel.proc s pozměněným úhlem
→
OptiSLang pustí dávkový soubor krok.bat v adresáři analýzy
→
Provede se 1.řádek - zmen_uhel.proc → upraví se MKP model a uloží se jako pasek_uprava.dat
→
Provede se 2. řádek - call run_marc -j pasek_uprava → provede se MKP výpočet a výsledky jsou uloženy do pasek_uprava.t16
→
Provede se 3.řádek - copy ..\..\vyhodnot.proc → do adresáře kroku analýzy je zkopírován soubor vyhodnot.proc z adresáře projektu
→
Provede se 4. řádek - vyhodnot.proc → načte soubor výsledků pasek_uprava.t16 a je vytištěn soubor pruhyb.txt
→
OptiSLang načte parametr průhybu ze souboru pruhyb.txt a vyčíslí cílovou funkci pro daný krok
Nyní zbývá již jen definovat parametry v programu OptiSlang, propojit je se vstupním a výstupním souborem a definovat cílovou funkci. Tyto úkony se provedou pomocí editoru parametrů (animace 2).