Sunteți pe pagina 1din 31

GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB

Ing. José S. Orbegoso L.

GUÍA N° 1

INTRODUCCIÓN A LA PROGRAMACIÓN EN COMPUTADORAS PARA


INGENIEROS QUÍMICOS

Las técnicas de programación están ligadas a la Ingeniería Química y a los procesos industriales debido a la
necesidad de tener bajo control las variables de los proceso, así como monitorear el desempeño y
performance de las unidades correspondientes a las operaciones unitarias y reactores.

Los lenguajes de programación son variados, se desarrollan bajo una misma base lógica y su aplicación es
variada y puede ser diferente según los requerimientos particulares de cada sistema. Para efectos de
aprendizaje se han universalizado entornos como Fortran, MatLab, Hysys, Chemcad, Visual, C++, etc., y a
medida que han avanzado las tecnologías de fabricación de computadoras (hardware) los lenguajes han
variado permitiendo integrar imágenes e interfaces gráficas que facilitan grandemente la visualización y la
simulación de los modelos que representan sistemas diversos, desde el funcionamiento del péndulo de un
reloj digital hasta las más complejas máquinas conocidas.

Para efectos prácticos, los desarrolladores de software aplicado a la Ingeniería Química y otras ramas de
ingeniería han desarrollado lenguajes de mucha utilidad, como los referidos antes, por lo que en el presente
curso nos ocuparemos de MatLab como una plataforma y entorno de muchísima utilidad y aplicabilidad en el
control, monitoreo y simulación de procesos y sistemas que incluyan reacciones químicas, sin que ello obste
el uso de otros lenguajes especializados y de real vigencia.

Se pretende ingresar al mundo de la programación aplicada a la Ingeniería Química y de procesos


industriales, siendo en si una herramienta indispensable para el ingeniero de este tiempo, de modo que se
procederá de manera secuencial y progresiva, empezando con el aprendizaje de algoritmos y elementos
básicos del entorno de MatLab, lenguaje y funciones, luego ingresar a modelado y finalmente a
programación y simulación de sistemas de Ingeniería Química.

1
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

ALGORITMOS

Una computadora no tiene capacidad para solucionar problemas mas que cuando se le proporcionan
los pasos sucesivos a realizar, para ello elaboramos un algoritmo.

¿Qué es un algoritmo?

Es un método para resolver un problema mediante una secuencia ordenada de instrucciones


organizadas, claras y concisas, cada una de las cuales especifica las operaciones y proceso que debe
seguirse para dar solución a un problema específico.

Características de un algoritmo

Las características fundamentales que debe cumplir todo algoritmo son:

 Debe ser preciso e indicar el orden de realización de cada paso.


 Debe estar definido. Si se sigue un algoritmo dos o más veces, con los mismos valores
iniciales se debe obtener el mismo resultado.
 Debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento, es decir, debe
tener un número finito de pasos.

También hay que tener en cuenta en un algoritmo:

 El algoritmo sirve de base para generar un programa, pero no es el programa en si.


 El algoritmo no es inteligible directamente por el ordenador.
 El mismo algoritmo puede ser implementado de forma distinta en diversos programas, es
decir, dos programadores pueden obtener distintos códigos fuente a partir del mismo
algoritmo.

Tipos de algoritmos:

a. Cualitativos: Se describen los pasos utilizando palabras.


b. Cuantitativos: Se utilizan cálculos numéricos para definir los pasos del proceso.

El proceso de un algoritmo

La definición de un algoritmo debe describir tres partes: Entrada, proceso y salida.

Entrada Proceso Salida


La información proporcionada al algoritmo constituye su entrada, el procedimiento para la solución
del problema constituye su proceso y la información producida por el algoritmo constituye su
salida. A continuación ejemplos para un mejor entendimiento:

Ejemplo 01: Leer la base y altura de un paralelogramo. Calcular su área.

Datos de Entrada ---> base y altura. Proceso ---> área = base x altura. Datos de Salida ---> El área
del paralelogramo

Ejemplo 02: Leer el radio de una circunferencia. Calcular su área y longitud.


2
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Datos de Entrada  Radio de una circunferencia. Proceso Área = π r2 y Longitud = 2π r. Datos de


Salida  El área y longitud de una circunferencia.

(Sugerencia: revisar tema de algoritmos)

CONTENIDOS
I. Fundamentos básicos, lenguajes de programación y lenguaje de programación con MatLab
II. Estructuras de los ficheros, archivos, y comandos.
III. Programación estructurada con MatLab
IV. Aplicaciones del MatLab a los Procesos Químicos e industriales

