Mathc initiation/Fichiers c : c71c02
Apparence
Installer et compiler ces fichiers dans votre répertoire de travail.
c01b.c |
---|
/* ---------------------------------- */
/* save as c1b.c */
/* ---------------------------------- */
#include "x_hfile.h"
#include "fb.h"
/* ---------------------------------- */
int main(void)
{
int n = 2*50;
double a = 0.;
double b = 1.;
clrscrn();
printf(" With the Simpson's rule. (n = %d)\n\n"
" (%.3f\n"
" int( (%s) * dx = %.6f\n"
" (%.3f\n\n\n\n",n, b, feq, simpson(f,a,b,n), a);
printf(" With the antiderivative of f.\n\n"
" F(x) = %s \n\n\n"
" F(%.3f) - F(%.3f) = %.6f \n\n\n", Feq, b,a, F(b)-F(a));
stop();
return 0;
}
/* ---------------------------------- */
Calculons l'intégrale avec la fonction simpson(f,a,b,n); puis avec sa primitive F(x). Exemple de sortie écran :
With the Simpson's rule. (n = 100)
(1.000
int( (atan(x)) * dx = 0.438825
(0.000
With the antiderivative of f.
F(x) = atan(x) * x - 1/2 * log(1 + x**2)
F(1.000) - F(0.000) = 0.438825
Press return to continue.
Calculons la primitive :
/
Calculer la primitive de | atan(x) dx
/
Utilisons l'intégration par partie
u = ... dv = ...
du = ... v = ...
/ /
| u dv = u v - | v du
/ /
Nous savons que la dérivé de atan(x) est 1/(1+x**2).
Nous ne connaissons pas sa primitive.
Nous allons multiplier atan(x) par 1.
Nous allons poser que u = atan(x) et dv = 1 dx.
/
| (atan(x)*1) dx =
/
u = atan(x) dv = 1 dx
du = 1/(1+x**2) dx v = x
/ (u*v) / (v du)
| (atan(x)*1) dx = atan(x) * x - | ( x * 1/(1+x**2)) dx
/ /
_____________________
| k = (1+x**2) |
| dk = 2*x dx |
| (1/2) dk = x dx |
|_____________________|
/ /
| atan(x) dx = atan(x) x - | (1/(1+x**2)) (x dx)
/ /
/ /
| atan(x) dx = atan(x) x - (1/2) | (1/k) dk
/ /
/
| atan(x) dx = atan(x) x - (1/2) ln|k| + c
/
/
| atan(x) dx = atan(x) x - (1/2) ln|1+x**2| + c
/