diff --git a/.gitignore b/.gitignore
index fbe569c350276836b1bd0131523f413eb6d16968..71283b03bcdf9fdf8dce0f393ebc1c299ef5e45c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@
 .Ruserdata
 dce_simulation_tool.Rproj
 modeloutput/
+*.html
\ No newline at end of file
diff --git a/Designs/designjeem.ngd b/Designs/designjeem.ngd
new file mode 100644
index 0000000000000000000000000000000000000000..44bc543fe9b9b7a33dce265c4f87912026749f39
--- /dev/null
+++ b/Designs/designjeem.ngd
@@ -0,0 +1,33 @@
+Choice situation	alt1.groesse	alt1.entfernung	alt1.gemeinschaft	alt1.kultur	alt1.umweltbildung	alt1.gestaltung	alt1.zugang	alt1.beitrag	Block	alt2.groesse	alt2.entfernung	alt2.gemeinschaft	alt2.kultur	alt2.umweltbildung	alt2.gestaltung	alt2.zugang	alt2.beitrag	alt3.groesse	alt3.entfernung	alt3.gemeinschaft	alt3.kultur	alt3.umweltbildung	alt3.gestaltung	alt3.zugang	alt3.beitrag	Design
+1	0.05	1	0	1	0	0	0	0.36	3	1	0.3	1	0	1	1	-2	0.9	0	0	0	0	0	0	0	0	1
+2	0.2	3	0	0	0	1	-2	0.36	2	2	0.6	1	1	1	0	0	0.12	0	0	0	0	0	0	0	0	1
+3	0.05	1	0	0	0	1	-5	0.12	4	0.5	0.6	1	1	1	0	-2	0.06	0	0	0	0	0	0	0	0	1
+4	0.05	0.6	1	1	0	0	-2	0.9	1	2	0.3	0	0	1	1	0	0.6	0	0	0	0	0	0	0	0	1
+5	1	1	1	1	1	1	-5	0.06	4	0.5	0.3	0	0	0	0	-2	0.36	0	0	0	0	0	0	0	0	1
+6	1	0.6	0	1	0	1	-2	0.12	3	0.1	1	1	0	1	0	0	0.36	0	0	0	0	0	0	0	0	1
+7	0.1	0.3	1	1	0	1	-2	0.36	1	0.05	0.6	0	0	1	0	0	0.6	0	0	0	0	0	0	0	0	1
+8	2	2	0	1	0	1	-2	0.06	4	1	0.3	1	0	1	0	-5	0.12	0	0	0	0	0	0	0	0	1
+9	0.2	2	1	0	0	0	-2	0.6	4	0.1	0.6	0	1	1	1	0	1.2	0	0	0	0	0	0	0	0	1
+10	1	2	0	1	0	0	0	0.06	2	0.2	0.6	1	0	1	1	-5	0.36	0	0	0	0	0	0	0	0	1
+11	2	2	1	1	1	0	-5	0.12	1	1	1	0	0	0	1	0	0.06	0	0	0	0	0	0	0	0	1
+12	0.1	0.6	1	0	0	1	-5	0.06	3	1	1	0	1	1	0	0	0.36	0	0	0	0	0	0	0	0	1
+13	0.5	0.6	0	0	0	1	0	0.12	3	0.05	0.3	1	1	1	0	-2	0.06	0	0	0	0	0	0	0	0	1
+14	0.5	3	0	0	1	0	-2	0.12	3	0.2	2	1	1	0	1	0	0.9	0	0	0	0	0	0	0	0	1
+15	1	3	1	1	1	1	0	0.6	2	0.2	1	0	0	1	0	-5	0.06	0	0	0	0	0	0	0	0	1
+16	0.5	0.3	0	1	1	1	0	0.9	1	2	3	1	0	0	0	-2	0.06	0	0	0	0	0	0	0	0	1
+17	0.05	0.6	1	0	1	1	-2	0.36	4	0.2	3	0	1	0	0	0	0.12	0	0	0	0	0	0	0	0	1
+18	2	0.6	0	1	1	1	-5	0.36	1	0.1	2	1	0	0	0	0	0.12	0	0	0	0	0	0	0	0	1
+19	0.2	1	1	1	1	0	-2	0.6	3	2	2	0	0	0	1	-5	1.2	0	0	0	0	0	0	0	0	1
+20	0.1	1	0	1	1	0	-2	0.12	1	0.05	0.3	1	0	0	1	0	0.06	0	0	0	0	0	0	0	0	1
+21	0.5	1	1	0	1	1	0	1.2	2	1	3	0	1	0	0	-5	0.36	0	0	0	0	0	0	0	0	1
+22	0.05	3	0	1	1	1	0	0.9	1	1	0.3	1	0	0	0	-2	1.2	0	0	0	0	0	0	0	0	1
+23	1	2	1	0	1	0	0	0.36	4	0.5	1	0	1	0	1	-2	0.12	0	0	0	0	0	0	0	0	1
+24	0.2	0.3	1	1	0	1	0	0.12	2	0.5	2	0	0	1	0	-2	0.6	0	0	0	0	0	0	0	0	1
+25	0.5	0.3	0	1	0	0	-5	0.6	3	0.05	2	1	0	1	1	-2	0.12	0	0	0	0	0	0	0	0	1
+26	0.2	2	0	0	1	0	0	0.06	1	2	1	1	1	0	1	-2	0.6	0	0	0	0	0	0	0	0	1
+27	0.1	0.3	0	0	1	0	-2	0.06	2	0.5	2	1	1	0	1	0	0.36	0	0	0	0	0	0	0	0	1
+28	0.5	1	1	0	0	0	-5	0.9	4	0.2	0.6	0	1	1	1	-2	1.2	0	0	0	0	0	0	0	0	1
+29	0.05	0.3	0	1	0	0	-5	1.2	2	0.1	3	1	0	1	1	0	0.9	0	0	0	0	0	0	0	0	1
+30	2	3	1	0	1	0	0	1.2	3	0.1	2	0	1	1	1	-5	0.6	0	0	0	0	0	0	0	0	1
+31	2	0.6	0	0	0	0	0	0.9	4	0.5	3	1	1	1	1	-5	0.06	0	0	0	0	0	0	0	0	1
+32	2	1	0	0	1	1	-2	0.9	2	0.1	0.6	1	1	0	0	0	0.6	0	0	0	0	0	0	0	0	1
diff --git a/Designsparks/bayeffdes.ngd b/Designsparks/bayeffdes.ngd
new file mode 100644
index 0000000000000000000000000000000000000000..128675cc8e171861bec0f4eedb48496aae4bd5d0
--- /dev/null
+++ b/Designsparks/bayeffdes.ngd
@@ -0,0 +1,57 @@
+Design	Choice situation	alt1.groesse	alt1.entfernung	alt1.gemeinschaft	alt1.kultur	alt1.umweltbildung	alt1.toiletten	alt1.spiel	alt1.pflegeint	alt1.pflegeziele	alt1.beitrag	alt2.groesse	alt2.entfernung	alt2.gemeinschaft	alt2.kultur	alt2.umweltbildung	alt2.toiletten	alt2.spiel	alt2.pflegeint	alt2.pflegeziele	alt2.beitrag	Block	
+1	1	50	0.3	0	1	1	1	0	2	-1	3.6	7	1	1	0	0	0	1	0	1	0.6	4	
+1	2	20	3	0	0	1	1	0	0	1	0.6	20	0.3	1	1	0	0	1	2	-1	3.6	1	
+1	3	20	3	0	1	1	1	1	0	0	9	14	1	1	0	0	0	0	1	0	9	4	
+1	4	35	1	0	1	0	1	1	0	-1	3.6	3.5	0.6	1	0	1	0	0	2	1	1.2	2	
+1	5	50	0.3	1	1	1	1	0	0	1	6	7	1	0	0	0	1	1	1	-1	6	2	
+1	6	50	3	1	0	0	1	1	0	-1	0.6	3.5	0.3	0	1	1	0	0	2	1	0.6	4	
+1	7	7	3	1	1	1	1	1	2	0	6	35	0.6	0	0	0	0	0	0	0	6	1	
+1	8	35	0.6	1	0	0	1	0	1	0	9	7	3	0	1	1	0	1	0	1	0.6	2	
+1	9	50	3	1	0	1	0	1	2	-1	1.2	3.5	0.3	0	1	0	1	0	0	1	1.2	2	
+1	10	35	0.3	0	1	0	1	1	0	1	6	7	3	1	0	1	0	0	2	-1	0.6	2	
+1	11	20	1	0	1	1	0	1	1	0	12	20	1	1	0	1	0	0	1	0	9	1	
+1	12	3.5	0.3	1	0	0	0	1	0	-1	0.6	50	3	0	1	1	1	0	2	1	3.6	2	
+1	13	14	1	1	1	1	0	0	0	-1	6	20	1	0	0	0	1	1	1	1	12	3	
+1	14	7	0.6	0	0	1	1	0	1	0	9	50	3	1	1	0	0	1	1	-1	0.6	3	
+1	15	7	2	0	1	0	1	0	0	0	1.2	50	0.3	1	0	1	1	1	2	0	9	3	
+1	16	3.5	0.6	1	1	1	1	1	2	1	6	50	0.6	0	0	0	0	0	0	-1	0.6	1	
+1	17	14	1	0	0	0	0	1	1	0	12	14	2	1	1	0	0	0	1	0	12	1	
+1	18	3.5	0.3	0	1	0	0	0	2	-1	0.6	35	3	1	0	1	1	1	0	1	1.2	1	
+1	19	14	0.6	0	0	0	1	1	1	0	9	20	2	1	1	1	0	0	1	0	9	3	
+1	20	35	0.3	0	0	1	0	1	0	1	1.2	14	2	1	1	0	1	0	2	0	6	3	
+1	21	3.5	3	1	1	0	0	1	2	1	0.6	50	0.3	0	0	1	1	0	0	-1	6	4	
+1	22	7	1	1	0	0	1	0	2	-1	6	20	1	0	1	1	0	1	0	1	9	1	
+1	23	20	2	1	0	0	0	0	1	0	12	14	2	0	1	1	0	1	1	0	12	4	
+1	24	7	0.6	1	0	1	1	1	2	-1	3.6	20	2	0	1	0	1	1	1	0	12	4	
+1	25	3.5	2	1	1	1	1	0	0	-1	0.6	50	0.3	0	0	0	0	1	2	1	1.2	2	
+1	26	7	0.3	0	1	1	0	1	1	-1	3.6	35	2	1	0	0	1	0	2	1	3.6	4	
+1	27	3.5	0.6	0	0	0	1	0	2	1	3.6	35	0.6	1	1	1	0	1	0	-1	3.6	4	
+1	28	20	2	0	0	0	0	0	1	0	9	14	0.6	1	1	1	1	1	1	0	12	1	
+1	29	35	0.6	1	1	1	0	0	2	1	12	7	3	0	0	0	1	1	1	-1	1.2	4	
+1	30	20	1	1	1	0	0	0	1	0	9	14	2	0	0	1	1	0	1	0	12	3	
+1	31	35	3	0	1	0	0	1	2	1	1.2	3.5	0.3	1	0	1	1	0	0	-1	3.6	3	
+1	32	50	0.3	1	1	0	0	0	0	1	1.2	3.5	0.6	0	0	1	1	1	2	-1	1.2	1	
+1	33	14	2	0	0	1	0	0	1	1	1.2	35	0.3	1	1	0	1	1	2	-1	6	3	
+1	34	14	2	1	0	0	1	1	1	1	12	7	1	0	1	1	0	0	0	0	9	3	
+1	35	14	1	1	0	1	0	1	1	0	12	35	3	0	1	0	1	0	2	-1	6	2	
+1	36	50	2	0	0	1	0	0	2	-1	3.6	3.5	0.6	1	1	0	1	1	0	1	3.6	2	
+||||||||||
+design
+;alts = alt1, alt2, alt3
+;rows = 36
+;block = 4
+
+;eff = (mnl,d,mean)
+;rep = 1000
+;bdraws = halton(1000)
+;bseed = 2333344
+;rseed = 2333344
+
+;con
+;model:
+
+U(alt1) = asc[(n,-0.03,0.02)]+bgroesse[(n,0.01,0.005)]*groesse[3.5,7,14,20,35,50]+bentfernung[(n,-0.24,0.12)]*entfernung[0.3,0.6,1,2,3]+bgemeinschaft[(n,0.2,0.1)]*gemeinschaft[0,1]+bkultur[(n,0.14,0.07)]*kultur[0,1]+bumweltbildung[(n,0.19,0.1)]*umweltbildung[0,1]+btoiletten[(n,0.52,0.3)]*toiletten[0,1]+bspiel[(n,0.1,0.05)]*spiel[0,1]+bpflegeint[(n,0.18,0.1)]*pflegeint[0,1,2]+bpflegeziele[(n,0.08,0.04)]*pflegeziele[-1,0,1]+bbeitrag[(n,-0.21,0.1)]*beitrag[0.6,1.2,3.6,6,9,12]/ 
+U(alt2) = asc       +bgroesse      *groesse                   +bentfernung       *entfernung                +bgemeinschaft     *gemeinschaft     +bkultur      *kultur     +bumweltbildung      *umweltbildung     +btoiletten      *toiletten       +bspiel     *spiel     +bpflegeint*pflegeint+bpflegeziele*pflegeziele+bbeitrag*beitrag
+
+
+$
\ No newline at end of file
diff --git a/Designsparks/effdes.ngd b/Designsparks/effdes.ngd
new file mode 100644
index 0000000000000000000000000000000000000000..30fa062f818532ebb017b0ecc207d6ac4c9884d4
--- /dev/null
+++ b/Designsparks/effdes.ngd
@@ -0,0 +1,54 @@
+Design	Choice situation	alt1.groesse	alt1.entfernung	alt1.gemeinschaft	alt1.kultur	alt1.umweltbildung	alt1.toiletten	alt1.spiel	alt1.pflegeint	alt1.pflegeziele	alt1.beitrag	alt2.groesse	alt2.entfernung	alt2.gemeinschaft	alt2.kultur	alt2.umweltbildung	alt2.toiletten	alt2.spiel	alt2.pflegeint	alt2.pflegeziele	alt2.beitrag	Block	
+1	1	3.5	3	0	0	1	1	1	2	1	1.2	50	0.3	1	1	0	0	0	0	-1	3.6	3	
+1	2	3.5	0.3	1	0	0	1	0	0	-1	0.6	50	3	0	1	1	0	1	2	1	1.2	4	
+1	3	20	1	0	1	1	1	1	1	-1	12	14	2	1	0	0	0	0	1	0	9	2	
+1	4	35	0.3	1	1	1	1	0	2	1	9	7	3	0	0	0	1	1	0	-1	0.6	3	
+1	5	14	1	1	0	0	0	1	1	0	9	14	2	0	1	1	1	0	1	0	9	2	
+1	6	7	1	0	1	1	0	0	0	0	6	35	0.6	1	0	0	1	1	2	0	6	3	
+1	7	50	0.6	0	1	1	1	1	0	1	6	3.5	0.6	1	0	0	0	0	2	-1	0.6	2	
+1	8	20	0.6	1	1	0	1	1	2	-1	6	14	0.6	0	0	1	0	0	0	1	1.2	3	
+1	9	50	0.3	0	0	1	0	0	2	-1	1.2	3.5	3	1	1	0	1	1	0	1	0.6	1	
+1	10	35	0.3	0	0	0	1	0	2	1	6	7	3	1	1	1	0	1	0	-1	0.6	1	
+1	11	14	2	1	0	1	0	0	1	0	9	20	1	0	1	0	1	1	1	0	12	1	
+1	12	35	2	1	0	0	1	1	2	0	6	7	0.6	0	1	1	0	0	0	0	0.6	2	
+1	13	7	0.6	0	0	0	1	1	0	-1	3.6	35	2	1	1	1	1	0	2	1	6	4	
+1	14	3.5	0.3	0	1	0	0	0	2	-1	0.6	50	3	1	0	1	1	1	0	1	3.6	1	
+1	15	3.5	3	1	1	1	1	0	2	-1	1.2	50	0.3	0	0	0	0	1	0	1	1.2	3	
+1	16	14	2	1	0	0	0	1	1	0	9	20	1	0	1	1	1	0	1	0	12	2	
+1	17	7	3	0	1	0	1	1	0	-1	0.6	35	0.3	1	0	1	1	0	2	1	9	1	
+1	18	50	0.6	0	0	1	1	1	0	-1	3.6	3.5	0.6	1	1	0	0	0	2	1	1.2	1	
+1	19	3.5	0.3	1	1	1	0	1	2	1	3.6	50	2	0	0	0	1	0	0	-1	1.2	1	
+1	20	50	3	1	1	0	1	0	2	-1	3.6	3.5	0.3	0	0	1	0	1	1	1	3.6	2	
+1	21	20	1	0	1	1	0	1	1	0	12	14	2	1	0	0	0	0	1	0	9	2	
+1	22	14	2	0	0	1	1	0	1	0	12	20	1	1	1	0	0	1	1	0	12	3	
+1	23	14	2	1	0	0	0	1	1	0	9	20	1	0	1	1	0	0	1	0	12	1	
+1	24	20	1	0	1	0	0	0	1	0	9	14	0.6	1	0	1	1	1	0	1	6	4	
+1	25	7	0.6	1	0	0	0	1	1	1	6	35	1	0	1	1	1	0	1	-1	9	4	
+1	26	50	2	0	0	0	0	0	2	1	1.2	3.5	0.3	1	1	1	1	1	0	-1	3.6	4	
+1	27	35	0.6	0	1	0	0	1	0	1	1.2	7	2	1	0	1	1	0	2	-1	6	3	
+1	28	50	3	1	1	0	0	0	0	1	0.6	3.5	0.3	0	0	1	1	1	2	-1	3.6	1	
+1	29	35	3	1	0	1	0	0	0	-1	0.6	7	0.3	0	1	0	1	1	2	1	6	3	
+1	30	35	0.3	1	1	1	0	1	0	-1	3.6	7	3	0	0	0	1	0	2	1	1.2	4	
+1	31	7	0.3	1	0	1	1	0	0	1	3.6	35	3	0	1	0	0	1	2	-1	0.6	2	
+1	32	20	1	1	1	0	1	1	1	0	12	14	2	0	0	1	0	0	1	0	9	4	
+1	33	14	1	1	0	1	0	0	1	0	12	20	1	0	1	0	0	1	1	0	12	3	
+1	34	3.5	0.6	0	1	0	1	0	0	1	1.2	50	0.6	1	0	1	0	1	2	-1	3.6	2	
+1	35	7	3	0	0	1	0	1	2	1	0.6	35	0.3	1	1	0	1	0	0	-1	6	4	
+1	36	20	2	0	1	1	1	0	1	0	12	20	1	1	0	0	0	1	1	0	12	4	
+||||||||||
+design
+;alts = alt1*, alt2*, alt3
+;rows = 36
+;block = 4
+
+;eff = (mnl,d)
+;rep = 1000
+;bseed = 2333344
+;rseed = 2333344
+
+;con
+;model:
+
+U(alt1) = asc[-0.03]+bgroesse[0.01]*groesse[3.5,7,14,20,35,50]+bentfernung[-0.24]*entfernung[0.3,0.6,1,2,3] +bgemeinschaft[0.2]*gemeinschaft[0,1]+bkultur[0.14]*kultur[0,1]+bumweltbildung[0.19]*umweltbildung[0,1]+btoiletten[0.52]*toiletten[0,1]+bspiel[0.1]*spiel[0,1]+bpflegeint[0.18]*pflegeint[0,1,2]+bpflegeziele[0.08]*pflegeziele[-1,0,1]+bbeitrag[-0.21]*beitrag[0.6,1.2,3.6,6,9,12]/
+U(alt2) = asc       +bgroesse      *groesse                   +bentfernung       *entfernung                +bgemeinschaft     *gemeinschaft     +bkultur      *kultur     +bumweltbildung      *umweltbildung     +btoiletten      *toiletten       +bspiel     *spiel     +bpflegeint*pflegeint+bpflegeziele*pflegeziele+bbeitrag*beitrag
+$
\ No newline at end of file
diff --git a/parameters_SE Design-Agri.R b/parameters_SE Design-Agri.R
index 1cea65974f6df7829505d66a6b28d067ec51f560..13fafb8104ea9b43a8dee3088388ad640fd25385 100644
--- a/parameters_SE Design-Agri.R	
+++ b/parameters_SE Design-Agri.R	
@@ -33,3 +33,5 @@ u<-list(
   v1 =V.1 ~  bprof*alt1.professional+ bexp * alt1.expert + bdomestic * alt1.domestic + bforeign * alt1.foreign + bdamage*alt1.damage + bprice * alt1.compensation,
   v2 =V.2 ~  bprof*alt2.professional + bexp * alt2.expert + bdomestic * alt2.domestic + bforeign * alt2.foreign + bdamage*alt2.damage + bprice * alt2.compensation,
   v3 =V.3 ~ basc)
