diff --git a/DiffractionGratings/grating2D.pro b/DiffractionGratings/grating2D.pro index f00d774f798f03ac7abab7e3318328a62d616390..34d1292c487384c23e13287ea1449052f5424214 100644 --- a/DiffractionGratings/grating2D.pro +++ b/DiffractionGratings/grating2D.pro @@ -465,7 +465,6 @@ PostOperation { Print[ Q_layer_dep[layer_dep] , OnGlobal, Format FrequencyTable, File > StrCat[myDir, "absorption-Q_layer_dep.txt"]]; Print[ Q_layer_cov[layer_cov] , OnGlobal, Format FrequencyTable, File > StrCat[myDir, "absorption-Q_layer_cov.txt"]]; Print[ Hz_tot , OnElementsOf Plot_domain, File StrCat[myDir, Sprintf("Hz_tot_lambda%.2fnm_1.pos", lambda0/nm)] , Name Sprintf("Hz_tot_%.2fnm.pos", lambda0/nm)]; - Print[ E1 , OnElementsOf Plot_domain, File StrCat[myDir, Sprintf("E1%.2fnm_1.pos", lambda0/nm)] , Name Sprintf("Hz_tot_%.2fnm.pos", lambda0/nm)]; Echo[ Str["For i In {0:2}", " View[i].LineWidth = 4;View[i].ColormapNumber = 15;View[0].AxesFormatX = '%.1f';", "EndFor"], File StrCat[myDir,"tmp0.geo"]] ; diff --git a/DiffractionGratings/grating2D_postplot.py b/DiffractionGratings/grating2D_postplot.py index b0c880b714d7fe1e93f454d7083792b14d67d9d9..3cf37400329fefc9de7316931baa371f0386be16 100644 --- a/DiffractionGratings/grating2D_postplot.py +++ b/DiffractionGratings/grating2D_postplot.py @@ -7,32 +7,32 @@ import scipy as sc import matplotlib import pylab as pl pi=np.pi - +respath = 'run_results/' nb_orders = int(int(subprocess.check_output("ls ./run_results/efficiency_r_* | grep -c efficiency_r_", shell=True))/2) nb_rods = int(int(subprocess.check_output("ls ./run_results/absorption-Q_rod_* | grep -c absorption-Q_rod_", shell=True))-1) zerotol = 0.001 -if len(np.loadtxt('./run_results/efficiency_r_0.txt').shape)==2: - tab_lambdas = np.loadtxt('./run_results/temp_lambda_step.txt')[:,8] +if len(np.loadtxt(respath+'efficiency_r_0.txt').shape)==2: + tab_lambdas = np.loadtxt(respath+'temp_lambda_step.txt')[:,8] nb_lambdas = tab_lambdas.shape[0] R = np.zeros((nb_lambdas,2*nb_orders+1),dtype=complex) T = np.zeros((nb_lambdas,2*nb_orders+1),dtype=complex) A_rods = np.zeros((nb_lambdas,nb_rods)) for k in range(-nb_orders,nb_orders+1,1): - R[:,k+nb_orders] = np.loadtxt('./run_results/efficiency_r_%d.txt'%(k))[:,1]+1j*np.loadtxt('./run_results/efficiency_r_%d.txt'%(k))[:,2] - T[:,k+nb_orders] = np.loadtxt('./run_results/efficiency_t_%d.txt'%(k))[:,1]+1j*np.loadtxt('./run_results/efficiency_t_%d.txt'%(k))[:,2] + R[:,k+nb_orders] = np.loadtxt(respath+'efficiency_r_%d.txt'%(k))[:,1]+1j*np.loadtxt(respath+'efficiency_r_%d.txt'%(k))[:,2] + T[:,k+nb_orders] = np.loadtxt(respath+'efficiency_t_%d.txt'%(k))[:,1]+1j*np.loadtxt(respath+'efficiency_t_%d.txt'%(k))[:,2] Rtot = np.real(R.sum(axis=1)) Ttot = np.real(T.sum(axis=1)) R0 = R[:,nb_orders+1] T0 = T[:,nb_orders+1] - A = np.loadtxt('./run_results/absorption-Q_tot.txt')[:,1] + A = np.loadtxt(respath+'absorption-Q_tot.txt')[:,1] for k in range(nb_rods): - A_rods[:,k] = np.loadtxt('./run_results/absorption-Q_rod_%d.txt'%(k+1))[:,1] - A_rod_out = np.loadtxt('./run_results/absorption-Q_rod_out.txt')[:,1] - A_layer_cov = np.loadtxt('./run_results/absorption-Q_layer_cov.txt')[:,1] - A_layer_dep = np.loadtxt('./run_results/absorption-Q_layer_dep.txt')[:,1] - A_sub = np.loadtxt('./run_results/absorption-Q_subs.txt')[:,1] + A_rods[:,k] = np.loadtxt(respath+'absorption-Q_rod_%d.txt'%(k+1))[:,1] + A_rod_out = np.loadtxt(respath+'absorption-Q_rod_out.txt')[:,1] + A_layer_cov = np.loadtxt(respath+'absorption-Q_layer_cov.txt')[:,1] + A_layer_dep = np.loadtxt(respath+'absorption-Q_layer_dep.txt')[:,1] + A_sub = np.loadtxt(respath+'absorption-Q_subs.txt')[:,1] pl.savez('last_run_RTA.npz',R0=R0,T0=T0,A=A) @@ -89,11 +89,11 @@ if len(np.loadtxt('./run_results/efficiency_r_0.txt').shape)==2: ax.grid() box = ax.get_position() ax.set_position([box.x0, box.y0, box.width * 0.8, box.height]) - ax.legend(loc='center left', bbox_to_anchor=(1, 0.5),fontsize=12) + ax.legend(loc='center left', bbox_to_anchor=(1, 0.5)) pl.savefig('energy_balance_detailed.pdf') pl.show() -elif len(np.loadtxt('./run_results/efficiency_r_0.txt').shape)==1: - lambdas=np.loadtxt('./run_results/efficiency_r_0.txt')[0] +elif len(np.loadtxt(respath+'efficiency_r_0.txt').shape)==1: + lambdas=np.loadtxt(respath+'efficiency_r_0.txt')[0] R = np.zeros(2*nb_orders+1,dtype=complex) T = np.zeros(2*nb_orders+1,dtype=complex) angle_r = np.zeros(2*nb_orders+1) @@ -101,21 +101,21 @@ elif len(np.loadtxt('./run_results/efficiency_r_0.txt').shape)==1: orders = range(-nb_orders,nb_orders+1) A_rods = np.zeros(nb_rods) for k in range(-nb_orders,nb_orders+1,1): - R[k+nb_orders] = np.loadtxt('./run_results/efficiency_r_%d.txt'%(k))[1]+1j*np.loadtxt('./run_results/efficiency_r_%d.txt'%(k))[2] - T[k+nb_orders] = np.loadtxt('./run_results/efficiency_t_%d.txt'%(k))[1]+1j*np.loadtxt('./run_results/efficiency_t_%d.txt'%(k))[2] - angle_r[k+nb_orders] = np.loadtxt('./run_results/order_r_angle_%d.txt'%(k))[8] - angle_t[k+nb_orders] = np.loadtxt('./run_results/order_t_angle_%d.txt'%(k))[8] + R[k+nb_orders] = np.loadtxt(respath+'efficiency_r_%d.txt'%(k))[1]+1j*np.loadtxt(respath+'efficiency_r_%d.txt'%(k))[2] + T[k+nb_orders] = np.loadtxt(respath+'efficiency_t_%d.txt'%(k))[1]+1j*np.loadtxt(respath+'efficiency_t_%d.txt'%(k))[2] + angle_r[k+nb_orders] = np.loadtxt(respath+'order_r_angle_%d.txt'%(k))[8] + angle_t[k+nb_orders] = np.loadtxt(respath+'order_t_angle_%d.txt'%(k))[8] Rtot = np.real(R.sum()) Ttot = np.real(T.sum()) R0 = R[nb_orders+1] T0 = T[nb_orders+1] - A = np.loadtxt('./run_results/absorption-Q_tot.txt')[1] + A = np.loadtxt(respath+'absorption-Q_tot.txt')[1] for k in range(nb_rods): - A_rods[k] = np.loadtxt('./run_results/absorption-Q_rod_%d.txt'%(k+1))[1] - A_rod_out = np.loadtxt('./run_results/absorption-Q_rod_out.txt')[1] - A_layer_cov = np.loadtxt('./run_results/absorption-Q_layer_cov.txt')[1] - A_layer_dep = np.loadtxt('./run_results/absorption-Q_layer_dep.txt')[1] - A_sub = np.loadtxt('./run_results/absorption-Q_sub.txt')[1] + A_rods[k] = np.loadtxt(respath+'absorption-Q_rod_%d.txt'%(k+1))[1] + A_rod_out = np.loadtxt(respath+'absorption-Q_rod_out.txt')[1] + A_layer_cov = np.loadtxt(respath+'absorption-Q_layer_cov.txt')[1] + A_layer_dep = np.loadtxt(respath+'absorption-Q_layer_dep.txt')[1] + A_sub = np.loadtxt(respath+'absorption-Q_subs.txt')[1] absorption_list=[A_rod_out,A_layer_cov,A_layer_dep,A_sub] absorption_list_label=['$A_{rod_{out}}$','$A_{layer_{cov}}$','$A_{layer_{dep}}$','$A_{sub}$'] ka=0 @@ -163,7 +163,7 @@ elif len(np.loadtxt('./run_results/efficiency_r_0.txt').shape)==1: pl.xticks(x_disp, hist_labels) for rect in rects: height = rect.get_height() - ax.text(rect.get_x() + rect.get_width()/2., height+0.01,'%.5f'%(height),ha='center', va='bottom', fontsize=20) + ax.text(rect.get_x() + rect.get_width()/2., height+0.01,'%.5f'%(height),ha='center', va='bottom') pl.grid() pl.ylim([0,1.05]) # pl.title('energy balance')