matlab ejercicios

aplicación del calculo diferencial e integral Tema: Nro. PFR Página 1/18 Semestre : Grupo : Trabajo aplicativo CURSO:

Views 270 Downloads 7 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

aplicación del calculo diferencial e integral Tema:

Nro. PFR Página 1/18 Semestre : Grupo :

Trabajo aplicativo

CURSO:aplicación del calculo integral e integral Trabajo aplicativo “matlab”

Cristhian Adolfo Mesias Tapia Diego Alonso Albarracin Mogrovejo Alumno (s):

Programa Profesor Fecha de entrega

: Pfr : Roberto Choquehuayta : 28 11 14 Hora: 8.00

Nota:

II E

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 2/20

1.INTRODUCCION:

MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es una herramienta de software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M) y servicio de especie. Está disponible para las plataformas Unix, Windows, Mac OS X y GNU/Linux . Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware. El paquete MATLAB dispone de dos herramientas adicionales que expanden sus prestaciones, a saber, Simulink (plataforma de simulación multidominio) y GUIDE (editor de interfaces de usuario - GUI). Además, se pueden ampliar las capacidades de MATLAB con las cajas de herramientas (toolboxes); y las de Simulink con los paquetes de bloques (blocksets). Es un software muy usado en universidades y centros de investigación y desarrollo. En los últimos años ha aumentado el número de prestaciones, como la de programar directamente procesadores digitales de señal o crear código VHDL.

2. OBJETIVOS  Resolver y demostrar por medio de Matlab los problemas que fueron propuestos por el profesor.  Demostrar el funcionamiento de Matlab en los ejercicios. 3.FUNDAMENTO TEORICO

Fue creado por Cleve Moler en 1984, surgiendo la primera versión con la idea de emplear paquetes de subrutinas escritas enFortran en los cursos de álgebra lineal y análisis numérico, sin necesidad de escribir programas en dicho lenguaje. El lenguaje de programación M fue creado en 1970 para proporcionar un sencillo acceso al software de matrices LINPACK y EISPACK sin tener que usar Fortran. En 2004, se estimaba que MATLAB era empleado por más de un millón de personas en ámbitos académicos y empresariales.

Cajas de herramientas y paquetes de bloques Las funcionalidades de Matlab se agrupan en más de 35 cajas de herramientas y paquetes de bloques (para Simulink), clasificadas en las siguientes categorías:2

MATLAB (Cajas de herramientas)

Simulink

Matemáticas y Optimización

Modelado de punto fijo

Estadística y Análisis de datos

Modelado basado en eventos

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 3/20

Diseño de sistemas de control y análisis Modelado físico

Procesado de señal y comunicaciones

Gráficos de simulación

Procesado de imagen

Diseño de sistemas de control y análisis

Pruebas y medidas

Procesado de señal y comunicaciones

Biología computacional

Generación de código

Modelado y análisis financiero

Prototipos de control rápido y SW/HW HIL

Desarrollo de aplicaciones

Tarjetas integradas

Informes y conexión a bases de datos

Verificación, validación y comprobación

Limitaciones y alternativas: Durante mucho tiempo hubo críticas porque MATLAB es un producto propietario de The Mathworks, y los usuarios están sujetos y bloqueados al vendedor. Recientemente se ha proporcionado una herramienta adicional llamada MATLAB Builder bajo la sección de herramientas "Application Deployment" para utilizar funciones MATLAB como archivos de biblioteca que pueden ser usados con ambientes de construcción de aplicación .NET o Java. Pero la desventaja es que el computador donde la aplicación tiene que ser utilizada necesita MCR(MATLAB Component Runtime) para que los archivos MATLAB funcionen correctamente. MCR se puede distribuir libremente con los archivos de biblioteca generados por el compilador MATLAB. 

LabVIEW



GNU Octave, software libre similar a matlab.



SAS



Scilab



Mathcad



SciPy & Numerical Python



Lenguaje R



Álgebra computacional:

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 4/20

