Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
23 vistas24 páginas

Práctica 1 Compu

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 24

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE MECÁNICA Y ELÉCTRICA

COMPUTACIÓN APLICADA A SISTEMAS ELÉCTRICOS

PRÁCTICA #1
“INTRODUCCIÓN A MATLAB”

ALUMNOS

Soriano Trejo Jesus Arturo


2019301457

PROFESOR
CORREA MARTINEZ ROLANDO WIBALDO
ÍNDICE

1 MATLAB
1.1 Defina qué es MATLAB
1.2 Explique el uso de MATLAB en la industria
1.3 Explique las partes constitutivas del programa MATLAB
1.3.1 Entorno (ventanas, variables y ficheros)
1.3.2 Objetos gráficos
1.3.3 Lenguaje propio de programación

2 PROGRAMA MATLAB
2.1 Abrir el programa MATLAB y localizar las ventanas,
Command Window, Workspace, Current Directory, Command
History
2.2 Localizar los diferentes tipos de operadores matemáticos,
funciones elementales y trigonométricas

3 EJEMPLOS E INDICACIONES
3.1 Realice ejemplos con los operadores matriciales,
aritméticos, relacionales, lógicos
3.2 Indique la creación de archivos-m de función
3.3 Indique la creación de la caja de herramientas de funciones
3.4 Indique en qué consiste la entrada definida por el usuario y las
opciones de salida, dar ejemplos
3.5 Indique el uso del modelo celda en archivos-m de MATLAB y la
lectura y escritura de datos desde archivos, dar ejemplos

4 MATRICES
4.1 Realice ejemplos de matrices de tal manera que se puedan resolver
al usar los operadores correspondientes
4.2 Relacione el punto 3.1 con un SEP
4.3 Mediante Gauss-Jordan resolver las ecuaciones de la hoja anexa
1 MATLAB
1.1 Defina qué es MATLAB
MathWorks es una multinacional especializada en el desarrollo de software de
ingeniería. Fue fundada en 1984 por Jack Little y Cleve Moler, que identificaron la
necesidad entre ingenieros y científicos de un entorno de computación más potente y
productivo más allá de los proporcionados por lenguajes como Fortran y C.
Combinaron su experiencia en matemáticas, ingeniería e informática para desarrollar
MATLAB.

1.2 Explique el uso de MATLAB en la industria


MATLAB® y Simulink® permiten a los ingenieros hacer frente a la creciente
complejidad de los equipos de producción modernos y a la demanda de una mayor
flexibilidad.

Los ingenieros de maquinaria y automatización industriales utilizan el diseño basado


en modelos en MATLAB y Simulink para:

Diseñar y probar los sistemas de control y la lógica de supervisión de la maquinaria


Ejecutar pruebas automáticas sobre las funciones de los equipos
Diseñar algoritmos de inteligencia artificial (IA) para el mantenimiento predictivo y la
optimización de operaciones
Generar código en tiempo real (C/C++, IEC 61131-3) para PLC y controladores
industriales

1.3 Explique las partes constitutivas del programa MATLAB


1.3.1 Entorno (ventanas, variables y
ficheros) Ventanas:
Existen diversos tipos de ventanas. La ventanas principales son Command Window
qué es en donde se encuentra el núcleo del programa ya qué en esta ventana se
escriben las instrucciones del programa, Work Space muestra información sobre las
variables y objetos qué se definen en el programa, Command History en donde se
muestran las últimas instrucciones del programa, de igual manera existen ventanas de
HELP qué se utiliza cuando se necesita ayuda al programar y DEMOS.
Variables:
Las variables en este lenguaje se diferencian con poner la letra en mayuscula o
minuscula, si no se le asigna ningún nombre a la variable se guardará de forma
automática con el nombre ans y si más adelante en el programa no se guarda otra
variable esta se guardará en ans y cambiará de valor. También no se debe guardar un
valor de una variable con el nombre de un función ya qué eso es un error típico lo cual
causa problemas cuando se requiere correr el programa. En caso de duda se sugiere
hacer>>help nombre_función para averiguar si una función con dicho nombre ya
existe.

Si se desea ver el contenido de una variable basta con teclear su nombre en la ventana
de comandos o en el Array Editor, qué para abrirlo se hace doble clic en el icono de la
variable en workspace

