@open3cl/engine 1.3.5 → 1.3.6
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/14_generateur_ecs.js +10 -5
- package/9_besoin_ch.js +70 -17
- package/README.md +22 -26
- package/engine.js +3 -1
- package/package.json +1 -1
package/14_generateur_ecs.js
CHANGED
|
@@ -81,20 +81,25 @@ export function calc_Qdw_j(instal_ecs, becs_j) {
|
|
|
81
81
|
|
|
82
82
|
const type_installation = requestInput(de, du, 'type_installation');
|
|
83
83
|
|
|
84
|
-
const Qdw_ind_vc = calc_Qdw_ind_j(becs_j);
|
|
84
|
+
const Qdw_ind_vc = calc_Qdw_ind_j(instal_ecs, becs_j);
|
|
85
85
|
const Qdw_coll_vc = calc_Qdw_col_j(instal_ecs, becs_j, type_installation);
|
|
86
86
|
|
|
87
|
-
return
|
|
87
|
+
return Qdw_ind_vc + Qdw_coll_vc;
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
// 15.2.3
|
|
91
|
-
|
|
92
|
-
|
|
91
|
+
/**
|
|
92
|
+
* @param instal_ecs {InstallationEcsItem}
|
|
93
|
+
* @param becs_j {number}
|
|
94
|
+
*/
|
|
95
|
+
export function calc_Qdw_ind_j(instal_ecs, becs_j) {
|
|
96
|
+
const Rat_ecs = instal_ecs.generateur_ecs_collection.generateur_ecs.length > 1 ? 0.5 : 1;
|
|
97
|
+
return 0.1 * Rat_ecs * becs_j;
|
|
93
98
|
}
|
|
94
99
|
|
|
95
100
|
export function calc_Qdw_col_j(instal_ecs, becs_j, type_installation) {
|
|
96
101
|
if (type_installation.includes('installation collective')) {
|
|
97
|
-
return
|
|
102
|
+
return 0.112 * becs_j;
|
|
98
103
|
}
|
|
99
104
|
return 0;
|
|
100
105
|
}
|
package/9_besoin_ch.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import enums from './enums.js';
|
|
2
2
|
import tvs from './tv.js';
|
|
3
|
-
import { calc_Qdw_j } from './14_generateur_ecs.js';
|
|
4
3
|
import { calc_besoin_ecs_j } from './11_besoin_ecs.js';
|
|
5
4
|
import { calc_Qrec_gen_j } from './9_generateur_ch.js';
|
|
6
5
|
import { calc_ai_j, calc_as_j } from './6.1_apport_gratuit.js';
|
|
@@ -18,7 +17,9 @@ export default function calc_besoin_ch(
|
|
|
18
17
|
instal_ecs,
|
|
19
18
|
instal_ch,
|
|
20
19
|
bv,
|
|
21
|
-
ets
|
|
20
|
+
ets,
|
|
21
|
+
th,
|
|
22
|
+
nbLogements
|
|
22
23
|
) {
|
|
23
24
|
const ca = enums.classe_altitude[ca_id];
|
|
24
25
|
const zc = enums.zone_climatique[zc_id];
|
|
@@ -48,10 +49,8 @@ export default function calc_besoin_ch(
|
|
|
48
49
|
* 11.4 Plusieurs systèmes d’ECS (limité à 2 systèmes différents par logement)
|
|
49
50
|
* Les besoins en ECS pour chaque générateur sont / 2
|
|
50
51
|
*/
|
|
51
|
-
const prorataEcs = instal_ecs.length > 1 ?
|
|
52
|
+
const prorataEcs = instal_ecs.length > 1 ? 1 / instal_ecs.length : 1;
|
|
52
53
|
|
|
53
|
-
let Qdw_total_ecs = 0;
|
|
54
|
-
let Qdw_total_ecs_dep = 0;
|
|
55
54
|
let Qgw_total_ecs = 0;
|
|
56
55
|
instal_ecs.forEach((instal_ecs) => {
|
|
57
56
|
let Qgw;
|
|
@@ -78,15 +77,16 @@ export default function calc_besoin_ch(
|
|
|
78
77
|
Qgw_total_ecs += (0.48 * Qgw * (instal_ecs.donnee_entree.rdim || 1)) / 8760;
|
|
79
78
|
});
|
|
80
79
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
80
|
+
const { Qrec, Qrec_dep, sumNref19, sumNref21 } = calc_qrec(
|
|
81
|
+
instal_ecs,
|
|
82
|
+
nadeq,
|
|
83
|
+
prorataEcs,
|
|
84
|
+
ilpa,
|
|
85
|
+
ca,
|
|
86
|
+
zc,
|
|
87
|
+
th,
|
|
88
|
+
nbLogements
|
|
89
|
+
);
|
|
90
90
|
|
|
91
91
|
/**
|
|
92
92
|
* Création de la liste des générateurs de chauffage pour lesquels il y a une récupération d'énergie
|
|
@@ -144,8 +144,8 @@ export default function calc_besoin_ch(
|
|
|
144
144
|
pertes_generateur_ch_recup += gen_recup;
|
|
145
145
|
pertes_generateur_ch_recup_depensier += gen_recup_dep;
|
|
146
146
|
|
|
147
|
-
const pertes_distribution_ecs_recup_j =
|
|
148
|
-
const pertes_distribution_ecs_recup_j_dep =
|
|
147
|
+
const pertes_distribution_ecs_recup_j = (Qrec * nref19) / sumNref19;
|
|
148
|
+
const pertes_distribution_ecs_recup_j_dep = (Qrec_dep * nref21) / sumNref21;
|
|
149
149
|
pertes_distribution_ecs_recup += pertes_distribution_ecs_recup_j;
|
|
150
150
|
pertes_distribution_ecs_recup_depensier += pertes_distribution_ecs_recup_j_dep;
|
|
151
151
|
|
|
@@ -153,6 +153,7 @@ export default function calc_besoin_ch(
|
|
|
153
153
|
pertes_stockage_ecs_recup += pertes_stockage_ecs_recup_j;
|
|
154
154
|
const pertes_stockage_ecs_recup_j_dep = nref21 * Qgw_total_ecs;
|
|
155
155
|
|
|
156
|
+
// Normalement en wh
|
|
156
157
|
besoin_ch_mois[mois] = bvj * dh19j;
|
|
157
158
|
besoin_ch_mois_dep[mois] = bvj_dep * dh21j;
|
|
158
159
|
besoin_ch_mois[mois] -=
|
|
@@ -160,8 +161,9 @@ export default function calc_besoin_ch(
|
|
|
160
161
|
besoin_ch_mois_dep[mois] -=
|
|
161
162
|
pertes_distribution_ecs_recup_j_dep + pertes_stockage_ecs_recup_j_dep + gen_recup_dep;
|
|
162
163
|
besoin_ch_mois[mois] = Math.max(besoin_ch_mois[mois], 0);
|
|
163
|
-
besoin_ch += besoin_ch_mois[mois] / 1000;
|
|
164
164
|
|
|
165
|
+
// Besoin de chauffage final en kwh
|
|
166
|
+
besoin_ch += besoin_ch_mois[mois] / 1000;
|
|
165
167
|
besoin_ch_depensier += besoin_ch_mois_dep[mois] / 1000;
|
|
166
168
|
}
|
|
167
169
|
|
|
@@ -182,6 +184,57 @@ export default function calc_besoin_ch(
|
|
|
182
184
|
};
|
|
183
185
|
}
|
|
184
186
|
|
|
187
|
+
function calc_qrec(instal_ecs, nadeq, prorataEcs, ilpa, ca, zc, th, nbLogements) {
|
|
188
|
+
const Nref21 = tvs.nref21[ilpa];
|
|
189
|
+
const Nref19 = tvs.nref19[ilpa];
|
|
190
|
+
|
|
191
|
+
let sumNref19 = 0;
|
|
192
|
+
let sumNref21 = 0;
|
|
193
|
+
|
|
194
|
+
for (const mois of mois_liste) {
|
|
195
|
+
const nref19 = Nref19[ca][mois][zc];
|
|
196
|
+
const nref21 = Nref21[ca][mois][zc];
|
|
197
|
+
sumNref19 += nref19;
|
|
198
|
+
sumNref21 += nref21;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
let Qrec = 0;
|
|
202
|
+
let Qrec_dep = 0;
|
|
203
|
+
let total_becs_rdim = 0;
|
|
204
|
+
let total_becs_dep_rdim = 0;
|
|
205
|
+
instal_ecs.forEach((ecs) => {
|
|
206
|
+
let becs_int = 0;
|
|
207
|
+
let becs_dep_int = 0;
|
|
208
|
+
const isInstallationSimple = ecs.donnee_entree.enum_type_installation_id === '1';
|
|
209
|
+
const Tau = isInstallationSimple ? 0.1 : 0.212;
|
|
210
|
+
if (th === 'immeuble' && ecs.donnee_entree.rdim > 1) {
|
|
211
|
+
prorataEcs = ecs.donnee_entree.rdim / nbLogements;
|
|
212
|
+
}
|
|
213
|
+
for (const mois of mois_liste) {
|
|
214
|
+
// en kwh
|
|
215
|
+
becs_int += calc_besoin_ecs_j(ca, mois, zc, nadeq, false) * prorataEcs;
|
|
216
|
+
|
|
217
|
+
// en kwh
|
|
218
|
+
becs_dep_int += calc_besoin_ecs_j(ca, mois, zc, nadeq, true) * prorataEcs;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
if (th !== 'immeuble') {
|
|
222
|
+
Qrec += ((0.48 * sumNref19 * Tau * becs_int) / 8760) * 1000;
|
|
223
|
+
Qrec_dep += ((0.48 * sumNref21 * Tau * becs_dep_int) / 8760) * 1000;
|
|
224
|
+
} else {
|
|
225
|
+
total_becs_rdim += Tau * becs_int * 1000;
|
|
226
|
+
total_becs_dep_rdim += Tau * becs_dep_int * 1000;
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
|
|
230
|
+
if (th === 'immeuble') {
|
|
231
|
+
Qrec = ((0.48 * sumNref19) / 8760) * total_becs_rdim;
|
|
232
|
+
Qrec_dep = ((0.48 * sumNref21) / 8760) * total_becs_dep_rdim;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
return { Qrec, Qrec_dep, sumNref19, sumNref21 };
|
|
236
|
+
}
|
|
237
|
+
|
|
185
238
|
function calc_Fj(GV, asj, aij, dhj, inertie) {
|
|
186
239
|
if (dhj === 0) return 0;
|
|
187
240
|
|
package/README.md
CHANGED
|
@@ -167,32 +167,28 @@ deperdition_mur,
|
|
|
167
167
|
|
|
168
168
|
Résultats des tests de corpus avec le mode de compatibilité activé.
|
|
169
169
|
|
|
170
|
-
| Version librairie | corpus | Nb en dessous du taux d'erreur | Taux de réussite
|
|
171
|
-
| :------------------ | ------------------------------------- | ------------------------------ |
|
|
172
|
-
| <ins>**1.2.3**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4489**<ins> | <ins>**45%**<ins>
|
|
173
|
-
| 1.2.3 | dpe_immeuble_chauffage_individuel.csv | 3257 | 32%
|
|
174
|
-
| 1.2.3 | dpe_immeuble_chauffage_collectif.csv | 5279 | 53%
|
|
175
|
-
| 1.2.3 | dpe_immeuble_chauffage_mixte.csv | 2728 | 27%
|
|
176
|
-
| <ins>**1.2.8**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**489**<ins> | <ins>**45%**<ins>
|
|
177
|
-
| 1.2.8 | dpe_immeuble_chauffage_individuel.csv | 5275 (+2018) | 53% (+21%)
|
|
178
|
-
| 1.2.8 | dpe_immeuble_chauffage_collectif.csv | 5747 (+468) | 57% (+4%)
|
|
179
|
-
| 1.2.8 | dpe_immeuble_chauffage_mixte.csv | 3142 (+414) | 31% (+4%)
|
|
180
|
-
| <ins>**1.3.1**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4508 (+19)**<ins> | <ins>**45%**<ins>
|
|
181
|
-
| 1.3.1 | dpe_immeuble_chauffage_individuel.csv | 5459 (+184) | 55% (+2%)
|
|
182
|
-
| 1.3.1 | dpe_immeuble_chauffage_collectif.csv | 5848 (+101) | 58% (+1%)
|
|
183
|
-
| 1.3.1 | dpe_immeuble_chauffage_mixte.csv | 4018 (+876) | 40% (+9%)
|
|
184
|
-
| <ins>**1.3.2**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4519 (+11)**<ins> | <ins>**45%**<ins>
|
|
185
|
-
| 1.3.2 | dpe_immeuble_chauffage_individuel.csv | 5476 (+17) | 55%
|
|
186
|
-
| 1.3.2 | dpe_immeuble_chauffage_collectif.csv | 5869 (+21) | 58%
|
|
187
|
-
| 1.3.2 | dpe_immeuble_chauffage_mixte.csv | 4040 (+22) | 40%
|
|
188
|
-
| <ins>**1.3.
|
|
189
|
-
| 1.3.
|
|
190
|
-
| 1.3.
|
|
191
|
-
| 1.3.
|
|
192
|
-
| <ins>**1.3.4**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4600 (+79)**<ins> | <ins>**46% (+1%)**<ins> | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=corpus_dpe.csv) |
|
|
193
|
-
| 1.3.4 | dpe_immeuble_chauffage_individuel.csv | 5488 | 55% | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_individuel.csv) |
|
|
194
|
-
| 1.3.4 | dpe_immeuble_chauffage_collectif.csv | 5876 (+7) | 58% | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_collectif.csv) |
|
|
195
|
-
| 1.3.4 | dpe_immeuble_chauffage_mixte.csv | 4082 (-7) | 40% | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_mixte.csv) |
|
|
170
|
+
| Version librairie | corpus | Nb en dessous du taux d'erreur | Taux de réussite | Détail des valeurs |
|
|
171
|
+
| :------------------ | ------------------------------------- | ------------------------------ | ----------------- | ------------------------------------------------------------------------------------------------------------------- |
|
|
172
|
+
| <ins>**1.2.3**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4489**<ins> | <ins>**45%**<ins> | |
|
|
173
|
+
| 1.2.3 | dpe_immeuble_chauffage_individuel.csv | 3257 | 32% | |
|
|
174
|
+
| 1.2.3 | dpe_immeuble_chauffage_collectif.csv | 5279 | 53% | |
|
|
175
|
+
| 1.2.3 | dpe_immeuble_chauffage_mixte.csv | 2728 | 27% | |
|
|
176
|
+
| <ins>**1.2.8**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**489**<ins> | <ins>**45%**<ins> | |
|
|
177
|
+
| 1.2.8 | dpe_immeuble_chauffage_individuel.csv | 5275 (+2018) | 53% (+21%) | |
|
|
178
|
+
| 1.2.8 | dpe_immeuble_chauffage_collectif.csv | 5747 (+468) | 57% (+4%) | |
|
|
179
|
+
| 1.2.8 | dpe_immeuble_chauffage_mixte.csv | 3142 (+414) | 31% (+4%) | |
|
|
180
|
+
| <ins>**1.3.1**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4508 (+19)**<ins> | <ins>**45%**<ins> | |
|
|
181
|
+
| 1.3.1 | dpe_immeuble_chauffage_individuel.csv | 5459 (+184) | 55% (+2%) | |
|
|
182
|
+
| 1.3.1 | dpe_immeuble_chauffage_collectif.csv | 5848 (+101) | 58% (+1%) | |
|
|
183
|
+
| 1.3.1 | dpe_immeuble_chauffage_mixte.csv | 4018 (+876) | 40% (+9%) | |
|
|
184
|
+
| <ins>**1.3.2**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4519 (+11)**<ins> | <ins>**45%**<ins> | |
|
|
185
|
+
| 1.3.2 | dpe_immeuble_chauffage_individuel.csv | 5476 (+17) | 55% | |
|
|
186
|
+
| 1.3.2 | dpe_immeuble_chauffage_collectif.csv | 5869 (+21) | 58% | |
|
|
187
|
+
| 1.3.2 | dpe_immeuble_chauffage_mixte.csv | 4040 (+22) | 40% | |
|
|
188
|
+
| <ins>**1.3.5**<ins> | <ins>**corpus_dpe.csv**<ins> | <ins>**4522 (+3)**<ins> | <ins>**45%**<ins> | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=corpus_dpe.csv) |
|
|
189
|
+
| 1.3.5 | dpe_immeuble_chauffage_individuel.csv | 5488 (+12) | 55% | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_individuel.csv) |
|
|
190
|
+
| 1.3.5 | dpe_immeuble_chauffage_collectif.csv | 5869 | 58% | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_collectif.csv) |
|
|
191
|
+
| 1.3.5 | dpe_immeuble_chauffage_mixte.csv | 4082 (+42) | 40% | [Voir le détail](https://open3cl.github.io/engine/reports/corpus?corpus_file=dpe_immeuble_chauffage_mixte.csv) |
|
|
196
192
|
|
|
197
193
|
## Roadmap
|
|
198
194
|
|
package/engine.js
CHANGED