Llamar funciones C y Fortran MATLAB puede llamar funciones y subrutinas escritas en C o Fortran. Se crea una función envoltorio que permite que sean pasados y devueltos tipos de datos de MATLAB. Los archivos objeto dinámicamente cargables creados compilando esas funciones se denominan "MEX-files", aunque la extensión de nombre de archivo depende del sistema operativo y del procesador. function [fa,dfa]=funcion_y_derivada(x) fa=0; n=1; h=1; dfa=0; while (n 1e-10) h=h/2; i=i+1; v(i)=(subs(funci,a+h)+subs(funci,a-h)-(2*subs(funci,a)))/(h^2); error= abs(v(i)-v(i-1)); end

PROBLEMAS PROPUESTOS POR EL PROFESOR. PROBLEMA 1

SCRIPT DEL PROGRAMA clear all clc syms x; M=15; fprintf('\nPROBLEMA 1\n\nCALCULO DE LA INTEGRAL POR EL METODO DE SIMPSON\n\n') fprintf('Ejercicio 1\n') fprintf('Integral de la función: ') f=(1+x^2)^(-1); a=-1; b=1; disp(f) fprintf('El valor aproximado de la integral es:\n\n')

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 5/20

disp(simpson(f,a,b,M)); fprintf('Ejercicio 2\n') fprintf('Integral de la función: ') f=2+sin(2*(x^(1/2))); a=0; b=1; disp(f) fprintf('El valor aproximado de la integral es:\n\n') disp(simpson(f,a,b,M)) fprintf('Ejercicio 3\n') fprintf('Integral de la función: ') f=(x^2)*exp(-x); a=0; b=1; disp(f) fprintf('El valor aproximado de la integral es:\n\n') disp(simpson(f,a,b,M))

FUNCION SIMPSON %Metodo de simpson function fun=simpson(f,a,b,M) h=(b-a)/(2*M); f1=0; f2=0; for k=1:M-1 x=a+h*(2*k); f1=f1+eval(f); end for k=1:M x=a+h*(2*k-1); f2=f2+eval(f); end fun=2*f1+4*f2; x=a; fun=fun+eval(f); x=b; fun=fun+eval(f); fun=(h/3)*fun; end

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 6/20

PROBLEMA 2

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 7/20

SCRIPT DEL PROGRAMA: clear all clc syms def carga; fprintf('\nPROBLEMA 2\n\n\tCALCULO DEL MODULO DE TENACIDAD\n') def=[0.001,0.002,0.006,0.009,0.012,0.015,0.05,0.3,1.1,1.3,1.9,2.1]; carga=[3410,6450,18020,26370,31520,31390,31700,41400,53100,53400,53000,53000]; A=def(1)*carga(1); for i=2:1:12 A=A+(def(i)-def(i-1))*carga(i); end plot(def,carga,'LineWidth',2,'MarkerSize',16,'Color','b') xlabel('Deformacion','fontsize',15,'Color','b') ylabel('Carga','fontsize',15,'Color','r') title('Diagrama de tensión-deformación','fontsize',15,'Color','r') hold on; grid on; area(def,carga) fprintf('\nEl módulo aproximado para la dureza del acero Níquel \nde acuerdo a los datos es:\n\n') disp(A)

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 8/20

PROBLEMA 3 SCRIPT DEL PROGRAMA clear all clc syms teta x r a w0 w; fprintf('\nPROBLEMA 3\n\nDesplazamiento vertical de la superficie el punto P\ndenotada por la expresión:') f=((cos(teta))^2)/(sqrt((r/a)^2-(sin(teta))^2)); w=w0*f f=subs(f,r,2*a); f=subs(f,teta,x); F=simpson(f,0,pi/2,2); fprintf('\nSolución de la integración numerica por el metodo de simpson:\n\n') fprintf('w/w0=') disp(F)

