diff --git a/Plot-Scripts/PerforatedBilayer_parameterDependence.py b/Plot-Scripts/PerforatedBilayer_parameterDependence.py index f2b15eb2450d6fe24c18afab643200ef2354478a..3d7a50625e799f94c18766e1c70895b201003f1f 100644 --- a/Plot-Scripts/PerforatedBilayer_parameterDependence.py +++ b/Plot-Scripts/PerforatedBilayer_parameterDependence.py @@ -13,6 +13,8 @@ import matplotlib.ticker as ticker from matplotlib.ticker import MultipleLocator,FormatStrFormatter,MaxNLocator import seaborn as sns import matplotlib.colors as mcolors +import codecs +import json # ---------------------------------------------------- # --- Define Plot style: # plt.style.use("seaborn-white") @@ -43,108 +45,87 @@ mpl.rcParams['text.latex.preamble'] = r'\usepackage{amsfonts}' # Makes Use of \m width = 5.79 height = width / 1.618 # The golden ratio. -# fig = plt.figure() #main -fig, ax = plt.subplots(figsize=(width,height)) +dataset_numbers = [0, 1, 2, 3, 4 ,5] +for dataset_number in dataset_numbers: + fig, ax = plt.subplots(figsize=(width,height)) -# input = [15.30614414,14.49463867,13.46629742,12.78388234,12.23057715,10.21852839,9.341730605] #moisture-content (in %) -# input = [0 , np.pi/4, np.pi/2] # rotation angle + Path_KappaUpper = './experiment/perforated-bilayer/results_upper_' + str(dataset_number) + '/kappa_simulation.txt' + Path_KappaLower = './experiment/perforated-bilayer/results_lower_' + str(dataset_number) + '/kappa_simulation.txt' + kappa_sim_upper = open(Path_KappaUpper).read().split(",") + kappa_sim_lower = open(Path_KappaLower).read().split(",") + kappa_sim_upper = [float(i) for i in kappa_sim_upper] + kappa_sim_lower = [float(i) for i in kappa_sim_lower] -# input = [0 , np.pi/6.0, np.pi/3.0, np.pi/2.0, 2.0*(np.pi/3.0), 5.0*(np.pi/6.0), np.pi] # rotation angle -# kappa_sim = [ 3.94388778, 5.53106212, 8.72945892, 10.22044088, 8.72945892, 5.53106212, 3.94388778] -# input = [0 , np.pi/12.0, np.pi/6.0, np.pi/4.0, np.pi/3.0, 5.0*(np.pi/12.0), np.pi/2.0] # rotation angle -# kappa_sim = [ 3.94388778, 4.37675351, 5.53106212, 7.14228457, 8.72945892, 9.83567134, 10.22044088] + input = [0 , 0.05, 0.10, 0.15, 0.20, 0.25, 0.30] # Design parameter (volume ratio) -input = [0 , 0.05, 0.10, 0.15, 0.20, 0.25, 0.30] # Design parameter (volume ratio) + # --------------- Plot Lines + Scatter ----------------------- + line_1 = ax.plot(input, kappa_sim_upper, # data + # color='forestgreen', # linecolor + marker='D', # each marker will be rendered as a circle + markersize=5, # marker size + # markerfacecolor='darkorange', # marker facecolor + markeredgecolor='black', # marker edgecolor + markeredgewidth=0.75, # marker edge width + # linestyle='dashdot', # line style will be dash line + linewidth=1.5, # line width + zorder=3, + label = r"$\kappa_{sim}$ (upper=passive perf.)") -#perforation in upper (passive) layer -# kappa_sim_upper = [3.94388778, 3.91983968, 3.84769539, 3.7755511, 3.75150301, 3.70340681, 3.67935872] #gridLevel3 -kappa_sim_upper = [3.96793587, 3.91983968, 3.87174349, 3.84769539, 3.7995992 , 3.75150301, 3.70340681] #gridLevel4 + line_2 = ax.plot(input, kappa_sim_lower, # data + # color='orangered', # linecolor + marker='o', # each marker will be rendered as a circle + markersize=5, # marker size + # markerfacecolor='cornflowerblue', # marker facecolor + markeredgecolor='black', # marker edgecolor + markeredgewidth=0.75, # marker edge width + # linestyle='--', # line style will be dash line + linewidth=1.5, # line width + zorder=3, + alpha=0.8, # Change opacity + label = r"$\kappa_{sim}$ (lower=active perf.)") -#perforation in lower (active) layer -# kappa_sim_lower = [3.94388778, 3.94388778, 3.96793587, 3.99198397, 3.99198397, 4.01603206,4.01603206] #gridLevel3 -kappa_sim_lower = [3.96793587, 3.99198397, 3.99198397, 3.99198397, 3.99198397, 3.99198397,3.99198397] #gridLevel4 -# compute difference: -# relative_error = (np.array(kappa_sim) - np.array(kappa_exp)) / np.array(kappa_exp) -# print('relative_error:', relative_error) + # --------------- Set Axes ----------------------- + # Plot - Title + match dataset_number: + case 0: + ax.set_title(r"ratio $r = 0.12$") + case 1: + ax.set_title(r"ratio $r = 0.17$") + case 2: + ax.set_title(r"ratio $r = 0.22$") + case 3: + ax.set_title(r"ratio $r = 0.34$") + case 4: + ax.set_title(r"ratio $r = 0.43$") + case 5: + ax.set_title(r"ratio $r = 0.49$") + + ax.set_xlabel(r"Volume ratio ", labelpad=4) + ax.set_ylabel(r"Curvature $\kappa$", labelpad=4) + plt.tight_layout() -# --------------- Plot Lines + Scatter ----------------------- -line_1 = ax.plot(input, kappa_sim_upper, # data - # color='forestgreen', # linecolor - marker='D', # each marker will be rendered as a circle - markersize=5, # marker size - # markerfacecolor='darkorange', # marker facecolor - markeredgecolor='black', # marker edgecolor - markeredgewidth=0.75, # marker edge width - # linestyle='dashdot', # line style will be dash line - linewidth=1.5, # line width - zorder=3, - label = r"$\kappa_{sim}$ (upper=passive perf.)") + # --- Set Legend + legend = ax.legend() -line_2 = ax.plot(input, kappa_sim_lower, # data - # color='orangered', # linecolor - marker='o', # each marker will be rendered as a circle - markersize=5, # marker size - # markerfacecolor='cornflowerblue', # marker facecolor - markeredgecolor='black', # marker edgecolor - markeredgewidth=0.75, # marker edge width - # linestyle='--', # line style will be dash line - linewidth=1.5, # line width - zorder=3, - alpha=0.8, # Change opacity - label = r"$\kappa_{sim}$ (lower=active perf.)") + frame = legend.get_frame() + frame.set_edgecolor('black') -# --- Plot order line -# x = np.linspace(0.01,1/2,100) -# y = CC_L2[0]*x**2 -# OrderLine = ax.plot(x,y,linestyle='--', label=r"$\mathcal{O}(h)$") + # --- Adjust left/right spacing: + # plt.subplots_adjust(right=0.81) + # plt.subplots_adjust(left=0.11) - -# Fix_value = 7.674124 -# l3 = plt.axhline(y = Fix_value, color = 'black', linewidth=0.75, linestyle = 'dashed') -# --------------- Set Axes ----------------------- -ax.set_title("Perforated upper/lower layer , " r"Layer thickness ratio $r = 0.22$") # Plot - Title -# plt.xscale('log') # Use Logarithmic-Scale -# plt.yscale('log') -ax.set_xlabel(r"Volume ratio ", labelpad=4) -ax.set_ylabel(r"Curvature $\kappa$", labelpad=4) -plt.tight_layout() - -# # --- Set Line labels -# line_labels = [r"$CC_{L_2}$",r"$CC_{H_1}$", r"$\mathcal{O}(h)$"] - -# --- Set Legend -legend = ax.legend() -# legend = fig.legend([line_1 , line_2, OrderLine], -# labels = line_labels, -# bbox_to_anchor=[0.97, 0.50], -# # bbox_to_anchor=[0.97, 0.53], -# # loc='center', -# ncol=1, # Number of columns used for legend -# # borderaxespad=0.15, # Small spacing around legend box -# frameon=True, -# prop={'size': 10}) - - -frame = legend.get_frame() -frame.set_edgecolor('black') - - -# --- Adjust left/right spacing: -# plt.subplots_adjust(right=0.81) -# plt.subplots_adjust(left=0.11) - -# ---------- Output Figure as pdf: -fig.set_size_inches(width, height) -fig.savefig('PerforatedBilayer_dependence.pdf') -# plt.show() \ No newline at end of file + # ---------- Output Figure as pdf: + fig.set_size_inches(width, height) + fig.savefig('PerforatedBilayer_dependence_' + str(dataset_number) + '.pdf') + # plt.show() \ No newline at end of file diff --git a/experiment/perforated-bilayer/PolarPlotLocalEnergy.py b/experiment/perforated-bilayer/PolarPlotLocalEnergy.py index 3bc54ddde5d1cf35baf438781f18c741e676ff5b..acce25b0ab988909fc5d87b45eae677b5d6b52d6 100644 --- a/experiment/perforated-bilayer/PolarPlotLocalEnergy.py +++ b/experiment/perforated-bilayer/PolarPlotLocalEnergy.py @@ -53,11 +53,11 @@ number=7 show_plot = False #--- Choose wether to perforate upper (passive) or lower (active) layer -perforatedLayer = 'upper' -# perforatedLayer = 'lower' +# perforatedLayer = 'upper' +perforatedLayer = 'lower' -# dataset_numbers = [0, 1, 2, 3, 4, 5] -dataset_numbers = [0] +dataset_numbers = [0, 1, 2, 3, 4, 5] +# dataset_numbers = [0] for dataset_number in dataset_numbers: @@ -110,7 +110,7 @@ for dataset_number in dataset_numbers: width = 5.79 height = width / 1.618 # The golden ratio. fig.set_size_inches(width, height) - fig.savefig('Plot_PerforatedBilayer_' +perforatedLayer + '_' + str(n) + '.pdf') + fig.savefig('PerforatedBilayer_dataset_' +str(dataset_number) + '_exp' +str(n) + '.pdf') f = open("./experiment/perforated-bilayer/results_" + perforatedLayer + '_' + str(dataset_number) + "/kappa_simulation.txt", "w")