Es posible guardar las variables del workspace (todas o algunas de ellas) en un fichero
para que no se pierdan al cerrar el MATLAB (función save) y así posteriormente, en
otra sesión, poder cargarlas de nuevo en el workspace (función load). Los ficheros de
datos en MATLAB tienen la extensión *.mat. Si al usar save no se indica un nombre
al fichero de datos, MATLAB le asigna el nombre por defecto matlab.mat.
Ficheros:
Existen diferentes tipos de ficheros, qué si bien son muy parecidos a las variables,
tienen la cualidad de lo qué se guarda en ellos es información permanente y qué con
las variables son valores momentáneos.

Algunos tipos de ficheros son:


● Ficheros de datos, se guardan con extensión .mat se pueden guardar
diversos tipos de datos.
● Ficheros-M, son ficheros qué guardan texto.
● Ficheros built-in, éstos no pueden ser modificados por el usuario y
están previamente cargado en el MATLAB y llaman a funciones.
Los ficheros se deben de declarar en minúscula, no son válidos los nombres de los
ficheros qué lleven algún símbolo de operación ya qué el sistema reconoce qué debe
llamar al fichero y realizar la operación qué se indicó.

1.3.2 Objetos gráficos


Los objetos de gráficas son los componentes qué utiliza el programa para crear
objetos visuales en relación con los datos qué se ingresaron en la ventana del
Command Window, cada objeto tiene un rol específico en la visualización de las
gráficas. Estos objetos están organizados por jerarquías, y estás representan objetos
dentro de otros objetos.

1.3.3 Lenguaje propio de programación


MATLAB se desarrolla en lenguaje de archivos *.m, con lo cual permite operaciones
de vectores, matrices, funciones y programación orientada a objetos.
En los ficheros.m se pueden escribir las instrucciones qué se desea qué realice el
programa, así no se tiene qué repetir las instrucciones en otras ventanas.

2 PROGRAMA MATLAB
2.1 Abrir el programa MATLAB y localizar las ventanas, Command
Window, Workspace, Current Directory, Command History

2.2 Localizar los diferentes tipos de operadores matemáticos, funciones


elementales y trigonométricas
FILE: Su utilización es para abrir o crear un archivo .m así mismo se puede guardar.
Edit: su función es editar las opciones del programa o archivo .m.
HELP: Utilización de la ayuda Una de las principales ventajas de Matlab con respecto
a similares programas consiste en la gran cantidad de información que el usuario
puede obtener del funcionamiento del programa y de los comandos a través de la
ayuda (Menú Help).
Para programar en Matlab es necesario saber manejarse en el entorno de trabajo y
saber utilizar la ayuda. Cualquier duda sobre cómo utilizar una función o cual es el
comando para realizar una determinada operación puede resolverse utilizando la
ayuda.
El menú Help contiene, además de dos aplicaciones para introducir al usuario el
entorno de trabajo (Help → Using the Desktop and Help → Using the Command
Window), una pestaña llamada Matlab Help.
Matlab Help permite al usuario buscar información de tres formas diferentes:
1. La pestaña Contents permite ver un índice con todas las aplicaciones y Toolboxes5
de Matlab.
2. La pestaña Index permite buscar, por orden alfabético, en el índice de materias de
Matlab, información sobre palabras clave (comandos, ordenes,etc.).
DEBUG: depurar programas Cometer errores a la hora de escribir código es
inevitable. Por ello, Matlab, al igual que otros programas similares,incluye una
aplicación llamada “debugger” destinada a ayudar al usuario a depurar sus códigos. El
debugger se aplica sobre los programas escritos en Matlab, esto es, sobre los M-files
donde se ha escrito cualquier tipo de código. En el caso de que exista un error en el
código, al ejecutar el M-file, Matlab detiene su ejecución en el punto donde se
encuentra el error e imprime en la pantalla del command window el tipo de error y la
línea del M-file donde se encuentra, de forma que podemos ir a dicha línea de código
en el M-file y corregir el error.

3 EJEMPLOS E INDICACIONES
3.1 Realice ejemplos con los operadores matriciales, aritméticos,
relacionales, lógicos
Para introducir una matriz en Matlab se declara el nombre del operador seguido del
símbolo igual (=), y entre corchetes se definen los números que van en la matriz
separadas por un espacio o una coma.
Ejemplo:

Se introduce como:
A=[1 2 3 4; 5 6 7 8]
o cómo A=[1,2,3,4;5,6,7,8];
Y para variables flotantes se escribiría de la siguiente manera: A=[1.0, 2.0,
3.0, 4.0; 5.0, 6.0, 7.0, 8.0]
Los operadores relacionales también pueden trabajar en ambos datos no escalares y
escalar. Los operadores relacionales para matrices realizan comparaciones elemento
por elemento entre dos matrices y devuelven una matriz lógica del mismo tamaño, con
elementos fijados a 1 lógico (verdadero), donde la relación es verdadera y elementos
establecidos a 0 lógico (falso), donde es no.
La siguiente tabla muestra operadores relacionales:
Operador Descripción
< Menos que
<= Menor o igual a
> Mayor que
>= Mayor o igual a
== Igual a
~= Diferente a
Ejemplo:

Cuando el archivo se ejecuta se produce que el resultado es: “max=200”. MATLAB


ofrece dos tipos de operadores y funciones lógicas:
En cuanto al elemento - estos operadores operan en los elementos de las matrices
lógicas correspondientes.
Cortocircuito - estos operadores operan en escalares, expresiones lógicas. Operadores
lógicos elemento a elemento operan elemento a elemento en matrices lógicas. Los
símbolos y, | y ~ son los operadores lógicos de matriz AND, OR y NOT.
Operadores lógicos de cortocircuito permiten a los cortocircuitos en las operaciones
lógicas. Los símbolos && y || son los operadores de cortocircuito lógicos AND y
OR.
Ejemplo:
MATLAB permite dos tipos diferentes de operaciones aritméticas - operaciones
aritméticas con matrices y operaciones aritméticas matriz.
Matrix operaciones aritméticas son como se han definido en el álgebra lineal. Las
operaciones de la matriz se ejecutan elemento por elemento, tanto en una matriz
unidimensional como en una multidimensional. Los operadores de la matriz y los
operadores de matrices se diferencian por el punto (.) de símbolos. Sin embargo, como
la operación de suma y resta es el mismo para matrices y matrices, el operador es el
mismo para ambos casos.
La siguiente tabla muestra los operadores matriciales y una breve descripción:

Operador Descripción
+ Además, más o unario. A + B
añade los valores almacenados
en las variables A y B. A y B deben
tener el mismo tamaño, a menos
que uno es un escalar. A escalar se
puede añadir a una matriz de
cualquier tamaño.
- La resta o menos unitario. AB resta
el valor de B de A. A y B deben
tener el mismo tamaño, a menos
que uno es un escalar. Un escalar se
puede restarse de una matriz de
cualquier tamaño.
* La multiplicación de matrices. C
= A * B es el producto algebraica lineal
de las matrices A y B. Más
precisamente,
Para no escalar A y B, el número de
columnas de A debe ser igual al
número de filas de B. A escalar
puede multiplicar una matriz de
cualquier tamaño.
.* La multiplicación de matriz. A. * B es el
producto de elemento por elemento de
los conjuntos A y B. A y B debe tener el
mismo tamaño, a menos que uno de
ellos es un escalar.

/ Recortar o matriz división derecha. B


/ A es aproximadamente el mismo que B
* inv (A). Más precisamente, B
/ A = (A '\ B') '.
./ División de la derecha matriz. A./B es la
matriz con los elementos de A (i, j) / B
(i, j). A y B deben tener el mismo
tamaño, a menos que uno de ellos es un
escalar.
\ Barra invertida o matriz dejaron
división. Si A es una matriz cuadrada,
A \ B es aproximadamente el mismo
que inv
(A) * B, excepto que se calcula de
una manera diferente. Si A es una
matriz de n por n y B es un vector
columna con n componentes, o una
matriz con varias de estas columnas,
entonces X = A \ B es la solución a la
ecuación AX = B. Un mensaje de
advertencia muestra si un mal es
escalado o casi singular.
.\ Hilera izquierda división. A. \ B es la
matriz con elementos B (i, j) / A (i, j). A
y B deben tener el mismo tamaño, a
menos que uno de ellos es un escalar.

^ Matriz de la energía. X ^ p es X a la
potencia p, si p es un escalar. Si p es un
número entero, la potencia se calcula
elevando al cuadrado repetido. Si el
número entero es negativo, X se invierte
primero. Para otros valores de p, el
cálculo implica valores y vectores
propios, de manera que si [V, D] = eig
(X), entonces X ^ p = V * D ^ p / V.

