Minor fix

This commit is contained in:
Cory Balaton 2023-12-17 13:40:01 +01:00
parent 54de6d68b1
commit 9374889bf3
5 changed files with 395 additions and 0 deletions

4
data/color_map.txt Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,320 @@
0,1,1
1,1,1
2,1,1
3,1,1
4,1,1
5,1,1
6,1,1
7,1,1
8,1,1
9,1,1
10,1,1
11,1,1
12,1,1
13,1,1
14,1,1
15,1,1
16,1,1
17,1,1
18,1,1
19,1,1
20,1,1
21,1,1
22,1,1
23,1,1
24,1,1
25,1,1
26,1,1
27,1,1
28,1,1
29,1,1
30,1,1
31,1,1
32,1,1
33,1,1
34,1,1
35,1,1
36,1,1
37,1,1
38,1,1
39,1,1
40,1,1
41,1,1
42,1,1
43,1,1
44,1,1
45,1,1
46,1,1
47,1,1
48,1,1
49,1,1
50,1,1
51,1,1
52,1,1
53,1,1
54,1,1
55,1,1
56,1,1
57,1,1
58,1,1
59,1,1
60,1,1
61,1,1
62,1,1
63,1,1
64,1,1
65,1,1
66,1,1
67,1,1
68,1,1
69,1,1
70,1,1
71,1,1
72,1,1
73,1,1
74,1,1
75,1,1
76,1,1
77,1,1
78,1,1
79,1,1
80,1,1
81,1,1
82,1,1
83,1,1
84,1,1
85,1,1
86,1,1
87,1,1
88,1,1
89,1,1
90,1,1
91,1,1
92,1,1
93,1,1
94,1,1
95,1,1
96,1,1
97,1,1
98,1,1
99,1,1
100,1,1
101,1,1
102,1,1
103,1,1
104,1,1
105,1,1
106,1,1
107,1,1
108,1,1
109,1,1
110,1,1
111,1,1
112,1,1
113,1,1
114,1,1
115,1,1
116,1,1
117,1,1
118,1,1
119,1,1
120,1,1
121,1,1
122,1,1
123,1,1
124,1,1
125,1,1
126,1,1
127,1,1
128,1,1
129,1,1
130,1,1
131,1,1
132,1,1
133,1,1
134,1,1
135,1,1
136,1,1
137,1,1
138,1,1
139,1,1
140,1,1
141,1,1
142,1,1
143,1,1
144,1,1
145,1,1
146,1,1
147,1,1
148,1,1
149,1,1
150,1,1
151,1,1
152,1,1
153,1,1
154,1,1
155,1,1
156,1,1
157,1,1
158,1,1
159,1,1
160,1,1
161,1,1
162,1,1
163,1,1
164,1,1
165,1,1
166,1,1
167,1,1
168,1,1
169,1,1
170,1,1
171,1,1
172,1,1
173,1,1
174,1,1
175,1,1
176,1,1
177,1,1
178,1,1
179,1,1
180,1,1
181,1,1
182,1,1
183,1,1
184,1,1
185,1,1
186,1,1
187,1,1
188,1,1
189,1,1
190,1,1
191,1,1
192,1,1
193,1,1
194,1,1
195,1,1
196,1,1
197,1,1
198,1,1
199,1,1
200,1,1
201,1,1
202,1,1
203,1,1
204,1,1
205,1,1
206,1,1
207,1,1
208,1,1
209,1,1
210,1,1
211,1,1
212,1,1
213,1,1
214,1,1
215,1,1
216,1,1
217,1,1
218,1,1
219,1,1
220,1,1
221,1,1
222,1,1
223,1,1
224,1,1
225,1,1
226,1,1
227,1,1
228,1,1
229,1,1
230,1,1
231,1,1
232,1,1
233,1,1
234,1,1
235,1,1
236,1,1
237,1,1
238,1,1
239,1,1
240,1,1
241,1,1
242,1,1
243,1,1
244,1,1
245,1,1
246,1,1
247,1,1
248,1,1
249,1,1
250,1,1
251,1,1
252,1,1
253,1,1
254,1,1
255,1,1
256,1,1
257,1,1
258,1,1
259,1,1
260,1,1
261,1,1
262,1,1
263,1,1
264,1,1
265,1,1
266,1,1
267,1,1
268,1,1
269,1,1
270,1,1
271,1,1
272,1,1
273,1,1
274,1,1
275,1,1
276,1,1
277,1,1
278,1,1
279,1,1
280,1,1
281,1,1
282,1,1
283,1,1
284,1,1
285,1,1
286,1,1
287,1,1
288,1,1
289,1,1
290,1,1
291,1,1
292,1,1
293,1,1
294,1,1
295,1,1
296,1,1
297,1,1
298,1,1
299,1,1
300,1,1
301,1,1
302,1,1
303,1,1
304,1,1
305,1,1
306,1,1
307,1,1
308,1,1
309,1,1
310,1,1
311,1,1
312,1,1
313,1,1
314,1,1
315,1,1
316,1,1
317,1,1
318,1,1
319,1,1

View File

@ -0,0 +1,43 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
from matplotlib.animation import FuncAnimation
import ast
wave_arr = []
fig = plt.figure()
ax = plt.gca()
img = ax.imshow([[]])
def plot():
with open("test.txt") as f:
lines = f.readlines();
size = int(lines[0])
for line in lines[1:]:
arr = line.strip().split("\t")
arr = np.asarray(list(map(lambda x: ((a := complex(*ast.literal_eval(x)))*a.conjugate()).real, arr)))
# print(sum(arr))
arr = arr.reshape(size,size)
wave_arr.append(arr.T)
# print(arr)
# plt.imshow(arr, cmap="hot", interpolation="nearest")
# plt.show()
def animation(i):
norm = matplotlib.cm.colors.Normalize(vmin=0, vmax=np.max(wave_arr[i]))
img.set_norm(norm)
img.set_data(wave_arr[i])
if __name__ == "__main__":
plot()
norm = matplotlib.cm.colors.Normalize(vmin=0, vmax=np.max(wave_arr[0]))
img = ax.imshow(wave_arr[0], extent=[0,1,0,1], cmap=plt.get_cmap("viridis"), norm=norm)
anim = FuncAnimation(fig, animation, interval=1, frames=np.arange(0,len(wave_arr)), repeat=True, blit=0)
# plt.show()
anim.save("./animation.mp4", writer="ffmpeg", bitrate=10000, fps=15)

27
python_scripts/plot_v.py Normal file
View File

@ -0,0 +1,27 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
from matplotlib.animation import FuncAnimation
import ast
def plot():
with open("v.txt") as f:
lines = f.readlines();
size = int(lines[0])
for line in lines[1:]:
arr = line.strip().split("\t")
arr = np.asarray(list(map(lambda x: ((a := complex(*ast.literal_eval(x)))*a.conjugate()).real, arr)))
# print(sum(arr))
arr = arr.reshape(size,size)
# print(arr)
plt.imshow(arr.T, cmap="hot", interpolation="nearest")
plt.show()
if __name__ == "__main__":
plot()

View File

@ -79,6 +79,7 @@ void detector_screen()
sim.build_B();
std::ofstream ofile;
utils::mkpath("data/screen");
ofile.open("data/screen/single_slit.txt");
ofile << sim.N << '\n';
for (size_t i = 0; i < 80; i++) {