www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Mathematica" - voneinander abhängige Listen
voneinander abhängige Listen < Mathematica < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

voneinander abhängige Listen: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 11:47 Do 22.04.2010
Autor: Barbara12345

Hallo,
ich habe mein Problem stark vereinfacht, damit es anschaulicher wird. Ich würde mir gerne folgendes von Mathematica berechnen lassen:

x = Table[y[ [i] ]*4 + 20, {i, 1, 10}]
y = FoldList[#1 - #2/100 &, 11, z]
z = Table[5 + 8*x[ [i] ], {i, 1, 10}]

Wie muss ich das eingeben, damit Mathematica damit umgehen kann?

Ich habe hier zwischen den beiden eckigen Klammern [[ Leerzeichen eingefügt, da es sonst nicht anzeigbar war, in Mathematica habe ich es natürlich ohne Leerzeichen eingegeben.

Vielen Dank im Voraus

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
voneinander abhängige Listen: Antwort
Status: (Antwort) fertig Status 
Datum: 10:53 Fr 23.04.2010
Autor: Peter_Pein

Hallo Barbara,

wenn ich das richtig verstehe, soll das ganze so eine Art Iterationsschritt werden,  in dem bei der Berechnung aller neuen x,y,z-Werte, die alten Listen verwendt werden?

Dann würde ich es so machen:

Falls x,y,z noch keine Werte zugewiesen wurden:

{x,y,z}=Table[0.0,{3},{10}];

und dann - wie bei dieser Zuweisung - {x,y,z} auf einmal die neuen Werte geben (wie gesagt vermute ich, dass das Ganze einer Iteration dienen soll):

iter[]:={x,y,z}={4y+20.,Rest[FoldList[#1-#2/100.0&,11.0,z]],8x+5.}

"Rest" habe ich hinzugefügt, weil die Liste sonst immer länger würde.

Wie Du siehst, ist es überflüssig, mit "Table" zu arbeiten, wenn die Liste als Ganzes verarbeitet wird, sofern die Funktion, die darauf los gelassen werden soll das Attribut "Listable" hat:

1: In[3]:= Attributes[Times]
2: Out[3]= {Flat,Listable,NumericFunction,OneIdentity,Orderless,Protected}


und jetzt kannst Du ganz einfach beispielsweise fünf mal diese parameterlose Funktion aufrufen ("Column" dient bloß der schöneren Ausgabe):

1: Do[Print[iter[]//Column,"\n"],{5}]
2:
3: {20.,20.,20.,20.,20.,20.,20.,20.,20.,20.}
4: {11.,11.,11.,11.,11.,11.,11.,11.,11.,11.}
5: {5.,5.,5.,5.,5.,5.,5.,5.,5.,5.}
6:
7: {64.,64.,64.,64.,64.,64.,64.,64.,64.,64.}
8: {10.95,10.9,10.85,10.8,10.75,10.7,10.65,10.6,10.55,10.5}
9: {165.,165.,165.,165.,165.,165.,165.,165.,165.,165.}
10:
11: {63.8,63.6,63.4,63.2,63.,62.8,62.6,62.4,62.2,62.}
12: {9.35,7.7,6.05,4.4,2.75,1.1,-0.55,-2.2,-3.85,-5.5}
13: {517.,517.,517.,517.,517.,517.,517.,517.,517.,517.}
14:
15: {57.4,50.8,44.2,37.6,31.,24.4,17.8,11.2,4.6,-2.}
16: {5.83,0.66,-4.51,-9.68,-14.85,-20.02,-25.19,-30.36,-35.53,-40.7}
17: {515.4,513.8,512.2,510.6,509.,507.4,505.8,504.2,502.6,501.}
18:
19: {43.32,22.64,1.96,-18.72,-39.4,-60.08,-80.76,-101.44,-122.12,-142.8}
20: {5.846,0.708,-4.414,-9.52,-14.61,-19.684,-24.742,-29.784,-34.81,-39.82}
21: {464.2,411.4,358.6,305.8,253.,200.2,147.4,94.6,41.8,-11.}



Gruß,
Peter


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]