From 2accf5234d65f600bbfa830e7eefba8c437b974d Mon Sep 17 00:00:00 2001
From: Klaus <klaus.boehnlein@tu-dresden.de>
Date: Tue, 10 Oct 2023 10:26:10 +0200
Subject: [PATCH] remove more deprecated files

---
 experiment/homogeneous.py                     | 104 ++++++++++++++++++
 {inputs => experiment}/material_neukamm.py    |   0
 .../material_orthotropic.py                   |   0
 .../parametrized_laminate.py                  |   0
 .../python_matrix_operations.py               |   0
 materials/__pycache__/material.cpython-38.pyc | Bin 1172 -> 0 bytes
 .../material_neukamm.cpython-38.pyc           | Bin 1179 -> 0 bytes
 .../__pycache__/material_test.cpython-38.pyc  | Bin 1176 -> 0 bytes
 .../python_matrix_operations.cpython-38.pyc   | Bin 1332 -> 0 bytes
 .../two_phase_material.cpython-38.pyc         | Bin 329 -> 0 bytes
 .../two_phase_material_1.cpython-38.pyc       | Bin 788 -> 0 bytes
 .../two_phase_material_2.cpython-38.pyc       | Bin 783 -> 0 bytes
 .../two_phase_material_3.cpython-38.pyc       | Bin 336 -> 0 bytes
 materials/homogeneous.py                      |  35 ------
 materials/material_neukamm.py                 |  76 -------------
 materials/material_neukamm_old.py             |  50 ---------
 materials/material_orthotropic.py             |  83 --------------
 materials/material_test.py                    |  85 --------------
 materials/parametrized_laminate.py            |  68 ------------
 materials/two_phase_material_1.py             |  44 --------
 materials/two_phase_material_2.py             |  44 --------
 materials/two_phase_material_3.py             |  44 --------
 22 files changed, 104 insertions(+), 529 deletions(-)
 create mode 100644 experiment/homogeneous.py
 rename {inputs => experiment}/material_neukamm.py (100%)
 rename {inputs => experiment}/material_orthotropic.py (100%)
 rename {inputs => experiment}/parametrized_laminate.py (100%)
 rename {materials => experiment}/python_matrix_operations.py (100%)
 delete mode 100644 materials/__pycache__/material.cpython-38.pyc
 delete mode 100644 materials/__pycache__/material_neukamm.cpython-38.pyc
 delete mode 100644 materials/__pycache__/material_test.cpython-38.pyc
 delete mode 100644 materials/__pycache__/python_matrix_operations.cpython-38.pyc
 delete mode 100644 materials/__pycache__/two_phase_material.cpython-38.pyc
 delete mode 100644 materials/__pycache__/two_phase_material_1.cpython-38.pyc
 delete mode 100644 materials/__pycache__/two_phase_material_2.cpython-38.pyc
 delete mode 100644 materials/__pycache__/two_phase_material_3.cpython-38.pyc
 delete mode 100644 materials/homogeneous.py
 delete mode 100644 materials/material_neukamm.py
 delete mode 100644 materials/material_neukamm_old.py
 delete mode 100644 materials/material_orthotropic.py
 delete mode 100644 materials/material_test.py
 delete mode 100644 materials/parametrized_laminate.py
 delete mode 100644 materials/two_phase_material_1.py
 delete mode 100644 materials/two_phase_material_2.py
 delete mode 100644 materials/two_phase_material_3.py

