logo  XonGrid : macro complémentaire d'interpolation

XonGrid est une bibliothèque libre de fonctions Excel pour réaliser des interpolations 1D, 2D, 3D, 4D et de dimension quelconque (ND) à partir de données éparses. [ this page in english ]

↓↓ TÉLÉCHARGER XonGrid 4 pour Excel 32 / 64 bits ↓↓
↓↓ TÉLÉCHARGER XonGrid 4 sources ↓↓

Caractéristiques

Captures d'écran!

Interpolation 1D

Exemple d'interpolation

Can't display image

Exemple 2D

Installer la macro complémentaire

Télécharger et extraire l'archive de XonGrid, ouvrir le chargeur de macro complémentaire appelé INSTALL-XLL et cliquer sur le bouton «Install xll». Il n'est pas nécessaire d'être administrateur pour installer la macro complémentaire.

Les macros doivent être activées pour utiliser le chargeur de macro complémentaire. Si vous ne pouvez pas activer les macros, suivre ces instructions pour charger la macro complémentaire dans Excel. Pour la version 32 bits d'Excel sélectionner XonGrid.xll et pour la version 64 bits d'Excel sélectionner XonGrid-w64.xll.

Utiliser la macro complémentaire

Pour utiliser une fonction d'interpolation, cliquer sur le bouton fx dans la barre de formule, sélectionner la catégorie XonGrid 4 interpolation, choisir une fonction et saisir vos données.

Des exemples d'utilisation sont fournis avec l'archive de XonGrid.

Fonctions et options d'interpolation

Les fonctions d'interpolation disponibles et leurs options sont présentées dans le tableau ci-dessous. L'interpolation par Krigeage avec Method = 1.5 est vigoureusement recommandée. Cliquer sur les liens pour la définition des fonctions (en anglais).

Nom de
la Fonction
Pondération
des
paramètres
Interpolation
linéaire
Interpolation
Akima
Interpolation
par
voisins naturels
Interpolation
au plus
proche voisin
Interpolation
par
Krigeage
Interp1d No
Sans objet
Yes
Method = −1
Yes
Method = −2
No
Non disponible
Yes
Method = 0
Yes
Method
= 1 à 1.99
Interp2dTab Yes
Scaling
= 0 ou 1
No
Non
disponible
Yes
Method = −3
Interp2d No
Non
disponible
Interp3d No
Non
disponible
Interp4d
InterpNd Voir la description de la function

Pondération des paramètres (Scaling = 0 ou 1)

Dans un espace Euclidien, la distance entre deux points A et B est donnée par :

Cette distance est utilisée si Scaling = 0

Si les paramètres sont des variables physiques non homogènes (des Volts et des kg par exemple), calculer la distance sans pondération n'a aucun sens. Si Scaling = 1, XonGrid calcule la distance avec des paramètres normé et la transformation présentée ci-dessous est appliquée aux paramètres.

Can't display image

Espace des paramètres initial (Scaling = 0) → Espace des paramètres normés (Scaling = 1)

La distance dans l'espace normé est :

Can't display image

Cette distance est utilisée si Scaling = 1

Méthodes d'interpolation

Interpolation linéaire 1D (Method = −1)

XonGrid considère une variation linéaire de la fonction entre les valeurs connues.

Interpolation Akima 1D (Method = −2)

XonGrid utilise la méthode d'interpolation Akima. [ l'article original d'Akima ]

Interpolation bilinéaire 2D (Method = −1)

XonGrid réalise une interpolation bilinéaire à partir des données tabulées.

Interpolation 2D par voisins naturels (Method = −3)

Xongrid appelle nn une implémentation de l'interpolation par voisins naturels (en anglais).

Interpolation au plus proche voisin (Method = 0)

XonGrid renvoie la valeur de la fonction au point le plus proche.

Interpolation par Krigeage (1 ≤ Method ≤ 1.99)

XonGrid utilise le Krigeage ordinaire avec le variogramme en puissance présenté ci-dessous.

V[ij] = r[ij]^Beta

avec 1 ≤ β ≤ 1.99 (β = 1.5 est un bon choix)

L'interpolation par Krigeage avec sur de grands ensembles de données nécessite une grande quantité de mémoire. Pour prévenir des instabilités avec Excel, le nombre de points est limité à 1024. Il faut utiliser le paramètre facultatif SubKriging pour effectuer une interpolation par Krigeage avec plus de 1024 points :

Can't display image

Sélection d'un sous ensemble avec SubKriging = 6 ou SubKriging = −R