I. FUNDAMENTOS BÁSICOS y LENGUAJES DE PROGRAMACIÓN:

1.1. Lenguajes algorítmicos

Es una serie de símbolos y reglas que se utilizan para describir de manera explícita un
proceso.

1.1.1. Lenguaje algorítmico gráfico: Es la representación gráfica de las operaciones


que realiza un algoritmo (diagrama de flujo).

1.1.2. Lenguajes algorítmicos no gráficos: Representa de forma descriptiva las


operaciones que debe realizar un algoritmo (seudocódigo).

1.2. Lenguajes de programación (de alto nivel)

Un lenguaje de programación de alto nivel se caracteriza por expresar los algoritmos de una
manera adecuada a la capacidad cognitiva humana, en lugar de la capacidad ejecutora de las
máquinas. En los primeros lenguajes, la limitación era que se orientaban a un área específica
y sus instrucciones requerían de una sintaxis predefinida. Se clasifican como lenguajes
procedimentales o lenguajes de bajo nivel. Otra limitación de estos es que se requiere de
ciertos conocimientos de programación para realizar las secuencias de instrucciones lógicas.
Los lenguajes de alto nivel se crearon para que el usuario común pudiese solucionar un
problema de procesamiento de datos de una manera más fácil y rápida. Por esta razón, a
finales de los años 1950 surgió un nuevo tipo de lenguajes de programación que evitaba
estos inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman de
tercera generación o de nivel alto, en contraposición a los de bajo nivel o de nivel próximo a
la máquina

Se caracteriza por que el lenguaje de alto nivel se refiere al nivel más alto de abstracción de
lenguaje de máquina. En lugar de tratar con registros, direcciones de memoria y las pilas de
llamadas, lenguajes de alto nivel se refieren a las variables, matrices, objetos, aritmética
compleja o expresiones booleanas, subrutinas y funciones, bucles, hilos, cierres y otros
conceptos de informática abstracta, con un enfoque en la facilidad de uso sobre la eficiencia
óptima del programa.

3
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Ventajas y desventajas:

Ventajas • Genera un código más sencillo y comprensible. • Escribir un código válido para
diversas máquinas o sistemas operativos. • Permite utilizar paradigmas de programación.
Inconvenientes • Reducción de velocidad al ceder el trabajo de bajo nivel a la máquina. •
Algunos requieren que la máquina cliente posea una determinada plataforma.

Principales lenguajes de nivel alto:

VB.NET - Ada - ALGOL - BASIC - C Sharp - FORTRAN - Java - Lisp - Modula-2 - Pascal
- Pauscal en español - Perl - PHP - PL/1 - PL/SQL - Python - Ruby – Matlab, etc.

MATLAB es el lenguaje de alto nivel y entorno interactivo usado por millones de ingenieros
y científicos de web. Se le permite explorar y visualizar las ideas y colaborar en todas las
disciplinas, incluyendo procesamiento de señales e imágenes, comunicaciones, sistemas de
control, y las finanzas computacionales.

1.3. Programas

El diseño de programas es una tarea difícil y es un proceso creativo. No existe un conjunto


completo de reglas para indicar cómo escribir un programa. Y podemos encontrar una
variedad amplia de programas que dan solución a un mismo problema.

1.4. Diseño del algoritmo

Las características de un buen algoritmo son:


 Debe tener un punto particular de inicio.
 Debe ser definido, no debe permitir dobles interpretaciones.
 Debe ser general, es decir, soportar la mayoría de las variantes que se puedan
presentar en la definición del problema.
 Debe ser finito en tamaño y tiempo de ejecución. (Hernández, 2010)

1.5. Codificación

La codificación es la operación de escribir la solución del problema (de acuerdo a la lógica


del diagrama de flujo o pseudocódigo), en una serie de instrucciones detalladas, en un
código reconocible por la computadora. (Hernández, 2010).

La serie de instrucciones escritas para un programa se les conoce como código fuente y se
escriben en un lenguaje de programación que puede ser de bajo, medio o alto nivel.

1.6. Técnicas de diseño

a. Top down: También conocida como de arriba-abajo y consiste en establecer una serie de
niveles de mayor a menor complejidad (arriba-abajo) que den solución al problema.
(Hernández, 2010)
b. Bottom Up: El diseño ascendente se refiere a la identificación de aquellos procesos que
necesitan procesarse en el momento en el que vayan apareciendo para satisfacer el
problema inmediato. (Hernández, 2010)

