ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Métodos numéricos.


Enviado por   •  8 de Febrero de 2016  •  Documentos de Investigación  •  8.167 Palabras (33 Páginas)  •  391 Visitas

Página 1 de 33

Instituto Politécnico Nacional

Escuela Superior de Ingeniería Mecánica y Eléctrica

Unidad Azcapotzalco

[pic 1]

[pic 2]

Cervantes García Armando

Chicalote Rodríguez Ivan

Botello Viana Edgar

Hernández Pérez Josué

2MV3

Documentación

Equipos G2 y C

Profesor: Domínguez Zamilpa David

Métodos Numéricos

Contenido

Euler        

Mínimos cuadrados múltiples        

Runge Kutta        

Simpson 1/3 Multiple        

Simpson 1/3 Simple        

Simpson 3/8        

Simpson Combinado        

Trapecio Multiple        

Trapecio Simple        


Euler

#include

#include

void enc()

{

     clrscr();

     gotoxy(35,1);

     printf("I.P.N.");

     gotoxy(33,2); printf("E.S.I.M.E.");

     }

void enunciado()

{

     gotoxy(3,5);

     printf("Problema: Utilizar el metodo de euler para ");

     printf("integrar numericamente la ecuacion siguiente");

     printf("f(x,y) = -2x^3+ 12x^2 -20x +8.5");

     printf("de x=0 hasta x=4 con un tamaño de paso de 0.5");

     printf("La condicion inicial en x=0 es y=1. Tomar en");

     printf("cuenta que la solucion exacta esta dada por la");

     printf("ecuacion y = -0.5x^4 + 4x^3 - 10x^2 + 8.5x +1 \n");

     printf("........................................");

     printf(".........................................\n");

     gotoxy(35,10); printf("SOLUCION\n");

     }

void euler()

{

     float fxi;

     float vi_1, vi;

     float f_xy;

     float h;

     float xr, yr;

     float yi, yi_1;

     

     fxi=0, yi=1, h=0.5, xr=0, yr=1, yi_1=1;

     gotoxy(1,11);

     printf("\nUsando la ecuacion de Euler yi+1 = yi + f(xi, xi) * h");

     gotoxy(1,13);

     printf("x     yverdadera     yeuler\n");

     printf("---------------------------------------\n");

     printf("%f %f %f\n",fxi, yr, yi_1);

     for (fxi=0; fxi<4; fxi=fxi+0.5){

         

         f_xy = -2*fxi*fxi*fxi+12*(fxi*fxi) - 20*fxi +8.5;

         yi_1 = yi + f_xy*h;

         

         xr=xr+0.5;

         yr=-0.5*(xr*xr*xr*xr)+4*(xr*xr*xr)-10*(xr*xr)*8.5*(xr)+1;

         

         printf("%f %f %f \n",fxi+0.5,yr,yi_1);

         yi=yi_1;

         }

     }

     

int main()

{

    char c;

    enc();

    enunciado();

    euler();

    getch();

    return 0;

}    

[pic 3]


Mínimos cuadrados múltiples

/*Metodo de Aproximacion Funcional */

/*Metodo de Minimo Cuadrados Lineales */

/*

 NOTA IMPORTANTE: Tomar como datos de prueba los

 valores del siguiente ejercicio del texto*/

#include

#include

#include

float m[10][10];

float ec[3][4]={

      0.0,0.0,0.0,0.0,

      0.0,0.0,0.0,0.0,

      0.0,0.0,0.0,0.0

      };

float ec1[3][4]={

      0.0,0.0,0.0,0.0,

      0.0,0.0,0.0,0.0,

      0.0,0.0,0.0,0.0

      };

int n;

int i,j;

int ren;

int cl,ln;

float suma_y;

float suma_x,suma_xy,suma_x2;

float suma_c1,suma_c2,suma_c3,A,B;

float bufer1, bufer2;

int main()

{

suma_y=suma_x=suma_xy=suma_x2=0.0;

suma_c1=suma_c2=suma_c3=A=B=0.0;

bufer1=bufer2=0.0;

cl=ln=0;

i=j=n=0;

ren=0;

for(i=0;i<10;i++){

 for(j=0;j<9;j++){

  m[i][j]=0.0;

 }

}

clrscr();

gotoxy(10,4);printf("Numero de puntos a aproximar:");

scanf("%d",&n);

cl=1;

for(i=1;i<=n;i++){

 ren=1;

 ln=5;cl=cl+10;

 gotoxy(cl,ln);printf("x%d=",i);scanf("%f",&m[1][i]);

 ren=2;

 ln=7;

 gotoxy(cl,ln);printf("y%d=",i);scanf("%f",&m[ren][i]);

}

/*Calcular las sumatorias*/

for(i=1;i

 suma_y=suma_y+m[2][i];

 suma_x=suma_x+m[1][i];

 suma_xy=suma_xy+m[1][i]*m[2][i];

 suma_x2=suma_x2+pow(m[1][i],2);

}

/*Colocando los valores de las sumatorias en la matriz

de las ecuaciones*/

ec[1][1]=suma_x;

ec[1][2]=n;

ec[1][3]=suma_y;

ec[2][1]=suma_x2;

ec[2][2]=suma_x;

ec[2][3]=suma_xy;

printf("\n\n suma_y=%f",suma_y);

printf("\n  suma_x=%f",suma_x);

printf("\n    n=%d",n);    

printf("\n  suma_xy=%f",suma_xy);

printf("\n suma_x^2=%f\n",suma_x2);

 

/*Resolviendo el sistema por el metodo de suma y resta

y sumando verticalmente para eliminar a la constante B*/

...

Descargar como (para miembros actualizados) txt (24 Kb) pdf (433 Kb) docx (130 Kb)
Leer 32 páginas más »
Disponible sólo en Clubensayos.com