Mathc initiation/Fichiers c : c41cd
La méthode des disques, est une méthode de calcul du volume d'un solide de révolution par intégration selon un axe «parallèle» à l'axe de révolution. [wikipedia]
Installer et compiler ces fichiers dans votre répertoire de travail.
c05d.c |
---|
/* ---------------------------------- */
/* save as c05d.c */
/* ---------------------------------- */
#include "x_hfile.h"
#include "fd.h"
/* ---------------------------------- */
int main(void)
{
int n = 2*10;
double a = 0.;
double b = 1.;
clrscrn();
printf(" Compute the volume V of the solid of revolution \n");
printf(" generated by revolving R about the x-axis \n\n");
printf(" Draw the region R bounded by the graph of f, \n");
printf(" the graph of g, and the vertical lines x = a and x = b\n\n");
printf(" Let f and g be continous on [%.3f,%.3f].\n\n", a, b);
printf(" f : x-> %s\n", feq);
printf(" g : x-> %s\n\n", geq);
stop();
clrscrn();
printf(" Draw a typical vertical rectangle. \n\n");
printf(" The thickness of washer : dx\n\n");
printf(" The outer radius : %s \n",feq);
printf(" The inner radius : %s \n\n",geq);
printf(" The volume : Pi [(%s)**2 - (%s)**2] dx\n\n", feq, geq);
printf(" Volume of a washer = Pi [(outer radius)**2 - (inner radius)**2] (thickness)");
printf(" \n\n\n");
stop();
clrscrn();
printf(" If we apply \n\n");
printf(" (%.3f\n", b);
printf(" int( \n");
printf(" (%.3f\n\n", a);
printf(" to : Pi [(%s)**2 - (%s)**2] dx\n\n", feq, geq);
printf(" We obtain a limit of sums of volumes of washers.\n\n");
printf(" (%.3f\n", b);
printf(" int( Pi[(%s)**2 - (%s)**2] dx = %.3f\n", feq, geq, simpson(Vwasher,a,b,n));
printf(" (%.3f\n\n\n", a);
stop();
return 0;
}
/* ---------------------------------- */
/* ---------------------------------- */
Exemple de sortie écran :
Compute the volume V of the solid of revolution
generated by revolving R about the x-axis
Draw the region R bounded by the graph of f,
the graph of g, and the vertical lines x = a and x = b
Let f and g be continous on [0.000,1.000].
f : x-> x**(1./2.)
g : x-> x**2
Press return to continue.
Dessinons avec gnuplot les deux fonctions f et g :
set zeroaxis lt 8
set grid
plot [0.000:1.000] [-1.000:1.000] x**(1./2.),\
x**2
reset
Exemple de sortie écran :
Draw a typical vertical rectangle.
The thickness of washer : dx
The outer radius : x**(1./2.)
The inner radius : x**2
The volume : Pi [(x**(1./2.))**2 - (x**2)**2] dx
Volume of a washer = Pi [(outer radius)**2 - (inner radius)**2] (thickness)
Press return to continue.
Dessinons un rectangle pour construire l'équation du volume:
set zeroaxis lt 8
set grid
set object 3 rect from 0.5,0.5**2. to 0.52,0.52**(1./2.)
plot [0.000:1.000] [-1.000:1.000] x**(1./2.),\
x**2
reset
Exemple de sortie écran :
If we apply
(1.000
int(
(0.000
to : Pi [(x**(1./2.))**2 - (x**2)**2] dx
We obtain a limit of sums of volumes of washers.
(1.000
int( Pi[(x**(1./2.))**2 - (x**2)**2] dx = 0.942
(0.000
Press return to continue.
Vérifier le résultat avec Octave 5.2 : I = quad (f, a, b)
>> I = quad (@(x) pi*(sqrt(x).*sqrt(x)-(x**2).*(x**2)),0,1)
I = 0.94248