4
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

1.7. Técnicas para la formulación de algoritmos

Las dos herramientas utilizadas comúnmente para diseñar algoritmos son:


• Diagrama de Flujo
• Pseudocódigo

1.8. Diagramas de flujo y pseudocódigo

Cuando se va a desarrollar un programa se necesita tomar un set de buenas prácticas para


hacerlo. Esto permite ahorrar tiempo y también tener certeza cuando tenemos el propósito de
resolver un problema. Hay dos recomendaciones: diagrama de flujo y seudocódigo.

Diagrama de Flujo Es la representación detallada en forma gráfica de cómo deben realizarse los
pasos en la computadora para obtener resultados. (Hernández, 2010). Un diagrama de flujo es un
esquema gráfico que se utiliza para describir un algoritmo sin necesidad de escribir el código de
programación. Su utilidad fundamental es mostrar que el algoritmo que tenemos previsto
programar funciona. Una vez que el diagrama de flujo es coherente, podemos pasar a codificarlo en
Matlab o en cualquier otro lenguaje.

Básicamente se utilizan los siguientes símbolos:

5
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Otros símbolos:

6
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

EJEMPLOS:

1. Se desea implementar un algoritmo para obtener la suma de dos números cualesquiera.

VARIABLES:
Nombre de la variable Descripción Tipo
A Primer número a sumar Entero
B Segundo número a sumar Entero
C Resultado de la suma Entero

Pseudocódigo:

Diagrama de flujo:

2. Se requiere conocer el área de un rectángulo. Realiza un algoritmo para tal fin y represéntalo
mediante un diagrama de flujo y el pseudocódigo para realizar este proceso.

VARIABLES:
7
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Nombre de la variable Descripción Tipo


A Altura del rectángulo Real
B Base del rectángulo Real
C Área del rectángulo Real

Pseudocódigo:

Diagrama de flujo:

3. Se requiere obtener la distancia entre dos puntos en el plano cartesiano, tal y como se
muestra en la siguiente figura:

Realiza un diagrama de flujo y pseudocódigo que representen el algoritmo para obtener la


distancia entre esos puntos.

SOLUCIÓN:

Nombre de la variable Descripción Tipo


X1, X2 Abscisas Real
Y1, Y2 Ordenadas Real
X Cateto de las abscisas Real
Y Cateto de las ordenadas Real
D Distancia entre los puntos Real

Pseudocódigo:

8
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Diagrama de flujo:

SOLUCIÓN DE PROBLEMAS CON ESTRUCTURAS SELECTIVAS:

Implica seguir o no un determinado flujo de secuencia

Estructuras selectivas simples:

4. Se desea implementar un algoritmo para determinar cuál de los dos valores cualesquiera
introducidos por teclado es mayor.

9
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Nombre de la variable Descripción Tipo


A Primer valor a comparar Entero
B Segundo valor a comparar Entero
M Resultado de la comparación Entero

Pseudocódigo:

Diagrama de flujo:

(¿Qué pasaría si los números ingresados fuesen iguales? – Resuelve!!)

5. Se desea implementar un algoritmo para determinar si un número es positivo ó negativo.


Variables:
Nombre de la variable Descripción Tipo
Num Valor para determinar su signo Entero
R Resultado del signo del valor String

Pseudocódigo:

10
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Diagrama de flujo:

ESTRUCTURAS SELECTIVAS EN CASCADA:


Elaborar estructuras selectivas en cascada, significa que después de haber realizado una
comparación selectiva es necesario realizar otra comparación selectiva como resultado de la
primera condición.

Pseudocódigo:

11
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Diagrama de flujo:

6. Se desea implementar un algoritmo para determinar cual de las tres cantidades introducidas
por teclado es la mayor.

Nombre de la variable Descripción Tipo


A Primer valor Entero o real
B Segundo Valor Entero o real
C Tercer valor Entero o real
M Valor mayor Entero o real

Pseudocódigo

Diagrama de flujo:

12
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Otra forma de resolverse sería:

13
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

ESTRUCTURAS REPETITIVAS:

Cuando se requiere que un proceso se efectúe de manera cíclica, se emplean estructuras que
permiten el control de ciclos. Estas estructuras ,conocidas como "BUCLES" se emplean con
base en las condiciones propias de cada problema, los nombres con los que se conocen estas
son:

“Mientras que”...( "While")


“Repite hasta que”...........( " Repeat " )
“Desde, hasta que”. .......( " For " )

