@open3cl/engine 1.0.15 → 1.0.16

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.
Files changed (3) hide show
  1. package/4_ventilation.js +8 -1
  2. package/README.md +128 -59
  3. package/package.json +11 -2
package/4_ventilation.js CHANGED
@@ -156,7 +156,14 @@ export default function calc_ventilation(
156
156
  const Hsp = cg.hsp;
157
157
 
158
158
  tv_debits_ventilation(di, de, du);
159
- tv_q4pa_conv(di, de, cg, mur_list, ph_list, porte_list, bv_list);
159
+
160
+ // Pour les bâtiments qui ont fait l’objet d’une mesure d’étanchéité à l’air moins de deux ans avant le diagnostic, la valeur
161
+ // mesurée de Q4Paconv/m² peut être saisie.
162
+ if (de.q4pa_conv_saisi) {
163
+ di.q4pa_conv = de.q4pa_conv_saisi;
164
+ } else {
165
+ tv_q4pa_conv(di, de, cg, mur_list, ph_list, porte_list, bv_list);
166
+ }
160
167
 
161
168
  di.hvent = 0.34 * di.qvarep_conv * surface_ventile;
162
169
 
package/README.md CHANGED
@@ -1,22 +1,79 @@
1
- # Open3CL
2
-
3
- Open3CL est une librairie JavaScript open source, spécialement conçue pour faciliter le calcul des Diagnostics de Performance Énergétique (DPE). Elle implémente la norme définie dans [l'annexe 1 de l'arrêté du 31 mars 2021](https://rt-re-batiment.developpement-durable.gouv.fr/IMG/pdf/consolide_annexe_1_arrete_du_31_03_2021_relatif_aux_methodes_et_procedures_applicables.pdf). Elle est destinée aux développeurs qui souhaitent intégrer des calculs énergétiques précis et conformes à la réglementation dans leurs applications.
4
-
5
- ## Fonctionnalités principales
6
-
7
- - **Calculs énergétiques** : Supporte les différentes méthodologies définies par la réglementation.
8
- - **Conformité** : Implémente la norme définie dans [l'annexe 1 de l'arrêté du 31 mars 2021](https://rt-re-batiment.developpement-durable.gouv.fr/IMG/pdf/consolide_annexe_1_arrete_du_31_03_2021_relatif_aux_methodes_et_procedures_applicables.pdf).
9
- - **Performance** : Optimisée pour des calculs rapides sur de grands ensembles de données.
1
+ <a id="readme-top"></a>
2
+ [![Contributors][contributors-shield]][contributors-url]
3
+ [![Forks][forks-shield]][forks-url]
4
+ [![Stargazers][stars-shield]][stars-url]
5
+ [![Issues][issues-shield]][issues-url]
6
+ [![ GPL-3.0 license][license-shield]][license-url]
7
+
8
+ <br />
9
+ <div align="center">
10
+ <a href="https://open3cl.fr">
11
+ <img src="images/logo.png" alt="Logo" width="260" height="80">
12
+ </a>
13
+
14
+ <h3 align="center">Open3CL</h3>
15
+ Implémentation open source du moteur Open3CL de l'ADEME.
16
+ <p align="center">
17
+
18
+ ![Javascript][Javascript]
19
+
20
+ <br/>
21
+ <a href="https://github.com/Open3CL/issues/new?labels=bug&template=bug-report---.md">Créer un bug</a>
22
+ &middot;
23
+ <a href="https://github.com/Open3CL/issues/new?labels=enhancement&template=feature-request---.md">Créer une feature</a>
24
+ </p>
25
+ </div>
26
+
27
+ <details>
28
+ <summary>Sommaire</summary>
29
+ <ol>
30
+ <li>
31
+ <a href="#a-propos-du-projet">A propos du projet</a>
32
+ </li>
33
+ <li>
34
+ <a href="#demarrage">Démarrage</a>
35
+ <ul>
36
+ <li><a href="#pre-requis">Pre-requis</a></li>
37
+ <li><a href="#installation">Installation</a></li>
38
+ <li><a href="#documentation">Documentation</a></li>
39
+ </ul>
40
+ </li>
41
+ <li><a href="#usage">Usage</a></li>
42
+ <li><a href="#rapports">Rapports</a></li>
43
+ <li><a href="#roadmap">Roadmap</a></li>
44
+ <li><a href="#contribution">Contribution</a></li>
45
+ <li><a href="#license">License</a></li>
46
+ <li><a href="#contact">Contact</a></li>
47
+ <li><a href="#acknowledgments">Acknowledgments</a></li>
48
+ </ol>
49
+ </details>
50
+
51
+ ## A propos du projet
52
+
53
+ Open3CL est une librairie JavaScript open source, spécialement conçue pour faciliter le calcul des Diagnostics de Performance Énergétique (DPE).
54
+ Elle implémente la norme définie dans [l'annexe 1 de l'arrêté du 31 mars 2021](https://rt-re-batiment.developpement-durable.gouv.fr/IMG/pdf/consolide_annexe_1_arrete_du_31_03_2021_relatif_aux_methodes_et_procedures_applicables.pdf). Elle est destinée aux développeurs qui souhaitent intégrer des calculs énergétiques précis et conformes à la réglementation dans leurs applications.
55
+
56
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
57
+
58
+ ## Démarrage
59
+
60
+ ### Pre-requis
61
+
62
+ Vous devez d'abord installer [NodeJS](https://nodejs.org/en) en version 20 ou supérieure.
63
+
64
+ ### Installation
65
+
66
+ ```sh
67
+ npm install @open3cl/engine
68
+ ```
10
69
 
11
- ## Installation
70
+ ### Documentation
12
71
 
13
- ```bash
14
- npm install @open3cl/engine
15
- ```
72
+ Lien à faire vers les wiki
16
73
 
17
- ## Exemple d'utilisation
74
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
18
75
 
19
- Voici un exemple basique montrant comment utiliser Open3CL pour calculer un DPE :
76
+ ## Utilisation
20
77
 
21
78
  ```javascript
22
79
  import { calcul_3cl } from 'open3cl';
@@ -47,58 +104,70 @@ const dpeData = {
47
104
  const result = calcul_3cl(dpeData);
48
105
  ```
49
106
 
50
- ## Documentation
51
-
52
- Vous pouvez consulter la documentation complète sur [l'annexe 1 de l'arrêté du 31 mars 2021](https://rt-re-batiment.developpement-durable.gouv.fr/IMG/pdf/consolide_annexe_1_arrete_du_31_03_2021_relatif_aux_methodes_et_procedures_applicables.pdf) pour obtenir plus de détails sur l'utilisation des différents modules et fonctions.
53
-
54
- ## Ressources
55
-
56
- - [PDF Méthode 3CL v1.3](https://rt-re-batiment.developpement-durable.gouv.fr/IMG/pdf/consolide_annexe_1_arrete_du_31_03_2021_relatif_aux_methodes_et_procedures_applicables.pdf)
57
- - [Gitlab Observatoire DPE](https://gitlab.com/observatoire-dpe/observatoire-dpe/-/blob/master/README.md)
58
- - [Légifrance 13/04/2021 ajout d'indicateur de confort thermique dans la sortie du DPE](https://www.legifrance.gouv.fr/download/pdf?id=doxMrRr0wbfJVvtWjfDP4qE7zNsiFZL-4wqNyqoY-CA=)
59
- - [Légifrance 13/04/2021 valeurs GES](https://www.legifrance.gouv.fr/download/pdf?id=doxMrRr0wbfJVvtWjfDP4gHzzERt1iX0PtobthCE6A0=)
60
- - [CSTB Procédure de certification](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjH-fG2-s7_AhXLaqQEHTP8CwMQFnoECA4QAQ&url=https%3A%2F%2Frt-re-batiment.developpement-durable.gouv.fr%2FIMG%2Fpdf%2Freglement_evaluation_logiciel_dpe_2021_-_audit_energetique-13122022_v2.pdf&usg=AOvVaw3SWv8drhqbgMMT8K9m6a2C&opi=89978449)
61
- - [Valeurs des étiquettes énergétiques](https://docs.google.com/spreadsheets/d/1QVXUOLP8aJukA-PLBGyVB0ZJTWmLEE1WbflXUfsT_jU/edit#gid=0)
62
-
63
- ## Quelques DPE intéressants
64
-
65
- En travaillant sur les DPE je suis tombé sur quelques cas de DPE intéressants
66
-
67
- - `2307E3075089A` chaudiere a condensation + climatiseur
68
- - `2344E2258429L` DPE generé a partir des données immeuble
69
- - `2362E3036179P` poele a charbon
70
- - `2369E2991011Q` 1 radiateur à gaz + fenetres avec masques lointains
71
- - `2387E0402213E` methode_application 'maison_individuelle' mais les portes sont saisie depuis une étude rt2012/rt2020
72
- - `2387E0576340J` 2 gen ch
73
- - `2387E0888781I` inertie lourde + paroi anciennes (tableaux de valeurs différents)
74
- - `2387E1742056P` 2 emetteur ch
75
- - `2387E2058698D` ventil hybride
76
- - `2387E2603968B` inertie lourde + parois ancienne (différentes periode de chauffe)
77
- - `2387E2899635W` 2 installation_ch
78
- - `2387E2923777K` pas d’ECS, pas de portes
79
- - `2387E3074987E` bouclage ECS
80
- - `2387E3092820B` pas de pancher_haut
81
- - `2387E3103131Q` Analysimmo 4.1.1 incohérence ventil calculée comme si presence_joint_menuiserie=1 alors qu’aucune menuiserie n’a de joints
82
- - `2387E3103505A` Analysimmo 4.1.1 incohérence pont thermique, PB considéré pont ITI+ITE ??
83
- - `2187E1039187C` toiture terrasse
84
- - `2387E0291550X` probleme ubat/uph comble amenagés
85
- - `2287E1724516Y` pour un meme generateur, position_volume_chauffe = 0 ou 1 selon si c'est le gen_ecs ou le gen_ch
86
- - `2387E3092820B`, `2287E1043883T` et plein d'autres dpe. Le diagnostiqueur override la valeur forfaitaire de pveil pour le mettre a 0 car il n'y a pas de veilleuse sur la chaudiere, or pour le moteur il n'y a aucun moyen de savoir si donnee_intermediaire.pveil a ete saisi ou s'il faut aller chercher une valeur dans le tableau.
107
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
108
+
109
+ ## Rapports
110
+
111
+ Lister ici les rapports de tests avec stats sur le CORPUS DPE.
112
+
113
+ ## Roadmap
114
+
115
+ - [x] Site Open 3CL
116
+ - [ ] Refacto technique
117
+ - [ ] Rapports de tests
118
+ - [ ] Certification ADEME
119
+ - [ ] Fonctionnalités
120
+ - [ ] DPE à l'immeuble
121
+ - [ ] Photovoltaïque
122
+
123
+ Voir la liste des [issues](https://github.com/Open3CL/engine/issues) pour avoir le détail complet des bugs et fonctionnalités en cours de réalisation.
124
+
125
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
87
126
 
88
127
  ## Contribution
89
128
 
90
129
  Nous accueillons les contributions avec plaisir ! Si vous souhaitez améliorer Open3CL, veuillez :
91
130
 
92
- 1. Forker le dépôt.
93
- 2. Créer une branche pour vos modifications.
94
- 3. Soumettre une pull request avec une description claire des changements apportés.
131
+ - Forker le dépôt.
132
+ - Créer une branche pour vos modifications.
133
+ - Soumettre une pull request avec une description claire des changements apportés.
134
+ - Consultez le fichier [CONTRIBUTING.md](CONTRIBUTING.md) pour plus de détails.
135
+
136
+ ### Meilleurs contributeurs
137
+
138
+ <a href="https://github.com/Open3CL/engine/graphs/contributors">
139
+ <img src="https://contrib.rocks/image?repo=Open3CL/engine" alt="contrib.rocks image" />
140
+ </a>
95
141
 
96
- Consultez le fichier `CONTRIBUTING.md` pour plus de détails.
142
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
97
143
 
98
- ## License
144
+ ## Licence
99
145
 
100
- Ce projet est sous licence [MIT](LICENSE).
146
+ Distribué sous la license `GPL-3.0 license`. Lire le fichier `LICENSE` pour plus d'informations.
147
+
148
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
101
149
 
102
150
  ## Contact
103
151
 
104
- Pour toute question ou suggestion, veuillez contacter l'équipe de développement
152
+ Pour plus d'informations merci de nous contacter à cette adresse : open3cl@redfroggy.fr
153
+
154
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
155
+
156
+ ## Remerciements
157
+
158
+ A compléter
159
+
160
+ <p align="right">(<a href="#readme-top">Retour sommaire</a>)</p>
161
+
162
+ [contributors-shield]: https://img.shields.io/github/contributors/Open3CL/engine.svg?style=for-the-badge
163
+ [contributors-url]: https://github.com/Open3CL/engine/graphs/contributors
164
+ [forks-shield]: https://img.shields.io/github/forks/Open3CL/engine.svg?style=for-the-badge
165
+ [forks-url]: https://github.com/Open3CL/network/members
166
+ [stars-shield]: https://img.shields.io/github/stars/Open3CL/engine.svg?style=for-the-badge
167
+ [stars-url]: https://github.com/Open3CL/stargazers
168
+ [issues-shield]: https://img.shields.io/github/issues/Open3CL/engine.svg?style=for-the-badge
169
+ [issues-url]: https://github.com/Open3CL/issues
170
+ [license-shield]: https://img.shields.io/github/license/Open3CL/engine.svg?style=for-the-badge
171
+ [license-url]: https://github.com/Open3CL/blob/master/LICENSE
172
+ [product-screenshot]: images/screenshot.png
173
+ [Javascript]: https://img.shields.io/badge/javascript-000000?style=for-the-badge&logo=javascript&logoColor=white
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open3cl/engine",
3
- "version": "1.0.15",
3
+ "version": "1.0.16",
4
4
  "description": "Open Source 3CL-DPE engine",
5
5
  "main": "index.js",
6
6
  "directories": {
@@ -14,6 +14,14 @@
14
14
  "scripts": {
15
15
  "test": "vitest run",
16
16
  "test:ci": "vitest run --coverage",
17
+ "test:corpus": "node test/corpus/run_corpus_checks.js",
18
+ "test:corpus:bench:5": "npm run test:corpus -- threshold=5 && npm run test:corpus -- compatibility threshold=5",
19
+ "test:corpus:bench:6": "npm run test:corpus -- threshold=6 && npm run test:corpus -- compatibility threshold=6",
20
+ "test:corpus:bench:7": "npm run test:corpus -- threshold=7 && npm run test:corpus -- compatibility threshold=7",
21
+ "test:corpus:bench:8": "npm run test:corpus -- threshold=8 && npm run test:corpus -- compatibility threshold=8",
22
+ "test:corpus:bench:9": "npm run test:corpus -- threshold=9 && npm run test:corpus -- compatibility threshold=9",
23
+ "test:corpus:bench:10": "npm run test:corpus -- threshold=10 && npm run test:corpus -- compatibility threshold=10",
24
+ "test:corpus:bench": "npm run test:corpus:bench:5 && npm run test:corpus:bench:6 && npm run test:corpus:bench:7 && npm run test:corpus:bench:8 && npm run test:corpus:bench:9 && npm run test:corpus:bench:10",
17
25
  "test:benchmark": "node inspect test/run_benchmark.js",
18
26
  "qa:lint": "eslint .",
19
27
  "qa:lint:fix": "npm run qa:lint -- --fix",
@@ -35,7 +43,7 @@
35
43
  "dependencies": {
36
44
  "dioma": "^0.4.6",
37
45
  "fast-xml-parser": "^4.5.0",
38
- "lodash": "^4.17.21",
46
+ "lodash-es": "^4.17.21",
39
47
  "winston": "3.13.0"
40
48
  },
41
49
  "devDependencies": {
@@ -55,6 +63,7 @@
55
63
  "eslint-plugin-import": "^2.29.1",
56
64
  "eslint-plugin-n": "^16.6.2",
57
65
  "eslint-plugin-promise": "^6.1.1",
66
+ "fast-csv": "^5.0.2",
58
67
  "husky": "^9.0.11",
59
68
  "jscpd": "^3.5.10",
60
69
  "prettier": "^3.2.5",