Si le paramètre SubKriging est manquant, tout les points seront utilisés pour l'interpolation par Krigeage.

Si Scaling = 1, la distance pour la sélection des points les plus proches est calculée dans l'espace normé (c.f. paragraphe «Pondération des paramètres»)

Interpolation définie par l'utilisateur (Method = 100)

Une méthode d'interpolation utilisateur peut être définie dans le fichier source/user-defined.c du code source. Les instructions de compilation sont données dans le fichier README.

Interface avec Visual Basic

Deux fonctions d'interpolation de XonGrid peuvent être appelées à partir de Visual Basic :

La déclaration de ces functions et trois exemples d'utilisation sont donnés dans le fichier Example-VB.

Fonctions d'approximation et de régression

Ces fonctions ne respectent pas toujours les données. Elles fournissent une valeur lissée ou approximative de la fonction. Plusieurs paramètres sont disponibles pour contrôler l'approximation des données.

Régression ND par processus gaussien

La régression par processus gaussien est un autre nom donné au Krigeage. Cette implémentation est plus sophistiquée que celle employée pour l'interpolation. Les fonctions disponibles sont :

Une introduction à la régression de processus gaussien est donnée dans les chapitres suivants de Numerical Recipes (en anglais):

L'accés invité à Numerical Recipes est limité à quelques douzaines de pages par mois.

Des exemples d'utilisation sont donnés dans le fichier Example-gpr.

Approximation 2D par splines cubiques

XonGrid utilise csa, un implémentation de l'approximation par splines cubiques. Deux fonctions sont disponibles:

Des exemples d'utilisation sont donnés dans le fichier Example-csa.

Compiler à partir du code source

Télécharger le code source, extraire l'archive et suivre les instructions du fichier README.

Remerciements

XonGrid utilise les éléments suivants :

Questions Fréquentes

Est-ce gratuit ?

Oui. XonGrid est un logiciel libre. Lire la licence pour plus de détails. Néanmoins, si vous avez trouvé XonGrid vraiment utile, j'accepte les remerciements à cette adresse.

L'interpolation est lente !

Si vous effectuez de multiples interpolations sur le même ensemble de données, vous devriez essayer les formules de tableaux, comme indiqué sur les fichiers d'exemple. Le tableau ci-dessous montre le temps de calcul pour diverses interpolations par Krigeage (β = 1.5).

Fonction
d'interpolation
Nombre de
de points
de données
Nombre de
valeurs
interpolées
Temps de calcul
avec formules
simples (s)
Temps de calcul
avec formules
de tableaux (s)
Accélération
du calcul
Interp1d 12 46 0.02 0.006 3
Interp1d 1000 46 23 0.5 46
Interp2d 16 256 0.14 0.025 6
Interp3d 64 256 0.56 0.03 19
Interp4d 192 256 0.9 0.05 18
InterpNd (N=2) 121 121 0.57 0.021 27

Plus les données sont nombreuses, plus l'accélération du calcul est importante.

Le calcul multithread améliore significativement les performances. Pour activer le calcul multithread, suivez ces instructions. Enfin, cet excellent article contient tout ce qu'il faut savoir pour améliorer les performances d'Excel.

Quelle méthode d'interpolation choisir ?

Le choix de la méthode d'interpolation dépends:

Normalement, tant que les données à interpoler contiennent approximativement moins de 200 points, les performances ne devraient pas poser de problème quelque soit la méthode employée. Pour choisir une méthode d'interpolation, utilisez la figure ci-dessous. Elle montre les propriétés relatives des méthodes d'interpolation dans un plan continuité / performance.

Can't display image

Méthodes d'interpolation : continuité / performance

Quel est le dossier par défaut des macros complémentaires ?

Depuis Windows Vista et Excel 2007, c'est %APPDATA%\Microsoft\AddIns. La commande suivante devrait ouvrir ce dossier :

explorer.exe %APPDATA%\Microsoft\AddIns

Comment mettre-à-jour la macro complémentaire ?

Ouvrir le chargeur de macro complémentaire appelé INSTALL-XLL et cliquer sur le bouton «Reinstall or update xll».

Ou, remplacer les fichiers .xll et .chm dans le dossier des macros complémentaires.

Comment désinstaller la macro complémentaire ?

Ouvrir le chargeur de macro complémentaire appelé INSTALL-XLL et cliquer sur le bouton «Uninstall xll».

Ou, effacer les fichiers .xll et .chm dans le dossier des macros complémentaires.

Pourquoi le lien bleu d'aide ne fonctionne pas ?

Les fichiers .xll et .chm doivent être dans le même dossier.