En la figura se presentan las formas de estas estructuras mediante un diagrama de flujo y el


pseudocódigo correspondiente.

Las estructuras de tipo “Desde” se aplican cuando se tiene de nido el número de veces que
se realizará el proceso dentro del ciclo, lo que la hace diferente de las otras es que aquellas
se pueden utilizar hasta que las condiciones cambien dentro del mismo ciclo, estas
condiciones pueden deberse a un dato proporcionado desde el exterior, o bien, al resultado
de un proceso ejecutado dentro del mismo, el cual marca el final. Además, en el ciclo
“Desde”, su incremento es automático, por lo cual no se tiene que efectuar mediante un
proceso adicional, como en los otros dos tipos.

En los siguientes ejemplos se mostrará la aplicación de los tres tipos de ciclos antes
mencionados.

7. EJEMPLO "BUCLE " MIENTRAS - WHILE ":


Se requiere un algoritmo para obtener la suma de diez cantidades mediante la utilización de
un ciclo “Mientras”. Realice el diagrama de Flujo, el pseudocódigo

SOLUCIÓN:

De esta solución planteada se puede ver, primeramente, que el contador del ciclo “C” se
inicializa en uno, posteriormente se verifica que este sea menor o igual a diez, que es lo que
debe durar el ciclo (diez veces), ya dentro del ciclo el contador se incrementa por cada
vuelta que dé y se realice el proceso de leer un valor y acumularlo en la suma.

En general, todo ciclo debe tener un valor inicial, un incremento y un verificador que
14
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

establezca el límite de ejecución (inicializa, incrementa, “mientras que”).

Variables:
Nombre de la variable Descripción Tipo
C Contador Entero
VA Valor por sumar Real
SU Suma de los valores Real

Pseudocódigo:

Diagrama de flujo:

8. EJEMPLO "BUCLE " REPITE - REPEAT ":

Se requiere un algoritmo para obtener la suma de diez cantidades mediante la utilización de


un ciclo “Mientras”. Realice el diagrama de Flujo, el pseudocódigo:

Variables:

15
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Nombre de la variable Descripción Tipo


C Contador Entero
VA Valor por sumar Real
SU Suma de los valores Real

Pseudocódigo:

Diagrama de flujo:

9. EJEMPLO "BUCLE " DESDE - FOR":

Se requiere un algoritmo para obtener la suma de diez cantidades mediante la utilización de


un ciclo “Mientras”. Realice el diagrama de Flujo, el pseudocódigo

16
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Variables:
Nombre de la variable Descripción Tipo
C Contador Entero
VA Valor por sumar Real
SU Suma de los valores Real

Pseudocódigo:

Diagrama de flujo:

10. Queremos construir un algoritmo para resolver ecuaciones de segundo grado. Como
sabemos, dado una ecuación del tipo a x2 + b x + c = 0, las dos raíces vienen expresadas por
la fórmula:

Para que haya raíces reales la cantidad b2 - 4ac, llamada "discriminante", debe ser
positiva. Podemos diseñar un programa que tenga el siguiente diagrama de flujo:

17
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Se trataría de introducir los tres parámetros a, b , c - que en Matlab se puede hacer mediante
el comando "input"- , a continuación asignamos a una variable "discr" la cantidad b^2 -
4*a*c _ en Matlab con el operador de asignación "=" _ ; ahora se pone la condición discr >
0, en caso de ser cierta se pasa a calcular las soluciones y a desplegarlas en pantalla -con
"disp" para el Matlab - , y en caso de ser falsa desplegar un mensaje de fracaso; y finalizar
el programa.

El código en Matlab sería:

18
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

11. Queremos diseñar un algoritmo para extraer la mayor componente de un vector de 10


componentes.

Analicemos la estrategia a seguir, consideremos el vector v siguiente:

Podemos tomar una variable (llamémosla "Mayor") que vaya almacenando la componente
mayor. Si comenzamos a analizar por la izquierda, inicialmente la componente mayor será la
primera (i=1).

A continuación comprobaremos con un bucle, desde la posición "i" (o sea desde la primera)
hasta la 10, si este Mayor es menor que alguno de los siguientes. Esto nos sugiere un bucle
iterativo (j = i:10), en cuyo interior se realice una comparación del tipo (Mayor < v(j)).

En caso de que esta condición sea falsa (como sucede para la componente j=4) entonces
hacemos Mayor = v(j), o sea, en este caso Mayor = v(4), y también i=j, así almacenamos en
"Mayor" el valor mayor en este momento (el 6), y almacenamos en "i" la posición en que
éste se encuentra (la cuarta).

