wiki:SpecialTask

Special Task

Aufgabe: Es soll der Wert einer Variablen aus einem Slot über mehrere Ebenen "nach oben" und eine Ebene "nach unten" gegeben werden.
Das ganze soll möglichst ohne Adapter und "visuelle" Links passieren

Beispiel: Klasse b enthält die Slots a und c. Klasse a enthält ein "Storage", welches ein Terminal mit der Variablen c0 enthält. c0 soll in Klasse c verfügbar gemacht werden.
Vorschlag:

(define-module
  :class "class_a"
  :super-classes ("dynamic-model")
  :modules
  (("storage_intra"
    :is-a "storage-intra")
   ("trans1a_fi1"
    :is-a "trans1a-fi1"))
  :links
  (("storage_intracf_trans1a_fi1a"
    :terminals ("storage_intra.cf" "trans1a_fi1.a")))
  :variables
  (("c"
    :is-a "var-state-concentration-out"))
  :equations
  (("test"
    :relation "c == storage_intra.cf.c")))


(define-module
  :class "class_c"
  :super-classes ("dynamic-model")
  :variables
  (("c"
    :is-eq-to "parent.c")
   ("e"
    :is-a "var-state-concentration-out"))
  :equations
  (("testc"
    :relation "e == c")))


(define-module
  :class "class_b"
  :super-classes ("dynamic-model")
  :modules
  (("class_a"
    :is-a "class_a")
   ("class_c"
    :is-a "class_c"))
  :variables
  (("c"
    :is-a "var-state-concentration-out"))
  :equations
  (("test"
    :relation "c == class_a.c")))
Last modified 16 years ago Last modified on Jan 14, 2010, 8:27:38 AM