Skip to content

Instantly share code, notes, and snippets.

@harshadsurdi
Created October 1, 2012 11:16
Show Gist options
  • Save harshadsurdi/3811031 to your computer and use it in GitHub Desktop.
Save harshadsurdi/3811031 to your computer and use it in GitHub Desktop.
the name of the file that I am giving at line number 121 gives a IOError: [Errno 22] invalid mode ('w') or filename: 'E:\\Harshad\\Thz Spectroscopy\nk.txt', WHAT THE HELL!
from pylab import *
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import math
from scipy.optimize import *
import cmath as cm
import powell
from powell import *
from decimal import *
from scipy.stats import norm
##-----------ALL INITIALIZATIONS-----------##
v1=complex(0.0,0.0)
v2=complex(0.0,0.0)
fix_values=-1.0j*2.0*math.pi*0.01
global varr_L
L=400
##varr_L=float(raw_input("Enter Variation In 'L': "))
c=2.99792458
delta_f= 0.001953125 #---delta_w = 4THz/2048 = 1953125000
constant=fix_values*(delta_f*L/c)
##constant_varr_L=fix_values*(delta_f*varr_L/c)
z=complex(0,1.0)
n1=complex(1.0,0)
n3=complex(1.0,0)
global Pwl_omega
##==============================================================================##
#======T measured with fixed n and k values=====================
def Tmeas_fix(n,k):
FP=[]
Tform=[]
for i in range(2048):
v3=i*constant
n2=complex(n,-k)
v1=1.0/(1.0-(((n2-n1)*(n2-n3)*cm.exp(2*v3*n2))/((n2+n1)*(n2+n3))))
FP.append(v1)
v2=((2.0*n2*(n1+n3))/((n2+n1)*(n2+n3)))*((cm.exp((n2-n1)*v3)))*FP[i]
Tform.append(v2)
return(Tform)
#===============================================================================
#======T measured with linear n and k values=====================
def Tmeas_lin():
FP=[]
Tform=[]
for i in range(2048):
v3=i*constant
n=3.5 + 0.2*i/1000;k=0.1 + 0.1*i/1000
n2=complex(n,-k)
v1=1.0/(1.0-(((n2-n1)*(n2-n3)*cm.exp(2.0*v3*n2))/((n2+n1)*(n2+n3))))
FP.append(v1)
v2=((2.0*n2*(n1+n3))/((n2+n1)*(n2+n3)))*((cm.exp((n2-n1)*v3)))*FP[i]
Tform.append(v2)
return(Tform)
#===============================================================================
#======T measured with gaussian pdf n and k values=====================
def Tmeas_norm():
FP=[]
Tform=[]
spread_n2=np.linspace(3.5,4.5,2048)
spread_k2=np.linspace(0.1,0.9,2048)
global n2_arr
global k2_arr
n2_arr = norm.pdf(spread_n2,4,0.25)
k2_arr= norm.pdf(spread_k2,0.5,0.1)
for i in range(2048):
v3=i*constant
n=n2_arr[i];k=k2_arr[i]
n2=complex(n,-k)
v1=1.0/(1.0-(((n2-n1)*(n2-n3)*cm.exp(2.0*v3*n2))/((n2+n1)*(n2+n3))))
FP.append(v1)
v2=((2.0*n2*(n1+n3))/((n2+n1)*(n2+n3)))*((cm.exp((n2-n1)*v3)))*FP[i]
Tform.append(v2)
return(Tform)
#===============================================================================
unwrap_phi_fix=[]
Tw_fix=Tmeas_fix(3,1) #Tmeas() is the generation function
phi_fix=[math.atan2(i.imag,i.real) for i in Tw_fix]
unwrap_phi_fix=np.unwrap(phi_fix)
unwrap_phi_lin=[]
Tw_lin=Tmeas_lin() #Tmeas() is the generation function
phi_lin=[math.atan2(i.imag,i.real) for i in Tw_lin]
unwrap_phi_lin=np.unwrap(phi_lin)
unwrap_phi_norm=[]
Tw_norm=Tmeas_norm() #Tmeas() is the generation function
Tw1=[math.log(abs(i),10) for i in Tw_norm]
phi_norm=[math.atan2(i.imag,i.real) for i in Tw_norm]
unwrap_phi_norm=np.unwrap(phi_norm)
p1,=plt.plot(range(len(Tw1)),Tw1)
p2,=plt.plot(range(len(unwrap_phi_norm)),unwrap_phi_norm)
p3,=plt.plot(range(len(unwrap_phi_fix)),unwrap_phi_fix)
p4,=plt.plot(range(len(unwrap_phi_lin)),unwrap_phi_lin)
plt.grid()
legend([p1,p2,p3,p4],["Tw","norm","fix","lin"])
plt.show()
n2_lin=[]
n2_fix=[]
k2_fix=[]
k2_lin=[]
for i in range(2048):
n2_fix.append(3);k2_fix.append(1)
n2_lin.append(3.5 + 0.2*i/1000);k2_lin.append(0.1 + 0.1*i/1000)
n2_norm = n2_arr;k2_norm = k2_arr
fp1=open("E:\Harshad\Thz Spectroscopy\Tw_fix.txt",'w')
for i in range(len(Tw_fix)):
fp1.write("%d\t%s\t%s\t%s\t%s\n"%(i,Tw_fix[i].real,Tw_fix[i].imag,abs(Tw_fix[i]),unwrap_phi_fix[i]))
fp1.close()
fp2=open("E:\Harshad\Thz Spectroscopy\nk.txt",'w')
for i in range(len(n2_fix)):
fp2.write("%f\t%f"%(n2_fix[i],k2_fix[i]))
fp2.close()
fp=open("E:\Harshad\Thz Spectroscopy\Tw_lin.txt",'w')
for i in range(len(Tw_lin)):
fp.write("%d\t%s\t%s\t%s\t%s\n"%(i,Tw_lin[i].real,Tw_lin[i].imag,abs(Tw_lin[i]),unwrap_phi_lin[i]))
fp.close()
fp=open("E:\Harshad\Thz Spectroscopy\nandklin.txt",'w')
for i in range(len(n2_lin)):
fp.write("%f\t%f"%(n2_lin[i],k2_lin[i]))
fp.close()
fp=open("E:\Harshad\Thz Spectroscopy\Tw_norm.txt",'w')
for i in range(len(Tw_norm)):
fp.write("%d\t%s\t%s\t%s\t%s\n"%(i,Tw_norm[i].real,Tw_norm[i].imag,abs(Tw_norm[i]),unwrap_phi_norm[i]))
fp.close()
fp=open("E:\Harshad\Thz Spectroscopy\nk_fix.txt",'w')
for i in range(len(n2_norm)):
fp.write("%f\t%f"%(n2_norm[i],k2_norm[i]))
fp.close()
#========================================================#
freq=[]
Tw_read_cmplx=[]
Tw_read_real=[]
Tw_read_imag=[]
Tw_read_abs=[]
Tw_read_phi=[]
Tw_read=open("E:\Harshad\Thz Spectroscopy\Tw_fix.txt",'rt')
for line in Tw_read:
a,b,c,d,e=map(float,line.split())
print line
freq.append(a)
Tw_read_real.append(b)
Tw_read_imag.append(c)
Tw_read_abs.append(math.log10(d))
Tw_read_phi.append(e)
plt.plot(range(len(Tw_read_phi)),Tw_read_phi)
plt.plot(range(len(Tw_read_abs)),Tw_read_abs,'g+')
plt.show()
@harshadsurdi
Copy link
Author

how can just a name for the .txt file give an error like
IOError: [Errno 22] invalid mode ('w') or filename: 'E:\Harshad\Thz Spectroscopy\nk.txt'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment