flash macromedia

http://www.box.net/shared/static/lbz181vpvy.pdf

lunes, 22 de marzo de 2010

Simulacion con Matlab

MATLAB es un gran programa de para cálculo técnico y científico. Para ciertas operaciones es muy rápido, cuando puede ejecutar sus funciones en código nativo con los tamaños más adecuados para aprovechar sus capacidades de vectorización. En otras aplicaciones resulta bastantemás lento que el código equivalente desarrollado en C/C++ o Fortran. Sin embargo, siempre es unamagnífica herramienta de alto nivel para desarrollar aplicaciones técnicas, fácil de utilizar y queaumenta la productividad de los programadores respecto a otros entornos de desarrollo.


Ejemplos de matlab:

Para apreciar desde el principio la potencia de MATLAB, se puede comenzar por escribir la siguiente línea, a continuación del prompt. Al final hay que pulsar intro.
» A=rand(6), B=inv(A), B*A


Con grandes matrices o grandes sistemas de ecuaciones MATLAB obtiene toda la potencia del ordenador. Por ejemplo, las siguientes instrucciones permiten calcular la potencia de cálculo del ordenador en Megaflops (millones de operaciones aritméticas por segundo). En la primera línea se crean tres matrices de tamaño 20×20, las dos primeras con valores aleatorios y la tercera convalores cero. La segunda línea pone a cero el contador de operaciones aritméticas, toma tiempos,realiza el producto de matrices, vuelve a tomar tiempos y calcula el número de millones de operaciones realizadas. La tercera línea calcula los Megaflops por segundo, para lo cual utiliza la función etime() que calcula el tiempo transcurrido entre dos instantes definidos por dos llamadas ala función clock.
























Otro de los puntos fuertes de MATLAB son los gráficos, que se verán con más detalle en una sección posterior. A título de ejemplo, se puede teclear la siguiente línea y pulsar intro

x=-4:.01:4; y=sin(x); plot(x,y), grid, title('Función seno(x)')

















Definición de matrices desde teclado


Como en casi todos los lenguajes de programación, en MATLAB las matrices y vectores son variables que tienen nombres. Ya se verá luego con más detalle las reglas que deben cumplir estos nombres. Por el momento se sugiere que se utilicen letras mayúsculas para matrices y minúsculas para vectores y escalares (MATLAB no exige esto, pero puede resultar útil).
Para definir una matriz no hace falta establecer de antemano su tamaño (de hecho, se puede definir un tamaño y cambiarlo posteriormente). MATLAB determina el número de filas y de columnas en función del número de elementos que se proporcionan (o se utilizan). Las matrices se definen por filas; los elementos de una misma fila están separados por blancos o comas, mientras que las filas están separadas por pulsaciones intro o por caracteres punto y coma (;). Por ejemplo, el siguiente comando define una matriz A de dimensión (3x3):



















A partir de este momento la matriz A está disponible para hacer cualquier tipo de operación
con ella (además de valores numéricos, en la definición de una matriz o vector se pueden utilizar
expresiones y funciones matemáticas). Por ejemplo, una sencilla operación con A es hallar su
matriz traspuesta. En MATLAB el apóstrofo (') es el símbolo de trasposición matricial. Para
calcular A' (traspuesta de A) basta teclear lo siguiente (se añade a continuación la respuesta del
programa):




















Como el resultado de la operación no ha sido asignado a ninguna otra matriz, MATLAB
utiliza un nombre de variable por defecto (ans, de answer), que contiene el resultado de la última
operación. La variable ans puede ser utilizada como operando en la siguiente expresión que se
introduzca. También podría haberse asignado el resultado a otra matriz llamada B:



















Ahora ya están definidas las matrices A y B, y es posible seguir operando con ellas. Por
ejemplo, se puede hacer el producto B*A (deberá resultar una matriz simétrica):





















En MATLAB se accede a los elementos de un vector poniendo el índice entre paréntesis (por
ejemplo x(3) ó x(i)). Los elementos de las matrices se acceden poniendo los dos índices entre
paréntesis, separados por una coma (por ejemplo A(1,2) ó A(i,j)). Las matrices se almacenan por
columnas (aunque se introduzcan por filas, como se ha dicho antes), y teniendo en cuenta esto
puede accederse a cualquier elemento de una matriz con un sólo subíndice. Por ejemplo, si A es una
matriz (3x3) se obtiene el mismo valor escribiendo A(1,2) que escribiendo A(4).
Invertir una matriz es casi tan fácil como trasponerla. A continuación se va a definir una
nueva matriz A -no singular- en la forma:






















Ahora se va a calcular la inversa de A y el resultado se asignará a B. Para ello basta hacer uso
de la función inv( ) (la precisión o número de cifras con que se muestra el resultado se puede
cambiar con el menú File/Preferences/General):






















De forma análoga a las matrices, es posible definir un vector fila x en la forma siguiente (si
los tres números están separados por blancos o comas, el resultado será un vector fila):



















MATLAB considera comentarios todo lo que va desde el carácter tanto por ciento (%) hasta
el final de la línea.
Por el contrario, si los números están separados por intros o puntos y coma (;) se obtendrá un
vector columna:


















MATLAB tiene en cuenta la diferencia entre vectores fila y vectores columna. Por ejemplo, sise intenta sumar los vectores x e y se obtendrá el siguiente mensaje de error

No hay comentarios:

Publicar un comentario