Slt,
je veux faire une interpolation linéaire d'une fonction sur une grille par un programme Fortran, est ce que quelqu'un peu m'aider.
Merci.
Version imprimable
Slt,
je veux faire une interpolation linéaire d'une fonction sur une grille par un programme Fortran, est ce que quelqu'un peu m'aider.
Merci.
Bonjour
merci pour la subroutine
pour mon cas je définis dans mon code une grille non uniforme x(i)=x(i-1)+dx
y(j)=y(j-1)+dy
dx et dy variable
et je veux déterminer par interpolation les valeurs de f déjà calculée dans une grille uniforme
x0(i)=x0(i-1)+Dx
y0(j)=y0(j-1)+Dy
où Dx=Dy=1
donc dans mon cas les choses s'exprimeront comme étant :
MAILLX=x0
MAILLY=y0
CHAMPS=f(y0,x0)
par contre le tableau que je dois donner en entrée je n'ai pas bien saisi que sont- ils ses éléments ?
Merci
Salut!
Il conviendrait de préciserCitation:
interpolation linéaire d'une fonction sur une grille
- si le domaine d'intégration est bidimensionnel ou tridimensionnel;
- si ta grille est à mailles carrées (ou cubiques) ou si les mailles sont des triangles (ou des tétraèdres)
Jean-Marc Blanc
bonsoir
1. le domaine est bidimensionnel
2.les mailles sont carrés
Merci
Salut!
Alors, c'est tout simple:
Tu as une maille définie par x1<=x<=x2 et y1<=y<=y; tu connais les valeurs de f(x,y) sur les quatre sommets, soit:
f11=f(x1,y1)
f12=f(x1,y2)
f21=f(x2,y1)
f22=f(x2,y2)
L'interpolation donne
F(x,y)=f11+f12*(y-y1)/y2-y1)+f21(x-x1)/(x2-x1)+f22*((x-x1)*(y-y1))/((x2-x2)*(y2-y1))
Jean-Marc Blanc