-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcapacitance.py
52 lines (39 loc) · 1 KB
/
capacitance.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import numpy as np
from numpy.linalg import inv
# check the scaling factor of F
with open('moonmon_460um.txt') as f:
lines = f.readlines()[7:7+3]
C = []
for line in lines:
C.append([float(l)*1e-12 for l in line.split()[1:]])
C = np.array(C)
C = C[1:3,1:3]
print('C = ', C)
# Constants
e = 1.602e-19
h = 6.626e-34
hbar = h / (2 * np.pi)
Fq = h/(2*e)
Ec_Ej_ratio = 50
deltaAl = 190e-6*1.602176634e-19 #eV
print('delta Al = ', deltaAl)
# M = np.array([[1, 1, 0], [1, -1, 0], [0, 0, 1]])
M = np.array([[1, 1], [1, -1]])
K = np.matmul(inv(M.T), np.matmul(C, inv(M)))
Kinv = inv(K)
print('Kinv = ', Kinv)
print('Kinv[1,1] = ', Kinv[1,1])
Ec = e**2/2*Kinv[1,1]
print('Ec (Joules) = ', Ec)
Ec_f = Ec/h*10**-9 #0.350#
print('Ec (GHz) = ', Ec_f)
Ej = Ec*Ec_Ej_ratio
print('Ej (Joules) = ', Ej)
Ej_f = Ec_f*Ec_Ej_ratio
print('Ej (GHz) = ', Ej_f)
omaga = np.sqrt(8.0*Ec_f*Ej_f)-Ec_f
print('omaga (GHz) = ', omaga)
Ic = Ej*2*np.pi/Fq
print('Ic (A) = ', Ic)
Rj = np.pi*deltaAl/(Ic*2*e)
print('Rj (Ohm) = ', Rj)