Open3CL : un mois d'octobre cap sur le DPE immeuble
Nous l’avions présenté il y a quelques mois : Open3CL est la librairie JavaScript open source qui implémente la méthode de calcul 3CL-DPE. Nous contribuons à la faire vivre aux côtés de Kardino, qui l’utilise au cœur de ses simulations de rénovation énergétique.
Le mois d’octobre a été particulièrement dense. Petit bilan chiffré, et surtout ce qu’il y a derrière.
Octobre en chiffres
- 87 pull requests fusionnées sur le dépôt
Open3CL/engine; - 60 issues fermées ;
- une trentaine de versions publiées, de la
1.8.xdu début de mois jusqu’à la1.11.3du 31 octobre.
Ce rythme de publication n’est pas un hasard : chaque correction part en production dès qu’elle est validée, grâce à une chaîne de release entièrement automatisée (versionnement sémantique et changelog générés depuis les messages de commit).
Comment on mesure la qualité d’un moteur DPE
Implémenter une méthode réglementaire, c’est facile à dire. Prouver qu’on la calcule comme les logiciels certifiés, c’est une autre histoire.
Le principal indicateur de qualité d’Open3CL, ce sont les tests de corpus. Un corpus est une liste de 10 000 DPE réels, publiés en open data par l’ADEME. Chaque DPE est rejoué dans le moteur et ses résultats sont comparés à ceux du DPE d’origine sur une vingtaine de grandeurs : consommations de chauffage et d’eau chaude sanitaire, consommation en énergie primaire, émissions de gaz à effet de serre… Un DPE n’est compté comme conforme que si tous les contrôles bloquants restent sous 5 % d’écart.
Neuf corpus sont suivis à chaque version : maisons individuelles, appartements à chauffage individuel ou collectif, DPE à l’immeuble à chauffage individuel, collectif ou mixte, et appartements générés à partir d’un DPE immeuble. Soit 90 000 DPE réels rejoués à chaque release.
Le DPE immeuble, gros chantier du mois
Les maisons individuelles et les appartements à chauffage individuel étaient déjà bien couverts (près de 9 DPE sur 10 conformes). Le défi se situait sur les DPE à l’immeuble et le chauffage collectif, où les installations se complexifient : générateurs partagés, cascades de chaudières, réseaux de chaleur, installations mixtes individuel/collectif.
Entre la version du 2 octobre et celle de fin de mois, sur 10 000 DPE par corpus :
| Corpus | Début octobre | Fin octobre |
|---|---|---|
| Appartements · chauffage collectif | 7 063 | 9 385 |
| Immeuble · chauffage collectif | 6 251 | 8 680 |
| Immeuble · chauffage individuel | 7 413 | 8 539 |
| Immeuble · chauffage mixte | 4 906 | 6 748 |
| Individuel généré depuis l’immeuble | 2 739 | 5 678 |
Autrement dit : plus de 2 300 DPE supplémentaires calculés correctement sur les immeubles à chauffage collectif, et deux fois plus d’appartements générés depuis un DPE immeuble correctement reproduits.
Ce qui a été corrigé
Derrière ces chiffres, beaucoup de corrections très ciblées sur la méthode. Quelques exemples parlants :
- les auxiliaires de chauffage : dimensionnement du circulateur selon la surface de l’installation, selon tous les émetteurs, par logement en DPE immeuble ;
- les générateurs collectifs : détection de la puissance nominale réellement saisie, recalcul depuis les données disponibles, prorata correct entre logements ;
- les cascades de générateurs : quand une priorité est définie, le générateur principal assure tout le besoin qu’il peut couvrir ;
- l’eau chaude sanitaire : appariement d’une ECS mixte avec son générateur de chauffage jumeau, répartition du besoin d’un immeuble au prorata des surfaces des installations ;
- les espaces tampons solarisés (vérandas) : prise en charge de plusieurs espaces tampons dans un même logement ;
- les ponts thermiques et les planchers bas, calculés plancher par plancher.
Le mois s’est terminé par un chantier plus structurel : des types générés directement depuis le schéma XSD de l’observatoire DPE (v2.7), pour fiabiliser la lecture des données d’entrée.
Transparence, y compris sur les régressions
Tout n’a pas été linéaire. La version 1.9.0 a introduit une régression sur les scénarios de travaux (un paramètre de perméabilité à l’air conservé à tort après isolation des parois). Elle est documentée noir sur blanc dans les notes de version, et a été corrigée dans la 1.9.1 quelques jours plus tard.
C’est aussi ça, l’open source : les chiffres, les corrections et les erreurs sont publics. L’historique de conformité de chaque version est versionné dans le dépôt et se reconstruit à l’identique.
Et maintenant ?
Le cap des DPE à l’immeuble est bien engagé, et la suite est déjà en vue : les évolutions réglementaires du 1er janvier 2027 (nouveau facteur de conversion de l’électricité, nouvelle classe A0), que nous détaillons dans un prochain article.
Envie de contribuer, ou simplement de tester ? Le code est sur GitHub, les issues sont ouvertes à tous.