|
############################################################# # # Dr. Juergen Boehm # Fakultaet fuer Chemie und Mineralogie # Universitaet Leipzig # Linnestr. 3 # Leipzig, 04103 # # Tel.: (0341) 9736 304 # Tel.: (0341) 9736 349 # E_Mail: boehm@XXXXXXX.de # ############################################################# Werte Mathematika-Gemeinde, leider plagt mich folgendes Problem mit einer partiellen Differentialgleichung. laenge=2.5; dk=0.01; zeit=10; low=0; high=10; ff[x_]:=If[x<0.1,high,low] (* Vorbereitung fuer Startbedingung *) init=u[x,0]==ff[x]; (* Startbedingung Ortsfunktion *) bc={Derivative[1,0][u][0,t]==0, u[laenge,t]==0}; (* Randwertproblem *) eq=D[u[x,t],t]==dk * D[u[x,t],x,x]; (* Differentialgleichung *) sol=NDSolve[{eq, init,bc}, (* noch alles in Ordnung *) u[x,t],{x,0,laenge},{t,0,zeit}] (* Es entsteht eine InterpolatingFunction in zwei Dimensionen *) Plot3D[Evaluate[u[x,t] /. sol[[1]]], {x,0,laenge},{t,0,zeit}, PlotRange -> All] (* auch dieses dreidimensionale Bild wird noch richtig gezeichnet *) ??????????????? Plot[Evaluate[u[0.95*laenge,t] /. sol[[1]] ,{t,0,zeit}]] (* hier geht es nicht weiter, es soll ein Schnitt bei 95 % der Laenge aus dem obigen Bild erzeugt werden *) u[1,3]/. sol[[1]] (* auch hier wird kein Wert der Funktion, sondern die Eingabezeichenkette wiedergegeben *) Fuer einen Tip bin ich sehr dankbar. Mit freundlichen Gruessen Juergen Boehm |