.^ Alimentación de la matriz. A. ^ B es la
matriz con los elementos de A (i, j) a la
B (i, j) de potencia. A y B deben tener el
mismo tamaño, a menos que uno de
ellos es un escalar.
' Transpuesta de la matriz. A 'es la
transpuesta algebraica lineal de A. Para
matrices complejas, esta es la
transpuesta conjugada compleja
.' Transpuesta matriz. UN.' es la matriz
traspuesta de A. Para matrices
complejas, esto no implica la
conjugación.
Ejemplo:
3.2 Indique la creación de archivos-m de función
Las funciones definidas por el usuario se almacenan como archivos-m y MATLAB
puede acceder a ellas si están almacenadas en el directorio actual. Tanto las funciones
internas de MATLAB como las definidas por el usuario tienen la misma estructura.
Cada una consiste en un nombre, una entrada proporcionada por el usuario y una
salida calculada.
El usuario no necesita ver los cálculos realizados, sino que sólo acepta la respuesta.
Las funciones definidas por el usuario funcionan de la misma forma.
Las funciones definidas por el usuario se crean en archivos-m. Cada una debe
comenzar con una línea de definición de función que contenga
• La palabra function,
• una variable que defina la salida de función,
• un nombre de función, y
• una variable que se use para el argumento de entrada.
Por ejemplo, function output =my_function(x) es la primera línea de la función
definida por el usuario llamada my_function. Requiere un argumento de entrada, que
el programa llamará x, y calculará un argumento de salida, que
el programa llamará output. El nombre de función y los nombres de las variables de
entrada y salida son arbitrarios y los selecciona el programador.

3.3 Indique la creación de la caja de herramientas de funciones


Cuando llama una función en MATLAB, el programa busca primero en el directorio
actual para ver si la función está definida. Si no puede encontrar la función ahí,
comienza a recorrer una ruta de búsqueda predefinida en busca de un archivo con el
nombre de la función.
Para ver la ruta que el programa sigue conforme busca los archivos, seleccione File -
Set Path de la barra de menú o escriba pathtool. Conforme haya más y más
funciones para usar en la programación, se modificará la ruta para buscar en un
directorio donde haya almacenado herramientas personales.

3.4 Indique en qué consiste la entrada definida por el usuario y las


