spb/traite-evaluation-qc
Public
1\begin{longtable}{lp{48mm}p{62mm}}2\caption{Scripts du dépôt (modules, calculs, figures, tests, outils)}\label{tab:app:scripts}\\3\toprule Type & Fichier & Rôle \\ \midrule \endfirsthead4\toprule Type & Fichier & Rôle \\ \midrule \endhead5\bottomrule \endfoot6module & \texttt{analysis/python/traite/cas1.py} & Cas 1 — maison unifamiliale à Gatineau (données synthétiques) : calculs PARTAGÉS par les chapitres 9, 14, 16-2 \\7module & \texttt{analysis/python/traite/cas2.py} & Cas 2 — triplex à Québec, Limoilou (données synthétiques) : calculs PARTAGÉS par les chapitres 26, 27, 32 et 4 \\8module & \texttt{analysis/python/traite/cas3.py} & Cas 3 — immeuble de 12 logements à Montréal (données synthétiques) : calculs PARTAGÉS par les chapitres 26-31, \\9module & \texttt{analysis/python/traite/cas4.py} & Cas 4 — portefeuille multirésidentiel interrégional (données synthétiques) : calculs PARTAGÉS par les chapitre \\10module & \texttt{analysis/python/traite/comparables.py} & Méthode de comparaison : grille d'ajustements, ajustements séquentiels, ventes appariées, réconciliation. \\11module & \texttt{analysis/python/traite/cout.py} & Méthode du coût : coût neuf, dépréciation (physique, fonctionnelle, externe), extraction de marché. \\12module & \texttt{analysis/python/traite/finance.py} & Mathématiques financières de l'évaluation immobilière (conventions déclarées). \\13module & \texttt{analysis/python/traite/hedonique.py} & Outils économétriques : hédonique semi-log, indices (dummies temporelles, ventes répétées BMN / Case–Shiller), \\14module & \texttt{analysis/python/traite/style.py} & Style graphique du traité (Matplotlib). Palette validée : styles/palette.json. \\15module & \texttt{analysis/python/traite/synth.py} & Génération des quatre dossiers de cas SYNTHÉTIQUES du traité. \\16calcul & \texttt{analysis/python/cases/ch16\_selection.py} & Chapitre 16 — sélection des comparables pour le sujet du cas 1 (Gatineau, données synthétiques). \\17calcul & \texttt{analysis/python/cases/ch21\_cout\_neuf.py} & Chapitre 21 — coût neuf (remplacement) du sujet du cas 1 (Gatineau, DONNÉES SYNTHÉTIQUES) et indexation IPCB ( \\18calcul & \texttt{analysis/python/cases/ch29\_capitalisation.py} & Chapitre 29 — Capitalisation directe : calculs du cas 3 (12 logements, Rosemont ; DONNÉES SYNTHÉTIQUES). \\19calcul & \texttt{analysis/python/cases/ch30\_dcf.py} & Chapitre 30 — Flux actualisés et valeur terminale : exemple intégral du cas 3 (12 logements, Montréal, \\20calcul & \texttt{analysis/python/cases/ch47\_dossier.py} & Chapitre 47 — Cas 3 : immeuble de 12 logements à Montréal (DONNÉES SYNTHÉTIQUES, immeuble fictif). \\21calcul & \texttt{analysis/python/cases/generate\_all.py} & Régénère tous les jeux synthétiques (graine fixée). Usage : python3 -m analysis.python.cases.generate\_all (de \\22calcul & \texttt{analysis/python/cases/make\_spreadsheets.py} & Classeurs Excel du traité (openpyxl, formules vivantes) : spreadsheets/ \\23figure & \texttt{analysis/python/figures/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 \\24figure & \texttt{analysis/python/figures/ch21\_ipcb.py} & Figure ch21 — IPCB Montréal (Statistique Canada, tableau 18-10-0289-01, base 2023 = 100), données RÉELLES lues \\25figure & \texttt{analysis/python/figures/ch21\_sensibilite.py} & Figure ch21 — sensibilité du coût neuf du sujet du cas 1 (DONNÉES SYNTHÉTIQUES) : (a) grille taux d'indirects \\26figure & \texttt{analysis/python/figures/ch29\_figures.py} & Chapitre 29 — figures (5) : taux extraits (histogramme), taux vs état/taille (nuage), surface V(RNE, R) (carte \\27figure & \texttt{analysis/python/figures/ch30\_flux.py} & Ch. 30, figure « flux » : RNE, CAPEX et flux net avant dette (barres) du cas 3 (DONNÉES SYNTHÉTIQUES), puis va \\28figure & \texttt{analysis/python/figures/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 \\29figure & \texttt{analysis/python/figures/ch30\_loyers.py} & Ch. 30, figure « loyers » : trajectoire du revenu brut potentiel contractuel (indexé au taux TAL + relocation \\30figure & \texttt{analysis/python/figures/ch30\_surface.py} & Ch. 30, figure « surface » : valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) selon le taux d'actualisation r (ligne \\31figure & \texttt{analysis/python/figures/ch30\_tornade.py} & Ch. 30, figure « tornade » : variation de la valeur DCF du cas 3 (DONNÉES SYNTHÉTIQUES) pour un choc bas/haut \\32figure & \texttt{analysis/python/figures/ch47\_dossier\_figures.py} & Chapitre 47 — figures du dossier « 12 logements à Montréal » (DONNÉES SYNTHÉTIQUES, graine 20261031). \\33figure & \texttt{analysis/python/figures/run\_all.py} & Exécute tous les scripts de figures (analysis/python/figures/chNN\_*.py) et les scripts R (analysis/r/chNN\_*. \\34test & \texttt{analysis/python/tests/conftest.py} & \\35test & \texttt{analysis/python/tests/test\_cas1.py} & \\36test & \texttt{analysis/python/tests/test\_cas2\_cas4.py} & \\37test & \texttt{analysis/python/tests/test\_cas3.py} & \\38test & \texttt{analysis/python/tests/test\_ch16.py} & Chapitre 16 — vérification des chiffres cités dans le texte et les solutions. \\39test & \texttt{analysis/python/tests/test\_ch21.py} & Tests du chapitre 21 — coût neuf du sujet du cas 1, IPCB Montréal, sensibilité et exercices. \\40test & \texttt{analysis/python/tests/test\_ch29.py} & Tests du chapitre 29 — capitalisation directe (cas 3, données synthétiques). \\41test & \texttt{analysis/python/tests/test\_ch30.py} & Tests du chapitre 30 — flux actualisés et valeur terminale (cas 3, données synthétiques). \\42test & \texttt{analysis/python/tests/test\_ch47.py} & Tests du chapitre 47 (cas 3, 12 logements à Montréal — données synthétiques) : identités, valeurs citées dans \\43test & \texttt{analysis/python/tests/test\_comparables.py} & \\44test & \texttt{analysis/python/tests/test\_cout.py} & \\45test & \texttt{analysis/python/tests/test\_finance.py} & \\46test & \texttt{analysis/python/tests/test\_hedonique.py} & \\47test & \texttt{analysis/python/tests/test\_synth.py} & \\48outil & \texttt{tools/check\_manuscript.py} & Vérifications du manuscrit : stubs restants, figures manquantes, scripts des figures, \\49outil & \texttt{tools/inventaire.py} & Inventaire des scripts, tests, données, figures et classeurs → manuscript/appendices/\_inventaire.tex (longtab \\50outil & \texttt{tools/make\_labels.py} & Écrit un fichier d'étiquettes (newlabel) pour tous les chapitres et annexes, afin que cref{ch:NN} / cref{app:x \\51outil & \texttt{tools/make\_release.py} & Assemble release/ : PDF, sources LaTeX, données, figures, scripts, classeurs, corrigés, rapport de validation. \\52outil & \texttt{tools/merge\_sources.py} & Fusionne sources/registry-*.csv → sources/registry.csv, sources/normes-*.csv → sources/normes-matrice.csv, \\53outil & \texttt{tools/compile\_chapter.sh} & !/usr/bin/env bash \\54\end{longtable}5556\begin{longtable}{lr}57\caption{Jeux de données synthétiques}\label{tab:app:donnees}\\58\toprule Fichier & Taille \\ \midrule \endfirsthead59\toprule Fichier & Taille \\ \midrule \endhead60\bottomrule \endfoot61\texttt{data/synthetic/README.md} & 15 ko \\62\texttt{data/synthetic/calibration.json} & 93 ko \\63\texttt{data/synthetic/calibration\_journal.csv} & 6 ko \\64\texttt{data/synthetic/cas1\_gatineau\_couts.csv} & 2 ko \\65\texttt{data/synthetic/cas1\_gatineau\_sujet.json} & 1 ko \\66\texttt{data/synthetic/cas1\_gatineau\_ventes.csv} & 65 ko \\67\texttt{data/synthetic/cas2\_quebec\_depenses.csv} & 0 ko \\68\texttt{data/synthetic/cas2\_quebec\_loyers.csv} & 0 ko \\69\texttt{data/synthetic/cas2\_quebec\_sujet.json} & 0 ko \\70\texttt{data/synthetic/cas2\_quebec\_ventes\_plex.csv} & 28 ko \\71\texttt{data/synthetic/cas3\_montreal\_comparables.csv} & 4 ko \\72\texttt{data/synthetic/cas3\_montreal\_depenses.csv} & 1 ko \\73\texttt{data/synthetic/cas3\_montreal\_etat\_locatif.csv} & 1 ko \\74\texttt{data/synthetic/cas3\_montreal\_hypotheses\_dcf.json} & 1 ko \\75\texttt{data/synthetic/cas3\_montreal\_sujet.json} & 0 ko \\76\texttt{data/synthetic/cas4\_portefeuille.csv} & 6 ko \\77\texttt{data/synthetic/cas4\_portefeuille\_series.csv} & 33 ko \\78\end{longtable}7980\begin{itemize}81\item \texttt{spreadsheets/amortissement\_hypothecaire.xlsx}82\item \texttt{spreadsheets/cas1\_grille\_comparaison.xlsx}83\item \texttt{spreadsheets/cas3\_dcf\_12\_logements.xlsx}84\end{itemize}85\noindent Figures PDF générées : 24.