diff --git a/Plot-Scripts/PerforatedBilayer_parameterDependence.py b/Plot-Scripts/PerforatedBilayer_parameterDependence.py
new file mode 100644
index 0000000000000000000000000000000000000000..f2b15eb2450d6fe24c18afab643200ef2354478a
--- /dev/null
+++ b/Plot-Scripts/PerforatedBilayer_parameterDependence.py
@@ -0,0 +1,150 @@
+import numpy as np
+import matplotlib.pyplot as plt
+import math
+import os
+import subprocess
+import fileinput
+import re
+import sys
+import matplotlib as mpl
+from mpl_toolkits.mplot3d import Axes3D
+import matplotlib.cm as cm
+import matplotlib.ticker as ticker
+from matplotlib.ticker import MultipleLocator,FormatStrFormatter,MaxNLocator
+import seaborn as sns
+import matplotlib.colors as mcolors
+# ----------------------------------------------------
+# --- Define Plot style:
+# plt.style.use("seaborn-white")
+# plt.style.use("seaborn-pastel")
+# plt.style.use("seaborn-colorblind")
+plt.style.use("seaborn")
+mpl.rcParams['text.usetex'] = True
+mpl.rcParams["font.family"] = "serif"
+mpl.rcParams["font.size"] = "14"
+mpl.rcParams['xtick.bottom'] = True
+mpl.rcParams['xtick.major.size'] = 3
+mpl.rcParams['xtick.minor.size'] = 1.5
+mpl.rcParams['xtick.major.width'] = 0.75
+mpl.rcParams['ytick.left'] = True
+mpl.rcParams['ytick.major.size'] = 3
+mpl.rcParams['ytick.minor.size'] = 1.5
+mpl.rcParams['ytick.major.width'] = 0.75
+
+#Adjust grid:
+mpl.rcParams.update({"axes.grid" : True}) # Add grid
+mpl.rcParams['axes.labelpad'] = 3
+mpl.rcParams['grid.linewidth'] = 0.25
+mpl.rcParams['grid.alpha'] = 0.9 # 0.75
+mpl.rcParams['grid.linestyle'] = '-'
+mpl.rcParams['grid.color']   = 'gray'#'black'
+mpl.rcParams['text.latex.preamble'] = r'\usepackage{amsfonts}' # Makes Use of \mathbb possible.
+# ----------------------------------------------------------------------------------------
+width = 5.79
+height = width / 1.618 # The golden ratio.
+
+# fig = plt.figure()      #main
+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
+
+
+# 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)
+
+#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
+
+#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)
+
+
+# --------------- 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.)")
+
+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.)")
+
+# --- 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)$")
+
+
+
+# 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
diff --git a/experiment/perforated-bilayer/PolarPlotLocalEnergy.py b/experiment/perforated-bilayer/PolarPlotLocalEnergy.py
index efb121731eba3d0f8eab390e571b31778f401973..86e7b2e0d34af84569a06f2c4ebeba2b3dbf7bec 100644
--- a/experiment/perforated-bilayer/PolarPlotLocalEnergy.py
+++ b/experiment/perforated-bilayer/PolarPlotLocalEnergy.py
@@ -52,13 +52,16 @@ def ReadEffectiveQuantities(QFilePath, BFilePath):
 number=7
 show_plot = False
 
+#--- Choose wether to perforate upper (passive) or lower (active) layer
+perforatedLayer = 'upper'
+# perforatedLayer = 'lower'
+
 
 kappa=np.zeros(number)
 for n in range(0,number):
     #   Read from Date
     print(str(n))
-    DataPath = './experiment/perforated-bilayer/results/'+str(n)
-    DataPath = './experiment/perforated-bilayer/results/'+str(n)
+    DataPath = './experiment/perforated-bilayer/results_' + perforatedLayer + '/'+str(n)
     QFilePath = DataPath + '/QMatrix.txt'
     BFilePath = DataPath + '/BMatrix.txt'
     ParameterPath = DataPath + '/parameter.txt'
@@ -80,7 +83,7 @@ for n in range(0,number):
     for i in range(0,N): 
         for j in range(0,N):     
             if theta[i,j]<np.pi:
-                E[i,j]=energy(r[i,j],theta[i,j],Q,B) * (thickness**2)
+                E[i,j]=energy(r[i,j],theta[i,j],Q,B)  * (thickness**2)
             else:
                 E[i,j]=energy(-r[i,j],theta[i,j],Q,B) * (thickness**2)
             
