modified gr2sq.py to be seepd-up for FT
This commit is contained in:
@@ -1106,13 +1106,16 @@ class Data():
|
|||||||
self.sq["Q"] = q
|
self.sq["Q"] = q
|
||||||
t = args.lmd/4/np.pi * self.sq["Q"]
|
t = args.lmd/4/np.pi * self.sq["Q"]
|
||||||
self.sq["2theta"] = 2*np.arcsin(t[t < 1]) * 180/np.pi
|
self.sq["2theta"] = 2*np.arcsin(t[t < 1]) * 180/np.pi
|
||||||
|
print("Q space: {} points".format(self.sq.shape[0]))
|
||||||
|
print(self.sq.iloc[:, 0:2])
|
||||||
r = np.array(self.gr["r"])
|
r = np.array(self.gr["r"])
|
||||||
dr = self.gr["r"][1] - self.gr["r"][0]
|
dr = self.gr["r"][1] - self.gr["r"][0]
|
||||||
coeff = 4*np.pi*self.rho/q
|
coeff = 4*np.pi*self.rho/q
|
||||||
|
mat = q.reshape(-1, 1) * r
|
||||||
for pair in self.pairs:
|
for pair in self.pairs:
|
||||||
print(f"FT: {pair} ...")
|
print(f"FT: {pair} ...")
|
||||||
gr = np.array(self.gr[pair])
|
gr = np.array(self.gr[pair])
|
||||||
y = r * (gr - 1) * np.sin(q.reshape(-1, 1) * r) * dr
|
y = r * (gr - 1) * np.sin(mat) * dr
|
||||||
y = coeff * np.sum(y, axis=1)
|
y = coeff * np.sum(y, axis=1)
|
||||||
self.sq[pair] = y
|
self.sq[pair] = y
|
||||||
|
|
||||||
@@ -1162,7 +1165,9 @@ class Data():
|
|||||||
else:
|
else:
|
||||||
x = self.sq["Q"]
|
x = self.sq["Q"]
|
||||||
label = "$Q/{\\rm \\AA^{-1}}$"
|
label = "$Q/{\\rm \\AA^{-1}}$"
|
||||||
ax.plot(x, self.sq["XRD"])
|
ax.plot(x, self.sq["ND"])
|
||||||
|
# d = np.loadtxt("fort.sq")
|
||||||
|
# ax.plot(d[:, 0], d[:, -1])
|
||||||
ax.set_xlabel(label)
|
ax.set_xlabel(label)
|
||||||
base, _ = os.path.splitext(self.grfile)
|
base, _ = os.path.splitext(self.grfile)
|
||||||
fig.savefig(f"{base}.png")
|
fig.savefig(f"{base}.png")
|
||||||
|
|||||||
Reference in New Issue
Block a user