//****************************************************************************** //* Programme de démonstration d'utilisation de la méthode d'Euler pour résoudre //* une EDO de premier ordre. //* //* Dominique Lefebvre - TangenteX.com octobre 2008 //****************************************************************************** #include #include #include //****************************************************************************** //* Calcul de la valeur de la dérivée en x //* l'équation différentielle est y' = 1/x² //****************************************************************************** double Derivee(double x) { double dx; dx = 1/(x*x); return dx; } //****************************************************************************** //* Programme principal //****************************************************************************** int main(int argc, char *argv[]) { //* Declaration des variables int i, N; double h; double *x, *y; FILE *fp; //* Déclaration des constantes de calcul h = 0.01; // pas pour le calcul N = 500; //* Allocation de la mémoire pour les tableaux de calcul x = (double *)malloc((unsigned)(N+1)*sizeof(double)); y = (double *)malloc((unsigned)(N+1)*sizeof(double)); //* Determination des conditions initiales x0= 1 y0 = 0 x[0] = 1.0; // abscisse initiale y[0] = 0.0; // ordonnée initiale //* Calcul for (i=0; i