El diagrama de flujo de este algoritmo sería:

19
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

El programa Matlab, podría ser algo así:

12. Como ejemplo final consideremos el diagrama de flujo para el "algoritmo de bisección".

20
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Algoritmo de la bisección:
% Algoritmo de Bisección
% para hallar la solución aproximada de f(x) = 0
% OBSERVACIÓN: la función f1 se almacena en un m-file.
%
% autor: Elías Torca
a=1;
b=2;
N = 100;
TOL = 10^-6;
i = 1;

while i<=N
p = a + (b-a)/2;
if f1(p)==0 | (b-a)/2 < TOL
disp(p);
break;
end;
i = i+1;
if f1(a)*f1(p)>0
a = p;
else
b = p;
end;
end;
if (b-a)/2 > TOL
disp('El método fracasó');
21
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

end

Pseudocódigo. Mezcla de lenguaje de programación y español (o inglés o cualquier otro


idioma) que se emplea, dentro de la programación estructurada, para realizar el diseño de un
programa. (Hernández, 2010)

Es la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a
un problema determinado. El pseudocódigo utiliza palabras que indican el proceso a
realizar. (Hernández, 2010)

Si bien es cierto, podemos sentarnos frente a la computadora y programar un algoritmo, pero


lo anterior corresponde a un conjunto de buenas prácticas que debemos tomar antes de
comenzar a programar.

Dentro de estas buenas prácticas para el desarrollo de programas tenemos, por último, las
pruebas de escritorio.

Dichas pruebas nos permiten verificar de manera manual los valores que van obteniendo
cada una de las variables involucradas en el programa, siguiendo la lógica de programación
establecida.

De esta forma, podemos tener mayor certidumbre de que el algoritmo al programarlo


realizará lo que realmente queremos que haga.

INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN MATLAB

En lo que sigue, se supone que el usuario teclea lo que aparece en cursiva y precedido del
símbolo >>, que hace el papel del prompt de la máquina (de hecho, lo óptimo sería que el
aprendiz de MATLAB reprodujera éstos y parecidos ejemplos por sí mismo). En normal
aparecerá la respuesta de MATLAB a la instrucción tecleada. Los comentarios aparecerán
precedidos del símbolo %. Antes de comenzar, hagamos algunas consideraciones generales:

 MATLAB distingue entre mayúsculas y minúsculas.


 La comilla ' es la que, en un teclado estándar, se encuentra en la tecla de la interrogación.
 Los comentarios deben ir precedidos por % o, lo que es lo mismo, MATLAB ignora
todo lo que vaya precedido por el símbolo %.

La ayuda de MATLAB es bastante útil; para acceder a la misma basta teclear help o utilizar
el menú del mismo nombre en la ventana de trabajo. Es recomendable usarlo para obtener
una información más precisa sobre la sintaxis y diversas posibilidades de uso de los
comandos. Al final de cada sección se presenta un EJERCICIO que el aprendiz debería
realizar para poner a prueba los conocimientos adquiridos.

1. Iniciando MatLab, ventanas MatLab

Suponemos que el software ya está instalado en la computadora (recomendable la última versión


r2014a), y que el programa puede ser utilizado. Una vez que inicia el programa, se abre la ventana
siguiente:

22
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Figura 1.1. La ventana por defecto del escritorio de MatLab.

Esta ventana tiene tres pequeñas ventanas que son: la Ventana Command (comando), la Ventana
Workspace; y la Ventana Command History. Esta es la vista por defecto de MatLab. Esas ventanas
son tres de las ocho ventanas diferentes siguientes:

Ventana Propósito
Command Window Ventana principal, ingresa variables, corre programas
Figure Window Contiene la salida de los comandos gráficos
Editor Window Crea y depura los archivos script y functión
Help Window Proporciona información de ayuda
Launch Pad Window Proporciona acceso a herramientas, demos y documentación
Command History Window Registra los comandos ingresados en el Command Window
Workspace Window Proporciona información acerca de las variables que se han usado
Current Directory Window Muestra los archivos en el directorio actual
Tabla 1.1. Ventanas de MatLab

Cuatro de las ventanas, el Command Window, Figure Window, Editor Window y Help Window, son
extensamente usadas a lo largo del presente Curso, y se describen brevemente a continuación.

Command Window: es la ventana principal de MatLab y se abre cuando se inicia el programa. Es