+
+source("simulationcore_purrr.R")
\ No newline at end of file
diff --git a/parameters_ip2.R b/parameters_ip2.R
index 152dcc6b09496223ddd6c20644528f1fae28f8e8..3fbad85329a5f61a1d13917330e455029600d22e 100644
--- a/parameters_ip2.R
+++ b/parameters_ip2.R
@@ -5,7 +5,7 @@ source("prior_est/scripts/priordetermination.R")
 designpath<- "Designs/"
 
 resps =360  # number of respondents
-nosim=2 # number of simulations to run (about 500 is minimum)
+nosim=1000 # number of simulations to run (about 500 is minimum)
 
 
 
diff --git a/parameters_ip2_parks.R b/parameters_ip2_parks.R
new file mode 100644
index 0000000000000000000000000000000000000000..9d3f52b06b1169005c339d969ee4f6039fd12c75
--- /dev/null
+++ b/parameters_ip2_parks.R
@@ -0,0 +1,24 @@
+
+
+source("prior_est/scripts/priordetermination_parks.R")
+
+designpath<- "Designsparks/"
+
+resps =1080  # number of respondents
+nosim=2000 # number of simulations to run (about 500 is minimum)
+
+
+
+
+## If beta values come from other source
+for (ano in 1:length(priors)) {
+  assign(names(priors[ano]),priors[ano]) 
+}
+
+#place your utility functions here
+u<-list(
+  v1 =V.1~  basc        +bgroesse*alt1.groesse+ bentfernung * alt1.entfernung + bgemeinschaft * alt1.gemeinschaft + bkultur * alt1.kultur + bumweltbildung*alt1.umweltbildung + btoiletten * alt1.toiletten+ bspiel*alt1.spiel + bpflegeint*alt1.pflegeint+bpflegeziele*alt1.pflegeziele+ bbeitrag*alt1.beitrag  ,
+  v2 =V.2~  basc        +bgroesse*alt2.groesse+ bentfernung * alt2.entfernung + bgemeinschaft * alt2.gemeinschaft + bkultur * alt2.kultur + bumweltbildung*alt2.umweltbildung + btoiletten * alt2.toiletten+ bspiel*alt2.spiel + bpflegeint*alt2.pflegeint+bpflegeziele*alt2.pflegeziele+ bbeitrag*alt2.beitrag,
+  v3 =V.3~ 0)
+
+
diff --git a/prior_est/04_CL_PS_F.R b/prior_est/04_CL_PS_F.R
new file mode 100644
index 0000000000000000000000000000000000000000..8b3d40c69c8a98ad6d0b73d4cf93b7bf22abd0c2
--- /dev/null
+++ b/prior_est/04_CL_PS_F.R
@@ -0,0 +1,292 @@
+######################################################################
+### Projekt       : GartenLeistungen II                            ###
+### Beschreibung  : Choice Model mit Apollo-Paket                  ###
+###                 Conditional Logit im Preference Space          ###
+### Output        : Flextable (Wordfile)                           ###
+### Datum         : 11.07.2023                                     ###
+### R-Version     : 4.3.1                                          ###
+### Apollo Version: 0.2.9                                          ###
+######################################################################
+
+
+### Environment loeschen
+rm(list=ls())
+
+### Arbeitspfad festlegen
+wd <- "S:/10 GIS/GartenLeistungen/Auswertung GartenLeistungen/R_GL2/pilot"
+setwd(wd)
+
+### Pakete laden (wenn nicht vorhanden, installieren)
+if(!require(pacman)){ 
+  install.packages("pacman")
+  library(pacman)
+}
+
+p_load(apollo, flextable, magrittr, officer, haven, dplyr, stringr, readr, sjlabelled)
+
+# ################################################################# #
+#### INITIALISE APOLLO AND LOAD DATA                             ####
+# ################################################################# #
+
+### initialise apollo and core settings
+apollo_initialise()
+apollo_control= list (
+  modelName = "Clogit",
+  modelDescr ="Conditional Logit in preference space",
+  indivID = "ID",
+  mixing = FALSE # True waere Mixed Logit
+)
+
+
+# Dataframe für Flextable erstellen
+dat <- data.frame(matrix(NA,nrow=30,ncol=2))
+
+dat[,1] <- c("asc\nEntstehung eines Referenzparks in der Nachbarschaft", "asc1",
+             "Größe","1",
+             "Entfernung","2",
+             "Gemeinschaftsaktivitäten","Gemeinschaft1",
+             "Kulturveranstaltungen","Kultur1",
+             "Umweltbildungsangebote","Bildung1",
+             "Pflegeintensität\nje Stufe besserer Pflege","3",
+             "Pflegeziele\nmit Vielfalt im Vordergund","4",
+             "Toiletten","toilet1",
+             "Spiel- und Sportgeräte","Spielsport1",
+             "Beitrag\npro 1 €","5",
+             "Anzahl","LL(start)","LL(0)","LL(final)","Rho-square","Adj. Rho-square","AIC","BIC")
+colnames(dat) <- c("Attribute","Praeferenz")
+
+### Datensatz aus Aufbereitungs-Skript laden
+load("02_apollodataF.RData")
+# falls labelled data genutzt wird: (hier für Frankfurt aber nicht der Fall)
+# for (col in names(apollodata_F)) {
+#   apollodata_F[[col]] <- as.numeric(val_labels(apollodata_F[[col]]))
+# }
+database <- as.data.frame(apollodata_F)
+database <- database[order(database$ID),]
+#database <- database[-which(is.na(database$choice)),]
+
+# ################################################################# #
+#### DEFINE apollo_beta()                                        ####
+# ################################################################# #
+
+### Startwerte festlegen
+apollo_beta=c(asc = 0,
+              b_groesse = 0,
+              b_entfernung = 0,
+              b_gemeinschaft = 0,
+              b_kultur = 0,
+              b_umweltbildung = 0,
+              b_toiletten = 0,
+              b_spiel = 0,
+              b_pflegeint = 0,
+              b_pflegeziele = 0,
+              b_beitrag = 0)
+
+# ################################################################# #
+#### DEFINE MODEL AND LIKELIHOOD FUNCTION                        ####
+# ################################################################# #
+
+### keine Parameter fix halten
+apollo_fixed = c()
+
+### validieren
+apollo_inputs = apollo_validateInputs()
+
+apollo_probabilities=function(apollo_beta, apollo_inputs, functionality="estimate"){
+  
+  ### Function initialisation: do not change the following three commands
+  ### Attach inputs and detach after function exit
+  apollo_attach(apollo_beta, apollo_inputs)
+  on.exit(apollo_detach(apollo_beta, apollo_inputs))
+  
+  ### Create list of probabilities P
+  P = list()
+  
+  ### List of utilities (later integrated in mnl_settings below)
+  V = list()
+  V[['alt1']] =  (b_groesse * GROESSE.1 + b_entfernung * ENTFERNUNG.1 +
+                         b_gemeinschaft * GEMEINSCHAFTSAKTIVITAETEN.1 + b_kultur * KULTURVERANSTALTUNGEN.1 +
+                         b_umweltbildung * UMWELTBILDUNG.1 + b_toiletten * TOILETTEN.1 +
+                         b_spiel * SPIEL_SPORT.1 +
+                         b_pflegeint * PFLEGEINTENSITAET.1 + b_pflegeziele * PFLEGEZIELE.1 + b_beitrag * BEITRAG.1)
+  
+  V[['alt2']] = (b_groesse * GROESSE.2 + b_entfernung * ENTFERNUNG.2 +
+                         b_gemeinschaft * GEMEINSCHAFTSAKTIVITAETEN.2 + b_kultur * KULTURVERANSTALTUNGEN.2 +
+                         b_umweltbildung * UMWELTBILDUNG.2 + b_toiletten * TOILETTEN.2 +
+                         b_spiel * SPIEL_SPORT.2 +
+                         b_pflegeint * PFLEGEINTENSITAET.2 + b_pflegeziele * PFLEGEZIELE.2 + b_beitrag * BEITRAG.2)
+  
+  V[['alt3']] = (asc + b_groesse * GROESSE.3 + b_entfernung * ENTFERNUNG.3 +
+                         b_gemeinschaft * GEMEINSCHAFTSAKTIVITAETEN.3 + b_kultur * KULTURVERANSTALTUNGEN.3 +
+                         b_umweltbildung * UMWELTBILDUNG.3 + b_toiletten * TOILETTEN.3 +
+                         b_spiel * SPIEL_SPORT.3 +
+                         b_pflegeint * PFLEGEINTENSITAET.3 + b_pflegeziele * PFLEGEZIELE.3 + b_beitrag * BEITRAG.3)
+  
+  ### Define settings for MNL model component
+  mnl_settings = list(
+    alternatives  = c(alt1=1, alt2=2, alt3=3),
+    avail         = 1, # all alternatives are available in every choice
+    choiceVar     = choice,
+    V             = V  # tell function to use list vector defined above
+    #rows          = sample==i #not needed, für Frankfurt inkludieren wir alle
+  )
+  
+  ### Compute probabilities using MNL model
+  P[['model']] = apollo_mnl(mnl_settings, functionality)
+  
+  ### Take product across observation for same individual
+  P = apollo_panelProd(P, apollo_inputs, functionality)
+  
+  ### Average across inter-individual draws - nur bei Mixed Logit!
+  #P = apollo_avgInterDraws(P, apollo_inputs, functionality)
+  
+  ### Prepare and return outputs of function
+  P = apollo_prepareProb(P, apollo_inputs, functionality)
+  return(P)
+}
+
+
+# ################################################################# #
+#### MODEL ESTIMATION                                            ####
+# ################################################################# #
+
+model = apollo_estimate(apollo_beta, apollo_fixed,
+                        apollo_probabilities, apollo_inputs)
+
+### model estmates speichern?
+ps_model <- model
+save(ps_model, file = "04_CL_PS_F_estimates.RData")
+
+# ################################################################# #
+#### MODEL OUTPUTS                                               ####
+# ################################################################# #
+
+
+### relevante variablen aus Model-Output extrahieren
+z <- length(model$estimate)
+est <- c(model$estimate[1:z-1]*10,model$estimate[z]/10)
+se <- c(model$se[1:z-1]*10,model$se[z]/10)
+t1 <- est-1.64*se
+t2 <- est+1.64*se
+n <- model$nIndivs
+## stattdessen: output in datei speichern, und danach löschen:
+apollo_saveOutput(model, saveOutput_settings = list(printPVal = 1))
+s <- read_csv("Clogit_estimates.csv", show_col_types = FALSE)
+file.remove(c("Clogit_estimates.csv", "Clogit_model.rds", "Clogit_output.txt", "Clogit_iterations.csv"))
+p <- s$`Rob.p-val(0)`/2 # divide by 2 to get the one sided robust p value
+
+
+nParams     <- length(model$apollo_beta)
+nFreeParams <- nParams
+if(!is.null(model$apollo_fixed)) nFreeParams <- nFreeParams - length(model$apollo_fixed)
+
+# Tabelle erstellen (Umweg über df nicht unbedingt nötig, aber so ähnlich wie bei LBS)
+df <- as.data.frame(matrix(data=NA,nrow=z*2+8,ncol=2))
+rownames(df) <- dat[,1]
+
+# Schleife fuer Signifikanz-Sterne
+p_wert <- function(p){
+  if(p < 0.01){print("***")}
+  else{if(p < 0.05){print("**")}
+    else{if(p < 0.1){print("*")}
+      else{print("")}}}
+}
+
+
+# Tabelle auffuellen, alles auf zwei Nachkommastellen runden
+for(j in 1:z){
+  df[j*2-1,1] <- paste0(round(est[j], 2)," [",round(t1[j],2),";",round(t2[j],2),"]",p_wert(p[j]))
+  df[j*2,1] <- paste0("(",round(se[j],2),")")
+  if(j == z){
+    x <-as.numeric(paste0(format(est[j], digits=2, nsmall = 2))) # Koeffizient des Beitrages
+    y <- match(TRUE,round(x, 1:20) == x) # Nachkommastellen des Beitragskoeffizienten
+    df[j*2-1,1] <- paste0(x," [",format(round(t1[j], digits=y), scientific = FALSE),";",format(round(t2[j], digits=y), scientific = FALSE),"]",p_wert(p[j]))
+    df[j*2,1] <- paste0("(",format(round(se[j], digits=y), scientific = FALSE),")")
+  }
+}
+rm(j)
+
+
+# Model measures fuer Fusszeile in Tabelle ergaenzen 
+df[z*2+1,1] <- n
+df[z*2+2,1] <- round(model$LLStart,4)
+df[z*2+3,1] <- round(model$LL0,4)
+df[z*2+4,1] <- round(model$LLout,4)
+df[z*2+5,1] <- round(1-(model$maximum/model$LL0),4)
+df[z*2+6,1] <- round(1-((model$maximum-nFreeParams)/model$LL0),4)
+df[z*2+7,1] <- round(-2*model$maximum + 2*nFreeParams,2)
+df[z*2+8,1] <- round(-2*model$maximum + nFreeParams*log(model$nObs),2)
+
+dat[,2] <- df[,1]
+
+# parameter speichern?
+# save(apollo_control,database,model,apollo_beta,apollo_fixed,apollo_probabilities,apollo_inputs,
+#      est,se,n,file=paste("04_clogit_parameter_sample",i,".RData",sep=""))
+
+
+### Dezimalpunkte in Kommas umwandeln
+dat <- dat %>% 
+  mutate(across(.cols= c(2:ncol(dat)),.fns = ~str_replace_all(., "\\.", "\\,"))) 
+
+
+
+# ################################################################# #
+#### Flextable                                                   ####
+# ################################################################# #
+
+### Einstellungen fuer Tabellenkopf und Fusszeile
+my_header <- data.frame(col_keys=colnames(dat),
+                        line1 = c("Model Results - Conditional logit"),
+                        line2 = c("Attribute","Praeferenz"),
+                        stringsAsFactors=FALSE)
+
+my_footer <- data.frame(col_keys=colnames(dat),
+                        line1 = c("*** 0,01 ; ** 0,05 ; * 0,1"),
+                        line2 = c("Referenzpark: 0 m Entfernung, keine Gemeinschaftsaktivitäten, 
+                        keine Kulturveranstaltungen, keine Umweltbildungsangebote, 
+                        keine Toiletten, keine Spiel- und Sportgeräte, Basispflege, 
+                                  Vielfalt und Nutzung sind gleich gewichtet"),
+                        stringsAsFactors=FALSE)
+
+### graphische Einstellungen fuer Flextable
+flex <- flextable(dat) %>%
+  theme_booktabs() %>%
+  set_header_df(mapping = my_header, key="col_keys") %>%
+  set_footer_df(mapping = my_footer, key="col_keys") %>%
+  border(i=2,border.bottom=fp_border(color="black",width=1),part="header") %>%
+  fontsize(size=12,i=1,part="header") %>%
+  align(align="center",part="header") %>%
+  align(align="right",part="footer") %>%
+  border(border.top=fp_border(color="black",width=1),part="footer") %>%
+  border(i=23,border.top=fp_border(width=1)) %>%
+  bold(j=1,part="body") %>%
+  bold(i=1:2,part="header") %>%
+  font(fontname="Calibri",part="body") %>%
+  font(fontname="Calibri",part="header") %>%
+  merge_h(part="footer") %>%
+  merge_at(i =1:2,j=1,part="body") %>%
+  merge_at(i =3:4,j=1,part="body") %>%
+  merge_at(i =5:6,j=1,part="body") %>%
+  merge_at(i =7:8,j=1,part="body") %>%
+  merge_at(i =9:10,j=1,part="body") %>%
+  merge_at(i =11:12,j=1,part="body") %>%
+  merge_at(i =13:14,j=1,part="body") %>%
+  merge_at(i =15:16,j=1,part="body") %>%
+  merge_at(i =17:18,j=1,part="body") %>%
+  merge_at(i =19:20,j=1,part="body") %>%
+  merge_at(i =21:22,j=1,part="body") %>%
+  merge_at(i=1,part="header") %>%
+  width(j=2,width=2.5) %>%
+  width(j=1,width=4)
+
+#----------------------------------------------
+# Tabelle exportieren
+#----------------------------------------------
+
+### Vorschau in R:
+print(flex)
+
+### Oeffnen und Speichern in Word:
+#print(flex,preview="docx")
+#set_prop <- prop_section(page_size = page_size(orient = "landscape"))
+save_as_docx(flex, path = "04_clogit_F_Konfidenzintervall_preference_space.docx")#, pr_section = set_prop)
diff --git a/prior_est/04_CL_PS_F_estimates.RData b/prior_est/04_CL_PS_F_estimates.RData
new file mode 100644
index 0000000000000000000000000000000000000000..d7a217d98c7cb42ca23de014794f4b8b75a502ad
Binary files /dev/null and b/prior_est/04_CL_PS_F_estimates.RData differ
diff --git a/prior_est/data/02_apollodataF.RData b/prior_est/data/02_apollodataF.RData
new file mode 100644
index 0000000000000000000000000000000000000000..ec2c2487292a933eca88d411ef14a902cb6eed8d
Binary files /dev/null and b/prior_est/data/02_apollodataF.RData differ
diff --git a/prior_est/scripts/data_cleaning.R b/prior_est/scripts/data_cleaning.R
index cdf2db27fbc93edc6b6526eec3a721165165790d..d45c478dc7ea4ce181a2e721652dd12ae8236ea4 100644
--- a/prior_est/scripts/data_cleaning.R
+++ b/prior_est/scripts/data_cleaning.R
@@ -50,7 +50,7 @@ design12<-read_excel("prior_est/data/design_hauptstudie.xlsx") %>%
   as.data.frame()  %>%
   reshape(timevar = "alt", idvar = "choice_set", direction = "wide" ) %>% ## daten in wide format
   mutate(GROESSE.3=0, ENTFERNUNG.3=0,GEMEINSCHAFTSAKTIVITAETEN.3=0, KULTURVERANSTALTUNGEN.3=0, UMWELTBILDUNG.3=0, GESTALTUNG.3=0, ZUGANG.3=0, BEITRAG.3=0)  %>% 
-  rename(set=choice_set) %>% 
+  rename(set=choice_set) %>% {. ->> designforsim } %>% 
 right_join(data, by="set") %>% 
   arrange(ID,set) %>% 
   mutate(choice=as.numeric(choice),
diff --git a/prior_est/scripts/preamble.R b/prior_est/scripts/preamble.R
index c8440a1f92f37fbd2f4c5f2291edbe8a5abe5677..c287f0bba7fd680cf4a4f9b2db0fd42563060b2c 100644
--- a/prior_est/scripts/preamble.R
+++ b/prior_est/scripts/preamble.R
@@ -18,6 +18,7 @@ library(DescTools)
 library(stringr)
 library("dplyr")
 library(purrr)
+library("readr")
 
 
 select<-dplyr::select ## make sure dplyrs select is used and not the one from MASS
diff --git a/prior_est/scripts/prepareolddesign.R b/prior_est/scripts/prepareolddesign.R
new file mode 100644
index 0000000000000000000000000000000000000000..ab83f7a0db0bf2b756892adb35a038dcc9a8db4d
--- /dev/null
+++ b/prior_est/scripts/prepareolddesign.R
@@ -0,0 +1,17 @@
+
+
+designtosave <- designforsim %>% 
+  select(!starts_with("L_"), -block.2) %>% 
+  rename("Choice situation"=set, Block=block.1) %>% 
+  mutate(Design=1,
+    across(matches("^GROESSE.[1-2]") |matches("^BEITRAG.[1-2]")  , ~./10  )
+        ) %>% 
+rename_with(tolower, .cols = matches("[1-3]$")) %>% 
+  rename_with(~ paste0("alt", 
+                       str_extract(.x,"[1-3]$"),
+                       ".",
+                       str_remove(.x,"\\.[1-3]$") ),
+              .cols = matches("[1-3]$")) %>% 
+  rename_with(~ str_remove_all(.x,"saktivitaeten|veranstaltungen"),everything())
+
+write_delim(designtosave, "Designs/designjeem.ngd" ,delim = "\t")
diff --git a/prior_est/scripts/priordetermination.R b/prior_est/scripts/priordetermination.R
index 671725e36fe5ace6427258e5d3c108cba09c6a15..a3c9cf3e981102fb34a4cc9a1292dbdaa3c6de39 100644
--- a/prior_est/scripts/priordetermination.R
+++ b/prior_est/scripts/priordetermination.R
@@ -2,6 +2,7 @@
 source("prior_est/scripts/preamble.R")
 source("prior_est/functions/apollo_help_functions.R")
 source("prior_est/scripts/data_cleaning.R")
+source("prior_est/scripts/prepareolddesign.R")
 source("prior_est/scripts/modelclogitbase.R")
 
 priors <- round(modelclogitbase$estimate, 2)
diff --git a/prior_est/scripts/priordetermination_parks.R b/prior_est/scripts/priordetermination_parks.R
new file mode 100644
index 0000000000000000000000000000000000000000..2d1eac157f39e5b4cef204e47b48d3bf8a6a95f7
--- /dev/null
+++ b/prior_est/scripts/priordetermination_parks.R
@@ -0,0 +1,50 @@
+
+source("prior_est/scripts/preamble.R")
+
+load("prior_est/04_CL_PS_F_estimates.RData")
+load("prior_est/data/02_apollodataF.RData")
+
+
+
+priors <- round(ps_model$estimate, 2)
+
+names(priors)<- str_remove(names(priors),"_")
+
+
+priorsasc <- priors[grep("asc",names(priors))]
+names(priors)<- str_replace(names(priors),"asc","basc")
+
+
+
+priorsb <- priors[-grep("asc",names(priors))]
+length(priors)
+names(priors)
+
+
+
+
+
+attlevels <- apollodata_F %>% 
+  select(ends_with(".1")) %>% 
+  rename_with(~str_remove(.,".1")) %>%
+  #relocate("ZUGANG", .before="GESTALTUNG") %>% 
+  as.list() %>% map(~paste0(sort(unique(.x)), collapse = ","))
+
+ 
+genU <-function(alts=3){
+require(purrr)  
+  paste0(map_chr(1:alts,
+          ~paste0("U(alt",.,") = ",
+                  paste0(names(priorsasc),"[", priorsasc,"]", collapse = "+"),
+                  "+",
+                  paste0(names(priorsb),"[",priorsb,"]*",
+                         str_remove(names(priorsb),pattern = "^b") ,
+                         "[",attlevels,"]" ,
+                         collapse = "+"))), collapse = "/ \n")
+  
+  
+}
+
+
+t <-genU(2)
+cat(t)
diff --git a/simulationcore_purrr.R b/simulationcore_purrr.R
index 1bb3c2ae74576a00a0e63613ab58c778574b66ae..acb7dfff616bf1ea393b93d7919d6cabc0020d1d 100644
--- a/simulationcore_purrr.R
+++ b/simulationcore_purrr.R
@@ -1,15 +1,12 @@
 
 rm(list=ls())
-
-
- 
-  source("functions.R")
+source("functions.R")
 
 library("formula.tools")
 
 
 #source("parameters_SE Design-Agri.R")
-source("parameters_ip2.R")
+source("parameters_ip2_parks.R")
 
 
 designfile<-list.files(designpath,full.names = T)