LAGRANGE

PROGRAMACIÒN EN MATLAB DE LAGRANGE A continuacion se presenta las presiones de vapor del cloruro de magnesio: PUNTOS P (

Views 346 Downloads 8 File size 80KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

  • Author / Uploaded
  • ivan
Citation preview

PROGRAMACIÒN EN MATLAB DE LAGRANGE A continuacion se presenta las presiones de vapor del cloruro de magnesio: PUNTOS P (mmHg) T(°C)

0 10 930

1 2 3 20 40 60 988 1050 1088

4 100 1142

5 200 1316

6 400 1223

7 760 1418

Calcule la presion de vapor correspondiente a T=1000 °C clc clear all fprintf('\n\n\n'); fprintf('Polinomio de Lagrange\n'); fprintf('********************\n\n'); X=input('Ingrese las temperaturas x:'); Y=input('Ingrese las presiones y:'); XINT=input('Ingrese el valor a interpolar=:'); fprintf('\n\n'); %X es el vector de abscisas %Y es el vector de ordenadas %C es la matriz de coeficientes de interpolacion polinomial %L es la matriz de coeficientes polinomiales %FXINT es la matriz de coeficientes polinomiales a=XINT; w=length(X); n=w-1; L=zeros(w,w); for k=1:n+1 V=1; for j=1:n+1 if k~=j b=X(k)-X(j); V=conv(V,poly(X(j)))/(X(k)-X(j)); end end L(k,:)=V; end C=Y*L; FXINT=polyval(C,[a]) disp('Los coeficientes de la interpolacion son:');disp(C); disp('La matriz de los coeficientes polinomiales son :');disp(L); disp('El valor interpolado de la funcion :');disp(FXINT); Polinomio de Lagrange ******************** Ingrese las temperaturas x:[930 988 1050]

Ingrese las presiones y:[10 20 40] Ingrese el valor a interpolar=1.8:1000

FXINT = 23.1201 Los coeficientes de la interpolacion son: 0.0013 -2.2278 999.4828 La matriz de los coeficientes polinomiales son : 0.0001 -0.2928 149.0517 -0.0003 0.5506 -271.5517 0.0001 -0.2578 123.5000 El valor interpolado de la funcion : 23.1201 mmHg

OTRA FORMA SIMPLE X0=930 X1=988 X2=1050 FX0=10 FX1=20 FX2=40 X=1000 L0=((X-X1)*(X-X2))/((X0-X1)*(X0-X2)) L1=((X-X0)*(X-X2))/((X1-X0)*(X1-X2)) L2=((X-X0)*(X-X1))/((X2-X0)*(X2-X1)) T2=L0*FX0+L1*FX1+L2*FX2

OTRO: clc X0=0.5; X1=1; X2=1.5; X3=2; X4=3; FX0=1.02; FX1=0.84; FX2=0.69; FX3=0.56; FX4=0.35; syms X L0=((X-X1)*(X-X2)*(X-X3)*(X-X4))/((X0-X1)*(X0-X2)*(X0-X3)*(X0-X4)); L1=((X-X0)*(X-X2)*(X-X3)*(X-X4))/((X1-X0)*(X1-X2)*(X1-X3)*(X1-X4));

L2=((X-X0)*(X-X1)*(X-X3)*(X-X4))/((X2-X0)*(X2-X1)*(X2-X3)*(X2-X4)); L3=((X-X0)*(X-X2)*(X-X1)*(X-X4))/((X3-X0)*(X3-X2)*(X3-X1)*(X3-X4)); L4=((X-X0)*(X-X1)*(X-X3)*(X-X2))/((X4-X0)*(X4-X1)*(X4-X3)*(X4-X2)); T2=L0*FX0+L1*FX1+L2*FX2+L3*FX3+L4*FX4 X=1.05 P=diff(T2) T=eval(P) OTRO: clc clear all fprintf('\n\n\n'); fprintf('Polinomio de Lagrange\n'); fprintf('********************\n\n'); X=input('Ingrese las temperaturas x:'); Y=input('Ingrese las presiones y:'); XINT=input('Ingrese el valor a interpolar=:'); fprintf('\n\n'); %X es el vector de abscisas %Y es el vector de ordenadas %C es la matriz de coeficientes de interpolacion polinomial %L es la matriz de coeficientes polinomiales %FXINT es la matriz de coeficientes polinomiales a=XINT; w=length(X); n=w-1; L=zeros(w,w); for k=1:n+1 V=1; for j=1:n+1 if k~=j b=X(k)-X(j); V=conv(V,poly(X(j)))/(X(k)-X(j)); end end L(k,:)=V; end C=Y*L; FXINT=polyval(C,[a]) disp('Los coeficientes de la interpolacion son:');disp(C); disp('La matriz de los coeficientes polinomiales son :');disp(L); disp('El valor interpolado de la funcion :');disp(FXINT); OTRO: %Programa Polinomios de Lagrange clc clear c=0;

disp(' ') disp(' Método Numérico Polinomios de Lagrange ') disp(' ************************************** ') N=input(' Ingrese el grado de polinomio a aproximar: '); x=input(' Ingrese los valores x(i): '); F=input(' Ingrese los valores f(xi): '); syms x Fx=0; I=1; while I