conveniente tener el Command Window como la única ventana visible, y esto se puede hacer
cerrando las otras ventanas “clicando” en la x del tope en el lado derecho de la ventana que se desea
cerrar, o desde la pestaña escritorio (desktop).

Figure Window: esta ventana se abre automáticamente cuando se ejecutan comandos de


gráficos, y se obtienen los gráficos creados por esos comandos. Un ejemplo es mostrado en la figura
1.2.

23
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Gráfico de la función y= x exp(1.4) cos(x)


40

30

20

10

0
eje y

-10

-20

-30

-40

-50
0 2 4 6 8 10 12 14 16
eje x

Figura 1.2: Ejemplo de una ventana de figura

Editor Window: Esta ventana es utilizada para escribir y editar programas. Esta ventana es
abierta desde el menú File en el Command Window. Ejemplo en la figura 1.3.

Figura 1.3: Ejemplo de un Editor Window

Help Window: Esta ventana contiene la información de ayuda. Esta ventana puede ser
abierta desde el menú Help en la barra de herramientas de cualquier ventana de MatLab. La ventana
Help es interactiva y puede ser utilizada para obtener información sobre cualquier función de
MatLab. La ventana help se ejemplifica en la figura 1.4:

24
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Figura 1.4: La ventana Help

Cuando MatLab es iniciado, la pantalla que aparecerá será la mostrada en la figura 1.1, y para
principiantes, probablemente sea conveniente cerrar las demás ventanas, excepto el Command
Window. Las ventanas cerradas se puede reabrir desde Desktop, como se indicó antes.

2. TRABAJANDO EN LA VENTANA COMMAND

El Command Window es la principal ventana de MatLab, y puede ser utilizada para ejecutar
comandos, abrir otras ventanas, correr programas escritos por el usuario, y gestionar el software. Un
ejemplo del Command Window con varios comandos simples, que será explicará más adelante, es
mostrado en la figura 1.5.

25
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Figura 1.5: La ventana Command

NOTAS PARA EL TRABAJO EN LA VENTANA DE COMANDOS (Command Window):

 Para tipear un comando el cursos debe estar ubicado junto al símbolo command (>>).
 Una vez tipeado el comando en la misma línea y presionada la tecla Enter, el comando es
ejecutado. Sin embargo, solamente el último comando es ejecutado. Todo lo ejecutado
previamente queda sin cambios.
 Varios comandos pueden ser tipeados en la misma línea. Esto se hace escribiendo una coma
entre los comandos. Cuando la tecla Enter es presionada los comandos son ejecutados en
orden de izquierda a derecha.
 No es posible regresar a una línea previa en el Command Window, hacer una corrección, y
entonces re ejecutar el comando.
 Un comando previamente tipeado puede ser recuperado en el prompt con el uso de la tecla
fecha arriba (). Cuando el comando es desplegado en el prompt, puede ser modificado si es
necesario y ejecutado. La fecha direccional hacia abajo () puede ser utilizada para mover
hacia abajo los comandos previamente tipeados.
 Si el comando es largo para que quepa en una sola línea, este puede ser continuado en la
siguiente línea al tipear tres puntos suspensivos… y presionar Enter. La continuación de los
comandos es tipeado en la nueva línea. El comando puede continuar línea tras línea hasta un
total de 4096 caracteres.

El punto y coma (;):

Cuando un comando es tipeado en la ventana Command y es presionado Enter, el comando es


ejecutado. Cualquier salida que el comando genera es desplegada en el Command Window. Si
un punto y coma (;) es tipeado al final de un comando la salida del comando no es mostrada. El
tipear un punto y coma es usual cuando el resultad es obvio o conocido, o cuando la salida es
muy larga.
26
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

Si varios comandos son tipeados en la misma línea, la salida de alguno de los comando puede no
ser desplegada si el punto y coma es tipeado entre los comandos en vez de una coma.

Tipificando %:

Cuando el símbolo % (porcentaje) es tipeado al inicio de una línea, la línea está designado como
un comentario. Esto significa que cuando la tecla Enter es presionada la línea no se ejecuta. EL
carácter % seguido por texto (comentario), puede ser tipeado después del comando en la misma
línea. Esto no tiene efecto sobre la ejecución del comando.
Usualmente esto no es necesario para comentarios en la ventana Command. Los comentarios, sin
embargo, son frecuentemente usados en programas para agregar descripciones, o para explicar el
programa.

El comando clc:

