@open3cl/engine 1.3.12 → 1.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/5_conso_ventilation.js +2 -4
- package/README.md +89 -76
- package/engine.js +7 -4
- package/index.js +2 -2
- package/package.json +2 -5
package/5_conso_ventilation.js
CHANGED
|
@@ -87,13 +87,11 @@ export default function calc_pvent(di, de, du, th) {
|
|
|
87
87
|
case 'vmc sf auto réglable de 1982 à 2000':
|
|
88
88
|
case 'vmc sf auto réglable de 2001 à 2012':
|
|
89
89
|
case 'vmc sf auto réglable après 2012':
|
|
90
|
-
type = 'simple flux auto';
|
|
91
|
-
break;
|
|
92
90
|
case 'vmc sf gaz avant 2001':
|
|
93
91
|
case 'vmc sf gaz de 2001 à 2012':
|
|
94
92
|
case 'vmc sf gaz après 2012':
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
type = 'simple flux auto';
|
|
94
|
+
break;
|
|
97
95
|
case 'vmc sf hygro b avant 2001':
|
|
98
96
|
case 'vmc sf hygro b de 2001 à 2012':
|
|
99
97
|
case 'vmc sf hygro b après 2012':
|
package/README.md
CHANGED
|
@@ -125,7 +125,8 @@ Attention aux quotas sur l'api:
|
|
|
125
125
|
- 1000 requêtes / minute
|
|
126
126
|
- 10000 requêtes / jour
|
|
127
127
|
|
|
128
|
-
Dans le cas où un corpus est joué avec beaucoup de dpe à télécharger via l'api de l'ademe (car non présent en local), la
|
|
128
|
+
Dans le cas où un corpus est joué avec beaucoup de dpe à télécharger via l'api de l'ademe (car non présent en local), la
|
|
129
|
+
meilleure configuration est:
|
|
129
130
|
|
|
130
131
|
- `export MAX_WORKER_THREADS=10`
|
|
131
132
|
- `export API_ADEME_DOWNLOAD_WAIT=1000`
|
|
@@ -133,43 +134,45 @@ Dans le cas où un corpus est joué avec beaucoup de dpe à télécharger via l'
|
|
|
133
134
|
|
|
134
135
|
<p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
|
|
135
136
|
|
|
136
|
-
##
|
|
137
|
+
## Corpus
|
|
138
|
+
|
|
139
|
+
### Introduction
|
|
137
140
|
|
|
138
141
|
Les tests de corpus consistent à analyser une liste de numéro de DPE présent dans un fichier CSV.
|
|
139
|
-
Pour chaque DPE, le fichier est téléchargé si pas déjà présent en local, et il est envoyé à la librairie Open3CL.
|
|
140
|
-
On analyse en sortie de la lib certaines valeurs que l'on compare aux valeurs du DPE initial. Le seuil de tolérance est
|
|
141
|
-
fixé par défaut à 5%.
|
|
142
|
-
La liste des valeurs analysées est la suivante:
|
|
143
142
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
143
|
+
- Pour chaque DPE, le fichier est téléchargé si pas déjà présent en local, et il est envoyé à la librairie Open3CL.
|
|
144
|
+
- On analyse en sortie de la lib certaines valeurs que l'on compare aux valeurs du DPE initial.
|
|
145
|
+
- **Le seuil de tolérance est fixé par défaut à 5%**.
|
|
146
|
+
|
|
147
|
+
### Qu'est-ce qui est contrôlé ?
|
|
148
|
+
|
|
149
|
+
Les informations contrôlées et qui doivent obligatoirement ne pas dépasser
|
|
150
|
+
le seuil des **5%** entre le dpe d'origine et le dpe proposé par la librairie Open3CL sont :
|
|
151
|
+
|
|
152
|
+
- logement.sortie.ef_conso.conso_ecs
|
|
153
|
+
- logement.sortie.ef_conso.conso_ch
|
|
154
|
+
- logement.sortie.ep_conso.ep_conso_5_usages ou logement.sortie.ep_conso.ep_conso_5_usages_m2
|
|
155
|
+
- logement.sortie.emission_ges.emission_ges_5_usages ou logement.sortie.emission_ges.emission_ges_5_usages_m2
|
|
156
|
+
|
|
157
|
+
### Liste des corpus
|
|
158
|
+
|
|
159
|
+
Il existe actuellement 5 corpus (avec 10000 dpe analysés dans chaque corpus) :
|
|
160
|
+
|
|
161
|
+
- `corpus.csv`: Corpus généraliste
|
|
162
|
+
- `dpe_logement_individuel_2025.csv`: Corpus avec uniquement des dpe individuels réalisés en 2025
|
|
163
|
+
- `dpe_immeuble_chauffage_individuel.csv`: Corpus avec uniquement des dpe immeuble pour des logements avec chauffage
|
|
164
|
+
individuel
|
|
165
|
+
- `dpe_immeuble_chauffage_collectif.csv`: Corpus avec uniquement des dpe immeuble pour des logements avec chauffage
|
|
166
|
+
collectif
|
|
167
|
+
- `dpe_immeuble_chauffage_mixte.csv`: Corpus avec uniquement des dpe immeuble pour des logements avec chauffage mixte
|
|
168
|
+
|
|
169
|
+
### Comment lancer les corpus ?
|
|
168
170
|
|
|
169
171
|
- `npm run test:corpus:all`: Joue l'intégralité des corpus et génère les rapports associés.
|
|
170
|
-
- `npm run test:corpus`. Joue le corpus [corpus_dpe.csv](test/corpus/corpus_dpe.csv) et génère les rapports
|
|
172
|
+
- `npm run test:corpus`. Joue le corpus [corpus_dpe.csv](test/corpus/files/corpus_dpe.csv) et génère les rapports
|
|
173
|
+
associés.
|
|
171
174
|
- `npm run test:corpus -- corpus-file-path=corpus.csv`. Chemin relatif vers le fichier de corpus à analyser
|
|
172
|
-
Par défaut, le corpus utilisé est présent ici : [test/corpus/corpus_dpe.csv](test/corpus/corpus_dpe.csv)
|
|
175
|
+
Par défaut, le corpus utilisé est présent ici : [test/corpus/corpus_dpe.csv](test/corpus/files/corpus_dpe.csv)
|
|
173
176
|
- `npm run test:corpus -- dpes-folder-path=/home/user/dpes`. Chemin vers le dossier ou les DPE seront téléchargés. Si un
|
|
174
177
|
fichier DPE est déjà présent dans ce dossier, il ne sera pas retéléchargé.
|
|
175
178
|
|
|
@@ -180,53 +183,63 @@ Résultats des tests de corpus avec le mode de compatibilité activé.
|
|
|
180
183
|
<details>
|
|
181
184
|
<summary>Voir les versions précédents</summary>
|
|
182
185
|
|
|
183
|
-
| Version librairie
|
|
184
|
-
|
|
|
185
|
-
| <ins>**1.2.3**<ins>
|
|
186
|
-
| 1.2.3
|
|
187
|
-
| 1.2.3
|
|
188
|
-
| 1.2.3
|
|
189
|
-
| <ins>**1.2.8**<ins>
|
|
190
|
-
| 1.2.8
|
|
191
|
-
| 1.2.8
|
|
192
|
-
| 1.2.8
|
|
193
|
-
| <ins>**1.3.1**<ins>
|
|
194
|
-
| 1.3.1
|
|
195
|
-
| 1.3.1
|
|
196
|
-
| 1.3.1
|
|
197
|
-
| <ins>**1.3.2**<ins>
|
|
198
|
-
| 1.3.2
|
|
199
|
-
| 1.3.2
|
|
200
|
-
| 1.3.2
|
|
201
|
-
| <ins>**1.3.5**<ins>
|
|
202
|
-
| 1.3.5
|
|
203
|
-
| 1.3.5
|
|
204
|
-
| 1.3.5
|
|
205
|
-
| <ins>**1.3.6**<ins>
|
|
206
|
-
| 1.3.6
|
|
207
|
-
| 1.3.6
|
|
208
|
-
| 1.3.6
|
|
209
|
-
| <ins>**1.3.7**<ins>
|
|
210
|
-
| 1.3.7
|
|
211
|
-
| 1.3.7
|
|
212
|
-
| 1.3.7
|
|
213
|
-
| <ins>**1.3.8**<ins>
|
|
214
|
-
| 1.3.8
|
|
215
|
-
| 1.3.8
|
|
216
|
-
| 1.3.8
|
|
186
|
+
| Version librairie | corpus | Nb en dessous du taux d'erreur | Taux de réussite | Description | Détail des valeurs |
|
|
187
|
+
| :------------------- | ------------------------------------- | ------------------------------ | ----------------------- | ------------------------------------------------- | ------------------ |
|
|
188
|
+
| <ins>**1.2.3**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4489**<ins> | <ins>**45%**<ins> | | |
|
|
189
|
+
| 1.2.3 | dpe_immeuble_chauffage_individuel.csv | 3257 | 32% | | |
|
|
190
|
+
| 1.2.3 | dpe_immeuble_chauffage_collectif.csv | 5279 | 53% | | |
|
|
191
|
+
| 1.2.3 | dpe_immeuble_chauffage_mixte.csv | 2728 | 27% | | |
|
|
192
|
+
| <ins>**1.2.8**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**489**<ins> | <ins>**45%**<ins> | | |
|
|
193
|
+
| 1.2.8 | dpe_immeuble_chauffage_individuel.csv | 5275 (+2018) | 53% (+21%) | | |
|
|
194
|
+
| 1.2.8 | dpe_immeuble_chauffage_collectif.csv | 5747 (+468) | 57% (+4%) | | |
|
|
195
|
+
| 1.2.8 | dpe_immeuble_chauffage_mixte.csv | 3142 (+414) | 31% (+4%) | | |
|
|
196
|
+
| <ins>**1.3.1**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4508 (+19)**<ins> | <ins>**45%**<ins> | | |
|
|
197
|
+
| 1.3.1 | dpe_immeuble_chauffage_individuel.csv | 5459 (+184) | 55% (+2%) | | |
|
|
198
|
+
| 1.3.1 | dpe_immeuble_chauffage_collectif.csv | 5848 (+101) | 58% (+1%) | | |
|
|
199
|
+
| 1.3.1 | dpe_immeuble_chauffage_mixte.csv | 4018 (+876) | 40% (+9%) | | |
|
|
200
|
+
| <ins>**1.3.2**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4519 (+11)**<ins> | <ins>**45%**<ins> | | |
|
|
201
|
+
| 1.3.2 | dpe_immeuble_chauffage_individuel.csv | 5476 (+17) | 55% | | |
|
|
202
|
+
| 1.3.2 | dpe_immeuble_chauffage_collectif.csv | 5869 (+21) | 58% | | |
|
|
203
|
+
| 1.3.2 | dpe_immeuble_chauffage_mixte.csv | 4040 (+22) | 40% | | |
|
|
204
|
+
| <ins>**1.3.5**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4522 (+3)**<ins> | <ins>**45%**<ins> | | |
|
|
205
|
+
| 1.3.5 | dpe_immeuble_chauffage_individuel.csv | 5488 (+12) | 55% | |
|
|
206
|
+
| 1.3.5 | dpe_immeuble_chauffage_collectif.csv | 5869 | 58% | | |
|
|
207
|
+
| 1.3.5 | dpe_immeuble_chauffage_mixte.csv | 4082 (+42) | 40% | | |
|
|
208
|
+
| <ins>**1.3.6**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4522**<ins> | <ins>**45%**<ins> | | |
|
|
209
|
+
| 1.3.6 | dpe_immeuble_chauffage_individuel.csv | 5650 (+162) | 56% | | |
|
|
210
|
+
| 1.3.6 | dpe_immeuble_chauffage_collectif.csv | 5894 (+25) | 59% (+1%) | | |
|
|
211
|
+
| 1.3.6 | dpe_immeuble_chauffage_mixte.csv | 4141 (+59) | 41% (+1%) | | |
|
|
212
|
+
| <ins>**1.3.7**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4522**<ins> | <ins>**45%**<ins> | | |
|
|
213
|
+
| 1.3.7 | dpe_immeuble_chauffage_individuel.csv | 6960 (+1310) | 69% (+13%) | | |
|
|
214
|
+
| 1.3.7 | dpe_immeuble_chauffage_collectif.csv | 6106 (+212) | 61% (+2%) | | |
|
|
215
|
+
| 1.3.7 | dpe_immeuble_chauffage_mixte.csv | 4730 (+589) | 47% (+6%) | | |
|
|
216
|
+
| <ins>**1.3.8**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4522**<ins> | <ins>**45%**<ins> | | |
|
|
217
|
+
| 1.3.8 | dpe_immeuble_chauffage_individuel.csv | 6965 (+5) | 69% | | |
|
|
218
|
+
| 1.3.8 | dpe_immeuble_chauffage_collectif.csv | 6110 (+4) | 61% | | |
|
|
219
|
+
| 1.3.8 | dpe_immeuble_chauffage_mixte.csv | 4735 (+5) | 47% | | |
|
|
220
|
+
| <ins>**1.3.9**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4460**<ins> (-62) | <ins>**44% (-1%)**<ins> | Pertes liés au fix bug tribu zone 2hd valeur dh19 | |
|
|
221
|
+
| 1.3.9 | dpe_immeuble_chauffage_individuel.csv | 6901 (-64) | 69% | Pertes liés au fix bug tribu zone 2hd valeur dh19 | |
|
|
222
|
+
| 1.3.9 | dpe_immeuble_chauffage_collectif.csv | 6058 (-58) | 60% (-1%) | Pertes liés au fix bug tribu zone 2hd valeur dh19 | |
|
|
223
|
+
| 1.3.9 | dpe_immeuble_chauffage_mixte.csv | 4728 (-7) | 47% | Pertes liés au fix bug tribu zone 2hd valeur dh19 | |
|
|
224
|
+
| <ins>**1.3.11**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4468**<ins> (+8) | <ins>**44%**<ins> | | |
|
|
225
|
+
| 1.3.11 | dpe_immeuble_chauffage_individuel.csv | 6901 | 69% | | |
|
|
226
|
+
| 1.3.11 | dpe_immeuble_chauffage_collectif.csv | 6058 | 60% | | |
|
|
227
|
+
| 1.3.11 | dpe_immeuble_chauffage_mixte.csv | 4727 (-1) | 47% | Dpes erronés sur le calcul volume ballon ecs | |
|
|
217
228
|
|
|
218
229
|
</details>
|
|
219
230
|
|
|
220
|
-
| Version librairie | corpus | Nb en dessous du taux d'erreur | Taux de réussite
|
|
221
|
-
| :------------------- | ------------------------------------- | ------------------------------ |
|
|
222
|
-
| <ins>**1.3.
|
|
223
|
-
| 1.3.
|
|
224
|
-
| 1.3.
|
|
225
|
-
| 1.3.
|
|
226
|
-
|
|
|
227
|
-
| 1.3.
|
|
228
|
-
| 1.3.
|
|
229
|
-
| 1.3.
|
|
231
|
+
| Version librairie | corpus | Nb en dessous du taux d'erreur | Taux de réussite | Description | Détail des valeurs |
|
|
232
|
+
| :------------------- | ------------------------------------- | ------------------------------ | ---------------------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
233
|
+
| <ins>**1.3.12**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4467**<ins> (-1) | <ins>**44%**<ins> | Dpe erroné avec surface chauffée invalide | |
|
|
234
|
+
| 1.3.12 | dpe_logement_individuel_2025.csv | 8429 | 84% | | |
|
|
235
|
+
| 1.3.12 | dpe_immeuble_chauffage_individuel.csv | 6900 (-1) | 69% | Dpe erroné avec surface chauffée invalide | |
|
|
236
|
+
| 1.3.12 | dpe_immeuble_chauffage_collectif.csv | 6058 | 60% | | |
|
|
237
|
+
| 1.3.12 | dpe_immeuble_chauffage_mixte.csv | 4725 (-2) | 47% | Dpe erroné avec surface chauffée invalide | |
|
|
238
|
+
| <ins>**1.3.13**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4481**<ins> (+14) | <ins>**45 (+1%)**<ins> | | <a href="https://open3cl.github.io/engine/reports/corpus?corpus_file=corpus_dpe.csv" target="_blank">Voir le détail</a> |
|
|
239
|
+
| 1.3.13 | dpe_logement_individuel_2025.csv | 8453 | 84% (+24) | | <a href="https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_logement_individuel_2025.csv" target="_blank">Voir le détail</a> |
|
|
240
|
+
| 1.3.13 | dpe_immeuble_chauffage_individuel.csv | 7106 (+205) | 71% (+2%) | | <a href="https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_individuel.csv" target="_blank">Voir le détail</a> |
|
|
241
|
+
| 1.3.13 | dpe_immeuble_chauffage_collectif.csv | 6083 (+25) | 61% (+1%) | | <a href="https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_collectif.csv" target="_blank">Voir le détail</a> |
|
|
242
|
+
| 1.3.13 | dpe_immeuble_chauffage_mixte.csv | 4751 (+24) | 47% | | <a href="https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_mixte.csv" target="_blank">Voir le détail</a> |
|
|
230
243
|
|
|
231
244
|
## Roadmap
|
|
232
245
|
|
package/engine.js
CHANGED
|
@@ -20,6 +20,8 @@ import { Inertie } from './7_inertie.js';
|
|
|
20
20
|
import getFicheTechnique from './ficheTechnique.js';
|
|
21
21
|
import { ProductionENR } from './16.2_production_enr.js';
|
|
22
22
|
|
|
23
|
+
import { version } from 'package.json';
|
|
24
|
+
|
|
23
25
|
function calc_th(map_id) {
|
|
24
26
|
const map = enums.methode_application_dpe_log[map_id];
|
|
25
27
|
if (map.includes('maison')) return 'maison';
|
|
@@ -32,6 +34,10 @@ function calc_th(map_id) {
|
|
|
32
34
|
const inertie = new Inertie();
|
|
33
35
|
const productionENR = new ProductionENR();
|
|
34
36
|
|
|
37
|
+
export function getVersion() {
|
|
38
|
+
return version;
|
|
39
|
+
}
|
|
40
|
+
|
|
35
41
|
export function calcul_3cl(dpe) {
|
|
36
42
|
sanitize_dpe(dpe);
|
|
37
43
|
const modele = enums.modele_dpe[dpe.administratif.enum_modele_dpe_id];
|
|
@@ -92,10 +98,7 @@ export function calcul_3cl(dpe) {
|
|
|
92
98
|
|
|
93
99
|
add_references(logement.enveloppe);
|
|
94
100
|
|
|
95
|
-
|
|
96
|
-
/* const package_version = require('../package.json').version; */
|
|
97
|
-
const package_version = 'alpha';
|
|
98
|
-
dpe.administratif.diagnostiqueur = { version_moteur_calcul: `Open3CL ${package_version}` };
|
|
101
|
+
dpe.administratif.diagnostiqueur = { version_moteur_calcul: `Open3CL ${version}` };
|
|
99
102
|
const env = logement.enveloppe;
|
|
100
103
|
let Sh;
|
|
101
104
|
let ShChauffageAndEcs;
|
package/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { calcul_3cl, get_classe_ges_dpe, get_conso_coeff_1_9_2026 } from './engine.js';
|
|
2
|
-
export { calcul_3cl, get_classe_ges_dpe, get_conso_coeff_1_9_2026 };
|
|
1
|
+
import { calcul_3cl, get_classe_ges_dpe, get_conso_coeff_1_9_2026, getVersion } from './engine.js';
|
|
2
|
+
export { calcul_3cl, get_classe_ges_dpe, get_conso_coeff_1_9_2026, getVersion };
|
|
3
3
|
import { Umur, Uph, Upb, Uporte, Ubv, Upt } from './3_deperdition.js';
|
|
4
4
|
export { Umur, Uph, Upb, Uporte, Ubv, Upt };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open3cl/engine",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.14",
|
|
4
4
|
"description": "Open Source 3CL-DPE engine",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"directories": {
|
|
@@ -15,10 +15,7 @@
|
|
|
15
15
|
"test": "vitest run",
|
|
16
16
|
"test:ci": "vitest run --coverage",
|
|
17
17
|
"test:corpus": "node test/corpus/run_corpus_checks.js",
|
|
18
|
-
"test:corpus:
|
|
19
|
-
"test:corpus:ch-col": "node test/corpus/run_corpus_checks.js --corpus-file-path=test/corpus/dpe_immeuble_chauffage_collectif.csv",
|
|
20
|
-
"test:corpus:ch-mix": "node test/corpus/run_corpus_checks.js --corpus-file-path=test/corpus/dpe_immeuble_chauffage_mixte.csv",
|
|
21
|
-
"test:corpus:all": "npm run test:corpus && npm run test:corpus:ch-ind && npm run test:corpus:ch-col && npm run test:corpus:ch-mix",
|
|
18
|
+
"test:corpus:all": "node test/corpus/run_all_corpus_checks.js",
|
|
22
19
|
"test:corpus:all+database": "npm run test:corpus:all && node test/corpus/corpus_database.js",
|
|
23
20
|
"qa:lint": "eslint .",
|
|
24
21
|
"qa:lint:fix": "npm run qa:lint -- --fix",
|