Extraction du cœur autonomie de calculs.trans-former.fr (12 modules, sans singleton, couplages sans mutation, console derrière debug), découpage en trois moteurs d'axe + intégrateur (mode global = calculs, mode par_axe = plateforme), moteurs commun.contexte (Corse 2A/2B, DOM 97x corrigés) et commun.geometrie, table des coefficients harmonisés (docs/CONSTANTES.md pour Jules, R-7), validation structurelle des données (schemas/), tests hors ligne : 28 assertions d'origine + épingle générée depuis le code d'astro-pro + écarts d'harmonisation figés + contrat des moteurs. dist/ committé. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019UBHYPdeQYy2m1GVJp6b12
17 lines
544 B
JavaScript
17 lines
544 B
JavaScript
// alloue-budget.ts — Étape 2 : allocation budget par axe
|
|
// Spec: V2-algo-spec.md §Étape 2 — origine calculs/src/lib/autonomie/alloue-budget.js, inchangé.
|
|
/**
|
|
* Alloue le budget total entre les 3 axes selon leurs poids.
|
|
*
|
|
* @param budget_total — EUR
|
|
* @param poids — somme = 100
|
|
* @returns en EUR
|
|
*/
|
|
export function alloueBudget(budget_total, poids) {
|
|
return {
|
|
eau: (budget_total * poids.eau) / 100,
|
|
energie: (budget_total * poids.energie) / 100,
|
|
alim: (budget_total * poids.alim) / 100,
|
|
};
|
|
}
|