diff --git a/experiment/homogeneous.py b/experiment/homogeneous.py
new file mode 100644
index 00000000..538862a5
--- /dev/null
+++ b/experiment/homogeneous.py
@@ -0,0 +1,104 @@
+import math
+
+class ParameterSet(dict):
+    def __init__(self, *args, **kwargs):
+        super(ParameterSet, self).__init__(*args, **kwargs)
+        self.__dict__ = self
+
+parameterSet = ParameterSet()
+
+#############################################
+#  Paths
+#############################################
+parameterSet.outputPath = '/home/klaus/Desktop/Dune_release/dune-microstructure/outputs'
+parameterSet.baseName= 'homogeneous'   #(needed for Output-Filename)
+
+#Indicator function that determines both phases
+# x[0] : x-component
+# x[1] : y-component
+# x[2] : z-component
+def indicatorFunction(x):
+    # --- replace with your definition of indicatorFunction:
+    return 1    #Phase1
+
+
+
+########### Options for material phases: #################################
+#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
+#########################################################################
+## Notation - Parameter input :
+# isotropic (Lame parameters) : [mu , lambda]
+#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]
+# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
+# general_anisotropic         : full compliance matrix C
+######################################################################
+# --- Number of material phases
+Phases=1
+#--- Define different material phases:
+#- PHASE 1
+phase1_type="isotropic"
+materialParameters_phase1 = [80, 80]
+
+
+
+#--- define prestrain function for each phase
+# (also works with non-constant values)
+def prestrain_phase1(x):
+    return [[1, 0, 0], [0,1,0], [0,0,1]]
+
+
+
+
+#############################################
+#  Grid parameters
+#############################################
+## 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
+
+#############################################
+#  Assembly options
+#############################################
+parameterSet.set_IntegralZero = 1            #(default = false)
+parameterSet.set_oneBasisFunction_Zero = 1   #(default = false)
+#parameterSet.arbitraryLocalIndex = 7            #(default = 0)
+#parameterSet.arbitraryElementNumber = 3         #(default = 0)
+
+#############################################
+#  Solver Options, Type: #1: CG - SOLVER , #2: GMRES - SOLVER, #3: QR - SOLVER (default), #4: UMFPACK - SOLVER
+#############################################
+parameterSet.Solvertype = 3        # recommended to use iterative solver (e.g GMRES) for finer grid-levels
+parameterSet.Solver_verbosity = 0  #(default = 2)  degree of information for solver output
+
+
+#############################################
+#  Write/Output options      #(default=false)
+#############################################
+# --- (Optional output) write Material / prestrain / Corrector functions to .vtk-Files:
+parameterSet.write_materialFunctions = 1   # VTK indicator function for material/prestrain definition
+#parameterSet.write_prestrainFunctions = 1  # VTK norm of B (currently not implemented)
+
+# --- (Additional debug output)
+parameterSet.print_debug = 0  #(default=false)
+
+# --- Write Correctos to VTK-File:  
+parameterSet.write_VTK = 1
+
+# --- (Optional output) L2Error, integral mean: 
+#parameterSet.write_L2Error = 1
+#parameterSet.write_IntegralMean = 1      
+
+# --- check orthogonality (75) from paper: 
+parameterSet.write_checkOrthogonality = 1
+
+# --- Write corrector-coefficients to log-File:
+#parameterSet.write_corrector_phi1 = 1
+#parameterSet.write_corrector_phi2 = 1
+#parameterSet.write_corrector_phi3 = 1
+
+# --- Print Condition number of matrix (can be expensive):
+#parameterSet.print_conditionNumber= 1  #(default=false)
+
+# --- write effective quantities to Matlab-folder for symbolic minimization:
+#parameterSet.write_toMATLAB = 0  # writes effective quantities to .txt-files QMatrix.txt and BMatrix.txt
diff --git a/inputs/material_neukamm.py b/experiment/material_neukamm.py
similarity index 100%
rename from inputs/material_neukamm.py
rename to experiment/material_neukamm.py
diff --git a/inputs/material_orthotropic.py b/experiment/material_orthotropic.py
similarity index 100%
rename from inputs/material_orthotropic.py
rename to experiment/material_orthotropic.py
diff --git a/inputs/parametrized_laminate.py b/experiment/parametrized_laminate.py
similarity index 100%
rename from inputs/parametrized_laminate.py
rename to experiment/parametrized_laminate.py
diff --git a/materials/python_matrix_operations.py b/experiment/python_matrix_operations.py
similarity index 100%
rename from materials/python_matrix_operations.py
rename to experiment/python_matrix_operations.py
diff --git a/materials/__pycache__/material.cpython-38.pyc b/materials/__pycache__/material.cpython-38.pyc
deleted file mode 100644
index 444b2c133dc12c1e9e08d2a9c3bb855756d7c47c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1172
zcmbVK&1%~~5Z;w!MYiMEX`xM^lwMuhiYC|46q=Soz!;K3*^3dHtt@OyVs;HNB)1;>
zB6*6uLeDxCdh#pu)EQYx94I7om-%IOznyRPOQ+Kkw61=1V<hi42kXnB;5~`4q(Fe2
z3dPo$%F|WsD5uK1%B`%YJaEDLE>r^=$_HO<0PVz40r}0^Z;{`I0GgEFgch`^z5|=k
zA-e@z&?Vaic_R9~B_WGJUzYM^EZMJ@OP1vWiTO$j<b?$1!Z{b<?h5eE<x?>c_=@7j
zdJN8qpq#Uo8`d@cx!e&G4~Nh=p<74<Jz-;z(Dk%_9xnL>$f{2Lx>_<v*U{mn=)0vn
zD;svKZB+W-qS)q$4L-)|&v7`;XF8lrqqzx>w3*nv2#@BOetoKqO|v8f4rXbLxv@Bp
z?HqNOXgXvu)h3)pR%04X-xP~-JIx@CBSQEz&tjYAS(`A-7AYY;+Amh(@NmVF=~B(q
z<QDTHjh91C9<bUab%$MUk>6Xf`-~hQZox@h(&SZ^yu?k2rAv2!e0N1m)#jx{pA$EI
zW0S(NS0FWsQJRg4ab)z{kCZh`ppdvt`v2d6T{^zP>)m)2{6CTRK2y;(@}q|!OYW9>
zzhk-kzB9OO93KL{f4m0%nEZaP^k}YQwNotYIL}5DV0t#n3yl$v)hIu<i$a^y$xZ2+
zg{da0{2|k5RC`6|h-=jD^%ogN7}2-UXllCay1jeq_UgL*d+PS9nIY4M+{W6tZ<!Ac
gW;x8K`W=5M^PE&5>+J_mJl~T+i^L=81a9E|1#TVsLjV8(

diff --git a/materials/__pycache__/material_neukamm.cpython-38.pyc b/materials/__pycache__/material_neukamm.cpython-38.pyc
deleted file mode 100644
index 9d7421aeea4ce841358b2a6f70980f04d0e1084f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1179
zcmbVKJ8u&~5Z=e#<??Xs(2z(7L1_e7ByB{Hh(MySED|KNjdi+N?2~;D?e0mj<aGQK
zD*p=p0u9YoNL2m{RLq>u!Ko6lt9fd6XTNXuQ>(SZaQ*z&j%CQ$ZwfY-z~Bvvb*O*=
zpE5;OO!?(17E084sbp<E<$(n6D^ouBDu6(30q&7dA^O{mzk~iRgs_eIJ=lR=tZ%^{
zw9xLuKD5!cfnTt0XNjFzzsoEBEav1lOQI!ti()^c0)EXwT#GpadBnh*^M`E0%yW$W
z%^1W5!<^X24Vs!@&JWqdGXwB1@D>z?PuS{@@OoT7&X)87L#j#r`o1KN*3sF5b!Ek`
zl<&scMJo6b#V$9-r(>l4eC&<$RQD#+sI<LvZ6_`-dgo=PUtDVIl5Eri3eqGtxpk(D
zU1@YLjhr?~G_^P0Fw^BEO4FCctU5?CNa6?^y(_cWC3*G$TiJb7jC;7BtV9@`F<TOA
zYCEyHGkKB3%K;@%NgbiOMKU3!XV)Y@LI;py5F?2iz1pHTk|QK*A^V2zuKB6aF1QIO
zaRc9MVOVtvgIG<JWW!<{S^er9vzB;d+_X{u{~JsTkFWX>{JT0IzsI6==gxgPb3%*Q
zZ&^a$75#s}&3&4meAsAyfPS}Ac{u5@IxJ>xoM%G}Oma2M3vD7At5relW`(wu$ZaL<
z%+?cC!GLJAYIjBFkZRP?`qK;|6QvqIkZtI0>W=TIJ8tSu?x;JdXJ&{#LohZ-uLobx
fJUmTvD5v^0eJT4GRmhv&3ZHt?<KbHTP=@j^!y@~}

diff --git a/materials/__pycache__/material_test.cpython-38.pyc b/materials/__pycache__/material_test.cpython-38.pyc
deleted file mode 100644
index 5185825128d19bce06d794b7260599da858ed7ed..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1176
zcmbVK&59F25bmGJWRh%t_M#gQ@fuOXCfCIkTtyIKAS*~;!Z0-^Lz0=Hy8|1@-aPma
zp1kELd<D;Q5<KM<JXtlFtl85pc2i&dP~Fw_Re!A4s|?rI@6F&FTEEFTTmqd}D8?cH
z13qVpw3zeDoiCKg<5J07JIVnG&KIUiP*N_qstmX%LV0Lc3cHGS4Lqn|{0OR0!~8lN
zK^=7i8qh@D1U_P&))p(XL5FAjX~4-YmPAeR8pV7<0DjFuT#GdW*=FFZ`9n5i`WgDA
zLm$M5VN4vvhDDCM<|l0C=pmFwcnb={CzJ;hydKxj^DVtV6BMCeKeoit-aFs0j?DO#
zD%ojhedT`k1Dj}FqGJSqK6IzaBJ9rQ{?c?WLNl{T+PzrD;q%MT*eITKft*DY=)_pP
z4D3>e-Gy&M9r<%}V~s7QzercvaTG%o_*mubG7fB%#5JsA8VHO#xS#AqXb&S>qD)mH
zlUSXkQLr6S@Qk31aEoDTlir*&{0I#|enCtmB3ijdYa%De)J6_8-JO$@x4PllrNB+^
zx{PktN;SS*`%yejr@jeK-(b`biHz$e;{U%v*YWtS9<_g0<=#6?+E;Gfr!uE*vG-e=
zy6=d=zsB`_iud0i6hB70)5;ti^HiOrD?3f%F*-WB8YgL}eHyD#ZeUkwXflzQOq!L+
zC#u{b(P&g{N9UMwRD1tphQ9U}A^sjy&|T#9?#SyEdHp-``uWT>(Wj}61Jd)s=QH=t
f76~lp;Y<2b<}rfDi|u+39M|Dq6-A;nJn6~5i1GU0

diff --git a/materials/__pycache__/python_matrix_operations.cpython-38.pyc b/materials/__pycache__/python_matrix_operations.cpython-38.pyc
deleted file mode 100644
index 9aaa3d38b1a8b5256d89828869ca69253aec7e9f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1332
zcmZWozi-n(6u$G>soN$+Kp<4=f|Ml^)QANMML=l>Sh5tBP*g=e%XJ(7=$$PQ$(dl_
z&uGW~OP-LJx-m2Hy{pqW<*fJad*}1J``-KfxzpKT7=MmBe&1&7HwDdMA$SMVLpaGK
zpRzHRmJ~nO*pjw%Fbmm|YnW~6%5}_++>o1?Te2-XnAapfWP`11WMCto(^L<_4s0K$
zci<$?*#$4zCBLvP*#h@immz~S3b6&_*V}=ptRx#d6Qw4z@p`T%iOy0TT=9zUT`@&T
z|9<gK(m3$WrjtT@2Z27z)66?4lHmELK<7~sdXj=T@>QyHRrq<K0xt~kQLdsud)X{M
zNt5Gvg7DjMngwc-M`@yWvsoqdEJneYrV25x*5Lo+Ca`F@^#Mw-+cpMd0l|8-Du7`<
zaJ;fdii&b=9Hll?6eYSr#7wo|DhI6nzy(~~VH4Pgt&H0{P@}1$l3!9ktkE^S8d!>s
z8M~1Tl03?1jboN)Ssx`OUmVl{_6>0W8g!v`*gi}vIEiB<55?U%6mu&F_3!+Eef=;O
zxA^tkzQxbxPHB}WNohL_o*C=_@shl~4MDtOf(_aE@chMjzqC*~aZ@_g#_`aB15Jd%
zprxow6@OoeJkBZ}Rs6K#XAPF7n08!D^DVkPea`rf)uxB<a`hPT3Rx-(nIU@waF^sF
zULpIkLAF1)Yf_*BQiiHgLrojRYFdgerS8EE979Fjr-cXP9+K;lGo4ztOYBLxjdg8)
zZob3Yc=}xRu(m>ldPvGORDJ^BTIk!2OuNenQf)-IZkL6^>?I*%fBm+Wbt7u-1#ax6
zXqlIydT%HWnIc^qS`g?X!qmpQJRMDKdx|#;Wj+BOxML?N;%sJ=ZT?I}>Qy9L(@s+e
eMSB|=m*sPZaVm>x@P__EBM4WxHcYsiuKN$#=-&kZ

diff --git a/materials/__pycache__/two_phase_material.cpython-38.pyc b/materials/__pycache__/two_phase_material.cpython-38.pyc
deleted file mode 100644
index e7624af2ace8ebb1cb9aa0900aead6aba77a25ba..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 329
zcmYjNyH3L}6uq_sjgTrabV1?=GJt=e0wl^vma0pa%8lJ7N<tz(1W0V~GyDf1z?>Bc
zslU*P<BFk2I_KWw`>^H3czi~H5?||I#Gh!6!C~$|H-Tu<tf3`ouEhr}nPzj!k{v3P
z7c7Q<#9V;)pu2>4dc*7my)(`0#7?xB!-Etz<Teg$LE!s#7hT2%q1Fz8y?l~A!O{Lv
zmR)OP-KgN?%(&Wjy__xb2dTr8xoWGzcFx;S_+X9P8Z>)b87KX7x9Usf%&Jx1*h)3m
u{p-LsDYm*(2(fdPa63Yl@gYH1c`%22k0kaE>9p;1Xv|G~r;9(7j{X2@_(P5W

diff --git a/materials/__pycache__/two_phase_material_1.cpython-38.pyc b/materials/__pycache__/two_phase_material_1.cpython-38.pyc
deleted file mode 100644
index 78b1dd2bd3091a8f4709ecd09742ae4c3d6ac0a7..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 788
zcmbVKL95e15Z=wEY5HohikAoe0E=j7PaZ@CA0A8LsfS$3npx7NO*YJK&<Ec1zexX$
z=N$Fazu?K4yq5RCgW|x<ezVN%%=ablCX+Kk_T$^#;@LompPbybh>}<2o&yMwJCO^B
zKz$XtggB32kSj<aDWg0lJUHS6hLBRt5JqrDXA1IC%*F?LMJx-+$I%!o^4H}4A%!45
z)0}hhMMAWV@d2ny0WrCt7Y0k@hLW7@`^y7o2i|ffJEcGPz3k+ty}%(|{d%8mTxGKD
zPPab0Fn$|clU=m6dGglyVCymiPAXfV^8wo;v}m$Q2ZL7cd=@^sb+ggltWS6A`P1gA
zyJu^#g$@qiv~>}zt5X{16AB`l$~eLiA!J(l$a)vhHMTgcDF1^yseZ#9h%-c`qDZJe
z36-iO4fbk@OtcrE=ZD;TjhHU-65X^x;)dGR*Q?JT(XHo3A@L5y|K9+|)c)_27mum@
zG<iaJHtJ#$a?`7mCo5Lg=i^@C`8r%RCO<z3z0#;FLm$E)X&mbof2mva9FfP}QszdU
b^m*l=-I*8s<M=6sbeP_cRV-8XBvrowzu=~f

diff --git a/materials/__pycache__/two_phase_material_2.cpython-38.pyc b/materials/__pycache__/two_phase_material_2.cpython-38.pyc
deleted file mode 100644
index 86b1c59d67e8cc248fd7ae49f0d16bdafe0fc4fc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 783
zcmbVJ&59F25bmCyOePzHQM@ep00z-vbMhc6xOfZ!e-3jA?Nl>ql9?W=dsr8|?VfxR
z^ERI6>M5__$*S3eUGSh-P}N^GRbBOc{c$om5oF)K-!EPag!swHU5hArL+&|%0J#;p
zfC$vJ$R)&i1cO{b0!bO=G2y`hCoqJRYKAa^6FO6n@5OAqr&q+HkbE4Bu_Av<?jKVK
z;w#NL6;~3XO^lDY6BN0i7vja98%lDrAFubk;7oQ(fA%}s$uB#BL%RC)DO<bBWSgyS
zeRgjACb%X$Z)@}HgYm)EWd@v7wm|0twnb>sWR(sEt={@9T)0)U*50g+cdPmH=CXTW
zYp{h54&SwP5v;3I8s`%VBAUuL!Vw{4M)}Bk7tl4f*e@yngEk3%OB;wTM5Urgs6Ppn
zswC<=wLm6{%)RG_+<SwVF7guHv_ayA+SWI#pFN>l&y7OjJ&OOo0gkEt-zU$XQu%T6
zgz#+C#U$jqS0_)FtgO$+y~1a!aM_sr^eFUFqpl2ngg?+Y)Xo1=H}5$jkGrGHtvu<=
Y%0as|uUJJtrH~HOhp~!f%ATa^Hyv)JzW@LL

