diff options
author | Erich Eckner <git@eckner.net> | 2015-08-07 16:52:05 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2015-08-07 16:52:05 +0200 |
commit | 6e9ff86a556e5afc555d1580a70ecbf5f301c987 (patch) | |
tree | e37e2048e9df2303ae7bdfced320e3e359f0a991 /linearkombination.inc | |
parent | 313dc9c91ed794336898054a8e0d328e09875359 (diff) | |
download | Plasmapropagation-6e9ff86a556e5afc555d1580a70ecbf5f301c987.tar.xz |
auf Vlasov-Gleichungen umgeschrieben,
braucht viel zu viel Speicher, da 3D im Impuls
Diffstat (limited to 'linearkombination.inc')
-rw-r--r-- | linearkombination.inc | 247 |
1 files changed, 168 insertions, 79 deletions
diff --git a/linearkombination.inc b/linearkombination.inc index 6250006..0f74497 100644 --- a/linearkombination.inc +++ b/linearkombination.inc @@ -1,7 +1,93 @@ +// Werte werden auf (in1 + \sum_i faki * ini') gesetzt + +procedure tImpulsPunkt.liKo(in1,in2 +{$IFDEF lkA3},in3 +{$IFDEF lkA4},in4 +{$IFDEF lkA5},in5 +{$IFDEF lkA6},in6 +{$IFDEF lkA7},in7 +{$IFDEF lkA8},in8 +{$IFDEF lkA9},in9 +{$IFDEF lkA10},in10 +{$IFDEF lkA11},in11 +{$IFDEF lkA12},in12 +{$IFDEF lkA14},in13,in14 +{$IFDEF lkA15},in15 +{$IFDEF lkA16},in16 +{$IFDEF lkA17},in17 +{$IFDEF lkA18},in18 +{$IFDEF lkA19},in19 +{$IFDEF lkA22},in20,in21,in22 +{$IFDEF lkA23},in23 +{$IFDEF lkA31},in24,in25,in26,in27,in28,in29,in30,in31 +{$IFDEF lkA32},in32 +{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}: tImpulsPunkt; +fak2 +{$IFDEF lkA3},fak3 +{$IFDEF lkA4},fak4 +{$IFDEF lkA5},fak5 +{$IFDEF lkA6},fak6 +{$IFDEF lkA7},fak7 +{$IFDEF lkA8},fak8 +{$IFDEF lkA9},fak9 +{$IFDEF lkA10},fak10 +{$IFDEF lkA11},fak11 +{$IFDEF lkA12},fak12 +{$IFDEF lkA14},fak13,fak14 +{$IFDEF lkA15},fak15 +{$IFDEF lkA16},fak16 +{$IFDEF lkA17},fak17 +{$IFDEF lkA18},fak18 +{$IFDEF lkA19},fak19 +{$IFDEF lkA22},fak20,fak21,fak22 +{$IFDEF lkA23},fak23 +{$IFDEF lkA31},fak24,fak25,fak26,fak27,fak28,fak29,fak30,fak31 +{$IFDEF lkA32},fak32 +{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}: extended); +var + i: longint; +begin + for i:=0 to length(werte)-1 do + werte[i,false]:= + in1.werte[i,false] + + fak2 * in2.werte[i,true] {$IFDEF lkA3} + + fak3 * in3.werte[i,true] {$IFDEF lkA4} + + fak4 * in4.werte[i,true] {$IFDEF lkA5} + + fak5 * in5.werte[i,true] {$IFDEF lkA6} + + fak6 * in6.werte[i,true] {$IFDEF lkA7} + + fak7 * in7.werte[i,true] {$IFDEF lkA8} + + fak8 * in8.werte[i,true] {$IFDEF lkA9} + + fak9 * in9.werte[i,true] {$IFDEF lkA10} + + fak10 * in10.werte[i,true] {$IFDEF lkA11} + + fak11 * in11.werte[i,true] {$IFDEF lkA12} + + fak12 * in12.werte[i,true] {$IFDEF lkA14} + + fak13 * in13.werte[i,true] + + fak14 * in14.werte[i,true] {$IFDEF lkA15} + + fak15 * in15.werte[i,true] {$IFDEF lkA16} + + fak16 * in16.werte[i,true] {$IFDEF lkA17} + + fak17 * in17.werte[i,true] {$IFDEF lkA18} + + fak18 * in18.werte[i,true] {$IFDEF lkA19} + + fak19 * in19.werte[i,true] {$IFDEF lkA22} + + fak20 * in20.werte[i,true] + + fak21 * in21.werte[i,true] + + fak22 * in22.werte[i,true] {$IFDEF lkA23} + + fak23 * in23.werte[i,true] {$IFDEF lkA31} + + fak24 * in24.werte[i,true] + + fak25 * in25.werte[i,true] + + fak26 * in26.werte[i,true] + + fak27 * in27.werte[i,true] + + fak28 * in28.werte[i,true] + + fak29 * in29.werte[i,true] + + fak30 * in30.werte[i,true] + + fak31 * in31.werte[i,true] {$IFDEF lkA32} + + fak32 * in32.werte[i,true] + {$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}; + +end; // Werte werden auf (in1 + \sum_i faki * ini') gesetzt -procedure tWertePunkt.liKo(in1,in2 +procedure tRaumPunkt.liKo(in1,in2 {$IFDEF lkA3},in3 {$IFDEF lkA4},in4 {$IFDEF lkA5},in5 @@ -22,7 +108,7 @@ procedure tWertePunkt.liKo(in1,in2 {$IFDEF lkA23},in23 {$IFDEF lkA31},in24,in25,in26,in27,in28,in29,in30,in31 {$IFDEF lkA32},in32 -{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}: tWertePunkt; +{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}: tRaumPunkt; fak2 {$IFDEF lkA3},fak3 {$IFDEF lkA4},fak4 @@ -46,8 +132,7 @@ fak2 {$IFDEF lkA32},fak32 {$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}: extended); var - emF: tEMFeldInhalt; - maF: tMaterieFeldInhalt; + emF: tEMFeldGroesze; i: longint; begin (* tEMFeldInhalt = ( @@ -56,82 +141,87 @@ begin efDPhiDX ); *) for emF:=erstesEMFMitAbleitung to letztesEMFMitAbleitung do - emWerte[emF,false]:= - in1.emWerte[emF,false] - + fak2 * in2.emWerte[emF,true] {$IFDEF lkA3} - + fak3 * in3.emWerte[emF,true] {$IFDEF lkA4} - + fak4 * in4.emWerte[emF,true] {$IFDEF lkA5} - + fak5 * in5.emWerte[emF,true] {$IFDEF lkA6} - + fak6 * in6.emWerte[emF,true] {$IFDEF lkA7} - + fak7 * in7.emWerte[emF,true] {$IFDEF lkA8} - + fak8 * in8.emWerte[emF,true] {$IFDEF lkA9} - + fak9 * in9.emWerte[emF,true] {$IFDEF lkA10} - + fak10 * in10.emWerte[emF,true] {$IFDEF lkA11} - + fak11 * in11.emWerte[emF,true] {$IFDEF lkA12} - + fak12 * in12.emWerte[emF,true] {$IFDEF lkA14} - + fak13 * in13.emWerte[emF,true] - + fak14 * in14.emWerte[emF,true] {$IFDEF lkA15} - + fak15 * in15.emWerte[emF,true] {$IFDEF lkA16} - + fak16 * in16.emWerte[emF,true] {$IFDEF lkA17} - + fak17 * in17.emWerte[emF,true] {$IFDEF lkA18} - + fak18 * in18.emWerte[emF,true] {$IFDEF lkA19} - + fak19 * in19.emWerte[emF,true] {$IFDEF lkA22} - + fak20 * in20.emWerte[emF,true] - + fak21 * in21.emWerte[emF,true] - + fak22 * in22.emWerte[emF,true] {$IFDEF lkA23} - + fak23 * in23.emWerte[emF,true] {$IFDEF lkA31} - + fak24 * in24.emWerte[emF,true] - + fak25 * in25.emWerte[emF,true] - + fak26 * in26.emWerte[emF,true] - + fak27 * in27.emWerte[emF,true] - + fak28 * in28.emWerte[emF,true] - + fak29 * in29.emWerte[emF,true] - + fak30 * in30.emWerte[emF,true] - + fak31 * in31.emWerte[emF,true] {$IFDEF lkA32} - + fak32 * in32.emWerte[emF,true] + emFelder[emF,false]:= + in1.emFelder[emF,false] + + fak2 * in2.emFelder[emF,true] {$IFDEF lkA3} + + fak3 * in3.emFelder[emF,true] {$IFDEF lkA4} + + fak4 * in4.emFelder[emF,true] {$IFDEF lkA5} + + fak5 * in5.emFelder[emF,true] {$IFDEF lkA6} + + fak6 * in6.emFelder[emF,true] {$IFDEF lkA7} + + fak7 * in7.emFelder[emF,true] {$IFDEF lkA8} + + fak8 * in8.emFelder[emF,true] {$IFDEF lkA9} + + fak9 * in9.emFelder[emF,true] {$IFDEF lkA10} + + fak10 * in10.emFelder[emF,true] {$IFDEF lkA11} + + fak11 * in11.emFelder[emF,true] {$IFDEF lkA12} + + fak12 * in12.emFelder[emF,true] {$IFDEF lkA14} + + fak13 * in13.emFelder[emF,true] + + fak14 * in14.emFelder[emF,true] {$IFDEF lkA15} + + fak15 * in15.emFelder[emF,true] {$IFDEF lkA16} + + fak16 * in16.emFelder[emF,true] {$IFDEF lkA17} + + fak17 * in17.emFelder[emF,true] {$IFDEF lkA18} + + fak18 * in18.emFelder[emF,true] {$IFDEF lkA19} + + fak19 * in19.emFelder[emF,true] {$IFDEF lkA22} + + fak20 * in20.emFelder[emF,true] + + fak21 * in21.emFelder[emF,true] + + fak22 * in22.emFelder[emF,true] {$IFDEF lkA23} + + fak23 * in23.emFelder[emF,true] {$IFDEF lkA31} + + fak24 * in24.emFelder[emF,true] + + fak25 * in25.emFelder[emF,true] + + fak26 * in26.emFelder[emF,true] + + fak27 * in27.emFelder[emF,true] + + fak28 * in28.emFelder[emF,true] + + fak29 * in29.emFelder[emF,true] + + fak30 * in30.emFelder[emF,true] + + fak31 * in31.emFelder[emF,true] {$IFDEF lkA32} + + fak32 * in32.emFelder[emF,true] {$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}; -(* tMaterieFeldInhalt = ( - mfN,mfDPsiDX, - mfP,mfPX,mfPY,mfPZ, - mfGamma,mfIGamma - ); *) - for i:=0 to length(matWerte)-1 do // siehe oben - for maF:=erstesMatFMitAbleitung to letztesMatFMitAbleitung do - matWerte[i,maF,false]:= - in1.matWerte[i,maF,false] - + fak2 * in2.matWerte[i,maF,true] {$IFDEF lkA3} - + fak3 * in3.matWerte[i,maF,true] {$IFDEF lkA4} - + fak4 * in4.matWerte[i,maF,true] {$IFDEF lkA5} - + fak5 * in5.matWerte[i,maF,true] {$IFDEF lkA6} - + fak6 * in6.matWerte[i,maF,true] {$IFDEF lkA7} - + fak7 * in7.matWerte[i,maF,true] {$IFDEF lkA8} - + fak8 * in8.matWerte[i,maF,true] {$IFDEF lkA9} - + fak9 * in9.matWerte[i,maF,true] {$IFDEF lkA10} - + fak10 * in10.matWerte[i,maF,true] {$IFDEF lkA11} - + fak11 * in11.matWerte[i,maF,true] {$IFDEF lkA12} - + fak12 * in12.matWerte[i,maF,true] {$IFDEF lkA14} - + fak13 * in13.matWerte[i,maF,true] - + fak14 * in14.matWerte[i,maF,true] {$IFDEF lkA15} - + fak15 * in15.matWerte[i,maF,true] {$IFDEF lkA16} - + fak16 * in16.matWerte[i,maF,true] {$IFDEF lkA17} - + fak17 * in17.matWerte[i,maF,true] {$IFDEF lkA18} - + fak18 * in18.matWerte[i,maF,true] {$IFDEF lkA19} - + fak19 * in19.matWerte[i,maF,true] {$IFDEF lkA22} - + fak20 * in20.matWerte[i,maF,true] - + fak21 * in21.matWerte[i,maF,true] - + fak22 * in22.matWerte[i,maF,true] {$IFDEF lkA23} - + fak23 * in23.matWerte[i,maF,true] {$IFDEF lkA31} - + fak24 * in24.matWerte[i,maF,true] - + fak25 * in25.matWerte[i,maF,true] - + fak26 * in26.matWerte[i,maF,true] - + fak27 * in27.matWerte[i,maF,true] - + fak28 * in28.matWerte[i,maF,true] - + fak29 * in29.matWerte[i,maF,true] - + fak30 * in30.matWerte[i,maF,true] - + fak31 * in31.matWerte[i,maF,true] {$IFDEF lkA32} - + fak32 * in32.matWerte[i,maF,true] - {$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}; + for i:=0 to length(phasenraum)-1 do + phasenraum[i].liKo( + in1.phasenraum[i],in2.phasenraum[i] + {$IFDEF lkA3},in3.phasenraum[i] + {$IFDEF lkA4},in4.phasenraum[i] + {$IFDEF lkA5},in5.phasenraum[i] + {$IFDEF lkA6},in6.phasenraum[i] + {$IFDEF lkA7},in7.phasenraum[i] + {$IFDEF lkA8},in8.phasenraum[i] + {$IFDEF lkA9},in9.phasenraum[i] + {$IFDEF lkA10},in10.phasenraum[i] + {$IFDEF lkA11},in11.phasenraum[i] + {$IFDEF lkA12},in12.phasenraum[i] + {$IFDEF lkA14},in13.phasenraum[i],in14.phasenraum[i] + {$IFDEF lkA15},in15.phasenraum[i] + {$IFDEF lkA16},in16.phasenraum[i] + {$IFDEF lkA17},in17.phasenraum[i] + {$IFDEF lkA18},in18.phasenraum[i] + {$IFDEF lkA19},in19.phasenraum[i] + {$IFDEF lkA22},in20.phasenraum[i],in21.phasenraum[i],in22.phasenraum[i] + {$IFDEF lkA23},in23.phasenraum[i] + {$IFDEF lkA31},in24.phasenraum[i],in25.phasenraum[i],in26.phasenraum[i],in27.phasenraum[i],in28.phasenraum[i],in29.phasenraum[i],in30.phasenraum[i],in31.phasenraum[i] + {$IFDEF lkA32},in32.phasenraum[i] + {$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}, + fak2 + {$IFDEF lkA3},fak3 + {$IFDEF lkA4},fak4 + {$IFDEF lkA5},fak5 + {$IFDEF lkA6},fak6 + {$IFDEF lkA7},fak7 + {$IFDEF lkA8},fak8 + {$IFDEF lkA9},fak9 + {$IFDEF lkA10},fak10 + {$IFDEF lkA11},fak11 + {$IFDEF lkA12},fak12 + {$IFDEF lkA14},fak13,fak14 + {$IFDEF lkA15},fak15 + {$IFDEF lkA16},fak16 + {$IFDEF lkA17},fak17 + {$IFDEF lkA18},fak18 + {$IFDEF lkA19},fak19 + {$IFDEF lkA22},fak20,fak21,fak22 + {$IFDEF lkA23},fak23 + {$IFDEF lkA31},fak24,fak25,fak26,fak27,fak28,fak29,fak30,fak31 + {$IFDEF lkA32},fak32 + {$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}{$ENDIF}); end; // Werte werden auf (in1 + \sum_i faki * ini') gesetzt @@ -233,4 +323,3 @@ begin inhalt[i].nichtnegativieren; end; - |