Subido por Cristian Anthony Morales Esquivel

TERCER EXAMEN PARCIAL ANALISIS NUMERICO TERMINADO

Anuncio
TERCER EXAMEN PARCIAL ANALISIS
ALUMNO:
MORALES ESQUIVEL, CHRISTIAN ANTHONY
EXAMEN:
CODIGO HECHO EN C++:
#include<conio.h>
#include<iostream>
#include<math.h>
#include<tablero.h>
using namespace std;
float e=2.7182818;
//PROTOTIPO DE FUNCION
float funcion2(float x);
float funcion(float x , float y);
int main()
{
float a , b , h , wo;
int n;
cout<<"\n\t\tPOLINOMIO DE RUNKE JUTA ORDEN 4"<<endl<<endl;
cout<<"\n\tFUNCION: Y(X)= 1.3(e)^(-X)+3.7(e)^(-2x)"<<endl;
cout<<"\tA continuacion ingrese intervalo [ a , b ] donde se evaluara."<<endl;
cout<<"\n\tIngrese a : ";
cin>>a; // a=0
cout<<"\n\tIngrese b : ";
cin>>b; // b=5
cout<<"\n\tIngrese numero de subintervalos : ";
cin>>n; // n=10
cout<<"\n\n\tINGRESE VALOR INICIAL ( W(0) ): ";
cin>>wo; //wo=5
h=(b-a)/n; //h=0.5
cout<<"\n\n\th = "<<h<<endl<<endl;
float t[n+1] , w[n+1], k[4] , wexact[n+1];
t[0]=a; //0
w[0]=wo; //5
k[0]=h*(funcion(t[0],w[0])); // ( 0.5 ) * funcion ( 0 , 5 )
//ARREGLO PARA LOS TIEMPOS
for(int i=1; i<n+1; i++){
t[i]=a+i*h;
}
cout<<"\n\n\tx(i)\ty(i) APROX."<<endl;
cout<<"\t"<<t[0]<<"\t"<<w[0]<<endl;
for(int i=1; i<n+1; i++){
k[0]=h*funcion(t[i-1],w[i-1]); //K1
k[1]=h*funcion(t[i-1]+(h/2.0),w[i-1]+(k[0]/2.0));//K2
k[2]=h*funcion(t[i-1]+(h/2.0),w[i-1]+(k[1]/2.0));//K3
k[3]=h*funcion(t[i],w[i-1]+k[2]);//K4
w[i]=w[i-1]+(1/6.0)*(k[0]+2*k[1]+2*k[2]+k[3]);// W1
cout<<"\t"<<t[i]<<"\t"<<w[i]<<endl;
}
gotoxy(30,21); cout<<"y(i) EXACTA";
for(int i=0; i<n+1; i++){
gotoxy(30,22+i); cout<<funcion2(t[i]);
}
getch();
}
//DEFINICION DE FUNCIONES
/* FUNCION EXACTA:
y(x) = 1.3(e)^(-x) + 3.7(e)^(-2x)
*/
float funcion2( float x){
float fy;
fy=1.3*(pow(e,-x))+3.7*(pow(e,-2*x));
return fy;
}
/*FUNCION DE DERIVADA:
y´= 1.3 ( e )^ ( -x ) - 2( y )
*/
float funcion(float x , float y){
float f;
f=1.3*pow(e,-x)-2*(y);
return f;
}
CUADRO QUE MUESTRO AL COMPILAR:
GRAFICA:
X VS APROXIMACION OBTENIDA
X VS SOLUCION EXACTA
X VS APROX
0
5
0.5 2.17872
1
1.00123
1.5 0.487193
2
0.250465
2.5 0.135028
3
0.0755661
3.5 0.0434584
4
0.0254683
4.5 0.0151134
5
0.0090415
X VS EXACTA
0
5
0.5 2.14964
1
0.978984
1.5 0.474281
2
2.5
3
3.5
4
4.5
5
0.243704
0.131641
0.0738946
0.0426306
0.0250515
0.0148983
0.00892731
Descargar