Initial commit
This commit is contained in:
695
data/templates-afrique.ts
Normal file
695
data/templates-afrique.ts
Normal file
@@ -0,0 +1,695 @@
|
||||
/**
|
||||
* TEMPLATES ULTRA-DÉTAILLÉS POUR ZONES CLIMATIQUES AFRICAINES
|
||||
* Système le plus ambitieux d'Afrique - Adaptation climatique précise
|
||||
*/
|
||||
|
||||
import { TypeChantierTemplate, PhaseTemplate } from '../components/phases/PhaseGenerationWizard';
|
||||
import { MATERIAUX_BTP_DATABASE, CalculateurBTPAfrique } from './materiaux-database';
|
||||
|
||||
// ================== ZONES CLIMATIQUES AFRICAINES ==================
|
||||
|
||||
export interface ZoneClimatiqueAfrique {
|
||||
id: string;
|
||||
nom: string;
|
||||
pays: string[];
|
||||
caracteristiques: {
|
||||
temperatureMoyenne: { min: number; max: number };
|
||||
pluviometrieAnnuelle: number; // mm
|
||||
humiditeRelative: { min: number; max: number }; // %
|
||||
ventsMaximaux: number; // km/h
|
||||
saisons: {
|
||||
nom: string;
|
||||
mois: number[];
|
||||
contraintes: string[];
|
||||
recommandations: string[];
|
||||
}[];
|
||||
};
|
||||
contraintesConstruction: {
|
||||
fondations: string[];
|
||||
drainage: string[];
|
||||
ventilation: string[];
|
||||
materiaux: string[];
|
||||
};
|
||||
normesSpecifiques: {
|
||||
sisimique?: string;
|
||||
cyclonique?: string;
|
||||
thermique: string;
|
||||
pluviale: string;
|
||||
};
|
||||
}
|
||||
|
||||
export const ZONES_CLIMATIQUES: ZoneClimatiqueAfrique[] = [
|
||||
{
|
||||
id: 'sahel',
|
||||
nom: 'Zone Sahélienne',
|
||||
pays: ['Mali', 'Burkina Faso', 'Niger', 'Tchad', 'Sénégal Nord'],
|
||||
caracteristiques: {
|
||||
temperatureMoyenne: { min: 15, max: 45 },
|
||||
pluviometrieAnnuelle: 200,
|
||||
humiditeRelative: { min: 20, max: 60 },
|
||||
ventsMaximaux: 80,
|
||||
saisons: [
|
||||
{
|
||||
nom: 'Saison sèche froide',
|
||||
mois: [12, 1, 2],
|
||||
contraintes: ['Harmattan violent', 'Poussière intense', 'Écarts thermiques'],
|
||||
recommandations: ['Protection anti-poussière', 'Cure béton renforcée']
|
||||
},
|
||||
{
|
||||
nom: 'Saison sèche chaude',
|
||||
mois: [3, 4, 5],
|
||||
contraintes: ['Chaleur extrême 45°C+', 'Évaporation rapide', 'Dilatation'],
|
||||
recommandations: ['Travail tôt/tard', 'Arrosage constant', 'Protection solaire']
|
||||
},
|
||||
{
|
||||
nom: 'Saison des pluies',
|
||||
mois: [6, 7, 8, 9],
|
||||
contraintes: ['Pluies torrentielles', 'Inondations', 'Humidité'],
|
||||
recommandations: ['Drainage prioritaire', 'Stockage étanche', 'Planning adapté']
|
||||
}
|
||||
]
|
||||
},
|
||||
contraintesConstruction: {
|
||||
fondations: [
|
||||
'Fondations profondes (sol gonflant)',
|
||||
'Drainage périphérique obligatoire',
|
||||
'Protection contre remontées capillaires'
|
||||
],
|
||||
drainage: [
|
||||
'Évacuation eaux pluviales surdimensionnée',
|
||||
'Pentes toitures minimum 40%',
|
||||
'Caniveaux périmétriques'
|
||||
],
|
||||
ventilation: [
|
||||
'Ventilation traversante obligatoire',
|
||||
'Ouvertures hautes/basses',
|
||||
'Protection solaire systématique'
|
||||
],
|
||||
materiaux: [
|
||||
'Résistance UV renforcée',
|
||||
'Dilatation thermique prévue',
|
||||
'Protection anti-poussière'
|
||||
]
|
||||
},
|
||||
normesSpecifiques: {
|
||||
thermique: 'Isolation thermique obligatoire',
|
||||
pluviale: 'Évacuation 150mm/h minimum'
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: 'guinee-forestiere',
|
||||
nom: 'Zone Guinéenne Forestière',
|
||||
pays: ['Côte d\'Ivoire Sud', 'Ghana Sud', 'Guinée', 'Liberia', 'Sierra Leone'],
|
||||
caracteristiques: {
|
||||
temperatureMoyenne: { min: 22, max: 32 },
|
||||
pluviometrieAnnuelle: 2000,
|
||||
humiditeRelative: { min: 70, max: 95 },
|
||||
ventsMaximaux: 60,
|
||||
saisons: [
|
||||
{
|
||||
nom: 'Grande saison sèche',
|
||||
mois: [12, 1, 2, 3],
|
||||
contraintes: ['Harmattan modéré', 'Humidité résiduelle'],
|
||||
recommandations: ['Séchage matériaux prolongé', 'Ventilation renforcée']
|
||||
},
|
||||
{
|
||||
nom: 'Grande saison des pluies',
|
||||
mois: [4, 5, 6, 7, 8, 9, 10],
|
||||
contraintes: ['Pluies quasi-permanentes', 'Humidité 95%', 'Moisissures'],
|
||||
recommandations: ['Étanchéité absolue', 'Anti-moisissures', 'Drainage maximal']
|
||||
}
|
||||
]
|
||||
},
|
||||
contraintesConstruction: {
|
||||
fondations: [
|
||||
'Imperméabilisation obligatoire',
|
||||
'Vide sanitaire ventilé minimum 60cm',
|
||||
'Drainage français complet'
|
||||
],
|
||||
drainage: [
|
||||
'Double évacuation eaux pluviales',
|
||||
'Pentes toitures minimum 45%',
|
||||
'Gouttières surdimensionnées'
|
||||
],
|
||||
ventilation: [
|
||||
'VMC obligatoire zones humides',
|
||||
'Ventilation haute continue',
|
||||
'Déshumidification naturelle'
|
||||
],
|
||||
materiaux: [
|
||||
'Traitement anti-moisissures systématique',
|
||||
'Résistance humidité permanente',
|
||||
'Matériaux imputrescibles privilégiés'
|
||||
]
|
||||
},
|
||||
normesSpecifiques: {
|
||||
thermique: 'Isolation humidité prioritaire',
|
||||
pluviale: 'Évacuation 200mm/h minimum'
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: 'cotiere-atlantique',
|
||||
nom: 'Zone Côtière Atlantique',
|
||||
pays: ['Sénégal Côte', 'Gambie', 'Guinée Bissau', 'Mauritanie Sud'],
|
||||
caracteristiques: {
|
||||
temperatureMoyenne: { min: 18, max: 35 },
|
||||
pluviometrieAnnuelle: 800,
|
||||
humiditeRelative: { min: 60, max: 85 },
|
||||
ventsMaximaux: 120,
|
||||
saisons: [
|
||||
{
|
||||
nom: 'Saison fraîche',
|
||||
mois: [12, 1, 2, 3],
|
||||
contraintes: ['Alizés forts', 'Embruns salés', 'Corrosion'],
|
||||
recommandations: ['Protection anticorrosion renforcée', 'Matériaux marins']
|
||||
},
|
||||
{
|
||||
nom: 'Saison chaude',
|
||||
mois: [4, 5, 6],
|
||||
contraintes: ['Chaleur humide', 'Évaporation marine'],
|
||||
recommandations: ['Ventilation marine', 'Protection UV marine']
|
||||
},
|
||||
{
|
||||
nom: 'Hivernage',
|
||||
mois: [7, 8, 9, 10],
|
||||
contraintes: ['Pluies + vents', 'Tempêtes', 'Infiltrations'],
|
||||
recommandations: ['Étanchéité renforcée', 'Résistance cyclonique']
|
||||
}
|
||||
]
|
||||
},
|
||||
contraintesConstruction: {
|
||||
fondations: [
|
||||
'Fondations anti-corrosion marines',
|
||||
'Drainage anti-sel',
|
||||
'Imperméabilisation renforcée'
|
||||
],
|
||||
drainage: [
|
||||
'Évacuation résistante embruns',
|
||||
'Pentes adaptées vents',
|
||||
'Matériaux inoxydables'
|
||||
],
|
||||
ventilation: [
|
||||
'Résistance vents 120 km/h',
|
||||
'Protection embruns salés',
|
||||
'Ventilation anti-corrosion'
|
||||
],
|
||||
materiaux: [
|
||||
'Aciers galvanisés ou inox obligatoires',
|
||||
'Béton haute résistance chlorures',
|
||||
'Peintures marines exclusivement'
|
||||
]
|
||||
},
|
||||
normesSpecifiques: {
|
||||
thermique: 'Isolation marine spécialisée',
|
||||
pluviale: 'Évacuation 180mm/h + résistance vents',
|
||||
cyclonique: 'Résistance vents 150 km/h'
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
// ================== TEMPLATES ULTRA-DÉTAILLÉS PAR ZONE ==================
|
||||
|
||||
export const TEMPLATES_AFRIQUE_DETAILLES: TypeChantierTemplate[] = [
|
||||
|
||||
// ========== VILLA MODERNE ZONE SAHÉLIENNE ==========
|
||||
{
|
||||
id: 'villa-moderne-sahel',
|
||||
nom: 'Villa Moderne - Zone Sahélienne',
|
||||
description: 'Villa bioclimatique adaptée climat sahélien - Résistance chaleur/harmattan',
|
||||
categorie: 'RESIDENTIEL',
|
||||
complexiteMetier: 'COMPLEXE',
|
||||
dureeGlobaleEstimee: 240, // jours
|
||||
budgetGlobalEstime: 450000, // USD
|
||||
nombreTotalPhases: 18,
|
||||
tags: ['Sahel', 'Bioclimatique', 'Anti-harmattan', 'Isolation thermique'],
|
||||
|
||||
phases: [
|
||||
{
|
||||
id: 'vs-01',
|
||||
nom: 'Études Géotechniques Sahéliennes',
|
||||
description: 'Analyse sols gonflants, nappe phréatique, contraintes climatiques',
|
||||
ordre: 1,
|
||||
dureeEstimee: 15,
|
||||
budgetEstime: 25000,
|
||||
competencesRequises: ['Géotechnicien sols africains', 'Hydrogéologue'],
|
||||
prerequis: ['Permis construire', 'Bornage terrain'],
|
||||
categorieMetier: 'GROS_OEUVRE',
|
||||
obligatoire: true,
|
||||
personnalisable: false,
|
||||
sousPhases: [
|
||||
{
|
||||
id: 'vs-01-01',
|
||||
nom: 'Sondages géotechniques',
|
||||
description: 'Minimum 3 sondages jusqu\'à 8m - identification argiles gonflantes',
|
||||
ordre: 1,
|
||||
dureeEstimee: 5,
|
||||
budgetEstime: 12000,
|
||||
competencesRequises: ['Sondeur géotechnique'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-01-02',
|
||||
nom: 'Essais laboratoire sols',
|
||||
description: 'Limites Atterberg, CBR, gonflement, perméabilité',
|
||||
ordre: 2,
|
||||
dureeEstimee: 7,
|
||||
budgetEstime: 8000,
|
||||
competencesRequises: ['Laboratoire géotechnique'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-01-03',
|
||||
nom: 'Recommandations fondations',
|
||||
description: 'Dimensionnement fondations adaptées sol gonflant',
|
||||
ordre: 3,
|
||||
dureeEstimee: 3,
|
||||
budgetEstime: 5000,
|
||||
competencesRequises: ['Ingénieur géotechnicien'],
|
||||
obligatoire: true
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
id: 'vs-02',
|
||||
nom: 'Terrassement et Fondations Anti-Gonflantes',
|
||||
description: 'Terrassement adapté, fondations sur sol gonflant, drainage',
|
||||
ordre: 2,
|
||||
dureeEstimee: 20,
|
||||
budgetEstime: 45000,
|
||||
competencesRequises: ['Terrassier spécialisé', 'Maçon béton armé', 'Draineur'],
|
||||
prerequis: ['Études géotechniques validées'],
|
||||
categorieMetier: 'GROS_OEUVRE',
|
||||
obligatoire: true,
|
||||
personnalisable: true,
|
||||
sousPhases: [
|
||||
{
|
||||
id: 'vs-02-01',
|
||||
nom: 'Décapage sélectif',
|
||||
description: 'Décapage 50cm + substitution matériaux inertes',
|
||||
ordre: 1,
|
||||
dureeEstimee: 5,
|
||||
budgetEstime: 15000,
|
||||
competencesRequises: ['Terrassier', 'Contrôleur matériaux'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-02-02',
|
||||
nom: 'Fondations profondes',
|
||||
description: 'Semelles filantes BA avec longrines - 1,2m profondeur minimum',
|
||||
ordre: 2,
|
||||
dureeEstimee: 10,
|
||||
budgetEstime: 25000,
|
||||
competencesRequises: ['Ferrailleur', 'Coffreur', 'Bétonnier'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-02-03',
|
||||
nom: 'Drainage périphérique',
|
||||
description: 'Drain français + regard + évacuation - protection gonflement',
|
||||
ordre: 3,
|
||||
dureeEstimee: 5,
|
||||
budgetEstime: 5000,
|
||||
competencesRequises: ['Draineur', 'Canalisateur'],
|
||||
obligatoire: true
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
id: 'vs-03',
|
||||
nom: 'Vide Sanitaire Ventilé Anti-Termites',
|
||||
description: 'VS hauteur 60cm minimum, ventilé, traité anti-termites',
|
||||
ordre: 3,
|
||||
dureeEstimee: 12,
|
||||
budgetEstime: 28000,
|
||||
competencesRequises: ['Maçon', 'Traitement bois', 'Ventilation'],
|
||||
prerequis: ['Fondations terminées'],
|
||||
categorieMetier: 'GROS_OEUVRE',
|
||||
obligatoire: true,
|
||||
personnalisable: false,
|
||||
sousPhases: [
|
||||
{
|
||||
id: 'vs-03-01',
|
||||
nom: 'Murs vide sanitaire',
|
||||
description: 'Murs agglos 15cm avec ventilations - 4 ventilations mini par face',
|
||||
ordre: 1,
|
||||
dureeEstimee: 6,
|
||||
budgetEstime: 15000,
|
||||
competencesRequises: ['Maçon'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-03-02',
|
||||
nom: 'Traitement anti-termites',
|
||||
description: 'Traitement chimique sol + barrière physique Termimesh',
|
||||
ordre: 2,
|
||||
dureeEstimee: 3,
|
||||
budgetEstime: 8000,
|
||||
competencesRequises: ['Applicateur agréé termites'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-03-03',
|
||||
nom: 'Hourdi ventilé',
|
||||
description: 'Plancher poutrelles/hourdis avec isolation réfléchissante',
|
||||
ordre: 3,
|
||||
dureeEstimee: 3,
|
||||
budgetEstime: 5000,
|
||||
competencesRequises: ['Poseur plancher'],
|
||||
obligatoire: true
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
id: 'vs-04',
|
||||
nom: 'Élévation Murs - Système Bioclimatique',
|
||||
description: 'Murs double cloison isolante - orientation optimisée climat sahélien',
|
||||
ordre: 4,
|
||||
dureeEstimee: 25,
|
||||
budgetEstime: 55000,
|
||||
competencesRequises: ['Maçon qualifié', 'Isolateur thermique'],
|
||||
prerequis: ['Vide sanitaire achevé'],
|
||||
categorieMetier: 'GROS_OEUVRE',
|
||||
obligatoire: true,
|
||||
personnalisable: true,
|
||||
sousPhases: [
|
||||
{
|
||||
id: 'vs-04-01',
|
||||
nom: 'Mur extérieur porteur',
|
||||
description: 'Agglos 15cm - Résistance thermique climat sahélien',
|
||||
ordre: 1,
|
||||
dureeEstimee: 12,
|
||||
budgetEstime: 25000,
|
||||
competencesRequises: ['Maçon'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-04-02',
|
||||
nom: 'Isolation thermique',
|
||||
description: 'Isolation réfléchissante + laine roche 10cm - R≥3',
|
||||
ordre: 2,
|
||||
dureeEstimee: 8,
|
||||
budgetEstime: 18000,
|
||||
competencesRequises: ['Isolateur thermique'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-04-03',
|
||||
nom: 'Mur intérieur + lame air',
|
||||
description: 'Cloison placoplatre + lame air ventilée 5cm',
|
||||
ordre: 3,
|
||||
dureeEstimee: 5,
|
||||
budgetEstime: 12000,
|
||||
competencesRequises: ['Plaquiste'],
|
||||
obligatoire: true
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
id: 'vs-05',
|
||||
nom: 'Charpente Anti-Harmattan Renforcée',
|
||||
description: 'Charpente métallique galvanisée - résistance vents violents 100km/h',
|
||||
ordre: 5,
|
||||
dureeEstimee: 15,
|
||||
budgetEstime: 35000,
|
||||
competencesRequises: ['Charpentier métallique', 'Soudeur qualifié'],
|
||||
prerequis: ['Murs terminés'],
|
||||
categorieMetier: 'GROS_OEUVRE',
|
||||
obligatoire: true,
|
||||
personnalisable: true,
|
||||
sousPhases: [
|
||||
{
|
||||
id: 'vs-05-01',
|
||||
nom: 'Structure primaire',
|
||||
description: 'Fermes métalliques galvanisées - espacement 3m max',
|
||||
ordre: 1,
|
||||
dureeEstimee: 8,
|
||||
budgetEstime: 20000,
|
||||
competencesRequises: ['Charpentier métallique'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-05-02',
|
||||
nom: 'Pannes et contre-ventements',
|
||||
description: 'Pannes acier + contreventements anti-soulèvement',
|
||||
ordre: 2,
|
||||
dureeEstimee: 4,
|
||||
budgetEstime: 8000,
|
||||
competencesRequises: ['Charpentier'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'vs-05-03',
|
||||
nom: 'Fixations renforcées',
|
||||
description: 'Ancrages chimiques + boulons HA - résistance arrachement',
|
||||
ordre: 3,
|
||||
dureeEstimee: 3,
|
||||
budgetEstime: 7000,
|
||||
competencesRequises: ['Fixateur qualifié'],
|
||||
obligatoire: true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
// [CONTINUE AVEC LES 13 AUTRES PHASES ULTRA-DÉTAILLÉES...]
|
||||
]
|
||||
},
|
||||
|
||||
// ========== IMMEUBLE R+4 ZONE CÔTIÈRE ==========
|
||||
{
|
||||
id: 'immeuble-r4-cotier',
|
||||
nom: 'Immeuble R+4 - Zone Côtière Atlantique',
|
||||
description: 'Immeuble résistant embruns salés, vents forts, corrosion marine',
|
||||
categorie: 'RESIDENTIEL',
|
||||
complexiteMetier: 'EXPERT',
|
||||
dureeGlobaleEstimee: 360,
|
||||
budgetGlobalEstime: 850000,
|
||||
nombreTotalPhases: 22,
|
||||
tags: ['Côtier', 'Anti-corrosion', 'Embruns', 'Vents forts', 'R+4'],
|
||||
|
||||
phases: [
|
||||
{
|
||||
id: 'ic-01',
|
||||
nom: 'Études Spécialisées Environnement Marin',
|
||||
description: 'Études corrosion, vents, fondations marines, impact environnemental',
|
||||
ordre: 1,
|
||||
dureeEstimee: 30,
|
||||
budgetEstime: 45000,
|
||||
competencesRequises: ['Ingénieur maritime', 'Géotechnicien côtier', 'Climatologue'],
|
||||
prerequis: ['Permis construire', 'Étude impact'],
|
||||
categorieMetier: 'GROS_OEUVRE',
|
||||
obligatoire: true,
|
||||
personnalisable: false,
|
||||
sousPhases: [
|
||||
{
|
||||
id: 'ic-01-01',
|
||||
nom: 'Étude corrosion marine',
|
||||
description: 'Analyse agressivité chlorures, pH, résistivité sols',
|
||||
ordre: 1,
|
||||
dureeEstimee: 10,
|
||||
budgetEstime: 15000,
|
||||
competencesRequises: ['Spécialiste corrosion marine'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'ic-01-02',
|
||||
nom: 'Étude vents et cyclones',
|
||||
description: 'Rose des vents, pressions dynamiques, calculs structure',
|
||||
ordre: 2,
|
||||
dureeEstimee: 12,
|
||||
budgetEstime: 18000,
|
||||
competencesRequises: ['Ingénieur calcul vent'],
|
||||
obligatoire: true
|
||||
},
|
||||
{
|
||||
id: 'ic-01-03',
|
||||
nom: 'Géotechnique marine',
|
||||
description: 'Sondages marins, battage, liquéfaction, tassements',
|
||||
ordre: 3,
|
||||
dureeEstimee: 8,
|
||||
budgetEstime: 12000,
|
||||
competencesRequises: ['Géotechnicien maritime'],
|
||||
obligatoire: true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
// [AUTRES PHASES ULTRA-DÉTAILLÉES POUR ZONE CÔTIÈRE...]
|
||||
]
|
||||
}
|
||||
|
||||
// [CONTINUER AVEC TOUS LES AUTRES TEMPLATES...]
|
||||
];
|
||||
|
||||
// ================== CALCULATEUR SPÉCIALISÉ AFRIQUE ==================
|
||||
|
||||
export class CalculateurAfriqueDetaille extends CalculateurBTPAfrique {
|
||||
|
||||
/**
|
||||
* Calcul spécialisé pour fondations sols gonflants (Sahel)
|
||||
*/
|
||||
static calculerFondationsSolsGonflants(params: {
|
||||
surface: number; // m²
|
||||
chargesBatiment: number; // tonnes
|
||||
gonflementPrevu: number; // % (généralement 2-8%)
|
||||
profondeurHorsGel: number; // m
|
||||
zoneClimatique: string;
|
||||
}) {
|
||||
|
||||
const { surface, chargesBatiment, gonflementPrevu, profondeurHorsGel, zoneClimatique } = params;
|
||||
|
||||
// Profondeur fondations selon gonflement
|
||||
let profondeurRequise = Math.max(profondeurHorsGel, 1.2);
|
||||
if (gonflementPrevu > 4) profondeurRequise += 0.3;
|
||||
if (gonflementPrevu > 6) profondeurRequise += 0.5;
|
||||
|
||||
// Surface semelles (approximation 10% surface bâtiment)
|
||||
const surfaceSemelles = surface * 0.10;
|
||||
|
||||
// Volume béton semelles + longrines
|
||||
const volumeBetonSemelles = surfaceSemelles * 0.4; // 40cm hauteur moyenne
|
||||
const volumeBetonLongrines = surface * 0.15 * 0.3 * 0.4; // périmètre × section
|
||||
const volumeBetonTotal = volumeBetonSemelles + volumeBetonLongrines;
|
||||
|
||||
// Béton haute résistance pour sols agressifs
|
||||
const betonC30 = this.calculerBetonArme({
|
||||
longueur: Math.sqrt(surface),
|
||||
largeur: Math.sqrt(surface),
|
||||
epaisseur: profondeurRequise * 100,
|
||||
typeOuvrage: 'DALLE',
|
||||
classeBeton: 'C30/37', // Résistance chimique
|
||||
classeExposition: 'XC4', // Agression chimique modérée
|
||||
acierType: 'FeE500'
|
||||
});
|
||||
|
||||
// Drainage spécialisé
|
||||
const longueurDrainagePE = surface * 0.5; // 0.5ml/m²
|
||||
const volumeGravierDrainage = longueurDrainagePE * 0.3 * 0.3; // m³
|
||||
|
||||
// Matériaux anti-gonflement
|
||||
const volumeSubstitution = surface * 0.5; // 50cm substitution
|
||||
const gravierConcasse = volumeSubstitution * 1.7; // tonnes (densité 1.7)
|
||||
|
||||
return {
|
||||
fondations: {
|
||||
profondeur: profondeurRequise,
|
||||
volumeBeton: volumeBetonTotal,
|
||||
materiaux: betonC30.materiaux,
|
||||
acierRequis: Math.ceil(volumeBetonTotal * 120) // 120kg/m³ pour fondations
|
||||
},
|
||||
drainage: {
|
||||
longueurTubes: longueurDrainagePE,
|
||||
gravierDrainant: Math.ceil(volumeGravierDrainage),
|
||||
regardsVisite: Math.ceil(longueurDrainagePE / 20) // 1 regard/20ml
|
||||
},
|
||||
substitution: {
|
||||
volumeDecapage: volumeSubstitution,
|
||||
gravierSubstitution: Math.ceil(gravierConcasse),
|
||||
geotextile: Math.ceil(surface * 1.1) // +10% recouvrements
|
||||
},
|
||||
specifications: {
|
||||
classeBeton: 'C30/37 XC4',
|
||||
enrobage: '4cm minimum',
|
||||
acierType: 'FeE500 galvanisé recommandé',
|
||||
drainage: 'PE 100mm perforé + géotextile'
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Calcul toiture anti-cyclonique (zone côtière)
|
||||
*/
|
||||
static calculerToitureAntiCyclonique(params: {
|
||||
surface: number; // m²
|
||||
hauteurBatiment: number; // m
|
||||
ventMaxPrevus: number; // km/h
|
||||
formeToiture: 'TERRASSE' | 'PENTE_FAIBLE' | 'PENTE_FORTE';
|
||||
expositionVent: 'PROTEGE' | 'NORMAL' | 'EXPOSE';
|
||||
}) {
|
||||
|
||||
const { surface, hauteurBatiment, ventMaxPrevus, formeToiture, expositionVent } = params;
|
||||
|
||||
// Pression dynamique vent (formule Eurocode)
|
||||
const vitesseVent = ventMaxPrevus / 3.6; // m/s
|
||||
const pressionVent = 0.613 * Math.pow(vitesseVent, 2); // Pa
|
||||
|
||||
// Coefficients selon exposition
|
||||
const coeffExposition = {
|
||||
'PROTEGE': 0.8,
|
||||
'NORMAL': 1.0,
|
||||
'EXPOSE': 1.3
|
||||
};
|
||||
|
||||
const pressionCalcul = pressionVent * coeffExposition[expositionVent];
|
||||
|
||||
// Force arrachement totale
|
||||
const forceArrachement = surface * pressionCalcul; // N
|
||||
|
||||
// Nombre fixations nécessaires (sécurité 2.5)
|
||||
const resistanceFixation = 2000; // N par fixation (ancrage chimique)
|
||||
const nombreFixations = Math.ceil(forceArrachement * 2.5 / resistanceFixation);
|
||||
|
||||
// Espacement fixations
|
||||
const espacementFixations = Math.min(
|
||||
Math.sqrt(surface / nombreFixations),
|
||||
0.6 // maximum 60cm
|
||||
);
|
||||
|
||||
// Matériaux structure
|
||||
let epaisseurDalle = 15; // cm minimum
|
||||
if (ventMaxPrevus > 150) epaisseurDalle = 20;
|
||||
if (ventMaxPrevus > 200) epaisseurDalle = 25;
|
||||
|
||||
const betonToiture = this.calculerBetonArme({
|
||||
longueur: Math.sqrt(surface),
|
||||
largeur: Math.sqrt(surface),
|
||||
epaisseur: epaisseurDalle,
|
||||
typeOuvrage: 'DALLE',
|
||||
classeBeton: 'C35/45', // Haute résistance
|
||||
classeExposition: 'XS3', // Embruns marins
|
||||
acierType: 'FeE500'
|
||||
});
|
||||
|
||||
// Étanchéité renforcée
|
||||
const surfaceEtancheite = surface * 1.15; // +15% relevés
|
||||
const epaisseurEtancheite = ventMaxPrevus > 180 ? 2 : 1.5; // mm
|
||||
|
||||
return {
|
||||
calculs: {
|
||||
pressionVent: Math.round(pressionCalcul),
|
||||
forceArrachement: Math.round(forceArrachement / 1000), // kN
|
||||
nombreFixations,
|
||||
espacementFixations: Math.round(espacementFixations * 100) // cm
|
||||
},
|
||||
structure: {
|
||||
epaisseurDalle: epaisseurDalle,
|
||||
materiaux: betonToiture.materiaux,
|
||||
armatureSpeciale: 'Treillis soudé + cadres anti-poinçonnement'
|
||||
},
|
||||
fixations: {
|
||||
type: 'Ancrages chimiques M12 longueur 150mm',
|
||||
nombre: nombreFixations,
|
||||
espacement: `${Math.round(espacementFixations * 100)}cm`,
|
||||
couple: 'Couple serrage 85 Nm'
|
||||
},
|
||||
etancheite: {
|
||||
surface: Math.ceil(surfaceEtancheite),
|
||||
type: `Membrane EPDM ${epaisseurEtancheite}mm`,
|
||||
fixationSpeciale: 'Fixation mécanique + collage',
|
||||
lestage: ventMaxPrevus > 200 ? 'Lestage graviers 50kg/m²' : 'Non requis'
|
||||
},
|
||||
evacuation: {
|
||||
nombreEP: Math.ceil(surface / 50), // 1 EP par 50m²
|
||||
diametreEP: ventMaxPrevus > 150 ? 125 : 100, // mm
|
||||
tropPlein: 'Obligatoire si surface >200m²'
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
export default TEMPLATES_AFRIQUE_DETAILLES;
|
||||
Reference in New Issue
Block a user