opciones de salida, dar ejemplos
Se pueden recrear programas más generales al permitir al usuario ingresar valores de
una matriz desde el teclado mientras el programa corre. La función input permite
hacer esto.
Despliega una cadena de texto en la ventana de comando y luego espera que el
usuario proporcione la entrada solicitada. Por ejemplo: z = input ('Ingrese un valor')
Despliega: Ingrese un valor en la ventana de comandos. Si el usuario ingresa un valor
como 5 el programa da el valor 5 a la variable z. Sí el comando input no termina con
un punto y coma, el valor ingresado se despliega en la pantalla: z = 5.
El mismo enfoque se puede usar para una matriz uni o bidimensional. El usuario debe
proporcionar los paréntesis y delimitadores adecuados (comas y puntos y coma).
Por ejemplo: z = input (' Ingrese valores para z entre corchetes’) Pide al usuario que
ingrese una matriz como [1, 2, 3; 4, 5, 6] Y responde con z =1 2 3
4 5 6.
Esto se puede aplicar igual para palabras.

3.5 Indique el uso del modelo celda en archivos-m de MATLAB y la


lectura y escritura de datos desde archivos, dar ejemplos
Se pueden recrear programas más generales al permitir al usuario ingresar valores de
una matriz desde el teclado mientras el programa corre. La función input le permite
hacer esto. Despliega una cadena de texto en la ventana de comando y luego espera
que el usuario proporcione la entrada solicitada.
Por ejemplo:
z = input (‘Ingrese un valor’) y se despliega Ingrese un valor.
Si el valor agregado es 3, el programa asigna el valor 3 a la variable z.
Si el comando input no termina con un punto y coma, el valor ingresado se despliega
en la pantalla z=3.
El mismo enfoque se puede usar para ingresar una matriz uni o bidimensional. El
usuario debe proporcionar los paréntesis y delimitadores adecuados (comas y puntos y
coma).
Este valor de entrada de z se puede usar entonces en cálculos subsecuentes por el
archivo -m script. Los datos ingresados con input no necesitan ser información
numérica.

4 MATRICES
4.1 Realice ejemplos de matrices de tal manera que se puedan resolver
al usar los operadores correspondientes

Cuando nosotros hablamos de operaciones con matrices existen ciertas características


que se deben de llevar a cabo para que la operación que se requiera se ejecute de la
manera correcta y nos de los resultados correctos por ejemplo:
Suma y Resta
En este caso es necesario que las matrices a ejecutar necesitan tener la misma cantidad
de filas y de columnas para que el programa realice bien la operación es decir, si una
matriz es de orden 3x2 y la otra de 3x3 no se pueden ni sumar ni restar.
Ejemplo.
Realizar un código para resolver suma y resta de matrices con los siguientes datos.

A=[3 1 2;
0 5 -3;
7 0 4:] ;

B= [-1 2 4;
2 5 8;
0 1 -2;] ;

A+B = [2 3 6
2 10 5
7 1 2]
A-B = [4 -1 2
-2 0 11
7 -1 8 ]

División
Cuando se tienen 2 matrices y se necesitan dividir se puede realizar ocupado un
operador de división izquierda (\)o derecha (/)
Ejemplo:
Realizar un código para la resolver una división de matrices con los
siguientes datos

A=[2 0;
-4 7:] ;

B=[1 -1;
3 2:] ;
Cuando nosotros compilamos el código nos arrojan los siguientes resultados

A/B= [-4 -2
-7 1]

De igual manera se puede realizar alguna de las operaciones ya vistas anteriormente


por un solo número y no por una matriz a lo cual se le llama operación escalar como
se puede ver a continuación
Para la división se puede ver de la siguiente manera con base a los siguientes datos
A=[6 -4;
2 -2;] ;
B= 2;

A/B= [3 -2
1 -1]
En el caso de las multiplicaciones por un escalar es diferente lo cual podemos ver con
el siguiente ejemplo:
A=[10 6;
4 3;] ;
B=2;

AxB=[20 12
8 6]

Para la suma y resta se realizan las operaciones de la siguiente forma: A=[ 6 15 ;


2 3 ;] ;
B=5;

A+B=[11 20
7 8;] ;

A-B=[1 10
-3 -2;] ;

Además de lo ya visto anteriormente existe una operación la cual hace que cambie las
filas y columnas de una matriz a la cual se le conoce como operación transpuesta, a
veces es necesario en el siguiente ejemplo se puede observar el resultado dado de la
operación transpuesta.
Se puede ver en el siguiente ejemplo el ejercicio.
A=(4 6 8;
-2 7 15;
1 -3 5;);

AT = (4 -2 1
6 7 -3
8 15 5)

4.2 Relacione el punto 3.1 con un SEP


Cuando nosotros hablamos de los sistemas eléctricos de potencia como lo vimos en
clases anteriores el uso de matrices lo podemos ocupar para ciertas cosas,
especialmente el método de gauss- jordan y lo cual necesitamos nosotros trabajar
todos los datos con los que contemos en P.U y uno de las formas en donde se puede
hacer quede matrices para este tema es en el
cálculo de la reactancia y con este dato poder encontrar el el calibre de un adecuado
conductor.

Si buscamos encontramos que en el apartado “MATLAB Function”, contiene el


nombre del fichero M, que contiene el siguiente programa:

● %Fichero M
● %Análisis de transitorio en un generador conectado a una barra infinita;
● function [Pe] = ejm(x);
● TF = 0.045; %tiempo antes de falla;
● if x (1) < TF
● K = 0; end;
● if x (1) > = Tf
● K = 1.1024;
● end;
● P= K*sin (x (2)); %El sistema se torna inestable en 0.046 s;

4.3 Mediante Gauss-Jordan resolver las ecuaciones de la hoja anexa

Para resolver esta serie de ejercicios se tuvo que plantear un código para resolver un
sistema de ecuaciones lineales por medio de un método ya conocido el cual es Gauss-
Jordan, el cual nos ayudó a encontrar un resultado preciso para esta serie de ejercicios.
Hoja Anexa:
Pasos para resolver matrices por gauss jordan en MATLAB

Paso 1: Escribimos la matriz de forma nombre de la matriz=[a11 a12 a13 a14; a21 a22
a23 a24; a31 a32 a33 a34;.........................;an1 an2 an3 an4]

Paso 2: Al dar enter se reescribe la matriz en la forma matricial:

Paso 3: Para la solución por el método de Gauss Jordan se utiliza el comando


R=rref(nombre de la matriz) y nos entrega la matriz resultante.

Respuestas de las matrices utilizando MATLAB por el método gauss jordan. 1-.
2-.

3-.

4-.
5-.

6-.

7-.

8-.
9-.

10-.

11-.
12-.

13-.
Referencias:

[1] Cristina Casado Ffernandez, Manual básico de matlab, UCM.


[2] Amos Gilat, Matlab una introducción con ejemplos prácticos, Revervete, Barcelona
2009.

[3]MATLAB, «Jerarquía de objetos de gráficas,» [En línea]. Available:


https://la.mathworks.com/help/matlab/creating_plots/graphics-objects.html.

[4]MATLAB, «MATLAB,» [En línea]. Available:


https://la.mathworks.com/products/matlab.html.

[5]ETSETB, «MATLAB. Fundamentos y/o Aplicaciones.,» [En línea]. Available:


https://upcommons.upc.edu/bitstream/handle/2117/192916/tema_1_fundamentos
_de_matlab-5148.pdf.

También podría gustarte