1 / 29

Uživatelské funkce a jejich aplikace VŠB FAST Ostrava

Uživatelské funkce a jejich aplikace VŠB FAST Ostrava. Ing. Petr Kalčev 25. 10. 2007. Doc. Ing. Václav Beran, DrSc., Doc. Ing. Petr Dlask, Ph.D. Obsah. Opakování. „Historia magistra vita es. ”. Motivace!!!. Základ matematického modelování. Definování cíle projektu Definování rozsahu

malo
Download Presentation

Uživatelské funkce a jejich aplikace VŠB FAST Ostrava

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Uživatelské funkce a jejich aplikaceVŠB FAST Ostrava Ing. Petr Kalčev 25. 10. 2007 Doc. Ing. Václav Beran, DrSc., Doc. Ing. Petr Dlask, Ph.D.

  2. Obsah

  3. Opakování „Historia magistra vita es.” Motivace!!!

  4. Základ matematického modelování • Definování cíle projektu • Definování rozsahu • Definování použitých nástrojů • Definování problému • Nelze obecně definovat => lze jen určit možné postupy Projekty jsou rozmanité Jak to??? Projekt je vždy unikátní!!!

  5. Otázky • Definice vazby (interakce) v modelu. • Jaký je verbální popis interakce? • Jaké hodnoty mohou nabývat vazby (interakce)? • Jaké hodnoty mohou mít prvky modelu? • Jaké hodnoty nabývají objemové parametry modelu? • Jaké hodnoty se mohou vyskytovat v diferencích? • Jaké jsou možné aplikace modelu (mentálního modelu) … např. rozvojový model, regionální model, modely degradace, sociální model – uveden dále.

  6. Ginger a Fred Ginger Fred

  7. Verbální popis Nedávno nastoupila do firmy, kde pracuje Fred. Ráda se věnuje módě, poznávání nových věcí, má ráda kulturu a tíhne k rodině. Ginger Fred pracuje na pozici vedoucího oddělení a rád by získal manažerskou pozici. Ve volném čase hraje volejbal či sleduje závody formulí nebo si zahraje na klavír. Fred

  8. Rich picture - model + Ginger Fred +

  9. Vývoj vztahu Ginger a Freda 1 Občas nerozumí jejímu humoru (víc se mu už nemůže zalíbit). Počáteční podmínky Intenzita Hned jak spatřil Ginger, tak se mu líbila. Miluje černovlásky. Freda si nikdy předtím nevšimla 0 Čas

  10. Ohodnocení interakcí - verbální +0,13 +/- Ginger Fred +/- +0,08

  11. Hodnocení - technická stupnice Ginger Fred

  12. Zlehka do maker a VBA To muselo být hodně psaní!!! NE!!! Private Sub sbCervena_Change() Label1.BackColor = RGB(sbCervena, sbZelena, sbModra) End Sub Private Sub sbModra_Change() Label1.BackColor = RGB(sbCervena, sbZelena, sbModra) End Sub Private Sub sbZelena_Change() Label1.BackColor = RGB(sbCervena, sbZelena, sbModra) End Sub

  13. Další příklady FOR cyklus Vloží se hodnota čísla cyklu. Cyklus, který poběží od 1 do hodnoty, která byla zvolena v seznamu pro počet opakování. Veme se text z textového pole (TextBox). Private Sub cbGeneruj_Click() For i = 1 To cbPocet Text = Text & i & "." & vbTab & tbVeta & vbNewLine Next tbVysledek = Text End Sub Slouží jen k formátování výstupu. WHILE cyklus Slouží jen k formátování výstupu.

  14. Záznamník makra • Zaznamená každý „krok“ uživatele!!! Používáme tehdy, když opakujeme nějakou činnost, např. formátování, vkládání vzorců, …

  15. Výhody a nevýhody • Výhody: • Není zapotřebí znát VBA. • Rychlý vývoj kódu. • Nevýhody: • Záznamník přidává obrovské množství kódu navíc. I scrollování, přepínání mezi listy, apod. • Jen pro záznam malých částí složitějších maker. • Neumí generovat kód, který má vytvářet smyčky.

  16. Porovnání kódu Záznamník makra Zápis pomocí VBA Sub Makro1() Range("C6").Select With Selection.Interior .ColorIndex = 11 .Pattern = xlSolid End With Selection.Font.ColorIndex = 2 ActiveCell.FormulaR1C1 = "6548" Range("C7").Select End Sub Sub Makro1() With Range("C6") .Interior.ColorIndex = 11 .Font.ColorIndex = 2 .Value = "6548" End with End Sub

  17. Motivace – proč ovládat makra a VBA AUTOMATIZACE EA PVE Optimalizace

  18. User-Defined Function • Definovat jak ji určit • Z jakých parametrů vychází • Co má být výsledkem • Mám dostatek informací k sestavení? Matematické vyjádření ANO

  19. Matematické vyjádření • Zápis pomocí Editor rovnic 3.0 (MS Equation) - EQNEDT32.EXE

  20. Vstupní model +0,13 Ginger Fred +0,200 +0,000 +0,08

  21. Zápis výpočtu pomocí VBA Poznámka:CELLS(řádek, sloupec) 2. období Cells(20,4).Value=Cells(8,4).Value* Cells(19,3).Value Cells(20,3).Value=Cells(15,4).Value*Cells(19,4).Value 3. období Cells(21,4).Value=Cells(8,4).Value* Cells(20,3).Value Cells(21,3).Value=Cells(15,4).Value*Cells(20,4).Value 4. období Cells(22,4).Value=Cells(8,4).Value* Cells(21,3).Value Cells(22,3).Value=Cells(15,4).Value*Cells(21,4).Value Řešit pomocí For-cyklu

  22. Zápis výpočtu pomocí VBA - zjednodušení For i=2 to 15 Cells(18+i,4).Value=Cells(8,4).Value* Cells(17+i,3).Value Cells(18+i,3).Value=Cells(15,4).Value*Cells(17+i,4).Value Next i Jak přijdu na 18+i? Chci, aby první hodnota byla zapsána do 20. řádku. Protože vím, že i bude mít minimální hodnotu 2, tak od 20 odečtu 2 a tím dostanu 18+i.

  23. Hledání řešení Buňka, která má nabýt cílové hodnoty. Vždy je v této buňce nějaký vzorec. Zde se uvede, jaké hodnoty má být dosaženo. Buňka, která se v průběhu simulace mění. Je vstupní buňkou pro nějaký vzorec.

  24. Ukázka hledání řešení • Hledám minimální hodnotu interakce Fred->Ginger, aby náklonnost (+0,05) zůstala stejná.

  25. Výsledek hledání řešení

  26. Souhrn • VBA a záznamník makra => jedno a to samé • Visual Basic for Application NENÍ klasický programovací jazyk • User-Defined Function – uživatel si definuje vlastní funkci pomocí které provádí výpočet • Pro zapsaní rovnice je možné použít Equation.

  27. Souhrn - pokračování • Funkce Hledání řešení – nástroj pro hledání jednoduchých úloh. Více o VBA: http://eko.fsv.cvut.cz/~dlask/Help/VBA.ppt http://eko.fsv.cvut.cz/~dlask/Help/VBAVlastniFce.ppt

  28. Otázky?

More Related