El comando clc limpia la ventana Command (se tipea clc y se presiona Enter). Después de
trabajar en la ventana Command para lo cual el despliegue puede ser muy extenso. Una vez que
el comando clc es ejecutado se ejecuta la limpieza de la ventana. Este comando no cambia nada
de lo previamente realizado. Por ejemplo, si algunas variables fueron definidas previamente,
ellas pueden seguir siendo usadas. La flecha direccional hacia arriba puede ser usada para
renombrar comandos que fueron previamente tipeados.

3. OPERACIONES ARITMÉTICAS CON ESCALARES

Aquí discutiremos solo operaciones aritméticas con escalares, los cuales son números. Los números
pueden ser usados directamente en cálculos y operaciones aritméticas directamente (como un
calculador), o ellos pueden ser asignados a variables, las cuales pueden ser subsecuentemente usadas
en cálculos. Los símbolos de operaciones aritméticas son:
Operación Símbolo Ejemplo
Adición + 5+3
Sustracción  5–3
Multiplicación * 5*3
División por la derecha / 5/3
División por la izquierda \ 5\3=3/5
Exponenciación ^ 5^3 (significa 53=125)

Se puede puntualizar aquí que todos los símbolos excepto la división por la izquierda son las mismas
que en otros calculadores. Para escalares, la división por la izquierda es la inversa de la división por
la derecha. La división por la izquierda, sin embargo, es más usada para operaciones con arreglos, lo
cual se discutirá más adelante.

3.1. Orden de precedencia

MatLab ejecuta los cálculos acorde al orden de precedencia siguiente. Este orden es el mismo que se
usa en otros cálculos.
Precedencia Operación matemática
Primero Paréntesis. Para paréntesis anidado, los más interiores son ejecutados primero
Segundo Exponenciación
Tercero Multiplicación, división (igual precedencia)
Cuarto Adición y sustracción

En una expresión que tiene varias operaciones, las operaciones de mayor precedencia son ejecutadas
primero que las operaciones de menor precedencia. Si dos o más operaciones tienen la misma
precedencia, la expresión es ejecutada de izquierda a derecha

3.2. Utilización de MatLab como un calculador


27
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

La forma más simple de usar MatLab es como un calculador. Esto se hace en el Command Window
al tipear la expresión matemática y presiona la tecla Enter. MatLab calcula la expresión y responde
desplegando ans = y el resultado numérico de la expresión en la línea siguiente. Esto lo seguiremos
en el tutorial 1.1

TUTORIAL 1.1: Utilización de MatLab como un calculador

>> 7+8/2
Tipear y presionar Enter
ans =
8/3 es ejecutado primero
11

>> (7+8)/2 Tipear y presionar Enter

ans = 7+8 es ejecutado primero


7.5000

>> 4+5/3+2
5/3 se ejecuta primero
ans =

7.6667

>> 5^3/2
5^3 es ejecutado primero, /2 es ejecutado después
ans =

62.5000

>> 27^(1/3)+32^0.2 1/3 es ejecutado primero, 27^(1/3) y 32^0.2 son


ejecutados después, y + es ejecutado al final.
ans =

>> 27^1/3+32^0.2
27^1 y 32^0.2 son ejecutados primero, /3 es
ans = ejecutado después, y + es ejecutado al final

11

>> 0.7854-(0.7854)^3/(1*2*3)+0.785^5/(1*2*3*4*5)...
-(0.785)^7/(1*2*3*4*5*6*7)
Tipear tres puntos … ( y presiona Enter ) para
ans = continuar la expresión en la siguiente línea

0.7071
La última expresión es de los primeros cuatro
>> términos de las series de Taylor para sen (/4)

4. FORMATOS de VISUALIZACIÓN

28
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

El usuario de MatLab puede controlar el formato de salida en pantalla. En el tutorial 1.1 el formato
utilizado es de 4 dígitos después del punto decimal (llamado short), el cual es el formato por defecto
para valores numéricos. Una vez que el formato es ingresado, todas las salidas que siguen se
despliegan en el formato especificado. Varios de los formatos válidos se listan a continuación en la
tabla 1.2., MatLab tiene varios otros formatos para visualizar números. Para obtener detalles de esos
formatos, se puede tipear help format en el Command Window. El formato en el cual son
visualizados no afecta cómo MatLab calcula y guarda números.

Command Descripción Ejemplo


