aboutsummaryrefslogtreecommitdiff
path: root/gasplot.py
diff options
context:
space:
mode:
authorAdrian Kummerlaender2020-03-24 21:34:53 +0100
committerAdrian Kummerlaender2020-03-24 21:34:53 +0100
commit9b052593e773a8d101ae1195d5208325dc2cd525 (patch)
tree4545a39a688dd2fe6570c6eb8db831dd074bcf19 /gasplot.py
parent235123e65b5edb3d5f0c8f14b05e2d2e56f9e40a (diff)
downloadboltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.tar
boltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.tar.gz
boltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.tar.bz2
boltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.tar.lz
boltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.tar.xz
boltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.tar.zst
boltzgas-9b052593e773a8d101ae1195d5208325dc2cd525.zip
Update plot-only program to use module
Diffstat (limited to 'gasplot.py')
-rw-r--r--gasplot.py60
1 files changed, 0 insertions, 60 deletions
diff --git a/gasplot.py b/gasplot.py
deleted file mode 100644
index 44b0a53..0000000
--- a/gasplot.py
+++ /dev/null
@@ -1,60 +0,0 @@
-import numpy as np
-import scipy.stats as stats
-import scipy.constants as const
-from scipy.optimize import minimize
-
-import matplotlib
-import matplotlib.pyplot as plt
-
-from particles import GasFlow, HardSphereSetup, grid_of_random_velocity_particles
-
-grid_width = 30
-radius = 0.002
-char_u = 1120
-
-position, velocity = grid_of_random_velocity_particles(grid_width, radius, char_u)
-velocity[:,:] = 0
-velocity[0,0] = 10.75*char_u
-velocity[0,1] = -.25*char_u
-config = HardSphereSetup(radius, char_u, position, velocity)
-#config = HardSphereSetup(radius, char_u, *grid_of_random_velocity_particles(grid_width, radius, char_u))
-gas = GasFlow(config)
-
-m_nitrogen = 0.028 / const.N_A
-
-def plot(step, velocities):
- velocities = np.array([np.linalg.norm(v) for v in velocities])
- maxwellian = stats.maxwell.fit(velocities)
-
- print("T = %.0f K; u_mean = %.0f [m/s]; energy = %.05f" % ((maxwellian[1]**2 / const.k * m_nitrogen, stats.maxwell.mean(*maxwellian), np.sum([x**2 for x in velocities]))))
-
- plt.figure()
-
- plt.ylim(0, 0.003)
- plt.ylabel('Probability')
-
- plt.xlim(0, 1.2*char_u)
- plt.xlabel('Velocity magnitude [m/s]')
-
- plt.hist(velocities, bins=50, density=True, alpha=0.5, label='Simulated velocities')
-
- xs = np.linspace(0, 1.2*char_u, 100)
- plt.plot(xs, stats.maxwell.pdf(xs, *maxwellian), label='Maxwell-Boltzmann distribution')
-
- plt.legend(loc='upper right')
-
- plt.savefig("result/%04d.png" % step)
- plt.close()
-
-def simulate(n_steps, section):
- for i in range(0, int(n_steps / section)):
- print("Plot step %d." % (i * section))
-
- velocities = gas.get_velocities()
-
- for j in range(0,section):
- gas.evolve()
-
- plot(i, velocities)
-
-simulate(100000, 1000)