FUNCION SIMPSON PARA EL METODO NUMÉRICO %Metodo de simpson function fun=simpson(f,a,b,M) h=(b-a)/(2*M); f1=0; f2=0; for k=1:M-1 x=a+h*(2*k); f1=f1+eval(f); end for k=1:M x=a+h*(2*k-1); f2=f2+eval(f); end

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 9/20

fun=2*f1+4*f2; x=a; fun=fun+eval(f); x=b; fun=fun+eval(f); fun=(h/3)*fun; end

PROBLEMA 4 SCRIPT DEL PROGRAMA EN MATLAB clc clear all syms x; fprintf('\n\t\tPROBLEMA 4\n\n') m=0.8; b=0.4; u=0.3; k=80; g=9.81; f=u*g+(k/m)*(u*b+x)*(1-b/(sqrt(b^2+x^2))); v0=vpa(sqrt(2*int(f,0,b))); fprintf('La velocidad en x=0 es igual a: \n\nv0 = ') disp(v0)

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 10/20

PROBLEMA 5 SCRIPT DEL EJERCICIO clc clear all fprintf('\nPROBLEMA 5\n\nResolución de la ecuacion diferencial: \n') fprintf('\nDy=2*y+x^2 , y(0)=1\n') y=dsolve('Dy=2*y+x^2','y(0)=1','x') for x=0:0.1:2 ysalida=eval(y); xsalida=x; figure(1) plot(xsalida,ysalida,'.k','LineWidth',1,'MarkerSize',16,'Color','b') xlabel('eje x','fontsize',15,'Color','b') ylabel('eje y','fontsize',15,'Color','r') title('Gráfico de la ecuación diferencial','fontsize',15,'Color','r') hold on; grid on; end

SCRIPT DEL EJERCICIO 2 clc clear all fprintf('\nPROBLEMA 5\n\nResolución de la ecuacion diferencial: ') fprintf('\n\nD2y+2*Dy=exp(x) , y(0)=1, Dy(0)=0\n') y=dsolve('D2y+2*Dy=exp(x)','y(0)=1','Dy(0)=0','x')

for x=0:0.1:2 ysalida=eval(y); xsalida=x; figure(1) plot(xsalida,ysalida,'.k','LineWidth',1,'MarkerSize',16,'Color','b') xlabel('eje x','fontsize',15,'Color','b') ylabel('eje y','fontsize',15,'Color','r')

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 11/20

title('Gráfico de la ecuación diferencial','fontsize',15,'Color','r') hold on; grid on; end

SCRIPT DEL EJERCICIO 3 clc clear all fprintf('\nPROBLEMA 5\n\nResolución de la ecuacion diferencial:\n\n') fprintf('D2y+2*Dy=sin(x) , y(0)=-1 , Dy(0)=1\n') y=dsolve('D2y+2*Dy=sin(x)','y(0)=-1','Dy(0)=1','x') for x=0:0.1:2 ysalida=eval(y); xsalida=x; figure(1) plot(xsalida,ysalida,'.k','LineWidth',1,'MarkerSize',16,'Color','b') xlabel('eje x','fontsize',15,'Color','b') ylabel('eje y','fontsize',15,'Color','r') title('Gráfico de la ecuación diferencial','fontsize',15,'Color','r') hold on; grid on; end

Ecu 1

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 12/20

Ecu 2

Ecu 3

LABORATORIO DE MECÁNICA DE SÓLIDOS

OCE- Rev1.0 Página 13/20

CONCLUSIONES:  La principal conclusión que podemos sacar es la notoria ayuda que matlab nos presta para desarrollar la complejidad matemática de los procesos para el control de los sistemas dinámicos.  Demostramos el módulo de dureza del acero níquel en el diagrama de tensióndeformación.  Demostramos la aceleración de la masa de la formula establecida en los problemas mediante matlab.  Gracias al Matlab se puede estar seguro sobre la respuesta dad y además se tiene un ahorro de tiempo y de esfuerzo considerable  Utilizando los comandos adecuados, pudimos aprender a modelar de una manera práctica y clara la función de transferencia de cualquier sistema.