🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script script_087cvmn_087.py
Version 1.0.0
Date de création 17/03/2026
Auteur / Demandeur refoïa jeremy
Objectif principal Recaler et aligner temporellement des données de production solaire déphasées par rapport à une courbe de référence via l’intercorrélation et l’interpolation.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Le script simule une courbe théorique de production solaire (cloche). Il génère ensuite une mesure « réelle » intentionnellement décalée dans le temps et bruitée. Enfin, il utilise des méthodes mathématiques pour détecter automatiquement ce décalage et « réaligner » la mesure sur le référentiel temporel correct.
📌 Problème résolu
Ce script traite le problème de la désynchronisation temporelle des capteurs (ex: horloge interne déréglée, fuseau horaire mal configuré) afin de permettre une comparaison fiable entre les prévisions théoriques et la production réelle.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.8+
OS cible Tous (Windows / Linux / MacOS)
Mode d’exécution CLI / Script de recherche
📦 Dépendances / Librairies
numpy : Calcul numérique et génération de signaux.
matplotlib : Visualisation graphique des résultats.
scipy :
scipy.signal.correlate : Pour le calcul de l’intercorrélation.
scipy.interpolate.interp1d : Pour le rééchantillonnage de la courbe recalée.
📥 ENTRÉES (INPUTS)
# Nom Type Obligatoire Description
1 temps ndarray ✅ Oui Vecteur temporel (0 à 24h).
2 decalage_reel float ✅ Oui Décalage simulé injecté (2.0h).
📂 Fichiers / Sources de données en entrée
Simulation Interne : Le script génère ses propres données via la fonction courbe_solaire.
📤 SORTIES (OUTPUTS)
# Nom Type Description Exemple
1 decalage_estime float Valeur du décalage détecté en heures. 2.18
2 courbe_recalee ndarray Données de production réalignées. [0.0, 1.2, …]
📂 Fichiers / Données en sortie
Graphique : Affichage d’une fenêtre Matplotlib comparant les trois signaux (Référence, Déplacé, Recalé).
Console : Print du décalage détecté.
🧱 STRUCTURE DU SCRIPT
script_087cvmn_087.py
│
├── 📌 SECTION 1 : Génération des données (Simulation solaire + bruit)
├── 📌 SECTION 2 : Recalage par Intercorrélation (Calcul du lag optimal)
├── 📌 SECTION 3 : Interpolation (Réalignement mathématique)
└── 📌 SECTION 4 : Visualisation (Plotting final)
🔧 Détail des fonctions principales
Fonction Paramètres Retour Rôle
courbe_solaire(t) t: temps float/array Modélise la cloche de production (Sinus au carré).
🔄 LOGIQUE / ALGORITHME
Génération : Création d’un signal de référence y=f(t) et d’un signal bruité yalt=f(t−shift)+ϵ.
Corrélation : On fait glisser les deux signaux l’un sur l’autre pour trouver le point de ressemblance maximale.
Extraction du Lag : La position du pic de corrélation correspond au décalage temporel estimé.
Correction : On applique une interpolation cubique pour reconstruire les valeurs du signal déplacé aux nouveaux points temporels synchronisés.
🚨 GESTION DES ERREURS
Bruit excessif : Si le bruit est trop élevé, le pic de corrélation peut être erroné (non géré explicitement par try/except).
Extrapolation : fill_value= »extrapolate » est utilisé pour éviter les erreurs lors du décalage en bordure de fenêtre (0h ou 24h).
✅ CONTRAINTES & RÈGLES MÉTIER
Règle 1 : La production ne peut pas être négative (np.maximum(0, …)).
Règle 2 : Le cycle est basé sur une période de 24 heures.
Règle 3 : Le recalage suppose que la forme globale du signal reste similaire entre la référence et la mesure.
🧪 TESTS ATTENDUS
# Cas de test Entrée Résultat attendu Statut
1 Cas nominal Décalage 2.0h Décalage estimé proche de 2.0 ⬜ À tester
2 Sans décalage Décalage 0h Décalage estimé ~0.0 ⬜ À tester
3 Bruit fort std > 50 Précision du recalage dégradée ⬜ À tester
📝 EXEMPLE D’UTILISATION
▶️ Lancement en ligne de commande
Bash
python script_087cvmn_087.py
📋 Sortie attendue
Plaintext
Décalage détecté : 1.94 heures
[Une fenêtre graphique s’affiche]



Avis
Il n’y a pas encore d’avis.