File size: 5,581 Bytes
eb58938
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
import skfuzzy as fuzz
from skfuzzy import control as crt
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import streamlit as st
import matplotlib
import matplotlib.image as mpimg

sDA=crt.Antecedent(np.arange(0,100.01,0.1),'sda')#50
Udi=crt.Antecedent(np.arange(0,100.1,0.1),'udi')#50
Ase=crt.Antecedent(np.arange(0,100.1,0.1),'ase')#kamtaraz10
sDgp=crt.Antecedent(np.arange(0,100.1,0.1),'sdgp')
emtiaz_l=crt.Consequent(np.arange(-4,24.01,0.01),'score')

sDA['low']=fuzz.trapmf(sDA.universe,[0,0,46.7,55])
sDA['acceptable']=fuzz.trapmf(sDA.universe,[46.7,55,75,86.25])
sDA['excelent']=fuzz.trapmf(sDA.universe,[75,86.25,100,100])

Udi['low']=fuzz.trapmf(Udi.universe,[0,0,42.5,50])
Udi['acceptable']=fuzz.trapmf(Udi.universe,[42.5,50,100,100])

Ase['acceptable']=fuzz.trapmf(Ase.universe,[0,0,10,11.5])
Ase['unacceptable']=fuzz.trapmf(Ase.universe,[10,11.5,100,100])

sDgp['acceptable']=fuzz.trapmf(sDgp.universe,[0,0,35,40.25])
sDgp['high']=fuzz.trapmf(sDgp.universe,[35,40.25,100,100])

emtiaz_l['awful']=fuzz.gaussmf(emtiaz_l.universe,0,1)
emtiaz_l['bad']=fuzz.gaussmf(emtiaz_l.universe,4,1)
emtiaz_l['not_bad']=fuzz.gaussmf(emtiaz_l.universe,8,1)
emtiaz_l['good']=fuzz.gaussmf(emtiaz_l.universe,12,1)
emtiaz_l['very_good']=fuzz.gaussmf(emtiaz_l.universe,16,1)
emtiaz_l['excelent']=fuzz.gaussmf(emtiaz_l.universe,20,1)

r1=crt.Rule(sDA['excelent']&Udi['acceptable']&Ase['acceptable']&sDgp['acceptable'],emtiaz_l['excelent'])
r2=crt.Rule(sDA['acceptable']&Udi['acceptable']&Ase['acceptable']&sDgp['acceptable'],emtiaz_l['very_good'])

r3=crt.Rule(sDA['excelent']&~Udi['acceptable']&Ase['acceptable']&sDgp['acceptable'],emtiaz_l['very_good'])
r4=crt.Rule(sDA['excelent']&Udi['acceptable']&~Ase['acceptable']&sDgp['acceptable'],emtiaz_l['very_good'])
r5=crt.Rule(sDA['excelent']&Udi['acceptable']&Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['very_good'])


r6=crt.Rule(sDA['acceptable']&~Udi['acceptable']&Ase['acceptable']&sDgp['acceptable'],emtiaz_l['good'])
r7=crt.Rule(sDA['acceptable']&Udi['acceptable']&~Ase['acceptable']&sDgp['acceptable'],emtiaz_l['good'])
r8=crt.Rule(sDA['acceptable']&Udi['acceptable']&Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['good'])

r9=crt.Rule(sDA['excelent']&~Udi['acceptable']&~Ase['acceptable']&sDgp['acceptable'],emtiaz_l['good'])
r10=crt.Rule(sDA['excelent']&~Udi['acceptable']&Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['good'])
r11=crt.Rule(sDA['excelent']&Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['good'])

r12=crt.Rule(sDA['acceptable']&~Udi['acceptable']&~Ase['acceptable']&sDgp['acceptable'],emtiaz_l['not_bad'])
r13=crt.Rule(sDA['acceptable']&~Udi['acceptable']&Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['not_bad'])
r14=crt.Rule(sDA['acceptable']&Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['not_bad'])

r15=crt.Rule(sDA['excelent']&~Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['not_bad'])


r16=crt.Rule(sDA['low']&Udi['acceptable']&Ase['acceptable']&sDgp['acceptable'],emtiaz_l['very_good'])
r17=crt.Rule(sDA['low']&~Udi['acceptable']&Ase['acceptable']&sDgp['acceptable'],emtiaz_l['good'])
r18=crt.Rule(sDA['low']&Udi['acceptable']&~Ase['acceptable']&sDgp['acceptable'],emtiaz_l['good'])
r19=crt.Rule(sDA['low']&Udi['acceptable']&Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['good'])

r20=crt.Rule(sDA['low']&~Udi['acceptable']&~Ase['acceptable']&sDgp['acceptable'],emtiaz_l['bad'])
r21=crt.Rule(sDA['low']&Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['bad'])

r22=crt.Rule(sDA['low']&~Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['bad'])
r23=crt.Rule(sDA['acceptable']&~Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['not_bad'])
r24=crt.Rule(sDA['acceptable']&Udi['acceptable']&~Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['not_bad'])
r25=crt.Rule(sDA['low']&~Udi['acceptable']&Ase['acceptable']&~sDgp['acceptable'],emtiaz_l['not_bad'])


cs=crt.ControlSystem([r1,
r2,
r3,
r4,
r5,
r6,
r7,
r8,
r9,
r10,
r11,
r12,
r13,
r14,
r15,
r16,
r17,
r18,
r19,
r20,
r21,
r22,
r23,
r24,
r25,

                      
                      
])
cs1=crt.ControlSystemSimulation(cs)

st.title("daylight analysis")

b1=cs1.input['sda']=st.sidebar.slider('sDA',min_value=0.0,max_value=100.0,step=1.0,value=50.0)
c1=cs1.input['udi']=st.sidebar.slider('UDI',min_value=0.0,max_value=100.0,step=1.0,value=50.0)
d1=cs1.input['ase']=st.sidebar.slider('ASE',min_value=0.0,max_value=100.0,step=1.0,value=50.0)
e1=cs1.input['sdgp']=st.sidebar.slider('sDGP',min_value=0.0,max_value=100.0,step=1.0,value=50.0)

st.set_option('deprecation.showPyplotGlobalUse', False)
cs1.compute()
score=cs1.output['score']
st.set_option('deprecation.showPyplotGlobalUse', False)
st.header('your score is :')
st.header(score)

st.header('sDA')
img = mpimg.imread('sda.jpg')
values=[]
imgplot = plt.imshow(img)

plt.yticks(values)
plt.xticks(values)
plt.scatter(b1*5655/100,1,s=500,marker="v",color='black')
st.pyplot()

st.header('UDI')
img = mpimg.imread('sda.jpg')
values=[]
imgplot = plt.imshow(img)

plt.yticks(values)
plt.xticks(values)
plt.scatter(c1*5655/100,1,s=500,marker="v",color='black')
st.pyplot()




st.header('ASE')
img = mpimg.imread('ASE.jpg')
values=[]
imgplot = plt.imshow(img)

plt.yticks(values)
plt.xticks(values)
plt.scatter(d1*5655/100,1,s=500,marker="v",color='black')

st.pyplot()

st.header('sDGP')
img = mpimg.imread('sdg1.jpg')
values=[]
imgplot = plt.imshow(img)

plt.yticks(values)
plt.xticks(values)
plt.scatter(e1*5655/100,1,s=500,marker="v",color='black')

st.pyplot()