24 lines
613 B
Python
24 lines
613 B
Python
import numpy as np
|
|
from matplotlib import pyplot as plt
|
|
|
|
def step(x):
|
|
return x > 0
|
|
|
|
|
|
Q = 1e-15 # 1 fC
|
|
Cf = 1e-12 # 1 pF
|
|
tau = 1e-7 # 0.1 us
|
|
|
|
t = np.append(np.linspace(0, tau, 25), np.linspace(tau, 2 * tau, 10))
|
|
t = np.append(t, np.linspace(2 * tau, 4 * tau, 25))
|
|
t = np.append(t, np.linspace(4 * tau, 10 * tau, 40))
|
|
v = Q / Cf * (t / tau) * np.exp(-t / tau) * step(t)
|
|
|
|
# plt.plot(t * 1e6, v, 'o', markersize=2)
|
|
# plt.xlabel("time [us]")
|
|
# plt.ylabel("amplitude")
|
|
# plt.show()
|
|
|
|
data = np.hstack((t.reshape(-1, 1) * 1e6, v.reshape(-1, 1) * 1e3))
|
|
np.savetxt("mdt_CR_RC.txt", data, fmt="%.6f", delimiter=" ")
|