format short Punto fijado con 4 dígitos decimales para >>290/7
0.001  número  1000 ans =
Otra forma de desplegar el formato: 41.4286
short e.
format long Punto fijado con 14 dígitos decimales para >>290/7
0.001  número  100 ans =
Otra forma de desplegar el formato: 41.42857142857143
long e
format short e Notación científica con 4 dígitos decimales >>290/7
ans =
4.1429e+001
format long e Notación científica con 15 dígitos decimales >>290/7
ans =
4.142857142857143e+001
format short g Mejor de 5 dígitos fijados o punto flotante >>290/7
ans =
41.429
format long g Mejor de 15 dígitos fijados o punto flotante >>290/7
ans =
41.4285714285714
format bank Dos dígitos decimales >>290/7
ans =
41.43
format Elimina líneas vacías para lograr más líneas con información desplegada sobre la
compact pantalla
format loose Agrega líneas vacías (opuesto de compact)
Tabla 1.2: Formatos de visualización

5. CONSTRUCCIÓN MATEMÁTICA DE FUNCIONES ELEMENTALES

Agregando a las operaciones aritméticas básicas, las expresiones en MatLab pueden incluir
funciones. MatLab tiene una muy extensa librería de funciones para construcción de funciones
matemáticas. Una función tiene un nombre y un argumento entre paréntesis. Por ejemplo, la función
que calcula la raíz cuadrada de un número es sqrt ( x ). Su nombre es sqrt , y el argumento es x.
Cuando la función es utilizada, el argumento puede ser un número, una variable que ha sido asignada
a un valor numérico, o una expresión calculable que puede ser construida de números y/o variables.
Las funciones pueden estar incluidas en argumentos, tanto como en expresiones. En el tutorial 1.2 se
muestran ejemplos del uso de la función sqrt ( x ) cuando MatLab es utilizado como un calculador
con escalares.

TUTORIAL 1.2: Utilización de sqrt para construcción de funciones

>> sqrt(64)
El argumento es un número
ans =

29
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

>> sqrt(50+14*3) El argumento es una expresión

ans =

9.5917

>> sqrt(54+9*sqrt(100)) El argumento incluye una función

ans =

12

>> (15+600/4)/sqrt(121) La función está incluida en una expresión

ans =

15

A continuación se muestra una lista de funciones matemáticas usadas comúnmente en MatLab, sin
embargo, un lista de funciones organizada por nombre y categoría puede ser encontrada en la
ventana Help.

Función Descripción Ejemplo


sqrt(x) Raíz cuadrada >>sqrt(81)
ans =
9
x
exp(x) Exponencial (e ) >>exp(5)
ans =
148.4132
abs(x) Valor absoluto >>abs(-24)
ans =
24
log(x) Logaritmo natural >>log(1000)
Logaritmo base e (ln) ans =
6.9078
log10(x) Logaritmo base 10 >>log10(1000)
ans =
3.0000
factorial(x) Función factorial x! >>factorial(5)
(x puede ser un entero positivo) ans =
120
Tabla 1.3: funciones matemáticas elementales

CREACIÓN DE MATRICES
La matriz es una forma fundamental de que MatLab utiliza para almacenar y manipular datos. Una
matriz es una lista de números dispuestos en filas y / o columnas. La matriz simple (unidimensional)
es una fila o una columna de números. Una matriz más compleja (bidimensional) es una colección de
números dispuestos en filas y columnas. Un uso de matrices es para almacenar información y datos,
como en una tabla. En la ciencia y la ingeniería, las matrices de una dimensión a menudo representan
matrices. Aquí se muestra cómo crear y variedad de direcciones mientras que más adelante se
muestra cómo utilizar matrices en operaciones matemáticas. Además de las matrices que están
hechas de números, matrices en Matlab también pueden estar hechas de una lista de caracteres, que
se llaman cadenas. Las cadenas se discuten en más capítulos por adelantado.
30
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica
GUIAS DE PROGRAMACIÓN EN COMPUTADORAS – PLATAFORMA MATLAB
Ing. José S. Orbegoso L.

BIBLIOGRAFÍA:

Diseño estructurado de algoritmos, Diagramas de flujos y pseudocódigos. Hernández, María


Lourdes. Universidad de Teuxtepe, México. Marzo 2010.
Numerical Methods for Chemical Engineers using Excel, VBA and MatLab, Victor J. Law, ebooks
chemical engineering, 2013.
Marín H., S. (2016), Diagramas de flujo, Recuperado de:
https://sites.google.com/site/ticiitarraga/01---programacion/01-1--diagramas-de-flujo

31
Jose08052010@gmail.com Facultad de Ingeniería Química y Metalúrgica

S-ar putea să vă placă și