11.10.2013 Aufrufe

Diss.-ETH 12317 Diss.-ETH 12317 Diss.-ETH 12317 Diss.-E Eine ...

Diss.-ETH 12317 Diss.-ETH 12317 Diss.-ETH 12317 Diss.-E Eine ...

Diss.-ETH 12317 Diss.-ETH 12317 Diss.-ETH 12317 Diss.-E Eine ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

5.5. ADAPTION DES DIENSTES NETZBERECHNUNG 101<br />

Summengeber-Typ Kirchhoff-Knoten<br />

Der Prozedurkopf deklariert den Namen der Spezifikations-Prozedur des<br />

Summengeber-Typen “Kirchhoff-Knoten”. Der Typ-Name lautet Knoten.<br />

Es gibt vier Fehlerfunktionen, aus denen sich durch Nullsetzen die Menge<br />

der Gleichungen E ergibt. Die ersten beiden Gleichungen formulieren<br />

Nullsummen für Real- und Imaginärteil des Stromes ie + j · i f . Die<br />

restlichen Gleichungen formulieren den Wertausgleich aller Spannungen<br />

e + j · f . Das Verhalten eines Summengeber-Typs wird durch eine beliebige<br />

Menge von Elementarsummen festgelegt. Im folgenden Code-<br />

Ausschnitt werden vier Elementarsummen parametriert. Die Parameter<br />

jeder Elementarsumme werden mit dem Datentyp table als Einheit zusammengefasst<br />

und komponentenweise im Vektor Funs gesammelt. Die<br />

einzelnen Felder des Datentyps table bezeichnen den Typ der Elementarsumme,<br />

einen gemeinsamen Basisnamen, der Name einer optionalen<br />

Variablen und der Name eines optionalen Parameters.<br />

SumSetter[DefKnoten] := proc()<br />

global Funs, AnzFuns, SumSetterType;<br />

SumSetterType := ‘Knoten‘;<br />

AnzFuns := 4;<br />

Funs := vector(AnzFuns);<br />

Funs[1]:= table([ElementarFunTyp=EinzeiligeSumme,<br />

ExternalVarName=‘ie‘,<br />

LocVarName=0,<br />

Parameter=0] );<br />

Funs[2]:= table([ElementarFunTyp=EinzeiligeSumme,<br />

ExternalVarName=‘if‘,<br />

LocVarName=0,<br />

Parameter=0] );<br />

Funs[3]:= table([ElementarFunTyp=MehrzeiligeSumme,<br />

ExternalVarName=‘e‘,<br />

LocVarName=0,<br />

Parameter=0] );<br />

Funs[4]:= table([ElementarFunTyp=MehrzeiligeSumme,<br />

ExternalVarName=‘f‘,<br />

LocVarName=0,<br />

Parameter=0] );<br />

end:<br />

<strong>Diss</strong>.-<strong>ETH</strong> <strong>12317</strong> <strong>Diss</strong>.-<strong>ETH</strong> <strong>12317</strong> <strong>Diss</strong>.-<strong>ETH</strong> <strong>12317</strong> <strong>Diss</strong>.-E

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!