"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fontesEscopo2PerdasTDEsc = void 0; const resposta_1 = require("../../../resposta"); const gwp_1 = require("../../ListasFatoresEmissao/gwp"); const listaEnergia_1 = require("../../ListasFatoresEmissao/listaEnergia"); const listas_1 = require("../../ListasFatoresEmissao/listas"); const interfaces_1 = require("../../interfaces"); exports.fontesEscopo2PerdasTDEsc = { escopo: "Escopo2", idTipoFonte: "PerdasTDLoc", descricao: "Perdas T&D Escolha de compra", estruturaCadastro: [ { idCampo: "tipoFonte", descricao: "Tipo de fonte de geração de energia", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: [ "Eólica", "Fotovoltaica", "Heliotérmica", "Geotérmica", "Hidroelétrica", "Termoelétrica", "Maremotriz", ], }, { idCampo: "combustivel", descricao: "Combustível", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_1.listaEnergiaEmissoes, }, { idCampo: "possuiFator", descricao: "Você possui o fator de emissão para essa fonte?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["Sim", "Não"], }, { idCampo: "eficiencia", descricao: "Qual a eficiência da planta geradora?", tipo: interfaces_1.tiposCamposGee.numero, }, ], estruturaRegistro: [ { campo: "eletricidade", descricao: "Eletricidade abordagem Esc.Compra", tipo: interfaces_1.tiposCamposGee.numero, }, { campo: "fatorEmissao", descricao: "Fator de emissão CO2 sugerido", tipo: interfaces_1.tiposCamposGee.numero, }, { campo: "fatorEmissaoCH4", descricao: "Fator de emissão CH4 sugerido", tipo: interfaces_1.tiposCamposGee.numero, }, { campo: "fatorEmissaoN2O", descricao: "Fator de emissão N2O sugerido", tipo: interfaces_1.tiposCamposGee.numero, }, { campo: "fatorEmissaoBio", descricao: "Fator de emissão CO2 Biogênico sugerido", tipo: interfaces_1.tiposCamposGee.numero, }, ], formula: ({ cad, reg }) => { const tipoFonte = cad.tipoFonte; if (!tipoFonte) { return resposta_1.respostaCM.addErro("não foi encontrado eficiencia"); } const combustivel = listaEnergia_1.listaEnergia.find((a) => a.ref == cad.combustivel); if (!combustivel) { return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel"); } const possuiFator = cad.possuiFator; if (!possuiFator) { return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel"); } const eficiencia = cad.eficiencia; if (!eficiencia) { return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel"); } let [CH4, CO2, N2O, BIO, i] = [0, 0, 0, 0, 0]; const fatores = (index, TipoComb) => { if (combustivel.combustivel == TipoComb) { CH4 = listaEnergia_1.listaEnergia[index].fator_emissao_CH4; CO2 = listaEnergia_1.listaEnergia[index].fator_emissao_CO2; N2O = listaEnergia_1.listaEnergia[index].fator_emissao_N2O; BIO = 1; } }; for (i = 0; i < 50; i++) { fatores(i, listaEnergia_1.listaEnergia[i].combustivel); } const emissaoCO2 = (Number(reg.eletricidade) / (cad.eficiencia / 100)) * CO2; const emissaoCH4 = (Number(reg.eletricidade) / (cad.eficiencia / 100)) * CH4; const emissaoN2O = (Number(reg.eletricidade) / (cad.eficiencia / 100)) * N2O; const carbono = emissaoCO2 * Number(gwp_1.gwp[0].gwp) + emissaoCH4 * Number(gwp_1.gwp[1].gwp) + emissaoN2O * Number(gwp_1.gwp[2].gwp); const bio = BIO * 1; return resposta_1.respostaCM.addResultado([carbono, bio]); }, }; //# sourceMappingURL=perdasTDEsc.js.map