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 ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
5.5. ADAPTION DES DIENSTES NETZBERECHNUNG 105<br />
anz_vars = 8 ;<br />
anz_pars = 10 ;<br />
anz_funs = 4 ;<br />
state<br />
break;<br />
= PUQMode ;<br />
case<br />
...<br />
PUQMode :<br />
default:<br />
break;<br />
}<br />
}<br />
Die folgenden Zeilen zeigen die erzeugte Methode GetAElem() des<br />
PU-Generators. Diese zentrale Methode erzeugt für alle spezifizierten<br />
Zustände je einen Zugriff auf die schwach besetzte Jacobi-Matrix. Er<br />
wird durch geschachtelte Abfrage mittels case-Anweisungen implementiert.<br />
Der Default-Fall liefert den Wert 0 zurück. Für die Nichtnullen der<br />
Matrix setzt die Adaption das aus den Spezifikationen von Vars, Funs und<br />
StateDefs symbolisch berechnete Jacobi-Element ein.<br />
double PUGen :: GetAElem(int i, int j, int state)<br />
{<br />
double t0;<br />
switch(state) {<br />
case PUMode :<br />
switch(i) {<br />
case 1 :<br />
switch (j) {<br />
case 1 :<br />
t0 = 1.0 ;<br />
return t0;<br />
break;<br />
case 3 :<br />
t0= -P1/(e1*e1+f1*f1)<br />
+ 2.0*(e1*P1+f1*Q1)/<br />
pow(e1*e1+f1*f1,2.0)*e1-G ;<br />
return t0;<br />
break;<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