-
Notifications
You must be signed in to change notification settings - Fork 2
/
Calculos.py
207 lines (174 loc) · 9.81 KB
/
Calculos.py
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
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
def tipoCalculo():
#escolhaCalculo = input(
#"Qual tipo de cálculo você deseja realizar?\n\nMineração doméstica.....................[1]\nMineração para meu empreendimento.......[2]\n\nDigite o número correspondente a sua escolha: ")
try:
escolhaCalculo = int(input(
"Qual tipo de cálculo você deseja realizar?\n\nMineração doméstica.....................[1]\nMineração para meu empreendimento.......[2]\n\nDigite o número correspondente a sua escolha: "))
while (escolhaCalculo != 1) and (escolhaCalculo != 2):
print("_________________________________________________________________________________________________")
escolhaCalculo = int(input(
"Opção incorreta, por favor digite uma opção válida! \n Qual tipo de cálculo você deseja realizar?\n\nMineração doméstica.....................[1]\nMineração para meu empreendimento.......[2]\n\nDigite o número correspondente a sua escolha: "))
return escolhaCalculo
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Opção inválida, por favor digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return tipoCalculo()
def potenciaResidencial(tipoCalculo):
try:
potenciaMaquina = int(input(
"Para calcular o seu consumo elétrico, selecione qual das opções melhor\nse encaixa na potência do seu equipamento de mineração:\n\nEquipamento de ALTA potência(3000W)..........[1]\nEquipamento de MÉDIA potência(1800W).........[2]\nEquipamento de BAIXA potência(850W)..........[3]\n\nDigite o número correspondente: "))
if tipoCalculo == 1:
if potenciaMaquina == 1:
potencia = 3000
elif potenciaMaquina == 2:
potencia = 1800
elif potenciaMaquina == 3:
potencia = 850
elif (potenciaMaquina > 3) or (potenciaMaquina < 1):
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaResidencial(tipoCalculo)
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return(potenciaResidencial(tipoCalculo))
try:
horas = int(
input("Digite a quantidade de horas diárias que a máquina ficará ligada: "))
if (horas < 0) or (horas > 24):
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaResidencial(tipoCalculo)
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Digite um valor válido!")
print("_________________________________________________________________________________________________\n")
return potenciaResidencial(tipoCalculo)
dias = 30
consumoKwhM = (potencia * horas * dias) / 1000 # Equação do consumo
return potencia, consumoKwhM
def potenciaIndustrial(tipoCalculo):
try:
escolhaPotencia = int(input(
"Para calcular o seu consumo elétrico, selecione qual das opções melhor\nse encaixa na potência dos seus equipamentos de mineração:\n\nANTSPACE HK3(with DWT-T) -> (1030 KW de potência)..........[1]\nBitcoin Miner S19 Hydro -> (5451 W de potência)............[2]\nLitecoin Miner L7 -> (3260 W de potência)..................[3]\nInserir potência personalizada.............................[4]\n\nDigite o número correspondente: "))
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Digite um valor válido!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
if tipoCalculo == 2:
if escolhaPotencia == 1:
potencia = 1030 # Valores convertidos em KW
elif escolhaPotencia == 2:
potencia = 5.4
elif escolhaPotencia == 3:
potencia = 3.2
elif escolhaPotencia == 4:
try:
potencia = float(
input("Digite o valor da potência em Watts: "))
if potencia < 1:
print("_________________________________________________________________________________________________\n")
print("Digite um valor válido!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
potencia /= 1000 # Conversão de watts para Kw
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
elif (escolhaPotencia > 4) or (escolhaPotencia < 1):
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
try:
quantMaquinas = int(
input("Digite quantas máquinas você tem na sua empresa: "))
if quantMaquinas < 1:
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
try:
horas = int(
input("Digite a quantidade de horas diárias que as máquinas ficarão ligadas: "))
if (horas < 1) or (horas > 24):
print("_________________________________________________________________________________________________\n")
print("Digite uma quantidade de horas válida!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
except ValueError as error:
print("_________________________________________________________________________________________________\n")
print("Digite uma opção válida!")
print("_________________________________________________________________________________________________\n")
return potenciaIndustrial(tipoCalculo)
dias = 30
consumoMwMes = ((potencia * quantMaquinas) * horas * dias) / \
1000 # Conversão da potencia em Kwh para Mwh
return potencia, consumoMwMes, quantMaquinas
def tarifaRed(consumokwhM):
tarifa = consumokwhM * 0.49 #Consumo multiplicado pela tarifa do grupo B
return tarifa
def tarifaInd(consumoMwhMes):
conversaoKwh = consumoMwhMes * 1000
totalEnergia = conversaoKwh * 0.33 # Total em Kw multiplicado pela tarifa
return totalEnergia
def modFoto(consumo, energia):
modulos = 0
geracaoTotal = 0
while geracaoTotal < consumo:
geracaoTotal += energia
modulos += 1
return modulos
def emissaoDom(consumoKwhM):
fatorEmissao = 0.1264
carbonoEmitido = (consumoKwhM/1000) * fatorEmissao
carbonoKg = carbonoEmitido * 1000
return carbonoKg
def emissaoInd(consumoMwMes):
fatorEmissao = 0.1264
carbonoTonelada = consumoMwMes * fatorEmissao
return carbonoTonelada
def arvKg(consumoKwhM):
contadorArvores = 0
arvore = 0
while arvore <= emissaoDom(consumoKwhM):
arvore += 7.4
contadorArvores += 1
return contadorArvores
def arvTon(consumoKwhM):
contadorArvores = 0
arvore = 0
while arvore <= emissaoInd(consumoKwhM):
arvore += 0.0074
contadorArvores += 1
return contadorArvores
def calcCred(carbonoEmKg):
creditos = 0
preco = 0
compensado = 0
while compensado < carbonoEmKg:
creditos += 1
preco += 3.00
compensado += 1000
return creditos, preco
def credTon(carbonoEmToneladas):
creditos = 0
preco = 0
compensado = 0
while compensado < carbonoEmToneladas:
creditos += 1
preco += 3.00
compensado += 1
return creditos, preco