Guten Tag,
Im Internet habe ich gesehen, dass sich Ihre Usergroup auch schon mit den
alten Versionen von Mathematica beschäftigt hat. Ich habe Schwierigkeiten
mit einem 1D Wärmeleitungsproblem, das ich gern mit meinem alten Mathematica
(V4.0 for Students) lösen würde:
- spez. Wärme 1094J/kgK, Dichte 354kg/m³, WLF 0.05 W/mK
- Länge des Gebiets: 2mm
- Dirichlet Randbedingung: Temperatur an beiden Enden wird von Raumtemperaur
an mit einer Heizrate von 10K/min erhöht
- Startbedingung: Raumtemperatur 293.15K im gesamten Gebiet
Ich habe folgenden Befehl verwendet:
solution =
NDSolve[{1094*354*D[T[x, t], t] == 0.05 D[T[x, t], x, x],
T[x, 0] == 293.15,
T[0, t] == 293.15 + 10/60*t,
T[2 10^-3, t] == 293.15 + 10/60*t},
T, {x, 0, 2 10^-3}, {t, 0, 1980}, StartingStepSize -> {0.00001, 0.01}]
Ein Plot nach 10sek mit
Plot[T[x, 10] /. solution, {x, 0, 2 10^-3}, PlotPoints -> 20,
PlotRange -> All]
ergibt dann völligen Unsinn (siehe Bild). Die Randbedingungen werden wohl
respektiert, aber die Wärmeleitung am rechten Rand ist nicht korrekt.
Mittlerweile weiß ich, dass dieser Fehler in Mathematica 6 nicht mehr
auftaucht. Von den Options habe ich praktisch alle durchprobiert:
DifferenceOrder, MaxStepSize, AccuracyGoal, MaxSteps, WorkingPrecision -
immer dasselbe Resultat. Haben Sie eine Idee, wie ich in Mathematica 4
vorgehen könnte?
Vielen Dank im Voraus und schöne Grüße
Thomas Frommelt