diff --git a/materials/__pycache__/two_phase_material_3.cpython-38.pyc b/materials/__pycache__/two_phase_material_3.cpython-38.pyc
deleted file mode 100644
index 82d3ba4f63541c8c5816860928b1a814eaa272ba..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 336
zcmYjMu};G<5IsAFMo5(yx*##JWdIMX2#_di7^*H^A~!ZolmtgUTNH^6eun?x1DLaR
z$}cc+?tuEF_v~lCyR(<m=?M_F&G-6(0qmkV1SfM(#2JYO&01K2<~sR=71L}1nHcE?
z@{+3m5%&r4fr#fM9^R?;3_h6Vjc_xaEI<n)P=}*@jAJ%L!q43p%UzU=4T)MKEo}P*
z?wF2#pJZh_Bb!zQlyifPx4oP%^GB(}i@EIT(pmH_ls-5kH-^IA)dr=1wMAbkG)1Sp
zakXlT>#P24V9zP_#n>G9DHGg9pYcIZuG*XZ<O7*dU`TH|t3zvU<4ZCAAf5aH%v(g&

diff --git a/materials/homogeneous.py b/materials/homogeneous.py
deleted file mode 100644
index 7369270d..00000000
--- a/materials/homogeneous.py
+++ /dev/null
@@ -1,35 +0,0 @@
-import math
-
-
-#Indicator function that determines both phases
-# x[0] : x-component
-# x[1] : y-component
-# x[2] : z-component
-def indicatorFunction(x):
-    # --- replace with your definition of indicatorFunction:
-    return 1    #Phase1
-
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-# --- Number of material phases
-Phases=1
-#--- Define different material phases:
-#- PHASE 1
-phase1_type="isotropic"
-materialParameters_phase1 = [80, 80]
-
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
diff --git a/materials/material_neukamm.py b/materials/material_neukamm.py
deleted file mode 100644
index c654bd8b..00000000
--- a/materials/material_neukamm.py
+++ /dev/null
@@ -1,76 +0,0 @@
-import math
-from python_matrix_operations import *
-import ctypes
-import os
-import sys
-#---------------------------------------------------------------
-
-
-
-#--- define indicator function for material phases
-# x[0] : y1-component
-# x[1] : y2-component
-# x[2] : x3-component
-#To indicate phases return either : 1 / 2 / 3
-###############
-# Cross
-###############
-def indicatorFunction(x):
-    theta=0.25
-    factor=1
-    if (x[0] <-0.5+theta and x[2]<-0.5+theta):
-        return 1    #Phase1
-    elif (x[1]<-0.5+theta and x[2]>0.5-theta):
-        return 2    #Phase2
-    else :
-        return 3   #Phase3
-
-###############
-# Wood
-###############
-# def indicatorFunction(x):
-#     theta=0.25
-    # if ((abs(x[0]) < theta/2) and x[2]<0.25):
-    #     return 1    #latewood
-    # elif ((abs(x[0]) > theta/2) and x[2]<0.25):
-    #     return 2    #earlywood
-    # else :
-    #     return 0    #Phase3
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]  # see https://en.wikipedia.org/wiki/Poisson%27s_ratio with x=1,y=2,z=3
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-# --- Number of material phases
-Phases=3
-#--- Define different material phases:
-#- PHASE 1
-phase1_type="isotropic"
-materialParameters_phase1 = [80, 80]
-
-#- PHASE 2
-phase2_type="isotropic"
-materialParameters_phase2 = [80, 80]
-
-#- PHASE 3
-phase3_type="isotropic"
-materialParameters_phase3 = [60, 25]
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase3(x):
-    return [[0, 0, 0], [0,0,0], [0,0,0]]
-    # return [[x[0],0 ,0 ], [0,0,x[1]], [0,0,x[2]]]
diff --git a/materials/material_neukamm_old.py b/materials/material_neukamm_old.py
deleted file mode 100644
index 790e3a43..00000000
--- a/materials/material_neukamm_old.py
+++ /dev/null
@@ -1,50 +0,0 @@
-import math
-
-# DEPRECATED!!!! just for reference
-
-#Indicator function that determines both phases
-# x[0] : y1-component
-# x[1] : y2-component
-# x[2] : x3-component
-#    --- replace with your definition of indicatorFunction:
-###############
-# Wood
-###############
-# def f(x):
-#     theta=0.25
-    # if ((abs(x[0]) < theta/2) and x[2]<0.25):
-    #     return 1    #latewood
-    # elif ((abs(x[0]) > theta/2) and x[2]<0.25):
-    #     return 2    #earlywood
-    # else :
-    #     return 0    #Phase3
-
-# def b1(x):
-#     return [[.5, 0, 0], [0,1,0], [0,0,0]]
-
-# def b2(x):
-#     return [[.4, 0, 0], [0,.4,0], [0,0,0]]
-
-# def b3(x):
-#     return [[0, 0, 0], [0,0,0], [0,0,0]]
-###############
-# Cross
-###############
-def f(x):
-    theta=0.25
-    factor=1
-    if (x[0] <-1/2+theta and x[2]<-1/2+theta):
-        return 1    #Phase1
-    elif (x[1]< -1/2+theta and x[2]>1/2-theta):
-        return 2    #Phase2
-    else :
-        return 0    #Phase3
-
-def b1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def b2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def b3(x):
-    return [[0, 0, 0], [0,0,0], [0,0,0]]
diff --git a/materials/material_orthotropic.py b/materials/material_orthotropic.py
deleted file mode 100644
index 3f9ab71e..00000000
--- a/materials/material_orthotropic.py
+++ /dev/null
@@ -1,83 +0,0 @@
-import math
-from python_matrix_operations import *
-import ctypes
-import os
-import sys
-#---------------------------------------------------------------
-
-
-
-#--- define indicator function
-def indicatorFunction(x):
-    theta=0.25
-    factor=1
-    if (x[0] <-0.5+theta and x[2]<-0.5+theta):
-        return 1    #Phase1
-    elif (x[1]<-0.5+theta and x[2]>0.5-theta):
-        return 2    #Phase2
-    else :
-        return 3    #Phase3
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]   # see https://en.wikipedia.org/wiki/Poisson%27s_ratio with x=1,y=2,z=3
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-
-# --- Number of material phases
-Phases=3
-
-
-#--- Define different material phases:
-
-#- PHASE 1
-phase1_type="orthotropic"
-materialParameters_phase1 = [11.2e3,630,1190,700,230,960,0.63 ,0.49,0.37]    # walnut parameters (values for compliance matrix) see [Dimwoodie; Timber its nature and behavior p.109]
-
-#- PHASE 2
-phase2_type="orthotropic"
-# materialParameters_phase2 = [10.7e3,430,710,620,23,500, 0.51 ,0.38,0.31]   # Norway spruce parameters (values for compliance matrix) see [Dimwoodie; Timber its nature and behavior p.109]
-materialParameters_phase2 = [11.2e3,630,1190,700,230,960,0.63 ,0.49,0.37] 
-
-# Pass a set of FrameVectors to transform material properties to this Frame
-# phase2_FrameVector1 = [1, 0 ,0]
-# phase2_FrameVector2 = [0, 5, 0]
-# phase2_FrameVector3 = [0, 0, 1]
-
-phase2_axis = 2
-phase2_angle = np.pi/2.0
-# phase2_angle = 2*np.pi/12
-
-
-
-#- PHASE 3
-phase3_type="isotropic"
-materialParameters_phase3 = [60, 25]
-
-
-#--- for general anisotopic material the compliance matrix is required:
-# phase3_type="general_anisotropic"
-# materialParameters_phase3 = np.array([[1.0,     0.0,     0.0,   0.0 ,         0.0,   0.0],
-#                                       [0.0,     1.0,     0.0,   0.0 ,         0.0,   0.0],
-#                                       [0.0,     0.0,     1.0,   0.0 ,         0.0,   0.0],
-#                                       [0.0,     0.0,     0.0,   math.sqrt(2), 0.0,   0.0],
-#                                       [0.0,     0.0,     0.0,   0.0 ,         1.0,   0.0],
-#                                       [0.0,     0.0,     0.0,   0.0 ,         0.0,   1.0]])
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase3(x):
-    return [[0, 0, 0], [0,0,0], [0,0,0]]
-    # return [[x[0],0 ,0 ], [0,0,x[1]], [0,0,x[2]]]
diff --git a/materials/material_test.py b/materials/material_test.py
deleted file mode 100644
index b3f0737d..00000000
--- a/materials/material_test.py
+++ /dev/null
@@ -1,85 +0,0 @@
-import math
-from python_matrix_operations import *
-import ctypes
-import os
-import sys
-#---------------------------------------------------------------
-
-#To indicate phases return either : 1 / 2 / 3
-
-#--- define indicator function
-def indicatorFunction(x):
-    theta=0.25
-    factor=1
-    if (x[0] <-0.5+theta and x[2]<-0.5+theta):
-        return 1    #Phase1
-    elif (x[1]<-0.5+theta and x[2]>0.5-theta):
-        return 2    #Phase2
-    else :
-        return 3    #Phase3
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]  # see https://en.wikipedia.org/wiki/Poisson%27s_ratio with x=1,y=2,z=3
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-
-# --- Number of material phases
-Phases=3
-
-
-#--- Define different material phases:
-
-#- PHASE 1
-# phase1_type="isotropic"
-# materialParameters_phase1 = [80, 80]
-
-# phase1_type="orthotropic"
-# materialParameters_phase1 = [11.2e3,630,1190,700,230,960,0.63 ,0.49,0.37]    # walnut parameters (values for compliance matrix)
-# # materialParameters_phase1 = [10.7e3,430,710,620,23,500, 0.51 ,0.38,0.31]   # Norway spruce parameters (values for compliance matrix)
-
-phase1_type="general_anisotropic"
-materialParameters_phase1 = np.array([[1.0,     8.0,     16.0,   16.0 ,         8.0,  8.0],
-                                      [8.0,     1.0,     16.0,   16.0 ,         8.0,  8.0],
-                                      [8.0,     8.0,     1.0,    16.0 ,         8.0,   8.0],
-                                      [8.0,     8.0,     16.0,   math.sqrt(2), 8.0,   8.0],
-                                      [8.0,     8.0,     16.0,   16.0 ,         8.0,  8.0],
-                                      [8.0,     8.0,     16.0,   16.0 ,         8.0,  1.0]])
-
-#- PHASE 2
-phase2_type="transversely_isotropic"
-materialParameters_phase2 = [11.2e3,1190,960,0.63 ,0.37]
-
-# phase2_type="isotropic"
-# materialParameters_phase2 = [80, 80]
-
-#- PHASE 3
-# phase3_type="isotropic"
-# materialParameters_phase3 = [60, 25]
-
-#--- for general anisotopic material the compliance matrix is required:
-phase3_type="general_anisotropic"
-materialParameters_phase3 = np.array([[1.0,     0.0,     0.0,   0.0 ,         0.0,   0.0],
-                                      [0.0,     1.0,     0.0,   0.0 ,         0.0,   0.0],
-                                      [0.0,     0.0,     1.0,   0.0 ,         0.0,   0.0],
-                                      [0.0,     0.0,     0.0,   math.sqrt(2), 0.0,   0.0],
-                                      [0.0,     0.0,     0.0,   0.0 ,         1.0,   0.0],
-                                      [0.0,     0.0,     0.0,   0.0 ,         0.0,   1.0]])
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase3(x):
-    return [[0, 0, 0], [0,0,0], [0,0,0]]
-    # return [[x[0],0 ,0 ], [0,0,x[1]], [0,0,x[2]]]
diff --git a/materials/parametrized_laminate.py b/materials/parametrized_laminate.py
deleted file mode 100644
index c05161f3..00000000
--- a/materials/parametrized_laminate.py
+++ /dev/null
@@ -1,68 +0,0 @@
-import math
-from python_matrix_operations import *
-import ctypes
-import os
-import sys
-#---------------------------------------------------------------
-
-
-#--- define indicator function
-def indicatorFunction(x):
-    theta=0.25
-    factor=1
-    if (abs(x[0]) < (theta/2) and x[2] < 0 ):
-        return 1    #Phase1
-    elif (abs(x[0]) > (theta/2) and x[2] > 0 ):
-        return 2    #Phase2
-    elif (abs(x[0]) < (theta/2) and x[2] > 0 ):
-        return 3    #Phase3
-    else :
-        return 4    #Phase4
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]   # see https://en.wikipedia.org/wiki/Poisson%27s_ratio with x=1,y=2,z=3
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-
-# --- Number of material phases
-Phases=4
-
-#--- Define different material phases:
-
-#- PHASE 1
-phase1_type="isotropic"
-materialParameters_phase1 = [2.0, 0]   
-
-#- PHASE 2
-phase2_type="isotropic"
-materialParameters_phase2 = [1.0, 0]   
-
-#- PHASE 3
-phase3_type="isotropic"
-materialParameters_phase3 = [2.0, 0]
-
-#- PHASE 4
-phase4_type="isotropic"
-materialParameters_phase4 = [1.0, 0]
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[2, 0, 0], [0,2,0], [0,0,2]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase3(x):
-    return [[0, 0, 0], [0,0,0], [0,0,0]]
-
-def prestrain_phase4(x):
-    return [[0, 0, 0], [0,0,0], [0,0,0]]
-
diff --git a/materials/two_phase_material_1.py b/materials/two_phase_material_1.py
deleted file mode 100644
index b09bf3c9..00000000
--- a/materials/two_phase_material_1.py
+++ /dev/null
@@ -1,44 +0,0 @@
-import math
-
-
-#Indicator function that determines both phases
-# x[0] : x-component
-# x[1] : y-component
-# x[2] : z-component
-def indicatorFunction(x):
-    # --- replace with your definition of indicatorFunction:
-    if (abs(x[0]) > 0.25):
-        return 1    #Phase1
-    else :
-        return 2    #Phase2
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-# --- Number of material phases
-Phases=2
-#--- Define different material phases:
-#- PHASE 1
-phase1_type="isotropic"
-materialParameters_phase1 = [80, 80]
-
-#- PHASE 2
-phase2_type="isotropic"
-materialParameters_phase2 = [80, 80]
-
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
diff --git a/materials/two_phase_material_2.py b/materials/two_phase_material_2.py
deleted file mode 100644
index b26dd94b..00000000
--- a/materials/two_phase_material_2.py
+++ /dev/null
@@ -1,44 +0,0 @@
-import math
-
-
-#Indicator function that determines both phases
-# x[0] : x-component
-# x[1] : y-component
-# x[2] : z-component
-def indicatorFunction(x):
-    # --- replace with your definition of indicatorFunction:
-    if (abs(x[1]) > 0.25):
-        return 1    #Phase1
-    else :
-        return 2    #Phase2
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-# --- Number of material phases
-Phases=2
-#--- Define different material phases:
-#- PHASE 1
-phase1_type="isotropic"
-materialParameters_phase1 = [80, 80]
-
-#- PHASE 2
-phase2_type="isotropic"
-materialParameters_phase2 = [80, 80]
-
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
diff --git a/materials/two_phase_material_3.py b/materials/two_phase_material_3.py
deleted file mode 100644
index f087f5d4..00000000
--- a/materials/two_phase_material_3.py
+++ /dev/null
@@ -1,44 +0,0 @@
-import math
-
-
-#Indicator function that determines both phases
-# x[0] : x-component
-# x[1] : y-component
-# x[2] : z-component
-def f(x):
-    # --- replace with your definition of indicatorFunction:
-    if (abs(x[2]) > 0.25):
-        return 1    #Phase1
-    else :
-        return 0    #Phase2
-
-
-########### Options for material phases: #################################
-#     1. "isotropic"     2. "orthotropic"      3. "transversely_isotropic"   4. "general_anisotropic"
-#########################################################################
-## Notation - Parameter input :
-# isotropic (Lame parameters) : [mu , lambda]
-#         orthotropic         : [E1,E2,E3,G12,G23,G31,nu12,nu13,nu23]
-# transversely_isotropic      : [E1,E2,G12,nu12,nu23]
-# general_anisotropic         : full compliance matrix C
-######################################################################
-# --- Number of material phases
-Phases=2
-#--- Define different material phases:
-#- PHASE 1
-phase1_type="isotropic"
-materialParameters_phase1 = [80, 80]
-
-#- PHASE 2
-phase2_type="isotropic"
-materialParameters_phase2 = [80, 80]
-
-
-
-#--- define prestrain function for each phase
-# (also works with non-constant values)
-def prestrain_phase1(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-
-def prestrain_phase2(x):
-    return [[1, 0, 0], [0,1,0], [0,0,1]]
-- 
GitLab