Sommaire


Installer et compiler ces fichiers dans votre répertoire de travail.


c00a.c
/* ---------------------------------- */
/* save as c00a.c                     */
/* ---------------------------------- */
#include "x_hfile.h"
#include      "fa.h"
/* ---------------------------------- */
int main(void)
{ 
double Ix = simpson_dydx(y2f,      u,v,LOOP, ax,bx,LOOP);
double Iy = simpson_dydx(x2f,      u,v,LOOP, ax,bx,LOOP);
double I0 = simpson_dydx(x2plsy2f, u,v,LOOP, ax,bx,LOOP);

 clrscrn();

 printf(" Find the polar moment of inertia of the lamina\n");
 printf(" that has the shape of the region bounded by the   \n");
 printf(" graphs of the given equations.\n\n");

 printf(" y = %s, y = %s, x = %+.1f, x = %+.1f,  \n\n", veq, ueq, bx ,ax);
 printf(" and f(x,y)  (the area mass density at (x,y)) \n\n\n");
 printf(" f : (x,y)-> %s    \n\n", feq);
 printf(" These give :      \n\n");
 printf(" v :   (x)-> %s      \n", veq);
 printf(" u :   (x)-> %s    \n\n", ueq);
 printf(" bx :   %+.1f   \n", bx);
 printf(" ax :   %+.1f \n\n", ax);
 stop();

 clrscrn();

 printf("   Compute the moment of inertia Ix.\n\n");
 printf("         (b     (v(x)\n");
 printf(" Ix = int(   int(    y**2  f(x,y)  dy dx\n");
 printf("         (a     (u(x)\n\n");
   
 printf("   Compute the moment of inertia Iy.\n\n");
 printf("         (b     (v(x)\n");
 printf(" Iy = int(   int(     x**2  f(x,y)  dy dx\n");
 printf("         (a     (u(x)\n\n");

 printf("   The polar moment of inertia :  \n\n");
 printf("    I0 = Ix + Iy\n\n");
   
 printf(" or directly.\n\n");
 printf("         (b     (v(x)\n");
 printf(" I0 = int(   int(     (x**2 + y**2)  f(x,y)  dy dx\n");
 printf("         (a     (u(x)\n\n");
 stop();

 clrscrn();

 printf("   Compute the moment of inertia Ix.\n\n");
 printf("         (%.3f  (%s\n",      bx,veq);
 printf(" Ix = int(    int(       %s  dy dx = %.3f\n", y2feq, Ix);
 printf("         (%.3f  (%s\n\n",    ax,ueq); 
 
   
 printf("   Compute the moment of inertia Iy.\n\n");
 printf("         (%.3f  (%s\n",      bx,veq);
 printf(" Iy = int(    int(       %s  dy dx = %.3f\n", x2feq, Iy);
 printf("         (%.3f  (%s\n\n",    ax,ueq);

 printf("   The polar moment of inertia :  \n\n");
 printf("    I0 = Ix + Iy = %.3f\n\n",Ix+Iy);


 printf(" or directly.\n\n");
 printf("         (%.3f  (%s\n",      bx,veq);
 printf(" I0 = int(    int(       %s  dy dx = %.3f\n", x2plsy2feq, I0);
 printf("         (%.3f  (%s\n\n",    ax,ueq);
 stop();
 
 return 0;
}
/* ---------------------------------- */
/* ---------------------------------- */


Le moment d'inertie est une mesure de la résistance d'un objet à l'accélération angulaire. Le moment d'inertie polaire est une mesure de la résistance d'un objet à la torsion.

Exemple de sortie écran :

 Find the polar moment of inertia of the lamina
 that has the shape of the region bounded by the   
 graphs of the given equations.

 y = sqrt(x), y = 0, x = +9.0, x = +0.0,  

 and f(x,y)  (the area mass density at (x,y)) 


 f : (x,y)-> x + y    

 These give :      

 v :   (x)-> sqrt(x)      
 u :   (x)-> 0    

 bx :   +9.0   
 ax :   +0.0 

 Press return to continue.

Exemple de sortie écran :

   Compute the moment of inertia Ix.

         (b     (v(x)
 Ix = int(   int(    y**2  f(x,y)  dy dx
         (a     (u(x)

   Compute the moment of inertia Iy.

         (b     (v(x)
 Iy = int(   int(     x**2  f(x,y)  dy dx
         (a     (u(x)

   The polar moment of inertia :  

    I0 = Ix + Iy

 or directly.

         (b     (v(x)
 I0 = int(   int(     (x**2 + y**2)  f(x,y)  dy dx
         (a     (u(x)

 Press return to continue.


Exemple de sortie écran :

   Compute the moment of inertia Ix.

         (9.000  (sqrt(x)
 Ix = int(    int(       y**2   (x + y)  dy dx = 269.036
         (0.000  (0

   Compute the moment of inertia Iy.

         (9.000  (sqrt(x)
 Iy = int(    int(       x**2   (x + y)  dy dx = 5194.126
         (0.000  (0

   The polar moment of inertia :  

    I0 = Ix + Iy = 5463.161

 or directly.

         (9.000  (sqrt(x)
 I0 = int(    int(       (x**2 + y**2) (x + y)  dy dx = 5463.161
         (0.000  (0

 Press return to continue.