Datei:Entropy Time Arrow.gif
aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen
Zur Suche springen
Entropy_Time_Arrow.gif (768 × 425 Pixel, Dateigröße: 2,91 MB, MIME-Typ: image/gif, Endlosschleife, 200 Bilder, 20 s)
Diese Datei und die Informationen unter dem roten Trennstrich werden aus dem zentralen Medienarchiv Wikimedia Commons eingebunden.
Beschreibung
BeschreibungEntropy Time Arrow.gif |
English: Microscopically, Physics has no preference for time to flow forward or backward.
But (on average) both cases will evolve toward a situation with higher entropy, which provides us with a macroscopic arrow of time. |
Datum | |
Quelle | https://twitter.com/j_bertolotti/status/1513453337676595200 |
Urheber | Jacopo Bertolotti |
Genehmigung (Weiternutzung dieser Datei) |
https://twitter.com/j_bertolotti/status/1030470604418428929 |
Mathematica 13.0 code
(**Velocity Verlet**)
Clear[evo, pos, posold, posoldold, accelerations, oldaccelerations,
velocities, halfvelocities, tableForces];
L = 10; (*(Half) Size of the box*)
\[Sigma] = 0.8; (*particle radius*) \[Sigma]plot = 0.55 \[Sigma];(*particle radius for graphing*)
dt = 0.005;
LJforce[p1_, p2_] := 4*2 (12 \[Sigma]^12/Max[Norm[p1 - p2], \[Sigma]]^13) Normalize[p1 - p2];
pos = Flatten[Table[N[{i, j}], {i, -L + 1, 0, L/6}, {j, 0, L - 1, L/6}], 1];
nparticles = Dimensions[pos][[1]]
m = Table[1, {nparticles}];
initialvelocities = Table[0, {j, 1, nparticles}]; initialvelocities[[15]] = {1, 10}; initialvelocities[[4]] = {5, 5};
tableForces = Chop@Table[ LJforce[pos[[i]], pos[[j]]], {i, 1, nparticles}, {j, 1, nparticles}];
MatrixForm[tableForces];
accelerations = Table[Sum[m[[i]]*tableForces[[i, j]], {j, 1, nparticles}], {i, 1, nparticles}];
posold = pos;
oldaccelerations = accelerations;
pos = posold + initialvelocities*dt + accelerations/2 dt^2;
velocities = initialvelocities + (accelerations + oldaccelerations)/2 dt;
nsteps = 1000;
evo1 = Reap[Do[
tableForces = Chop@Table[ LJforce[pos[[i]], pos[[j]]], {i, 1, nparticles}, {j, 1, nparticles}];
oldaccelerations = accelerations;
posold = pos;
halfvelocities = velocities + accelerations/2 dt;
For[j = 1, j <= nparticles, j++,
If[pos[[j, 2]] >= L,
halfvelocities[[j, 2]] = -Abs[halfvelocities[[j, 2]] ] ];
If[pos[[j, 2]] <= -L,
halfvelocities[[j, 2]] = Abs[halfvelocities[[j, 2]] ] ];
If[pos[[j, 1]] >= L,
halfvelocities[[j, 1]] = -Abs[halfvelocities[[j, 1]] ] ];
If[pos[[j, 1]] <= -L,
halfvelocities[[j, 1]] = Abs[halfvelocities[[j, 1]] ] ];
];
pos = posold + halfvelocities dt;
accelerations = Chop@Table[ Sum[m[[i]]*tableForces[[i, j]], {j, 1, nparticles}], {i, 1, nparticles}];
velocities = halfvelocities + (accelerations + oldaccelerations)/2 dt;
Sow[pos];
, nsteps];][[2, 1]];
dt = -0.005;
pos = Flatten[Table[N[{i, j}], {i, -L + 1, 0, L/6}, {j, 0, L - 1, L/6}], 1];
accelerations = Table[Sum[m[[i]]*tableForces[[i, j]], {j, 1, nparticles}], {i, 1, nparticles}];
posold = pos;
oldaccelerations = accelerations;
pos = posold + initialvelocities*dt + accelerations/2 dt^2;
velocities = initialvelocities + (accelerations + oldaccelerations)/2 dt;
evo2 = Reap[Do[
tableForces = Chop@Table[ LJforce[pos[[i]], pos[[j]]], {i, 1, nparticles}, {j, 1, nparticles}];
oldaccelerations = accelerations;
posold = pos;
halfvelocities = velocities + accelerations/2 dt;
For[j = 1, j <= nparticles, j++,
If[pos[[j, 2]] >= L,
halfvelocities[[j, 2]] = Abs[halfvelocities[[j, 2]] ] ];
If[pos[[j, 2]] <= -L,
halfvelocities[[j, 2]] = -Abs[halfvelocities[[j, 2]] ] ];
If[pos[[j, 1]] >= L,
halfvelocities[[j, 1]] = Abs[halfvelocities[[j, 1]] ] ];
If[pos[[j, 1]] <= -L,
halfvelocities[[j, 1]] = -Abs[halfvelocities[[j, 1]] ] ];
];
pos = posold + halfvelocities dt;
accelerations = Chop@Table[Sum[m[[i]]*tableForces[[i, j]], {j, 1, nparticles}], {i, 1, nparticles}];
velocities = halfvelocities + (accelerations + oldaccelerations)/2 dt;
Sow[pos];
, nsteps];][[2, 1]];
frames3 = Table[
Graphics[{
Disk[#, \[Sigma]plot] & /@ evo1[[j]],
Disk[#, \[Sigma]plot] & /@ (({2.5 L, 0} + #) & /@ evo2[[j]])
,
Line[{{-L - \[Sigma]plot, -L - \[Sigma]plot}, {-L - \[Sigma]plot, L + \[Sigma]plot}, {L + \[Sigma]plot, L + \[Sigma]plot}, {L + \[Sigma]plot, -L - \[Sigma]plot}, {-L - \[Sigma]plot, -L - \[Sigma]plot}}],
Line[({2.5 L, 0} + # &) /@ {{-L - \[Sigma]plot, -L - \[Sigma]plot}, {-L - \[Sigma]plot, L + \[Sigma]plot}, {L + \[Sigma]plot, L + \[Sigma]plot}, {L + \[Sigma]plot, -L - \[Sigma]plot}, {-L - \[Sigma]plot, -L - \[Sigma]plot}}]
,
Text[ Style["Time flows forward", Bold, Black, FontSize -> 15], {0, 1.2 L}],
Text[ Style["Time flows backward", Bold, Black, FontSize -> 15], {2.5 L, 1.2 L}],
Text[ Style["Identical initial conditions", Bold, Black, FontSize -> 16], {1.2 L, L + 4.5}]
}, PlotRange -> {{-L - 1, 3.5 L + 1}, {-L - 1, L + 5}},
ImageSize -> Large]
, {j, 1, nsteps}];
ListAnimate[frames3]
Lizenz
Ich, der Urheber dieses Werkes, veröffentliche es unter der folgenden Lizenz:
Diese Datei wird unter der Creative-Commons-Lizenz „CC0 1.0 Verzicht auf das Copyright“ zur Verfügung gestellt. | |
Die Person, die das Werk mit diesem Dokument verbunden hat, übergibt dieses weltweit der Gemeinfreiheit, indem sie alle Urheberrechte und damit verbundenen weiteren Rechte – im Rahmen der jeweils geltenden gesetzlichen Bestimmungen – aufgibt. Das Werk kann – selbst für kommerzielle Zwecke – kopiert, modifiziert und weiterverteilt werden, ohne hierfür um Erlaubnis bitten zu müssen.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse |
In dieser Datei abgebildete Objekte
Motiv
Einige Werte ohne einen Wikidata-Eintrag
11. April 2022
Dateiversionen
Klicke auf einen Zeitpunkt, um diese Version zu laden.
Version vom | Vorschaubild | Maße | Benutzer | Kommentar | |
---|---|---|---|---|---|
aktuell | 09:23, 12. Apr. 2022 | 768 × 425 (2,91 MB) | Berto | Uploaded own work with UploadWizard |
Dateiverwendung
Die folgende Seite verwendet diese Datei:
Metadaten
Diese Datei enthält weitere Informationen (beispielsweise Exif-Metadaten), die in der Regel von der Digitalkamera oder dem verwendeten Scanner stammen. Durch nachträgliche Bearbeitung der Originaldatei können einige Details verändert worden sein.
GIF-Dateikommentar | Created with the Wolfram Language : www.wolfram.com |
---|
Abgerufen von „https://de.wikipedia.org/wiki/Datei:Entropy_Time_Arrow.gif“