SPB Git

Harmonisation lot B (ch. 17-32) : citations par clé, renvois \cref, cohérence ch. 18/21/30/32

Simon-Pierre Boucher committed (Oct 31, 2026) parent d2b579d Browse files

11 changed files +578 −469

renamed manuscript/_wrap_ch35.tex → manuscript/_wrap_app-scripts-classeurs.tex +3 −4
@@ -3,10 +3,9 @@
3 3 \newif\ifLogoAutorise\LogoAutorisefalse\def\PALETTE{uqo}
4 4 \usepackage{traite-qc}
5 5 \input{../manuscript/frontmatter/metadata.tex}
6 −\input{/Users/simon-pierreboucher/Desktop/UQO/Traite-Evaluation-QC/build/ch35/_labels.tex}
6 +\input{/Users/simon-pierreboucher/Desktop/UQO/Traite-Evaluation-QC/build/app-scripts-classeurs/_labels.tex}
7 7 \begin{document}
8 −\setcounter{chapter}{34}
9 −\input{chapters/ch35.tex}
10 −\appendix\chapter{Solutions du chapitre}\input{../solutions/ch35.tex}
8 +\setcounter{chapter}{0}
9 +\input{appendices/scripts-classeurs.tex}
11 10 \printbibliography
12 11 \end{document}
deleted manuscript/_wrap_ch37.tex +0 −12
@@ -1,12 +0,0 @@
1 −\providecommand{\BUILDVARIANT}{uqo}\providecommand{\BUILDMEDIA}{numerique}
2 −\documentclass[10pt,twoside,openright]{book}
3 −\newif\ifLogoAutorise\LogoAutorisefalse\def\PALETTE{uqo}
4 −\usepackage{traite-qc}
5 −\input{../manuscript/frontmatter/metadata.tex}
6 −\input{/Users/simon-pierreboucher/Desktop/UQO/Traite-Evaluation-QC/build/ch37/_labels.tex}
7 −\begin{document}
8 −\setcounter{chapter}{36}
9 −\input{chapters/ch37.tex}
10 −\appendix\chapter{Solutions du chapitre}\input{../solutions/ch37.tex}
11 −\printbibliography
12 −\end{document}
renamed manuscript/_wrap_ch34.tex → manuscript/_wrap_ch47.tex +4 −4
@@ -3,10 +3,10 @@
3 3 \newif\ifLogoAutorise\LogoAutorisefalse\def\PALETTE{uqo}
4 4 \usepackage{traite-qc}
5 5 \input{../manuscript/frontmatter/metadata.tex}
6 −\input{/Users/simon-pierreboucher/Desktop/UQO/Traite-Evaluation-QC/build/ch34/_labels.tex}
6 +\input{/Users/simon-pierreboucher/Desktop/UQO/Traite-Evaluation-QC/build/ch47/_labels.tex}
7 7 \begin{document}
8 −\setcounter{chapter}{33}
9 −\input{chapters/ch34.tex}
10 −\appendix\chapter{Solutions du chapitre}\input{../solutions/ch34.tex}
8 +\setcounter{chapter}{46}
9 +\input{chapters/ch47.tex}
10 +\appendix\chapter{Solutions du chapitre}\input{../solutions/ch47.tex}
11 11 \printbibliography
12 12 \end{document}
modified manuscript/appendices/_inventaire.tex +225 −221
@@ -4,235 +4,239 @@
4 4 \toprule Type & Fichier & Rôle \\ \midrule \endfirsthead
5 5 \toprule Type & Fichier & Rôle \\ \midrule \endhead
6 6 \bottomrule \endfoot
7 −module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas1.py} & Cas 1 — maison unifamiliale à Gatineau (données synthétiques) : calculs PARTAGÉS par les chapitres 9, 14, 16-2 \\
8 −module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas2.py} & Cas 2 — triplex à Québec, Limoilou (données synthétiques) : calculs PARTAGÉS par les chapitres 26, 27, 32 et 4 \\
9 −module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas3.py} & Cas 3 — immeuble de 12 logements à Montréal (données synthétiques) : calculs PARTAGÉS par les chapitres 26-31, \\
10 −module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas4.py} & Cas 4 — portefeuille multirésidentiel interrégional (données synthétiques) : calculs PARTAGÉS par les chapitre \\
7 +module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas1.py} & Cas 1 — maison unifamiliale à Gatineau (données synthétiques) : calculs PARTAGÉS par les chapitres 9, 14… \\
8 +module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas2.py} & Cas 2 — triplex à Québec, Limoilou (données synthétiques) : calculs PARTAGÉS par les chapitres 26, 27, 32 et… \\
9 +module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas3.py} & Cas 3 — immeuble de 12 logements à Montréal (données synthétiques) : calculs PARTAGÉS par les chapitres… \\
10 +module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas4.py} & Cas 4 — portefeuille multirésidentiel interrégional (données synthétiques) : calculs PARTAGÉS par les… \\
11 11 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}comparables.py} & Méthode de comparaison : grille d'ajustements, ajustements séquentiels, ventes appariées, réconciliation. \\
12 12 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cout.py} & Méthode du coût : coût neuf, dépréciation (physique, fonctionnelle, externe), extraction de marché. \\
13 13 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}finance.py} & Mathématiques financières de l'évaluation immobilière (conventions déclarées). \\
14 14 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}geo.py} & Outils géospatiaux génériques du traité (chapitre 38 ; réutilisables aux chapitres 43 et 48). \\
15 15 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}hedonique.py} & Outils économétriques : hédonique semi-log, indices (dummies temporelles, ventes répétées BMN / Case–Shiller), \\
16 −module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}panel.py} & Données de panel et identification causale (chapitre 36) : transformation within, erreurs-types en grappes (CR \\
16 +module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}panel.py} & Données de panel et identification causale (chapitre 36) : transformation within, erreurs-types en grappes… \\
17 17 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}style.py} & Style graphique du traité (Matplotlib). Palette validée : styles/palette.json. \\
18 18 module & \texttt{analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}synth.py} & Génération des quatre dossiers de cas SYNTHÉTIQUES du traité. \\
19 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch01\_valeur\_prix.py} & Chapitre 1 — Théorie de la valeur et prix immobiliers : tous les chiffres cités dans le texte (DONNÉES SYNTHÉT \\
20 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch02\_droits.py} & Chapitre 2 — Droits immobiliers et bases de valeur : calculs de l'exemple intégral sur le cas 3 (12 logements, \\
21 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch03\_cycles.py} & Chapitre 3 — Offre, demande et cycles : calculs de l'exemple intégral et des tableaux. \\
22 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch04\_marches.py} & Chapitre 4 — Marchés résidentiels québécois : lecture des DONNÉES RÉELLES de data/raw et calculs cités dans le \\
23 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch05\_rente.py} & Chapitre 5 — Économie urbaine et rente foncière : calculs de l'exemple intégral et des encadrés. \\
24 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch06\_demembrements.py} & Chapitre 6 — Code civil et droit immobilier : effets des modalités et démembrements du droit de propriété sur \\
25 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch07\_servitudes\_copro.py} & Chapitre 7 — Cadastre, titres, servitudes et copropriété : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine 202 \\
26 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch08\_zonage.py} & Chapitre 8 — Zonage et urbanisme : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral. \\
27 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch09\_ratios.py} & Chapitre 9 — Évaluation foncière municipale et contestation (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031). \\
28 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_controle\_rapport.py} & Chapitre 10 — contrôle automatique de la présence des douze éléments du contenu minimal d'un rapport écrit \\
29 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_matrice\_normes.py} & Chapitre 10 — statistiques descriptives de la matrice des dispositions normatives du domaine C \\
30 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch11\_inspection.py} & Chapitre 11 — inspection synthétique du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) : fiche d'état par \\
31 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch12\_mesurage.py} & Chapitre 12 — Mesurage, superficies et plans : calculs du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES). \\
32 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch13\_sources.py} & Chapitre 13 — Transactions, inscriptions, loyers et coûts : lecture et description des fichiers RÉELS de data/ \\
33 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch14\_nettoyage.py} & Chapitre 14 — Nettoyage, géocodage et qualité des données (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES). \\
34 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch15\_segmentation.py} & Chapitre 15 — Études de marché et segmentation. Calculs de l'exemple intégral et des tableaux du chapitre. \\
35 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch16\_selection.py} & Chapitre 16 — sélection des comparables pour le sujet du cas 1 (Gatineau, données synthétiques). \\
36 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch17\_ajustements.py} & Chapitre 17 — ajustements qualitatifs et quantitatifs des cinq comparables du cas 1 (Gatineau, données synthét \\
37 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch18\_hedonique.py} & Chapitre 18 — Modèles hédoniques : exemple intégral sur les 600 ventes du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUE \\
38 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch19\_spatial.py} & Chapitre 19 — modèles spatiaux et temporels sur le cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031). \\
39 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch20\_reconciliation.py} & Chapitre 20 — réconciliation et incertitude : combinaison des indications du cas 1 (Gatineau, données synthéti \\
40 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch21\_cout\_neuf.py} & Chapitre 21 — coût neuf (remplacement) du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) et indexation IPCB ( \\
41 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch22\_metre.py} & Chapitre 22 — métré et quantités du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES). \\
42 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch23\_structure\_couts.py} & Chapitre 23 — coûts directs et indirects : structure complète du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTI \\
43 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch24\_depreciation.py} & Chapitre 24 — dépréciation et désuétudes du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES). \\
44 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch25\_terrain.py} & Chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
45 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch26\_etat\_locatif.py} & Chapitre 26 — Baux et loyers : calculs de l'exemple intégral (cas 3, 12 logements à Montréal ; cas 2, triplex \\
46 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch27\_revenus.py} & Chapitre 27 — Revenus potentiels, vacance et pertes : calculs du cas 3 (12 logements, Rosemont) et du cas 2 (t \\
47 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch28\_depenses.py} & Chapitre 28 — Dépenses, réserves, CAPEX et RNE : calculs du cas 3 (12 logements, Rosemont) et du cas 2 (triple \\
48 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch29\_capitalisation.py} & Chapitre 29 — Capitalisation directe : calculs du cas 3 (12 logements, Rosemont ; DONNÉES SYNTHÉTIQUES). \\
49 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch30\_dcf.py} & Chapitre 30 — Flux actualisés et valeur terminale : exemple intégral du cas 3 (12 logements, Montréal, \\
50 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch31\_financement.py} & Chapitre 31 — Financement, levier, RCD et RPV : calculs du chapitre (cas 3, 12 logements, Montréal, \\
51 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch32\_plex.py} & Chapitre 32 — Duplex à quintuplex : calculs de l'exemple intégral (cas 2, triplex de Limoilou, données SYNTHÉT \\
52 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch33\_six\_logements.py} & Chapitre 33 — Immeubles de six logements et plus : tous les chiffres cités dans manuscript/chapters/ch33.tex \\
53 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch34\_tal.py} & Chapitre 34 — TAL, encadrement locatif et scénarios : calculs du chapitre (cas 3, 12 logements, Montréal, \\
54 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch35\_indices.py} & Chapitre 35 — Indices immobiliers et ventes répétées : exemple intégral sur le cas 1 (Gatineau, DONNÉES SYNTHÉ \\
55 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch36\_panel.py} & Chapitre 36 — Données de panel et identification causale : choc simulé sur les séries de RNE du cas 4 \\
56 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch37\_ml.py} & Chapitre 37 — Apprentissage automatique et explicabilité : exemple intégral sur les 600 ventes du cas 1 \\
57 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch38\_sig.py} & Chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES SYNTHÉTIQUES, graine 2 \\
58 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch39\_bayes.py} & Chapitre 39 — Modèles bayésiens et intervalles : exemple intégral sur les 600 ventes du cas 1 (Gatineau, DONNÉ \\
59 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch40\_montecarlo.py} & Chapitre 40 — Monte-Carlo et stress tests (DONNÉES SYNTHÉTIQUES : cas 3, 12 logements à Montréal ; cas 4, port \\
60 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch41\_phmu.py} & Chapitre 41 — Plus haute et meilleure utilisation, terrains et développement : calculs de l'exemple intégral. \\
61 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch42\_copro.py} & Chapitre 42 — Copropriétés et conversions : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
62 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch43\_risques.py} & Chapitre 43 — Risques environnementaux et sinistres : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral. \\
63 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch44\_renovation.py} & Chapitre 44 — rénovation et efficacité énergétique : analyse coût-bénéfice de deux mesures sur le sujet du cas \\
64 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch45\_dossier.py} & Chapitre 45 — Cas 1 : maison unifamiliale à Gatineau (DONNÉES SYNTHÉTIQUES, propriété fictive) — dossier compl \\
65 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch46\_dossier.py} & Chapitre 46 — Cas 2 : triplex à Québec (Limoilou), dossier complet (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
66 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch47\_dossier.py} & Chapitre 47 — Cas 3 : immeuble de 12 logements à Montréal (DONNÉES SYNTHÉTIQUES, immeuble fictif). \\
67 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch48\_portefeuille.py} & Chapitre 48 — Cas 4 : portefeuille multirésidentiel interrégional (DONNÉES SYNTHÉTIQUES, 48 immeubles fictifs, \\
68 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}generate\_all.py} & Régénère tous les jeux synthétiques (graine fixée). Usage : python3 -m analysis.python.cases.generate\_all (de \\
69 −calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}make\_spreadsheets.py} & Classeurs Excel du traité (openpyxl, formules vivantes) : spreadsheets/ \\
70 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch01\_figures.py} & Figures du chapitre 1 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031 ; simulations étiquetées). \\
71 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_decomposition.py} & Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) revenu net d'exploitation projeté avec les baux en place (dro \\
72 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_ecart\_logements.py} & Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) ratio loyer contractuel / loyer de marché selon l'ancienneté \\
73 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_cout\_usage.py} & Figure ch03 — Coût d'usage du logement au Québec, 2001-2026, données RÉELLES (Banque du Canada, Valet : V80691 \\
74 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_cycle.py} & Figures ch03 — Simulation d'un cycle stock-flux (SYNTHÉTIQUE, analysis/python/cases/ch03\_cycles.py, paramètre \\
75 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_mises\_chantier.py} & Figure ch03 — Mises en chantier au Québec, données RÉELLES : Statistique Canada (SCHL), tableau 34-10-0135-01, \\
76 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_quadrants.py} & Figure ch03 — Modèle des quatre quadrants (DiPasquale–Wheaton) tracé à partir des paramètres pédagogiques du m \\
77 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_carte.py} & Figure ch04 — carte schématique des six RMR du Québec : position des centres (coordonnées de la Base de donnée \\
78 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_ipln.py} & Figure ch04 — Indice des prix des logements neufs (IPLN), total maison et terrain, déc. 2016 = 100, janvier 20 \\
79 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_mutations.py} & Figure ch04 — taux effectif des droits sur les mutations immobilières (droit / base d'imposition) selon la bas \\
80 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_parc.py} & Figure ch04 — structure du parc de logements : ménages privés selon le type de construction, Québec et Canada \\
81 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_schl.py} & Figure ch04 — marché locatif par RMR : taux d'inoccupation (octobre 2024 et 2025) et loyer moyen des logements \\
82 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_taux.py} & Figure ch04 — taux d'intérêt 2000-2026 : taux hypothécaire conventionnel 5 ans affiché (V80691335, hebdomadair \\
83 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_capitalisation.py} & Figure ch05 — sensibilité de la capitalisation d'un écart de taxe foncière : perte de valeur (en \% de la vale \\
84 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_cas1\_distance.py} & Figure ch05 — prix par mètre carré habitable et distance au centre, cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, gra \\
85 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_gradient.py} & Figure ch05 — gradients du modèle monocentrique simulé (PARAMÈTRES PÉDAGOGIQUES DÉCLARÉS dans ch05\_rente.PARA \\
86 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_rmr.py} & Figure ch05 — valeur par logement par RMR du portefeuille du cas 4 (DONNÉES SYNTHÉTIQUES, graine 20261031) et \\
87 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_surface.py} & Figure ch05 — surface de rente bicentrique simulée (courbes de niveau) : enveloppe de deux surfaces d'enchère \\
88 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_emphyteose.py} & Figure ch06 — emphytéose sur un immeuble locatif dont le RNE est celui du cas 3 (DONNÉES SYNTHÉTIQUES, hypothè \\
89 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_usufruit.py} & Figure ch06 — usufruit viager sur la maison du cas 1 (DONNÉES SYNTHÉTIQUES, table de mortalité synthétique) : \\
90 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_charges.py} & Figure ch07 — répartition des charges communes annuelles entre les huit fractions (DONNÉES SYNTHÉTIQUES). \\
91 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_fonds.py} & Figure ch07 — trajectoire du fonds de prévoyance sur 25 ans selon trois cotisations (DONNÉES SYNTHÉTIQUES). \\
92 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_paires.py} & Figure ch07 — ventes appariées : prix sans et avec servitude de passage pour 12 paires (DONNÉES SYNTHÉTIQUES, \\
93 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_sensibilite.py} & Figure ch07 — sensibilité de la cotisation de seuil A* à l'inflation des coûts et au rendement du fonds (DONNÉ \\
94 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_carte\_zones.py} & Figure ch08 — carte synthétique des zones de « Val-Fictif » (DONNÉES SYNTHÉTIQUES) : 400 lots, cinq zones, \\
95 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_option\_sensibilite.py} & Figure ch08 — sensibilité des effets de valeur du zonage (DONNÉES SYNTHÉTIQUES / hypothèses déclarées) : \\
96 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_rezonage\_paires.py} & Figure ch08 — effet d'un rezonage mesuré par ventes appariées et par doubles différences (DONNÉES SYNTHÉTIQUES \\
97 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch09\_ratios.py} & Figures du chapitre 9 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031) : \\
98 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch10\_figures.py} & Chapitre 10 — figures Matplotlib : \\
99 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_fiche\_etat.py} & Figures ch11 — (1) fiche d'état du sujet du cas 1 : fraction de vie utile consommée a\_eff/L par composante, c \\
100 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_frise\_pathologies.py} & Figure ch11 — frise INDICATIVE des pathologies et matériaux à risque selon la période de construction (Québec) \\
101 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_matrice\_age\_effectif.py} & Figure ch11 — matrice état × âge chronologique → âge effectif (convention déclarée de l'ouvrage, chapitre 11). \\
102 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch12\_figures.py} & Figures du chapitre 12 (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) : \\
103 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_biais\_datation.py} & Figure ch13 — biais relatif de l'ajustement de conditions du marché lorsqu'une vente est datée à l'acte notari \\
104 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_indices.py} & Figure ch13 — trois indices souvent confondus, données RÉELLES de data/raw, rebasés T1 2017 = 100 : \\
105 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_rfu.py} & Figure ch13 — composition de l'évaluation imposable uniformisée 2026 (MAMH, richesse foncière uniformisée, CC \\
106 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_schl.py} & Figure ch13 — SCHL, Enquête sur les logements locatifs d'octobre 2025 (données RÉELLES, fichier rmr-quebec-202 \\
107 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch14\_figures.py} & Chapitre 14 — figures (données SYNTHÉTIQUES, graine 20261031). Idempotent. \\
108 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch15\_figures.py} & Figures du chapitre 15 — Études de marché et segmentation. Produit dans assets/figures/ch15/ : \\
109 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch17\_figures.py} & Chapitre 17 — figures : cascade d'ajustements (G0404), dispersion des paires, prix bruts vs ajustés, tornade d \\
110 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch18\_figures.py} & Figures du chapitre 18 — Modèles hédoniques (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031). \\
111 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch19\_figures.py} & Figures du chapitre 19 — modèles spatiaux et temporels (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031 \\
112 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch20\_figures.py} & Chapitre 20 — figures : densités bootstrap et énumération exhaustive ; résidus des candidats et élargissement \\
113 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_decomposition.py} & Figure ch21 — décomposition du coût neuf du sujet du cas 1 par corps de métier (DONNÉES SYNTHÉTIQUES, graine 2 \\
114 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_ipcb.py} & Figure ch21 — IPCB Montréal (Statistique Canada, tableau 18-10-0289-01, base 2023 = 100), données RÉELLES lues \\
115 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_sensibilite.py} & Figure ch21 — sensibilité du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES) : (a) grille taux d'indirects \\
116 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_ecarts.py} & Figure ch22 — métré de contrôle du sujet du cas 1 : écart relatif entre la quantité recalculée depuis le plan \\
117 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_repartition.py} & Figure ch22 — répartition du devis du sujet du cas 1 par corps de métier et par type d'unité de mesure \\
118 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_ipcb\_divisions.py} & Figure ch23 — IPCB Montréal, maison individuelle, par division de travaux (Statistique Canada 18-10-0289-01), \\
119 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_ipcb\_types.py} & Figure ch23 — IPCB (Statistique Canada 18-10-0289-01, 2023 = 100), données RÉELLES lues dans data/raw : \\
120 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_sensibilite.py} & Figure ch23 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1 ; taux documenté Banque du Canada V80691335) : \\
121 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_structure.py} & Figure ch23 — cascade de formation du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine 20261031) : \\
122 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_composantes.py} & Figure ch24 — composantes de courte durée du sujet du cas 1 : coût neuf et dépréciation ventilée par composant \\
123 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_courbes.py} & Figure ch24 — courbes de dépréciation du bâtiment en fonction de l'âge (DONNÉES SYNTHÉTIQUES, cas 1, graine 20 \\
124 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_decomposition.py} & Figure ch24 — décomposition de la valeur par le coût du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine 20261031) \\
125 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_sensibilite.py} & Figure ch24 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) : (a) taux de dépréciation âge-vie mo \\
126 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch25\_figures.py} & Figures du chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
127 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch26\_figures.py} & Chapitre 26 — figures (4) : loyer contractuel vs loyer de marché par logement (cas 3), distribution de l'ancie \\
128 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch27\_figures.py} & Chapitre 27 — figures (4) : \\
129 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch28\_figures.py} & Chapitre 28 — figures (5) : cascade RBP → RNE (cas 3) ; structure des dépenses en \% du RBE (cas 3 vs cas 2) ; \\
130 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch29\_figures.py} & Chapitre 29 — figures (5) : taux extraits (histogramme), taux vs état/taille (nuage), surface V(RNE, R) (carte \\
131 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_flux.py} & Ch. 30, figure « flux » : RNE, CAPEX et flux net avant dette (barres) du cas 3 (DONNÉES SYNTHÉTIQUES), puis va \\
132 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_gdc.py} & Ch. 30, figure « gdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31) : rendements \\
133 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_loyers.py} & Ch. 30, figure « loyers » : trajectoire du revenu brut potentiel contractuel (indexé au taux TAL + relocation \\
134 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_surface.py} & Ch. 30, figure « surface » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) selon le taux d'actualisation r (ligne \\
135 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_tornade.py} & Ch. 30, figure « tornade » : variation de la valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour un choc bas/haut \\
136 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_levier.py} & Ch. 31, figure « levier » (DONNÉES SYNTHÉTIQUES, cas 3) : TRI des fonds propres sur dix ans et rendement coura \\
137 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_service\_dette.py} & Ch. 31, figure « service-dette » (DONNÉES SYNTHÉTIQUES, cas 3) : service de la dette annuel du prêt de 1 475 9 \\
138 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_solde.py} & Ch. 31, figure « solde » (DONNÉES SYNTHÉTIQUES, cas 3) : trajectoire du solde du prêt de 1 475 959 \$ à 4,12 \ \\
139 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_taux\_bdc.py} & Ch. 31, figure « taux-bdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31) : taux \\
140 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch32\_figures.py} & Figures du chapitre 32 — Duplex à quintuplex (données SYNTHÉTIQUES du cas 2, sauf la figure des médianes APCIQ \\
141 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch33\_figures.py} & Chapitre 33 — figures (4) : (1) SCHL, île de Montréal, loyers et inoccupation par taille d'immeuble et par ann \\
142 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_calcul\_tal.py} & Ch. 34, figure « exemple de calcul TAL » : composantes de l'augmentation mensuelle du logement 103 du cas 3 (D \\
143 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_ipc\_base.py} & Ch. 34, figure « IPC et pourcentage de base » (DONNÉES RÉELLES : Statistique Canada, tableau 18-10-0004-01, IP \\
144 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_rotation.py} & Ch. 34, figure « rotation espérée » : (gauche) rapport espéré loyer contractuel / loyer de marché d'un logemen \\
145 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_trajectoires.py} & Ch. 34, figure « trajectoires RBP » : revenu brut potentiel contractuel du cas 3 (DONNÉES SYNTHÉTIQUES) selon \\
146 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_valeur\_scenarios.py} & Ch. 34, figure « valeur par scénario » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour la grille rotation (5 \\
147 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch35\_figures.py} & Figures du chapitre 35 — Indices immobiliers et ventes répétées. \\
148 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch36\_figures.py} & Figures du chapitre 36 — données de panel et identification causale (cas 4, DONNÉES SYNTHÉTIQUES, graine 20261 \\
149 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch37\_figures.py} & Figures du chapitre 37 — Apprentissage automatique et explicabilité (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, gr \\
150 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch38\_figures.py} & Figures du chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES SYNTHÉTIQUE \\
151 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch39\_figures.py} & Figures du chapitre 39 — Modèles bayésiens et intervalles (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261 \\
152 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch40\_figures.py} & Chapitre 40 — figures (DONNÉES SYNTHÉTIQUES : cas 3 et cas 4, graine 20261031). \\
153 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch41\_figures.py} & Figures du chapitre 41 (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF ; hypothèses déclarées dans ch41\_phmu.p \\
154 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_bloc\_piece.py} & Figure ch42 — valeur de conversion (somme des fractions nette des coûts, des frais, du portage et des délais) \\
155 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_cotisation\_speciale.py} & Figure ch42 — charges annuelles normalisées des huit fractions (ch. 7) et part de chacune dans une cotisation \\
156 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_grille.py} & Figure ch42 — grille de comparaison de la fraction F4 : prix observé, prix ajusté et décomposition des ajustem \\
157 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_medianes.py} & Figure ch42 — prix médians Centris des copropriétés et des unifamiliales par territoire, T3 2026 (DONNÉES RÉEL \\
158 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_carte\_cas4.py} & Figure ch43 — carte schématique des 48 immeubles du cas 4 (DONNÉES SYNTHÉTIQUES, coordonnées fictives autour d \\
159 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_carte\_riverain.py} & Figure ch43 — municipalité fictive de Rivière-Fictive (DONNÉES SYNTHÉTIQUES) : 625 lots, classes d'exposition \\
160 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_did\_cas4.py} & Figure ch43 — doubles différences sur les séries de RNE du cas 4 avec choc d'inondation injecté en 2019 (DONNÉ \\
161 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_effets\_methodes.py} & Figure ch43 — décote d'une zone inondable mesurée par quatre méthodes sur les ventes de Rivière-Fictive (DONNÉ \\
162 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_placebos.py} & Figure ch43 — inférence de randomisation exacte pour le DiD du cas 4 (DONNÉES SYNTHÉTIQUES) : distribution des \\
163 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_capitalisation.py} & Figure ch44 — (a) quatre lectures de ce que la thermopompe « vaut » pour le sujet du cas 1 : coût installé, co \\
164 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_flux.py} & Figure ch44 — flux annuels des deux mesures énergétiques du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, hypothèses d \\
165 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_heatmap\_van.py} & Figure ch44 — VAN des deux mesures selon le taux d'actualisation et la croissance du prix de l'électricité \\
166 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_prime\_verte.py} & Figure ch44 — la « prime verte » dans la littérature : fourchettes publiées par étude (valeurs vérifiées, voir \\
167 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch45\_figures.py} & Chapitre 45 — figures du dossier (cas 1, DONNÉES SYNTHÉTIQUES) : carte des comparables, cascade des ajustement \\
168 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch46\_figures.py} & Chapitre 46 — figures du dossier « triplex à Québec » (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
169 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch47\_dossier\_figures.py} & Chapitre 47 — figures du dossier « 12 logements à Montréal » (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
170 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch48\_portefeuille\_figures.py} & Chapitre 48 — figures du dossier « portefeuille multirésidentiel interrégional » (DONNÉES SYNTHÉTIQUES, graine \\
171 −figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}run\_all.py} & Exécute tous les scripts de figures (analysis/python/figures/chNN\_*.py) et les scripts R (analysis/r/chNN\_*. \\
19 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch01\_\allowbreak{}valeur\_\allowbreak{}prix.py} & Chapitre 1 — Théorie de la valeur et prix immobiliers : tous les chiffres cités dans le texte (DONNÉES… \\
20 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch02\_\allowbreak{}droits.py} & Chapitre 2 — Droits immobiliers et bases de valeur : calculs de l'exemple intégral sur le cas 3 (12… \\
21 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch03\_\allowbreak{}cycles.py} & Chapitre 3 — Offre, demande et cycles : calculs de l'exemple intégral et des tableaux. \\
22 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch04\_\allowbreak{}marches.py} & Chapitre 4 — Marchés résidentiels québécois : lecture des DONNÉES RÉELLES de data/raw et calculs cités dans… \\
23 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch05\_\allowbreak{}rente.py} & Chapitre 5 — Économie urbaine et rente foncière : calculs de l'exemple intégral et des encadrés. \\
24 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch06\_\allowbreak{}demembrements.py} & Chapitre 6 — Code civil et droit immobilier : effets des modalités et démembrements du droit de propriété sur… \\
25 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch07\_\allowbreak{}servitudes\_\allowbreak{}copro.py} & Chapitre 7 — Cadastre, titres, servitudes et copropriété : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine… \\
26 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch08\_\allowbreak{}zonage.py} & Chapitre 8 — Zonage et urbanisme : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral. \\
27 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch09\_\allowbreak{}ratios.py} & Chapitre 9 — Évaluation foncière municipale et contestation (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031). \\
28 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_\allowbreak{}controle\_\allowbreak{}rapport.py} & Chapitre 10 — contrôle automatique de la présence des douze éléments du contenu minimal d'un rapport écrit \\
29 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_\allowbreak{}matrice\_\allowbreak{}normes.py} & Chapitre 10 — statistiques descriptives de la matrice des dispositions normatives du domaine C \\
30 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch11\_\allowbreak{}inspection.py} & Chapitre 11 — inspection synthétique du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) : fiche d'état par \\
31 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch12\_\allowbreak{}mesurage.py} & Chapitre 12 — Mesurage, superficies et plans : calculs du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES). \\
32 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch13\_\allowbreak{}sources.py} & Chapitre 13 — Transactions, inscriptions, loyers et coûts : lecture et description des fichiers RÉELS de… \\
33 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch14\_\allowbreak{}nettoyage.py} & Chapitre 14 — Nettoyage, géocodage et qualité des données (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES). \\
34 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch15\_\allowbreak{}segmentation.py} & Chapitre 15 — Études de marché et segmentation. Calculs de l'exemple intégral et des tableaux du chapitre. \\
35 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch16\_\allowbreak{}selection.py} & Chapitre 16 — sélection des comparables pour le sujet du cas 1 (Gatineau, données synthétiques). \\
36 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch17\_\allowbreak{}ajustements.py} & Chapitre 17 — ajustements qualitatifs et quantitatifs des cinq comparables du cas 1 (Gatineau, données… \\
37 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch18\_\allowbreak{}hedonique.py} & Chapitre 18 — Modèles hédoniques : exemple intégral sur les 600 ventes du cas 1 (Gatineau, DONNÉES… \\
38 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch19\_\allowbreak{}spatial.py} & Chapitre 19 — modèles spatiaux et temporels sur le cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031). \\
39 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch20\_\allowbreak{}reconciliation.py} & Chapitre 20 — réconciliation et incertitude : combinaison des indications du cas 1 (Gatineau, données… \\
40 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch21\_\allowbreak{}cout\_\allowbreak{}neuf.py} & Chapitre 21 — coût neuf (remplacement) du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) et indexation IPCB… \\
41 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch22\_\allowbreak{}metre.py} & Chapitre 22 — métré et quantités du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES). \\
42 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch23\_\allowbreak{}structure\_\allowbreak{}couts.py} & Chapitre 23 — coûts directs et indirects : structure complète du coût neuf du sujet du cas 1 (DONNÉES… \\
43 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch24\_\allowbreak{}depreciation.py} & Chapitre 24 — dépréciation et désuétudes du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES). \\
44 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch25\_\allowbreak{}terrain.py} & Chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
45 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch26\_\allowbreak{}etat\_\allowbreak{}locatif.py} & Chapitre 26 — Baux et loyers : calculs de l'exemple intégral (cas 3, 12 logements à Montréal ; cas 2, triplex… \\
46 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch27\_\allowbreak{}revenus.py} & Chapitre 27 — Revenus potentiels, vacance et pertes : calculs du cas 3 (12 logements, Rosemont) et du cas 2… \\
47 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch28\_\allowbreak{}depenses.py} & Chapitre 28 — Dépenses, réserves, CAPEX et RNE : calculs du cas 3 (12 logements, Rosemont) et du cas 2… \\
48 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch29\_\allowbreak{}capitalisation.py} & Chapitre 29 — Capitalisation directe : calculs du cas 3 (12 logements, Rosemont ; DONNÉES SYNTHÉTIQUES). \\
49 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch30\_\allowbreak{}dcf.py} & Chapitre 30 — Flux actualisés et valeur terminale : exemple intégral du cas 3 (12 logements, Montréal, \\
50 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch31\_\allowbreak{}financement.py} & Chapitre 31 — Financement, levier, RCD et RPV : calculs du chapitre (cas 3, 12 logements, Montréal, \\
51 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch32\_\allowbreak{}plex.py} & Chapitre 32 — Duplex à quintuplex : calculs de l'exemple intégral (cas 2, triplex de Limoilou, données… \\
52 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch33\_\allowbreak{}six\_\allowbreak{}logements.py} & Chapitre 33 — Immeubles de six logements et plus : tous les chiffres cités dans manuscript/chapters/ch33.tex \\
53 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch34\_\allowbreak{}tal.py} & Chapitre 34 — TAL, encadrement locatif et scénarios : calculs du chapitre (cas 3, 12 logements, Montréal, \\
54 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch35\_\allowbreak{}indices.py} & Chapitre 35 — Indices immobiliers et ventes répétées : exemple intégral sur le cas 1 (Gatineau, DONNÉES… \\
55 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch36\_\allowbreak{}panel.py} & Chapitre 36 — Données de panel et identification causale : choc simulé sur les séries de RNE du cas 4 \\
56 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch37\_\allowbreak{}ml.py} & Chapitre 37 — Apprentissage automatique et explicabilité : exemple intégral sur les 600 ventes du cas 1 \\
57 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch38\_\allowbreak{}sig.py} & Chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES SYNTHÉTIQUES, graine… \\
58 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch39\_\allowbreak{}bayes.py} & Chapitre 39 — Modèles bayésiens et intervalles : exemple intégral sur les 600 ventes du cas 1 (Gatineau… \\
59 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch40\_\allowbreak{}montecarlo.py} & Chapitre 40 — Monte-Carlo et stress tests (DONNÉES SYNTHÉTIQUES : cas 3, 12 logements à Montréal ; cas 4… \\
60 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch41\_\allowbreak{}phmu.py} & Chapitre 41 — Plus haute et meilleure utilisation, terrains et développement : calculs de l'exemple intégral. \\
61 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch42\_\allowbreak{}copro.py} & Chapitre 42 — Copropriétés et conversions : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
62 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch43\_\allowbreak{}risques.py} & Chapitre 43 — Risques environnementaux et sinistres : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral. \\
63 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch44\_\allowbreak{}renovation.py} & Chapitre 44 — rénovation et efficacité énergétique : analyse coût-bénéfice de deux mesures sur le sujet du… \\
64 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch45\_\allowbreak{}dossier.py} & Chapitre 45 — Cas 1 : maison unifamiliale à Gatineau (DONNÉES SYNTHÉTIQUES, propriété fictive) — dossier… \\
65 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch46\_\allowbreak{}dossier.py} & Chapitre 46 — Cas 2 : triplex à Québec (Limoilou), dossier complet (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
66 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch47\_\allowbreak{}dossier.py} & Chapitre 47 — Cas 3 : immeuble de 12 logements à Montréal (DONNÉES SYNTHÉTIQUES, immeuble fictif). \\
67 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch48\_\allowbreak{}portefeuille.py} & Chapitre 48 — Cas 4 : portefeuille multirésidentiel interrégional (DONNÉES SYNTHÉTIQUES, 48 immeubles… \\
68 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}generate\_\allowbreak{}all.py} & Régénère tous les jeux synthétiques (graine fixée). Usage : python3 -m analysis.python.cases.generate\_all… \\
69 +calcul & \texttt{analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}make\_\allowbreak{}spreadsheets.py} & Classeurs Excel du traité (openpyxl, formules vivantes) : spreadsheets/ \\
70 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch01\_\allowbreak{}figures.py} & Figures du chapitre 1 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031 ; simulations étiquetées). \\
71 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_\allowbreak{}decomposition.py} & Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) revenu net d'exploitation projeté avec les baux en place… \\
72 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_\allowbreak{}ecart\_\allowbreak{}logements.py} & Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) ratio loyer contractuel / loyer de marché selon l'ancienneté… \\
73 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}cout\_\allowbreak{}usage.py} & Figure ch03 — Coût d'usage du logement au Québec, 2001-2026, données RÉELLES (Banque du Canada, Valet… \\
74 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}cycle.py} & Figures ch03 — Simulation d'un cycle stock-flux (SYNTHÉTIQUE, analysis/python/cases/ch03\_cycles.py… \\
75 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}mises\_\allowbreak{}chantier.py} & Figure ch03 — Mises en chantier au Québec, données RÉELLES : Statistique Canada (SCHL), tableau 34-10-0135-01, \\
76 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}quadrants.py} & Figure ch03 — Modèle des quatre quadrants (DiPasquale–Wheaton) tracé à partir des paramètres pédagogiques du… \\
77 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}carte.py} & Figure ch04 — carte schématique des six RMR du Québec : position des centres (coordonnées de la Base de… \\
78 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}ipln.py} & Figure ch04 — Indice des prix des logements neufs (IPLN), total maison et terrain, déc. 2016 = 100, janvier… \\
79 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}mutations.py} & Figure ch04 — taux effectif des droits sur les mutations immobilières (droit / base d'imposition) selon la… \\
80 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}parc.py} & Figure ch04 — structure du parc de logements : ménages privés selon le type de construction, Québec et Canada… \\
81 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}schl.py} & Figure ch04 — marché locatif par RMR : taux d'inoccupation (octobre 2024 et 2025) et loyer moyen des… \\
82 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}taux.py} & Figure ch04 — taux d'intérêt 2000-2026 : taux hypothécaire conventionnel 5 ans affiché (V80691335… \\
83 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}capitalisation.py} & Figure ch05 — sensibilité de la capitalisation d'un écart de taxe foncière : perte de valeur (en \% de la… \\
84 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}cas1\_\allowbreak{}distance.py} & Figure ch05 — prix par mètre carré habitable et distance au centre, cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES… \\
85 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}gradient.py} & Figure ch05 — gradients du modèle monocentrique simulé (PARAMÈTRES PÉDAGOGIQUES DÉCLARÉS dans… \\
86 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}rmr.py} & Figure ch05 — valeur par logement par RMR du portefeuille du cas 4 (DONNÉES SYNTHÉTIQUES, graine 20261031) et \\
87 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}surface.py} & Figure ch05 — surface de rente bicentrique simulée (courbes de niveau) : enveloppe de deux surfaces d'enchère \\
88 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_\allowbreak{}emphyteose.py} & Figure ch06 — emphytéose sur un immeuble locatif dont le RNE est celui du cas 3 (DONNÉES SYNTHÉTIQUES… \\
89 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_\allowbreak{}usufruit.py} & Figure ch06 — usufruit viager sur la maison du cas 1 (DONNÉES SYNTHÉTIQUES, table de mortalité synthétique) : \\
90 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}charges.py} & Figure ch07 — répartition des charges communes annuelles entre les huit fractions (DONNÉES SYNTHÉTIQUES). \\
91 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}fonds.py} & Figure ch07 — trajectoire du fonds de prévoyance sur 25 ans selon trois cotisations (DONNÉES SYNTHÉTIQUES). \\
92 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}paires.py} & Figure ch07 — ventes appariées : prix sans et avec servitude de passage pour 12 paires (DONNÉES SYNTHÉTIQUES… \\
93 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}sensibilite.py} & Figure ch07 — sensibilité de la cotisation de seuil A* à l'inflation des coûts et au rendement du fonds… \\
94 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_\allowbreak{}carte\_\allowbreak{}zones.py} & Figure ch08 — carte synthétique des zones de « Val-Fictif » (DONNÉES SYNTHÉTIQUES) : 400 lots, cinq zones, \\
95 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_\allowbreak{}option\_\allowbreak{}sensibilite.py} & Figure ch08 — sensibilité des effets de valeur du zonage (DONNÉES SYNTHÉTIQUES / hypothèses déclarées) : \\
96 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_\allowbreak{}rezonage\_\allowbreak{}paires.py} & Figure ch08 — effet d'un rezonage mesuré par ventes appariées et par doubles différences (DONNÉES… \\
97 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch09\_\allowbreak{}ratios.py} & Figures du chapitre 9 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031) : \\
98 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch10\_\allowbreak{}figures.py} & Chapitre 10 — figures Matplotlib : \\
99 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_\allowbreak{}fiche\_\allowbreak{}etat.py} & Figures ch11 — (1) fiche d'état du sujet du cas 1 : fraction de vie utile consommée a\_eff/L par composante… \\
100 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_\allowbreak{}frise\_\allowbreak{}pathologies.py} & Figure ch11 — frise INDICATIVE des pathologies et matériaux à risque selon la période de construction… \\
101 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_\allowbreak{}matrice\_\allowbreak{}age\_\allowbreak{}effectif.py} & Figure ch11 — matrice état × âge chronologique → âge effectif (convention déclarée de l'ouvrage, chapitre 11). \\
102 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch12\_\allowbreak{}figures.py} & Figures du chapitre 12 (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) : \\
103 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}biais\_\allowbreak{}datation.py} & Figure ch13 — biais relatif de l'ajustement de conditions du marché lorsqu'une vente est datée à l'acte… \\
104 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}indices.py} & Figure ch13 — trois indices souvent confondus, données RÉELLES de data/raw, rebasés T1 2017 = 100 : \\
105 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}rfu.py} & Figure ch13 — composition de l'évaluation imposable uniformisée 2026 (MAMH, richesse foncière uniformisée, CC… \\
106 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}schl.py} & Figure ch13 — SCHL, Enquête sur les logements locatifs d'octobre 2025 (données RÉELLES, fichier… \\
107 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch14\_\allowbreak{}figures.py} & Chapitre 14 — figures (données SYNTHÉTIQUES, graine 20261031). Idempotent. \\
108 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch15\_\allowbreak{}figures.py} & Figures du chapitre 15 — Études de marché et segmentation. Produit dans assets/figures/ch15/ : \\
109 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch17\_\allowbreak{}figures.py} & Chapitre 17 — figures : cascade d'ajustements (G0404), dispersion des paires, prix bruts vs ajustés, tornade… \\
110 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch18\_\allowbreak{}figures.py} & Figures du chapitre 18 — Modèles hédoniques (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031). \\
111 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch19\_\allowbreak{}figures.py} & Figures du chapitre 19 — modèles spatiaux et temporels (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine… \\
112 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch20\_\allowbreak{}figures.py} & Chapitre 20 — figures : densités bootstrap et énumération exhaustive ; résidus des candidats et élargissement… \\
113 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_\allowbreak{}decomposition.py} & Figure ch21 — décomposition du coût neuf du sujet du cas 1 par corps de métier (DONNÉES SYNTHÉTIQUES, graine… \\
114 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_\allowbreak{}ipcb.py} & Figure ch21 — IPCB Montréal (Statistique Canada, tableau 18-10-0289-01, base 2023 = 100), données RÉELLES… \\
115 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_\allowbreak{}sensibilite.py} & Figure ch21 — sensibilité du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES) : (a) grille taux d'indirects… \\
116 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_\allowbreak{}ecarts.py} & Figure ch22 — métré de contrôle du sujet du cas 1 : écart relatif entre la quantité recalculée depuis le plan… \\
117 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_\allowbreak{}repartition.py} & Figure ch22 — répartition du devis du sujet du cas 1 par corps de métier et par type d'unité de mesure \\
118 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}ipcb\_\allowbreak{}divisions.py} & Figure ch23 — IPCB Montréal, maison individuelle, par division de travaux (Statistique Canada 18-10-0289-01)… \\
119 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}ipcb\_\allowbreak{}types.py} & Figure ch23 — IPCB (Statistique Canada 18-10-0289-01, 2023 = 100), données RÉELLES lues dans data/raw : \\
120 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}sensibilite.py} & Figure ch23 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1 ; taux documenté Banque du Canada V80691335) : \\
121 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}structure.py} & Figure ch23 — cascade de formation du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine 20261031) : \\
122 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}composantes.py} & Figure ch24 — composantes de courte durée du sujet du cas 1 : coût neuf et dépréciation ventilée par… \\
123 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}courbes.py} & Figure ch24 — courbes de dépréciation du bâtiment en fonction de l'âge (DONNÉES SYNTHÉTIQUES, cas 1, graine… \\
124 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}decomposition.py} & Figure ch24 — décomposition de la valeur par le coût du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine… \\
125 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}sensibilite.py} & Figure ch24 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) : (a) taux de dépréciation âge-vie… \\
126 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch25\_\allowbreak{}figures.py} & Figures du chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
127 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch26\_\allowbreak{}figures.py} & Chapitre 26 — figures (4) : loyer contractuel vs loyer de marché par logement (cas 3), distribution de… \\
128 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch27\_\allowbreak{}figures.py} & Chapitre 27 — figures (4) : \\
129 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch28\_\allowbreak{}figures.py} & Chapitre 28 — figures (5) : cascade RBP → RNE (cas 3) ; structure des dépenses en \% du RBE (cas 3 vs cas 2) ; \\
130 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch29\_\allowbreak{}figures.py} & Chapitre 29 — figures (5) : taux extraits (histogramme), taux vs état/taille (nuage), surface V(RNE, R)… \\
131 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}flux.py} & Ch. 30, figure « flux » : RNE, CAPEX et flux net avant dette (barres) du cas 3 (DONNÉES SYNTHÉTIQUES), puis… \\
132 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}gdc.py} & Ch. 30, figure « gdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31)… \\
133 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}loyers.py} & Ch. 30, figure « loyers » : trajectoire du revenu brut potentiel contractuel (indexé au taux TAL + relocation… \\
134 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}surface.py} & Ch. 30, figure « surface » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) selon le taux d'actualisation r… \\
135 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}tornade.py} & Ch. 30, figure « tornade » : variation de la valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour un choc bas/haut… \\
136 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}levier.py} & Ch. 31, figure « levier » (DONNÉES SYNTHÉTIQUES, cas 3) : TRI des fonds propres sur dix ans et rendement… \\
137 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}service\_\allowbreak{}dette.py} & Ch. 31, figure « service-dette » (DONNÉES SYNTHÉTIQUES, cas 3) : service de la dette annuel du prêt de 1 475… \\
138 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}solde.py} & Ch. 31, figure « solde » (DONNÉES SYNTHÉTIQUES, cas 3) : trajectoire du solde du prêt de 1 475 959 \$ à 4,12… \\
139 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}taux\_\allowbreak{}bdc.py} & Ch. 31, figure « taux-bdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31) : taux… \\
140 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch32\_\allowbreak{}figures.py} & Figures du chapitre 32 — Duplex à quintuplex (données SYNTHÉTIQUES du cas 2, sauf la figure des médianes… \\
141 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch33\_\allowbreak{}figures.py} & Chapitre 33 — figures (4) : (1) SCHL, île de Montréal, loyers et inoccupation par taille d'immeuble et par… \\
142 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}calcul\_\allowbreak{}tal.py} & Ch. 34, figure « exemple de calcul TAL » : composantes de l'augmentation mensuelle du logement 103 du cas 3… \\
143 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}ipc\_\allowbreak{}base.py} & Ch. 34, figure « IPC et pourcentage de base » (DONNÉES RÉELLES : Statistique Canada, tableau 18-10-0004-01… \\
144 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}rotation.py} & Ch. 34, figure « rotation espérée » : (gauche) rapport espéré loyer contractuel / loyer de marché d'un… \\
145 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}trajectoires.py} & Ch. 34, figure « trajectoires RBP » : revenu brut potentiel contractuel du cas 3 (DONNÉES SYNTHÉTIQUES) selon… \\
146 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}valeur\_\allowbreak{}scenarios.py} & Ch. 34, figure « valeur par scénario » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour la grille rotation… \\
147 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch35\_\allowbreak{}figures.py} & Figures du chapitre 35 — Indices immobiliers et ventes répétées. \\
148 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch36\_\allowbreak{}figures.py} & Figures du chapitre 36 — données de panel et identification causale (cas 4, DONNÉES SYNTHÉTIQUES, graine… \\
149 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch37\_\allowbreak{}figures.py} & Figures du chapitre 37 — Apprentissage automatique et explicabilité (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES… \\
150 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch38\_\allowbreak{}figures.py} & Figures du chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES… \\
151 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch39\_\allowbreak{}figures.py} & Figures du chapitre 39 — Modèles bayésiens et intervalles (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine… \\
152 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch40\_\allowbreak{}figures.py} & Chapitre 40 — figures (DONNÉES SYNTHÉTIQUES : cas 3 et cas 4, graine 20261031). \\
153 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch41\_\allowbreak{}figures.py} & Figures du chapitre 41 (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF ; hypothèses déclarées dans… \\
154 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}bloc\_\allowbreak{}piece.py} & Figure ch42 — valeur de conversion (somme des fractions nette des coûts, des frais, du portage et des délais)… \\
155 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}cotisation\_\allowbreak{}speciale.py} & Figure ch42 — charges annuelles normalisées des huit fractions (ch. 7) et part de chacune dans une cotisation… \\
156 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}grille.py} & Figure ch42 — grille de comparaison de la fraction F4 : prix observé, prix ajusté et décomposition des… \\
157 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}medianes.py} & Figure ch42 — prix médians Centris des copropriétés et des unifamiliales par territoire, T3 2026 (DONNÉES… \\
158 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}carte\_\allowbreak{}cas4.py} & Figure ch43 — carte schématique des 48 immeubles du cas 4 (DONNÉES SYNTHÉTIQUES, coordonnées fictives autour… \\
159 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}carte\_\allowbreak{}riverain.py} & Figure ch43 — municipalité fictive de Rivière-Fictive (DONNÉES SYNTHÉTIQUES) : 625 lots, classes d'exposition… \\
160 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}did\_\allowbreak{}cas4.py} & Figure ch43 — doubles différences sur les séries de RNE du cas 4 avec choc d'inondation injecté en 2019… \\
161 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}effets\_\allowbreak{}methodes.py} & Figure ch43 — décote d'une zone inondable mesurée par quatre méthodes sur les ventes de Rivière-Fictive… \\
162 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}placebos.py} & Figure ch43 — inférence de randomisation exacte pour le DiD du cas 4 (DONNÉES SYNTHÉTIQUES) : distribution… \\
163 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}capitalisation.py} & Figure ch44 — (a) quatre lectures de ce que la thermopompe « vaut » pour le sujet du cas 1 : coût installé… \\
164 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}flux.py} & Figure ch44 — flux annuels des deux mesures énergétiques du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, hypothèses… \\
165 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}heatmap\_\allowbreak{}van.py} & Figure ch44 — VAN des deux mesures selon le taux d'actualisation et la croissance du prix de l'électricité \\
166 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}prime\_\allowbreak{}verte.py} & Figure ch44 — la « prime verte » dans la littérature : fourchettes publiées par étude (valeurs vérifiées, voir \\
167 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch45\_\allowbreak{}figures.py} & Chapitre 45 — figures du dossier (cas 1, DONNÉES SYNTHÉTIQUES) : carte des comparables, cascade des… \\
168 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch46\_\allowbreak{}figures.py} & Chapitre 46 — figures du dossier « triplex à Québec » (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
169 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch47\_\allowbreak{}dossier\_\allowbreak{}figures.py} & Chapitre 47 — figures du dossier « 12 logements à Montréal » (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
170 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch48\_\allowbreak{}portefeuille\_\allowbreak{}figures.py} & Chapitre 48 — figures du dossier « portefeuille multirésidentiel interrégional » (DONNÉES SYNTHÉTIQUES… \\
171 +figure & \texttt{analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}run\_\allowbreak{}all.py} & Exécute tous les scripts de figures (analysis/python/figures/chNN\_*.py) et les scripts R… \\
172 172 test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}conftest.py} & \\
173 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cas1.py} & \\
174 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cas2\_cas4.py} & \\
175 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cas3.py} & \\
176 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch01.py} & Chapitre 1 — vérification des identités et des chiffres cités dans le texte et les solutions (données synthéti \\
177 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch02.py} & Chapitre 2 — Droits immobiliers et bases de valeur : identités (additivité, Gordon, annuité) et valeurs citées \\
178 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch03.py} & Tests du chapitre 3 — Offre, demande et cycles. \\
179 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch04.py} & Tests du chapitre 4 — marchés résidentiels québécois : lecture des données réelles (Recensement 2021, 17-10-01 \\
180 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch05.py} & Tests du chapitre 5 — modèle monocentrique simulé, gradient prix/distance du cas 1, décomposition du cas 4, \\
181 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch06.py} & Tests du chapitre 6 — démembrements et modalités du droit de propriété (DONNÉES SYNTHÉTIQUES, hypothèses décla \\
182 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch07.py} & Tests du chapitre 7 — servitude par ventes appariées, quotes-parts et charges de copropriété, fonds de prévoya \\
183 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch08.py} & Tests du chapitre 8 — zonage et urbanisme (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
184 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch09.py} & Tests du chapitre 9 — étude de ratios (COD, PRD, PRB, proportion médiane, facteur comparatif), dossiers de con \\
185 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch10.py} & Chapitre 10 — vérification des chiffres cités dans le texte, les tableaux et les solutions. \\
186 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch11.py} & Tests du chapitre 11 — inspection synthétique du sujet du cas 1, convention d'âge effectif, dépréciation venti \\
187 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch12.py} & Tests du chapitre 12 — mesurage, superficies, propagation d'erreur (cas 1, données synthétiques). \\
188 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch13.py} & Tests du chapitre 13 — lecture des fichiers RÉELS de data/raw (StatCan 18-10-0289-01, 18-10-0205-01, 18-10-000 \\
189 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch14.py} & Chapitre 14 — Nettoyage, géocodage et qualité des données : reproductibilité du jeu brut, identités des diagno \\
190 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch15.py} & Chapitre 15 — Études de marché et segmentation : vérification des identités et des chiffres cités dans le text \\
191 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch16.py} & Chapitre 16 — vérification des chiffres cités dans le texte et les solutions. \\
192 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch17.py} & Chapitre 17 — vérification des identités et des chiffres cités dans le texte et les solutions (tolérances décl \\
193 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch18.py} & Chapitre 18 — Modèles hédoniques : vérification des chiffres cités dans le texte, les tableaux et les solution \\
194 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch19.py} & Chapitre 19 — tests des fonctions spatiales ajoutées à traite.hedonique et des chiffres cités dans le texte et \\
195 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch20.py} & Chapitre 20 — réconciliation et incertitude : identités, chiffres cités dans le texte et dans les solutions (t \\
196 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch21.py} & Tests du chapitre 21 — coût neuf du sujet du cas 1, IPCB Montréal, sensibilité et exercices. \\
197 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch22.py} & Tests du chapitre 22 — métré et quantités du sujet du cas 1. \\
198 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch23.py} & Tests du chapitre 23 — coûts directs et indirects : structure du devis du cas 1, financement intérimaire (trai \\
199 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch24.py} & Tests du chapitre 24 — dépréciation et désuétudes du sujet du cas 1, extraction de marché, profils et exercice \\
200 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch25.py} & Tests du chapitre 25 — Évaluation du terrain : jeu synthétique de terrains (graine 20261031), modèle hédonique \\
201 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch26.py} & Tests du chapitre 26 — baux et loyers (cas 3 et cas 2, données synthétiques). \\
202 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch27.py} & Tests du chapitre 27 — revenus potentiels, vacance et pertes (cas 3 et cas 2, données synthétiques ; tableaux \\
203 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch28.py} & Tests du chapitre 28 — dépenses, réserves, CAPEX et RNE (cas 3 et cas 2, données synthétiques). \\
204 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch29.py} & Tests du chapitre 29 — capitalisation directe (cas 3, données synthétiques). \\
205 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch30.py} & Tests du chapitre 30 — flux actualisés et valeur terminale (cas 3, données synthétiques). \\
206 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch31.py} & Tests du chapitre 31 — financement, levier, RCD et RPV (cas 3, données synthétiques ; repères BdC réels). \\
207 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch32.py} & Tests du chapitre 32 — Duplex à quintuplex : identités, cohérence avec traite.cas2 (partagé avec les ch. 26, 2 \\
208 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch33.py} & Tests du chapitre 33 (immeubles de six logements et plus) : identités, cohérence avec traite.cas3/cas4 et le c \\
209 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch34.py} & Tests du chapitre 34 — TAL, encadrement locatif et scénarios (cas 3, données synthétiques ; IPC Québec réel). \\
210 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch35.py} & Chapitre 35 — Indices immobiliers et ventes répétées : identités et valeurs citées dans le texte, les tableaux \\
211 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch36.py} & Chapitre 36 — tests des fonctions de traite.panel (récupération d'effets connus sur données simulées) et des c \\
212 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch37.py} & Chapitre 37 — Apprentissage automatique et explicabilité : reproductibilité et bornes de performance des chiff \\
213 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch38.py} & Chapitre 38 — tests des fonctions de traite.geo et des chiffres cités dans manuscript/chapters/ch38.tex et sol \\
214 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch39.py} & Chapitre 39 — Modèles bayésiens et intervalles : vérification des identités, des diagnostics et des chiffres c \\
215 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch40.py} & Tests du chapitre 40 (Monte-Carlo et stress tests — données synthétiques, cas 3 et cas 4) : égalité stricte av \\
216 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch41.py} & Tests du chapitre 41 — PHMU, terrains et développement (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF ; hypoth \\
217 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch42.py} & Tests du chapitre 42 — fraction de copropriété (grille, réconciliation), cotisation spéciale, copropriété loca \\
218 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch43.py} & Tests du chapitre 43 — risques environnementaux et sinistres (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
219 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch44.py} & Tests du chapitre 44 — rénovation et efficacité énergétique (sujet du cas 1, DONNÉES SYNTHÉTIQUES). \\
220 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch45.py} & Tests du chapitre 45 (cas 1, maison unifamiliale à Gatineau — DONNÉES SYNTHÉTIQUES) : le dossier ne doit repre \\
221 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch46.py} & Tests du chapitre 46 — Cas 2 : triplex à Québec (dossier complet, données SYNTHÉTIQUES). \\
222 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch47.py} & Tests du chapitre 47 (cas 3, 12 logements à Montréal — données synthétiques) : identités, valeurs citées dans \\
223 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch48.py} & Tests du chapitre 48 (cas 4, portefeuille interrégional — données synthétiques) : identités du sommaire, cohér \\
224 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_comparables.py} & \\
225 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cout.py} & \\
226 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_finance.py} & \\
227 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_hedonique.py} & \\
228 −test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_synth.py} & \\
229 −outil & \texttt{tools/\allowbreak{}check\_manuscript.py} & Vérifications du manuscrit : stubs restants, figures manquantes, scripts des figures, \\
230 −outil & \texttt{tools/\allowbreak{}inventaire.py} & Inventaire des scripts, tests, données, figures et classeurs → manuscript/appendices/\_inventaire.tex (longtab \\
231 −outil & \texttt{tools/\allowbreak{}make\_labels.py} & Écrit un fichier d'étiquettes (newlabel) pour tous les chapitres et annexes, afin que cref\{ch:NN\} / cref\{ap \\
232 −outil & \texttt{tools/\allowbreak{}make\_release.py} & Assemble release/ : PDF, sources LaTeX, données, figures, scripts, classeurs, corrigés, rapport de validation. \\
233 −outil & \texttt{tools/\allowbreak{}merge\_sources.py} & Fusionne sources/registry-*.csv → sources/registry.csv, sources/normes-*.csv → sources/normes-matrice.csv, \\
234 −outil & \texttt{tools/\allowbreak{}compile\_chapter.sh} & !/usr/bin/env bash \\
235 −outil & \texttt{tools/\allowbreak{}valider\_chapitre.sh} & !/usr/bin/env bash \\
173 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cas1.py} & \\
174 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cas2\_\allowbreak{}cas4.py} & \\
175 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cas3.py} & \\
176 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch01.py} & Chapitre 1 — vérification des identités et des chiffres cités dans le texte et les solutions (données… \\
177 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch02.py} & Chapitre 2 — Droits immobiliers et bases de valeur : identités (additivité, Gordon, annuité) et valeurs… \\
178 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch03.py} & Tests du chapitre 3 — Offre, demande et cycles. \\
179 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch04.py} & Tests du chapitre 4 — marchés résidentiels québécois : lecture des données réelles (Recensement 2021… \\
180 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch05.py} & Tests du chapitre 5 — modèle monocentrique simulé, gradient prix/distance du cas 1, décomposition du cas 4, \\
181 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch06.py} & Tests du chapitre 6 — démembrements et modalités du droit de propriété (DONNÉES SYNTHÉTIQUES, hypothèses… \\
182 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch07.py} & Tests du chapitre 7 — servitude par ventes appariées, quotes-parts et charges de copropriété, fonds de… \\
183 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch08.py} & Tests du chapitre 8 — zonage et urbanisme (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
184 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch09.py} & Tests du chapitre 9 — étude de ratios (COD, PRD, PRB, proportion médiane, facteur comparatif), dossiers de… \\
185 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch10.py} & Chapitre 10 — vérification des chiffres cités dans le texte, les tableaux et les solutions. \\
186 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch11.py} & Tests du chapitre 11 — inspection synthétique du sujet du cas 1, convention d'âge effectif, dépréciation… \\
187 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch12.py} & Tests du chapitre 12 — mesurage, superficies, propagation d'erreur (cas 1, données synthétiques). \\
188 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch13.py} & Tests du chapitre 13 — lecture des fichiers RÉELS de data/raw (StatCan 18-10-0289-01, 18-10-0205-01… \\
189 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch14.py} & Chapitre 14 — Nettoyage, géocodage et qualité des données : reproductibilité du jeu brut, identités des… \\
190 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch15.py} & Chapitre 15 — Études de marché et segmentation : vérification des identités et des chiffres cités dans le… \\
191 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch16.py} & Chapitre 16 — vérification des chiffres cités dans le texte et les solutions. \\
192 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch17.py} & Chapitre 17 — vérification des identités et des chiffres cités dans le texte et les solutions (tolérances… \\
193 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch18.py} & Chapitre 18 — Modèles hédoniques : vérification des chiffres cités dans le texte, les tableaux et les… \\
194 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch19.py} & Chapitre 19 — tests des fonctions spatiales ajoutées à traite.hedonique et des chiffres cités dans le texte… \\
195 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch20.py} & Chapitre 20 — réconciliation et incertitude : identités, chiffres cités dans le texte et dans les solutions… \\
196 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch21.py} & Tests du chapitre 21 — coût neuf du sujet du cas 1, IPCB Montréal, sensibilité et exercices. \\
197 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch22.py} & Tests du chapitre 22 — métré et quantités du sujet du cas 1. \\
198 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch23.py} & Tests du chapitre 23 — coûts directs et indirects : structure du devis du cas 1, financement intérimaire… \\
199 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch24.py} & Tests du chapitre 24 — dépréciation et désuétudes du sujet du cas 1, extraction de marché, profils et… \\
200 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch25.py} & Tests du chapitre 25 — Évaluation du terrain : jeu synthétique de terrains (graine 20261031), modèle… \\
201 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch26.py} & Tests du chapitre 26 — baux et loyers (cas 3 et cas 2, données synthétiques). \\
202 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch27.py} & Tests du chapitre 27 — revenus potentiels, vacance et pertes (cas 3 et cas 2, données synthétiques ; tableaux… \\
203 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch28.py} & Tests du chapitre 28 — dépenses, réserves, CAPEX et RNE (cas 3 et cas 2, données synthétiques). \\
204 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch29.py} & Tests du chapitre 29 — capitalisation directe (cas 3, données synthétiques). \\
205 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch30.py} & Tests du chapitre 30 — flux actualisés et valeur terminale (cas 3, données synthétiques). \\
206 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch31.py} & Tests du chapitre 31 — financement, levier, RCD et RPV (cas 3, données synthétiques ; repères BdC réels). \\
207 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch32.py} & Tests du chapitre 32 — Duplex à quintuplex : identités, cohérence avec traite.cas2 (partagé avec les ch. 26… \\
208 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch33.py} & Tests du chapitre 33 (immeubles de six logements et plus) : identités, cohérence avec traite.cas3/cas4 et le… \\
209 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch34.py} & Tests du chapitre 34 — TAL, encadrement locatif et scénarios (cas 3, données synthétiques ; IPC Québec réel). \\
210 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch35.py} & Chapitre 35 — Indices immobiliers et ventes répétées : identités et valeurs citées dans le texte, les… \\
211 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch36.py} & Chapitre 36 — tests des fonctions de traite.panel (récupération d'effets connus sur données simulées) et des… \\
212 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch37.py} & Chapitre 37 — Apprentissage automatique et explicabilité : reproductibilité et bornes de performance des… \\
213 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch38.py} & Chapitre 38 — tests des fonctions de traite.geo et des chiffres cités dans manuscript/chapters/ch38.tex et… \\
214 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch39.py} & Chapitre 39 — Modèles bayésiens et intervalles : vérification des identités, des diagnostics et des chiffres… \\
215 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch40.py} & Tests du chapitre 40 (Monte-Carlo et stress tests — données synthétiques, cas 3 et cas 4) : égalité stricte… \\
216 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch41.py} & Tests du chapitre 41 — PHMU, terrains et développement (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF… \\
217 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch42.py} & Tests du chapitre 42 — fraction de copropriété (grille, réconciliation), cotisation spéciale, copropriété… \\
218 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch43.py} & Tests du chapitre 43 — risques environnementaux et sinistres (DONNÉES SYNTHÉTIQUES, graine 20261031). \\
219 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch44.py} & Tests du chapitre 44 — rénovation et efficacité énergétique (sujet du cas 1, DONNÉES SYNTHÉTIQUES). \\
220 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch45.py} & Tests du chapitre 45 (cas 1, maison unifamiliale à Gatineau — DONNÉES SYNTHÉTIQUES) : le dossier ne doit… \\
221 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch46.py} & Tests du chapitre 46 — Cas 2 : triplex à Québec (dossier complet, données SYNTHÉTIQUES). \\
222 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch47.py} & Tests du chapitre 47 (cas 3, 12 logements à Montréal — données synthétiques) : identités, valeurs citées dans… \\
223 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch48.py} & Tests du chapitre 48 (cas 4, portefeuille interrégional — données synthétiques) : identités du sommaire… \\
224 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}comparables.py} & \\
225 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cout.py} & \\
226 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}finance.py} & \\
227 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}hedonique.py} & \\
228 +test & \texttt{analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}synth.py} & \\
229 +outil & \texttt{tools/\allowbreak{}check\_\allowbreak{}manuscript.py} & Vérifications du manuscrit : stubs restants, figures manquantes, scripts des figures, \\
230 +outil & \texttt{tools/\allowbreak{}fix\_\allowbreak{}idx.py} & Normalise les entrées d'index (.idx) avant makeindex : ajoute une clé de tri sans accent aux entrées dont \\
231 +outil & \texttt{tools/\allowbreak{}glossaire\_\allowbreak{}build.py} & Génère manuscript/appendices/glossaire.tex à partir de la liste d'entrées ci-dessous (annexe A). \\
232 +outil & \texttt{tools/\allowbreak{}glossaire\_\allowbreak{}extraction.py} & Traçabilité du glossaire (annexe A). \\
233 +outil & \texttt{tools/\allowbreak{}inventaire.py} & Inventaire des scripts, tests, données, figures et classeurs → manuscript/appendices/\_inventaire.tex… \\
234 +outil & \texttt{tools/\allowbreak{}make\_\allowbreak{}labels.py} & Écrit un fichier d'étiquettes (newlabel) pour tous les chapitres et annexes, afin que cref\{ch:NN\} /… \\
235 +outil & \texttt{tools/\allowbreak{}make\_\allowbreak{}release.py} & Assemble release/ : PDF, sources LaTeX, données, figures, scripts, classeurs, corrigés, rapport de validation. \\
236 +outil & \texttt{tools/\allowbreak{}merge\_\allowbreak{}sources.py} & Fusionne sources/registry-*.csv → sources/registry.csv, sources/normes-*.csv → sources/normes-matrice.csv, \\
237 +outil & \texttt{tools/\allowbreak{}compile\_\allowbreak{}chapter.sh} & !/usr/bin/env bash \\
238 +outil & \texttt{tools/\allowbreak{}makeindex.sh} & !/usr/bin/env bash \\
239 +outil & \texttt{tools/\allowbreak{}valider\_\allowbreak{}chapitre.sh} & !/usr/bin/env bash \\
236 240 \end{longtable}
237 241
238 242 \begin{longtable}{lr}
modified manuscript/appendices/conventions-calcul.tex +1 −1
@@ -27,4 +27,4 @@ Le coût neuf est le coût de remplacement, sauf indication contraire, et compre
27 27 Les intervalles sont à 95 \% sauf mention contraire. Les erreurs-types des régressions sont robustes à l'hétéroscédasticité (HC1) ; lorsque des grappes (quartiers, périodes) sont pertinentes, l'agrégation est précisée. L'effet en pourcentage d'une variable indicatrice dans un modèle semi-logarithmique est $100\,[\exp(\hat\beta) - 1]$ (Halvorsen et Palmquist) ; la correction de Kennedy est appliquée lorsque la variance de $\hat\beta$ n'est pas négligeable. Les prédictions en niveau issues d'un modèle en logarithme sont corrigées du biais de retransformation par la méthode de Duan.
28 28
29 29 \section{Données synthétiques}
30 −Les jeux de données synthétiques sont générés par \texttt{analysis/python/traite/synth.py} avec la graine \texttt{20261031} ; leur description, leurs lois de génération et la provenance de chaque paramètre de calibration figurent dans \texttt{data/synthetic/README.md}. Toute figure ou tout tableau qui en dépend porte la mention « données synthétiques ».
30 +Les jeux de données synthétiques sont générés par \texttt{analysis/\allowbreak python/\allowbreak traite/\allowbreak synth.py} avec la graine \texttt{20261031} ; leur description, leurs lois de génération et la provenance de chaque paramètre de calibration figurent dans \texttt{data/synthetic/README.md}. Toute figure ou tout tableau qui en dépend porte la mention « données synthétiques ».
modified manuscript/appendices/scripts-classeurs.tex +2 −2
@@ -3,13 +3,13 @@
3 3 Cette annexe inventorie les artefacts informatiques qui accompagnent l'ouvrage et qui permettent de reproduire chaque chiffre, chaque tableau et chaque figure. Le dépôt est organisé selon les conventions décrites dans \texttt{CONVENTIONS.md} ; l'inventaire ci-dessous est généré automatiquement par \texttt{tools/inventaire.py} à partir de l'état du dépôt, de sorte qu'il reflète toujours les fichiers réellement présents.
4 4
5 5 \section{Organisation du dépôt}
6 −Le manuscrit LuaLaTeX se trouve dans \texttt{manuscript/} (un fichier par chapitre dans \texttt{chapters/}, les annexes dans \texttt{appendices/}, les pages liminaires dans \texttt{frontmatter/}) et s'appuie sur le style \texttt{styles/traite-qc.sty}. Les figures vectorielles sont dans \texttt{assets/figures/chNN/}, chacune produite par un script de \texttt{analysis/python/figures/} ou dessinée en TikZ dans le chapitre. Les données brutes publiques, jamais modifiées, sont dans \texttt{data/raw/} avec leur inventaire (\texttt{SOURCES.md} : URL exacte, licence, date de téléchargement) ; les jeux synthétiques, identifiés comme tels, dans \texttt{data/synthetic/} avec leurs lois de génération (\texttt{README.md}) et le journal de calibration (\texttt{calibration\_journal.csv}). La bibliothèque commune \texttt{analysis/python/traite/} regroupe les fonctions financières, la méthode du coût, la comparaison, l'économétrie hédonique et spatiale, les panels, la géomatique et les quatre dossiers de cas ; chaque fonction est couverte par un test de \texttt{analysis/python/tests/}. Les registres de vérification (\texttt{verification/}) relient chaque affirmation, chaque calcul et chaque figure à sa source ou à son script.
6 +Le manuscrit LuaLaTeX se trouve dans \texttt{manuscript/} (un fichier par chapitre dans \texttt{chapters/}, les annexes dans \texttt{appendices/}, les pages liminaires dans \texttt{frontmatter/}) et s'appuie sur le style \texttt{styles/\allowbreak traite-qc.sty}. Les figures vectorielles sont dans \texttt{assets/\allowbreak figures/\allowbreak chNN/}, chacune produite par un script de \texttt{analysis/\allowbreak python/\allowbreak figures/} ou dessinée en TikZ dans le chapitre. Les données brutes publiques, jamais modifiées, sont dans \texttt{data/raw/} avec leur inventaire (\texttt{SOURCES.md} : URL exacte, licence, date de téléchargement) ; les jeux synthétiques, identifiés comme tels, dans \texttt{data/synthetic/} avec leurs lois de génération (\texttt{README.md}) et le journal de calibration (\texttt{calibration\_\allowbreak journal.csv}). La bibliothèque commune \texttt{analysis/\allowbreak python/\allowbreak traite/} regroupe les fonctions financières, la méthode du coût, la comparaison, l'économétrie hédonique et spatiale, les panels, la géomatique et les quatre dossiers de cas ; chaque fonction est couverte par un test de \texttt{analysis/\allowbreak python/\allowbreak tests/}. Les registres de vérification (\texttt{verification/}) relient chaque affirmation, chaque calcul et chaque figure à sa source ou à son script.
7 7
8 8 \section{Reproduire l'ouvrage}
9 9 Depuis la racine du dépôt : \texttt{make data} régénère les jeux synthétiques (graines fixées) ; \texttt{make figures} exécute tous les scripts de figures ; \texttt{make test} lance les tests unitaires et les vérifications du manuscrit ; \texttt{make pdf} compile le livre (LuaLaTeX, biber, makeindex) ; \texttt{make chapter CH=16} compile un chapitre isolé. Les prérequis sont énumérés dans \texttt{README.md}. Aucune donnée réelle sous licence restrictive n'est redistribuée ; les chiffres d'industrie (APCIQ, CBRE, Altus, JLR) sont cités avec attribution, jamais reproduits en tableau.
10 10
11 11 \section{Classeurs Excel}
12 −Trois classeurs à formules vivantes, produits par \texttt{analysis/python/cases/make\_spreadsheets.py}, reproduisent les identités du livre : la grille d'ajustements du cas 1 (chapitres 16 et 17), le dossier du cas 3 (état locatif, dépenses normalisées, revenu net, capitalisation, flux actualisés, financement ; chapitres 28 à 31 et 47) et un calculateur d'hypothèque canadienne à composition semestrielle avec tableau d'amortissement (chapitre 31). Les cellules de contrôle rappellent les valeurs calculées par la bibliothèque Python, de sorte qu'un écart signale une divergence de convention.
12 +Trois classeurs à formules vivantes, produits par le script \texttt{make\_spreadsheets.py} du dossier \texttt{analysis/python/cases/}, reproduisent les identités du livre : la grille d'ajustements du cas 1 (chapitres 16 et 17), le dossier du cas 3 (état locatif, dépenses normalisées, revenu net, capitalisation, flux actualisés, financement ; chapitres 28 à 31 et 47) et un calculateur d'hypothèque canadienne à composition semestrielle avec tableau d'amortissement (chapitre 31). Les cellules de contrôle rappellent les valeurs calculées par la bibliothèque Python, de sorte qu'un écart signale une divergence de convention.
13 13
14 14 \section{Inventaire}
15 15 \input{../manuscript/appendices/_inventaire.tex}
modified manuscript/chapters/ch24.tex +1 −1
@@ -243,7 +243,7 @@ La Loi sur la fiscalité municipale fonde la valeur réelle sur « l'état de l'
243 243
244 244 \subsection{Principe}
245 245
246 −Toutes les méthodes précédentes mesurent la dépréciation à partir du bâtiment ; l'\motcle{extraction de marché} (\emph{market extraction}) la mesure à partir des ventes. Pour une vente dont on connaît le prix $P$, la valeur du terrain $V_L$ et le coût neuf $C_N$ du bâtiment à la date de la vente, la \cref{def:depreciation} donne directement la dépréciation totale, toutes familles confondues :
246 +Toutes les méthodes précédentes mesurent la dépréciation à partir du bâtiment ; l'\hspace{0pt}\motcle{extraction de marché} (\emph{market extraction}) la mesure à partir des ventes. Pour une vente dont on connaît le prix $P$, la valeur du terrain $V_L$ et le coût neuf $C_N$ du bâtiment à la date de la vente, la \cref{def:depreciation} donne directement la dépréciation totale, toutes familles confondues :
247 247 \begin{equation}\label{eq:24:extraction}
248 248 D = C_N - (P - V_L), \qquad \delta = \frac{D}{C_N}, \qquad \bar\delta_a = \frac{\delta}{a},
249 249 \end{equation}
modified manuscript/chapters/ch47.tex +1 −1
@@ -384,7 +384,7 @@ soit \dollars{169792} par logement et un multiplicateur de \num{12.31} fois le r
384 384
385 385 \subsection{Hypothèses de projection}
386 386
387 −La \motcle{méthode des flux actualisés} (DCF, \emph{discounted cash flow}) explicite ce que la capitalisation directe résume en un seul taux : la trajectoire des loyers contractuels et de marché, la rotation des locataires, la croissance des dépenses, les dépenses en capital et la revente. Le \cref{tab:47:hyp-dcf} déclare les hypothèses, toutes tirées du fichier \texttt{cas3\_montreal\_hypotheses\_dcf.json}, avec leur justification. L'horizon de dix ans correspond à la durée de détention typique d'un investisseur privé et à deux termes hypothécaires de cinq ans ; les flux sont réputés reçus en fin d'année, la première année courant du 1\textsuperscript{er} septembre 2026 au 31~août 2027.
387 +La \motcle{méthode des flux actualisés} (DCF, \emph{discounted cash flow}) explicite ce que la capitalisation directe résume en un seul taux : la trajectoire des loyers contractuels et de marché, la rotation des locataires, la croissance des dépenses, les dépenses en capital et la revente. Le \cref{tab:47:hyp-dcf} déclare les hypothèses, toutes tirées du fichier \texttt{cas3\_\allowbreak{}montreal\_\allowbreak{}hypotheses\_\allowbreak{}dcf.json}, avec leur justification. L'horizon de dix ans correspond à la durée de détention typique d'un investisseur privé et à deux termes hypothécaires de cinq ans ; les flux sont réputés reçus en fin d'année, la première année courant du 1\textsuperscript{er} septembre 2026 au 31~août 2027.
388 388
389 389 \begin{table}[htbp]\centering
390 390 \caption{Hypothèses de la projection de flux actualisés et leur justification.}\label{tab:47:hyp-dcf}
modified tools/inventaire.py +5 −1
@@ -7,11 +7,15 @@ def doc(p):
7 7 t = p.read_text(encoding="utf-8", errors="ignore")
8 8 m = re.search(r'"""(.*?)"""', t, re.S) or re.search(r"^#\s*(.+)$", t, re.M)
9 9 return esc(m.group(1).strip().split("\n")[0]) if m else ""
10 +def tronque(s, n):
11 + """Coupe au dernier mot entier avant n caractères et ajoute des points de suspension."""
12 + if len(s) <= n: return s
13 + return s[:n].rsplit(" ", 1)[0].rstrip(" ,;:(—-") + "…"
10 14 rows = []
11 15 for d, kind in [("analysis/python/traite", "module"), ("analysis/python/cases", "calcul"), ("analysis/python/figures", "figure"), ("analysis/python/tests", "test"), ("analysis/r", "R"), ("tools", "outil")]:
12 16 for p in sorted((ROOT / d).glob("*.py")) + sorted((ROOT / d).glob("*.R")) + sorted((ROOT / d).glob("*.sh")):
13 17 if p.name.startswith("__"): continue
14 − rows.append((kind, esc(str(p.relative_to(ROOT))).replace("/", "/\\allowbreak{}"), doc(p)[:110]))
18 + rows.append((kind, esc(str(p.relative_to(ROOT))).replace("/", "/\\allowbreak{}").replace("\\_", "\\_\\allowbreak{}"), tronque(doc(p), 110)))
15 19 data = [(esc(str(p.relative_to(ROOT))).replace("/", "/\\allowbreak{}"), f"{p.stat().st_size/1024:.0f} ko") for p in sorted((ROOT / "data/synthetic").glob("*")) if p.is_file()]
16 20 xl = [esc(str(p.relative_to(ROOT))) for p in sorted((ROOT / "spreadsheets").glob("*.xlsx"))]
17 21 nfig = len(list((ROOT / "assets/figures").rglob("*.pdf")))
added verification/harmonisation-lot-B.md +110 −0
@@ -0,0 +1,110 @@
1 +# Harmonisation — lot B (chapitres 17 à 32)
2 +
3 +Date : 2026-10-31 · Consigne : `tools/BRIEF-HARMONISATION.md` · Règle d'or respectée : aucun chiffre ni conclusion modifié ; seuls la forme, les citations, les renvois, l'index et la cohérence inter-chapitres ont été touchés. Fichiers modifiés : `manuscript/chapters/ch17.tex` à `ch32.tex` (sauf ch19 et ch27 hors renvois), `solutions/ch18.tex`, `solutions/ch26.tex`. Non touchés : `styles/`, `main.tex`, `traite/`, CSV globaux, `references/library.bib`, chapitres hors lot.
4 +
5 +## Bilan global
6 +
7 +| Contrôle | Résultat |
8 +|---|---|
9 +| `tools/compile_chapter.sh NN` (17 à 32) | 16/16 « OK … 0 references/citations non definies » |
10 +| Débordements > 10 pt (corps + solutions) | 0 avant, 0 après |
11 +| Débordements restants (< 10 pt, préexistants) | ch31 : 2,9 pt (l. 376-386) et 8,6 pt (l. 407-426, tableaux) ; ch32 : 0,5 pt (encadré objectifs) |
12 +| `pytest analysis/python/tests/test_ch17.py … test_ch32.py` | 280 passed |
13 +| Mentions `lib-chNN.bib` / notes « vérifié » dans le texte | 0 restante (toutes converties en `\textcite`/`\parencite`, clés vérifiées présentes dans `library.bib`) |
14 +| `\cref{ch:N}` à un chiffre | aucun |
15 +| « du le », « le le », « la la », « chapitre chapitre »… dans le PDF | aucun (faux positifs « de le » = pronom) |
16 +| Encadrés obligatoires (objectifs, synthese, erreurs, limites, quebec, exemple, Exercices, Pour aller plus loin) | présents dans les 16 chapitres |
17 +| `\motcle{}` ≥ 10 | 16/16 après ajouts (voir détail) |
18 +
19 +Compteurs `\motcle` avant → après : ch17 8→12 ; ch18 11 ; ch19 24 ; ch20 8→10 ; ch21 0→10 ; ch22 0→11 ; ch23 0→10 ; ch24 0→18 ; ch25 3→10 ; ch26 9→13 ; ch27 11 ; ch28 9→11 ; ch29 5→10 ; ch30 9→12 ; ch31 6→10 ; ch32 9→10. Les ajouts portent sur des termes déjà définis dans le texte (remplacement d'`\emph{}` ou balisage du terme en clair) ; aucun mot n'a été ajouté ou retiré.
20 +
21 +## Chapitre par chapitre
22 +
23 +### ch17 — Ajustements qualitatifs et quantitatifs
24 +- Citations : « Giles (1982) puis van Garderen et Shah (2002) » → `\textcite{giles1982}`, `\textcite{vanGarderenShah2002}` ; `\parencite{duan1983}` à la première mention de la correction de Duan (prop. 17.2).
25 +- Renvoi fin : « (tableau des comparables retenus du ch. 16) » → `\cref{tab:16:comparables}` (rend « tableau 16.6 »).
26 +- Index : forme additive, forme multiplicative, forme mixte, classement.
27 +- Cohérence « −8,5 % » (ch17/ch20) vs « −8,7 % » (ch18.md) : le texte du ch18 ne cite aucun des deux ; ch17 et ch20 emploient tous deux la moyenne de exp(e)−1 = −8,5 % (grandeur de la prop. 17.2). Rien à changer ; le −8,7 % (moyenne des résidus log) n'existe que dans le bilan ch18.md.
28 +- Compile : 37 p., 0 réf. non définie, 0 overfull.
29 +
30 +### ch18 — Modèles hédoniques
31 +- Citations : cinq notes de bas de page « (vérifié ; lib-ch18.bib) » remplacées par `\parencite{white1980}`, `\parencite{breuschPagan1979}`, `\textcite{belsleyKuhWelsch1980}` (note conservée pour la convention VIF > 10), `\parencite{cook1977}`, `\textcite{duan1983}`.
32 +- Renvoi : légende fig. 18.x « chapitre 16 » → `\cref{ch:16}`.
33 +- **Point du journal (ajustement temporel de G0404)** : la valeur 28 774 $ est dans `solutions/ch18.tex` (ex. 18.8 c). Vérifié : 28 774 $ = coefficient non arrondi 0,003635 × 15,2 mois ; 28 733 $ (ch17/ch35) = même coefficient × durée exacte 462 jours (15,18 mois) ; 0,00364 × 15,2 donnerait 28 813 $. La solution explique maintenant l'arrondi et désigne 28 733 $ comme valeur de référence de l'ouvrage (chiffre de l'exercice conservé). Renvois « chapitre 17 / 35 » → `\cref`.
34 +- Compile : 40 p., 0 réf. non définie, 0 overfull ; tests verts.
35 +
36 +### ch19 — Modèles spatiaux et temporels
37 +- Rien à corriger (24 `\motcle`, aucune mention en toutes lettres, 0 overfull). Anselin–Bera–Florax–Yoon (1996) reste cité en toutes lettres via Elhorst : clé absente de `library.bib`, non ajoutée (CLM-19-06 inchangé).
38 +
39 +### ch20 — Réconciliation et incertitude
40 +- Citations : notes Bates–Granger / Granger–Ramanathan et Efron / Efron–Tibshirani → `\textcite{batesGranger1969}`, `\textcite{grangerRamanathan1984}`, `\textcite{efron1979}`, `\textcite{efronTibshirani1993}`.
41 +- Renvois : « chapitre 24 » (×2, tab. 20.x) et « chapitre 16 » (×2, légendes) → `\cref`.
42 +- Index : conclusion de valeur, bruit de transaction.
43 +- Compile : 37 p., 0/0.
44 +
45 +### ch21 — Reproduction et remplacement
46 +- Citation : guide RC4028 → `\parencite{arcRC4028}` ; grille CCQ → `\parencite{ccqSalaires,ccqResidentiel2025}`.
47 +- **Cohérence avec ch23 (propriétaire des sources IPCB/CCQ)** : (a) « la seule région québécoise couverte est Montréal » → Montréal et Québec (séries résidentielles depuis le T1 2023, renvoi au ch. 23), même correction dans `limites` ; (b) « la convention 2025-2029 prévoit 8, 5, 5 et 4 % » → précisé : secteurs IC-I et génie civil ; résidentiel 8 % au 27 juillet 2025 puis arbitrage (renvoi ch. 23). Aucun chiffre du chapitre modifié.
48 +- Renvoi : « exercice~\ref » → `\cref{ex:21:5}`. Index : méthode de l'entrepreneur, méthode du coût, coût de reproduction, coût de remplacement, coûts directs, coûts indirects, incitatif de l'entrepreneur, méthode par composantes, méthode quantitative, IPCB.
49 +- Non fait (hors règle d'or) : ajouter TPS 5 % / TVQ 9,975 % dans l'encadré « Taxes de vente » (suggestion ch23) — à décider par l'auteur.
50 +- Compile : 35 p., 0/0.
51 +
52 +### ch22 — Métrés et quantités
53 +- Citation : CIQS → `\parencite{ciqs}`. Index : métré, bordereau de quantités, prix unitaire installé, économiste en construction, postes mesurés/dénombrés/forfaitaires, taux de pertes et de chutes, métré de contrôle, superficie habitable, aire nette intérieure.
54 +- Non fait : `urldate` de `ccqSalaires` dans `library.bib` (fichier partagé, non modifié) — à faire par l'orchestrateur.
55 +- Compile : 34 p., 0/0.
56 +
57 +### ch23 — Coûts directs et indirects
58 +- Citations : `\parencite{acqFaitsSaillants2025}` (grille IC-I), `\parencite{ccqResidentiel2025}` (27 juillet 2025), `\parencite{arcTauxTPS2025}` (×2 : encadré québécois et `\tabsource` tab. 23.x), `\parencite{quebecGuideParcs2026}` (guide ministériel, ajouté aux clés `lau,loi2023c12`), `\parencite{gcrAccreditation2026}` (frais d'adhésion GCR).
59 +- Index : coûts directs, coûts indirects, incitatif, profit, prix installé, contribution pour fins de parcs, coût de détention, poste, crédits de taxe sur les intrants, intérêts intérimaires.
60 +- Compile : 42 p. (bibliographie allongée), 0/0.
61 +
62 +### ch24 — Dépréciation et désuétudes
63 +- Index : 18 termes (dépréciation, taux de dépréciation, âges et vies, trois familles, carence/surabondance, méthodes âge-vie / modifiée / ventilée, désuétudes de localisation/économique, extraction de marché). Un overfull de 8,1 pt induit par le gras a été éliminé (`\hspace{0pt}` avant « extraction »).
64 +- Renvoi : « exercice~\ref » → `\cref{ex:24:3}`. Compile : 37 p., 0/0.
65 +
66 +### ch25 — Évaluation du terrain
67 +- Renvoi : légende tab. 25.x « chapitre 16 » → `\cref{ch:16}`. Index : comparaison directe, allocation, extraction, technique résiduelle du terrain, méthode du lotissement, bail foncier, emphytéose (3→10).
68 +- Compile : 40 p., 0/0.
69 +
70 +### ch26 — Baux et loyers
71 +- Index : loyer de faveur, loyer de base, loyer additionnel, loyer en pourcentage. `solutions/ch26.tex` : « chapitre 2 », « chapitre 46 » → `\cref`.
72 +- « section 2.5 » dans un `\tabsource` = section du document tarifaire d'Hydro-Québec, laissée telle quelle.
73 +- Compile : 43 p., 0/0.
74 +
75 +### ch27 — Revenus potentiels, vacance et pertes
76 +- Renvois : « chapitres~28 à~31 » → `\crefrange{ch:28}{ch:31}` ; « chapitres~46 et~47 », « chapitres~29, 30, 32, 46 et~47 », « chapitres~29 et~30 », « chapitres~30 et~47 » → `\cref{…}` (rendu vérifié dans le PDF).
77 +- Vocabulaire ch27/ch30/ch47 (« provision pour inoccupation et mauvaises créances », « déficit de loyer », « vacance économique ») : employé de façon compatible ; aucune divergence à corriger.
78 +- Compile : 35 p., 0/0.
79 +
80 +### ch28 — Dépenses, réserves, CAPEX et RNE
81 +- Renvoi fin : « le tableau des taux 2026 du ch. 9 » → `\cref{tab:9:taux}` (rend « tableau 9.3 », caption vérifiée) ; « exercice~\ref » ×2 → `\cref`. Index : état des résultats reconstitué, événement non récurrent.
82 +- Compile : 37 p., 0/0.
83 +
84 +### ch29 — Capitalisation directe
85 +- Renvois : 24 occurrences « chapitre~NN » / « chapitres~NN et~MM » converties en `\cref` (dont « Le \cref{ch:30} … et le \cref{ch:31} » reformulé pour l'accord). Index : rendement courant des fonds propres, moyenne pondérée par le revenu, extraction du taux, construction du taux, prospectif.
86 +- Compile : 35 p., 0/0.
87 +
88 +### ch30 — Flux actualisés et valeur terminale
89 +- **Point du journal (réserve 650 $)** : déjà résolu dans le texte actuel (675 $/logement, 8 103 $, §30.2 et tab. 30.x) ; aucune occurrence de 650 $.
90 +- **Point du journal (CAPEX 2027/2029/2032)** : nature alignée sur le tableau d'inspection du ch. 47 (propriétaire du dossier) : 85 000 $ membrane de toiture (2027), 40 000 $ balcons et escaliers d'acier (2029), 120 000 $ cuisines/salles de bain, plomberie d'alimentation et rejointoiement (2032), avec renvoi au ch. 47 ; l'ancienne description (maçonnerie-balcons / fenêtres / toiture-chauffage) contredisait l'inspection du ch. 47 (fenêtres 2009 et chauffage 2016 en bon état). Phrase « réserve … ne visant que les composantes intérieures » → « composantes à vie courte » (cohérent avec la définition du ch. 28 et la présence des cuisines en CAPEX). Montants et dates inchangés.
91 +- Renvois : `chapitre~\ref{ch:29/31/47}`, `section~\ref{…}` ×2 → `\cref`. Index : flux avant dette et avant impôt, flux après dette, flux après impôt.
92 +- Compile : 37 p., 0/0.
93 +
94 +### ch31 — Financement, levier, RCD et RPV
95 +- Renvoi : `section~\ref{sec:31:pret-max}` → `\cref`. Index : période d'amortissement, terme, levier positif/négatif.
96 +- Débordements restants : 2,9 pt et 8,6 pt (tableaux, < 10 pt, préexistants) — laissés.
97 +- Compile : 34 p., 0/0 non défini.
98 +
99 +### ch32 — Duplex à quintuplex
100 +- **Point du journal (conclusion du ch. 46)** : phrase ajoutée à la fin de l'exemple intégral : le ch. 46 conclut à 920 000 $ (fourchette 870 000–970 000 $) ; écart de 50 000 $ (5,7 %) expliqué par la grille d'ajustements complète (≈ 41 000 $) et le recalcul des taxes 2026 (≈ 4 600 $), multiplicateur identique, reste = arrondi (chiffres repris du ch. 46 §46.x, l. 616). Indication 870 000 $ du ch. 32 inchangée.
101 +- Cohérence interne : dans `limites`, « normalisé … à la date de référence du rôle (1er juillet 2024) » contredisait le reste du chapitre (date de référence du rôle 2025-2027 = 1er juillet 2023) ; libellé corrigé : 1er juillet 2024 = date de normalisation du générateur (`synth.py`), distincte de la date de référence du rôle. Dates et chiffres inchangés.
102 +- Index : éviction. Compile : 40 p., 0 réf. non définie, 1 overfull de 0,5 pt (préexistant).
103 +
104 +## Points non résolus / à l'attention de l'orchestrateur
105 +1. **ch46 (hors lot)** affirme que le ch. 32 « proposait une fourchette de 810 000 $ à 920 000 $ » : aucune occurrence de 810 000 $ dans `ch32.tex` — à vérifier dans le lot du ch. 46.
106 +2. **Journal ch32** : taxes du dossier cas 2 (5 900 $) vs rôle × taux 2026 (5 438 $) et prix indexés ≈ +15 % vs médiane T3 2026 : déjà déclarés dans `limites` du ch. 32 et normalisés poste par poste au ch. 46 ; trancher sur un recalage de `synth.py` changerait tous les chiffres des 127 ventes — non fait (règle d'or).
107 +3. `library.bib` : `urldate` de `ccqSalaires` à passer à 2026-10-31 (suggestion ch22/ch23) ; non modifié ici.
108 +4. `traite/cas3.py` : docstring de `depenses_normalisees` annonce encore « 650 $/logement » (ch29.md) — `traite/` interdit à ce lot.
109 +5. Suggestions de refactorisation des bilans (fonctions à promouvoir dans `traite.finance`/`traite.cout`, `va_ecart_rotation`, `\DeclareSIUnit{\cent}`, `title={#1}` dans le style) : non traitées (hors périmètre forme/cohérence).
110 +6. `references/lib-chNN.bib` du lot : désormais redondants avec `library.bib` ; à supprimer ou à archiver par l'orchestrateur.
modified verification/inventaire.md +226 −222
@@ -1,231 +1,235 @@
1 −# Inventaire (229 scripts, 27 fichiers de données, 3 classeurs, 219 figures)
1 +# Inventaire (233 scripts, 27 fichiers de données, 3 classeurs, 219 figures)
2 2
3 −- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas1.py` — Cas 1 — maison unifamiliale à Gatineau (données synthétiques) : calculs PARTAGÉS par les chapitres 9, 14, 16-2
4 −- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas2.py` — Cas 2 — triplex à Québec, Limoilou (données synthétiques) : calculs PARTAGÉS par les chapitres 26, 27, 32 et 4
5 −- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas3.py` — Cas 3 — immeuble de 12 logements à Montréal (données synthétiques) : calculs PARTAGÉS par les chapitres 26-31,
6 −- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas4.py` — Cas 4 — portefeuille multirésidentiel interrégional (données synthétiques) : calculs PARTAGÉS par les chapitre
3 +- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas1.py` — Cas 1 — maison unifamiliale à Gatineau (données synthétiques) : calculs PARTAGÉS par les chapitres 9, 14…
4 +- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas2.py` — Cas 2 — triplex à Québec, Limoilou (données synthétiques) : calculs PARTAGÉS par les chapitres 26, 27, 32 et…
5 +- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas3.py` — Cas 3 — immeuble de 12 logements à Montréal (données synthétiques) : calculs PARTAGÉS par les chapitres…
6 +- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cas4.py` — Cas 4 — portefeuille multirésidentiel interrégional (données synthétiques) : calculs PARTAGÉS par les…
7 7 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}comparables.py` — Méthode de comparaison : grille d'ajustements, ajustements séquentiels, ventes appariées, réconciliation.
8 8 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}cout.py` — Méthode du coût : coût neuf, dépréciation (physique, fonctionnelle, externe), extraction de marché.
9 9 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}finance.py` — Mathématiques financières de l'évaluation immobilière (conventions déclarées).
10 10 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}geo.py` — Outils géospatiaux génériques du traité (chapitre 38 ; réutilisables aux chapitres 43 et 48).
11 11 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}hedonique.py` — Outils économétriques : hédonique semi-log, indices (dummies temporelles, ventes répétées BMN / Case–Shiller),
12 −- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}panel.py` — Données de panel et identification causale (chapitre 36) : transformation within, erreurs-types en grappes (CR
12 +- module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}panel.py` — Données de panel et identification causale (chapitre 36) : transformation within, erreurs-types en grappes…
13 13 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}style.py` — Style graphique du traité (Matplotlib). Palette validée : styles/palette.json.
14 14 - module `analysis/\allowbreak{}python/\allowbreak{}traite/\allowbreak{}synth.py` — Génération des quatre dossiers de cas SYNTHÉTIQUES du traité.
15 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch01\_valeur\_prix.py` — Chapitre 1 — Théorie de la valeur et prix immobiliers : tous les chiffres cités dans le texte (DONNÉES SYNTHÉT
16 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch02\_droits.py` — Chapitre 2 — Droits immobiliers et bases de valeur : calculs de l'exemple intégral sur le cas 3 (12 logements,
17 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch03\_cycles.py` — Chapitre 3 — Offre, demande et cycles : calculs de l'exemple intégral et des tableaux.
18 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch04\_marches.py` — Chapitre 4 — Marchés résidentiels québécois : lecture des DONNÉES RÉELLES de data/raw et calculs cités dans le
19 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch05\_rente.py` — Chapitre 5 — Économie urbaine et rente foncière : calculs de l'exemple intégral et des encadrés.
20 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch06\_demembrements.py` — Chapitre 6 — Code civil et droit immobilier : effets des modalités et démembrements du droit de propriété sur
21 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch07\_servitudes\_copro.py` — Chapitre 7 — Cadastre, titres, servitudes et copropriété : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine 202
22 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch08\_zonage.py` — Chapitre 8 — Zonage et urbanisme : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral.
23 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch09\_ratios.py` — Chapitre 9 — Évaluation foncière municipale et contestation (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031).
24 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_controle\_rapport.py` — Chapitre 10 — contrôle automatique de la présence des douze éléments du contenu minimal d'un rapport écrit
25 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_matrice\_normes.py` — Chapitre 10 — statistiques descriptives de la matrice des dispositions normatives du domaine C
26 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch11\_inspection.py` — Chapitre 11 — inspection synthétique du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) : fiche d'état par
27 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch12\_mesurage.py` — Chapitre 12 — Mesurage, superficies et plans : calculs du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES).
28 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch13\_sources.py` — Chapitre 13 — Transactions, inscriptions, loyers et coûts : lecture et description des fichiers RÉELS de data/
29 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch14\_nettoyage.py` — Chapitre 14 — Nettoyage, géocodage et qualité des données (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES).
30 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch15\_segmentation.py` — Chapitre 15 — Études de marché et segmentation. Calculs de l'exemple intégral et des tableaux du chapitre.
31 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch16\_selection.py` — Chapitre 16 — sélection des comparables pour le sujet du cas 1 (Gatineau, données synthétiques).
32 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch17\_ajustements.py` — Chapitre 17 — ajustements qualitatifs et quantitatifs des cinq comparables du cas 1 (Gatineau, données synthét
33 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch18\_hedonique.py` — Chapitre 18 — Modèles hédoniques : exemple intégral sur les 600 ventes du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUE
34 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch19\_spatial.py` — Chapitre 19 — modèles spatiaux et temporels sur le cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031).
35 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch20\_reconciliation.py` — Chapitre 20 — réconciliation et incertitude : combinaison des indications du cas 1 (Gatineau, données synthéti
36 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch21\_cout\_neuf.py` — Chapitre 21 — coût neuf (remplacement) du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) et indexation IPCB (
37 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch22\_metre.py` — Chapitre 22 — métré et quantités du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES).
38 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch23\_structure\_couts.py` — Chapitre 23 — coûts directs et indirects : structure complète du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTI
39 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch24\_depreciation.py` — Chapitre 24 — dépréciation et désuétudes du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES).
40 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch25\_terrain.py` — Chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031).
41 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch26\_etat\_locatif.py` — Chapitre 26 — Baux et loyers : calculs de l'exemple intégral (cas 3, 12 logements à Montréal ; cas 2, triplex
42 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch27\_revenus.py` — Chapitre 27 — Revenus potentiels, vacance et pertes : calculs du cas 3 (12 logements, Rosemont) et du cas 2 (t
43 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch28\_depenses.py` — Chapitre 28 — Dépenses, réserves, CAPEX et RNE : calculs du cas 3 (12 logements, Rosemont) et du cas 2 (triple
44 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch29\_capitalisation.py` — Chapitre 29 — Capitalisation directe : calculs du cas 3 (12 logements, Rosemont ; DONNÉES SYNTHÉTIQUES).
45 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch30\_dcf.py` — Chapitre 30 — Flux actualisés et valeur terminale : exemple intégral du cas 3 (12 logements, Montréal,
46 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch31\_financement.py` — Chapitre 31 — Financement, levier, RCD et RPV : calculs du chapitre (cas 3, 12 logements, Montréal,
47 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch32\_plex.py` — Chapitre 32 — Duplex à quintuplex : calculs de l'exemple intégral (cas 2, triplex de Limoilou, données SYNTHÉT
48 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch33\_six\_logements.py` — Chapitre 33 — Immeubles de six logements et plus : tous les chiffres cités dans manuscript/chapters/ch33.tex
49 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch34\_tal.py` — Chapitre 34 — TAL, encadrement locatif et scénarios : calculs du chapitre (cas 3, 12 logements, Montréal,
50 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch35\_indices.py` — Chapitre 35 — Indices immobiliers et ventes répétées : exemple intégral sur le cas 1 (Gatineau, DONNÉES SYNTHÉ
51 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch36\_panel.py` — Chapitre 36 — Données de panel et identification causale : choc simulé sur les séries de RNE du cas 4
52 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch37\_ml.py` — Chapitre 37 — Apprentissage automatique et explicabilité : exemple intégral sur les 600 ventes du cas 1
53 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch38\_sig.py` — Chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES SYNTHÉTIQUES, graine 2
54 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch39\_bayes.py` — Chapitre 39 — Modèles bayésiens et intervalles : exemple intégral sur les 600 ventes du cas 1 (Gatineau, DONNÉ
55 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch40\_montecarlo.py` — Chapitre 40 — Monte-Carlo et stress tests (DONNÉES SYNTHÉTIQUES : cas 3, 12 logements à Montréal ; cas 4, port
56 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch41\_phmu.py` — Chapitre 41 — Plus haute et meilleure utilisation, terrains et développement : calculs de l'exemple intégral.
57 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch42\_copro.py` — Chapitre 42 — Copropriétés et conversions : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine 20261031).
58 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch43\_risques.py` — Chapitre 43 — Risques environnementaux et sinistres : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral.
59 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch44\_renovation.py` — Chapitre 44 — rénovation et efficacité énergétique : analyse coût-bénéfice de deux mesures sur le sujet du cas
60 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch45\_dossier.py` — Chapitre 45 — Cas 1 : maison unifamiliale à Gatineau (DONNÉES SYNTHÉTIQUES, propriété fictive) — dossier compl
61 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch46\_dossier.py` — Chapitre 46 — Cas 2 : triplex à Québec (Limoilou), dossier complet (DONNÉES SYNTHÉTIQUES, graine 20261031).
62 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch47\_dossier.py` — Chapitre 47 — Cas 3 : immeuble de 12 logements à Montréal (DONNÉES SYNTHÉTIQUES, immeuble fictif).
63 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch48\_portefeuille.py` — Chapitre 48 — Cas 4 : portefeuille multirésidentiel interrégional (DONNÉES SYNTHÉTIQUES, 48 immeubles fictifs,
64 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}generate\_all.py` — Régénère tous les jeux synthétiques (graine fixée). Usage : python3 -m analysis.python.cases.generate\_all (de
65 −- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}make\_spreadsheets.py` — Classeurs Excel du traité (openpyxl, formules vivantes) : spreadsheets/
66 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch01\_figures.py` — Figures du chapitre 1 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031 ; simulations étiquetées).
67 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_decomposition.py` — Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) revenu net d'exploitation projeté avec les baux en place (dro
68 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_ecart\_logements.py` — Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) ratio loyer contractuel / loyer de marché selon l'ancienneté
69 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_cout\_usage.py` — Figure ch03 — Coût d'usage du logement au Québec, 2001-2026, données RÉELLES (Banque du Canada, Valet : V80691
70 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_cycle.py` — Figures ch03 — Simulation d'un cycle stock-flux (SYNTHÉTIQUE, analysis/python/cases/ch03\_cycles.py, paramètre
71 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_mises\_chantier.py` — Figure ch03 — Mises en chantier au Québec, données RÉELLES : Statistique Canada (SCHL), tableau 34-10-0135-01,
72 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_quadrants.py` — Figure ch03 — Modèle des quatre quadrants (DiPasquale–Wheaton) tracé à partir des paramètres pédagogiques du m
73 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_carte.py` — Figure ch04 — carte schématique des six RMR du Québec : position des centres (coordonnées de la Base de donnée
74 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_ipln.py` — Figure ch04 — Indice des prix des logements neufs (IPLN), total maison et terrain, déc. 2016 = 100, janvier 20
75 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_mutations.py` — Figure ch04 — taux effectif des droits sur les mutations immobilières (droit / base d'imposition) selon la bas
76 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_parc.py` — Figure ch04 — structure du parc de logements : ménages privés selon le type de construction, Québec et Canada
77 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_schl.py` — Figure ch04 — marché locatif par RMR : taux d'inoccupation (octobre 2024 et 2025) et loyer moyen des logements
78 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_taux.py` — Figure ch04 — taux d'intérêt 2000-2026 : taux hypothécaire conventionnel 5 ans affiché (V80691335, hebdomadair
79 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_capitalisation.py` — Figure ch05 — sensibilité de la capitalisation d'un écart de taxe foncière : perte de valeur (en \% de la vale
80 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_cas1\_distance.py` — Figure ch05 — prix par mètre carré habitable et distance au centre, cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, gra
81 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_gradient.py` — Figure ch05 — gradients du modèle monocentrique simulé (PARAMÈTRES PÉDAGOGIQUES DÉCLARÉS dans ch05\_rente.PARA
82 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_rmr.py` — Figure ch05 — valeur par logement par RMR du portefeuille du cas 4 (DONNÉES SYNTHÉTIQUES, graine 20261031) et
83 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_surface.py` — Figure ch05 — surface de rente bicentrique simulée (courbes de niveau) : enveloppe de deux surfaces d'enchère
84 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_emphyteose.py` — Figure ch06 — emphytéose sur un immeuble locatif dont le RNE est celui du cas 3 (DONNÉES SYNTHÉTIQUES, hypothè
85 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_usufruit.py` — Figure ch06 — usufruit viager sur la maison du cas 1 (DONNÉES SYNTHÉTIQUES, table de mortalité synthétique) :
86 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_charges.py` — Figure ch07 — répartition des charges communes annuelles entre les huit fractions (DONNÉES SYNTHÉTIQUES).
87 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_fonds.py` — Figure ch07 — trajectoire du fonds de prévoyance sur 25 ans selon trois cotisations (DONNÉES SYNTHÉTIQUES).
88 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_paires.py` — Figure ch07 — ventes appariées : prix sans et avec servitude de passage pour 12 paires (DONNÉES SYNTHÉTIQUES,
89 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_sensibilite.py` — Figure ch07 — sensibilité de la cotisation de seuil A* à l'inflation des coûts et au rendement du fonds (DONNÉ
90 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_carte\_zones.py` — Figure ch08 — carte synthétique des zones de « Val-Fictif » (DONNÉES SYNTHÉTIQUES) : 400 lots, cinq zones,
91 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_option\_sensibilite.py` — Figure ch08 — sensibilité des effets de valeur du zonage (DONNÉES SYNTHÉTIQUES / hypothèses déclarées) :
92 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_rezonage\_paires.py` — Figure ch08 — effet d'un rezonage mesuré par ventes appariées et par doubles différences (DONNÉES SYNTHÉTIQUES
93 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch09\_ratios.py` — Figures du chapitre 9 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031) :
94 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch10\_figures.py` — Chapitre 10 — figures Matplotlib :
95 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_fiche\_etat.py` — Figures ch11 — (1) fiche d'état du sujet du cas 1 : fraction de vie utile consommée a\_eff/L par composante, c
96 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_frise\_pathologies.py` — Figure ch11 — frise INDICATIVE des pathologies et matériaux à risque selon la période de construction (Québec)
97 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_matrice\_age\_effectif.py` — Figure ch11 — matrice état × âge chronologique → âge effectif (convention déclarée de l'ouvrage, chapitre 11).
98 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch12\_figures.py` — Figures du chapitre 12 (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) :
99 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_biais\_datation.py` — Figure ch13 — biais relatif de l'ajustement de conditions du marché lorsqu'une vente est datée à l'acte notari
100 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_indices.py` — Figure ch13 — trois indices souvent confondus, données RÉELLES de data/raw, rebasés T1 2017 = 100 :
101 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_rfu.py` — Figure ch13 — composition de l'évaluation imposable uniformisée 2026 (MAMH, richesse foncière uniformisée, CC
102 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_schl.py` — Figure ch13 — SCHL, Enquête sur les logements locatifs d'octobre 2025 (données RÉELLES, fichier rmr-quebec-202
103 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch14\_figures.py` — Chapitre 14 — figures (données SYNTHÉTIQUES, graine 20261031). Idempotent.
104 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch15\_figures.py` — Figures du chapitre 15 — Études de marché et segmentation. Produit dans assets/figures/ch15/ :
105 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch17\_figures.py` — Chapitre 17 — figures : cascade d'ajustements (G0404), dispersion des paires, prix bruts vs ajustés, tornade d
106 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch18\_figures.py` — Figures du chapitre 18 — Modèles hédoniques (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031).
107 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch19\_figures.py` — Figures du chapitre 19 — modèles spatiaux et temporels (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031
108 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch20\_figures.py` — Chapitre 20 — figures : densités bootstrap et énumération exhaustive ; résidus des candidats et élargissement
109 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_decomposition.py` — Figure ch21 — décomposition du coût neuf du sujet du cas 1 par corps de métier (DONNÉES SYNTHÉTIQUES, graine 2
110 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_ipcb.py` — Figure ch21 — IPCB Montréal (Statistique Canada, tableau 18-10-0289-01, base 2023 = 100), données RÉELLES lues
111 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_sensibilite.py` — Figure ch21 — sensibilité du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES) : (a) grille taux d'indirects
112 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_ecarts.py` — Figure ch22 — métré de contrôle du sujet du cas 1 : écart relatif entre la quantité recalculée depuis le plan
113 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_repartition.py` — Figure ch22 — répartition du devis du sujet du cas 1 par corps de métier et par type d'unité de mesure
114 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_ipcb\_divisions.py` — Figure ch23 — IPCB Montréal, maison individuelle, par division de travaux (Statistique Canada 18-10-0289-01),
115 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_ipcb\_types.py` — Figure ch23 — IPCB (Statistique Canada 18-10-0289-01, 2023 = 100), données RÉELLES lues dans data/raw :
116 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_sensibilite.py` — Figure ch23 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1 ; taux documenté Banque du Canada V80691335) :
117 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_structure.py` — Figure ch23 — cascade de formation du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine 20261031) :
118 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_composantes.py` — Figure ch24 — composantes de courte durée du sujet du cas 1 : coût neuf et dépréciation ventilée par composant
119 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_courbes.py` — Figure ch24 — courbes de dépréciation du bâtiment en fonction de l'âge (DONNÉES SYNTHÉTIQUES, cas 1, graine 20
120 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_decomposition.py` — Figure ch24 — décomposition de la valeur par le coût du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine 20261031)
121 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_sensibilite.py` — Figure ch24 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) : (a) taux de dépréciation âge-vie mo
122 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch25\_figures.py` — Figures du chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031).
123 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch26\_figures.py` — Chapitre 26 — figures (4) : loyer contractuel vs loyer de marché par logement (cas 3), distribution de l'ancie
124 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch27\_figures.py` — Chapitre 27 — figures (4) :
125 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch28\_figures.py` — Chapitre 28 — figures (5) : cascade RBP → RNE (cas 3) ; structure des dépenses en \% du RBE (cas 3 vs cas 2) ;
126 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch29\_figures.py` — Chapitre 29 — figures (5) : taux extraits (histogramme), taux vs état/taille (nuage), surface V(RNE, R) (carte
127 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_flux.py` — Ch. 30, figure « flux » : RNE, CAPEX et flux net avant dette (barres) du cas 3 (DONNÉES SYNTHÉTIQUES), puis va
128 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_gdc.py` — Ch. 30, figure « gdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31) : rendements
129 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_loyers.py` — Ch. 30, figure « loyers » : trajectoire du revenu brut potentiel contractuel (indexé au taux TAL + relocation
130 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_surface.py` — Ch. 30, figure « surface » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) selon le taux d'actualisation r (ligne
131 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_tornade.py` — Ch. 30, figure « tornade » : variation de la valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour un choc bas/haut
132 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_levier.py` — Ch. 31, figure « levier » (DONNÉES SYNTHÉTIQUES, cas 3) : TRI des fonds propres sur dix ans et rendement coura
133 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_service\_dette.py` — Ch. 31, figure « service-dette » (DONNÉES SYNTHÉTIQUES, cas 3) : service de la dette annuel du prêt de 1 475 9
134 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_solde.py` — Ch. 31, figure « solde » (DONNÉES SYNTHÉTIQUES, cas 3) : trajectoire du solde du prêt de 1 475 959 \$ à 4,12 \
135 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_taux\_bdc.py` — Ch. 31, figure « taux-bdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31) : taux
136 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch32\_figures.py` — Figures du chapitre 32 — Duplex à quintuplex (données SYNTHÉTIQUES du cas 2, sauf la figure des médianes APCIQ
137 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch33\_figures.py` — Chapitre 33 — figures (4) : (1) SCHL, île de Montréal, loyers et inoccupation par taille d'immeuble et par ann
138 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_calcul\_tal.py` — Ch. 34, figure « exemple de calcul TAL » : composantes de l'augmentation mensuelle du logement 103 du cas 3 (D
139 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_ipc\_base.py` — Ch. 34, figure « IPC et pourcentage de base » (DONNÉES RÉELLES : Statistique Canada, tableau 18-10-0004-01, IP
140 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_rotation.py` — Ch. 34, figure « rotation espérée » : (gauche) rapport espéré loyer contractuel / loyer de marché d'un logemen
141 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_trajectoires.py` — Ch. 34, figure « trajectoires RBP » : revenu brut potentiel contractuel du cas 3 (DONNÉES SYNTHÉTIQUES) selon
142 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_valeur\_scenarios.py` — Ch. 34, figure « valeur par scénario » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour la grille rotation (5
143 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch35\_figures.py` — Figures du chapitre 35 — Indices immobiliers et ventes répétées.
144 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch36\_figures.py` — Figures du chapitre 36 — données de panel et identification causale (cas 4, DONNÉES SYNTHÉTIQUES, graine 20261
145 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch37\_figures.py` — Figures du chapitre 37 — Apprentissage automatique et explicabilité (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, gr
146 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch38\_figures.py` — Figures du chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES SYNTHÉTIQUE
147 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch39\_figures.py` — Figures du chapitre 39 — Modèles bayésiens et intervalles (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261
148 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch40\_figures.py` — Chapitre 40 — figures (DONNÉES SYNTHÉTIQUES : cas 3 et cas 4, graine 20261031).
149 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch41\_figures.py` — Figures du chapitre 41 (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF ; hypothèses déclarées dans ch41\_phmu.p
150 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_bloc\_piece.py` — Figure ch42 — valeur de conversion (somme des fractions nette des coûts, des frais, du portage et des délais)
151 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_cotisation\_speciale.py` — Figure ch42 — charges annuelles normalisées des huit fractions (ch. 7) et part de chacune dans une cotisation
152 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_grille.py` — Figure ch42 — grille de comparaison de la fraction F4 : prix observé, prix ajusté et décomposition des ajustem
153 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_medianes.py` — Figure ch42 — prix médians Centris des copropriétés et des unifamiliales par territoire, T3 2026 (DONNÉES RÉEL
154 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_carte\_cas4.py` — Figure ch43 — carte schématique des 48 immeubles du cas 4 (DONNÉES SYNTHÉTIQUES, coordonnées fictives autour d
155 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_carte\_riverain.py` — Figure ch43 — municipalité fictive de Rivière-Fictive (DONNÉES SYNTHÉTIQUES) : 625 lots, classes d'exposition
156 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_did\_cas4.py` — Figure ch43 — doubles différences sur les séries de RNE du cas 4 avec choc d'inondation injecté en 2019 (DONNÉ
157 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_effets\_methodes.py` — Figure ch43 — décote d'une zone inondable mesurée par quatre méthodes sur les ventes de Rivière-Fictive (DONNÉ
158 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_placebos.py` — Figure ch43 — inférence de randomisation exacte pour le DiD du cas 4 (DONNÉES SYNTHÉTIQUES) : distribution des
159 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_capitalisation.py` — Figure ch44 — (a) quatre lectures de ce que la thermopompe « vaut » pour le sujet du cas 1 : coût installé, co
160 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_flux.py` — Figure ch44 — flux annuels des deux mesures énergétiques du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, hypothèses d
161 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_heatmap\_van.py` — Figure ch44 — VAN des deux mesures selon le taux d'actualisation et la croissance du prix de l'électricité
162 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_prime\_verte.py` — Figure ch44 — la « prime verte » dans la littérature : fourchettes publiées par étude (valeurs vérifiées, voir
163 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch45\_figures.py` — Chapitre 45 — figures du dossier (cas 1, DONNÉES SYNTHÉTIQUES) : carte des comparables, cascade des ajustement
164 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch46\_figures.py` — Chapitre 46 — figures du dossier « triplex à Québec » (DONNÉES SYNTHÉTIQUES, graine 20261031).
165 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch47\_dossier\_figures.py` — Chapitre 47 — figures du dossier « 12 logements à Montréal » (DONNÉES SYNTHÉTIQUES, graine 20261031).
166 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch48\_portefeuille\_figures.py` — Chapitre 48 — figures du dossier « portefeuille multirésidentiel interrégional » (DONNÉES SYNTHÉTIQUES, graine
167 −- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}run\_all.py` — Exécute tous les scripts de figures (analysis/python/figures/chNN\_*.py) et les scripts R (analysis/r/chNN\_*.
15 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch01\_\allowbreak{}valeur\_\allowbreak{}prix.py` — Chapitre 1 — Théorie de la valeur et prix immobiliers : tous les chiffres cités dans le texte (DONNÉES…
16 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch02\_\allowbreak{}droits.py` — Chapitre 2 — Droits immobiliers et bases de valeur : calculs de l'exemple intégral sur le cas 3 (12…
17 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch03\_\allowbreak{}cycles.py` — Chapitre 3 — Offre, demande et cycles : calculs de l'exemple intégral et des tableaux.
18 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch04\_\allowbreak{}marches.py` — Chapitre 4 — Marchés résidentiels québécois : lecture des DONNÉES RÉELLES de data/raw et calculs cités dans…
19 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch05\_\allowbreak{}rente.py` — Chapitre 5 — Économie urbaine et rente foncière : calculs de l'exemple intégral et des encadrés.
20 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch06\_\allowbreak{}demembrements.py` — Chapitre 6 — Code civil et droit immobilier : effets des modalités et démembrements du droit de propriété sur…
21 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch07\_\allowbreak{}servitudes\_\allowbreak{}copro.py` — Chapitre 7 — Cadastre, titres, servitudes et copropriété : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine…
22 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch08\_\allowbreak{}zonage.py` — Chapitre 8 — Zonage et urbanisme : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral.
23 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch09\_\allowbreak{}ratios.py` — Chapitre 9 — Évaluation foncière municipale et contestation (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031).
24 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_\allowbreak{}controle\_\allowbreak{}rapport.py` — Chapitre 10 — contrôle automatique de la présence des douze éléments du contenu minimal d'un rapport écrit
25 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch10\_\allowbreak{}matrice\_\allowbreak{}normes.py` — Chapitre 10 — statistiques descriptives de la matrice des dispositions normatives du domaine C
26 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch11\_\allowbreak{}inspection.py` — Chapitre 11 — inspection synthétique du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) : fiche d'état par
27 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch12\_\allowbreak{}mesurage.py` — Chapitre 12 — Mesurage, superficies et plans : calculs du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES).
28 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch13\_\allowbreak{}sources.py` — Chapitre 13 — Transactions, inscriptions, loyers et coûts : lecture et description des fichiers RÉELS de…
29 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch14\_\allowbreak{}nettoyage.py` — Chapitre 14 — Nettoyage, géocodage et qualité des données (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES).
30 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch15\_\allowbreak{}segmentation.py` — Chapitre 15 — Études de marché et segmentation. Calculs de l'exemple intégral et des tableaux du chapitre.
31 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch16\_\allowbreak{}selection.py` — Chapitre 16 — sélection des comparables pour le sujet du cas 1 (Gatineau, données synthétiques).
32 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch17\_\allowbreak{}ajustements.py` — Chapitre 17 — ajustements qualitatifs et quantitatifs des cinq comparables du cas 1 (Gatineau, données…
33 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch18\_\allowbreak{}hedonique.py` — Chapitre 18 — Modèles hédoniques : exemple intégral sur les 600 ventes du cas 1 (Gatineau, DONNÉES…
34 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch19\_\allowbreak{}spatial.py` — Chapitre 19 — modèles spatiaux et temporels sur le cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031).
35 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch20\_\allowbreak{}reconciliation.py` — Chapitre 20 — réconciliation et incertitude : combinaison des indications du cas 1 (Gatineau, données…
36 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch21\_\allowbreak{}cout\_\allowbreak{}neuf.py` — Chapitre 21 — coût neuf (remplacement) du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) et indexation IPCB…
37 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch22\_\allowbreak{}metre.py` — Chapitre 22 — métré et quantités du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES).
38 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch23\_\allowbreak{}structure\_\allowbreak{}couts.py` — Chapitre 23 — coûts directs et indirects : structure complète du coût neuf du sujet du cas 1 (DONNÉES…
39 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch24\_\allowbreak{}depreciation.py` — Chapitre 24 — dépréciation et désuétudes du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES).
40 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch25\_\allowbreak{}terrain.py` — Chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031).
41 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch26\_\allowbreak{}etat\_\allowbreak{}locatif.py` — Chapitre 26 — Baux et loyers : calculs de l'exemple intégral (cas 3, 12 logements à Montréal ; cas 2, triplex…
42 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch27\_\allowbreak{}revenus.py` — Chapitre 27 — Revenus potentiels, vacance et pertes : calculs du cas 3 (12 logements, Rosemont) et du cas 2…
43 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch28\_\allowbreak{}depenses.py` — Chapitre 28 — Dépenses, réserves, CAPEX et RNE : calculs du cas 3 (12 logements, Rosemont) et du cas 2…
44 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch29\_\allowbreak{}capitalisation.py` — Chapitre 29 — Capitalisation directe : calculs du cas 3 (12 logements, Rosemont ; DONNÉES SYNTHÉTIQUES).
45 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch30\_\allowbreak{}dcf.py` — Chapitre 30 — Flux actualisés et valeur terminale : exemple intégral du cas 3 (12 logements, Montréal,
46 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch31\_\allowbreak{}financement.py` — Chapitre 31 — Financement, levier, RCD et RPV : calculs du chapitre (cas 3, 12 logements, Montréal,
47 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch32\_\allowbreak{}plex.py` — Chapitre 32 — Duplex à quintuplex : calculs de l'exemple intégral (cas 2, triplex de Limoilou, données…
48 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch33\_\allowbreak{}six\_\allowbreak{}logements.py` — Chapitre 33 — Immeubles de six logements et plus : tous les chiffres cités dans manuscript/chapters/ch33.tex
49 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch34\_\allowbreak{}tal.py` — Chapitre 34 — TAL, encadrement locatif et scénarios : calculs du chapitre (cas 3, 12 logements, Montréal,
50 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch35\_\allowbreak{}indices.py` — Chapitre 35 — Indices immobiliers et ventes répétées : exemple intégral sur le cas 1 (Gatineau, DONNÉES…
51 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch36\_\allowbreak{}panel.py` — Chapitre 36 — Données de panel et identification causale : choc simulé sur les séries de RNE du cas 4
52 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch37\_\allowbreak{}ml.py` — Chapitre 37 — Apprentissage automatique et explicabilité : exemple intégral sur les 600 ventes du cas 1
53 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch38\_\allowbreak{}sig.py` — Chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES SYNTHÉTIQUES, graine…
54 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch39\_\allowbreak{}bayes.py` — Chapitre 39 — Modèles bayésiens et intervalles : exemple intégral sur les 600 ventes du cas 1 (Gatineau…
55 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch40\_\allowbreak{}montecarlo.py` — Chapitre 40 — Monte-Carlo et stress tests (DONNÉES SYNTHÉTIQUES : cas 3, 12 logements à Montréal ; cas 4…
56 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch41\_\allowbreak{}phmu.py` — Chapitre 41 — Plus haute et meilleure utilisation, terrains et développement : calculs de l'exemple intégral.
57 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch42\_\allowbreak{}copro.py` — Chapitre 42 — Copropriétés et conversions : exemples chiffrés (DONNÉES SYNTHÉTIQUES, graine 20261031).
58 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch43\_\allowbreak{}risques.py` — Chapitre 43 — Risques environnementaux et sinistres : DONNÉES SYNTHÉTIQUES et calculs de l'exemple intégral.
59 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch44\_\allowbreak{}renovation.py` — Chapitre 44 — rénovation et efficacité énergétique : analyse coût-bénéfice de deux mesures sur le sujet du…
60 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch45\_\allowbreak{}dossier.py` — Chapitre 45 — Cas 1 : maison unifamiliale à Gatineau (DONNÉES SYNTHÉTIQUES, propriété fictive) — dossier…
61 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch46\_\allowbreak{}dossier.py` — Chapitre 46 — Cas 2 : triplex à Québec (Limoilou), dossier complet (DONNÉES SYNTHÉTIQUES, graine 20261031).
62 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch47\_\allowbreak{}dossier.py` — Chapitre 47 — Cas 3 : immeuble de 12 logements à Montréal (DONNÉES SYNTHÉTIQUES, immeuble fictif).
63 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}ch48\_\allowbreak{}portefeuille.py` — Chapitre 48 — Cas 4 : portefeuille multirésidentiel interrégional (DONNÉES SYNTHÉTIQUES, 48 immeubles…
64 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}generate\_\allowbreak{}all.py` — Régénère tous les jeux synthétiques (graine fixée). Usage : python3 -m analysis.python.cases.generate\_all…
65 +- calcul `analysis/\allowbreak{}python/\allowbreak{}cases/\allowbreak{}make\_\allowbreak{}spreadsheets.py` — Classeurs Excel du traité (openpyxl, formules vivantes) : spreadsheets/
66 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch01\_\allowbreak{}figures.py` — Figures du chapitre 1 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031 ; simulations étiquetées).
67 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_\allowbreak{}decomposition.py` — Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) revenu net d'exploitation projeté avec les baux en place…
68 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch02\_\allowbreak{}ecart\_\allowbreak{}logements.py` — Figure ch02 — cas 3 (DONNÉES SYNTHÉTIQUES) : (a) ratio loyer contractuel / loyer de marché selon l'ancienneté…
69 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}cout\_\allowbreak{}usage.py` — Figure ch03 — Coût d'usage du logement au Québec, 2001-2026, données RÉELLES (Banque du Canada, Valet…
70 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}cycle.py` — Figures ch03 — Simulation d'un cycle stock-flux (SYNTHÉTIQUE, analysis/python/cases/ch03\_cycles.py…
71 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}mises\_\allowbreak{}chantier.py` — Figure ch03 — Mises en chantier au Québec, données RÉELLES : Statistique Canada (SCHL), tableau 34-10-0135-01,
72 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch03\_\allowbreak{}quadrants.py` — Figure ch03 — Modèle des quatre quadrants (DiPasquale–Wheaton) tracé à partir des paramètres pédagogiques du…
73 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}carte.py` — Figure ch04 — carte schématique des six RMR du Québec : position des centres (coordonnées de la Base de…
74 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}ipln.py` — Figure ch04 — Indice des prix des logements neufs (IPLN), total maison et terrain, déc. 2016 = 100, janvier…
75 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}mutations.py` — Figure ch04 — taux effectif des droits sur les mutations immobilières (droit / base d'imposition) selon la…
76 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}parc.py` — Figure ch04 — structure du parc de logements : ménages privés selon le type de construction, Québec et Canada…
77 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}schl.py` — Figure ch04 — marché locatif par RMR : taux d'inoccupation (octobre 2024 et 2025) et loyer moyen des…
78 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch04\_\allowbreak{}taux.py` — Figure ch04 — taux d'intérêt 2000-2026 : taux hypothécaire conventionnel 5 ans affiché (V80691335…
79 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}capitalisation.py` — Figure ch05 — sensibilité de la capitalisation d'un écart de taxe foncière : perte de valeur (en \% de la…
80 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}cas1\_\allowbreak{}distance.py` — Figure ch05 — prix par mètre carré habitable et distance au centre, cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES…
81 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}gradient.py` — Figure ch05 — gradients du modèle monocentrique simulé (PARAMÈTRES PÉDAGOGIQUES DÉCLARÉS dans…
82 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}rmr.py` — Figure ch05 — valeur par logement par RMR du portefeuille du cas 4 (DONNÉES SYNTHÉTIQUES, graine 20261031) et
83 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch05\_\allowbreak{}surface.py` — Figure ch05 — surface de rente bicentrique simulée (courbes de niveau) : enveloppe de deux surfaces d'enchère
84 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_\allowbreak{}emphyteose.py` — Figure ch06 — emphytéose sur un immeuble locatif dont le RNE est celui du cas 3 (DONNÉES SYNTHÉTIQUES…
85 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch06\_\allowbreak{}usufruit.py` — Figure ch06 — usufruit viager sur la maison du cas 1 (DONNÉES SYNTHÉTIQUES, table de mortalité synthétique) :
86 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}charges.py` — Figure ch07 — répartition des charges communes annuelles entre les huit fractions (DONNÉES SYNTHÉTIQUES).
87 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}fonds.py` — Figure ch07 — trajectoire du fonds de prévoyance sur 25 ans selon trois cotisations (DONNÉES SYNTHÉTIQUES).
88 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}paires.py` — Figure ch07 — ventes appariées : prix sans et avec servitude de passage pour 12 paires (DONNÉES SYNTHÉTIQUES…
89 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch07\_\allowbreak{}sensibilite.py` — Figure ch07 — sensibilité de la cotisation de seuil A* à l'inflation des coûts et au rendement du fonds…
90 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_\allowbreak{}carte\_\allowbreak{}zones.py` — Figure ch08 — carte synthétique des zones de « Val-Fictif » (DONNÉES SYNTHÉTIQUES) : 400 lots, cinq zones,
91 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_\allowbreak{}option\_\allowbreak{}sensibilite.py` — Figure ch08 — sensibilité des effets de valeur du zonage (DONNÉES SYNTHÉTIQUES / hypothèses déclarées) :
92 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch08\_\allowbreak{}rezonage\_\allowbreak{}paires.py` — Figure ch08 — effet d'un rezonage mesuré par ventes appariées et par doubles différences (DONNÉES…
93 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch09\_\allowbreak{}ratios.py` — Figures du chapitre 9 (DONNÉES SYNTHÉTIQUES du cas 1, graine 20261031) :
94 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch10\_\allowbreak{}figures.py` — Chapitre 10 — figures Matplotlib :
95 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_\allowbreak{}fiche\_\allowbreak{}etat.py` — Figures ch11 — (1) fiche d'état du sujet du cas 1 : fraction de vie utile consommée a\_eff/L par composante…
96 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_\allowbreak{}frise\_\allowbreak{}pathologies.py` — Figure ch11 — frise INDICATIVE des pathologies et matériaux à risque selon la période de construction…
97 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch11\_\allowbreak{}matrice\_\allowbreak{}age\_\allowbreak{}effectif.py` — Figure ch11 — matrice état × âge chronologique → âge effectif (convention déclarée de l'ouvrage, chapitre 11).
98 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch12\_\allowbreak{}figures.py` — Figures du chapitre 12 (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) :
99 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}biais\_\allowbreak{}datation.py` — Figure ch13 — biais relatif de l'ajustement de conditions du marché lorsqu'une vente est datée à l'acte…
100 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}indices.py` — Figure ch13 — trois indices souvent confondus, données RÉELLES de data/raw, rebasés T1 2017 = 100 :
101 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}rfu.py` — Figure ch13 — composition de l'évaluation imposable uniformisée 2026 (MAMH, richesse foncière uniformisée, CC…
102 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch13\_\allowbreak{}schl.py` — Figure ch13 — SCHL, Enquête sur les logements locatifs d'octobre 2025 (données RÉELLES, fichier…
103 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch14\_\allowbreak{}figures.py` — Chapitre 14 — figures (données SYNTHÉTIQUES, graine 20261031). Idempotent.
104 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch15\_\allowbreak{}figures.py` — Figures du chapitre 15 — Études de marché et segmentation. Produit dans assets/figures/ch15/ :
105 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch17\_\allowbreak{}figures.py` — Chapitre 17 — figures : cascade d'ajustements (G0404), dispersion des paires, prix bruts vs ajustés, tornade…
106 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch18\_\allowbreak{}figures.py` — Figures du chapitre 18 — Modèles hédoniques (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine 20261031).
107 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch19\_\allowbreak{}figures.py` — Figures du chapitre 19 — modèles spatiaux et temporels (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine…
108 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch20\_\allowbreak{}figures.py` — Chapitre 20 — figures : densités bootstrap et énumération exhaustive ; résidus des candidats et élargissement…
109 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_\allowbreak{}decomposition.py` — Figure ch21 — décomposition du coût neuf du sujet du cas 1 par corps de métier (DONNÉES SYNTHÉTIQUES, graine…
110 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_\allowbreak{}ipcb.py` — Figure ch21 — IPCB Montréal (Statistique Canada, tableau 18-10-0289-01, base 2023 = 100), données RÉELLES…
111 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch21\_\allowbreak{}sensibilite.py` — Figure ch21 — sensibilité du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES) : (a) grille taux d'indirects…
112 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_\allowbreak{}ecarts.py` — Figure ch22 — métré de contrôle du sujet du cas 1 : écart relatif entre la quantité recalculée depuis le plan…
113 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch22\_\allowbreak{}repartition.py` — Figure ch22 — répartition du devis du sujet du cas 1 par corps de métier et par type d'unité de mesure
114 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}ipcb\_\allowbreak{}divisions.py` — Figure ch23 — IPCB Montréal, maison individuelle, par division de travaux (Statistique Canada 18-10-0289-01)…
115 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}ipcb\_\allowbreak{}types.py` — Figure ch23 — IPCB (Statistique Canada 18-10-0289-01, 2023 = 100), données RÉELLES lues dans data/raw :
116 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}sensibilite.py` — Figure ch23 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1 ; taux documenté Banque du Canada V80691335) :
117 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch23\_\allowbreak{}structure.py` — Figure ch23 — cascade de formation du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine 20261031) :
118 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}composantes.py` — Figure ch24 — composantes de courte durée du sujet du cas 1 : coût neuf et dépréciation ventilée par…
119 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}courbes.py` — Figure ch24 — courbes de dépréciation du bâtiment en fonction de l'âge (DONNÉES SYNTHÉTIQUES, cas 1, graine…
120 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}decomposition.py` — Figure ch24 — décomposition de la valeur par le coût du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, graine…
121 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch24\_\allowbreak{}sensibilite.py` — Figure ch24 — sensibilité (DONNÉES SYNTHÉTIQUES, cas 1, graine 20261031) : (a) taux de dépréciation âge-vie…
122 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch25\_\allowbreak{}figures.py` — Figures du chapitre 25 — Évaluation du terrain (DONNÉES SYNTHÉTIQUES, graine 20261031).
123 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch26\_\allowbreak{}figures.py` — Chapitre 26 — figures (4) : loyer contractuel vs loyer de marché par logement (cas 3), distribution de…
124 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch27\_\allowbreak{}figures.py` — Chapitre 27 — figures (4) :
125 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch28\_\allowbreak{}figures.py` — Chapitre 28 — figures (5) : cascade RBP → RNE (cas 3) ; structure des dépenses en \% du RBE (cas 3 vs cas 2) ;
126 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch29\_\allowbreak{}figures.py` — Chapitre 29 — figures (5) : taux extraits (histogramme), taux vs état/taille (nuage), surface V(RNE, R)…
127 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}flux.py` — Ch. 30, figure « flux » : RNE, CAPEX et flux net avant dette (barres) du cas 3 (DONNÉES SYNTHÉTIQUES), puis…
128 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}gdc.py` — Ch. 30, figure « gdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31)…
129 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}loyers.py` — Ch. 30, figure « loyers » : trajectoire du revenu brut potentiel contractuel (indexé au taux TAL + relocation…
130 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}surface.py` — Ch. 30, figure « surface » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) selon le taux d'actualisation r…
131 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch30\_\allowbreak{}tornade.py` — Ch. 30, figure « tornade » : variation de la valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour un choc bas/haut…
132 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}levier.py` — Ch. 31, figure « levier » (DONNÉES SYNTHÉTIQUES, cas 3) : TRI des fonds propres sur dix ans et rendement…
133 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}service\_\allowbreak{}dette.py` — Ch. 31, figure « service-dette » (DONNÉES SYNTHÉTIQUES, cas 3) : service de la dette annuel du prêt de 1 475…
134 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}solde.py` — Ch. 31, figure « solde » (DONNÉES SYNTHÉTIQUES, cas 3) : trajectoire du solde du prêt de 1 475 959 \$ à 4,12…
135 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch31\_\allowbreak{}taux\_\allowbreak{}bdc.py` — Ch. 31, figure « taux-bdc » (DONNÉES RÉELLES, Banque du Canada, API Valet, téléchargées le 2026-10-31) : taux…
136 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch32\_\allowbreak{}figures.py` — Figures du chapitre 32 — Duplex à quintuplex (données SYNTHÉTIQUES du cas 2, sauf la figure des médianes…
137 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch33\_\allowbreak{}figures.py` — Chapitre 33 — figures (4) : (1) SCHL, île de Montréal, loyers et inoccupation par taille d'immeuble et par…
138 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}calcul\_\allowbreak{}tal.py` — Ch. 34, figure « exemple de calcul TAL » : composantes de l'augmentation mensuelle du logement 103 du cas 3…
139 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}ipc\_\allowbreak{}base.py` — Ch. 34, figure « IPC et pourcentage de base » (DONNÉES RÉELLES : Statistique Canada, tableau 18-10-0004-01…
140 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}rotation.py` — Ch. 34, figure « rotation espérée » : (gauche) rapport espéré loyer contractuel / loyer de marché d'un…
141 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}trajectoires.py` — Ch. 34, figure « trajectoires RBP » : revenu brut potentiel contractuel du cas 3 (DONNÉES SYNTHÉTIQUES) selon…
142 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch34\_\allowbreak{}valeur\_\allowbreak{}scenarios.py` — Ch. 34, figure « valeur par scénario » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour la grille rotation…
143 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch35\_\allowbreak{}figures.py` — Figures du chapitre 35 — Indices immobiliers et ventes répétées.
144 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch36\_\allowbreak{}figures.py` — Figures du chapitre 36 — données de panel et identification causale (cas 4, DONNÉES SYNTHÉTIQUES, graine…
145 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch37\_\allowbreak{}figures.py` — Figures du chapitre 37 — Apprentissage automatique et explicabilité (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES…
146 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch38\_\allowbreak{}figures.py` — Figures du chapitre 38 — SIG et risques géospatiaux (cas 1 Gatineau et cas 4 portefeuille, DONNÉES…
147 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch39\_\allowbreak{}figures.py` — Figures du chapitre 39 — Modèles bayésiens et intervalles (cas 1, Gatineau, DONNÉES SYNTHÉTIQUES, graine…
148 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch40\_\allowbreak{}figures.py` — Chapitre 40 — figures (DONNÉES SYNTHÉTIQUES : cas 3 et cas 4, graine 20261031).
149 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch41\_\allowbreak{}figures.py` — Figures du chapitre 41 (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF ; hypothèses déclarées dans…
150 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}bloc\_\allowbreak{}piece.py` — Figure ch42 — valeur de conversion (somme des fractions nette des coûts, des frais, du portage et des délais)…
151 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}cotisation\_\allowbreak{}speciale.py` — Figure ch42 — charges annuelles normalisées des huit fractions (ch. 7) et part de chacune dans une cotisation…
152 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}grille.py` — Figure ch42 — grille de comparaison de la fraction F4 : prix observé, prix ajusté et décomposition des…
153 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch42\_\allowbreak{}medianes.py` — Figure ch42 — prix médians Centris des copropriétés et des unifamiliales par territoire, T3 2026 (DONNÉES…
154 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}carte\_\allowbreak{}cas4.py` — Figure ch43 — carte schématique des 48 immeubles du cas 4 (DONNÉES SYNTHÉTIQUES, coordonnées fictives autour…
155 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}carte\_\allowbreak{}riverain.py` — Figure ch43 — municipalité fictive de Rivière-Fictive (DONNÉES SYNTHÉTIQUES) : 625 lots, classes d'exposition…
156 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}did\_\allowbreak{}cas4.py` — Figure ch43 — doubles différences sur les séries de RNE du cas 4 avec choc d'inondation injecté en 2019…
157 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}effets\_\allowbreak{}methodes.py` — Figure ch43 — décote d'une zone inondable mesurée par quatre méthodes sur les ventes de Rivière-Fictive…
158 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch43\_\allowbreak{}placebos.py` — Figure ch43 — inférence de randomisation exacte pour le DiD du cas 4 (DONNÉES SYNTHÉTIQUES) : distribution…
159 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}capitalisation.py` — Figure ch44 — (a) quatre lectures de ce que la thermopompe « vaut » pour le sujet du cas 1 : coût installé…
160 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}flux.py` — Figure ch44 — flux annuels des deux mesures énergétiques du sujet du cas 1 (DONNÉES SYNTHÉTIQUES, hypothèses…
161 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}heatmap\_\allowbreak{}van.py` — Figure ch44 — VAN des deux mesures selon le taux d'actualisation et la croissance du prix de l'électricité
162 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch44\_\allowbreak{}prime\_\allowbreak{}verte.py` — Figure ch44 — la « prime verte » dans la littérature : fourchettes publiées par étude (valeurs vérifiées, voir
163 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch45\_\allowbreak{}figures.py` — Chapitre 45 — figures du dossier (cas 1, DONNÉES SYNTHÉTIQUES) : carte des comparables, cascade des…
164 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch46\_\allowbreak{}figures.py` — Chapitre 46 — figures du dossier « triplex à Québec » (DONNÉES SYNTHÉTIQUES, graine 20261031).
165 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch47\_\allowbreak{}dossier\_\allowbreak{}figures.py` — Chapitre 47 — figures du dossier « 12 logements à Montréal » (DONNÉES SYNTHÉTIQUES, graine 20261031).
166 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}ch48\_\allowbreak{}portefeuille\_\allowbreak{}figures.py` — Chapitre 48 — figures du dossier « portefeuille multirésidentiel interrégional » (DONNÉES SYNTHÉTIQUES…
167 +- figure `analysis/\allowbreak{}python/\allowbreak{}figures/\allowbreak{}run\_\allowbreak{}all.py` — Exécute tous les scripts de figures (analysis/python/figures/chNN\_*.py) et les scripts R…
168 168 - test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}conftest.py` —
169 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cas1.py` —
170 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cas2\_cas4.py` —
171 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cas3.py` —
172 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch01.py` — Chapitre 1 — vérification des identités et des chiffres cités dans le texte et les solutions (données synthéti
173 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch02.py` — Chapitre 2 — Droits immobiliers et bases de valeur : identités (additivité, Gordon, annuité) et valeurs citées
174 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch03.py` — Tests du chapitre 3 — Offre, demande et cycles.
175 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch04.py` — Tests du chapitre 4 — marchés résidentiels québécois : lecture des données réelles (Recensement 2021, 17-10-01
176 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch05.py` — Tests du chapitre 5 — modèle monocentrique simulé, gradient prix/distance du cas 1, décomposition du cas 4,
177 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch06.py` — Tests du chapitre 6 — démembrements et modalités du droit de propriété (DONNÉES SYNTHÉTIQUES, hypothèses décla
178 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch07.py` — Tests du chapitre 7 — servitude par ventes appariées, quotes-parts et charges de copropriété, fonds de prévoya
179 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch08.py` — Tests du chapitre 8 — zonage et urbanisme (DONNÉES SYNTHÉTIQUES, graine 20261031).
180 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch09.py` — Tests du chapitre 9 — étude de ratios (COD, PRD, PRB, proportion médiane, facteur comparatif), dossiers de con
181 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch10.py` — Chapitre 10 — vérification des chiffres cités dans le texte, les tableaux et les solutions.
182 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch11.py` — Tests du chapitre 11 — inspection synthétique du sujet du cas 1, convention d'âge effectif, dépréciation venti
183 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch12.py` — Tests du chapitre 12 — mesurage, superficies, propagation d'erreur (cas 1, données synthétiques).
184 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch13.py` — Tests du chapitre 13 — lecture des fichiers RÉELS de data/raw (StatCan 18-10-0289-01, 18-10-0205-01, 18-10-000
185 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch14.py` — Chapitre 14 — Nettoyage, géocodage et qualité des données : reproductibilité du jeu brut, identités des diagno
186 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch15.py` — Chapitre 15 — Études de marché et segmentation : vérification des identités et des chiffres cités dans le text
187 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch16.py` — Chapitre 16 — vérification des chiffres cités dans le texte et les solutions.
188 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch17.py` — Chapitre 17 — vérification des identités et des chiffres cités dans le texte et les solutions (tolérances décl
189 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch18.py` — Chapitre 18 — Modèles hédoniques : vérification des chiffres cités dans le texte, les tableaux et les solution
190 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch19.py` — Chapitre 19 — tests des fonctions spatiales ajoutées à traite.hedonique et des chiffres cités dans le texte et
191 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch20.py` — Chapitre 20 — réconciliation et incertitude : identités, chiffres cités dans le texte et dans les solutions (t
192 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch21.py` — Tests du chapitre 21 — coût neuf du sujet du cas 1, IPCB Montréal, sensibilité et exercices.
193 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch22.py` — Tests du chapitre 22 — métré et quantités du sujet du cas 1.
194 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch23.py` — Tests du chapitre 23 — coûts directs et indirects : structure du devis du cas 1, financement intérimaire (trai
195 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch24.py` — Tests du chapitre 24 — dépréciation et désuétudes du sujet du cas 1, extraction de marché, profils et exercice
196 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch25.py` — Tests du chapitre 25 — Évaluation du terrain : jeu synthétique de terrains (graine 20261031), modèle hédonique
197 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch26.py` — Tests du chapitre 26 — baux et loyers (cas 3 et cas 2, données synthétiques).
198 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch27.py` — Tests du chapitre 27 — revenus potentiels, vacance et pertes (cas 3 et cas 2, données synthétiques ; tableaux
199 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch28.py` — Tests du chapitre 28 — dépenses, réserves, CAPEX et RNE (cas 3 et cas 2, données synthétiques).
200 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch29.py` — Tests du chapitre 29 — capitalisation directe (cas 3, données synthétiques).
201 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch30.py` — Tests du chapitre 30 — flux actualisés et valeur terminale (cas 3, données synthétiques).
202 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch31.py` — Tests du chapitre 31 — financement, levier, RCD et RPV (cas 3, données synthétiques ; repères BdC réels).
203 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch32.py` — Tests du chapitre 32 — Duplex à quintuplex : identités, cohérence avec traite.cas2 (partagé avec les ch. 26, 2
204 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch33.py` — Tests du chapitre 33 (immeubles de six logements et plus) : identités, cohérence avec traite.cas3/cas4 et le c
205 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch34.py` — Tests du chapitre 34 — TAL, encadrement locatif et scénarios (cas 3, données synthétiques ; IPC Québec réel).
206 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch35.py` — Chapitre 35 — Indices immobiliers et ventes répétées : identités et valeurs citées dans le texte, les tableaux
207 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch36.py` — Chapitre 36 — tests des fonctions de traite.panel (récupération d'effets connus sur données simulées) et des c
208 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch37.py` — Chapitre 37 — Apprentissage automatique et explicabilité : reproductibilité et bornes de performance des chiff
209 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch38.py` — Chapitre 38 — tests des fonctions de traite.geo et des chiffres cités dans manuscript/chapters/ch38.tex et sol
210 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch39.py` — Chapitre 39 — Modèles bayésiens et intervalles : vérification des identités, des diagnostics et des chiffres c
211 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch40.py` — Tests du chapitre 40 (Monte-Carlo et stress tests — données synthétiques, cas 3 et cas 4) : égalité stricte av
212 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch41.py` — Tests du chapitre 41 — PHMU, terrains et développement (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF ; hypoth
213 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch42.py` — Tests du chapitre 42 — fraction de copropriété (grille, réconciliation), cotisation spéciale, copropriété loca
214 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch43.py` — Tests du chapitre 43 — risques environnementaux et sinistres (DONNÉES SYNTHÉTIQUES, graine 20261031).
215 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch44.py` — Tests du chapitre 44 — rénovation et efficacité énergétique (sujet du cas 1, DONNÉES SYNTHÉTIQUES).
216 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch45.py` — Tests du chapitre 45 (cas 1, maison unifamiliale à Gatineau — DONNÉES SYNTHÉTIQUES) : le dossier ne doit repre
217 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch46.py` — Tests du chapitre 46 — Cas 2 : triplex à Québec (dossier complet, données SYNTHÉTIQUES).
218 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch47.py` — Tests du chapitre 47 (cas 3, 12 logements à Montréal — données synthétiques) : identités, valeurs citées dans
219 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_ch48.py` — Tests du chapitre 48 (cas 4, portefeuille interrégional — données synthétiques) : identités du sommaire, cohér
220 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_comparables.py` —
221 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_cout.py` —
222 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_finance.py` —
223 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_hedonique.py` —
224 −- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_synth.py` —
225 −- outil `tools/\allowbreak{}check\_manuscript.py` — Vérifications du manuscrit : stubs restants, figures manquantes, scripts des figures,
226 −- outil `tools/\allowbreak{}inventaire.py` — Inventaire des scripts, tests, données, figures et classeurs → manuscript/appendices/\_inventaire.tex (longtab
227 −- outil `tools/\allowbreak{}make\_labels.py` — Écrit un fichier d'étiquettes (newlabel) pour tous les chapitres et annexes, afin que cref\{ch:NN\} / cref\{ap
228 −- outil `tools/\allowbreak{}make\_release.py` — Assemble release/ : PDF, sources LaTeX, données, figures, scripts, classeurs, corrigés, rapport de validation.
229 −- outil `tools/\allowbreak{}merge\_sources.py` — Fusionne sources/registry-*.csv → sources/registry.csv, sources/normes-*.csv → sources/normes-matrice.csv,
230 −- outil `tools/\allowbreak{}compile\_chapter.sh` — !/usr/bin/env bash
231 −- outil `tools/\allowbreak{}valider\_chapitre.sh` — !/usr/bin/env bash
\ No newline at end of file
169 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cas1.py` —
170 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cas2\_\allowbreak{}cas4.py` —
171 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cas3.py` —
172 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch01.py` — Chapitre 1 — vérification des identités et des chiffres cités dans le texte et les solutions (données…
173 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch02.py` — Chapitre 2 — Droits immobiliers et bases de valeur : identités (additivité, Gordon, annuité) et valeurs…
174 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch03.py` — Tests du chapitre 3 — Offre, demande et cycles.
175 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch04.py` — Tests du chapitre 4 — marchés résidentiels québécois : lecture des données réelles (Recensement 2021…
176 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch05.py` — Tests du chapitre 5 — modèle monocentrique simulé, gradient prix/distance du cas 1, décomposition du cas 4,
177 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch06.py` — Tests du chapitre 6 — démembrements et modalités du droit de propriété (DONNÉES SYNTHÉTIQUES, hypothèses…
178 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch07.py` — Tests du chapitre 7 — servitude par ventes appariées, quotes-parts et charges de copropriété, fonds de…
179 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch08.py` — Tests du chapitre 8 — zonage et urbanisme (DONNÉES SYNTHÉTIQUES, graine 20261031).
180 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch09.py` — Tests du chapitre 9 — étude de ratios (COD, PRD, PRB, proportion médiane, facteur comparatif), dossiers de…
181 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch10.py` — Chapitre 10 — vérification des chiffres cités dans le texte, les tableaux et les solutions.
182 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch11.py` — Tests du chapitre 11 — inspection synthétique du sujet du cas 1, convention d'âge effectif, dépréciation…
183 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch12.py` — Tests du chapitre 12 — mesurage, superficies, propagation d'erreur (cas 1, données synthétiques).
184 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch13.py` — Tests du chapitre 13 — lecture des fichiers RÉELS de data/raw (StatCan 18-10-0289-01, 18-10-0205-01…
185 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch14.py` — Chapitre 14 — Nettoyage, géocodage et qualité des données : reproductibilité du jeu brut, identités des…
186 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch15.py` — Chapitre 15 — Études de marché et segmentation : vérification des identités et des chiffres cités dans le…
187 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch16.py` — Chapitre 16 — vérification des chiffres cités dans le texte et les solutions.
188 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch17.py` — Chapitre 17 — vérification des identités et des chiffres cités dans le texte et les solutions (tolérances…
189 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch18.py` — Chapitre 18 — Modèles hédoniques : vérification des chiffres cités dans le texte, les tableaux et les…
190 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch19.py` — Chapitre 19 — tests des fonctions spatiales ajoutées à traite.hedonique et des chiffres cités dans le texte…
191 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch20.py` — Chapitre 20 — réconciliation et incertitude : identités, chiffres cités dans le texte et dans les solutions…
192 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch21.py` — Tests du chapitre 21 — coût neuf du sujet du cas 1, IPCB Montréal, sensibilité et exercices.
193 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch22.py` — Tests du chapitre 22 — métré et quantités du sujet du cas 1.
194 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch23.py` — Tests du chapitre 23 — coûts directs et indirects : structure du devis du cas 1, financement intérimaire…
195 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch24.py` — Tests du chapitre 24 — dépréciation et désuétudes du sujet du cas 1, extraction de marché, profils et…
196 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch25.py` — Tests du chapitre 25 — Évaluation du terrain : jeu synthétique de terrains (graine 20261031), modèle…
197 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch26.py` — Tests du chapitre 26 — baux et loyers (cas 3 et cas 2, données synthétiques).
198 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch27.py` — Tests du chapitre 27 — revenus potentiels, vacance et pertes (cas 3 et cas 2, données synthétiques ; tableaux…
199 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch28.py` — Tests du chapitre 28 — dépenses, réserves, CAPEX et RNE (cas 3 et cas 2, données synthétiques).
200 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch29.py` — Tests du chapitre 29 — capitalisation directe (cas 3, données synthétiques).
201 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch30.py` — Tests du chapitre 30 — flux actualisés et valeur terminale (cas 3, données synthétiques).
202 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch31.py` — Tests du chapitre 31 — financement, levier, RCD et RPV (cas 3, données synthétiques ; repères BdC réels).
203 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch32.py` — Tests du chapitre 32 — Duplex à quintuplex : identités, cohérence avec traite.cas2 (partagé avec les ch. 26…
204 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch33.py` — Tests du chapitre 33 (immeubles de six logements et plus) : identités, cohérence avec traite.cas3/cas4 et le…
205 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch34.py` — Tests du chapitre 34 — TAL, encadrement locatif et scénarios (cas 3, données synthétiques ; IPC Québec réel).
206 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch35.py` — Chapitre 35 — Indices immobiliers et ventes répétées : identités et valeurs citées dans le texte, les…
207 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch36.py` — Chapitre 36 — tests des fonctions de traite.panel (récupération d'effets connus sur données simulées) et des…
208 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch37.py` — Chapitre 37 — Apprentissage automatique et explicabilité : reproductibilité et bornes de performance des…
209 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch38.py` — Chapitre 38 — tests des fonctions de traite.geo et des chiffres cités dans manuscript/chapters/ch38.tex et…
210 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch39.py` — Chapitre 39 — Modèles bayésiens et intervalles : vérification des identités, des diagnostics et des chiffres…
211 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch40.py` — Tests du chapitre 40 (Monte-Carlo et stress tests — données synthétiques, cas 3 et cas 4) : égalité stricte…
212 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch41.py` — Tests du chapitre 41 — PHMU, terrains et développement (DONNÉES SYNTHÉTIQUES du cas 1 ; zonage FICTIF…
213 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch42.py` — Tests du chapitre 42 — fraction de copropriété (grille, réconciliation), cotisation spéciale, copropriété…
214 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch43.py` — Tests du chapitre 43 — risques environnementaux et sinistres (DONNÉES SYNTHÉTIQUES, graine 20261031).
215 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch44.py` — Tests du chapitre 44 — rénovation et efficacité énergétique (sujet du cas 1, DONNÉES SYNTHÉTIQUES).
216 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch45.py` — Tests du chapitre 45 (cas 1, maison unifamiliale à Gatineau — DONNÉES SYNTHÉTIQUES) : le dossier ne doit…
217 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch46.py` — Tests du chapitre 46 — Cas 2 : triplex à Québec (dossier complet, données SYNTHÉTIQUES).
218 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch47.py` — Tests du chapitre 47 (cas 3, 12 logements à Montréal — données synthétiques) : identités, valeurs citées dans…
219 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}ch48.py` — Tests du chapitre 48 (cas 4, portefeuille interrégional — données synthétiques) : identités du sommaire…
220 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}comparables.py` —
221 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}cout.py` —
222 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}finance.py` —
223 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}hedonique.py` —
224 +- test `analysis/\allowbreak{}python/\allowbreak{}tests/\allowbreak{}test\_\allowbreak{}synth.py` —
225 +- outil `tools/\allowbreak{}check\_\allowbreak{}manuscript.py` — Vérifications du manuscrit : stubs restants, figures manquantes, scripts des figures,
226 +- outil `tools/\allowbreak{}fix\_\allowbreak{}idx.py` — Normalise les entrées d'index (.idx) avant makeindex : ajoute une clé de tri sans accent aux entrées dont
227 +- outil `tools/\allowbreak{}glossaire\_\allowbreak{}build.py` — Génère manuscript/appendices/glossaire.tex à partir de la liste d'entrées ci-dessous (annexe A).
228 +- outil `tools/\allowbreak{}glossaire\_\allowbreak{}extraction.py` — Traçabilité du glossaire (annexe A).
229 +- outil `tools/\allowbreak{}inventaire.py` — Inventaire des scripts, tests, données, figures et classeurs → manuscript/appendices/\_inventaire.tex…
230 +- outil `tools/\allowbreak{}make\_\allowbreak{}labels.py` — Écrit un fichier d'étiquettes (newlabel) pour tous les chapitres et annexes, afin que cref\{ch:NN\} /…
231 +- outil `tools/\allowbreak{}make\_\allowbreak{}release.py` — Assemble release/ : PDF, sources LaTeX, données, figures, scripts, classeurs, corrigés, rapport de validation.
232 +- outil `tools/\allowbreak{}merge\_\allowbreak{}sources.py` — Fusionne sources/registry-*.csv → sources/registry.csv, sources/normes-*.csv → sources/normes-matrice.csv,
233 +- outil `tools/\allowbreak{}compile\_\allowbreak{}chapter.sh` — !/usr/bin/env bash
234 +- outil `tools/\allowbreak{}makeindex.sh` — !/usr/bin/env bash
235 +- outil `tools/\allowbreak{}valider\_\allowbreak{}chapitre.sh` — !/usr/bin/env bash
\ No newline at end of file
232 236
Menu

Theme