@@ -103,10 +106,10 @@ for n in range(0,number):
     width = 5.79 
     height = width / 1.618 # The golden ratio.
     fig.set_size_inches(width, height)
-    fig.savefig('Plot_PerforatedBilayer.pdf')
+    fig.savefig('Plot_PerforatedBilayer_'+perforatedLayer + '_' + str(n) + '.pdf')
 
 
-f = open("./experiment/perforated-bilayer/results/kappa_simulation.txt", "w")
+f = open("./experiment/perforated-bilayer/results_" + perforatedLayer + "/kappa_simulation.txt", "w")
 f.write(str(kappa))         
 f.close()   
 
diff --git a/experiment/perforated-bilayer/perfBilayer_test.py b/experiment/perforated-bilayer/perfBilayer_test.py
index dedc84af15bdb84185ed83ff1d23717bcc80000d..e247918982c221597cd418f0675ac9d685b3ee23 100644
--- a/experiment/perforated-bilayer/perfBilayer_test.py
+++ b/experiment/perforated-bilayer/perfBilayer_test.py
@@ -105,10 +105,15 @@ def eval_energy(kappa,alpha,Q,B)  :
 # write_LOG = True   # writes Cell-Problem output-LOG in "Cell-Problem_output.log"
 # path='/home/klaus/Desktop/Dune_release/dune-microstructure/experiment/wood-bilayer/results/'  
 # pythonPath = '/home/klaus/Desktop/Dune_release/dune-microstructure/experiment/wood-bilayer'
-path = os.getcwd() + '/experiment/perforated-bilayer/results/'
+
+#--- Choose wether to perforate upper (passive) or lower (active) layer
+perforatedLayer = 'upper'
+# perforatedLayer = 'lower'
+
+path = os.getcwd() + '/experiment/perforated-bilayer/results_' +  perforatedLayer + '/'
 pythonPath = os.getcwd() + '/experiment/perforated-bilayer'
-pythonModule = "perforated_wood_upper"
-# pythonModule = "perforated_wood_lower"
+pythonModule = "perforated_wood_" + perforatedLayer
+
 executable = os.getcwd() + '/build-cmake/src/Cell-Problem'
 # ---------------------------------
 # Setup Experiment
diff --git a/experiment/perforated-bilayer/perforated_wood_lower.py b/experiment/perforated-bilayer/perforated_wood_lower.py
index 95730419f1f1a8d1c8c5dce00f350b429ca24edb..9ac85607531b3acbf88cb0913302200d1e8e4b8e 100644
--- a/experiment/perforated-bilayer/perforated_wood_lower.py
+++ b/experiment/perforated-bilayer/perforated_wood_lower.py
@@ -225,8 +225,8 @@ parameterSet.gamma=1.0
 ## numLevels : Number of Levels on which solution is computed. starting with a 2x2x2 cube mesh.
 ## {start,finish} computes on all grid from 2^(start) to 2^finish refinement
 #----------------------------------------------------
-parameterSet.numLevels= '3 3'      # computes all levels from first to second entry
-
+# parameterSet.numLevels= '3 3'      # computes all levels from first to second entry
+parameterSet.numLevels= '4 4' 
 
 #############################################
 #  Assembly options
diff --git a/experiment/perforated-bilayer/perforated_wood_upper.py b/experiment/perforated-bilayer/perforated_wood_upper.py
index 9316c2b1dadd3031a71b6c0e1cc073da8042b80b..780a40598eadf1611312990224ab51fbac009059 100644
--- a/experiment/perforated-bilayer/perforated_wood_upper.py
+++ b/experiment/perforated-bilayer/perforated_wood_upper.py
@@ -225,8 +225,8 @@ parameterSet.gamma=1.0
 ## numLevels : Number of Levels on which solution is computed. starting with a 2x2x2 cube mesh.
 ## {start,finish} computes on all grid from 2^(start) to 2^finish refinement
 #----------------------------------------------------
-parameterSet.numLevels= '3 3'      # computes all levels from first to second entry
-
+# parameterSet.numLevels= '3 3'      # computes all levels from first to second entry
+parameterSet.numLevels= '4 4' 
 
 #############################################
 #  Assembly options