This commit is contained in:
Luiz Silva 2024-05-06 08:45:08 -03:00
commit b5ca2d50ac
337 changed files with 24672 additions and 0 deletions

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const residuosSolidosCompostagem: tipoFonteObjeto<[
"fatorEmissaoCH4",
"fatorEmissaoN2O",
"recuperado",
"destino"
], [
"compostagem"
]>;

View file

@ -0,0 +1,65 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.residuosSolidosCompostagem = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const interfaces_1 = require("../../interfaces");
exports.residuosSolidosCompostagem = {
escopo: "Escopo1",
idTipoFonte: "residuosSolidosCompostagem",
descricao: "Resíduos Sólidos - Compostagem",
estruturaCadastro: [
{
idCampo: "fatorEmissaoCH4",
descricao: "Fator de emissão de CH4",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "fatorEmissaoN2O",
descricao: "Fator de emissão de N2O",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "recuperado",
descricao: "Quantidade de CH4 recuperada do tratamento por compostagem",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "destino",
descricao: "Qual o destino do biogás recuperado? ",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: ["Queima em flare", "Geração de energia"],
},
],
estruturaRegistro: [
{
campo: "compostagem",
descricao: "Massa de resíduo destinado à compostagem",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const emissaoCH4 = cad.fatorEmissaoCH4;
if (!emissaoCH4) {
return resposta_1.respostaCM.addErro("Não foi encontrado emissaoCH4");
}
const emissaoN2O = cad.fatorEmissaoN2O;
if (!emissaoN2O) {
return resposta_1.respostaCM.addErro("Não foi encontrado emissaoN2O");
}
const recuperado = cad.recuperado;
if (!recuperado) {
return resposta_1.respostaCM.addErro("Não foi encontrado recuperado");
}
const destino = cad.destino;
if (!destino) {
return resposta_1.respostaCM.addErro("Não foi encontrado destino");
}
const carbono = (reg.compostagem * 10 ** -3 * cad.fatorEmissaoCH4 - cad.recuperado) *
Number(gwp_1.gwp[1].gwp) +
reg.compostagem * 10 ** -3 * cad.fatorEmissaoN2O * Number(gwp_1.gwp[2].gwp);
const bio = (44 / 16) * cad.recuperado;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Compostagem.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Compostagem.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1ResiduosSolidos/escopo1Compostagem.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,wDAAqD;AACrD,iDAAwE;AAE3D,QAAA,0BAA0B,GAGnC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,4BAA4B;IACzC,SAAS,EAAE,gCAAgC;IAC3C,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,yBAAyB;YACpC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,yBAAyB;YACpC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE,4DAA4D;YACvE,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,uCAAuC;YAClD,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;SAClD;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,0CAA0C;YACrD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,OAAO,GACX,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,UAAU,CAAC;YACjE,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACpB,GAAG,CAAC,WAAW,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAExE,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC;QAEvC,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const residuosSolidosIncineracao: tipoFonteObjeto<[
"tipoResiduo"
], [
"emissao",
"emissaoCH4",
"emissaoN2O",
"emissaoBio"
]>;

View file

@ -0,0 +1,52 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.residuosSolidosIncineracao = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const interfaces_1 = require("../../interfaces");
exports.residuosSolidosIncineracao = {
escopo: "Escopo1",
idTipoFonte: "residuosSolidosIncineracao",
descricao: "Resíduos Sólidos - Incineração",
estruturaCadastro: [
{
idCampo: "tipoResiduo",
descricao: "Tipo de resíduo Incinerado",
tipo: interfaces_1.tiposCamposGee.texto,
},
],
estruturaRegistro: [
{
campo: "emissao",
descricao: "Emissões de CO2 (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissaoCH4",
descricao: "Emissões de CH4 (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissaoN2O",
descricao: "Emissões de N2O (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissaoBio",
descricao: "Emissões de CO2 Biogênico (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const descricao = cad.tipoResiduo;
if (!descricao) {
return resposta_1.respostaCM.addErro("Não foi encontrado um tipo de resíduo");
}
const bio = reg.emissaoBio;
const carbono = Number(reg.emissao) * Number(gwp_1.gwp[0].gwp) +
Number(reg.emissaoCH4) * Number(gwp_1.gwp[1].gwp) +
Number(reg.emissaoN2O) * Number(gwp_1.gwp[2].gwp);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Incineracao.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Incineracao.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1ResiduosSolidos/escopo1Incineracao.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,wDAAqD;AACrD,iDAAwE;AAE3D,QAAA,0BAA0B,GAGnC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,4BAA4B;IACzC,SAAS,EAAE,gCAAgC;IAC3C,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,aAAa;YACtB,SAAS,EAAE,4BAA4B;YACvC,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;KACF;IAED,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,+BAA+B;YAC1C,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,qBAAU,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC;QAE3B,MAAM,OAAO,GACX,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC3C,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAE9C,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,23 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const residuosSolidosAterrados: tipoFonteObjeto<[
"municipio",
"composicaoA",
"composicaoB",
"composicaoC",
"composicaoD",
"composicaoE",
"composicaoF",
"composicaoG",
"composicaoH",
"qualidade",
"concentracao",
"recuperacao",
"destino",
"qtdNitrogenio2",
"fatorEfluente2",
"nitrogenioRemovido2",
"residuosPrimeroTratamento",
"tratamentoEfluente2"
], [
"residuos"
]>;

View file

@ -0,0 +1,202 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.residuosSolidosAterrados = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const listaAterro_1 = require("../../ListasFatoresEmissao/listaAterro");
const listaCidades_1 = require("../../ListasFatoresEmissao/listaCidades");
const listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.residuosSolidosAterrados = {
escopo: "Escopo1",
idTipoFonte: "residuosSolidosAterrados",
descricao: "Resíduos Sólidos - Resíduos Aterrados",
estruturaCadastro: [
{
idCampo: "municipio",
descricao: "Município:",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaMunicipios,
},
{
idCampo: "composicaoA",
descricao: "Composição do resíduo A - Papéis/papelão",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoB",
descricao: "Composição do resíduo B - Resíduos têxteis",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoC",
descricao: "Composição do resíduo C - Resíduos alimentares",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoD",
descricao: "Composição do resíduo D - Madeira",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoE",
descricao: "Composição do resíduo E - Resíduos de jardim e parque",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoF",
descricao: "Composição do resíduo F - Fraldas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoG",
descricao: "Composição do resíduo G - Borracha e couro",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoH",
descricao: "Composição do resíduo H - Lodo de esgoto",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "qualidade",
descricao: "Classificação da qualidade do aterro onde foram destinados os resíduos",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaAterros,
},
{
idCampo: "concentracao",
descricao: "Concentração do Biogás",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "recuperacao",
descricao: "Quantidade de CH4 recuperada do aterro",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "destino",
descricao: "Qual o destino do biogás recuperado? ",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: ["Queima em flare", "Geração de energia"],
},
],
estruturaRegistro: [
{
campo: "residuos",
descricao: "Quantidade de resíduos enviados ao aterro no ano",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad }) => {
//Cadastro
const cidade = listaCidades_1.listaCidades.find((a) => a.ref == cad.municipio);
if (!cidade) {
return resposta_1.respostaCM.addErro("não foi encontrado cidade");
}
const tipoAterro = listaAterro_1.listaAterro.find((a) => a.ref == cad.qualidade);
if (!tipoAterro) {
return resposta_1.respostaCM.addErro("não foi encontrado cidade");
}
//Fatores de emissão
let [metano, oxidacao] = [0, 0];
if (tipoAterro.classificacao == "A") {
metano = listaAterro_1.listaAterro[0].metano;
oxidacao = listaAterro_1.listaAterro[0].oxidacao;
}
else if (tipoAterro.classificacao == "B") {
metano = listaAterro_1.listaAterro[2].metano;
oxidacao = listaAterro_1.listaAterro[2].oxidacao;
}
else if (tipoAterro.classificacao == "C") {
metano = listaAterro_1.listaAterro[3].metano;
oxidacao = listaAterro_1.listaAterro[3].oxidacao;
}
else if (tipoAterro.classificacao == "D") {
metano = listaAterro_1.listaAterro[4].metano;
oxidacao = listaAterro_1.listaAterro[4].oxidacao;
}
else if (tipoAterro.classificacao == "E") {
metano = listaAterro_1.listaAterro[5].metano;
oxidacao = listaAterro_1.listaAterro[5].oxidacao;
}
else {
return resposta_1.respostaCM.addErro("não foi encontrado fator de emissao");
}
//Calculo
const [CF85, CF86, CF87, CF88, CF89, CF90, CF91, CF92] = [
1, 1, 1, 1, 1, 1, 1, 1,
];
let [k_alimentos_lodo, k_papel_texteis, k_madeira, k_jardim_outros_nao_alimentos,] = [1, 1, 1, 1];
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_papel_texteis = 0.045;
}
else {
k_papel_texteis = 0.07;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_papel_texteis = 0.04;
}
else {
k_papel_texteis = 0.06;
}
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_madeira = 0.025;
}
else {
k_madeira = 0.035;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_madeira = 0.02;
}
else {
k_madeira = 0.03;
}
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_jardim_outros_nao_alimentos = 0.065;
}
else {
k_jardim_outros_nao_alimentos = 0.17;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_jardim_outros_nao_alimentos = 0.05;
}
else {
k_jardim_outros_nao_alimentos = 0.1;
}
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_alimentos_lodo = 0.085;
}
else {
k_alimentos_lodo = 0.4;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_alimentos_lodo = 0.06;
}
else {
k_alimentos_lodo = 0.185;
}
const somaDOC = CF85 * (1 - 2.71 ** -k_papel_texteis) +
CF86 * (1 - 2.71 ** -k_papel_texteis) +
CF87 * (1 - 2.71 ** -k_alimentos_lodo) +
CF88 * (1 - 2.71 ** -k_madeira) +
CF89 * (1 - 2.71 ** -k_jardim_outros_nao_alimentos) +
CF90 * (1 - 2.71 ** -k_jardim_outros_nao_alimentos) +
CF91 * (1 - 2.71 ** -k_jardim_outros_nao_alimentos) +
CF92 * (1 - 2.71 ** -k_alimentos_lodo);
const admin = somaDOC * cad.concentracao * 1.33;
const ch4 = (cad.recuperacao - admin) * (1 - oxidacao);
const carbono = ch4 * Number(gwp_1.gwp[1].gwp);
const bio = cad.recuperacao * metano;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1ResiduosAterrado.js.map

File diff suppressed because one or more lines are too long