ass3: Wrap up the set and hand it in
Hoi Roos, In de bijlage vind je de pdf van mijn uitwerkingen en de code voor taak 12 (die ook in de appendix staat). Door tijdgebrek ben ik niet overal aan toegekomen. Het was erg veel werk. Met vriendelijke groet, Kees van Kempen
This commit is contained in:
14
ass3-12-a-weak-junction.py
Normal file → Executable file
14
ass3-12-a-weak-junction.py
Normal file → Executable file
@ -5,15 +5,16 @@ from scipy.integrate import odeint
|
||||
from matplotlib import pyplot as plt
|
||||
import pandas as pd
|
||||
|
||||
#phi_dot = lambda phi, t, I_DC, I_RF, I_J, omega_RF, hbar, e, R: 2*e*R/hbar*( I_DC + I_RF*np.cos(omega_RF*t) - I_J(np.sin(phi)) )
|
||||
def phi_dot(phi, t, I_DC, I_RF):
|
||||
R = 10.e-3 #Ohm
|
||||
I_J = 1.e-3 #A
|
||||
omega_RF = 2*np.pi*.96e9 #rad/s
|
||||
hbar = 1.0545718e-34 #m^2kg/s
|
||||
e = 1.60217662e-19 #C
|
||||
|
||||
|
||||
return 2*e*R/hbar*( I_DC + I_RF*np.cos(omega_RF*t) - I_J*(np.sin(phi)) )
|
||||
# I attempted to solve it without the constants, as I suspected overflows
|
||||
# were occurring. The next line did not improve the result.
|
||||
#return R*( I_DC + I_RF*np.sin(omega_RF*t) - I_J*(np.sin(phi)) )
|
||||
|
||||
# We need an initial value to phi
|
||||
@ -28,15 +29,20 @@ e = 1.60217662e-19 #C
|
||||
|
||||
df = pd.DataFrame(columns=['I_DC','I_RF','V_DC_bar'])
|
||||
|
||||
# For testing:
|
||||
#phi = odeint(phi_dot, phi_0, t, (.5e-3, .5e-3))[:, 0]
|
||||
#for I_DC in [1e-4, .5e-3, 1.e-3, 1.5e-3, 2.e-3, 2.5e-3]:
|
||||
|
||||
for I_DC in np.arange(0, 1e-3, 1e-5):
|
||||
for I_RF in [0., .5e-3, 2.e-3]:
|
||||
# The individual solutions for phi do seem sane, at least, the ones
|
||||
# I inspected.
|
||||
phi = odeint(phi_dot, phi_0, t, (I_DC, I_RF))
|
||||
# I initially thought to average over the tail to look at the asymptotic behaviour.
|
||||
#N_asymp = N_points//2
|
||||
I_DC_bar = np.mean(phi[N_asymp:]/t[N_asymp:])
|
||||
#V_DC_bar = hbar/(2*e)*np.mean(phi[N_asymp:]/t[N_asymp:])
|
||||
# Then I choose to just take the last point to see if that gave better results.
|
||||
V_DC_bar = hbar/(2*e)*phi[-1]/t[-1]
|
||||
#V_DC_bar = I_DC_bar
|
||||
print("For I_DC =", I_DC, "\t I_RF = ", I_RF, "\twe find V_DC_bar =", V_DC_bar)
|
||||
df = df.append({'I_DC': I_DC, 'I_RF': I_RF, 'V_DC_bar': V_DC_bar}, ignore_index = True)
|
||||
|
||||
|
||||
Binary file not shown.
@ -114,7 +114,6 @@ Equating these expressions and rewriting yields
|
||||
v_L = \frac{U}{B\ell} = \SI{3.75e5}{\meter\per\second}.
|
||||
% https://www.wolframalpha.com/input?i=1.5*10%5E-5+%2F+%285*+.08%29
|
||||
\]
|
||||
\todo{Direction?}
|
||||
|
||||
\textbf{(b)}
|
||||
The vortices are aranged in a lattice with separation $r_{sep} = \sqrt{\frac{\Phi_0}{B}}$.
|
||||
@ -156,9 +155,16 @@ Solving for $J_{max}$, this yields the beautiful expression
|
||||
J_{max} = \frac{6B_c\lambda R}{\mu \left[ 4\lambda^3 - 9\lambda^2R + 3\lambda R^2- 3\lambda R + 3R^3 -3R^2 \right]}.
|
||||
% https://www.wolframalpha.com/input?i=R*B+%3D+m*x%2Fl*%28%28R%5E3-%28R-l%29%5E3%29%2F3+-+%28R%2Bl%29*%28R+-+%28R-l%29%5E2%29%2F2%29
|
||||
\]
|
||||
|
||||
\textbf{(b)}
|
||||
|
||||
|
||||
\section{A weak junction}
|
||||
See the code in appendix \ref{appendix:program-task-12}.
|
||||
|
||||
It unfortunately does not seem to produce any useful results.
|
||||
In the code, I left many comments as it is mostly in a debugging state.
|
||||
|
||||
\bibliographystyle{vancouver}
|
||||
\bibliography{references.bib}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user