Aperçu de calcul — ELAN avec coefficient correcteur à valider

Cas test : 4 logements, 1 facture chauffage collectif de 8 000 €, un coefficient correcteur de 0,95 appliqué au logement de M. Bernard (dernier étage). Méthode A validée : le coefficient s'applique à la consommation brute pour obtenir une « consommation équivalente », qui sert à calculer le tarif unitaire.

1. Données du cas

Facture : Chauffage collectif — saison 2024-2025 (01/10/2024 → 30/04/2025)
Montant TTC : 8 000,00 €
Groupe de répartition : Résidence des Lilas (4 logements, tantièmes totaux 1 000 ‰)
Compteur : divisionnaire par logement → mode ELAN 70/30 actif

Logement Locataire Tantièmes (‰) Conso brute (kWh) Coef. correcteur Motif
Apt 1M. Durand2507 0001,00
Apt 2Mme Lefèvre3009 0001,00
Apt 3M. Bernard2006 0000,95Dernier étage
Apt 4Mme Rousseau2506 0001,00
Total1 00028 000

2. Part 30 % — tantièmes (coefficient NON appliqué)

part_30 = 30 % × 8 000 € = 2 400,00 €
coefficient tantième = 2 400 ÷ 1 000 = 2,40 €/‰
Logement Tantièmes × Coef. tantième = Part 30 %
Apt 1 — Durand250 ‰×2,40 €/‰=600,00 €
Apt 2 — Lefèvre300 ‰×2,40 €/‰=720,00 €
Apt 3 — Bernard200 ‰×2,40 €/‰=480,00 €
Apt 4 — Rousseau250 ‰×2,40 €/‰=600,00 €
Σ part 30 %2 400,00 €

3. Part 70 % — conso (Méthode A : coefficient sur la conso)

Étape A — Calcul de la consommation équivalente

conso_équivalente_i = conso_brute_i × coef_i
Logement Conso brute × Coef. = Conso équivalente
Apt 1 — Durand7 000 kWh×1,00=7 000
Apt 2 — Lefèvre9 000 kWh×1,00=9 000
Apt 3 — Bernard6 000 kWh×0,95=5 700
Apt 4 — Rousseau6 000 kWh×1,00=6 000
Σ conso équivalente27 700

Étape B — Tarif unitaire équivalent

part_70 = 70 % × 8 000 € = 5 600,00 €
tarif_unitaire = 5 600 ÷ 27 700 = 0,202166… €/kWh-équivalent
(fraction exacte = 56 ÷ 277, utilisée dans les calculs intermédiaires pour éviter les pertes d'arrondi)

À titre de comparaison : sans coefficient correcteur, le tarif aurait été 5 600 ÷ 28 000 = 0,200000 €/kWh exact. Le coefficient 0,95 sur Bernard a légèrement augmenté le tarif unitaire pour tous (+1,08 %) pour compenser la « consommation équivalente » réduite.

Étape C — Quote-part conso par logement

quote_part_conso_i = conso_équivalente_i × tarif_unitaire = conso_brute_i × coef_i × (56/277)
Logement Conso équiv. × Tarif = Part 70 % (€)
Apt 1 — Durand7 000×56/277=1 415,1624…
Apt 2 — Lefèvre9 000×56/277=1 819,4946…
Apt 3 — Bernard5 700×56/277=1 152,3466…
Apt 4 — Rousseau6 000×56/277=1 212,9964…
Σ part 70 % (avant arrondi)5 600,0000
✓ Conservation parfaite : Σ conso_équivalente × tarif = Σ (conso_équivalente × 5 600 / 27 700) = 27 700 × 5 600 / 27 700 = 5 600 € exactement. Aucune perte d'arrondi dans les étapes intermédiaires.

4. Total par locataire (arrondi unique au résultat final)

quote_part_finale_i = arrondi_2_décimales( part_70_i + part_30_i )

L'arrondi à 2 décimales s'applique uniquement sur le total final par locataire, jamais sur les étapes intermédiaires (cohérent avec la logique du code existant, cf. gestion-app/index.html ligne 1700).

Locataire Part 70 % (conso) + Part 30 % (tantièmes) = Total brut Total arrondi
M. Durand1 415,1624…600,00002 015,1624…2 015,16 €
Mme Lefèvre1 819,4946…720,00002 539,4946…2 539,49 €
M. Bernard1 152,3466…480,00001 632,3466…1 632,35 €
Mme Rousseau1 212,9964…600,00001 812,9964…1 813,00 €
Σ quote-parts arrondies8 000,00 €
Montant facture imputé aux locataires
8 000,00 € — la somme des quote-parts boucle exactement
8 000,00 €

5. Comparaison avec / sans coefficient — effet de la correction

Pour visualiser l'effet du coefficient 0,95 appliqué à Bernard, on compare les deux scénarios.

Locataire Sans correction (tarif 0,20 €/kWh exact) Avec correction (tarif 56/277 €/kWh-équiv) Δ
M. Durand2 000,00 €2 015,16 €+15,16 €
Mme Lefèvre2 520,00 €2 539,49 €+19,49 €
M. Bernard1 680,00 €1 632,35 €−47,65 €
Mme Rousseau1 800,00 €1 813,00 €+13,00 €
Total8 000,00 €8 000,00 €0,00 €
✓ Compensation neutre : Bernard, en dernier étage, économise exactement 47,65 € grâce au coefficient 0,95. Les 3 autres logements absorbent collectivement ces 47,65 € au prorata de leur conso brute (+15,16 + 19,49 + 13,00 = +47,65 €). La facture totale ne change pas : c'est une redistribution interne, pas une majoration.

6. Comportements de rétrocompatibilité (tests à valider en plus)

Test régression — tous coef à 1,00 : si Bernard repasse à 1,00, on retombe exactement sur le calcul ELAN actuel (tarif = 0,20 €/kWh, totaux 2 000 / 2 520 / 1 680 / 1 800). ✓ rétrocompatibilité stricte garantie.

Test catégorie non-chauffage : une facture catégorie « Eau froide » ou « OM » ignore les coefficients (le bloc ELAN ne s'active pas, calcul standard). ✓

Test mode dégradé sans compteur : si aucun compteur divisionnaire n'est lié, l'app bascule en mode 100 % tantièmes (logique existante) et les coefficients sont ignorés. ✓

Test prorata présence : si M. Bernard sort à mi-période, le coefficient s'applique à sa conso brute mesurée sur sa période de présence, puis le résultat (part 70 + part 30) est arrondi une seule fois. La quote-part vacante est portée par le bailleur, comme actuellement.

7. À valider avant implémentation

Chiffres à valider :
  1. Tarif unitaire équivalent = 56/277 ≈ 0,202166 €/kWh-équiv → OK ?
  2. Bernard paye 1 632,35 € (vs 1 680 € sans correction) → OK ?
  3. Les 3 autres absorbent +47,65 € au prorata → OK ?
  4. Σ quote-parts = 8 000,00 € exactement (arrondi unique au résultat final) → OK ?
  5. Comparaison sans/avec → OK ?

Si tous les chiffres sont validés, j'implémente la feature dans gestion-app/index.html selon la spec du plan §1-§12, sans toucher au reste de l'app et avec rétro-compatibilité stricte (migration à 1,00 pour tous les biens existants).