Skip to content
This repository has been archived by the owner on Feb 13, 2025. It is now read-only.

Commit

Permalink
Merge pull request #249 from RedFroggy/fixUmurTotal
Browse files Browse the repository at this point in the history
fix: Fix Umur calculation
  • Loading branch information
jgavignet authored Nov 22, 2024
2 parents ce9d7b3 + 4e0343d commit d8e6d19
Showing 1 changed file with 20 additions and 10 deletions.
30 changes: 20 additions & 10 deletions src/3_deperdition.js
Original file line number Diff line number Diff line change
Expand Up @@ -100,14 +100,14 @@ function verifyMursEquality(calculatedMurs, declaredMurs) {
const uMurForCalculatedMurs = calculatedMurs.map(
(calculatedMur) =>
calculatedMur.donnee_entree.surface_paroi_opaque *
(calculatedMur.donnee_intermediaire.umur || 1) *
(calculatedMur.donnee_intermediaire.b || 1)
calculatedMur.donnee_intermediaire.umur *
calculatedMur.donnee_intermediaire.b
);
const uMurForDeclaredMurs = declaredMurs.map(
(declaredMur) =>
declaredMur.donnee_entree.surface_paroi_opaque *
(declaredMur.donnee_intermediaire.umur || 1) *
(declaredMur.donnee_intermediaire.b || 1)
declaredMur.donnee_intermediaire.umur *
declaredMur.donnee_intermediaire.b
);

return (
Expand Down Expand Up @@ -175,15 +175,25 @@ function totalDeperditionMurs(dpe, calculatedMurs, declaredMurs) {
const calculatedDeperditionMur = calculatedMurs.reduce((acc, mur) => acc + Umur(mur) || 0, 0);

/**
* Si individuellement les ponts thermiques déclarés et calculés sont identiques, la déperdition totale devrait l'être également
* Si individuellement les murs déclarés et calculés sont identiques, la déperdition totale devrait l'être également
* Pour certains DPE, il réside une différence que l'on prendra en compte pour la suite des calculs.
*/
if (sameValues && calculatedDeperditionMur.toFixed(5) !== declaredDeperditionMurs.toFixed(5)) {
console.error(
`Les valeurs des murs calculées et déclarées pour le DPE ${dpe.numero_dpe} sont les mêmes mais le total des déperditions pour les murs
${declaredDeperditionMurs} diffère du total calculé avec les mêmes valeurs ${declaredDeperditionMurs}'. Le total déclaré est conservé.`
);
return declaredDeperditionMurs;
if (declaredDeperditionMurs.toFixed(5) > calculatedDeperditionMur.toFixed(5)) {
console.error(
`Les valeurs des murs calculées et déclarées pour le DPE ${dpe.numero_dpe} sont les mêmes mais le total déclaré des déperditions pour les murs
'${declaredDeperditionMurs}' diffère et est supérieure au total calculé avec les mêmes valeurs '${calculatedDeperditionMur}'. Le total déclaré est conservé.`
);

return declaredDeperditionMurs;
} else {
console.error(
`Les valeurs des murs calculées et déclarées pour le DPE ${dpe.numero_dpe} sont les mêmes mais le total déclaré des déperditions pour les murs
'${declaredDeperditionMurs}' diffère et est inférieure au total calculé avec les mêmes valeurs '${calculatedDeperditionMur}'. Le total calculé est conservé.`
);

return calculatedDeperditionMur;
}
}
return calculatedDeperditionMur;
}
Expand Down

0 comments on commit d8e6d19

Please sign in to comment.