Mathc initiation/Fichiers c : c60cc


Sommaire


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

Crystal Clear mimetype source c.png c18c.c
/* ---------------------------------- */
/* save as c18c.c                   */
/* ---------------------------------- */
#include "x_hfile.h"
#include      "fc.h"
/* ---------------------------------- */
int main(void)
{
double ax = 0;
double bx =  3.;
double nx = 2*50;

double ny = 2*50;

double  m = 0;

 clrscrn();                           
  m = surface_dydx( g,f,
                            u,v,
                            ny,   
                            ax,bx,nx,
                            H);                            

 printf(" Evaluate this surface integrals equation.\n\n");
 printf("     //                  \n");
 printf("    ||                   \n");
 printf("    || g(x,y,f(x,y))* sqrt[ f_x(x,y)^2 + f_y(x,y)^2 + 1 ] dA = %.3f\n",m);
 printf("    ||                   \n");
 printf("   //                    \n");
 printf("   Ryx               \n\n\n");
 printf(" With.\n\n\n");
 printf(" g : (x,y,z)-> %s\n\n", geq);
 printf(" f :   (x,y)-> %s\n\n", feq);
 printf(" u :     (x)-> %s  \n", ueq);
 printf(" v :     (x)-> %s\n\n", veq);
 printf(" a = %+.1f   b = %+.1f \n",ax,bx);
 stop();

 return 0;
}
/* ---------------------------------- */
/* ---------------------------------- */


L'algorithme consiste à adapter la fonction qui calcule les intégrales doubles au calcul des surfaces en 3d.


Exemple de sortie écran :
 Evaluate this surface integrals equation.

     //                  
    ||                   
    || g(x,y,f(x,y))* sqrt[ f_x(x,y)^2 + f_y(x,y)^2 + 1 ] dA = 25.256
    ||                   
   //                    
   Ryx               


 With.


 g : (x,y,z)-> x+y+z

 f :   (x,y)-> 6-2*x-3*y

 u :     (x)-> 0  
 v :     (x)-> (6-3*x)/2

 a = +0.0   b = +3.0 
 Press return to continue.


 Sortie écran d'un CAS :
> restart:
> 
> g := (x,y,z)->x+y+z:
> f := (x,y)-> 6-2*x-3*y:
> Int(
> Int(
>       g(x,y,f(x,y))*
>    sqrt( diff(f(x,y),x)^2 + diff(f(x,y),y)^2 + 1),
> 
> y = 0 .. (6-3*x)/2),
> x = 0 .. 3);

              3    3 - 3/2 x
             /    /
            |    |
            |    |           (-x - 2 y + 6) sqrt(14) dy dx
            |    |
           /    /
             0    0

> evalf(value(%));
> 

                             25.25618736

>