Está en la página 1de 497

HOJAS DE CÁLCULO

Excel básico

Pedro Corcuera
Dpto. Matemática Aplicada y
Ciencias de la Computación
Universidad de Cantabria

corcuerp@unican.es
Índice

• Introducción a Excel.

Excel 2
Objetivos

• Aplicación de hojas de cálculo en problemas de


ingeniería.

Excel 3
Rol de las hojas de cálculo

• Las hojas de cálculo se han convertido en una de las


herramientas principales del ingeniero debido a la facilidad
de uso y su aplicación en la solución de problemas numéricos
y su representación gráfica.
• Hay hojas de cálculo para todo tipo de plataforma (PCs,
Cloud, móvil). Una de las más extendidas para PC es Excel
que se encuentra dentro del entorno MS Office.
• Hay versiones gratuitas como LibreOffice Calc y OpenOffice
Calc.
• Como desventajas de su uso se considera que promueven la
dispersión y manipulación hetérogenea de los datos, poca
adecuación a documentación de cálculos y depuración.
Excel 4
Funcionamiento de las hojas de cálculo

• Las hojas de cálculo se componen de celdas dispuestas en


filas y columnas que pueden contener valores numéricos,
alfanuméricos o relaciones entre sí. También permiten
graficar los valores de las celdas.

Excel 5
Manejo de Excel

Excel 6
Iniciar Excel

• Botón Inicio → Todos los programas → Microsoft Office →


Excel

• Haciendo doble click sobre el icono de acceso directo a


Microsoft Office Excel
Excel 7
Cerrar Excel

• Botón Cerrar que se encuentra en la parte superior derecha


de la venta de Excel
• Menú Archivo → Cerrar

• Pulsando teclas Alt + F4


Excel 8
Nuevo, Abrir, Guardar, Imprimir,
Configurar
• Menú Archivo →

Excel 9
Ventana Excel

Excel 10
Componentes de la ventana1

• Barra de título

– Ayuda de Microsoft Excel (F1)


– Opciones de presentación de la cinta de opciones
– Minimizar
– Maximizar
– Cerrar
• Barra de acceso rápido
– Guardar
– Deshacer
– Rehacer
– Personalizar barra de herramientas de acceso rápido

Excel 11
Componentes de la ventana2

• Cinta de Opciones

– Pulsando tecla ALT (modo de acceso por teclado)

Excel 12
Componentes de la ventana3

• Cuadro de nombres y Barra de fórmulas: muestra el


contenido de la celda activa

• Hoja de cálculo: contiene celdas identificadas por la columna


(letra) y fila (número)

Excel 13
Componentes de la ventana4

• Barra de hojas de trabajo

• Barra de estado y visualización

Excel 14
Fundamentos de Excel1

• Un libro de trabajo (workbook) es el archivo que creamos con


Excel.
• Un libro de trabajo está formado por varias hojas de trabajo
(worksheet).
• La hoja de cálculo es uno de los distintos tipos de hojas que
puede contener un libro de trabajo. Es como una gran hoja
cuadriculada formada por 16.384 columnas y 1.048.576 filas.
• Los elementos individuales (intersección de una columna y
una fila) dentro de una hoja de cálculo se llaman celdas.

Excel 15
Fundamentos de Excel2

• Un rango de celdas es un bloque rectangular de una o más


celdas que Excel trata como una unidad.
• Una celda puede contener dos tipos diferentes de datos:
– una constante numérica (un número) o
– una constante de texto (etiqueta o cadena de caracteres).
• Cada celda se referencia o llama por su columna
(normalmente una letra) y el número de fila. Ejm: B3
referencia la celda en la columna B y fila 3.

Excel 16
Fundamentos de Excel3

• Un conjunto de celdas forman una hoja de trabajo.


• Si una celda contiene un valor numérico, el número puede
haberse escrito directamente o ser el resultado de la
evaluación de una fórmula.
• Una fórmula expresa interdependencias entre celdas. Ejm: el
valor numérico en la celda C7 es generado por la fórmula
=(C3+C4+C5).
• Esta importante característica permite análisis del tipo qué
pasa si (what-if).

Excel 17
Movimientos por la hoja1

• La celda activa en curso se identifica con un rectángulo


alrededor de ella.
• El puntero del ratón se indica por un cursor en cruz que
indica la posición del ratón.
• Para moverse por la hoja de cálculo se puede usar:
– Ratón
– Teclas
– Barra de desplazamiento
– Cuadro de nombres
– Opción: Inicio → Buscar y seleccionar → Ir a… (F5)

Excel 18
Movimientos por la hoja2

• Las teclas o combinación de ellas para moverse rápidamente


por la hoja de cálculo son:
MOVIMIENTO TECLADO
Celda Abajo / Celda Arriba FLECHA ABAJO / FLECHA ARRIBA
Celda Derecha / Celda Izquierda FLECHADERECHA / FLECHA IZQUIERDA
Pantalla Abajo / Pantalla Arriba AVPAG / REPAG
Celda A1 CTRL+INICIO
Primera celda de la columna activa FIN + FLECHA ARRIBA
Última celda de la columna activa FIN + FLECHA ABAJO
Primera celda de la fila activa FIN + FLECHA IZQUIERDA
Última celda de la fila activa FIN + FLECHA DERECHA
Última fila de la hoja CTRL + FLECHA ABAJO
Última columna de la hoja CTRL + FLECHA DERECHA

Excel 19
Movimiento en el libro

• En un libro de trabajo existen varias hojas de cálculo. Por


defecto aparece una hoja de cálculo aunque el número puede
aumentarse.
• Para seleccionar una hoja activa se usa la barra de etiquetas.

• Opcionalmente con teclas


MOVIMIENTO TECLADO
Hoja Siguiente CTRL+ AVPAG
Hoja Anterior CTRL+ REPAG

Excel 20
Introducción de datos

• Dato es cualquier información que se puede utilizar en una


fórmula.
• Los pasos para introducir datos son los mismos que para
introducir rótulos:
– Seleccionar la celda.
– Escribir el dato.
– Pulsar Entrar o seleccionar otra celda haciendo clic sobre ella o
pulsando las teclas del cursor.
• También se puede usar los iconos en la barra de fórmula
para ingresar/modificar los datos.

Excel 21
Datos numéricos

• Son los más frecuentes en las hojas de cálculo. Se debe


tener en cuenta que Excel:
– Alinea a la derecha con formato general.
– Dispone de gran variedad de formatos.
– Utiliza la notación científica cuando no cabe en la celda.
– Para fracciones se escribe la parte entera, se deja un espacio en
blanco y a continuación la fracción.
– Para introducir porcentajes se teclea el número seguido del símbolo
%.
– Cuando un número no cabe llena la celda con #######
• Ejercicio: Introducir 12345,6789 ; 7,25% y 2 3/5

Excel 22
Asignación de nombres

• Para facilitar la comprensión de las hojas de cálculo,


conviene poner nombres a las celdas.
• Para asignar un nombre a una celda o rango de celdas:
– Seleccionar la celda o rango de celdas.
– Escribir el texto (máximo 255 caracteres) de la etiqueta en el
Cuadro de nombres y Pulsar Entrar (↵).
– También se puede usar el Administrador de nombres que se
encuentra en la pestaña Fórmulas.

Excel 23
Eliminar o borrar contenido de celdas

• Si se está escribiendo los datos se puede usar la tecla de


Retroceso, o se puede reescribir el dato. El nuevo dato
reemplazará al antiguo, una vez que se pulsa Entrar.
• Se puede borrar una celda activa pulsando la tecla Supr o
desde Inicio→Borrar → Todo/Contenido.
• Si se está escribiendo los datos o formulas también se puede
emplear el icono Cancelar de la barra de edición de celda.

Excel 24
Inserción de figuras, texto, imágenes y
ecuaciones1
• Para introducir figuras, esquemas, texto artístico e imágenes
se selecciona:
– Formas: Insertar → Ilustraciones → Formas
– Esquemas: Insertar → Ilustraciones → SmartArt
– Imágenes prediseñadas: Insertar → Ilustraciones → Imágenes en
línea
– Imágenes desde archivo: Insertar → Ilustraciones → Imágenes
– Texto artístico: Insertar → Texto → WordArt
– Cuadros de Texto: Insertar → Texto → Cuadro de texto
– Ecuaciones: Insertar → Símbolos → Ecuación

Excel 25
Inserción de figuras, texto, imágenes y
ecuaciones2

Excel 26
Formato F1C1 para celdas

• El formato por defecto de las hojas de cálculo es A1, es decir,


columna-fila.
• Hay otro formato para hacer referencia a celdas que es fila-
columa y es llamado F1C1.
• Para ello se selecciona Archivo→Opciones →
Fórmulas→ Estilo de referencia F1C1.
• Este estilo usa números para identificar las filas y columnas.
Ejemplo: F(1)C(2) hace referencia absoluta a la fila 1,
columna 2.

Excel 27
Fórmulas

• El éxito de las hojas de cálculo se debe a que se pueden


relacionar las celdas a través de fórmulas.
• Para introducir una fórmula:
– Seleccionar la celda
– Escribir el signo igual (=)
– Escribir la fórmula: operandos y operadores
– Pulsar Entrar
• Las fórmulas empiezan con el signo igual (=).
• Lo que muestra una celda es el valor del resultado de la
fórmula.
• Los operandos de fórmulas pueden ser referencias a celdas
que contienen los datos. Las celdas de referencia pueden
estar en otras hojas o libros.
Excel 28
Ejemplo de fórmula

• Ejercicio: Calcular el equivalente en pesetas de 123,45 €.


• Como calculadora manual.

• Como hoja de cálculo.

Excel 29
Operadores1

• Excel incluye operadores aritméticos, de texto, de


comparación y de referencia.
• Operadores aritméticos
Operador aritmético Significado Ejemplo
+ (signo más) Suma 3+3
– (signo menos) Resta 3–1
Negación –1
* (asterisco) Multiplicación 3*3
/ (barra oblicua) División 3/3 | =A1+B1-C2*A4/A2
% (signo de porcentaje) Porcentaje 20%

^ (acento circunflejo) Exponenciación 3^2

Excel 30
Operadores2

• Operadores de comparación: el resultado es un valor lógico,


VERDADERO o FALSO
Operador de comparación Significado Ejemplo

= (signo igual) Igual a A1 = B1


> (signo mayor que) Mayor que A1 > B1

< (signo menor que) Menor que A1 < B1


>= (signo mayor o igual que) Mayor o igual que A1 >= B1

<= (signo menor o igual que) Menor o igual que A1 <= B1

<> (signo distinto de) Distinto de A1 <> B1

Excel 31
Operadores3

• Operador de texto o concatenación (&): une o concatena una


o varias cadenas de texto con el fin de generar un solo
elemento de texto.
Operador de texto Significado Ejemplo

& ("y" comercial) Conecta o concatena dos valores ("Viento"&"norte")


para generar un valor de texto
continuo

Excel 32
Operadores4

• Operadores de referencia: combina rangos de celdas para los


cálculos con los siguientes operadores.

Operador de Significado Ejemplo


referencia
: (dos puntos) Operador de rango, que genera una B5:B15
referencia a todas las celdas entre dos
referencias, éstas incluidas.
; (punto y coma) Operador de unión, que combina varias SUMA(B5:B15;D5:D15)
referencias en una sola
(espacio) Operador de intersección, que genera una B7:D7 C6:C8
referencia a las celdas comunes a las dos
referencias

Excel 33
Precedencia de operadores

• Si una fórmula contiene operadores con la misma prioridad


se evaluará de izquierda a derecha.
• Para cambiar el orden de evaluación usar paréntesis.
Orden de prioridad Operador Descripción
1 − Negación
2 % Porcentaje
3 ^ Exponente
4 * / Multiplicación y división
5 + − Suma y resta
6 & Concatenación
7 = < > <= >= <> Comparación

Excel 34
Fórmulas con datos en más de una hoja

• Excel permite crear fórmulas que operan con datos


almacenados en más de una hoja de un mismo libro.
• Ejemplo: Se desea calcular los totales de ingresos y gastos
del primer trimestre.
– Barra de hojas → Hoja nueva
– Vista → Nueva Ventana | Organizar todo - Mosaico

Excel 35
Fórmulas con datos en más de una hoja

Excel 36
Fórmulas con datos en más de un libro

• Excel permite crear fórmulas que operan con datos


almacenados en más de un libro.
• Ejemplo: El grupo G1 tiene dos empresas A y B. Cada una
entrega un libro a G1 para consolidar.

Excel 37
Fórmulas con datos en más de un libro

Excel 38
Referencias circulares

• Una fórmula puede hacer referencia a otra siempre que la


segunda fórmula no haga referencia a la primera fórmula.
• Si las fórmulas se referencian entre ellas se tiene una
referencia circular. En ese caso la evaluación de las
fórmulas requiere el valor de la otra. Por ello se debe evitar
las referencias circulares.
• Excel detecta las referencias circulares con el mensaje e
indicación en la hoja.

Excel 39
Formato de celdas1

• Excel presenta el valor de una celda según el formato


asignado.
• El formato no afecta al contenido de la celda, sólo a su
presentación.
• Si se cambia el formato de la celda, el mismo valor puede
significar cosas diferentes.
• También se puede cambiar la apariencia de una celda: tipo
de fuente, tamaño, alineación, color, etc.
• Ventana Formato de celdas: Inicio → Celdas → Formato →
Formato de celdas ó Celda → Botón derecho

Excel 40
Formato de celdas2

Excel 41
Formato de celdas3

• Formato de números.
– General: El contenido se presenta como se ha introducido.
– Número: Adecuado para representar números. Se especifica el
número de decimales, separador de miles y números negativos
– Moneda: Se usa para cantidades monetarias. Se especifica el
número de decimales, la moneda y formato de negativos.
– Contabilidad: Igual que el formato moneda, la diferencia es que
alinea los números por la coma decimal y el símbolo de moneda.

Excel 42
Formato de celdas4

• Ejemplo: Introducir en la celda A2 el valor 12345,6789 y en


las celdas D2:D5 las fórmulas adecuadas para que tengan
igual valor que la celda A2. Asignar a cada celda del rango
D2:D5 el formato que se indica.

Excel 43
Formato de celdas5

• Fecha-Hora
– Fecha: número (parte decimal cero) que indica los días
transcurridos desde el 1/01/1900 hasta la fecha indicada.
– Hora: fracción decimal (parte entera cero) que tiene como unidad el
día (1 equivale a 24 horas).

Excel 44
Formato de celdas6

• Ejemplo: Introduce los datos de tu nacimiento (fecha, hora y


fecha-hora) en las celdas B8:B10. Las celdas C8:C10 tienen
el mismo valor pero con formato número (3 decimales y
separador de miles).

Excel 45
Formato de celdas7

• Otros Formatos:
– Porcentaje: Multiplica el valor de la celda por 100 y añade el
símbolo porcentual (%).
– Fracción: Muestra los números en forma de fracción.
– Científica: Parte entera y decimal seguido de la letra E y de un
entero que indica el exponente de 10.
– Texto: Se presenta tal como se introduce el texto.
– Especial: Se usa para números que representan determinados
datos (código postal y teléfono).
– Personalizada: Se escribe el formato que se ajusta a nuestra
necesidades adaptando los códigos predefinidos. Códigos #, 0, ?

Excel 46
Formato de celdas8

Excel 47
Formato de celdas9

• Otras opciones:
– Alineación: permite modificar y establecer la Alineación del texto,
Orientación, Control del texto y Dirección del texto.
– Fuente: permite modificar la Fuente (tipo de letra), Estilo, Tamaño,
Subrayado, Color y Efectos.
– Bordes: permite aplicar distintos tipos de bordes a una celda.
– Relleno: permite dar a las celdas distintos tipos de sombreado
(color del fondo) y de trama.
– Proteger: permite bloquear y ocultar celdas. Para que que este tipo
de formato tenga efecto es necesario activar la opción Revisar →
Proteger hoja (asignar contraseña).

Excel 48
Otras opciones de Formato10

• Copiar formato, permite copiar el formato de una celda a


otras celdas. Se usa el botón que está en Inicio.
• Formato condicional, permite modificar el formato de la
celda dependiendo de su valor.
• Dar formato como tabla, asigna un formato prediseñado
que puede aplicarse rápidamente a un rango de celdas.
• Para ajustar el ancho de una columna (fila):
– Método 1: colocar el cursor en el extremo derecho del encabezado
de la columna (fila). El puntero cambia a una cruz. Después con el
ratón se arrastra .
– Método 2: usar comando Formato→Columna/Ancho.

Excel 49
Operaciones en rango de celdas

• Muchas operaciones se realizan sobre un rango o conjunto


de celdas.
• Selección de un bloque de celdas:
– Ratón: clic sobre una celda esquina del bloque y arrastrar
o mantener pulsada la tecla Shift hasta la esquina
opuesta.
– Si el bloque no es contiguo pulsar la tecla Ctrl.
– Toda la hoja: Pulsar en el botón de la esquina superior
izquierda.
• Borrar el contenido de un bloque de celdas:
– Primero se selecciona el bloque de celdas y luego se
pulsa la tecla Supr.

Excel 50
Operaciones en rango de celdas

• Selección de filas (columnas) enteras:


– Hacer clic sobre el número (letra) que identifica la fila
(columna).
– Para seleccionar filas (columnas) contiguas se selecciona
la primera y se arrastra el ratón sobre los identificadores
de fila (columna).
– También se hace clic sobre el primer identificador y
manteneniendo pulsada la tecla Shift se hace clic sobre
el último identificador.
– Si los bloques no son contiguos mantener pulsada la tecla
Ctrl.

Excel 51
Nombres de celdas1

• Excel permite asignar nombres (propios) a celdas o bloques


de celdas, así como constantes y fórmulas.
• Los nombres se pueden pueden usar en fórmulas.
• El nombre es válido en todo el libro, por tanto no se puede
dar el mismo nombre a dos celdas, rangos, constantes o
fómulas diferentes.
• La sintaxis de los nombres es similar a las variables de un
lenguaje de programación (p.e. Fortran)

Excel 52
Nombres de celdas2

• Para asignar un nombre a una celda o bloque:


– Seleccionar la celda o rango.
– Clic en el interior del Cuadro de nombres.
– Tecleamos el nombre.
– Pulsamos la tecla Entrar (Intro). ← No olvidar!

Excel 53
Nombres de constantes o fórmulas

• Para gestionar nombres en un libro:

Excel 54
Copiar y pegar celdas

• Método I – Copiar y Pegar


– Seleccionar el bloque de celdas.
– Seleccionar Copiar en el menú Portapapeles de
Inicio.
– Mover el puntero a la esquina superior izquierda de la
nueva ubicación.
– Pulsar Enter o seleccionar Pegar en el menú
Portapapeles.
• Método II – con el ratón
– Seleccionar el bloque de celdas.
– Mover el puntero a cualquier borde de las celdas seleccionadas.
– Pulsar la tecla Ctrl y el botón izquierdo del ratón y arrastrar el
bloque a la nueva ubicación.
– Soltar el botón del ratón.
Excel 55
Mover celdas

• Método I – Copiar y Pegar


– Seleccionar el bloque de celdas.
– Seleccionar Cortar en el menú Portapapeles de
Inicio.
– Mover el puntero a la esquina superior izquierda de la
nueva ubicación.
– Pulsar Enter o seleccionar Pegar en el menú
Portapapeles.
• Método II – con el ratón
– Seleccionar el bloque de celdas.
– Mover el puntero a cualquier borde de las celdas seleccionadas.
– Pulsar el botón izquierdo del ratón y arrastrar el bloque a la nueva
ubicación.
– Soltar el botón del ratón.
Excel 56
Insertar celdas

• Celdas
– Seleccionar la celda o bloque de celdas
donde se desea insertar.
– Ejecutar Inicio → Celdas → Insertar.
Se abre la ventana Insertar celdas.
– Seleccionar la opción que interesa. Pulsar
Aceptar.
• Filas (columnas)
– Seleccionar la fila(s) (columna(s)) donde se desea
insertar.
– Ejecutar Insertar → Filas (Columnas).
Excel 57
Eliminar - Deshacer

• Usar el comando Inicio → Celdas →


Eliminar
– Seleccionar la celda o bloque de celdas que se
desea eliminar.
– Ejecutar Edición → Eliminar. Se abre la
ventana Eliminar celdas.
– Seleccionar la opción que interesa. Pulsar
Aceptar.
– En el caso de seleccionar filas (columnas) se
elimina directamente la selección.
• Para deshacer los cambios
– Seleccionar Deshacer en el menú Edición.
– O el icono Deshacer en la barra estándar.
Excel 58
Introducir datos repetidos

• Escribir el mismo dato en varias celdas de una hoja:


– Seleccionar las celdas.
– Introducir el dato.
– Pulsar simultáneamente las teclas Ctrl - Entrar.
• Escribir el mismo dato en varias hojas de un libro:
– Seleccionar las hojas del libro (clic sobre su etiqueta y
mantener pulsada la tecla Ctrl sobre el resto de
etiquetas).
– Teclear los datos sobre una de ellas.

Excel 59
Serie de datos o fechas1

• Series de datos consecutivos mediante el controlador


de relleno
– Introducir el primer dato de la serie en una celda y situar el cursor
sobre el controlador de relleno de la celda. Cuando adopte la forma
+ hacer clic con el botón izquierdo del ratón y arrastrar en la
dirección vertical u horizontal que interesa.

– Situar el puntero sobre el cuadro y hacer clic para desplegar el


cuadro de opciones.
– Hacer clic sobre la opción que interesa.

Excel 60
Serie de datos o fechas2

• Con el controlador de relleno


– Introducir los dos primeros datos de la serie en dos celdas
contiguas de una fila (o columna).
– Seleccionar dichas celdas.
– Arrastrar el controlador de relleno horizontalmete (o
verticalmente).

Excel 61
Serie de datos o fechas3

• Series de datos consecutivos mediante el controlador


de relleno
– Desde Inicio → Modificar → Rellenar → Series

Excel 62
Listas personalizadas1

• Se puede configurar desde Inicio → Opciones →


Avanzadas → General → Modificar listas
personalizadas

Excel 63
Listas personalizadas2

• Se puede configurar desde Inicio → Opciones →


Avanzadas → General → Modificar listas
personalizadas

Excel 64
Referencias de celda1

• Cuando se crea una fórmula se puede utilizar tres tipos de


referencia a celdas y a rangos de celdas:
– Referencias relativas, cuando al copiar la fórmula cambia la fila y
la columna.
– Referencias absolutas, cuando al copiar la fórmula no cambia la
fila ni la columna.
– Referencias mixtas, cuando al copiar la fórmula cambia la fila
(columna) y permanece fija la columna (fila).

Excel 65
Referencias relativas2

• Son las más frecuentes y son las que se usa por


defecto.
• Cuando se copia una fórmula, Excel actualiza
automáticamente la fila y la columna ajustándolas a
las de la celda en la que se ha hecho la copia.
• Si en C1 hay una fórmula = A1+B1 y se copia en la
celda C2, en la celda C2 la formula cambia
automáticamente a: = A2+B2.

Excel 66
Referencias absolutas3

• Se requieren cuando se necesita que una referencia


a celda o rango no cambie al copiar la fórmula.
• Para indicar referencia absoluta se antepone un signo
dólar ($) a la letra que indica la columna y otro signo
dólar ($) al número que indica la fila.
• Ejemplo: Si en C1 hay una fórmula = $A$1+$B$1 y se
copia en la celda C2, en la celda C2 la fórmula no
cambia.

Excel 67
Referencias mixtas4

• Se requieren cuando al copiar la fórmula no cambie la


fila o columna.
• Tienen una parte de referencia absoluta, que no
cambia al copiar, y otra parte de la referencia relativa,
que sí cambia al copiar.
• Se antepone el signo dólar ($) a la parte absoluta
(fija).
• Se puede usar la tecla F4 para introducir las
referencias absolutas.

Excel 68
Validación de datos1

• La protección de celdas es útil para impedir que el usuario


modifique fórmulas, rótulos, etc.
• Para controlar la entrada de datos es útil la validación de
datos. Así se restringe el tipo de datos, fija límites, establece
valores de una lista, utiliza una fórmula, visualiza un mensaje
al seleccionar una celda y un mensaje de error al introducir
un dato erróneo.
• Para establecer un criterio de validación de datos:
– Seleccionar una celda o rango.
– Ejecutar comando Datos→Validación de datos

Excel 69
Validación de datos2

• Ejemplo: Operadores_formatos_graficos_etc.xlsx

Excel 70
Otras opciones del menú Archivo

• Guardar la hoja de cálculo


– Hay varias formas. La más común es pulsar el icono Guardar en
la barra de herramientas estándar.
– El format (extension) por defecto es .xlsx. Otro formato es .xlsm
para macros.
• Recuperar la hoja de cálculo
– Seleccionar Abrir en el menú Abrir.
• Impresión de la hoja de cálculo
– Para imprimir toda la hoja seleccionar Imprimir en el menú Abrir.
Luego seleccionar la opción Hojas activas.
– Para imprimir una parte se debe seleccionar el bloque de celdas
previamente y escoger Imprimir selección.

Excel 71
Otras opciones

• Mostrar fórmulas de las celdas


– Seleccionar Archivo → Opciones → Avanzadas → Mostrar
opciones para esta hoja (seleccionar hoja o libro) →
Mostrar fórmulas en celdas en lugar de los resultados
calculados.
• Creación y ejecución de Macros
– Una macro es una serie de acciones consecutivas de teclas y/o
ratón que se guarda con un nombre para una ejecución posterior de
forma directa o mediante una combinación de teclas. Las macros se
guardan en programas VBA.
– Primero hay que habilitar la pestaña Desarrollador: Archivo →
Opciones → Personalizar cinta de opciones →
Desarrollador (seleccionar).
– Para grabar una macro seleccionar Desarrollador→ Grabar
macro (código) →Grabar nueva macro. Después Detener
grabación.
Excel 72
Funciones

Excel 73
Funciones1

• Las funciones son fórmulas predefinidas que ejecutan


cálculos utilizando valores específicos (argumentos).
• Características de las funciones:
– Estructura: Una función comienza por el nombre de la función,
seguido de un paréntesis de apertura, los argumentos de la función
separados por comas y un paréntesis de cierre. Ejm:
SUMA(C1,C2,C3)
– Argumentos: Los argumentos pueden ser obligatorios u
opcionales. Pueden ser constantes, fórmulas u otras funciones Los
tipos de dato pueden ser números, texto, valores lógicos, valores de
error (p.e. #N/A), fechas o referencias de celda.

Excel 74
Funciones2

• Directamente, cuando se conoce la sintaxis de la función.


• Asistente para funciones, seleccionar Fórmulas →
Insertar función (Biblioteca de funciones) en la cinta
de opciones o en la barra de fórmulas.

Excel 75
Funciones2

• La opción Ayuda sobre esta función ofrece una


explicación, sintaxis, observaciones y ejemplos de cada
función.

Excel 76
Funciones3

• Se puede introducir funciones anidadas con el asistente para


funciones.
• Las funciones Suma, Promedio, Cuenta, Máx y Mín se usan
con mucha frecuencia y por ello están disponibles en el botón
Autosuma de la pestaña Fórmulas.

Excel 77
Categorías de Funciones
• Funciones matemáticas y trigonométricas
• Funciones lógicas
• Funciones estadísticas
• Funciones financieras
• Funciones de búsqueda y referencia
• Funciones de información
• Funciones de texto
• Funciones de ingeniería
• Funciones de fecha y hora
• Funciones de base de datos
• Funciones de compatibilidad
• Funciones de cubo
• Funciones web
• Funciones definidas por el usuario instaladas con complementos
Excel 78
Funciones Lógicas

• SI comprueba si se cumple una condición y devuelve un


valor si se evalúa como VERDADERO y otro valor si se
evalúa como FALSO.

Permiten crear funciones lógicas tales como:


• Y
• O
• NO
• XO

Excel 79
Funciones Fecha y Hora

• Excel representa los días mediante números enteros


secuenciales llamados números de serie de fecha.
• Para representar la hora usa la parte decimal del número de
serie. Excel usa las fechas como números en fórmulas y
funciones.
• HOY, AHORA
• DIA, MES, AÑO
• DIASEM, FECHA, DIAS360
• HORA, MINUTO, SEGUNDO
• NSHORA, FECHA.MES

Excel 80
Funciones Búsqueda y Referencia

• Las funciones de búsqueda permiten localizar un valor en


una lista y extraer información de una tabla o matriz de datos.
• BUSCARV, BUSCARH , BUSCAR
• COINCIDIR, INDICE
• TRANSPONER (operación matricial)

Excel 81
Funciones Financieras

• Excel incorpora funciones que permiten resolver la mayoría


de problemas financieros de las empresas y de evaluación de
proyectos.
• PAGO, PAGOINT, PAGOPRIN
• VA, VF, NPER, TASA
• VNA, TIR

Excel 82
Funciones Matemáticas y trigonométricas

• Excel ofrece un repertorio de funciones matemáticas y


trigonométricas amplio.
• PI, SUMA, PRODUCTO, POTENCIA, RESIDUO,
ABS, SIGNO, RAIZ, NUMERO.ROMANO,
SUMAR.SI, SUMAPRODUCTO, REDONDEAR,
TRUNCAR, ENTERO, COMBINAT, M.C.D.,
M.C.M.
• EXP, LN, LOG, LOG10, ALEATORIO
• ACOS, ASENO, ACOSH, ASENOH, ATAN,
ATAN2, ATANH, COS, COSH, GRADOS,
RADIANES, SENO, SENOH, TAN, TANH
• MDETERM, MINVERSA, MMULT
Excel 83
Funciones Estadísticas

• Excel ofrece un repertorio de funciones estadísticas amplio.


• CONTAR, CONTAR.BLANCO, CONTARA,
CONTAR.SI, FRECUENCIA, MIN, MAX,
MEDIANA, MODA, PROMEDIO.
• PENDIENTE, INTERSECCION.EJE,
ESTIMACION.LINEAL, COEF.DE.CORREL
• DESVEST, DISTR.BINOM, DISTR.NORMAL,
PRUEBA.F, VAR

Excel 84
Funciones Información y Texto

• Las funciones de información permiten comprobar el tipo de


dato de un valor o de una referencia. Útiles para comprobar
el tipo de resultado que se ha obtenido de un cálculo.
Normalmente se usan combinadas con la función SI.
• Las funciones de texto permite realizar operaciones sobre el
texto.
• ESBLANCO, ESERROR, ESNUMERO,
ESTEXTO, TIPO.
• CONCATENAR, DECIMAL, MONEDA, TEXTO,
MAYUS, MINUSC, NOMPROPIO, VALOR.

Excel 85
Funciones de Ingeniería

• Las funciones de ingeniería incluyen funciones propias de


cálculos de ingeniería.
• BESSELI, BESSELJ, BESSELK, BESSELY
• BIN.A.DEC, BIN.A.HEX, DEC.A.BIN, DEC.A.HEX
• COMPLEJO, IM.ABS, IM.ANGULO,
IM.CONJUGADA, IM.DIV, IM.EXP, IM.LN,
IM.PRODUCT, IM.POT, IM.RAIZ2, IM.SUM,
IM.SUSTR, IMAGINARIO

Excel 86
Funciones Base de datos

• Las funciones de bases de datos incluyen funciones para la


gestión de datos organizados como base de datos.
• BDMIN, BDMAX, BDPROMEDIO

Excel 87
Gráficos

Excel 88
Gráficos de datos1

• La obtención de gráficos de datos es la tarea más común


realizada con una hoja de cálculo.
• Excel dispone de un asistente para gráficos para crear con
facilidad gráficos que muestran la información de modo claro
y atractivo.
• Conceptos para crear gráficos:
– Cada dato en la hoja se representa en el gráfico mediante un
marcador de dato.
– Cada conjunto de datos constituye una serie de datos.
– Cada componente de una serie de datos constituye una categoría.

Excel 89
Gráficos de datos2

• Datos + Selección del gráfico (Insertar → Gráficos)

Excel 90
Elementos de los gráficos
1. El área del gráfico.
2. El área de trazado del gráfico.
3. Los puntos de datos de la serie de
datos que se trazan en el gráfico.
4. Los ejes horizontal (categorías) y
vertical (valores) en los que se
trazan los datos del gráfico.
5. La leyenda del gráfico.
6. Un título de eje y de gráfico que
puede agregar al gráfico.
7. Una etiqueta de datos que puede
usar para identificar los detalles de
un punto de datos de una serie de
datos.
Excel 91
Hojas de gráfico y Gráfico Incrustado

• Hoja de gráfico, es una hoja de cálculo que contiene


únicamente un gráfico.
• Gráfico incrustado, se considera como un objeto gráfico
situado en la hoja.

Excel 92
Tipos de gráficos1

• Tipos estándar:
– Columna y Barra, adecuados para comparar categorías.
– Línea, apropiado para mostrar la tendencia de una serie de valores
medidos a intervalos regulares de tiempo.
– Circular, usados para representar las distintas partes que
componen un total.
• Anillos, equivalente al gráfico circular, pero adaptado para representar varias
series de datos.
– Área, iguales a los de líneas, pero rellenan los espacios
comprendidos entre las líneas que representan los valores.
– XY (dispersión), adecuado para representar pares de valores.
• Burbujas, similar al de dispersión pero con un valor adicional para tamaño
del marcador.
Excel 93
Tipos de gráficos2

• Tipos estándar:
– Cotizaciones, gráficos específicos para representra cotizaciones
de valores bursátiles.
– Superficie, crea superficies 3D o curvas de nivel en superficies.
– Radial, radial con marcadores en cada valor de datos.
– Cuadro combinado, permite combiner dos tipos diferentes de
gráficos en uno solo.
• Para cada tipo estándar existen subtipos o variants del
mismo.

Excel 94
Ejemplos de gráficos de datos

• Gráficos de varios tipos


(Operadores_formatos_graficos_etc.xlsx).
• Gráfico X-Y (Ejemplograf.xlsx)
El voltaje en un condensador varía con el tiempo según la
fórmula V= 10 e-0.5t
donde: V representa el voltaje y
t el tiempo en segundos.
– Mostrar los datos con una precisión de tres decimales.
– Preparar un gráfico para el rango de 0 a 10 segundos.
– Etiquetar el gráfico para que sea legible.

Excel 95
Ejemplos de gráficos de datos

• Gráfico Semilog X-Y


(Ejemplograf.xlsx)
– Hacer doble click
sobre el eje o pulsar
botón derecho del
ratón y seleccionar
Dar formato al eje .
– En Opciones del eje
seleccionar Escala
logarítmica.

Excel 96
Ejemplos de gráficos de datos

• Gráfico Log-Log X-Y (Ejemplograf.xlsx)


– Construir una hoja para calcular el área (A=4πr2) y
volumen de una esfera (V=4/3 πr3) para r = rango de 0.1-
10 en incrementos de 1.
– Graficar el área y volumen en gráficos tipo X-Y y log-log
Propiedades de una esfera Propiedades de una esfera
4500.0 10000
4000.0 1000
3500.0 100
3000.0
10
2500.0
1
2000.0 Area Area
0.1
1500.0 Volumen Volumen
1000.0 0.01
500.0 0.001
0.0 0.0001
0 2 4 6 8 10 12 0.01 0.1 1 10 100
Radio (metros) Radio (metros)

Excel 97
Gráficos – Ejes múltiples

• Problema: Graficar varias series de datos con


diferentes ordenes de magnitud.
• Ejemplo: Ejes_multiples.xlsx
• Una opción es usar un eje secundario. Para ello
seleccionar la serie y con el botón derecho del ratón
seleccionar Formato de serie de datos. En la pestaña
Eje seleccionar Eje secundario.
• Otra opción puede ser pasar los datos a escala
similar multiplicando (o dividiendo) por un factor de
escala (múltiplo de 10).
Excel 98
Gráficos – Ejes múltiples

• Como Excel sólo admite un eje secundario, una


opción adicional es crear un eje falso.
• Para crear el eje falso se mantiene una de las
coordenadas constante. Es necesario editar
manualmente los valores de Y.
• Se puede añadir elementos gráficos (flechas) y texto
a partir de la barra de dibujo en el gráfico.

Excel 99
Gráficos – Ejes múltiples

Excel 100
Gráficos – tipo radial

• Problema: A partir de un gráfico creado cambiarlo sin


partir de cero.
• Ejemplo: Ejes_multiples.xls
• Seleccionar el gráfico con el botón derecho del ratón
y cambar el tipo de gráfico a Radial.
• El tipo Radial exige que los datos de X estén
espaciados uniformemente. El espacio entre las
líneas de división siempre es uniforme y habrá tantos
como datos.
• Modificar el Formato de líneas de división para
representar adecuadamente los valores.
Excel 101
Gráficos – tipo radial

Excel 102
Gráficos – Superficies 3D

• Problema: Crear un gráfico de superficie 3D para


mostrar los resultados de un estudio de optimización
multidimensional o mostrar datos topográficos.
• Ejemplo: Ejercicio_graficos_datos y resueltos.xlsx
• Se utilizará el tipo de gráfico Superficie.
• Se requiere que los datos X e Y estén espaciados
uniformemente. Se puede agregar una leyenda con
un rango de colores apropiado para el usuario.
• Se puede representar el gráfico como malla de
alambres o colores. Excel permite cambiar el punto
de vista 3D.

Excel 103
Gráficos – Superficies 3D

• Ejemplo: gráfico de la función  cos( x 2 + y 2 ) 


Z = 1 −  ⋅ k
para k=1.25  x +y
2 2

Excel 104
Gráficos – Contorno

• Problema: Crear un gráfico tipo contorno (curvas de


nivel) para un mapa con la elevación del terreno, un
mapa de presiones u otra variable distribuída en una
cuadrícula espaciada uniformemente.
• Ejemplo: Ejercicio_graficos_datos y resueltos.xlsx
• Se utilizará el tipo de gráfico Superficie, opción
Contorno.
• Se recomienda mostrar la leyenda y usar una escala
apropiada para mostrar los datos de interés.

Excel 105
Gráficos – Contorno

• Contorno con dos escalas

Excel 106
Gráficos – Combinar tipos

• Problema: Mostrar distintas series de datos en el


mismo gráfico con diferentes estilos.
• Ejemplo: Ejercicio_graficos_datos y resueltos.xlsx
• Se fija el estilo de gráfico de cada serie por separado.
Para ello se selecciona la serie con el botón derecho
del ratón y se selecciona el tipo de gráfico adecuado.

Excel 107
Gráficos – Combinar tipos

Excel 108
Gráficos – Anotaciones

• Problema: Crear anotaciones y adornos en los


gráficos para añadir información.
• Ejemplo: Ejercicio_graficos_datos y resueltos.xlsx
• Se utiliza las herramientas de dibujo disponibles en
Ver→Barras de Herramientas → Dibujo colocando
los elementos gráficos sobre el gráfico y se les da el
formato adecuado. También se puede usar sobre la
hoja de cálculo.

Excel 109
Gráficos – Anotaciones

Excel 110
Minigráficos

• Un minigráfico es un pequeño gráfico en una celda de


hoja de cálculo que proporciona una representación
visual de los datos.
• Se usan para mostrar las tendencias de una serie de
valores o para resaltar los valores máximos y
mínimos. Es útil, pero los patrones pueden ser
difíciles de encontrar un vistazo.
• Ejemplo: minigraficos.xlsx

Excel 111
Funciones matemáticas

Excel 112
Funciones de suma

• Problema: Se requiere realizar sumas de grandes


cantidades de datos usando para ello las funciones
que hacen esas sumas de forma fácil.
• Ejemplo: Funciones_matematicas.xlsx
SUMA Suma sus argumentos.
SUMAR.SI Suma las celdas especificadas que cumplen unos criterios determinados.
SUMAR.SI.CONJUNTO Suma las celdas de un rango que cumplen varios criterios.
SUMAPRODUCTO Devuelve la suma de los productos de los correspondientes componentes de matriz.
SUMA.CUADRADOS Devuelve la suma de los cuadrados de los argumentos.
Devuelve la suma de la diferencia de los cuadrados de los valores correspondientes de dos
SUMAX2MENOSY2
matrices.
Devuelve la suma de la suma de los cuadrados de los valores correspondientes de dos
SUMAX2MASY2
matrices.
Devuelve la suma de los cuadrados de las diferencias de los valores correspondientes de dos
SUMAXMENOSY2
matrices.
SUMA.SERIES Devuelve la suma de una serie de potencias en función de la fórmula.

Excel 113
Otras divisiones y multiplicaciones

• Problema: Se requiere realizar otros tipos de de


operaciones relacionadas con la división y
multiplicación.
• Ejemplo: Funciones_matematicas.xlsx
RESIDUO Devuelve el resto de la división.
COCIENTE Devuelve la parte entera de una división.
M.C.D Devuelve el máximo común divisor.

PRODUCTO Multiplica sus argumentos.


M.C.M Devuelve el mínimo común múltiplo.
Devuelve la suma de los productos de los correspondientes
SUMAPRODUCTO
componentes de matriz.

Excel 114
Otras divisiones y multiplicaciones

• Problema: Se requiere realizar otros tipos de de


operaciones relacionadas con la división y
multiplicación.
• Ejemplo: Funciones_matematicas.xlsx
RESIDUO Devuelve el resto de la división.
COCIENTE Devuelve la parte entera de una división.
M.C.D Devuelve el máximo común divisor.

PRODUCTO Multiplica sus argumentos.


M.C.M Devuelve el mínimo común múltiplo.
Devuelve la suma de los productos de los correspondientes
SUMAPRODUCTO
componentes de matriz.

Excel 115
Otras divisiones y multiplicaciones

• Problema: Se requiere realizar otros tipos de de


operaciones relacionadas con la división y
multiplicación.
• Ejemplo: Funciones_matematicas.xlsx
RESIDUO Devuelve el resto de la división.
COCIENTE Devuelve la parte entera de una división.
M.C.D Devuelve el máximo común divisor.

PRODUCTO Multiplica sus argumentos.


M.C.M Devuelve el mínimo común múltiplo.
Devuelve la suma de los productos de los correspondientes
SUMAPRODUCTO
componentes de matriz.

Excel 116
Funciones exponenciales y logaritmicas

• Problema: Se requiere realizar cálculos con


logaritmos.
• Ejemplo: Funciones_matematicas.xlsx
LN Devuelve el logaritmo natural (neperiano) de un número.
LOG Devuelve el logaritmo de un número en una base especificada.
LOG10 Devuelve el logaritmo en base 10 de un número.
EXP Devuelve e elevado a la potencia de un número dado.
POTENCIA Devuelve el resultado de elevar un número a una potencia.
SINH Devuelve el seno hiperbólico de un número.
COSH Devuelve el coseno hiperbólico de un número.
TANH Devuelve la tangente hiperbólica de un número.
ACOSH Devuelve el coseno hiperbólico inverso de un número.
ACOTH Devuelve la cotangente hiperbólica inversa de un número.
ASINH Devuelve el seno hiperbólico inverso de un número.
ATANH Devuelve la tangente hiperbólica inversa de un número.
Excel 117
Funciones trigonométricas

• Problema: Se requiere realizar cálculos con funciones


trigonométricas en grados y radianes.
• Ejemplo: Funciones_matematicas.xlsx
SENO Devuelve el seno de un ángulo determinado. GRADOS Convierte radianes en grados.
COS Devuelve el coseno de un número. RADIANES Convierte grados en radianes.
TAN Devuelve la tangente de un número.
COT Devuelve la cotangente de un ángulo.
CSC Devuelve la cosecante de un ángulo.
SEC Devuelve la secante de un ángulo.
ACOS Devuelve el arco coseno de un número.
ACOT Devuelve la arco cotangente de un número.
ASENO Devuelve el arcoseno de un número.
ATAN Devuelve la arcotangente de un número.
ATAN2 Devuelve la arcotangente de las coordenadas "x" e "y".

Excel 118
Funciones de redondeo y truncamiento

• Problema: Se requiere redondear o truncar los cálculos.


• Ejemplo: Funciones_matematicas.xlsx
MULTIPLO.SUPERIOR Redondea un número al entero más próximo o al múltiplo significativo más cercano.
CEILING.MATH Redondea un número hacia arriba al entero más próximo o al múltiplo significativo más cercano.
Redondea un número hacia el entero o el múltiplo significativo más próximo. El número se redondea hacia
MULTIPLO.SUPERIOR.EXACTO
arriba, independientemente de su signo.
REDONDEA.PAR Redondea un número hasta el entero par más próximo.
MULTIPLO.INFERIOR Redondea un número hacia abajo, en dirección hacia cero.
MULTIPLO.INFERIOR.MAT Redondea un número hacia abajo al entero más próximo o al múltiplo significativo más cercano.
Redondea un número hacia abajo hasta el entero o el múltiplo significativo más cercano. El número se
MULTIPLO.INFERIOR.EXACTO
redondea hacia abajo, independientemente de su signo.
ENTERO. Redondea un número hacia abajo hasta el entero más próximo.
Devuelve un número que se redondea hacia arriba al número entero más próximo o al múltiplo
ISO.CEILING
significativo más cercano.
REDOND.MULT Devuelve un número redondeado al múltiplo deseado.
REDONDEA.IMPAR Redondea un número hacia arriba hasta el entero impar más próximo.
REDOND Redondea un número al número de dígitos especificado.
REDONDEAR.MENOS Redondea un número hacia abajo, en dirección hacia cero.
REDONDEAR.MAS Redondea un número hacia arriba, en dirección contraria a cero.
TRUNCAR Trunca un número a un entero.

Excel 119
Funciones de conversión de sistemas
numéricos
• Problema: Se requiere convertir un número de una base
a otra.
• Ejemplo: Funciones_matematicas.xlsx

DEC.A.BIN Convierte un número decimal en binario.


DEC.A.HEX Convierte un número decimal en hexadecimal.
DEC.A.OCT Convierte un número decimal en octal.
HEX.A.BIN Convierte un número hexadecimal en binario.
HEX.A.DEC Convierte un número hexadecimal en decimal.
HEX.A.OCT Convierte un número hexadecimal en octal.

Excel 120
Funciones de números complejos
COMPLEJO Convierte coeficientes reales e imaginarios en un número complejo.
• Problema: Se requiere realizar IM.ABS Devuelve el valor absoluto (módulo) de un número complejo.
IMAGINARIO Devuelve el coeficiente imaginario de un número complejo.
cálculos con números IM.ANGULO Devuelve el argumento theta, un ángulo expresado en radianes.

complejos.
IM.CONJUGADA Devuelve la conjugada compleja de un número complejo.
IM.COS Devuelve el coseno de un número complejo.
IM.COSH Devuelve el coseno hiperbólico de un número complejo.
• Ejemplo: IMCOT Devuelve la cotangente de un número complejo.

Funciones_matematicas.xlsx IM.CSC
IM.CSCH
Devuelve la cosecante de un número complejo.
Devuelve la cosecante hiperbólica de un número complejo.
IM.DIV Devuelve el cociente de dos números complejos.
IM.EXP Devuelve el valor exponencial de un número complejo.
IM.LN Devuelve el logaritmo natural (neperiano) de un número complejo.
IM.LOG10 Devuelve el logaritmo en base 10 de un número complejo.
IM.LOG2 Devuelve el logaritmo en base 2 de un número complejo.
IM.POT Devuelve un número complejo elevado a una potencia entera.
IM.PRODUCT Devuelve el producto de 2 a 255 números complejos.
IM.REAL Devuelve el coeficiente real de un número complejo.
IM.SEC Devuelve la secante de un número complejo.
IM.SECH Devuelve la secante hiperbólica de un número complejo.
IM.SENO Devuelve el seno de un número complejo.
IM.SENOH Devuelve el seno hiperbólico de un número complejo.
IM.RAIZ2 Devuelve la raíz cuadrada de un número complejo.
IM.SUSTR Devuelve la diferencia entre dos números complejos.
IM.SUM Devuelve la suma de números complejos.
IM.TAN Devuelve la tangente de un número complejo.

Excel 121
Funciones para cálculos con matrices

• Problema: Se requiere realizar operaciones de tipo


matricial.
• Ejemplo: Funciones_matematicas.xlsx
MDETERM Devuelve el determinante matricial de una matriz.
MINVERSA Devuelve la matriz inversa de una matriz.
MMULT Devuelve el producto de matriz de dos matrices.
Devuelve la matriz de la unidad o la dimensión
M.UNIDAD
especificada.
TRANSPONER Devuelve la transposición de una matriz.
• Para introducir estas funciones es necesario teclear
simultáneamente las teclas Ctrl – Mayúsculas - Enter
Excel 122
Análisis estadístico de datos

Excel 123
Análisis estadístico de datos

• Excel dispone de un amplio conjunto de funciones


estadísticas predeterminadas para ser usadas en las
hojas de cálculo.
• El complemento Herramientas para Análisis también
cuenta con varias herramientas estadísticas más, que
permiten visualizar los datos y hacer que Excel sea
adecuado para determinados análisis.
• En la ayuda de Excel hay descripciones y sintaxis para
todas las funciones estadísticas.
• Este apartado muestra el uso de Excel para realizar
cálculos estadísticos estándar, sin entrar en detalle sobre
la teoría del análisis.
Excel 124
Estadística descriptiva

• Problema: Calcular un resumen de estadísticas


(medidas de tendencia general y dispersión) de una
serie de datos.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Una opción es usar las funciones estadísticas de
Excel, tales como: PROMEDIO, MEDIANA, MODA,
MIN, MAX, VAR (Varianza), DESVEST (Desviación
estándard)
• Otra opción es usar los complementos de Análisis de
datos → Estadística descriptiva
Excel 125
Estadística descriptiva

• Ejemplo: Se tiene una serie de datos de muestra de


un control de calidad, calcular la Mediana, Promedio,
Moda, Mínimo, Máximo, Desviación Estándar y
Varianza de la serie.
• Usar funciones estadísticas y la opción de Estadística
descriptiva del Análisis de Datos.

Excel 126
Estadística descriptiva

Excel 127
Estadística descriptiva

Excel 128
Resumen de las funciones estadísticas de
Estadística descriptiva
Estadístico Función Excel
Media =PROMEDIO(Datos)
Error típico =Desviación estándar/RAIZ(Cuenta)
Mediana =MEDIANA(Datos)
Moda =MODA(Datos)
Desviación estándar =DESVEST(Data)
Varianza de la muestra =VAR(Datos)
Curtosis =CURTOSIS(Datos)
Coeficiente de asimetría =COEFICIENTE.ASIMETRIA(Datos)
Rango =Máximo - Mínimo
Mínimo =MIN(Datos)
Máximo =MAX(Datos)
Suma =SUMA(Datos)
Cuenta =CONTAR(Datos)
Mayor (1) =K.ESIMO.MAYOR(Datos,1)
Menor(1) =K.ESIMO.MENOR(Datos,1)
Nivel de confianza(95.0%) =INTERVALO.CONFIANZA(0.05, Desv est.,100)

Excel 129
Distribuciones de frecuencia - Histograma

• Problema: Crear un histograma (gráfico de


frecuencia) de un conjunto de datos.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Una opción es usar la función FRECUENCIA, para
calcular la frecuencia de incidencia de cada punto de
referencia y después graficarla.
• Otra opción es usar los complementos de Análisis de
datos →Histograma.

Excel 130
Histograma – Frecuencia

• Se debe establecer un rango de valores =(max - min)


• Se debe establecer un número de clases (bins).
Criterios: cinco a quince clases o raíz cuadrada del
número de datos.
• Para calcular las frecuencias de cada clase se
selecciona el rango de salida y se aplica la función
matricial (pulsar Control-Mayús-Intro después de
introducir la función) FRECUENCIA poniendo el
rango de los datos y el rango de clases.
• Ejm: ={FRECUENCIA(DATA,RANGE)}
Excel 131
Histograma – Frecuencia

Excel 132
Histograma – Frecuencia

Excel 133
Análisis de datos – Histograma

• Otra opción para obtener el histograma de un


conjunto de datos es utilizar Análisis de datos →
Histograma
• En el rango de entrada se selecciona el rango de
celdas que contienen el DataSet de entrada. En el
campo Rango de Clases se introduce o selecciona el
rango de celdas que contienen los valores de clases.
• En las opciones de salida, se selecciona la ubicación
de salida de los resultados. Se puede seleccionar la
opción de Porcentaje acumulado y Crear gráfico.

Excel 134
Análisis de datos – Histograma

Excel 135
Intervalos de confianza

• Problema: Calcular intervalos de confianza para


ciertas estimaciones.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Excel dispone de las funciones
INTERVALO.CONFIANZA.NORM y
INTERVALO.CONFIANZA.T que permiten calcular el
intervalo de confianza para una media de población
con distribución normal y t-student respectivamente.

Excel 136
Intervalos de confianza

• También se dispone de las funciones


– INV.NORM.ESTAND - devuelve el inverso de la
distribución normal estándar acumulativa
– INV.T.2C - devuelve el inverso de la distribución t de
Student de dos colas.
• Ejemplo:
– para un intervalo de confianza de 95%, la probabilidad a
usar es 1 – 0.05/2 = 0.975. Para calcular el intervalo de
confianza de la media se usa
Error estándar de la media* INV.NORM.ESTAND(0.975)
– Si se usa la distribución t-Student la fórmula a usar es:
Error estándar de la media* INV.T.2C (0.05,GdL)
Excel 137
Correlación de datos

• Problema: Calcular los coeficientes de correlación


entre variables de un problema multivariable.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Excel dispone de las funciones
COEF.DE.CORREL y PEARSON que devuelven el
coeficiente de correlación entre dos rangos de celdas
definidos por los argumentos.
También se tiene en Análisis de datos → Coeficiente
de Correlación
• Otros tipos de coeficientes de correlación
Excel 138
Correlación de datos

• Otros tipos de coeficientes de correlación, como Phi,


rank biserial, point biserial, y Spearman rank hay que
calcularlos.
• Por ejemplo para calcular la correlación de Spearman
se usa la fórmula
6 ∑ 𝑑𝑑2
𝜌𝜌 = 1 −
𝑁𝑁(𝑁𝑁 2 − 1)
Donde d es la diferencia en ranking entre los valores x1 y x2
y N es el número de datos.
• Excel dispone de las funciones JERARQUIA y
CONTAR para calcular la fórmula anterior
Excel 139
Jerarquía y percentiles

• Problema: Se requiere calcular ciertos percentiles de


un conjunto de datos y la jerarquía de ciertos valores
en el conjunto de datos.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Excel dispone de las funciones PERCENTIL y
JERARQUIA para calcular tales estadísticos.
• También se puede usar Análisis de datos →
Jerarquía y percentil

Excel 140
Pruebas estadísticas

• Problema: Se requiere realizar pruebas de hipótesis


sobre conjunto de datos.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Excel dispone de las funciones PRUEBA.Z.N,
PRUEBA.T.N, PRUEBA.F.N y PRUEBA.CHICUAD
para realizar pruebas estándar.
• También se tiene en Análisis de datos varios tests

Excel 141
Analysis de Variance - ANOVA

• Problema: Realizar un análisis de varianza (ANOVA).


• Ejemplo: Analisis_estadistico_datos.xlsx
• En el complemento Análisis de datos se ofrecen tres
clases de ANOVA:

• Para el ejemplo, se realiza un ANOVA para dos o


más grupos por lo que se usa ANOVA de un factor
para probar la hipótesis de que no hay diferencia
entre las medias de esos grupos.
Excel 142
ANOVA
• Se selecciona Análisis de datos → Análisis de
varianza de un factor
• En el rango de entrada se selecciona el rango de los
datos (dataset) que deben estar en columnas
contiguas. Si se incluye los rótulos de la columna,
marcar la opción Rótulos en la primera fila.
• Se deja el parámetro Alfa en 0.05, pero se puede
modificar.
• Se selecciona la opción de salida y Aceptar.
• Para el ejemplo, como P < Alfa proporcionado y F > F
crítico implica que se debería rechazar la hipótesis
nula de que no hay diferencias significativas entre las
medias de los grupos.
Excel 143
ANOVA de un factor

Excel 144
ANOVA de un factor

>

< α = 0.05

Excel 145
Generación de números aleatorios

• Problema: Calcular números aleatorios entre límites


superiores e inferiores específicos.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Usar la función ALEATORIO de Excel, que genera un
número aleatorio entre 0 y 1.
• Se puede crear una serie de números aleatorios
seleccionando las celdas, poniendo la función
ALEATORIO y pulsando Ctrl-Mayús-Enter.
• Si se quiere un número aleatorio que no cambie cada
vez que se calcula la hoja, pulsar F9 después de
introducir la fórmula.
Excel 146
Serie de números aleatorios

• Para calcular un número (serie) aleatorio entre dos


valores específicos utilizar la fórmula
{=ALEATORIO()*(MaxVal-MinVal)+MinVal}
• Se puede redondear lo anterior con REDONDEAR.
• Se puede usar también la fórmula
ALEATORIO.ENTRE
• También se puede usar Análisis de datos →
Generación de números aleatorios

Excel 147
Serie de números aleatorios

Excel 148
Datos de muestra

• Problema: Se require extraer datos de muestra de


una población finita de valores discretos.
• Ejemplo: Analisis_estadistico_datos.xlsx
• Usar Análisis de datos → Muestra que permite
seleccionar el método de muestreo entre Periódico o
Aleatorio.

Excel 149
Distribuciones de probabilidad

DISTR.BETA Devuelve la función de distribución beta acumulativa.


DISTR.BINOM.N Devuelve la probabilidad de una variable aleatoria discreta siguiendo una distribución binomial.
DISTR.BINOM.SERIE Devuelve la probabilidad de un resultado de prueba siguiendo una distribución binomial.
DISTR.CHICUAD Devuelve la función de densidad de probabilidad beta acumulativa.
DISTR.CHICUAD.CD Devuelve la probabilidad de una cola de distribución chi cuadrado.
DISTR.EXP.N Devuelve la distribución exponencial.
DISTR.F.RT Devuelve la distribución de probabilidad F.
DISTR.F.CD Devuelve la distribución de probabilidad F.

DISTR.GAMMA Devuelve la distribución gamma.


DISTR.HIPERGEOM.N Devuelve la distribución hipergeométrica.
DISTR.LOGNORM Devuelve la distribución logarítmico-normal acumulativa.

DISTR.NORM.N Devuelve la distribución normal acumulativa.

DISTR.NORM.ESTAND.N Devuelve la distribución normal estándar acumulativa.


POISSON.DIST Devuelve la distribución de Poisson.
DISTR.T.CD Devuelve la distribución de t de Student.

DISTR.WEIBULL Devuelve la distribución de Weibull.

Excel 150
Distribuciones discretas - Binomial

• Problema: En un proceso de fabricación de tornillos


se sabe que el 2% son defectuosos. Se empaquetan
en cajas de 50 tornillos. Calcular la probabilidad de
que en una caja no haya ningún tornillo defectuoso.
• Ejemplo: Distrib_prob.xlsx
• Número de éxitos de los ensayos: 0
• Número de ensayos independientes: 50.
• Probabilidad de éxito de cada ensayo: 0,2.
• Como se pide una función de probabilidad o de cuantía, se define el
valor Acumulado como FALSO.
• La probabilidad obtenida es: 1,42725E‐05

Excel 151
Distribuciones discretas - Poisson

• Problema: El número medio de defectos en un rollo


de tela es de 0,4. Se inspecciona una muestra de 10
rollos, ¿cuál es la probabilidad de que el número total
de defectos en los 10 rollos sea por lo menos de 9?.
• Ejemplo: Distrib_prob.xlsx
• Se define X = Número de defectos por rollo, con una distribución de
Ps (λ=0,4).
• Se pide obtener la P(X ≥ 9), lo que equivale a estimar, 1‐ P(X≤8).
P(X ≥ 9) = 1‐ P(X≤8)
• Piden una función de probabilidad de distribución (probabilidad
acumulada), se define el valor Acumulado como VERDADERO.
• P(X ≥ 9) = 1‐ P(X≤8) = 1 – 1 = 0
Excel 152
Distribuciones continuas - Normal

• Problema: Calcular la probabilidad de que un


estudiante tenga una altura superior a 175, sabiendo
que responde a N(170, 20)
• Ejemplo: Distrib_prob.xlsx

– Resultado: probabilidad de que un estudiante tenga una


altura superior a 175, es del 59,87%.
Excel 153
Distribuciones continuas – Normal
estándar N(0,1)
• La función DISTR.NORMAL.ESTANDAR permite
calcular la probabilidad que, en una distribución
normal de media cero y desviación típica uno, se
encuentra por debajo del valor “a”, (P(Z ≤ a) =?)
• Proporciona las mismas probabilidades que la tabla
estándar de áreas de curvas normales.
• Problema: Calcular la probabilidad de que una
variable N(0,1)tome un valor superior a 2.
• Ejemplo: Distrib_prob.xlsx

Excel 154
Distribuciones continuas – Normalización

• Problema: Calcular la probabilidad de que un


estudiante tenga una altura superior a 175, sabiendo
que responde a N(170, 20)
• Ejemplo: Distrib_prob.xlsx
– Resultado 0.25 que indica:

Excel 155
Aproximación

Excel 156
Ajuste de ecuaciones a datos
• Es muy común en ingeniería intentar hallar la
ecuación (curva) que mejor aproxime un conjunto de
datos.
• Datos: pares de puntos P1=(x1,y1)… Pn=(xn,yn) o
tuplas de variables independientes y dependientes.
• Se trata de pasar una curva a través del conjunto de
datos. Cuando los resultados se usan para hacer
nuevas predicciones de variables dependientes, se
conoce como regresión.
• Se usa el método de mínimos cuadrados: se
fundamenta en la minimización del error ei = yi – f(xi)
obtenido para cada punto.
• Ejemplos: Ajuste_curvas.xlsx
Excel 157
Ajuste lineal por MMC a datos1

• Si la función de ajuste es una línea recta y = mx + b


entonces el MMC permite deducir los coeficientes a y
b a partir de la resolución de las siguientes
ecuaciones:
n n n n n
m∑ xi + bn = ∑ yi m∑ x + b∑ x = ∑ x y 2
i i i i
i =1 i =1 i =1 i =1 i =1

• Bondad de ajuste (coef. Correlación):


SSE positiva 1 o negativa -1
r = 1−
2

SST
n n
SSE = ∑ [ yi − f ( xi )]2 SST = ∑ [ yi − y ]2
i =1 i =1

Excel 158
Ajuste lineal por MMC a datos1

Ajuste mediante MMC de una serie

2.0

1.5

1.0

0.5
Y
0.0
estimado
-3.0 -2.0 -1.0 0.0 1.0 2.0 3.0
-0.5

-1.0

-1.5

-2.0

Excel 159
Ajuste lineal por MMC a datos2
• Otro método rápido de obtener un ajuste lineal (y de otro tipo)
a un conjunto tabulado en columnas de datos x (variable
independiente) e y (variable dependiente) es:
• Graficar los datos como tipo de gráfico X-Y (dispersión) como
puntos.
• Pulsar en uno de los puntos dato para seleccionar como
objeto activo el conjunto de datos y pulsar el botón derecho
del ratón para obtener el menú Gráfico.
• Seleccionar Añadir Línea de Tendencia en el menú Gráfico.
Especificar el tipo de curva (Lineal) y llenar las opciones
correspondientes. Conviene seleccionar en Opciones
Presentar ecuación en el gráfico y el valor R (coeficiente de
correlación). Es posible realizar extrapolación.
Excel 160
Ajuste lineal por MMC a datos2

Excel 161
Ajuste lineal por MMC a datos2

Fuerza ejercida por un resorte y = 0.5147x + 1.2794


2
R = 0.9577
12

10

8
Fuerza, N

0
0 2 4 6 8 10 12 14 16 18
Desplazamiento desde la posición de equilibrio, cm

Excel 162
Ajuste lineal por MMC a datos2

Par vs. Desviación (grados) y = 0.8087x + 0.0074


R2 = 0.9985
2.0

1.5

1.0

0.5
Desviación (grados)

0.0
Lineal (Desviación
-3.0 -2.0 -1.0 0.0 1.0 2.0 3.0 (grados))
-0.5

-1.0

-1.5

-2.0

Excel 163
Ajuste lineal de datos3
• Otro método rápido de obtener un ajuste lineal es utilizar la
función ESTIMACION.LINEAL a un conjunto tabulado en
columnas de datos x (variable independiente) e y (variables
dependientes).
• La sintaxis de la función corresponde a una fórmula matriz
(hay que pulsar Ctrl-Mayus-Entrar) cuando se introduce la
fórmula. Ejemplo:
{=ESTIMACION.LINEAL(C5:C13, A5:A13, VERDADERO, VERDADERO)}
Y X Para que calcule la
intersección y las
estadísticas ampliadas

Excel 164
Ajuste lineal de datos3

Excel 165
Ajuste multilineal de datos4
• Para hacer un ajuste lineal múltiple del tipo
y = m1x1 + m2x2 + m3x3 + … mnxn + b
también se puede utilizar la función ESTIMACION.LINEAL a
un conjunto tabulado en columnas de datos x (variables
independientes) e y (variables dependientes).
• Es necesario seleccionar una cuadrícula de celdas de
tamaño n+1 columnas, donde n es el número de variables
independientes (x) y 5 filas.
• La sintaxis de la función es de tipo matriz (hay que pulsar
Ctrl-Mayus-Entrar) cuando se introduce la fórmula. Ejemplo:
{=ESTIMACION.LINEAL(B12:B27,C12:H27,VERDADERO,VERDADERO)}

Excel 166
Ajuste multilineal de datos4

72000

70000

68000

66000

64000 y
62000 y-est

60000

58000

56000

54000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Excel 167
Regresión

• Un método adicional para obtener un análisis completo (lista


de residuos) de regresión es usando la opción de Regresión
en Análisis de datos. Se procede de manera similar que para
la obtención de histogramas.
• Ejemplo

Excel 168
Regresión

Excel 169
Otros tipos de ajuste
• Exponencial
• Potencial
• Polinómico: es necesario dar el orden del polinomio
– Ejemplos

Excel 170
Selección de la mejor curva de
ajuste a un conjunto de datos
• Método de prueba y error. Primero se grafican los datos como una
línea recta.
• Si no se obtiene un buen ajuste, intentar diferentes tipos de
curvas, usando evaluación visual ayudado por los resultados de la
suma de cuadrados de los errores y el coeficiente de correlación
(r2).
• Si no se obtienen resultados satisfactorios, intentar graficar los
datos de otra manera (y – 1/x, 1/y-x, etc.)
• En algunos casos se consiguen mejores ajustes escalando los
datos (datos de x e y del mismo orden de magnitud).
• Cambio de escala (se obtiene una recta) para el paso 2:
– Exponencial y = a ebx log y vs. x (semi-log)
– Logarítmico y = a ln x + b y vs. log x (semi-log)
– Potencial y = a xb log y vs. log x (log – log)
Excel 171
Ajuste exponencial de datos

Tasa de descarga de un condensador y = 10e-0.5x Tasa de descarga de un condensador y = 10e-0.5x


R2 = 1 R2 = 1
12 10

10

8
1
Voltios

0 2 4 6 8 10 12

Voltios
6

4
0
2

0
0 2 4 6 8 10 12 0
Tiempo, segundos Tiempo, segundos

Excel 172
Ajuste logarítmico de datos

Temperatura vs. y = 2.9941Ln(x) + 28.036 Temperatura vs. y = 2.9941Ln(x) + 28.036


R2 = 1 profundidad en un reactor R2 = 1
profundidad en un reactor

55 55

50 50

Temperatura ºC
Temperatura ºC

45 45

40 40

35 35

30 30

25 25

20 20
0 500 1000 1500 2000 2500 0.1 1 10 100 1000 10000
Distancia cm. Distancia cm.

Excel 173
Ajuste potencial de datos

Tasa Reacción vs Concentración y = 0.0018x1.599 Tasa Reacción vs Concentración y = 0.0018x1.599


R2 = 1 R2 = 1
3.5 10.0
3.0

2.5 1.0
TR, moles/sec

TR, moles/sec
1 10 100
2.0

1.5 0.1

1.0
0.0
0.5

0.0
0 20 40 60 80 100 0.0

C, moles/cu ft C, moles/cu ft

Excel 174
Ajuste polinomial de datos
Tiempo de aceleración vs Veloc.Max.
y = 1E-08x - 5E-06x4 + 0.0008x3 - 0.0525x2 + 1.777x - 20.958
5

2
R = 0.9998
50
45
40
35
Tiempo, seg

30
25
20
15
10
5
0
0 20 40 60 80 100 120 140 160
Velocidad máx. Km/h

Excel 175
Análisis de series de tiempo

Excel 176
Análisis de series de tiempo

• El análisis de series de tiempo es un campo de


estudio amplio con aplicaciones en ingeniería,
economía, ciencias sociales, etc.
• Excel dispone de funciones y herramientas para
realizar tales análisis, así como facilidades de
visualización de resultados y realizar predicciones.
• Ejemplos: Ajuste_curvas.xlsx

Excel 177
Análisis de series de tiempo -
Visualización
• Problema: Graficar un grupo de datos de series de
tiempo para análisis posteriores.
• Se utiliza el asistente para gráficos.

Excel 178
Análisis de series de tiempo -
Visualización
Temperatura anual (Los Angeles)

69.0
68.5
68.0
67.5
Temperatura ºF

67.0
66.5
66.0
65.5
65.0
64.5
64.0
1920 1930 1940 1950 1960 1970 1980 1990 2000 2010
Año

Excel 179
Análisis de series de tiempo - tendencia

• Problema: Agregar una línea de tendencia a una


serie de tiempo.
• Se puede utilizar la opción de Agregar línea de
tendencia cuando se crea un gráfico.

Excel 180
Análisis de series de tiempo - tendencia

Temperatura anual (Los Angeles) y = -0.0105x + 87.231


R2 = 0.0498
69.0
68.5
68.0
67.5
Temperatura ºF

67.0
66.5
66.0
65.5
65.0
64.5
64.0
1920 1930 1940 1950 1960 1970 1980 1990 2000 2010
Año

Excel 181
Análisis de series de tiempo - tendencia

Temperatura anual (Los Angeles) y = 0.0011x 2 - 4.2275x + 4231


R2 = 0.219
69.0
68.5
68.0
67.5
Temperatura ºF

67.0
66.5
66.0
65.5
65.0
64.5
64.0
1920 1930 1940 1950 1960 1970 1980 1990 2000 2010
Año

Excel 182
Análisis de series de tiempo –
medias móviles
• Problema: Suavizar una serie de tiempo mediante
medias móviles.
• Se puede calcular medias móviles de varias formas:
– usando la función de gráficos Media móvil de la
línea de tendencia
– usando la función Media móvil de las
Datos→Análisis de datos.

Excel 183
Análisis de series de tiempo –
medias móviles línea de tendencia
• Para la Línea de tendencia, se selecciona la serie de
datos y haciendo clic con el botón derecho del ratón
se selecciona Agregar línea de tendencia.
• Se selecciona Media móvil y el período deseado (3).
En opciones se puede escribir un nombre para esta
nueva línea de tendencia.
• Es sencillo pero no genera datos numéricos.

Excel 184
Análisis de series de tiempo –
medias móviles
Temperatura anual (Los Angeles)

69.0
68.5
68.0
67.5
Temperatura ºF

67.0
66.5
66.0
65.5
65.0
64.5
64.0
1920 1930 1940 1950 1960 1970 1980 1990 2000 2010
Año

Temperatura anual media Media móvil de 3 años

Excel 185
Análisis de series de tiempo –
medias móviles Análisis de datos
• En Herramientas→Análisis de datos hay una opción
que es Media móvil.
• La ventaja es que genera datos numéricos para la
serie de media móvil.
• En la ventana de diálogo se selecciona el rango de
las celdas que contiene la serie de datos.
• Se introduce el intervalo (3) sobre el que se desea
calcular las medias.
• Introducir la celda donde se desea colocar los
resultados.
Excel 186
Análisis de series de tiempo –
medias móviles Análisis de datos

Media móvil

70.0
69.0
68.0
67.0
Valor

Real
66.0
65.0 Pronóstico
64.0
63.0
62.0
1 6 11 16 21 26 31 36 41 46 51 56 61 66
Punto de datos

Excel 187
Análisis de series de tiempo –
índices estacionales
• Problema: calcular los índices estacionales de una
serie de tiempo que muestra variaciones estacionales.
• Hay varios métodos para calcular el índice estacional
de una serie. Aquí se muestra el método promedio-
porcentaje.
• Primero se calcula el promedio de la variable cada año.
• Despúes se calcula el porcentaje de cada mes
respecto al promedio anual.
• Finalmente se calcula el promedio de los porcentajes
de cada mes para todos los años. Para comprobar el
promedio de los índices debe ser 1.

Excel 188
Análisis de series de tiempo –
índices estacionales
1996 1997 1998 1999
Ene 49.1 49.2 53.5 54.0
Feb 53.0 53.9 53.6 57.9
Mar 54.7 63.8 58.1 58.6
Abr 64.5 62.2 64.7 70.9
May 76.7 72.4 77.0 73.7
Jun 79.1 78.7 83.5 79.9
Jul 82.2 83.1 85.5 82.2
Ago 80.2 81.3 83.8 85.0
Sep 75.8 78.4 80.5 75.8
Oct 66.9 67.1 70.0 66.7 Indices Estacionales
Nov 58.9 55.1 61.5 59.7
Dic 54.2 49.2 53.5 51.0
Average: 66.3 66.2 68.8 68.0
Indice Estacional
1996 1997 1998 1999 Indice
Ene 0.74 0.74 0.78 0.79 0.76
Feb 0.80 0.81 0.78 0.85 0.81
Mar 0.83 0.96 0.84 0.86 0.87
Abr 0.97 0.94 0.94 1.04 0.97
May 1.16 1.09 1.12 1.08 1.11
Jun 1.19 1.19 1.21 1.18 1.19
Jul 1.24 1.26 1.24 1.21 1.24
Ago 1.21 1.23 1.22 1.25 1.23
Sep 1.14 1.18 1.17 1.12 1.15
Oct 1.01 1.01 1.02 0.98 1.01
Nov 0.89 0.83 0.89 0.88 0.87
Dic 0.82 0.74 0.78 0.75 0.77
Sum: 12.00
Average: 1.00

Excel 189
Análisis de series de tiempo –
Transformada discreta de Fourier
• Problema: usar la transformada discreta de Fourier para
analizar un conjunto de datos.
• En Herramientas→Análisis de datos hay una opción que
es Análisis de Fourier que permite realizar
transformaciones discretas de Fourier (DFT) y
transformaciones inversas.
• El tamaño de la serie debe ser potencia de 2 con un
tamaño máximo de 2^12 = 4096.
• Cálculo de la frecuencia f i = i (ns ) en Hz donde i es el
número de la muestra, n el número de muestras y s el
intervalo de muestra.
Excel 190
Análisis de series de tiempo –
Transformada discreta de Fourier
• Cálculo de la frecuencia f i = i n en ciclos por muestra
donde i es el número de la muestra, n el número de
muestras y s el intervalo de muestra.
• La DFT se obtiene seleccionando el rango de las celdas
que contienen la serie.
• Los resultados de la DFT son números complejos que se
escriben como texto. Para manipularlos Excel dispone de
funciones para ellos.
• Cálculo de la potencia en cada banda de frecuencia
hasta la frecuencia de Nyquist (0.5 ciclos/muestra).
IM.ABS(DFT)^2/n^2
Excel 191
Análisis de series de tiempo –
Transformada discreta de Fourier
• Se puede filtrar los datos en el campo de la frecuencia
para aislar un determinado componente.
• Se construye un filtro adecuado.
EXP(-((ABS(frec cs) – fo)/sig)^2))
• Se aplica el filtro a la DFT multiplicándolo (usar funciones
de números complejos).
• Se calcula DFT inversa y se obtiene la serie numérica
utilizando funciones de números complejos.
IM.REAL(InversaDFT)

Excel 192
Análisis de series de tiempo –
Transformada discreta de Fourier

1.5

0.5

0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-0.5

-1

-1.5

-2

Y(t) Filtrada

Excel 193
Resolviendo ecuaciones

Excel 194
Resolviendo ecuaciones

• En ingeniería es frecuente la tarea de resolver


ecuaciones algebraicas complicadas o sistemas de
ecuaciones no lineales.
• Hay métodos manuales y computarizados para
resolver tal problema, como son el método de Newton
y la eliminación gaussiana.
• Excel dispone de funciones y herramientas para
ayudar a cumplir esa tarea.
• Ejemplos: Resolviendo_ecuaciones.xls

Excel 195
Resolviendo ecuaciones

• La raíz de una ecuación algebraica es el valor de la variable


independiente que satisface la ecuación.
• Las ecuaciones pueden ser lineales o no lineales.
• Las ecuaciones no lineales se pueden resolver de forma gráfica o
numérica y pueden tener múltiples raíces reales o complejas.
• Las ecuaciones polinómicas son un caso especial de ecuaciones
no lineales muy frecuentes en ingeniería con las siguientes
características:
– Un polinomio de grado n no puede tener más de n raíces reales.
– Si el grado de un polinomio es impar, siempre tendrá al menos una
raíz real.
– Las raíces complejas siempre existen en pares de conjugadas
complejas.
Excel 196
Resolviendo ecuaciones –
método gráfico
• El procedimiento es escribir la ecuación en la forma
f(x) = 0 y graficas f(x) vs. x.
• El punto donde f(x) cruza el eje x (valor de x que
causa que f(x) sea 0) son las raíces reales de la
ecuación.
• La solución se puede leer directamente del gráfico o
interpolar entre los valores tabulados para hallar el
punto donde f(x) = 0.

Excel 197
Resolviendo ecuaciones –
método gráfico
x f(x)
0 -5.00 Raíz real de un polinomio
f ( x) = 2 x 5 − 3 x 2 − 5 = 0
0.1 -5.03
0.2 -5.12
10.00
0.3 -5.27
0.4 -5.46 8.00
0.5 -5.69
0.6 -5.92 6.00
0.7 -6.13 4.00
0.8 -6.26
0.9 -6.25 2.00
f(x)

1 -6.00
1.1 -5.41 0.00
1.2 -4.34 1.00 1.10 1.20 1.30 1.40 1.50 1.60
-2.00
1.3 -2.64
1.4 -0.12 -4.00
1.5 3.44
-6.00
1.6 8.29
1.7 14.73 -8.00
1.8 23.07
X
1.9 33.69
2 47.00

Excel 198
Resolviendo ecuaciones –
método gráfico
a= 1
Raíces de un polinomio cúbico b= 3
f ( x) = dx 3 + cx 2 + bx + a = 0 c=
d=
-7
3
2

0
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
-2

-4
Y

-6

-8

-10

-12
X

Excel 199
Resolviendo ecuaciones –
usando Buscar objetivo
• Se puede obtener una solución rápida de ecuaciones
algebraicas simples usando la opción Buscar Objetivo en
el menú Datos → Análisis de hipótesis.
• Para ello se sigue:
– Escribir un valor inicial de x en una celda.
– Escribir la fórmula de la ecuación en la forma f(x)=0 en otra
celda. Escribir la variable x como referencia a la celda que
contiene el valor inicial.
– Seleccionar Buscar Objetivo en el menú Datos →
Análisis de hipótesis.
– En el diálogo escribir la dirección de la celda que contiene la
fórmula, el valor 0 en Valor y la dirección de la celda que
contiene el valor inicial. Pulsar Aceptar.
Excel 200
Resolviendo ecuaciones –
usando Buscar objetivo
• Ejemplo: f(x) = 2*x5 – 3* x2 – 5 = 0

x= 1.40411692

Excel 201
Resolviendo ecuaciones –
usando Solver
• Solver se usa para resolver problemas de más complejidad y
se puede configurar el método y visualización de solución.
• Instalar Solver desde Archivo → Opciones →
Complementos.
• Para ello se sigue:
– Escribir un valor inicial de la variable en una celda.
– Escribir la fórmula de la ecuación en formato f(x)=0 en otra celda.
indicando la variable x como referencia a la celda con el valor inicial.
– Seleccionar Solver en el menú Datos. En la ventana Solver indicar
en Establecer objetivo la dirección de la celda que contiene la fórmula,
el valor 0 en Valor de y la dirección de la celda(s) que contiene el valor
inicial en Cambiando las celdas de variables.
– Con Agregar se puede restringir el rango de x. Asegurarse que el
método de resolución es GRG Nonlinear.
– Pulsar Resolver. Se puede configurar con Opciones.
Excel 202
Resolviendo ecuaciones –
usando Buscar objetivo
• Ejemplo: f(x) = 2*x5 – 3* x2 – 5 = 0

x= 1.40408619

Excel 203
Resolviendo sistemas de ecuaciones

• Las ecuaciones algebraicas simultáneas se


presentan habitualmente en problemas de ingeniería.
• Los sistemas de ecuaciones pueden ser lineales o no
lineales.
• Las técnicas para resolver sistemas de ecuaciones
lineales son diferentes que las usadas para las no
lineales.
• Para sistemas lineales se usa la notación matricial:
[A][x] = [b] donde [A] es una matriz nxn y x y b son
vectores de n elementos.

Excel 204
Operaciones matriciales en Excel

• En Excel las matrices se representan como arrays.


Un array es un bloque de celdas que se referencian
colectivamente.
• Cualquier operación que se realiza sobre un array
producirá lo mismo para todas las celdas dentro del
array. Un array se puede especificar como un
argumento simple de una función.
• Un array se especifica como un bloque de celdas
encerradas entre llaves ({}). Las llaves son añadidas
automáticamente por Excel y NO deben escribirse.
Excel 205
Operaciones matriciales en Excel

• Para especificar una operación con array:


– Seleccionar el bloque que forma el array. Mover el cursor
hasta la celda superior izquierda dentro del bloque.
– Escribir una fórmula con el array. Se puede incluir rangos
de celdas dentro de la celda.
– Pulsar Ctrl-Mayús-Enter para que la fórmula
aparezca entre llaves.
• Operaciones habituales con matrices:
– Suma, Resta, Transpuesta (TRANSPONER)
– Multiplicación matricial (MMULT)
– Determinante, Inversa (MDETER, MINVERSA)
Excel 206
Operaciones matriciales en Excel

[M] = 1 4 3
5 2 6
2 3 -4
[A] = 3 -1 -2 7 12
4 -7 -6 [N] = 11 8
9 10
Det[A] = 82
[M][N] = 78 74
-0.09756098 0.56097561 -0.12195122
111 136
Inverse [A] = 0.12195122 0.04878049 -0.09756098
-0.20731707 0.31707317 -0.13414634
1.90243902 3.56097561 -4.12195122
A + Trans[A] = 3.12195122 -0.95121951 -2.09756098
2 3 4
3.79268293 -6.68292683 -6.13414634
Transpose [A] = 3 -1 -7
-4 -2 -6 0 0 -8
A - Trans[A] = 0 0 5
8 -5 0

Excel 207
Operaciones matriciales en Excel

• Problema: calcular la inversa de una matriz compleja.


• Sea una matriz compleja X + jY cuya inversa es
U + jV. Por definición de la inversa y el producto de
una matriz y su inversa: XU − YV = I y YU + XV = 0
de donde se obtiene: V = (− Y-1 X− X-1 Y) -1 X-1
U = − Y-1 XV

Excel 208
Operaciones matriciales en Excel

Inversa de una Matriz Compleja


X Real Imgy Y
2 0.6 0.4 0.5
0.6 3 0.15 0.2

X INV Y INV YINV * X X INV * Y


0.53191489 -0.10638298 40 -100 20 -276 0.19680851 0.24468085
-0.10638298 0.35460993 -30 80 -12 222 0.0106383 0.0177305

(Y INV * X + X INV * Y) (Y INV * X + X INV * Y) -1 V = -(Y INV * X + X INV * Y) -1 * X INV


20.1968085 -275.755319 0.18848297 0.23410374 0.07535224 0.06296413
-11.9893617 222.01773 0.01017842 0.01714617 0.00358999 0.00499739
U = - YINV * X * V
-0.51620653 0.11999762 -0.07535224 -0.06296413
0.10724825 -0.35385149 -0.00358999 -0.00499739
Comprobación
0.51620653 -0.11999762
-0.10724825 0.35385149 X*U Y*V X*U - Y*V
-0.96806411 0.02768435 0.03193589 0.02768435 1 -3.6776E-16
0.01202084 -0.9895559 0.01202084 0.0104441 -5.2389E-16 1

Y*U X*V Y*U+X*V


-0.15285849 -0.1289267 0.15285849 0.1289267 0 0
-0.05598133 -0.05277066 0.05598133 0.05277066 0 0

Excel 209
Solución de sistemas de ecuaciones
lineales mediante matrices
• Un método para resolver un sistema de ecuaciones
lineales simultáneas [A][x] = [b] es mediante métodos
matriciales [x] = [A]-1 [ b]
• Para resolver en Excel:
– Escribir los elementos de la matriz A.
– Escribir los elementos del vector b.
– Seleccionar las celdas para la inversa A-1. Escribir la fórmula
en la celda superior izquierda =MINVERSA() y seleccionar
las celdas de A. Pulsar Ctrl-Mayus-Enter simultáneamente.
– Seleccionar las celdas donde se desea aparezca el vector x.
Escribir la fórmula en la celda superior =MMULT() y
seleccionar las celdas de A-1 y B . Pulsar Ctrl-Mayus-Enter
simultáneamente.
Excel 210
Solución de sistemas de ecuaciones
lineales mediante matrices
Solución de Ecuaciones Simultáneas mediante inversión matricial
[A][x] = [b]

9.375 3.042 -2.437


[A] = 3.042 6.183 1.216
-2.437 1.216 8.443

9.233
[b] = 8.205
3.934

0.148 -0.084 0.055


Inv[A] = -0.084 0.214 -0.055
0.055 -0.055 0.142

0.896
[x] = Inv[A] [b] = 0.765
0.614

Comprob. [A][x] = [b]


9.2333
8.2049
3.9339

Excel 211
Solución de sistemas de ecuaciones
usando Solver1
• Solver ofrece un enfoque diferente para resolver
sistemas ecuaciones simultáneas lineales o no lineales.
• Suponiendo que se tiene un sistema de n ecuaciones y n
incógnitas representados mediante las ecuaciones:
f1 ( x1 , x2 , , xn ) = 0
f 2 ( x1 , x2 , , xn ) = 0

f n ( x1 , x2 ,  , xn ) = 0
• Se desea hallar los valores de x1, x2 …, xn que produce
que cada ecuación sea cero. Una forma para hacer esto
es forzar a que la función (varianza residual):
y =f12 + f22 + …+ fn2 sea cero.
Excel 212
Solución de sistemas de ecuaciones
usando Solver2
• Procedimiento:
– Escribir un valor inicial para cada variable independiente x1, x2 …, xn
en celdas diferentes
– Escribir las ecuaciones f1 , f2 , …, fn e y en celdas diferentes
expresadas como fórmulas dependientes de las celdas donde están
las variables x1, x2 …, xn
– Seleccionar Solver de la Barra de herramientas. Dar la dirección de
la celda que contiene la fórmula de y para Celda Objetivo.
Seleccionar Valores de 0. En Cambiando las celdas dar el rango de
las celdas que contienen los valores iniciales de las variables x1, x2
…, xn.
– Se puede restringir opcionalmente el rango de los valores de las
variables independientes pulsando Agregar.
– Se puede seleccionar la opción de generar Resultados en otra hoja.
Excel 213
Solución de sistemas de ecuaciones
usando Solver3
• Ejemplo 1 (lineal):
3 x1 + 2 x2 – 2 x3 = 4
2 x1 – x2 + x3 = 3
x1 + x2 – 2 x3 = – 3

f = 3 x1 + 2 x2 – 2 x3 – 4 = 0
g = 2 x1 – x2 + x3 – 3 = 0
h = x1 + x2 – 2 x3 + 3 = 0

y = f2 + g2 + h2

Excel 214
Solución de sistemas de ecuaciones
usando Solver3
• Ejemplo 1 (lineal): x1 = 1,428567883

3 x1 + 2 x2 – 2 x3 = 4
x2 = 4,142852593
x3 = 4,28570703
2 x1 – x2 + x3 = 3
x1 + x2 – 2 x3 = – 3 f(x1,x2,x3) = -5,2244E-06
g(x1,x2,x3) = -9,797E-06
h(x1,x2,x3) = 6,41664E-06

f = 3 x1 + 2 x2 – 2 x3 – 4 = 0 y = 1,64449E-10
g = 2 x1 – x2 + x3 – 3 = 0
h = x1 + x2 – 2 x3 + 3 = 0

y = f2 + g2 + h2

Excel 215
Solución de sistemas de ecuaciones
usando Solver4
• Ejemplo 2 (no lineal):
x12 + 2 x22 – 5 x1 + 7 x2 = 40
3 x12 – x22 + 4 x1 + 2 x2 = 28

f (x1, x2) = x12 + 2 x22 – 5 x1 + 7 x2 – 40 = 0


g (x1, x2) = 3 x12 – x22 + 4 x1 + 2 x2 – 28 = 0
Ecuaciones No Lineales Simultáneas
y (x1, x2) = +
f2 g2
x1 = 2,696285
x2 = 3,365504

f(x1, x2) = 0,000294


f(x1, x2) = -0,00062

y= 4,66E-07

Excel 216
Solución de sistemas de ecuaciones
usando Solver4
• Ejemplo 3 (no lineal):
0.5

y = 1 − e− x 9y^2+4x^2=1
0.4
y=1-e^(-x)

9 y + 4x = 1
2 2 0.3

0.2

0.1

0
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5
-0.1

x 0.30671241 x -0.25279654 -0.2


y 0.26329549 y -0.28767525
-0.3
f(x) = 0 -0.00084231 f(x) = 0 -5.3977E-05
g(x) = 0 0.00021064 g(x) = 0 0.00043784 -0.4

7.5386E-07 1.9462E-07
-0.5

Excel 217
Evaluación de Integrales

Excel 218
Evaluación de Integrales

• Muchos problemas de ingeniería requieren la evaluación de


integrales. Para ello se usan métodos analíticos y numéricos.
• Suponiendo que se da una función continua y=f(x) definida
en el intervalo a ≤ x ≤ b, entonces la integral
b b
I = ∫ f ( x) dx = ∫ y dx
a a

se interpreta como el área bajo la curva.


• La integración numérica trata de aproximar el resultado de
una integral aplicando las fórmulas de integración Newton-
Cotes, cuadratura gaussiana o Monte Carlo.
• Ejemplo: Integrales1.xls
Excel 219
Evaluación de Integrales –
método trapezoidal
• Regla trapezoidal (datos espaciados uniformes):
– Datos: n pares de puntos equiespaciados (x1,y1), (x2,y2),… (xn,yn)
donde x1 = a y x2 = b
– Los puntos definen n-2 intervalos rectangulares con un ancho igual
a ∆x
y +y
– La altura de cada intervalo se expresa como: yi = i i +1
2
– Por tanto la integral se aproxima como:
 ( y1 + yn ) n −1 
b
I = ∫ y dx =  + ∑ yi  ∆x
a  2 i =2 

Excel 220
Evaluación de Integrales –
método trapezoidal
• Ejemplo:
– La presión media de una gas cuando la temperatura del gas varía
en el tiempo se calcula por:
100

∫ (300 + 12t )dt − 3.592


−4
P = 8.571x10
0

Para hallar la integral, se obtiene 21 puntos igualmente espaciados


y se aplica la trapezoidal, de donde se obtiene que la presión es:
P = (8.571x10 −4 )(9 x10 4 ) − 3.592 = 73.547

Excel 221
Evaluación de Integrales –
método trapezoidal
Integración numérica usando la regla trapezoidal con datos espaciados uniformemente

tiempo Temperatura
0 300
5 360 360
10 420 420
15 480 480
20 540 540
25 600 600
30 660 660
35 720 720
40 780 780
45 840 840
50 900 900
55 960 960
60 1020 1020
65 1080 1080
70 1140 1140
75 1200 1200
80 1260 1260
85 1320 1320
90 1380 1380
95 1440 1440
100 1500
Suma = 17100 Integral = 90000 Presión = 73.547

Excel 222
Evaluación de Integrales –
método trapezoidal
• Regla trapezoidal (datos espaciados no uniformes):
– Datos: n pares de puntos (x1,y1), (x2,y2),… (xn,yn) donde x1 = a y x2
=b
– Estos puntos definen n-1 intervalos rectangulares con un ancho
para el i-ésimo intervalo ∆xi = xi+1 – xi
y +y
– La altura de cada intervalo se expresa como: yi = i i +1
2
– Por tanto la integral se aproxima como:
1 n −1
b
I = ∫ y dx = ∑ ( yi +1 + yi )( xi +1 − xi )
a
2 i =1

Excel 223
Evaluación de Integrales –
método trapezoidal
• Ejemplo:
– La corriente por una inductancia se puede obtener con la fórmula
t
1
i = ∫ vdt
L0
donde: i = corriente (amperios), L = inductancia (henrios),
v = voltaje (voltios) y t=tiempo (seg).
Se induce una corriente de 2.15 amperios por un periodo de 500 milisegundos. La
variación del voltaje con el tiempo en este periodo se muestra en la siguiente
tabla:
t (msec) v (volts) t v t v t v
0 0 40 45 90 45 180 27
5 12 50 49 100 42 230 21
10 19 60 50 120 36 280 16
20 30 70 49 140 33 380 9
30 38 80 47 160 30 500 4

Hallar la inductancia evaluando la integral por medio de la regla trapezoidal

Excel 224
Evaluación de Integrales –
método trapezoidal
Integración numérica usando la regla trapezoidal con datos espaciados no uniformes

t (mseg) v (volts) deltat (seg) vbar area


0 0 0.005 6 0.03
5 12 0.005 15.5 0.0775 Voltaje vs. Tiempo
10 19 0.01 24.5 0.245 60
20 30 0.01 34 0.34
30 38 0.01 41.5 0.415 50
40 45 0.01 47 0.47
50 49 0.01 49.5 0.495
40
60 50 0.01 49.5 0.495
70 49 0.01 48 0.48 s
io
tl 30
80 47 0.01 46 0.46 o
V
90 45 0.01 43.5 0.435
100 42 0.02 39 0.78 20
120 36 0.02 34.5 0.69
140 33 0.02 31.5 0.63 10
160 30 0.02 28.5 0.57
180 27 0.05 24 1.2 0
230 21 0.05 18.5 0.925 0 100 200 300 400 500 600
280 16 0.1 12.5 1.25 Tiempo, mseg
380 9 0.12 6.5 0.78
500 4
Total = 10.7675

Excel 225
Evaluación de Integrales –
método Simpson
• Regla de Simpson (número de datos impar – número de
subintervalos par):
– En lugar de considerar rectángulos entre los puntos, se pasa un
polinomio de segundo orden (parábola) a través de tres puntos
adyacentes igualmente espaciados.
– Por tanto la integral se aproxima como:
b
1
I = ∫ y dx = ( y1 + 4 y2 + 2 y3 + 4 y4 + 2 y5 +  + 2 yn − 2 + 4 yn −1 + yn ) ∆x
a
3 1
• Ejemplo: Evaluar la integral I = e dx

− x 2

0
en el rango de 0 a 1 con un ∆=0.1 entre puntos.

Excel 226
Evaluación de Integrales –
método Simpson
Integración numérica usando la regla de Simpson 1

x y
I = ∫e − x2
dx
0.0 1.0000 1.0000 0
0.1 0.9900 3.9602
0.2 0.9608 1.9216 Funcion Exp(-x^2)
Y
0.3 0.9139 3.6557
1.2000
0.4 0.8521 1.7043
0.5 0.7788 3.1152 1.0000
0.6 0.6977 1.3954
0.8000
0.7 0.6126 2.4505
0.8 0.5273 1.0546 0.6000
0.9 0.4449 1.7794
1.0 0.3679 0.3679 0.4000

0.2000
SUMA = 22.4047
0.0000 X
INTEGRAL = 0.7468 0.0 0.2 0.4 0.6 0.8 1.0 1.2

Excel 227
Cálculo de la superficie y centroide
mediante Integrales
• Problema: calcular la superficie y centroide de una función
dada como tabla.
• Se aplica una técnica de integración numérica para el cálculo
de la superficie y el primer momento para el centroide.
• El centroide se calcula tomando el primer momento del área
calculado con:
M x = ∫ ydA = ∫ yxdy M y = ∫ xdA = ∫ xydx
My
• De donde se obtiene el centroide: xc = yc =
Mx
A A

Excel 228
Cálculo del segundo momento
de una superficie
• Problema: calcular el segundo momento de una superficie
(momento de inercia).
• Se usa la misma técnica que la sección anterior para el
primer momento, pero usando x2 e y en lugar de x e y. Es
decir para el eje y: I y = x 2 dA = x 2 ydx
∫ ∫
• El momento de inercia para un eje que pasa por el centro de
la superficie se calcula aplicando el teorema del eje paralelo,
I na = I y − Ad 2
donde Ina es el momento de inercia del área sobre el eje
paralelo a y que pasa por el centroide, A es el área y d es la
distancia al eje y.
Excel 229
Cálculo del centroide y segundo
momento de una superficie
Cálculo del Centro y Momento de Inercia de un Area usando integración numérica

x y Coef.Simpson
0.000 0.100 1
0.200 0.300 4 1.200
0.400 0.600 2
0.600 0.900 4 1.000
0.800 1.050 2
1.000 1.000 4
1.200 0.700 2 0.800
1.400 0.400 4
1.600 0.200 2 0.600
1.800 0.100 4
2.000 0.050 1
0.400
s= 0.2
0.200
Area = 1.070
Centro del Area
xc = 0.869
yc = 0.382 0.000
0.000 0.500 1.000 1.500 2.000
Iy = 0.97013333
Iyc = 0.16297404

Excel 230
Cálculo de Integrales dobles

• Problema: se requiere integrar numéricamente una


integral doble para calcular, por ejemplo, un volumen
bajo una superficie.
• La técnica propuesta es dividir una integral múltiple
en sucesivas integrales sencillas y aplicar las
técnicas de integración numérica mostradas antes.
• Así para calcular el volumen bajo una superficie se
calculan las áreas de las secciones transversales al
eje y y después integrarlas para el eje x.

Excel 231
Cálculo del volumen bajo una superficie
Cálculo de Volumen mediante Integrales dobles
sx = 0.1
sy = 0.1
y
Coeficientes x 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.5 0 1.000 0.990 0.961 0.914 0.852 0.779 0.698 0.613 0.527 0.445 0.368
1 0.1 0.990 0.980 0.951 0.905 0.844 0.771 0.691 0.607 0.522 0.440 0.364
1 0.2 0.961 0.951 0.923 0.878 0.819 0.748 0.670 0.589 0.507 0.427 0.353
1 0.3 0.914 0.905 0.878 0.835 0.779 0.712 0.638 0.560 0.482 0.407 0.336
1 0.4 0.852 0.844 0.819 0.779 0.726 0.664 0.595 0.522 0.449 0.379 0.313
1 0.5 0.779 0.771 0.748 0.712 0.664 0.607 0.543 0.477 0.411 0.346 0.287
1 0.6 0.698 0.691 0.670 0.638 0.595 0.543 0.487 0.427 0.368 0.310 0.257
1 0.7 0.613 0.607 0.589 0.560 0.522 0.477 0.427 0.375 0.323 0.273 0.225
1 0.8 0.527 0.522 0.507 0.482 0.449 0.411 0.368 0.323 0.278 0.235 0.194
1 0.9 0.445 0.440 0.427 0.407 0.379 0.346 0.310 0.273 0.235 0.198 0.164
0.5 1 0.368 0.364 0.353 0.336 0.313 0.287 0.257 0.225 0.194 0.164 0.135
Areas: 0.746 0.739 0.717 0.682 0.636 0.581 0.521 0.457 0.393 0.332 0.275
Coeficientes: 0.5 1 1 1 1 1 1 1 1 1 0.5

Volumen = 0.55683

Curva de Areas
1.000
0.900 0.800
0.800 0.900-1.000 0.700
0.700 0.800-0.900
0.600
0.700-0.800
0.600
0.600-0.700 0.500
z 0.500 Area
0.500-0.600 0.400
0.400 0.400-0.500
0.300 0.300-0.400
0.300
0.200 0.200-0.300 0.200
0 0.100-0.200
0.100 0.100
0.000 0.4 0.000-0.100
x 0.000
0
0.1
0.2

0.8
0.3

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1


0.4
0.5
0.6
0.7
0.8

y
0.9

Y
1

Excel 232
Optimización

Excel 233
Optimización
• Los problemas de ingeniería se modelan mediante
sistemas de ecuaciones para su análisis.
• Muchos problemas de ingeniería requieren la
optimización de un criterio, como el costo, ganancia,
peso, etc, al que se llama función objetivo.
• Adicionalmente hay una serie de condiciones, tales
como leyes de conservación, restricciones de
capacidad u otra restricción técnica, que deben ser
satisfechas. Estas condiciones se llaman
restricciones.

Excel 234
Optimización
• El objetivo de una solución óptima es determinar una
solución que produce que la función objetivo sea
maximizada o minimizada cumpliendo todas las
restricciones.
• Los problemas de este tipo se conocen como
problemas de optimización.

Excel 235
Optimización - Formalización

• Un problema de optimización se puede escribir como:


Determinar los valores de la variables x1, x2, …. , xn que
maximice o minimice la función objetivo:
y = f ( x1 , x2 ,  , xn )
Sujeto a las siguientes restricciones j = 1, 2, …, m:
g j ( x1 , x2 ,  , xn ) = 0
o g j ( x1 , x2 ,  , xn ) ≤ 0
o g j ( x1 , x2 ,  , xn ) ≥ 0
además, es común restringir xi ≥ 0 i = 1, 2, …, n
• Ejemplos: Optimización 1.xlsx

Excel 236
Optimización usando Solver
• Procedimiento:
– Escribir un valor inicial para cada variable independiente
x1, x2 …, xn en celdas diferentes.
– Escribir la función objetivo como fórmula Excel en una celda.
– Escribir las ecuaciones de cada restricción como fórmulas Excel.
– Seleccionar Herramientas→Solver. Dar la dirección de la celda que
contiene la función objetivo para Celda objetivo. Seleccionar Máximo o
Mínimo en Valor de la celda objetivo. Dar el rango de las celdas que
contienen los valores iniciales de las variables
x1, x2 …, xn en Cambiando las celdas.
– Escribir las celdas que contienen cada restricción, el tipo de restricción
y el valor del lado derecho usando Agregar.
– Si la función objetivo y las restricciones son lineales, pulsar en el botón
Opciones y seleccionar Adoptar Modelo Lineal.
– Pulsar Aceptar y después Resolver. Se puede seleccionar la opción de
generar Resultados en otra hoja.
Excel 237
Optimización - Programación lineal clásica

• Maximizar f(x1, x2) = 29 x1 + 45 x2


Sujeto a las restricciones:
2x1 + 8x2 ≤ 60
4x1 + 4x2 ≤ 50
x1, x2 ≥ 0

Excel 238
Optimización - Programación lineal clásica

14
x2
12
R2

Región de soluciones
10
factibles
8
R1
Recta de la Función
6
Objetivo para 455.833
4

0
0 2 4 6 8 10 12 14 16 18 20

x1

Restricción 1 Restricción 2 Recta FObj

Excel 239
Optimización - Programación lineal clásica
Solución (Solver) de problema de programación lineal clá

x1 = 6.6667
x2 = 5.8333
f(x1, x2) = 455.8333 ? Función Objectivo

Valor Límite
Restricción 1 60 60
Restricción 2 50 50

Excel 240
Optimización - Programación lineal clásica

• Problema de optimización de producción:


Maximizar y = 60 x1 + 44 x2

Sujeto a las restricciones:


x1 + x2 ≥ 1000
5x1 +3 x2 ≤ 8000
x1, x2 ≥ 0

Excel 241
Optimización - Programación lineal clásica

Optimización de la producción

Unidades de A /mes: 0
Unidades de B /mes: 2666.66667

Ganacia (y) = 117333.333

Producción mínima requerida (g1): 2666.66667


Disponibilidad mano de obra (g2): 8000

Excel 242
Optimización - no lineal

• Minimizar y = 10 + (x1 – 0.5)2 + (x2 + 0.5)2 (problema


no lineal)

Sujeto a las restricciones:


π (x12 + x22 ) ≥ 10
x1 ≤ 1.25 x2
x1, x2 ≥ 0

Nota: Excel No indica si la solución es una solución local o


global.
Excel 243
Optimización - no lineal

Optimización no lineal

x1 = 1.393166873
x2 = 1.114533498

y= 13.40446548

g1 = 9.999999972
g2 = 0

Excel 244
Optimización - no lineal

• La solución de problemas de optimización no lineales


pueden depender de los valores iniciales supuestos,
con lo que se pueden obtener soluciones óptimas
locales y no hallar la solución óptima global.
• Una opción es graficar la función objetivo para ver su
comportamiento en problemas sencillos, sino se
puede usar técnicas de Monte Carlo (aleatorio).
• Ej: Minimizar
 cos( x 2 + y 2 ) 
-3 ≤ x1, x2 ≤ 3 z = 1 − 2  ⋅1.25
 ( x + y + 0.5) 
2

Excel 245
Optimización - no lineal

Gráfica de la función para x=0


2
2
1.5

1 1.5

0.5 1

0 0.5

-0.5
0
3
-1 -3 -2 -1 0 1 2 3
1
-0.5
-1.5 -1
-3
-2.25
-1.5

-1
-0.75
0

-3
0.75
1.5

2.25

-1.5

Excel 246
Evaluación económica

Excel 247
Evaluación económica de alternativas
• Una parte importante en la evaluación de proyectos es
la evaluación económica.
• Se basa en el valor del dinero en el tiempo. La
terminología empleada es el principal para indicar la
cantidad prestada y el interés que es el pago adicional
por el uso del dinero.
• Los cálculos de interés se basan en la tasa de interés i.
• Los cálculos económicos se basan en el uso del interés
compuesto. Así para n períodos de interés, la cantidad
total de dinero acumulado al final del último período de
interés es: F = Fn = P(1 + i)n
• Ejemplos: Comparacion_Economica1.xls
Excel 248
Cálculos financieros básicos
• Problema: Calcular el capital acumulado para un depósito a
un interés y período dado.
Interés compuesto Cantidad acumulada
Final de año F Interés del
Acumulación horario = compuesto
interés 5436.55
0 2000.00
P= 2000
1 2100.00
2 2205.00 6000.00
i (anual) = 0.05 3 2315.25
4 2431.01 5000.00

Total acumulado
5 2552.56
n= 20 6 2680.19 4000.00
7 2814.20
3000.00
8 2954.91
9 3102.66
2000.00
10 3257.79
11 3420.68
1000.00
12 3591.71
13 3771.30
0.00
14 3959.86
0 2 4 6 8 10 12 14 16 18 20
15 4157.86
16 4365.75 Final de Año
17 4584.04
18 4813.24
19 5053.90
20 5306.60

Excel 249
Cálculos financieros básicos

• Problema: Calcular el capital acumulado para un


depósito a un interés y período dado con
capitalización menores al año.
m = períodos de capitalización
n = número total de períodos de capitalizacion = mxnúmero de años
F = Fn = P(1 + i/m)n
Interés compuesto: Variación de la frecuencia del interés

Interés anual = 5306.60

Interés cuatrimetral = 5402.97

Interés mensual = 5425.28

Interés diario = 5436.19

Excel 250
Valor presente de un flujo de caja

• Una alternativa económica realista incluye normalmente un


período de inversión inicial seguida de una serie de flujos de
caja.

0 1 2 3 n-1 n

• Un flujo de caja típico para un préstamo consiste en una


inversión inicial seguido de una serie de n pagos uniformes.
En ese caso las cuotas se calculan como:
 (i / m) (1 + i / m) n 
A = P 
 (1 + i / m ) n
− 1 
Excel 251
Pago uniforme

• Problema: Calcular el pago uniforme (amortización)


para devolver una cantidad inicial P. Excel tiene una
función Pago
Pago uniforme de una inversión

A= -140,000.00 €

i= 0.08

n= 12

P= 1055050.92

Excel 252
Valor presente

• Problema: Calcular el valor actual de un pago


uniforme A. Excel tiene una función VA.
Valor presente de una inversión

A= 140000

i= 0.08

n= 12

P= -1,055,050.92 €

Excel 253
Valor futuro

• Problema: Calcular el valor futuro de un pago


uniforme A. Excel tiene una función VF.
Valor futuro de un pago

A= 140000

i= 0.08

n= 12

F= 2,656,797.70 €

Excel 254
Flujos de caja no uniformes

• Problema: Calcular el valor presente neto de un flujo


de caja no uniforme en periodos uniformes. Excel
tiene una función VNA.
Valor Presente de una inversión

i= 0.08

Final año Flujo de Caja


0 -10000000 Fujo de Caja
1 -8000000
2 0 8000000
3 1000000 6000000
4 2000000 4000000
5 3000000 2000000
Cantidad (€)

6 4000000 0
7 5000000 -2000000 0 1 2 3 4 5 6 7 8 9 10 11 12 13
8 6000000 -4000000
9 5000000
-6000000
10 4000000
-8000000
11 3000000
-10000000
12 2000000
13 1000000 -12000000
Final Año
VPN = 2,380,570.73

Excel 255
Comparación de Alternativas
Flujos de caja no uniformes
• Problema: Comparar varias alternativas de flujos de
caja. Se selecciona la de mayor Valor Presente Neto.
Comparación de dos oportunidades de inversión

i= 0.1

Flujo de Caja Flujo de Caja


Final año Alternativa A Alternativa B
0 -3500000 -3500000
1 1200000 600000
2 1200000 900000
3 1200000 1100000
4 1200000 1300000
5 1200000 1500000
6 1200000 1800000

VPN = 1,726,312.84 1,451,055.03

Excel 256
Comparación de Alternativas
Tasa interna de retorno (TIR)
• El método de la Tasa Interna de Retorno (TIR) es otro criterio
muy usado para comparar varias alternativas de inversión. A
diferencia del método del Valor Presente no hay necesidad
de especificar una tasa de interés.
• Si dibujamos el valor presente de un flujo de caja en función
de la tasa de interés, la TIR es el punto de cruce, es decir, el
valor de la tasa de interés al cual el valor presente neto se
hace cero.
• Durante la comparación de alternativas mediante la TIR se
escogerá aquella alternativa que tenga la mayor tasa interna
de retorno.
• Excel tiene la función TIR que calcula la tasa interna de
retorno directamente.
Excel 257
VPN - TIR

Valor Presente en función de la Tasa de Interés

Final año Flujo Caja


0 -100000 Valor Presente Neto vs Tasa de de Interés
1 15000
2 20000 70,000
3 25000
60,000
4 30000
5 35000 50,000
6 40000 40,000
VPN

30,000
i VPN 20,000
0 65,000
10,000
0.03 46,639
0.06 31,057 0
0.09 17,751 -10,000 0 0.05 0.1 0.15 0.2 0.25
0.12 6,322 -20,000
0.15 -3,549
0.18 -12,119 Tasa de Interés
0.21 -19,597

Excel 258
Comparación de Alternativas
Tasa interna de retorno (TIR)
Comparación de dos oportunidades de inversión

i= 0.1

Flujo de Caja Flujo de Caja


Final año Alternativa A Alternativa B
0 -3500000 -3500000
1 1200000 600000
2 1200000 900000
3 1200000 1100000
4 1200000 1300000
5 1200000 1500000
6 1200000 1800000

VPN = 1,726,312.84 1,451,055.03

TIR = 26% 21%


Excel 259
VPN vs TIR
• Pueden existir varias TIR cuando el flujo de caja tiene más de
un cambio de signo. Por tanto se recomienda usar este
indicador cuando un proyecto tenga sólo un cambio de signo.
• Bajo determinadas situaciones el VPN y la TIR, se
contradicen cuando se dan dos escenarios:
– Escenario 1: Los montos de inversión de los proyectos son
diferentes.
– Escenario 2: La distribución temporal de los FC no son iguales: en
dos alternativas A y B, A tiene los FC más grandes al inicio y B, los
tiene más concentrados hacia el final de la vida útil.
• En caso de contradicción se debe utilizar el VPN. Se puede
demostrar mediante el cálculo de la TIR marginal o tasa de
indiferencia.
Excel 260
Conversión de Unidades

Excel 261
Conversión de Unidades

• En ingeniería es frecuente la necesidad de


conversión de unidades entre diferentes sistemas de
unidades.
• La forma usual de realizar esta tarea es mediante
equivalencias de unidades que se obtienen a partir de
factores de conversión tabulados.
• Las hojas de cálculo también se pueden usar con
este propósito eliminando la necesidad de realizar
cálculos manuales.

Excel 262
Conversión de Unidades

• Los sistemas de unidades más comunes son:


– Sistema Internacional de Unidades
– Sistema Anglosajón de Unidades
– Sistema métrico decimal
– Sistema Cegesimal de Unidades o cgs
– Sistema Técnico de Unidades o mks
• Con Excel se pueden realizar conversiones simples y
complejas de unidades.

Excel 263
Conversiones simples

• Una conversión simple incluye sólo unidades de la


misma dimensión, p.e. pies a metros (longitud).
• Excel ofrece la función de Ingeniería CONVERTIR
(instalar Herramientas→ Complementos→Herramientas
para análisis).
• En las conversiones simples se multiplica la cantidad
original por el factor de equivalencia unitario
apropiado.

Excel 264
Conversiones simples

• Ejemplo manual: Conversión simple de pies a metros


Convertir 2.5 pies a su número equivalente en
metros, usando el factor de conversión
1 pie = 0.3048 m.
La conversión es: L = 2.5 ft × 0.3048 m = 0.762 m
1 ft

Excel 265
Conversiones simples en Excel

• En Excel se usa la función CONVERTIR.


• Sintaxis:
CONVERTIR(número, de_unidad, a_unidad)
número es el número a convertir.
de_unidad abreviación de la unidad original.
a_unidad abreviación de la unidad final.
• Ejemplo:
=CONVERTIR(1.0, "lbm“, "kg")
Convierte 1 libra masa a kilogramos (0,453592).
Excel 266
Abreviaciones de Unidades

• Las abreviaciones de unidad se escriben entre comillas


dobles y se distinguen entre mayúsculas y minúsculas
(Ver ayuda).
• Ejemplos:
=CONVERTIR(68, "F“, "C")
Convierte 68 grados Fahrenheit a Celsius (20).

=CONVERTIR(2,5, "ft“, "sec")


Los tipos de datos no son iguales, por tanto se
devuelve un error (#N/A).
Excel 267
Conversiones complejas

• Se refieren a conversiones donde intervienen varias


unidades.
• Ejemplo: Convertir 6.3 lb/sq-inch (psi) a newtons /m2
(Pa) donde 1 lbf/in2 = 6894.8 N/m2.
6894.8 ( N / m 2 )
P = 6.3 (lb f / in ) ×2
= 43437 N / m 2

1 (lb f / in 2 )
2
6.3 lb f 4.44822 N  39.37 in 
P= × ×   = 43437 N / m 2
in 2 1lb f  1m 

Excel 268
Ejemplo de
Conversiones complejas
• =CONVERTIR(6.3,”lbf”,”N”)*CONVERTIR(1, “m",“in")^2
Convierte 6.3 libras a newtons y se multiplica por la
conversión de metros a pulgadas.

Excel 269
Transferencia de datos

Excel 270
Transferencia de datos - Lectura
• Algunas aplicaciones requieren que sean leídos o importados
ficheros diferentes de Excel.
• Para leer ficheros tipo texto se siguen los siguientes pasos:
– Asegurarse que el fichero es un fichero texto (extensión
típica .txt, .csv, o .prn).
– En Excel seleccionar Archivo→Abrir. Cuando aparece la
ventana de diálogo seleccionar Archivos de texto.
Seleccionar el archivo.
– Aparece el Asistente. Es necesario seleccionar si el
fichero tiene delimitadores entre campos o si son de
ancho fijo.
– Si hay delimitadores, seleccionar el tipo de separador.
– Finalmente se selecciona el formato.
Excel 271
Transferencia de datos - Lectura

Excel 272
Importación de datos desde
páginas Web
• Es posible importar datos desde una página
Web.
– La forma más fácil es utilizar Datos > Obtener
datos externos > Desde Web. Aparece un
navegador donde se puede colocar la URL
deseada. Ejemplo:
http://physics.nist.gov/cgi-bin/Compositions/stand_alone.pl?ele=&ascii=html&isotype=some

– Se seleccionan los datos y se da en el botón


Importar.

Excel 273
Transferencia de datos - Lectura

Excel 274
Transferencia de datos - Escritura

• Para exportar datos a un fichero tipo texto.


– En Excel seleccionar Archivo→Guardar como...
– Si se desea que los datos de cada línea se separen por
tabuladores, seleccionar Texto (delimitado por
tabulaciones). Se añade automáticamente el sufijo .txt al
fichero.
– Si se desea que los datos de cada línea se separen por
comas, seleccionar CSV (delimitado por comas). Se
añade automáticamente el sufijo .csv al fichero.

Excel 275
Transferencia de datos - Escritura

Excel 276
Organización y Análisis de
datos – Tablas dinámicas

Excel 277
Organización de datos - Listas

• Creación de listas en Excel.


– Introducir los datos (pueden tener encabezado).
– Para introducir un nuevo registro se puede usar un
formulario de datos. Para ello:
• Hacer clic en una celda del rango o de la tabla donde desee
agregar el formulario.
• Para agregar el botón Formulario Botón Control de formulario a
la Barra de herramientas de acceso rápido:
– Hacer clic en la flecha de la Barra de herramientas de acceso rápido y
hacer clic en Más comandos. En el cuadro Comandos disponibles en,
hacer clic en Todos los comandos y seleccionar el botón Formulario…
de la lista. Hacer clic en Agregar y Aceptar. En la Barra de herramientas
de acceso rápido, hacer clic en Formulario.
– Ejemplo: Provincias_España.xls.
Excel 278
Organización de datos - Listas

Excel 279
Organización de datos - Ordenación

• Ordenación de datos en Excel.


– Una lista puede ser ordenada seleccionando el rango de
datos y pulsando sobre una de las opciones de ordenar de
A a Z (ascendente) o Z a A (descente) en la cinta de
opciones de las pestañas Inicio o Datos (ordenar y filtrar).

Excel 280
Organización de datos - Ordenación

Excel 281
Organización de datos - Filtrado

• Filtrado de datos en Excel.


– Excel dispone de operaciones similares a las bases de
datos como es la recuperación de la información que
satisface ciertas condiciones.
– El filtrado de listas permite seleccionar registros que
satisfacen determinados criterios.
– Se usará la sub-opción Filtros de números de la opción
Filtro en el menú Datos.

Excel 282
Organización de datos - Filtrado

• Ejercicios (Provincias_España.xls):
– Las 10 provincias que tienen mayor densidad de
población.
– Qué provincias tienen superficies que exceden 15,000
km2.
– Qué provincias tienen poblaciones entre 500000 y 1 millón
de habitantes.

Excel 283
Organización de datos - Filtrado

• Las 10 provincias que tienen mayor densidad de


población:
– Seleccionar una celda arbitraria dentro de la lista.
– Seleccionar Filtro en el menú Datos.
– Aparecen flechas hacia abajo en el encabezado.
– Pulsar sobre la flecha en el encabezado de densidad de
población seleccionar Filtros de número y se selecciona
los Diez mejores. Aparecen una ventana de diálogo en la
que se puede modificar la selección.

Excel 284
Organización de datos - Filtrado

• Qué provincias tienen areas que exceden 15,000


km2:
– Se pulsa sobre la flecha en el encabezado Superficie →
Filtros de número.
– En el cuadro de diálogo que aparece seleccionar Mayor
que y colocar 15000 en el siguiente campo. Pulsar el
botón Aceptar.
– Aparecen los resultados en el mismo orden que los
originales.

Excel 285
Organización de datos - Filtrado

• Qué provincias tienen poblaciones entre 500000 y 1


millón:
– Se pulsa sobre la flecha en el encabezado Total → Filtros de
número.
– En el cuadro de diálogo que aparece seleccionar Entre
rellenando los campos con los valores apropiados (mayor o
igual que 500000, menor o igual que 1000000). Pulsar el botón
Aceptar.
– Aparecen los resultados en el mismo orden que los originales.

Excel 286
Organización de datos - Filtrado

Excel 287
Búsqueda en tablas

• Problema: Realizar búsquedas de valores en una


tabla de datos tabulares para utilizarlos en otros
cálculos.
• Excel dispone de las funciones BUSCAR ,
BUSCARV, BUSCARH, COINCIDIR e INDICE para
acceder a datos tabulares o tablas.
• Ejemplo: Busqueda_tablas.xls

Excel 288
Búsqueda en tablas - BUSCAR

• La función BUSCAR devuelve un valor procedente de


un rango de una fila o columna o de una matriz.
• Tiene dos formas de sintaxis: vectorial y matricial.
• La forma vectorial de BUSCAR busca en un rango de
una fila o de una columna un valor (vector) y
devuelve un valor desde la misma posición en un
segundo rango de una fila o de una columna.
• Sintaxis:
BUSCAR(valor_buscado;vector_de_comparación;vector_resultado)
• El vector_de_comparación debe estar ordenado en
orden ascendente.
Excel 289
Búsqueda en tablas - BUSCAR

Longitud Factor de diseño


ft m Acero Aluminio
10 3.05 10 4
20 6.10 15 7
40 12.19 20 10
80 24.38 30 15
160 48.77 35 17

Longitud dada = 20
Unidades = ft
Material = Acero
Factor de diseño = 15

Excel 290
Búsqueda en tablas - BUSCARV

• La función BUSCARV busca un valor en la primera


columna de un rango de celdas y devuelve el valor en
la columna especificada. Opcionalmente se puede
indicar el criterio de búsqueda.
• Sintaxis:
BUSCARV(valor_buscado;matriz_buscaren;ind_columnas;ordenado)

Excel 291
Búsqueda en tablas - BUSCARV

1 2 3 4 5 6 7 8 9
Temperatura (C) Densidad (kg/m3)Energía Interna (kJ/kg) Entalpía (kJ/kg) Entropía (J/g*K) Cv (J/g*K) Cp (J/g*K) Veloc.sonido (m/s) Viscosidad (Pa*s)
10 999.7 42.018 42.119 0.15108 4.1906 4.1952 1447.3 0.0013059
20 998.21 83.906 84.007 0.29646 4.1567 4.1841 1482.3 0.0010016
30 995.65 125.72 125.82 0.43673 4.1172 4.1798 1509.2 0.00079735
40 992.22 167.51 167.62 0.57237 4.0734 4.1794 1528.9 0.00065298
50 988.04 209.32 209.42 0.70377 4.0262 4.1813 1542.6 0.00054685
60 983.2 251.15 251.25 0.83125 3.9765 4.185 1551 0.0004664
70 977.76 293.02 293.12 0.95509 3.9251 4.1901 1554.7 0.00040389
80 971.79 334.95 335.06 1.0755 3.8728 4.1968 1554.4 0.00035435
90 965.31 376.96 377.06 1.1928 3.8203 4.2052 1550.5 0.00031441

Temperatura (C) 40 <-- Introduce Temperatura


Densidad (kg/m3) 992.22
Energía Interna (kJ/kg) 167.51
Entalpía (kJ/kg) 167.62
Entropía (J/g*K) 0.57237
Cv (J/g*K) 4.0734
Cp (J/g*K) 4.1794
Veloc.sonido (m/s) 1528.9
Viscosidad (Pa*s) 0.00065298

Excel 292
Búsqueda en tablas - BUSCARH

• La función BUSCARH busca un valor en la primera


fila de un rango de celdas y devuelve el valor en la
fila especificada. Opcionalmente se puede indicar el
criterio de búsqueda.
• Sintaxis:
BUSCARH(valor_buscado;matriz_buscaren;ind_filas;ordenado)

Excel 293
Búsqueda en tablas - BUSCARH

1 Temperatura (C) 10 20 30 40 50 60 70 80 90
2 Densidad (kg/m3) 999.7 998.21 995.65 992.22 988.04 983.2 977.76 971.79 965.31
3 Energía Interna (kJ/kg) 42.018 83.906 125.72 167.51 209.32 251.15 293.02 334.95 376.96
4 Entalpía (kJ/kg) 42.119 84.007 125.82 167.62 209.42 251.25 293.12 335.06 377.06
5 Entropía (J/g*K) 0.15108 0.29646 0.43673 0.57237 0.70377 0.83125 0.95509 1.0755 1.1928
6 Cv (J/g*K) 4.1906 4.1567 4.1172 4.0734 4.0262 3.9765 3.9251 3.8728 3.8203
7 Cp (J/g*K) 4.1952 4.1841 4.1798 4.1794 4.1813 4.185 4.1901 4.1968 4.2052
8 Veloc.sonido (m/s) 1447.3 1482.3 1509.2 1528.9 1542.6 1551 1554.7 1554.4 1550.5
9 Viscosidad (Pa*s) 0.001306 0.001002 0.000797 0.000653 0.000547 0.000466 0.000404 0.000354 0.000314

Temperatura (C) 30 <-- Introduce Temperatura


Densidad (kg/m3) 995.65
Energía Interna (kJ/kg) 125.72
Entalpía (kJ/kg) 125.82
Entropía (J/g*K) 0.43673
Cv (J/g*K) 4.1172
Cp (J/g*K) 4.1798
Veloc.sonido (m/s) 1509.2
Viscosidad (Pa*s) 0.000797

Excel 294
Búsqueda en tablas - COINCIDIR

• La función COINCIDIR devuelve la posición de un


elemento en una matriz.
• Sintaxis:
COINCIDIR(valor_buscado;matriz_buscaren;tipo_coincidencia)
1 Temperatura (C) 10 20 30 40 50 60 70 80 90
2 Densidad (kg/m3) 999.7 998.21 995.65 992.22 988.04 983.2 977.76 971.79 965.31
3 Energía Interna (kJ/kg) 42.018 83.906 125.72 167.51 209.32 251.15 293.02 334.95 376.96
4 Entalpía (kJ/kg) 42.119 84.007 125.82 167.62 209.42 251.25 293.12 335.06 377.06
5 Entropía (J/g*K) 0.15108 0.29646 0.43673 0.57237 0.70377 0.83125 0.95509 1.0755 1.1928
6 Cv (J/g*K) 4.1906 4.1567 4.1172 4.0734 4.0262 3.9765 3.9251 3.8728 3.8203
7 Cp (J/g*K) 4.1952 4.1841 4.1798 4.1794 4.1813 4.185 4.1901 4.1968 4.2052
8 Veloc.sonido (m/s) 1447.3 1482.3 1509.2 1528.9 1542.6 1551 1554.7 1554.4 1550.5
9 Viscosidad (Pa*s) 0.001306 0.001002 0.000797 0.000653 0.000547 0.000466 0.000404 0.000354 0.000314

Temperatura (C) 10 <-- Introduce Temperatura


Veloc.sonido (m/s) 1447.3

Excel 295
Búsqueda en tablas - INDICE

• La función INDICE resulta útil para extraer un valor


de una tabla dada la posición del valor en la tabla.
• Sintaxis:
INDICE(matriz; num_fila; num_columna)
Datos:
0.02451 0.93331 0.84756
0.08995 0.03905 0.32620
0.94215 0.49682 0.62290
0.67168 0.60431 0.84449

Elemento 2,2 = 0.0390457

Fila 1 = 0.0245112 0.9333076 0.847564

Columna 2 = 0.9333076
0.0390457
0.4968178
0.6043112

Excel 296
Tablas pivot o dinámicas

• Las listas normalmente se organizan de manera


lineal, es decir, en columnas adyacentes.
• Algunas listas se pueden organizar de manera
bidimensional para mostrar una mejor interrelación
entre los datos.
• Las listas bidimensionales reestructuradas se
conocen como tablas pivot o dinámicas.

Excel 297
Tablas pivot o dinámicas

• Ejemplo: (datos_pobl_usa.xls)
– Primero asegurarse que la lista está formada por bloques de
celdas contiguas con un encabezado en cada columna.
– Se selecciona cualquier celda dentro de la lista y seleccionar
en el menú Insertar – Tablas la opción Tabla dinámica.
– Aparece el Asistente para crear tabla dinámica con el rango de
datos incluyendo los encabezados. Seleccionar Nueva hoja de
cálculo. Pulsar el botón Aceptar.
– Aparece una hoja de trabajo que incluye una ventana de
Campos de tabla dinámica.
– Seleccionar los campos según las filas y columnas que se
requieran. También los campos que se quiere mostrar en
valores y los filtros.
Excel 298
Tablas pivot o dinámicas

Excel 299
Tablas pivot o dinámicas

Excel 300
Tablas pivot o dinámicas
– Herramientas – Gráfico dinámico

Excel 301
Series

Excel 302
Series de números

• Las series de números son importantes en las


matemáticas porque permiten, por ejemplo, la
evaluación de funciones trascendentales, integrales o
ecuaciones diferenciales.
• Habitualmente la suma de una serie de números se
usa como una aproximación a una función que no se
puede evaluar directamente.
• La aproximación es más precisa si se añaden más
términos a la suma. Si la suma alcanza un valor finito
la serie es convergente, caso contrario es divergente.
Excel 303
Series de números

• Series y métodos iterativos: cualquier serie ∑xn se


puede convertir en un método iterativo considerando
la secuencia de sumas
n
parciales s n .
sn = ∑ xk = x0 + x1 + x2 +  + xn
k =0

sn = sn −1 + xn
• Evaluación de funciones y expansión de Taylor:
– Del Cálculo se sabe que cualquier función que tiene n+1
derivadas en un punto a tiene una expansion polinómica
nth de Taylor Polynomial centrada en a y un error.

Excel 304
Series de números – Constantes Array

• Ejemplo: Series.xlsx
• Se puede usar en Excel constantes Array para crear
fórmulas de series.
– Una constante array es un array de valores separados por
comas y encerrados entre llaves, usado como argumento
de una función. Ejemplo de array literal: {40,21,300,10}
– Se puede usar una constante array para hacer la
evaluación de una fórmula de serie más compacta y
precisa. Por ejemplo para evaluar:

1
e = 1+ ∑ = 1 +SUMA( 1 /FACT({1,2,3,4,5,6,7,8,9,10}))
k =1 k!

Excel 305
Series de números – Función FILA

• Ejemplo: Series.xlsx
• Se puede usar la función Excel FILA para generar
series de números.
– Si se introduce en una celda =FILA(1:100), se selecciona
y se pulsa la tecla F9 se obtiene:
={1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;
32;33;34;35;36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;
60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;
88;89;90;91;92;93;94;95;96;97;98;99;100}

– Usando este método se puede evaluar fórmulas de series.


Por ejemplo para evaluar e se puede usar:
{=1+SUMA(1/FACT(FILA(1:100)))}
Excel 306
Series de números – Función INDIRECTO

• Ejemplo: Series.xlsx
• Se puede usar la función INDIRECTO para crear una
referencia especificada por una cadena de texto.
– Si se introduce en una celda =INDIRECTO(“A1”) crea una
referencia a la celda A1 y devuelve el valor contenida en
esa celda.
– Se puede usar este método junto con FILA para evaluar
fórmulas de series. Por ejemplo para calcular e:
{=1+SUMA(1/FACT(FILA(INDIRECTO("1:20"))))} o
{=1+SUMA(1/FACT(FILA(INDIRECTO("1:"&A1))))} donde el valor
en A1 especifica el número de términos a evaluar.
Excel 307
Series de Taylor

• Las series de Taylor se usan para la evaluación de


funciones por métodos numéricos:
n
f (k ) (a )
f (x ) = ∑ (x − a )k + error
k =0 k!
f ' (a ) f '' (a ) f (n ) (a )
f ( x ) = f (a ) + (x − a ) + + (x − a ) +  + (x − a )n + Rn (x )
2

1! 2! n!
f (n +1) (c )
Rn ( x ) = (x − a )n+1
(n + 1)!
– El valor f (k)(a) es la kth derivada evaluada en a. La función
Rn(x) representa el error donde c es un valor entre x y a.

Excel 308
Series de Taylor

• Versión de los polinomios de Taylor apropiada para


computación:
– La serie de Taylor para evaluar una función f en el punto
x+h, dados el valor de la función y sus derivadas en el
punto x es:
n
f (k ) (x ) k f ' (x ) f '' ( x ) 2 f (k ) (x ) k f (k +1) (x + c ) k +1
f (x + h ) = ∑ h = f (x ) + h+ h + + h + h
k =0 k! 1! 2! k! (k + 1)!
– Siendo las kth derivadas
d k f (x + h )
k
= f (k )
( x + h ) =
= f (k )
(x )
dh h =0
h 0

• Ejemplo: Series.xlsx
Excel 309
Series de Taylor - Ejemplos

– Las derivadas de mayor orden de algunas funciones se


repiten según un patrón.
n
1 1
= ∑ x = 1+ x + x + x + + x +
k 2 3 n
x n +1

1 − x k =0 (1 − c )n+2

∞ k 2 3 n c
x x x x x e
ex = ∑ = 1+ + + + + + x n +1
k = 0 k! 1! 2! 3! n! (n + 1)!

sin x = ∑
n
(− 1) x 2 k +1
k
x3 x5
= x − + ± ±
x 2 n +1
+
± sin c 2 n + 2
x
k = 0 (2 k + 1)! 3! 5! (2n + 1)! (2n + 2)!
cos x = ∑
n
( − 1) x 2 k
k
x2 x4
= 1− + ± ±
x 2n
+
± cos c 2 n + 2
x
k =0 (2k )! 2! 4! (2n )! (2n + 1)!
Excel 310
Series de Taylor - Ejemplos
– Serie de∞ Taylor para la función f(x) = arctan(x).
1
= ∑ x k = 1 + x + x 2 + x3 + 
1 − x k =0

= ∑ (− x ) = 1 − x + x 2 − x 3 ± 
1 k

1 + x k =0

1
= ∑ (− 1) x = 1 − x2 + x4 − x6 ± 
k 2k

1+ x 2
k =0

arctan x = ∑

(− 1)k x 2 k +1 = x − x 3 + x 5 − x 7 ± 
2k + 1 3 5 7
( )
k =0
– Serie de Taylor para la función g ( x ) = x 3 cosh x

( )
∞ ∞
x 2k x2 x4 x6 xk x x 2 x3
cosh x = ∑ = 1+ + + + cosh x =∑ = 1+ + + +
k =0 (2 k )! 2! 4! 6! k =0 (2 k )! 2! 4! 6!

( ) x k +3

x 4 x5 x6
3
x cosh x =∑ = x + + + +
3

k =0 (2 k )! 2! 4! 6!

Excel 311
Series de Taylor - Observaciones

• Versión de la serie de Taylor para computación:


– La serie de Taylor para evaluar una función f en el punto
x+h, dados el valor de la función y sus derivadas en el
punto x es:
n
f (k ) (x ) k f ' (x ) f '' ( x ) 2 f (k ) ( x ) k f (k +1) ( x + c ) k +1
f (x + h ) = ∑ h = f (x ) + h+ h + + h + h
k =0 k! 1! 2! k! (k + 1)!
– Siendo las kth derivadas
d k f (x + h )
k
= f (k )
( x + h ) =
= f (k )
(x )
dh h =0
h 0

– La precisión de la aproximación aumenta si: se incrementa


el número de términos y h se hace pequeño.
• Ejemplo: Series.xlsx
Excel 312
Interpolación

Excel 313
Interpolación

• Dada una tabla de puntos x, y es frecuente


determinar el valor de y para una valor de x que se
encuentra entre los valores tabulados.
• El proceso de interpolación involucra la determinación
de una función matemática que pasa por los puntos
dados.
• Existe gran cantidad de métodos para resolver la
interpolación. Los métodos numéricos generalmente
tratan de usar polinomios como función interpolante y
resolver un número de ecuaciones y coeficientes
igual al número de puntos datos.
• Ejemplos: Interpolacion.xlsx
Excel 314
Interpolación mediante búsqueda

• Excel dispone de las funciones:


– BUSCARV para búsquedas verticales en una tabla
– BUSCARH para búsquedas horizontales en una tabla
– BUSCAR para búsquedas en general
• También se tiene la opción de construir una fórmula
de búsqueda con las funciones básicas:
– COINCIDIR para buscar un elemento especificado en un
intervalo de celdas y obtener la posición relativa de ese
elemento en el rango
– INDICE que devuelve un valor o la referencia a un valor
de una tabla o rango
• Se puede aplicar a tablas de dos variables
Excel 315
Interpolación lineal mediante búsqueda

• Se puede realizar una interpolación lineal sobre los


resultados de una búsqueda con COINCIDIR e
INDEX:
( x − x0 )
y x = y0 + ( y1 − y0 )
( x1 − x0 )
– Donde posicion =COINCIDIR(Valor buscado,rango x,1)
x0 =INDICE(rango x,posicion)
x1 =INDICE(rango x,posicion + 1)
y0 =INDICE(rango y,posicion)
y1 =INDICE(rango y,posicion + 1)
• Otra alternativa es usar la función TENDENCIA

Excel 316
Interpolación lineal mediante VBA

• También se puede programar una función propia para


la interpolación lineal:
Function InterpolateL(lookup_value, known_x´s, known_y´s)
Dim pointer As Integer
Dim X0 As Double
Dim Y0 As Double
Dim X1 As Double
Dim Y1 As Double
‘Para evitar extrapolacion
If lookup_value < Application.Min(known_x´s) Or lookup_value >
Application.Max(known_x´s) Then
InterpolateL = CVErr(xlErrRef): Exit Function
End If
pointer = Application.Match(lookup_value, known_x´s, 1)
X0 = known_x´s(pointer)
Y0 = known_y´s(pointer)
X1 = known_x´s(pointer + 1)
Y1 = known_y´s(pointer + 1)
InterpolateL = Y0 + (lookup_value - X0) * (Y1 - Y0) / (X1 - X0)
End Function
Excel 317
Interpolación cúbica

• Los valores de una tabla pueden ser tales que la


interpolación cúbica es más adecuada que la lineal.
• La interpolación cúbica usa cuatro valores
adyacentes de la tabla, x0 , x1 , x2 , x3 para obtener
los coeficientes de la ecuación cúbica
y = a + bx + cx 2 + dx 3
para usarse como función interpolante entre x1 y x2.
• Para realizar la interpolación se utiliza un polinomio
de Lagrange de orden 4 programado en VBA.
( x − x2 )( x − x3 )( x − x4 ) ( x − x1 )( x − x3 )( x − x4 )
yx = y1 + y2
( x1 − x2 )( x1 − x3 )( x1 − x4 ) ( x2 − x1 )( x2 − x3 )( x2 − x4 )
( x − x1 )( x − x2 )( x − x4 ) ( x − x1 )( x − x2 )( x − x3 )
+ y3 + y4
( x3 − x1 )( x3 − x2 )( x3 − x4 ) ( x4 − x1 )( x4 − x2 )( x4 − x3 )
Excel 318
Interpolación cúbica mediante VBA

• Requiere pasar los arrays de valores x (en orden


ascendente) e y
Function InterpolateC(lookup_value, known_x´s, known_y´s)
' Performs cubic interpolation, the known_x´s must be in ascending order.
Dim row As Integer
Dim i As Integer, j As Integer
Dim Q As Double, Y As Double
row = Application.Match(lookup_value, known_x´s, 1)
If row < 2 Then row = 2
If row > known_x´s.Count - 2 Then row = known_x´s.Count - 2
For i = row - 1 To row + 2
Q = 1
For j = row - 1 To row + 2
If i <> j Then Q = Q * (lookup_value - known_x´s(j)) / (known_x´s(i) -
known_x´s(j))
Next j
Y = Y + Q * known_y´s(i)
Next i
InterpolateC = Y
End Function
Excel 319
Interpolación cúbica sobre
tablas de dos parámetros
• Se puede aplicar la interpolación cúbica a tablas de
dos parámetros
• En ese caso hay que seleccionar la matriz de valores
para realizar la interpolación.
• Ejemplos: Interpolacion2.xlsx

Excel 320
Interpolación numérica

• Existe varios métodos para realizar una interpolación


mediante polinomios.
• Algunos de los métodos son:
– Polinomios de diferencias divididas de Newton
– Interpolación cuadrática
– Polinomios de diferencias divididas de Newton de orden n
– Interpolación de Lagrange
• Ejemplos: Interpolacionnum.xlsx

Excel 321
VBA (Visual Basic for
Applications) en Excel
Programación en Excel

Excel 322
Introducción a VBA

• VBA es la versión de Microsoft Visual Basic para los


productos Office.
• Permite automatizar tareas otorgándole un lenguaje
orientado a objetos a los productos Office, así como
la comunicación entre las distintas aplicaciones.
• Utiliza el Editor de VBA.
• Cada objeto en VBA tiene propiedades y métodos.
Las propiedades se pueden cambiar en la ventana
propiedades (F4).

Excel 323
El editor de Visual Basic

• Para activar el editor de VB se puede usar una de las


siguientes opciones:
• Presionar Alt + F11
• Seleccionar Herramientas → Macro → Editor de Visual
Basic
• Hace clic sobre el botón Editor de Visual Basic, situado en
la barra de herramientas de Visual Basic

Excel 324
Ventanas del editor de Visual Basic

Barra de Menús
Barra de Herramientas

Explorador de
Proyectos: diagrama
de árbol que contiene
cada hoja de trabajo.
Para abrir Control+R
Ventana código. Cada elemento
de un proyecto tiene asociada
una ventana de código.

Ventana de Propiedades
Ventana inmediato. Es útil para ejecutar
instrucciones de VBA directamente. Para
abrirla Control+G.

Excel 325
Gestión de módulos en VBA
• En la ventana del Explorador de proyectos se gestionan los
módulos.
• Los módulos pueden ser de cuatro tipos:
• Procedimientos Sub. Conjuntos de instrucciones que ejecutan
alguna acción.
• Procedimientos Function. Es un conjunto de instrucciones que
devuelven un solo valor.
• Procedimientos Property. Son procedimientos especiales que se
usan en módulos de clase.
• Declaraciones. Es información acerca de una variable que se le
proporciona a VBA.
• Un solo módulo de VBA puede guardar cualquier cantidad de
procedimientos Sub, procedimientos Function y
declaraciones.
Excel 326
Objetos
• Excel incluye cerca de 200 objetos, que representan rangos
de celdas, gráficos, hojas de cálculo, libros y la propia
aplicación de Excel.
• Cada objeto tiene propiedades (que permiten acceder y
controlar sus atributos) y métodos (funcionalidades).
• El examinador de objetos es una herramienta que permite
navegar por los objetos para explorar sus propiedades y
métodos.
• Para abrir el examinador de objetos en VBA pulsar F2 o
seleccionar: Ver → Examinador de Objetos

Excel 327
Objetos

• Por ejemplo, para referirse a la Hoja1 del Libro1 se


usa
Application.WorkBooks(“Libro1.xls”).WorkSheets(“Hoja1”)
• Para omitir una referencia específica a un objeto se
usa los objetos activos. Si Libro1 es el libro de trabajo
activo, la referencia anterior se puede simplificar a
WorkSheets(“Hoja1”).Range(“A1”)
• Si se sabe que la Hoja1 es la hoja activa, se puede
incluso simplificar más
Range(“A1”)

Excel 328
Examinador de Objetos

Excel 329
Aplicación Excel
• Excel es una aplicación con un modelo de tres niveles:
• El primer nivel es el de servicios de cliente, que es la interfaz que
permite a los usuarios manejar la aplicación.
• El segundo nivel es el modelo de objetos de Excel, que es el que
se utiliza para realizar las operaciones en el libro de cálculo
(Workbook) o en las hojas de cálculo (Worksheets). Cada comando
de Excel se puede manejar mediante el modelo de objetos.
• El tercer nivel es el de servicios de datos, que es el que mantiene
los datos en las hojas de cálculo que son modificados por los
comandos del modelo de objetos de Excel.

Excel 330
Modelos de Objetos
• El modelo de objetos de Excel contiene una gran cantidad de
elementos ordenados en forma jerárquica. Algunos son:
• Application: Es el objeto que se encuentra en la base de la
jerarquía del modelo de objetos de Excel y representa a la
aplicación en sí.
• Workbooks: Objetos que representan los libros de cálculo o
archivos de Excel. Se encuentra debajo del objeto application
en la jerarquía.
• Worksheets: Objetos que representan las hojas de cálculo de
Excel. Este objeto pertenece al objeto workbook.
• Ranges: Objeto que representa un rango de celdas. Este
objeto pertenece al objeto worksheet.
• Charts: Objetos que representan gráficos.
• Pivot Tables: Objetos que representan tablas dinámicas.
Excel 331
Objeto Application
• El objeto Application representa el programa Excel. Entrega
acceso a las opciones y otras funcionalidades de Excel.
• La propiedad ActiveSheet se refiere a la hoja de cálculo
activa. Ejemplo:
Application.ActiveSheet.Cells(1, 2) = time
• Le dice a Excel que coloque el valor de time en la celda que
está en la fila 1 y columna 2.
• La propiedad ScreenUpdating le indica a Excel si debe
refrescar la pantalla cuando se ejecuta código.
Application.ScreenUpdating = False

Excel 332
Objeto Workbook
• El objeto Workbook representa un archivo Excel.
• El objeto ActiveWorkbook pertenece al objeto Application, y
entrega el objeto Workbook activo. Ejemplo:
Application.ActiveWorkbook.Save
• El objeto ActiveSheet pertenece al objeto Workbook y se
refiere a la hoja de cálculo activa.
Application.ActiveSheet.Delete
• La propiedad Names entrega la lista de nombres que se han
definido en ese Workbook.
• La propiedad Path se refiere al directorio donde se encuentra
el Workbook. Ejemplo:
directorio = Application.ActiveWorkbook.path

Excel 333
Colección Workbook
• La colección Workbooks agrupa a todos los archivos de
Excel que se encuentran abiertos.
• El método Open, Save y SaveAs le indican a Excel si debe
abrir, guardar o guardar como el workbook correspondiente.
Ejemplos:
Application.Workbooks(“ClaseIndustrial”).Save
Workbooks.Open(“C:\Archivo.xls”)
Workbooks(“Libro1”).SaveAs(“Archivo.xls”,,”clavesecreta”)
• Se pueden entregar los parámetros por nombre a los
métodos. Ejemplos:
Workbooks.Open FileName :=“C:\Archivo.xls”, _
ReadOnly:=True, Password:=“clavesecreta”
Application.Workbooks(“ClaseIndustrial”).Save
Excel 334
Objeto Worksheet
• El objeto Worksheet representa una hoja de cálculo Excel. El
objeto ActiveSheet es un subobjeto del objeto Workbook que
entrega el Worksheet activo.
• Se puede copiar, pegar, imprimir, guardar, activar y borrar la
hoja de cálculo. Ejemplo:
With Application.Workbooks(“ClaseIndustrial”)
ActiveSheet.Copy
ActiveSheet.Paste
ActiveSheet.PrintOut
ActiveSheet.SaveAs
ActiveSheet.Activate
ActiveSheet.Delete
End With
Excel 335
Colección Worksheet
• La colección Worksheets contiene a todas las hojas de cálculo que
pertenecen a algún workbook.
• Se le puede dar un nombre a un worksheet en particular para referirse a él.
Ejemplo:
Dim w As Workbook, s As Worksheet
Set w = Workbooks(“Libro1”)
Set s = w.Worksheets(“Hoja1”)
MsgBox s.Range(“a1”).Value
• Se pueden nombrar todas las hojas de un archivo usando el comando For
Each … Next Loop.
Sub MuestraNombres()
Dim w As Worksheet
For Each w In Worksheets
MsgBox w.Name
Next
End Sub
Excel 336
Objeto WorksheetFunction

• El objeto WorksheetFunction permite usar las


funciones de Excel desde VBA.
• Para ver las funciones que existen (todas en inglés)
se puede ocupar el Explorador de Objetos.
• Ejemplo:
area = WorksheetFunction.Pi * r ^ 2
a = WorksheetFunction.Acos(b)
Set TestRange = Worksheets(“Hoja1”).Range(“A1:A5”)
TestSum = WorksheetFunction.Sum(TestRange)
Excel 337
Objeto Range
• El objeto Range representa rangos de celdas. También es posible
acceder a las celdas usando la propiedad Cells de ActiveSheet.
• Ejemplos:
Set notas = Worksheets(“Funciones”).Range(“F2:F13”)
prom = WorksheetFunction.Average(notas)
Worksheets(“Funciones”).Range(“F14”).Value = prom
Worksheets(“Funciones”).Range(“F15”).Formula = “=average(F2:F13)”
Worksheets(“Funciones”).Cells(2, 1).Select
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A1).Value = 10
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2.A10”).Value = 5
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2:A10”).Value = 5
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2”, ”A10”).Value = 5

Excel 338
Objeto Range
• El objeto Range representa rangos de celdas. También es posible
acceder a las celdas usando la propiedad Cells de ActiveSheet.
• Ejemplos:
Set notas = Worksheets(“Funciones”).Range(“F2:F13”)
prom = WorksheetFunction.Average(notas)
Worksheets(“Funciones”).Range(“F14”).Value = prom
Worksheets(“Funciones”).Range(“F15”).Formula = “=average(F2:F13)”
Worksheets(“Funciones”).Cells(2, 1).Select
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A1).Value = 10
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2.A10”).Value = 5
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2:A10”).Value = 5
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2”, ”A10”).Value = 5

Excel 339
Objeto Range

• El objeto Range representa rangos de celdas.


También es posible acceder a las celdas usando la
propiedad Cells de ActiveSheet.
• Ejemplos:
Set notas = Worksheets(“Funciones”).Range(“F2:F13”)
prom = WorksheetFunction.Average(notas)
Worksheets(“Funciones”).Range(“F14”).Value = prom
Worksheets(“Funciones”).Range(“F15”).Formula = “=average(F2:F13)”
Worksheets(“Funciones”).Cells(2, 1).Select
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A1).Value = 10
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2.A10”).Value = 5
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2:A10”).Value = 5
Workbooks(“Libro1”).Worksheets(“Hoja1”).Range(“A2”, ”A10”).Value = 5

Excel 340
Módulos VBA
• Un módulo VBA se compone de procedimientos que son
códigos de ordenador que realizan alguna acción sobre los
objetos o con ellos.
Sub Prueba()
Sum= 1+1
MSGBox “La respuesta es” & Sum
End Sub

Excel 341
Introducir código VBA
Sub Hola()
Msg = “Su nombre es “ & Application.UserName & “?”
Ans = MsgBox(Msg, vbYesNo)
If Ans = VbNo Then
MsgBox “No se preocupe”
Else
MsgBox “Debo ser adivino!”
End If
End Sub

Excel 342
Ejecutar código VBA

• Para ejecutar el procedimiento Hola es necesario


asegurarse que el cursor está situado en cualquier
parte del texto introducido.
• Después se puede optar por uno de los siguientes
métodos:
• Presionar F5
• Seleccionar Ejecutar, Ejecutar Sub/UserForm
• Hacer clic sobre el botón Ejecutar, Ejecutar Sub/UserForm

Excel 343
Subrutinas

• Para escribir Subrutinas en VBA se debe crear un


Módulo que las contenga (Insertar → Módulo)
• Ejemplo:
Public Sub MiSub(A as Integer, B as Double)
‘Código de la subrutina
End Sub
• El alcance puede ser Public o Private que especifica
si el procedimiento se puede llamar de cualquier
parte o sólo desde ese módulo.
• La keyword Sub especifica una subrutina, que a
diferencia de una función no devuelve un resultado.
Excel 344
Subrutinas

• Los parámetros se definen como:


(ByValue) NombreParam as Tipo
donde Tipo puede ser un tipo de dato, por ejemplo:
• Integer: un número entero
• Double: un número real
• Boolean: un número binario (V o F)
• Byte: guarda un valor entre 0 y 255
• String: Caracteres ASCII
• Para pasar sólo los valores usar ByValue

Excel 345
Subrutinas
• Las subrutinas se pueden llamar desde otras partes del
código usando su nombre y agregando los parámetros que
necesita.
• Para llamar a una subrutina llamada MiSub se puede usar:
MiSub 4, 2.87
Call MiSub(4, 2.87)
• También se puede agregar el nombre de la subrutina a
botones u otros controles de VBA.

Excel 346
Funciones
• Las funciones son similares a las subrutinas con la diferencia
que se usa Function en vez de Sub y que retornan un valor
después de ejecutarse.
Public Function Calc_q(y1 As Double, y3 As Double) As Double
Calc_q = 1 / ((Abs(y3 ‐ y1)) ^ 0.74)
End Function
• Se pueden usar como cualquier función de Excel.
Public Function MiFactorial(N As Integer) As Integer
‘Funcion que calcula el factorial de un numero N
MiFactorial = 1
For i% = 1 To N
MiFactorial = i * MiFactorial
Next
End Function

Excel 347
Conceptos Básicos del Lenguaje
• Para comentar el código se usa ‘ o Rem
‘Declaración de variables
Dim y As Double
Dim x As Double
Rem Declaración de Matrices
Dim M(1 To 8, 1 To 8) As Double
Dim N(8, 8) As Double
• Para separar múltiples líneas se usa un guión bajo (_):
K2(1) = dt * dy1dt(y(1) + k1(1) / 2#, y(2) + _
k1(2) / 2#, y(3) + k1(3) / 2#, y(4) + _
k1(4) /2#)
Tiene que haber un espacio antes del underscore.
Excel 348
Variables y Tipos de Datos
• Los datos manipulados en VBA residen en objetos (p.e. rangos de
hojas de cálculo) o en variables que se crean.
• Una variable es una localización de almacenamiento con nombre,
dentro de la memoria del ordenador. Debe tener asociado un tipo de
dato.
• Las reglas para nombrar las variables son:
• Se pueden usar caracteres alfabéticos, números y algún carácter
de puntuación, pero el primero de los caracteres debe ser
alfabético
• VBA no distingue entre mayúsculas y minúsculas
• No se pueden usar espacios ni puntos
• No se pueden incrustar en el nombre de una variable los
siguientes símbolos: #, $, %, !
• La longitud del nombre puede tener hasta 254 caracteres
Excel 349
Tipos de Datos en VBA
Tipo de dato Bytes Rango de valores
Byte 1 0 a 255
Boolean 2 True o False
Integer 2 -32768 a 32767
Long 4 - 2147483648 y 2147483647
Currency 8 -922337203685477.5808 a 922337203685477.5807
Single 4 -3.402823E38 a 3.402823E38
Double 8 -1.79769313486231E308 a 1.79769313486232E308
Date 8 1-1-100 al 31-12-9999 y horarios de 0:00:00 a 23:59:59
String longitud variable (2^31 caracteres). longitud fija (2^16)
Object 4
Variant cualquier clase de datos excepto cadena de longitud fija

Excel 350
Definición de Variables
• Con Dim o Public se declaran las variables:
Dim b As Double, a As Double
Dim n, m As Integer
Dim InerestRate As Single
Dim TodaysDate As Date
Dim UserName As String * 20
Dim x As Integer, y As Integer, z As Integer
Si una variable no se declara se asume de tipo
Variant (tipo genérico).
• En general debe ser:
Dim NombreVariable As DataType
Excel 351
Ámbito de las variables
• El ámbito de una variable determina el módulo y el procedimiento
en el que se puede usar una variable.
Cómo se declara una variable en este
Ámbito
ámbito

Incluye instrucciones Dim, Static o Private


Un procedimiento
dentro del procedimiento.
Incluye una instrucción Dim antes del
Al nivel de módulo
primer procedimiento de un módulo.
Incluye una instrucción Public antes del
Todos los módulos
primer procedimiento de un módulo.
• Variables locales
Una variable local es una variable declarada dentro de un
procedimiento. Estas variables se pueden usar sólo en el
procedimiento en que se declararon. Cuando el procedimiento
finaliza, la variable deja de existir y Excel libera su memoria.
Excel 352
Arrays
• Un array es un grupo de elementos del mismo tipo que tienen un
nombre común; para referirse a un elemento específico de un array se
usa el nombre de la array y un número de índice. Los arrays se definen
similar a las variables, pero con el tamaño:
Arrays de una dimensión
Dim y(1 To 4) As Double
Dim x(4) As Double
Dim MiArray(1 To 100) As Integer
Dim MiArray (100)
Arrays multidimensionales
Dim M(1 To 8, 1 To 8) As Double
Dim N(8, 8) As Double
Dim MiMatriz(1 To 100, 1 to 10) As Integer

Excel 353
Arrays
• Por defecto los subíndices de los arrays de VBA empiezan en 0. Si
deseamos que comience en 1 en vez de en 0, incluiremos antes del
primer array y antes del primer procedimiento la expresión:
Option Base 1 o explícitamente el rango de elementos
• Para acceder a los elementos del array:
y(3) = 2.983
M(1, 2) = 4.321
MiArray(1) = 20
MiMatriz(1,2) = 20
• Si no se sabe el tamaño, se puede usar ReDim:
Dim Matriz() As Double
ReDim Matriz(10)
ReDim Preserve Matriz(12) ‘Mantiene lo que estaba
Excel 354
Definición de Constantes
• Con Const se declaran las constantes:
Const MiConstante As Integer = 14
Const MiConstante2 As Double = 1.025
Const NumTrim As Integer = 4
Const Interés = 0.05, Periodo = 12
Const Nombre Mod as String = “Macros Presupuestos”
Public Const NombreApp As String = “Aplicación Presupuestos”
• Las constantes también poseen un ámbito:
– Si se declaran después de Sub o Function es local.
– Si se declara al inicio de un módulo está disponible para
todo el módulo.
– Si se declara con Public al inicio de un módulo está
disponible para todos los módulos de una hoja de trabajo.
Excel 355
Constantes y Cadenas
• Constantes predeterminadas, que se pueden usar sin
necesidad de declararlas.
Sub CalcManual()
Application.Calculation = xlManual
End Sub
• Cadenas, hay dos tipos de cadenas en VBA:
• De longitud fija, que se declaran con un número específico
de caracteres. La máxima longitud es de 65.536
caracteres.
• De longitud variable, que teóricamente pueden tener hasta
2.000 millones de caracteres.
Dim MiCadena As String * 50
Dim SuCadena As String
Excel 356
Fechas y Expresiones
• Trabajar con Fechas
Dim Hoy As Date
Dim HoraInicio As Date
Const PrimerDía As Date = #1/1/2001#
Const MedioDía As date = #12:00:00#
• Expresiones de asignación, expresión que realiza evaluaciones
matemáticas y asigna el resultado a una variable o a un objeto.
Se usa el signo igual “=“ como operador de asignación.
x=1
x=x+1
x = (y * 2) / (z * 2)
FileOpen = true
Range(“Año”). Value = 1995
Excel 357
Operadores
• OPERADORES ARITMÉTICOS
+ Suma, - Resta, * Multiplicación, / División, \ División entera,
Mod Resto, ^ exponencial, & Concatenación
• OPERADORES COMPARATIVOS
= Igual, < Menor, > Mayor, <= Menor o igual, >= Mayor o igual,
<> Distinto
• OPERADORES LÓGICOS
Not (negación lógica, And (conjunción lógica), Or (disyunción
lógica), XoR (exclusión lógica), Eqv (equivalencia en dos
expresiones), Imp (implicación lógica)

Excel 358
Estructuras WITH...END WITH
• VBA ofrece dos estructuras que simplifican el trabajo con objetos y
colecciones.
• Con WITH...END WITH se permite realizar múltiples operaciones en un
solo objeto.
Sub CambiarFuente()
With Selection.Font
.Name = “Times New Roman”
.FontStyle = “Bold Italic”
.Size = 12
.Underline = xlSingle
.ColorIndex = 5
End With
End Sub
Excel 359
Estructuras FOR EACH...NEXT
• Para una colección no es necesario saber la cantidad de elementos
que existen en ella para usar la estructura For Each...Next.
Sub ContarHojas()
‘Muestra el nombres de las hojas del libro de trabajo activo
Dim Item As Worksheet
For Each Item In ActiveWorkbook.Sheets
MsgBox Item.Name
Next Item
End Sub
Sub VentanasAbiertas()
‘Cuenta el número de ventanas abiertas
Suma = 0
For Each Item In Windows
Suma = Suma + 1
Next Item
MsgBox “Total de ventanas abiertas”, & Suma
End Sub
Excel 360
Condicionales
• Los tests lógicos en VBA tienen la siguiente sintaxis:
If (time = 32000) Then
MsgBox “time vale 32000”
End If
If (MiCondicion = True) Then
MsgBox “Mi Condición es Verdad”
Else
MsgBox “Mi Condición No es Verdad”
End If
If (contador < 10) Then
MsgBox “El Contador es menor a 10”
ElseIf (contador < 20) Then
MsgBox “El Contador es mayor que 10 y menor que 20”
ElseIf (contador < 30) Then
MsgBox “El Contador es mayor que 20 y menor que 30”
End If
Excel 361
Estructuras Select Case
• La estructura Select Case es útil para elegir entre tres o más
opciones
Sub Positivos_Negativos_Cero()
a = InputBox("Ingrese un número")
Select Case a
Case Is > 0
Msg = "Número Positivo"
Case Is < 0
Msg = "Número negativo"
Case Else
Msg = "Cero"
End Select
MsgBox Msg
End Sub
Excel 362
Bucles For…Next
• Esta sentencia de iteración se ejecuta un número determinado de
veces. Su sintaxis es:
For contador = empezar To finalizar [Step valorincremento]
[Instrucciones]
[Exit For]
[instrucciones]
Next [contador]
______________________________________________________________________________

Sub SumaNúmeros
Sum = 0
For Count = 0 To 10
Sum = Sum + Count
Next Count
MsgBox Sum
End Sub
Excel 363
Bucles For…Next
For i = 1 To n
‘Código
Next i
_________________________________
For i = 1 To n Step 2
‘Código
Next i
_________________________________
For i = 1 To n
‘Código
If tiempo >10 Then
Exit For
End If
‘Más Código
Next i

Excel 364
Bucles Do…While, Do…Until
• El bucle se ejecuta hasta que la condición llegue a ser verdadera. Do
Until tiene la sintaxis.
Do Until [condicion]
[instrucciones]
[Exit Do]
[instrucciones]
Loop
_______________________________________________________________________________________________________

Sub DoUntilDemo()
Do
ActiveCell.Value = 0
ActiveCell.Offset(1, 0).Select
Loop Until Not IsEmpty(ActiveCell)
End Sub
Excel 365
Bucles Do
Do While (tiempo < 10)
‘Código
Loop
______________________________________________________________________________________

Do
‘Código
Loop While (tiempo < 10)
_______________________________________________________________________

Do Until (tiempo > 10)


‘Código
Loop
_______________________________________________________________________

Do
‘Más Código
Loop Until (tiempo > 10)
Excel 366
Funciones para cálculos con vectores

• Problema: Se requiere realizar operaciones con vectores


como el producto vectorial o escalar.
• Ejemplo: Funciones_matematicas.xlsx
• Excel no dispone de tales operaciones pero se pueden
definir usando VBA.
• Ejemplo: para calcular la magnitud o módulo de un vector
3d se define una función v_Mag a la que se pasa como
parámetro el rango de las celdas, es decir su uso es:
=v_Mag(rango_celdas)
donde rango_celdas consta de tres celdas (x, y, z)
Excel 367
Código para la función v_Mag
Public Function v_Mag(v As Range) As Double
Dim x As Double
Dim y As Double
Dim z As Double

x = v.Cells(1).Value
y = v.Cells(2).Value
z = v.Cells(3).Value

v_Mag = Sqr(x ^ 2 + y ^ 2 + z ^ 2)
End Function

Excel 368
Funciones para cálculos con vectores

• Ejemplo: para calcular el producto vectorial de dos


vectores 3d se define una función v_CrossProduct a la
que se pasa como parámetros dos rangos de las celdas.
• Como el resultado de esta función es un array, es
necesario seleccionar el rango de celdas del resultado y
teclear simultáneamente Ctrl – Mayúscula – Entrar. Es
decir su uso es:
{=v_CrossProduct(rango1,rango2)}
u(x1,y1,z1)
v(x2,y2,z2)
Excel 369
Código para la función v_CrossProduct
Public Function v_CrossProduct(u As Range, v As Range)
' Declaracion de variables locales:
Dim ux As Double
Dim uy As Double
Dim uz As Double
Dim vx As Double
Dim vy As Double
Dim vz As Double
Dim ReturnArray(3)
Dim DoTranspose As Boolean
' Determina si el rango de resultado seleccionado es un array fila o columna:
If Application.Caller.Rows.Count > 1 Then
DoTranspose = True
Else
DoTranspose = False
End If
' Obtiene los vectores componentes:
ux = u.Cells(1).Value
uy = u.Cells(2).Value
uz = u.Cells(3).Value

Excel 370
Código para la función v_CrossProduct

vx = v.Cells(1).Value
vy = v.Cells(2).Value
vz = v.Cells(3).Value

' Calculo del producto vectorial:


ReturnArray(0) = (uy * vz - uz * vy)
ReturnArray(1) = (uz * vx - ux * vz)
ReturnArray(2) = (ux * vy - uy * vx)

' Si el rango resultado seleccionado es una columna de celdas se transpone:


If DoTranspose Then
v_CrossProduct = Application.WorksheetFunction.Transpose(ReturnArray)
Else
v_CrossProduct = ReturnArray
End If Uso de función Excel
End Function

Excel 371
Depuración

• Para desplegar menú de depuración:


Ver → Barras de Herramientas → Depuración
• Para crear un breakpoint haga click en la zona que se
encuentra al lado del código (donde está el punto rojo).
• Para poder ir paso a paso se puede usar F8 sobre un
procedimiento.
• Se pueden ver las variables con las ventanas Locales,
Inmediato e Inspección.
• Para imprimir en Inmediato: Debug.Print x

Excel 372
Depuración

Excel 373
Formularios

• Se puede agregar Formularios a las hojas de cálculo


para realizar algunas tareas específicas y como GUI.
• Para insertar un formulario ir a Insertar → UserForm.
• Se le pueden agregar controles a los formularios para
darles distintas funcionalidades.
• Para mostrar un Formulario primero se diseña con un
nombre (p.e. UserForm1) y después se usa el método
Show. Para esconderlo se usa el método Hide. Ejemplo:
Sub MostrarForm()
UserForm1.Show
End Sub
Excel 374
Formularios

Excel 375
Formularios

• Se le puede insertar código a cada uno de los objetos


que componen el formulario.
• Presionando F7 se muestra el código detrás del
formulario.
• En el ComboBox de la izquierda (el que dice
CommandButton1) se muestran los objetos que
componen el formulario.
• En el ComboBox de la derecha (el que dice Click) se
muestran los eventos que pueden ocurrir para cada
objeto donde se puede insertar código.
Excel 376
Formularios

Excel 377
Ejemplos de hojas

• Controles_VBA.xlsx, donde se muestran controles y


macros.
• primos.xlsm, para calcular números primos y
descomposición en factores primos
• lissajous.xlsm, donde se genera curvas lissajous con vba.
• proyectil.xlsm, que muestra una aplicación para el cálculo
de la trayectoria de un proyectil.
• formularios.xlsm, muestra el uso de formularios con VBA.
• Ecuaciones_VBA.xls, que muestra la invocación de
funciones Excel desde VBA.
Excel 378
Controles

• En cualquier programa MS Office se puede agregar


controles que pueden interactuar con los datos y con
otros controles.
• Se utiliza la barra de controles para insertarlos y
manipularlos.
• Cada objeto tiene asociado una serie de propiedades
que se pueden modificar y se les puede asociar una
macro o programa VBA.
• Ejemplo: controles_VBA.xls

Excel 379
Controles - Diseño

Excel 380
Tipos de Controles

• Casilla de Verificación • Cuadro de Texto


• Botón de Comando • Botón de Opción
• Cuadro Combinado • Cuadro de Lista
• Botón o Control de Número • Botón de Alternar
• Etiqueta
• Slider
• Etiqueta

Excel 381
Macros

• Las macros de Excel permite automatizar tareas


repetitivas utilizando un grabador de macros.
• Mientras se graba la macro, todas las acciones que
se realicen en Excel quedan guardadas en un módulo
asociado al libro en lenguaje Visual Basic para
Aplicaciones (VBA).
• Se puede crear la macro con referencia absoluta o
referencia relativa.
• Las macros se pueden ejecutar directamente o con
combinación de teclas. Para ver las macros pulsar Alt
+ F8.
Excel 382
Macros

• Un modo de crear una macro es grabar la macro.


– En el menú Herramientas→Macro →Grabar
nueva macro.
• Una vez grabada la macro, se puede examinar el
código generado en el Editor de Visual Basic para ver
cómo funciona el código.
– En el menú Herramientas →Macro→Macros para
buscar la macro grabada. Seleccionarla y hacer
clic en Editar para ver el código.

Excel 383
Macros - Diseño

Excel 384
Escribir Macros
• El Editor de Visual Basic es una herramienta para
escribir y modificar código escrito en VBA
• Para abrir el Editor de Visual Basic: En el menú
Herramientas → Macro → Editor de Visual Basic o
Alt+F11.
• Las macros se almacenan en módulos de un libro de
trabajo.
• Los módulos se agregan en el Editor de Visual Basic
seleccionando Módulo en el menú Insertar del editor.
• Debe aparecer una ventana de módulo vacía dentro
de la ventana principal del Editor de Visual Basic.

Excel 385
Macros - Editor VB

Excel 386
Asignar nombre a la Macro

• En la ventana del módulo se escribe la palabra Sub


seguido del nombre de la macro.
• Por ejemplo, Sub MiMacro , crearía una nueva macro
llamada MiMacro.
• El Editor de Visual Basic insertará automáticamente
los paréntesis y End Sub.

Excel 387
Asignar código a la Macro
• Si se desea mostrar un mensaje simple escribir MsgBox “Mi
primera macro”.
• MsgBox es la palabra que VBA utiliza para los cuadros de
mensaje.
• Si se ejecuta la macro, Excel mostraría un mensaje con el texto
Mi primera macro y un botón Aceptar para cerrar el mensaje.

Excel 388
Macros de Bucle
• Las macros de bucle funcionan recorriendo los datos de
celdas para realizar acciones automáticamente de
manera repetida.
• Hay varias instrucciones que permiten crear este tipo de
macros:
– For Each…Next
– For ... Next
– For ... Next Loop With Step
– Do While ... Loop
– Do Until ... Loop
– Do ... Loop While
– Do ... Loop Until
Excel 389
Macro de Bucle For Each…Next

• For Each…Next se usa para realizar una acción en


cada celda de un grupo de datos.
• Ejemplo: Código para que la palabra "Aceptar"
aparezca en negrita en cualquier lugar del grupo de
datos seleccionado

Excel 390
Propiedad Cells y Range

• Hay dos métodos para llevar los datos de una celda a


código VBA: propiedad Cells y Range.
• La propiedad Range identifica las filas y columnas
mediante los números y las letras de la hoja de
cálculo.
• La propiedad Cells utiliza números para las filas y las
columnas (Herramientas → Opciones → General →
"Estilo de referencia F1C1“)

Excel 391
Ejemplos de Macros

• Ejemplo1: Macro que usa Do While…Loop para


combinar dos columnas en otra.

Pepelu Rodriguez Pepelu Rodriguez


Iker Casillas Iker Casillas
Cristiano Ronaldo Cristiano Ronaldo
Jaime Peñafiel Jaime Peñafiel
Teresa Berlanga Teresa Berlanga
Ainoha Arteta Ainoha Arteta
Pedro Mamani Pedro Mamani

Excel 392
Ejemplos de Macros

• Ejemplo2: Bucle For Each…Next lee cada celda y le


aplica color según el contenido.

Libro Libro
Pelicula Pelicula
Revista Revista
Lee Libro Lee Libro
Ver pelicula Ver pelicula
Vino Vino
Texto Texto
Libro texto Libro texto

Excel 393
Ejemplos de Macros

• Ejemplo3: Elimina filas que contienen duplicados en


las columnas D y F.

Elemento 1 Azul En existencia


Elemento 2 Verde Sin existencias
Elemento 1 Rojo En existencia
Elemento 2 Mediano Sin existencias

Excel 394
Evaluación de derivadas

Excel 395
Diferenciación de funciones continuas

• La definición matemática de la derivada empieza con


una aproximación de la diferencia finita:
∆y f (xi + ∆x) − f (xi )
=
∆x ∆x
cuando ∆x tiende a cero, la diferencia se convierte en
derivada: dy = lim f (xi + ∆x) − f (xi )
dx ∆x→0 ∆x

Diferenciación 396
Derivadas a partir de datos

• Cuando se tiene un conjunto de datos de la forma (xi,


yi) se puede aproximar la derivada en un punto i
mediante varias diferencias:
– Diferencia finita en adelanto (forward finite-difference)
– Diferencia finita en atraso (backward finite-difference)
– Diferencia finita centrada (centered finite-difference)
• La expansión de la serie de Taylor se puede usar
para generar fórmulas de gran precisión para las
derivadas aplicando algebra lineal para combinar la
expansión alrededor de varios puntos.
Diferenciación 397
Aproximación por diferencia en adelanto
lim f ( x + Δx ) − f ( x )
f ′( x ) =
Δx → 0 Δx
f (x + ∆x ) − f ( x )
Para un finito ' Δx' f ′( x ) ≈
∆x
f(x)

x x+Δx
Graphical Representation of forward difference approximation of first derivative.

Diferenciación 398
Aproximación por diferencia en atraso
lim f ( x + Δx ) − f ( x )
• Sabemos que f ′( x ) =
Δx → 0 Δx
f (x + ∆x ) − f ( x )
• Para un finite ' Δx' , f ′( x ) ≈
∆x

• Si ' Δx' se toma como número negativo,


f ( x − ∆x ) − f ( x ) f ( x ) − f ( x − Δx )
f ′( x ) ≈ =
− ∆x Δx

Diferenciación 399
Aproximación por diferencia en atraso

• This is a backward difference approximation as you


are taking a point backward from x. To find the value
of f ′(x ) at x = xi, we may choose another point ' Δx'
behind as x = xi −1 . This gives
f ( xi ) − f ( xi −1 )
f ′( xi ) ≈
∆x
f ( xi ) − f ( xi −1 ) f(x)
=
xi − xi −1

where
x

x-Δx x

Δx = xi − xi −1 Graphical Representation of backward


difference approximation of first derivative.

Diferenciación 400
Obtención de la adad a partir de las series
de Taylor
• Taylor’s theorem says that if you know the value of a
function f at a point xi and all its derivatives at that
point, provided the derivatives are continuous
between xi and xi +1 , then
f ′′( xi )
f ( xi +1 ) = f ( xi ) + f ′( xi )( xi +1 − xi ) + (xi +1 − xi )2 + 
2!
Substituting for convenience Δx = xi +1 − xi
f ′′( xi )
f (xi +1 ) = f (xi ) + f ′(xi )Δx + (Δx )2 + 
2!
f ( xi +1 ) − f ( xi ) f ′′(xi )
f ( xi ) =
′ − (∆x ) + 
∆x 2!
f ( xi +1 ) − f ( xi )
f ′( xi ) = + O(∆x )
∆x
Diferenciación 401
Obtención de la adad a partir de las series
de Taylor
• The O(∆x ) term shows that the error in the approxima-
tion is of the order of ∆x . It is easy to derive from
Taylor series the formula for backward divided
difference approximation of the first derivative.
• As shown above, both forward and backward divided
difference approximation of the first derivative are
accurate on the order of O(∆x ) .
• Can we get better approximations? Yes, another
method is called the Central difference approxima-
tion of the first derivative.
Diferenciación 402
Obtención de la adc a partir de las series
de Taylor
• From Taylor series
f ′′( xi ) f ′′′(xi )
f ( xi +1 ) = f ( xi ) + f ′( xi )Δx + (Δx ) +
2
(Δx )3 +  (1)
2! 3!
f ′′( xi ) ′′′( )
f ( xi −1 ) = f ( xi ) − f ′( xi )Δx + (Δx )2 − f xi (Δx )3 +  (2)
2! 3!

Subtracting equation (2) from equation (1)


2 f ′′′( xi )
f ( xi +1 ) − f ( xi −1 ) = f ′( xi )(2∆x ) + (∆x )3 + 
3!
f ( xi +1 ) − f ( xi −1 ) f ′′′( xi )
f ′( xi ) = − (∆x )2 + 
2∆x 3!

f (xi +1 ) − f (xi −1 )
f ′( xi ) = + O(∆x )
2

2∆x

Diferenciación 403
Obtención de la adc a partir de las series
de Taylor
• Hence showing that we have obtained a more
accurate formula as the error is of the order of O(∆x )2

f(x)

x
x-Δx x x+Δx

Graphical Representation of central difference approximation of first derivative

Diferenciación 404
Fórmula de 5 puntos

• La fórmula de 5 puntos corresponde a la diferencia


finita centrada con error de orden cuartico
f ( xi ) = ( f (xi −2 ) − 8 f (xi −1 ) + 8 f (xi +1 ) − f (xi + 2 ))
1
12∆x

• Ejemplo: derivadas.xlsx

Diferenciación 405
Fórmulas de diferencia finita en adelanto

Diferenciación 406
Fórmulas de diferencia finita en atraso

Diferenciación 407
Fórmulas de diferencia finita centrada

Diferenciación 408
Ecuaciones diferenciales
ordinarias

Excel 409
Ecuaciones diferenciales de primer orden

• Hay varios métodos disponibles para resolver


numéricamente ecuaciones diferenciales.
• Los métodos de solución más utilizados para
– Problemas de valor inicial son: Euler, Euler mejorado,
Runge Kutta.
– Problemas de contorno: método de disparo, método de
diferencias finitas, extrapolación Richardson
• Ejemplo: ec_diferenciales.xlsx

Excel 410
Ecuaciones diferenciales de primer orden
y valor inicial
• Problema: se requiere hallar la solución de una
ecuación diferencial de primer orden de la forma:
𝑑𝑑𝑑𝑑
= 𝑓𝑓 𝑥𝑥, 𝑦𝑦
𝑑𝑑𝑑𝑑 y = e^x - x - 1
𝑦𝑦(0) = 𝑎𝑎 0.8

0.7

𝑑𝑑𝑑𝑑
• Ejemplo: = 𝑥𝑥 + 𝑦𝑦
0.6

𝑑𝑑𝑑𝑑 0.5

0.4

𝑦𝑦 0 = 0 0.3

0.2

Solución: 𝑦𝑦 = 𝑒𝑒 𝑥𝑥 − 𝑥𝑥 − 1 0.1

0
0 0.2 0.4 0.6 0.8 1

• Usaremos esta ecuación para comparar


Excel 411
Método de Euler

• No es el mejor método (requiere un tamaño de paso


pequeño para mejorar la precisión), pero es simple
para mostrar la mecánica de su implementación en
Excel y VBA.
• El método de Euler se basa en considerar los dos
primeros términos de la expansión en Serie de Taylor
de una función para predecir el valor de la función en
algún punto, conociendo el valor de la función en otro
punto y la derivada de esa función.

Excel 412
Método de Euler

• La expansión en series de Taylor de y es:


𝑑𝑑𝑑𝑑 (∆𝑥𝑥)2 𝑑𝑑 2 𝑦𝑦 (∆𝑥𝑥)3 𝑑𝑑3 𝑦𝑦
𝑦𝑦 𝑥𝑥 + ∆𝑥𝑥 = 𝑦𝑦 𝑥𝑥 + ∆𝑥𝑥 + 2
+ 3

𝑑𝑑𝑑𝑑 2! 𝑑𝑑𝑥𝑥 3! 𝑑𝑑𝑥𝑥
• El método de Euler considera los dos primeros
términos de la expansion, descartando los términos
de orden superior que constituyen el error de
truncamiento del método.
• Se conoce dy/dx (la ecuación diferencial) y se calcula
y para valores de x empezando en el valor inicial.

Excel 413
Método de Euler

• La expansión Taylor es fácil de implementar en una


hoja o haciendo uso de VBA para hacerlo más
versátil.
• Usando solo hoja de cálculo:
– La solución se implementa como una tabla con una
columna x en la que se calcula en cada fila un valor según
el valor anterior más el paso. La columna y contiene la
fórmula de Euler para el siguiente valor de y, según:
𝑑𝑑𝑑𝑑
𝑦𝑦 𝑥𝑥 + ∆𝑥𝑥 = 𝑦𝑦 𝑥𝑥 + ∆𝑥𝑥
𝑑𝑑𝑑𝑑

Excel 414
Método de Euler

– El error disminuye conforme disminuye el tamaño de paso


para la variable paso x. Esto significa que se necesitan
más cálculos con un paso pequeño para cubrir un rango
equivalente en x. La cantidad de filas necesarias para
pasos pequeños crece bastante, siendo engorroso si se
quiere graficar los resultados, cambiar el rango o cambiar
el tamaño de paso. En ese caso es mejor usar VBA.
• Usando VBA:
– La subrutina diseñada calcula los valores estimados de y
para un rango de valores x y coloca los resultados en la
hoja a partir de la fila 2 en las columnas A y B
Excel 415
Método de Euler

• Código:
Public Sub DoEuler1stOrder() For i = 1 To n
Dim yn As Double yn1 = yn + (xn + yn) * dx
Dim yn1 As Double xn = xn + dx
Dim xn As Double yn = yn1
Dim dx As Double ActiveSheet.Cells(i + 1, 1) = xn
Dim n As Integer ActiveSheet.Cells(i + 1, 2) = yn
yn = 0 Next i
xn = 0 End Sub
dx = 0.001
n = 1000

El problema con el código anterior es el mismo que se mencionó para la


hoja, el número de filas puede ser muy grande cuando se usa un paso
pequeño.
Excel 416
Método de Euler
Se puede añadir una condición para que imprima los resultados cada
cierta cantidad de pasos (p.e. 100) con el fin de mantener un número de
filas de resultados manejable.
For i = 1 To n
Public Sub DoEuler1stOrder() yn1 = yn + (xn + yn) * dx
xn = xn + dx
Dim yn, yn1, xn, dx As Double
yn = yn1
Dim n, C, k As Integer
If C >= (n / 10) Then
ActiveSheet.Cells(k + 1, 1) = xn
yn = 0
ActiveSheet.Cells(k + 1, 2) = yn
xn = 0
k=k+1
dx = 0.0001
C=0
n = 11000 Else
C = n / 10 C=C+1
k=1 End If
Next i
End Sub
Excel 417
Método Runge-Kutta aplicado a
problemas de valor inicial de 2do orden
• Problema: se requiere resolver numéricamente la
ecuación diferencial de segundo orden de la forma:
𝑑𝑑2 𝑦𝑦 𝑑𝑑𝑑𝑑
𝐴𝐴 2 + 𝐵𝐵 = 𝑓𝑓 𝑥𝑥, 𝑦𝑦
𝑑𝑑𝑥𝑥 𝑑𝑑𝑑𝑑
𝑦𝑦 0 =∝
𝑑𝑑𝑑𝑑
0 = 𝛽𝛽
𝑑𝑑𝑑𝑑

• Se puede utilizar cualquier técnica de integración


numérica usando Excel o VBA

Excel 418
Método Runge-Kutta aplicado a
problemas de valor inicial de 2do orden
• Considerar la siguiente ecuación y condiciones
iniciales: 2
𝑑𝑑 𝑠𝑠 𝑑𝑑𝑠𝑠
𝑚𝑚 2 + 𝐶𝐶𝑑𝑑 = 𝑇𝑇
𝑑𝑑𝑡𝑡 𝑑𝑑𝑡𝑡
𝑠𝑠 0 = 0
𝑑𝑑𝑠𝑠
0 =0
𝑑𝑑𝑡𝑡
• Físicamente representa la ecuación del movimiento
de un objeto sujeto a un empuje T. m es la masa, Cd
un factor de rozamiento y s la posición del objeto.

Excel 419
Método Runge-Kutta aplicado a
problemas de valor inicial de 2do orden
• Para resolver la ecuación de movimiento se reescribe
para obtener dos ecuaciones de primer orden:
𝑑𝑑𝑑𝑑
si hacemos: 𝑣𝑣 =
𝑑𝑑𝑑𝑑
𝑑𝑑𝑣𝑣
𝑚𝑚 = 𝑇𝑇 − 𝐶𝐶𝑑𝑑 𝑣𝑣
𝑑𝑑𝑑𝑑
𝑑𝑑𝑑𝑑
= 𝑣𝑣
𝑑𝑑𝑑𝑑
𝑠𝑠𝑡𝑡=0 = 0
𝑣𝑣𝑡𝑡=0 = 0
• Se obtiene dos ecuaciones de primer orden
acopladas, a las que se aplican técnicas numéricas.
Excel 420
Método Runge-Kutta aplicado a
problemas de valor inicial de 2do orden
• El método de Runge Kutta se basa en tomar más
términos de la serie de Taylor de la función, que se
traduce en expandir más series de Taylor para
estimar las derivadas de mayor orden.
• El enfoque RK reduce el error de truncamiento a un
orden de (dt)5 en oposición a (dt)2 del método de
Euler, con lo que se puede aumentar el paso
manteniendo la precisión.
• El compromiso es que hay que realizer más cálculos
en cada paso.
Excel 421
Método Runge-Kutta aplicado a
problemas de valor inicial de 2do orden
• Las ecuaciones generales de Runge Kutta para la
integración son:
𝑘𝑘1 = 𝑦𝑦 ′ (𝑥𝑥, 𝑦𝑦)(∆𝑥𝑥)

∆𝑥𝑥 𝑘𝑘1
𝑘𝑘2 = 𝑦𝑦 (𝑥𝑥 + , 𝑦𝑦 + )(∆𝑥𝑥)
2 2

∆𝑥𝑥 𝑘𝑘2
𝑘𝑘3 = 𝑦𝑦 (𝑥𝑥 + , 𝑦𝑦 + )(∆𝑥𝑥)
2 2
𝑘𝑘4 = 𝑦𝑦 ′ (𝑥𝑥 + ∆𝑥𝑥, 𝑦𝑦 + 𝑘𝑘3 )(∆𝑥𝑥)
(𝑘𝑘1 +2𝑘𝑘2 +2𝑘𝑘3 +𝑘𝑘4 )
𝑦𝑦 𝑥𝑥 + ∆𝑥𝑥 = 𝑦𝑦 𝑥𝑥 +
6
donde: 𝑦𝑦 ′ representa 𝑑𝑑𝑑𝑑⁄𝑑𝑑𝑑𝑑

Excel 422
Método Runge-Kutta aplicado a
problemas de valor inicial de 2do orden
For i = 1 To n ' Start iterations
Public Sub DoRK2ndOrder() F = (t - (Cd * Vn)) ' Compute k1
Dim t, Cd, M, dt As Double ' Thrust, Drag coefficient, Mass A =F/M
Dim dt, F, A As Double ' Time step size, Force, Acceleration k1 = dt * A
Dim Vn As Double ' Velocity at time t F = (t - (Cd * (Vn + k1 / 2))) ' Compute k2
Dim Vn1 As Double ' Velocity at time t + dt A =F/M
Dim Sn As Double ' Displacement at time t k2 = dt * A
Dim Sn1 As Double ' Displacement at time t + dt F = (t - (Cd * (Vn + k2 / 2))) ' Compute k3
Dim time As Double ' Total time A=F/M
Dim k1, k2, k3, k4 As Double ' RK k1, RK k2, RK k3, RK k4 k3 = dt * A
Dim n As Integer ' Counter controlling total number of time steps F = (t - (Cd * (Vn + k3))) ' Compute k4
Dim C As Integer ' Counter controlling output of results to spreadsheet A=F/M
Dim k As Integer ' Counter controlling output row k4 = dt * A
Dim r As Integer ' Number of output rows Vn1 = Vn + (k1 + 2 * k2 + 2 * k3 + k4) / 6 ' Compute velocity at t + dt
With ActiveSheet ' Extract given data from the active spreadsheet: Sn1 = Sn + Vn1 * dt ' Compute displacement at t + dt using Euler
dt = .Range("dt") time = time + dt ' Update variables
t = .Range("T") Vn = Vn1
M = .Range("M") Sn = Sn1
Cd = .Range("Cd") If C >= n / r Then ' Output results to the active spreadsheet
n = .Range("n") ActiveSheet.Cells(k + 1, 1) = time
r = .Range("r_") ActiveSheet.Cells(k + 1, 2) = Sn
End With ActiveSheet.Cells(k + 1, 3) = Vn
k=1 ' Initialize variables k=k+1
time = 0 C=0
C=n/r Else
Vn = 0 C=C+1
Sn = 0 End If
Next i
End Sub
Excel 423
Ecuaciones diferenciales con condiciones
de contorno o de frontera
• Hay problemas que se modelizan mediante una
ecuación diferencial de segundo orden con
condiciones en sus dos extremos [a, b], que se
denomina ecuación diferencial ordinaria con valores
en la frontera o contorno. Se formula como:
𝑦𝑦 ′′ = 𝑓𝑓 𝑡𝑡, 𝑦𝑦, 𝑦𝑦 ′ , 𝑦𝑦 𝑎𝑎 = 𝛼𝛼, 𝑦𝑦 𝑏𝑏 = 𝛽𝛽

• Hay varios métodos para hallar la solución:


– Método del disparo (shooting method)
– Métodos de las diferencias finitas
– Método de colocación y de elementos finitos
Excel 424
Ejemplo de método de disparo

• Se requiere resolver la siguiente ecuación diferencial


ordinaria con condiciones de frontera:
𝑑𝑑 2 𝑢𝑢
= 2𝑡𝑡 𝑢𝑢 0 = 0, 𝑢𝑢 1 = 1 0 < 𝑡𝑡 < 1
𝑑𝑑𝑡𝑡 2
es una ecuación de segundo orden sujeta a condiciones de
contorno
• Si hacemos: 𝑦𝑦2 = 𝑢𝑢 y 𝑦𝑦1 = 𝑑𝑑𝑑𝑑⁄𝑑𝑑𝑑𝑑 = 𝑑𝑑𝑦𝑦2 ⁄𝑑𝑑𝑑𝑑 para
reducir la ecuación de segundo orden en dos de
primer orden:
𝑑𝑑𝑦𝑦2 𝑑𝑑𝑦𝑦1
= 𝑦𝑦1 , = 2𝑡𝑡 𝑦𝑦2 0 = 0 𝑦𝑦2 1 = 1 0 < 𝑡𝑡 < 1
𝑑𝑑𝑡𝑡 𝑑𝑑𝑑𝑑
Excel 425
Método de disparo

• Se basa en encontrar la ecuación diferencial que


tiene la misma solución que la del contorno que se
estudia.
• Para ello se resuelve como un problema de valor
inicial usando un algoritmo de avance como Euler o
Runge Kutta, asumiendo un valor inicial para las
condiciones iniciales desconocidas.
• Cuando el proceso se completa se verifica si los
valores obtenidos satisfacen las condiciones de
contorno . Sino se repite con otros valores.
Excel 426
Método de disparo

• El proceso iterativo es
ideal para Solver.
• Todo el proceso se realiza
combinando Solver y el
método de Euler.
• En Solver solo se
especifica la celda variable
y la condición que debe
cumplirse (cond. frontera)

Excel 427
Sistemas de ecuaciones
lineales

Sistemas de ec. lineales 428


Matrices

• A matrix consists of a rectangular array of elements


represented by a single symbol (example: [A]).
• An individual entry of a matrix is an element
(example: a23)

Sistemas de ec. lineales 429


Matrices especiales

• Matrices where m=n are called square matrices.


• There are a number of special forms of square
matrices:
Symmetric Diagonal Identity
5 1 2 a11  1 
     
[A] = 1 3 7 [A] =  a22  [A] =  1 
2 7 8  a33   1

Upper Triangular Lower Triangular Banded


a11 a12 a13  a11  a11 a12 
     
[A] =  a22 a23  [A] = a21 a22  [A] = a21 a22 a23 
 a33  a31 a32 a33   a32 a33 a34 
 
 a43 a44 
Sistemas de ec. lineales 430
Multiplicación matricial

• The elements in the matrix [C] that results from


multiplying matrices [A] and [B] are calculated using:
n
c ij = ∑ aik bkj
k=1

Sistemas de ec. lineales 431


Representación de Algebra Lineal

• Matrices provide a concise notation for representing


and solving simultaneous linear equations:

a11 x1 + a12 x 2 + a13 x 3 = b1 a11 a12 a13  x1   b1 


    
a21 x1 + a22 x 2 + a23 x 3 = b2 a21 a22 a23  x 2  = b2 
a31 x1 + a32 x 2 + a33 x 3 = b3 a31 a32 a33  x 3  b3 

[A]{x} = {b}

Sistemas de ec. lineales 432


Matriz inversa

• Recall that if a matrix [A] is square, there is another


matrix [A]-1, called the inverse of [A], for which
[A][A]-1=[A]-1[A]=[I]
• The inverse can be computed in a column by column
fashion by generating solutions with unit vectors as
the right-hand-side constants:
1 0 0
[A]{x1} = 0 [A]{x 2 } = 1 [A]{x 3} = 0
0 0 1

[A] = [x1 x3 ]
−1
x2
Sistemas de ec. lineales 433
Matriz inversa y sistemas estímulo -
respuesta
• Recall that LU factorization can be used to efficiently
evaluate a system for multiple right-hand-side vectors
- thus, it is ideal for evaluating the multiple unit vectors
needed to compute the inverse.
• Many systems can be modeled as a linear
combination of equations, and thus written as a matrix
equation:
[Interactions]{response} = {stimuli}
• The system response can thus be found using the
matrix inverse.
Sistemas de ec. lineales 434
Normas vectoriales y matriciales

• A norm is a real-valued function that provides a


measure of the size or “length” of multi-component
mathematical entities such as vectors and matrices.
• Vector norms and matrix norms may be computed
differently.

Sistemas de ec. lineales 435


Normas vectoriales

• For a vector {X} of size n, the p-norm is:


n 
1/ p

= ∑ x i 
p
X
 i=1 
p

• Important examples of vector p-norms include:


n
p = 1 : sum of the absolute values X 1 = ∑ xi
i =1
n
p = 2 : Euclidian norm (length) X 2
= Xe= ∑ i
x 2

i =1
p = ∞ : maximum − magnitude X ∞
= max xi
1≤i ≤ n

Sistemas de ec. lineales 436


Normas matriciales

• Common matrix norms for a matrix [A] include:


n
column - sum norm A 1 = max ∑ aij
1≤ j≤n
i=1
n n
Frobenius norm Af = ∑∑ ij
a 2

i=1 j=1
n
row - sum norm A ∞ = max ∑ aij
1≤i≤n
j=1

A 2 = (µ max )
1/2
spectral norm (2 norm)

• Note - µmax is the largest eigenvalue of [A]T[A].

Sistemas de ec. lineales 437


Número de condición de una matriz

• The matrix condition number Cond[A] is obtained by


calculating Cond[A]=||A||·||A-1||
• In can be shown that: ∆X ≤ Cond[A] ∆A
X A
• The relative error of the norm of the computed
solution can be as large as the relative error of the
norm of the coefficients of [A] multiplied by the
condition number.
• If the coefficients of [A] are known to t digit precision,
the solution [X] may be valid to only
t-log10(Cond[A]) digits.
Sistemas de ec. lineales 438
Método iterativo: Gauss - Seidel

• The Gauss-Seidel method is the most commonly used iterative


method for solving linear algebraic equations [A]{x}={b}.
• The method solves each equation in a system for a particular
variable, and then uses that value in later equations to solve later
variables. For a 3x3 system with nonzero elements along the
diagonal, for example, the jth iteration values are found from the j-
1th iteration using:
b1 − a12 x2 − a13 x3
j−1 j−1
x =
1
j

a11
b2 − a21 x1j − a23 x3j−1
x =
j
2
a22
b3 − a31 x1j − a32 x2j
x =
j
3
a33
Sistemas de ec. lineales 439
Iteración de Jacobi

• The Jacobi iteration is similar to the Gauss-Seidel


method, except the j-1th information is used to
update all variables in the jth iteration:
a) Gauss-Seidel
b) Jacobi

Sistemas de ec. lineales 440


Convergencia

• The convergence of an iterative method can be


calculated by determining the relative percent change
of each element in {x}. For example, for the ith
element in the jth iteration,
xij − xij −1
ε a ,i = j
×100%
xi
• The method is ended when all elements have
converged to a set tolerance.

Sistemas de ec. lineales 441


Dominancia diagonal

• The Gauss-Seidel method may diverge, but if the


system is diagonally dominant, it will definitely
converge.
• Diagonal dominance means:
n
aii > ∑ aij
j=1
j≠i

Sistemas de ec. lineales 442


Relajación

• To enhance convergence, an iterative program can


introduce relaxation where the value at a particular
iteration is made up of a combination of the old value
and the newly calculated value:
xinew = λxinew + (1 − λ )xiold
where λ is a weighting factor that is assigned a value
between 0 and 2.
– 0<λ<1: underrelaxation
– λ=1: no relaxation
– 1<λ≤2: overrelaxation
Sistemas de ec. lineales 443
Ecuaciones diferenciales en
derivadas parciales

Excel 444
Ecuaciones en derivadas parciales

• Ordinary Differential Equations have only one


independent variable
dy
3 + 5 y 2 = 3e − x , y (0) = 5
dx
• Partial Differential Equations have more than one
independent variable
∂ u ∂ u
2 2
3 2 + 2 = x2 + y2
∂x ∂y
• subject to certain conditions: where u is the
dependent variable, and x and y are the independent
variables.
Ec. derivadas parciales 445
Clasificación de EDPs de 2 orden

∂ 2u ∂ 2u ∂ 2u
A 2 +B +C 2 + D = 0
∂x ∂x∂y ∂y
• where A, B, and C are functions of x and y , and
.D is a function of
∂u ∂u
x, y, u and , .
∂x ∂y
• can be:
Elliptic if B2 – 4AC < 0
Parabolic if B2 – 4AC = 0
Hyperbolic if B2 – 4AC > 0
Ec. derivadas parciales 446
Ejemplos de EDPs de 2 orden

• Elliptic A = 1, B = 0, C = 1
∂ 2T ∂ 2T
+ 2 =0 Laplace equation
∂x 2
∂y
• Parabolic A = k , B = 0, C = 0
∂T ∂ T 2
=k 2 Heat equation
∂t ∂x
• Hyperbolic
1
A = 1, B = 0, C = −
c2
∂2 y 1 ∂2 y
= 2 2 Wave equation
∂x 2
c ∂t

Ec. derivadas parciales 447


Ejemplo físico de una PDE elíptica
y

Tt

W Tl Tr

x
Tb
L

• Schematic diagram of a plate with specified temperature boundary


conditions
∂ 2T ∂ 2T
• The Laplace equation governs the temperature: + 2 =0
∂x
2
∂y
Ec. derivadas parciales 448
Discretizando la PDE elíptica
L
y ∆x =
Tt m
(0, n) W
∆x ∆y = (i, j + 1)
n ∆y ∆x
∆y Tr
Tl (i, j ) (i − 1, j ) (i, j ) (i + 1, j )

x (i, j − 1)
(0,0)
Tb (m,0)

∂ 2T T ( x + ∆x, y ) − 2T ( x, y ) + T ( x − ∆x, y )
( x, y ) ≅
∂x 2
(∆x )2
∂ 2T T ( x, y + ∆y ) − 2T ( x, y ) + T ( x, y − ∆y )
( x , y ) ≅
∂y 2 (∆y )2
Ec. derivadas parciales 449
Discretizando la PDE elíptica
y
Tt
(0, n)
∆x (i, j + 1)
∆y ∆x
∆y Tr
Tl (i, j ) (i − 1, j ) (i, j ) (i + 1, j )

x (i, j − 1)
(0,0)
Tb (m,0)

∂ 2T T ( x + ∆x, y ) − 2T ( x, y ) + T ( x − ∆x, y ) ∂ 2T Ti +1, j − 2Ti , j + Ti −1, j


( x , y ) ≅ ≅
∂x 2 (∆x )2 ∂x 2 i, j (∆x )2

∂ 2T T ( x, y + ∆y ) − 2T ( x, y ) + T ( x, y − ∆y ) ∂ 2T Ti , j +1 − 2Ti , j + Ti , j −1
( x , y ) ≅ ≅
∂y 2 (∆y )2 ∂y 2 i, j (∆y )2
Ec. derivadas parciales 450
Discretizando la PDE elíptica

∂ 2T ∂ 2T
+ =0
∂x 2
∂y 2

• Substituting these approximations into the Laplace equation yields:


Ti +1, j − 2Ti , j + Ti −1, j Ti , j +1 − 2Ti , j + Ti , j −1
+ =0
(∆x ) 2
(∆y ) 2

• if, ∆x = ∆y
• the Laplace equation can be rewritten as
Ti +1, j + Ti −1, j + Ti , j +1 + Ti , j −1 − 4Ti , j = 0 (Eq. 1)
• there are several numerical methods that can be used to solve the
problem:
Direct Method
Gauss-Seidel Method
Lieberman Method
Ec. derivadas parciales 451
Ejemplo 1: Método directo
• Consider a plate 2.4 m × 3.0 m that is subjected to the boundary
conditions shown below. Find the temperature at the interior nodes
using a square grid with a length of 0.6 m by using the direct method.
y

300 °C

75 °C
W 3.0 m 100 °C

x
50 °C

2.4 m
L
Ec. derivadas parciales 452
Ejemplo 1: Método directo
• We discretize the plate by taking, ∆x = ∆y = 0.6m
L W
m= = 4 n= =5
∆x ∆y

• The nodal temperatures at the boundary nodes are given by:


y
300 °C
T 0,5 T1,5 T2,5 T3,5 T4,5

T0, 4 T0, j = 75, j = 1,2,3,4


T1, 4 T2, 4 T3, 4 T4, 4
T0,3 T4, j = 100, j = 1,2,3,4
75 °C
T1,3 T2,3 T3,3 T4,3 100 °C
T0, 2 Ti , 0 = 50, i = 1,2,3
T1, 2 T2, 2 T3, 2 T4, 2
Ti ,5 = 300, i = 1,2,3
T0,1 T1,1 T2,1 T3,1 T4,1
x
T0, 0 T1, 0 T2, 0 T3, 0 T4, 0
50 °C

Ec. derivadas parciales 453


Ejemplo 1: Método directo
• the equation for the temperature at the node (2,3)
y

T 0,5 T1,5 T2,5 T3,5 T4,5

T0, 4
T1, 4 T2, 4 T3, 4 T4, 4
T0,3
T1,3 T2,3 T3,3 T4,3
T0, 2
T1, 2 T2, 2 T3, 2 T4, 2

T0,1 T1,1 T2,1 T3,1 T4,1


x
T0, 0 T1, 0 T2, 0 T3, 0 T4, 0
• i=2 and j=3
Ti +1, j + Ti −1, j + Ti , j +1 + Ti , j −1 − 4Ti , j = 0
T3,3 + T1,3 + T2, 4 + T2, 2 − 4T2,3 = 0
T1,3 + T2, 2 − 4T2,3 + T2, 4 + T3,3 = 0
Ec. derivadas parciales 454
Ejemplo 1: Método directo
• We can develop similar equations for every interior node leaving us with
an equal number of equations and unknowns.

• For this problem the number of equations generated is 12

Ec. derivadas parciales 455


Ejemplo 1: Método directo
• The corner nodal temperature of T0,5 , T4,5 , T4,0 , T0,0 are not needed
• To get the temperature at the interior nodes we have to write Equation 1
for all the combinations of i and j, i = 1,...., m − 1; j = 1,...., n − 1
i=1 and j=1 − 4T1,1 + T1, 2 + T2,1 = −125
i=1 and j=2 T1,1 − 4T1, 2 + T1,3 + T2, 2 = −75
i=1 and j=3 T1, 2 − 4T1,3 + T1, 4 + T2,3 = −75
i=1 and j=4 T1,3 − 4T1, 4 + T2, 4 = −375
i=2 and j=1 T1,1 − 4T2,1 + T2, 2 + T3,1 = −50
i=2 and j=2 T1, 2 + T2,1 − 4T2, 2 + T2,3 + T3, 2 = 0
i=2 and j=3 T1,3 + T2, 2 − 4T2,3 + T2, 4 + T3,3 = 0
i=2 and j=4 T1, 4 + T2,3 − 4T2, 4 + T3, 4 = −300
i=3 and j=1 T2,1 − 4T3,1 + T3, 2 = −150
i=3 and j=2 T2, 2 + T3,1 − 4T3, 2 + T3,3 = −100
i=3 and j=3 T2,3 + T3, 2 − 4T3,3 + T3, 4 = −100
i=3 and j=4 T2, 4 + T3,3 − 4T3, 4 = −400
Ec. derivadas parciales 456
Ejemplo 1: Método directo
• We can use Excel and matrix operations to solve the linear equations
system

T1,1 T1,2 T1,3 T1,4 T2,1 T2,2 T2,3 T2,4 T3,1 T3,2 T3,3 T3,4 RHE
-4 1 0 0 1 0 0 0 0 0 0 0 -125 T1,1 74.8719
1 -4 1 0 0 1 0 0 0 0 0 0 -75 T1,2 95.8959 300.0 300.0 300.0
0 1 -4 1 0 0 1 0 0 0 0 0 -75 T1,3 127.8036
75.0 196.9 206.3 185.0 100.0
0 0 1 -4 1 0 0 1 0 0 0 0 -375 T1,4 196.9288
1 0 0 0 -4 1 0 0 1 0 0 0 -50 T2,1 78.5917 75.0 127.8 143.4 133.5 100.0
0 1 0 0 1 -4 1 0 0 1 0 0 0 T2,2 105.9082 75.0 95.9 105.9 105.8 100.0
0 0 1 0 0 1 -4 1 0 0 1 0 0 T2,3 143.3896
75.0 74.9 78.6 83.6 100.0
0 0 0 1 0 0 1 -4 0 0 0 1 -300 T2,4 206.3200
0 0 0 0 1 0 0 0 -4 1 0 0 -150 T3,1 83.5868
50.0 50.0 50.0
0 0 0 0 0 1 0 0 1 -4 1 0 -100 T3,2 105.7554
0 0 0 0 0 0 1 0 0 1 -4 1 -100 T3,3 133.5267
0 0 0 0 0 0 0 1 0 0 1 -4 -400 T3,4 184.9617

Ec. derivadas parciales 457


Método Gauss-Seidel

• Recall the discretized equation


Ti +1, j + Ti −1, j + Ti , j +1 + Ti , j −1 − 4Ti , j = 0

• This can be rewritten as


Ti +1, j + Ti −1, j + Ti , j +1 + Ti , j −1
Ti , j =
4
• For the Gauss-Seidel Method, this equation is solved
iteratively for all interior nodes until a pre-specified
tolerance is met.

Ec. derivadas parciales 458


Ejemplo 2: Método Gauss-Seidel
• Consider a plate 2.4 m × 3.0 m that is subjected to the boundary
conditions shown below. Find the temperature at the interior nodes
using a square grid with a length of 0.6 m using the Gauss-Siedel
method. Assume the initial temperature at all interior nodes to be 0 °C .
y
300 °C

75 °C
W 3.0 m 100 °C

x
50 °C

2.4 m
L
459
Ejemplo 2: Método Gauss-Seidel
• Discretizing the plate by taking, ∆x = ∆y = 0.6m
L W
m= = 4 n= =5
∆x ∆y

• The nodal temperatures at the boundary nodes are given by:


y
300 °C
T 0,5 T1,5 T2,5 T3,5 T4,5

T0, 4 T0, j = 75, j = 1,2,3,4


T1, 4 T2, 4 T3, 4 T4, 4
T0,3 T4, j = 100, j = 1,2,3,4
75 °C
T1,3 T2,3 T3,3 T4,3 100 °C
T0, 2 Ti , 0 = 50, i = 1,2,3
T1, 2 T2, 2 T3, 2 T4, 2
Ti ,5 = 300, i = 1,2,3
T0,1 T1,1 T2,1 T3,1 T4,1
x
T0, 0 T1, 0 T2, 0 T3, 0 T4, 0
50 °C

Ec. derivadas parciales 460


Ejemplo 2: Método Gauss-Seidel
• Now we can begin to solve for the temperature at each interior node
using T +T +T +Ti +1, j i −1, j i , j +1 i , j −1
Ti , j = , i = 1,2,3,4; j = 1,2,3,4,5
4
• Assume all internal nodes to have an initial temperature of zero.
• Iteration 1:
i=1 and j=1 T1,1 = 31.25 º C i=2 and j=3 T2,3 = 9.27735 º C
i=1 and j=2 T1, 2 = 26.5625 º C i=2 and j=4 T2, 4 = 102.344 º C
i=1 and j=3 T1,3 = 25.3906 º C i=3 and j=1 T3,1 = 42.5781 º C
i=1 and j=4 T1, 4 = 100.098 º C i=3 and j=2 T3, 2 = 38.5742 º C
i=2 and j=1 T2,1 = 20.3125 º C i=3 and j=3 T3,3 = 36.9629 º C
i=2 and j=2 T2, 2 = 11.7188 º C i=3 and j=4 T3, 4 = 134.827 º C

Ec. derivadas parciales 461


Ejemplo 2: Método Gauss-Seidel
• Iteration 2:
we take the temperatures from iteration 1 and calculate the
approximated error. ε = Ti, j − Ti, j ×100
present previous

a i, j
Ti ,present
j

i=1, j=1 T1,1 = 42.9688 º C ε a 1,1 = 27.27% i=2, j=3 T2,3 = 56.4881 º C ε a 2,3 = 83.58%
i=1, j=2 T1, 2 = 38.7596 º C ε a 1, 2 = 31.49% i=2, j=4 T2, 4 = 156.150 º C ε a 2, 4 = 34.46%
i=1, j=3 T1,3 = 55.7862 º C ε a 1,3 = 54.49% i=3, j=1 T3,1 = 56.3477 º C ε a 3,1 = 24.44%
i=1, j=4 T1, 4 = 133.283 º C ε a 1, 4 = 24.90% i=3, j=2 T3, 2 = 56.0425 º C ε a 3, 2 = 31.70%
i=2, j=1 T2,1 = 36.8164 º C ε a 2,1 = 44.83% i=3, j=3 T3,3 = 86.8394 º C ε a 3,3 = 57.44%
i=2, j=2 T2, 2 = 30.8594 º C ε a = 62.03% i=3, j=4 T3, 4 = 160.747 º C ε a 3, 4 = 16.12%
2, 2

Ec. derivadas parciales 462


Ejemplo 2: Método Gauss-Seidel
Temperature Distribution in the Plate (°C)
Node
Number of Iterations
1 2 10
T1,1 31.2500 42.9688 73.0239
T1, 2 26.5625 38.7695 91.9585
T1,3 25.3906 55.7861 119.0976
T1, 4 100.0977 133.2825 172.9755
T2,1 20.3125 36.8164 76.6127
T2, 2 11.7188 30.8594 102.1577
T2,3 9.2773 56.4880 137.3802
T2, 4 102.3438 156.1493 198.1055
T3,1 42.5781 56.3477 82.4837
T3, 2 38.5742 56.0425 103.7757
T3,3 36.9629 86.8393 130.8056
T3, 4 134.8267 160.7471 182.2278
Ec. derivadas parciales 463
Ejemplo 2: Método Gauss-Seidel in Excel
• The numerical solution of Laplace equation at a point is the average of
four neighbors Ti +1, j + Ti −1, j + Ti , j +1 + Ti , j −1
Ti , j =
4
• Example for cell S8:
=(S7+S9+R8+T8)/4

• Enter the boundary conditions in the appropriate cells.


• Copy and paste to cover the cells where values of the potential are to
be calculated. This calculation contains a "circular reference“.

Ec. derivadas parciales 464


Ejemplo 2: Método Gauss-Seidel in Excel
• To allow circular references and enable iterations:
File → Options → Formulas
On the "Calculations options" form select "Enable iterative calculation"

We can increase the Maximum Iterations (100 is the deafult) and


reduce the Maximum Change (0.001 is the default). Iterations will stop
when the maximum iteration is reached or the change is less than the
maximum change.
• F9 to recalculate.
Ec. derivadas parciales 465
Ejemplo 2: Método Gauss-Seidel in Excel
• Color cell based on value
To achieve the cell color based on value: Inicio → Estilos →
Formato condicional → Escalas de color → Más reglas
We can chose a 3 color scale with blue for mimimum, white or gray for
midpoint and red for maximum.

Ec. derivadas parciales 466


Ejemplo 2: Método Gauss-Seidel in Excel
• Plotting the results
Normally we use the chart type Surface or Contour.

Ec. derivadas parciales 467


Ejemplo 3: Uso de Solver
Finite Difference Solution
8 0 0 0 0 0 0 0
7 100 51.74 33.90 26.95 25.07 26.95 33.90 51.74 100
6 100 73.07 56.89 48.82 46.39 48.82 56.89 73.07 100
5 100 83.64 71.80 65.03 62.86 65.03 71.80 83.64 100
4 100 89.71 81.62 76.65 75.00 76.65 81.62 89.71 100
3 100 93.56 88.31 84.97 83.83 84.97 88.31 93.56 100
2 100 96.23 93.11 91.07 90.37 91.07 93.11 96.23 100
1 100 98.26 96.80 95.85 95.52 95.85 96.80 98.26 100
0 100 100 100 100 100 100 100
x\y 0 1 2 3 4 5 6 7 8

Residuals-squared
8
=(-4*D5+D4+D6+C5+E5)^2
7 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
6 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
5 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
4 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
3 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
1 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
0
x\y 0 1 2 3 4 5 6 7 8

sum = 2.7745E-13 =SUMA(D17:J23)

Ec. derivadas parciales 468


Método de Lieberman
• Recall the equation used in the Gauss-Siedel Method,
Ti +1, j + Ti −1, j + Ti , j +1 + Ti , j −1
Ti , j =
4
• Because the Gauss-Siedel Method is guaranteed to converge, we can
accelerate the process by using overrelaxation. In this case,
Ti ,relaxed
j = λTi ,new
j + (1 − λ )Ti , j
old

• The λ is known as the “overrelaxation parameter" and is in the range


0 < λ < 2.

Ec. derivadas parciales 469


Condiciones de contorno alternativas
• In the past examples, the boundary conditions on the plate had a
specified temperature on each edge.
What if the conditions are different ? For example, what if one of the
edges of the plate is insulated.
• In this case, the boundary condition would be the derivative of the
temperature. Because if the right edge of the plate is insulated, then
the temperatures on the right edge nodes also become unknowns.
y
300 °C

75 °C
3.0 m Insulated

x
50 °C
2.4 m

Ec. derivadas parciales 470


Condiciones de contorno alternativas
• The finite difference equation in this case for the right edge for the
nodes (m, j ) for j = 2,3,..n − 1
Tm +1, j + Tm −1, j + Tm , j −1 + Tm , j +1 − 4Tm , j = 0
• However the node (m + 1, j ) is not inside the plate. The derivative
boundary condition needs to be used to account for these additional
unknown nodal temperatures on the right edge. This is done by
approximating the derivative at the edge node (m, j ) as
y
Tm +1, j − Tm −1, j 300 °C
∂T

∂x m, j 2(∆x)
75 °C
3.0 m Insulated

x
50 °C
2.4 m

Ec. derivadas parciales 471


Condiciones de contorno alternativas
• Rearranging this approximation gives us,
∂T
Tm +1, j = Tm −1, j + 2(∆x)
∂x m, j

• We can then substitute this into the original equation gives us,
∂T
2Tm −1, j + 2(∆x) + Tm , j −1 + Tm , j +1 − 4Tm , j = 0
∂x m, j

• Recall that is the edge is insulated then,


∂T
=0
∂x m, j

• Substituting this again yields,


2Tm −1, j + Tm , j −1 + Tm , j +1 − 4Tm , j = 0

Ec. derivadas parciales 472


Ecuaciones en derivadas parciales
parabólicas
• The general form for a second order linear PDE with
two independent variables and one dependent
variable2 is
∂u ∂u2
∂u 2
∂u ∂u
A 2 +B +C 2 + D + E + Fu + G = 0
∂x ∂x∂y ∂y ∂x ∂y
• The criteria for an equation of this type to be
considered parabolic: B 2 − 4 AC = 0
• Examine the heat-conduction equation given by
∂ T ∂T
2
k k = thermal conductivity of rod material,
α 2 = where α = ρ = density of rod material,
∂x ∂t ρ C C = specific heat of the rod material.
where A = α , B = 0, C = 0, D = 0, E = −1, F = 0, G = 0
thus we can classify this equation as parabolic.
Ec. derivadas parciales 473
Ejemplo de una EDP parabólica

• Consider the flow of heat within a metal rod of length


L, one end of which is held at a known high
temperature, the other end at a lower temperature.
– Heat will flow from the hot end to the cooler end.
– We'll assume that the rod is perfectly insulated, so that
heat loss through the sides can be neglected.

• We want to calculate the temperature along the length


of the rod as a function of time.
Ec. derivadas parciales 474
Discretización de una EDP Parabólica
• For a rod of length L divided into n + 1 nodes ∆x = L
n

• The time is similarly broken into time steps of ∆t

• Hence i corresponds to the temperature at node i ,that is,


j
T

x = (i )(∆x ) and time t = ( j )(∆t )

x ∆x ∆x

i −1 i i +1
Schematic diagram showing interior nodes
Ec. derivadas parciales 475
Solución EDP Parabólica:
Método explícito
• If we define ∆x =
L
we can then write the finite central divided
n
difference approximation of the left hand side at a general interior node
( i ) as ∂ T ≅ Ti +1 − 2Ti + Ti −1 where ( j ) is the node number along
2 j j j

∂x 2 (∆x )2
the time.
i, j

• The time derivative on the right hand side is approximated by the


forward divided difference method as, ∂T Ti j +1 − Ti j

∂t i , j ∆t
x ∆x ∆x

i −1 i i +1
Schematic diagram showing interior nodes
Ec. derivadas parciales 476
Solución EDP Parabólica:
Método explícito
• Substituting these approximations into the governing equation yields
Ti +j1 − 2Ti j + Ti −j1 Ti j +1 − Ti j
α =
(∆x )2 ∆t
• Solving for the temp at the time node j +1 gives
∆t
Ti j +1
= Ti + α
j

(∆x) 2
T j
i +1 −(2Ti
j
+ T j
i −1 )
• choosing, λ = α ∆t
2
(∆x)
• we can write the equation as, Ti = Ti + λ Ti +1 − 2Ti + Ti −1
j +1 j j j j
( )
• we can be solved explicitly: for each internal location node of the rod for
time node j + 1 in terms of the temperature at time node j. If we know
the temperature at node j = 0 , and the boundary temperatures, we can
find the temperature at the next time step. We continue the process until
we reach the time at which we are interested in finding the temperature.
Ec. derivadas parciales 477
Ejemplo 1 EDP Parabólica:
Método explícito
• Consider a steel rod that is subjected to a temperature of 100°C on the
left end and 25°C on the right end. If the rod is of length 0.05m ,use the
explicit method to find the temperature distribution in the rod from t = 0
and t = 9 seconds. Use ∆x = 0.01m , ∆t = 3s .
W kg
• Given: k = 54 , ρ = 7800 3 , C = 490
J
m−K m kg − K
• The initial temperature of the rod is 20°C.

i=0 1 2 3 4 5
T =100 ° C T = 25 °C
0.01m

Ec. derivadas parciales 478


Ejemplo 1 EDP Parabólica:
Método explícito
t final − tinitial 9−0
• Number of time steps = = =3
∆t 3
k 54
• Recall, α = = = 1.4129 ×10 −5 m 2 / s
ρC 7800 × 490
• Then, λ = α ∆t 2 = 1.4129 ×10−5 3 2 = 0.4239
(∆x ) (0.01)
• Boundary Conditions T0 j = 100°C 
 for all j = 0,1,2,3
T5 = 25°C  j

• All internal nodes are at 20°C for t = 0 sec: Ti 0 = 20°C , for all i = 1,2,3,4
T00 = 100°C
T10 = 20°C  We can now calculate the temperature at each node
T20 = 20°C 

explicitly using the equation formulated earlier,
( )
 Interior nodes
T30 = 20°C 
Ti j +1 = Ti j + λ Ti +j1 − 2Ti j + Ti −j1
T40 = 20°C 
T50 = 25°C

Ec. derivadas parciales 479


Ejemplo 1 EDP Parabólica:
Método explícito
• Nodal temperatures vs. Time
t = 0 sec j = 0 t = 3 sec j = 1 t = 6 sec j = 2 t = 9 sec j = 3
T00 = 100°C T01 = 100°C − Boundary Condition T02 = 100°C T03 = 100°C
T10 = 20°C  T11 = 53.912°C T12 = 59.073°C T13 = 65.953°C

T20 = 20°C  T21 = 20°C T22 = 34.375°C T23 = 39.132°C
 Interior nodes
T30 = 20°C  T31 = 20°C T32 = 20.889°C T33 = 27.266°C
T40 = 20°C  T41 = 22.120°C T42 = 22.442°C T43 = 22.872°C
T50 = 25°C T51 = 25°C − Boundary Condition T52 = 25°C T53 = 25°C

Ec. derivadas parciales 480


Solución EDP Parabólica:
Método implícito
• Using the explicit method, we were able to find the temperature at each
node, one equation at a time.
• However, the temperature at a specific node was only dependent on the
temperature of the neighboring nodes from the previous time step. This
is contrary to what we expect from the physical problem.
• The implicit method allows us to solve this and other problems by
developing a system of simultaneous linear equations for the
temperature at all interior nodes at a particular time.
• The second derivative is approximated by the CDD and the first
derivative by the BDD scheme at time level j+1 at node ( i ) as
∂ 2T Ti +j1+1 − 2Ti j +1 + Ti −j1+1

∂ 2T ∂T
α 2 = ∂x i , j +1
2
(∆x )2
∂x ∂t ∂T Ti j +1 − Ti j

∂t i , j +1 ∆t
Ec. derivadas parciales 481
Solución EDP Parabólica:
Método implícito
• Substituting these approximations into the heat conduction equation
yields
∂ 2T ∂T Ti +j1+1 − 2Ti j +1 + Ti −j1+1 Ti j +1 − Ti j
α 2 = α =
∂x ∂t (∆x ) 2
∆t

• Rearranging yields
− λTi −j1+1 + (1 + 2λ )Ti j +1 − λTi +j1+1 = Ti j
given that
∆t
λ =α
(∆x )2
• The rearranged equation can be written for every node during each
time step. These equations can then be solved as a simultaneous
system of linear equations to find the nodal temperatures at a particular
time.
Ec. derivadas parciales 482
Ejemplo 2 EDP Parabólica:
Método implícito
• Consider a steel rod that is subjected to a temperature of 100°C on the
left end and 25°C on the right end. If the rod is of length 0.05m ,use the
implicit method to find the temperature distribution in the rod from t = 0
and t = 9 seconds. Use ∆x = 0.01m , ∆t = 3s .
W kg
• Given: k = 54 , ρ = 7800 3 , C = 490
J
m−K m kg − K
• The initial temperature of the rod is 20°C.

i=0 1 2 3 4 5
T =100 ° C T = 25 °C
0.01m

Ec. derivadas parciales 483


Ejemplo 2 EDP Parabólica:
Método implícito
t final − tinitial 9−0
• Number of time steps = = =3
∆t 3
k 54
• Recall, α = = = 1.4129 ×10 −5 m 2 / s
ρC 7800 × 490
• Then, λ = α ∆t 2 = 1.4129 ×10−5 3 2 = 0.4239
(∆x ) (0.01)
• Boundary Conditions T0 j = 100°C 
 for all j = 0,1,2,3
T5 = 25°C  j

• All internal nodes are at 20°C for t = 0 sec: Ti 0 = 20°C , for all i = 1,2,3,4
T00 = 100°C
T10 = 20°C 
We can now form the system of equations for the
T20 = 20°C 
 first time step by writing the approximated heat
T30 = 20°C 
 Interior nodes conduction equation for each node
T40 = 20°C  − λTi −j1+1 + (1 + 2λ )Ti j +1 − λTi +j1+1 = Ti j
T50 = 25°C

Ec. derivadas parciales 484


Ejemplo 2 EDP Parabólica:
Método implícito
• Nodal temperatures when t = 3 sec
• For the first time step we can write four such equations with four
unknowns, expressing them in matrix form yields
 1.8478 − 0.4239 0 0  T11  62.390
− 0.4239 1.8478 − 0.4239 0   1   20 
  T2  =  
 0 − 0.4239 1.8478 − 0.4239 T3   20 
1

  1   
 0 0 − 0 . 4239 1 . 8478  T4  30.598
• The above coefficient matrix is tri-diagonal, so special algorithms
(e.g.Thomas’ algorithm) can be used to solve. The solution is given by
T01   100 
 1  
T11   39.451 T1   39.451
 1  
T2  =  24.792 T21   24.792
T31   21.438  1 =  
 1   T3   21.438
T4  21.477  T 1  21.477 
 41   
T5   25 
Ec. derivadas parciales 485
Ejemplo 2 EDP Parabólica:
Método implícito
• Nodal temperatures when: t = 3 sec t = 6 sec t = 9 sec
T01   100  T02   100  T03   100 
 1    2    3  
T
   39 . 451  T
   51. 326
1 1  T
  
1
59 . 043 
T2  24.792
1
T2  30.669 
2
T23  36.292 
 1 =    2 =    3 =  
 3 
T 21 . 438   3 
T 23 . 876  T3  26.809
T  21.477 
1 T  22.836
2 T 3   24.243
 41     42     43   
 5  
T 25  T 
 5   25  
 5  
T 25 

Ec. derivadas parciales 486


Solución EDP Parabólica:
Método Crank-Nicolson
• Using the implicit method our approximation of ∂ T was of accuracy
2

∂x 2
O(∆x) 2, while our approximation of ∂T was of O(∆t ) accuracy.
∂t
• One can achieve similar orders of accuracy by approximating the
second derivative, on the left hand side of the heat equation, at the
midpoint of the time step. Doing so yields
∂ 2T α  Ti +j1 − 2Ti j + Ti −j1 Ti +j1+1 − 2Ti j +1 + Ti −j1+1 
≈  + 
∂x 2 i, j
2 (∆x )2 (∆x )2 
• The first derivative, on the right hand side of the heat equation, is
approximated using the forward divided difference method at time level
j +1, j +1
∂T j
Ti − Ti

∂t i, j ∆t

Ec. derivadas parciales 487


Solución EDP Parabólica:
Método Crank-Nicolson
• Substituting these approximations into the governing equation for heat
conductance yields
α  Ti +j1 − 2Ti j + Ti −j1 Ti +j1+1 − 2Ti j +1 + Ti −j1+1  Ti j +1 − Ti j
 + =
2 (∆x )2 (∆x ) 2
 ∆t

• giving
− λTi −j1+1 + 2(1 + λ )Ti j +1 − λTi +j1+1 = λTi −j1 + 2(1 − λ )Ti j + λTi +j1
• where
∆t
λ =α
(∆x )2
• Having rewritten the equation in this form allows us to discretize the
physical problem. We then solve a system of simultaneous linear
equations to find the temperature at every node at any point in time.

Ec. derivadas parciales 488


Ejemplo 3 EDP Parabólica:
Método Crank-Nicolson
• Consider a steel rod that is subjected to a temperature of 100°C on the
left end and 25°C on the right end. If the rod is of length 0.05m ,use the
Crank-Nicolson method to find the temperature distribution in the rod
from t = 0 and t = 9 seconds. Use ∆x = 0.01m, ∆t = 3s .
W kg
• Given: k = 54 , ρ = 7800 3 , C = 490
J
m−K m kg − K
• The initial temperature of the rod is 20°C.

i=0 1 2 3 4 5
T =100 ° C T = 25 °C
0.01m

Ec. derivadas parciales 489


Ejemplo 3 EDP Parabólica:
Método Crank-Nicolson
t final − tinitial 9−0
• Number of time steps = = =3
∆t 3
k 54
• Recall, α = = = 1.4129 ×10 −5 m 2 / s
ρC 7800 × 490
• Then, λ = α ∆t 2 = 1.4129 ×10−5 3 2 = 0.4239
(∆x ) (0.01)
• Boundary Conditions T0 j = 100°C 
 for all j = 0,1,2,3
T5 = 25°C 
j

• All internal nodes are at 20°C for t = 0 sec: Ti 0 = 20°C , for all i = 1,2,3,4
T00 = 100°C
T10 = 20°C 
We can now form the system of equations for the
T20 = 20°C 
 first time step by writing the approximated heat
 Interior nodes conduction equation for each node
T30 = 20°C 
T40 = 20°C  − λTi −j1+1 + 2(1 + λ )Ti j +1 − λTi +j1+1 = λTi −j1 + 2(1 − λ )Ti j + λTi +j1
T50 = 25°C

Ec. derivadas parciales 490


Ejemplo 3 EDP Parabólica:
Método Crank-Nicolson
• Nodal temperatures when t = 3 sec
• For the first time step we can write four such equations with four
unknowns, expressing them in matrix form yields
 2.8478 − 0.4239 0 0  T11  116.30 
− 0.4239 2.8478 − 0.4239 0   1  40.000
  T2  =  
 0 − 0.4239 2.8478 − 0.4239 T3  40.000
1

  1   
 0 0 − 0. 4239 2. 8478   4  
T 52 . 718 
• The above coefficient matrix is tri-diagonal, so special algorithms
(e.g.Thomas’ algorithm) can be used to solve. The solution is given by
T01   100 
 1  
T11   44.372 T1   44.372
 1  
T
 = 23 .746 
T21   23.746
 1 = 
2
T31  20.797  
 1    3 
T 20 . 797 
T4  21.607  T  21.607 
1
 41   
T5   25 

Ec. derivadas parciales 491


Ejemplo 3 EDP Parabólica:
Método Crank-Nicolson
• Nodal temperatures when: t = 3 sec t = 6 sec t = 9 sec
T01   100  T02   100  T03   100 
 1    2    3  
T
   44 . 372  T
   55 .883  T
   62 .604
1 1 1 
T2   23.746
1 T2  31.075
2 T2  37.613
3

 1 =    2 =    3 =  
 3 
T 20. 797   3 
T 23 .174   3 
T 26 . 562 
T  21.607 
1 T  22.730
2 T  24.042
3

 41     42     43   

 5  
T 25 
 T 
 5   25  T5   25 

Ec. derivadas parciales 492


Comparación de métodos:
temperaturas en 9 seg.
• The table below allows you to compare the results from all three
methods discussed in juxtaposition with the analytical solution.
Crank-
Node Explicit Implicit Analytical
Nicolson
T13 65.953 59.043 62.604 62.510
T23 39.132 36.292 37.613 37.084
T33 27.266 26.809 26.562 25.844
T43 22.872 24.243 24.042 23.610

Ec. derivadas parciales 493


Ecuaciones en derivadas parciales
hiperbólicas
• The general form for a second order linear PDE with
two independent variables and one dependent
variable2 is
∂u ∂u 2
∂u 2
∂u ∂u
A 2 +B +C 2 + D + E + Fu + G = 0
∂x ∂x∂y ∂y ∂x ∂y
• The criteria for an equation of this type to be
considered hyperbolic: B 2 − 4 AC > 0
• The wave equation (oscillatory systems) given by
∂2 y ∂2 y Tg T = tension,
= k where k = g = gravitational constant,
∂t 2 ∂x 2 w w = weight/unit =W/L ,W=weight, L=length
where A = 1, B = 0, C = −1
thus we can classify this equation as hyperbolic.
Ec. derivadas parciales 494
Ejemplo de una EDP hiperbólica

• A string of certain length and weight is under a fixed


tension. Initially the mid-point of the string is displaced
some distance from its equilibrium position and
released.

• We want to calculate the displacement as a function


of time at fixed intervals along the length of the string.
Ec. derivadas parciales 495
Solución EDP hiperbólica:
Método explícito
• Once again, we can solve the problem by replacing derivatives by finite
differences.
Ti j +1 − 2Ti j + Ti j −1 Tg  Ti +j1 − 2Ti j + Ti −j1 
=  
(∆t ) 2
w  (∆x )2 
• which, when rearranged, yields
Tg (∆t )  Tg (∆t )2  j
2
Ti =j +1
(Ti +1 + Ti −1 ) − Ti + 21 −
j j j −1
T
2  i
w (∆x ) 2
 w (∆x ) 
• If we set Tg (∆t )2 w(∆x )2 = 1 , the above equation is simplified to
Ti j +1 = Ti +j1 + Ti −j1 − Ti j −1
• When employing the simplified equation, the value of ∆t is determined
by the expression ∆t = ∆x
Tg / w
• To begin the calculations (value at t1), it is required values of the
function at t0 = 0 and also a value at t-1. We can get a value for the
function at t-1 by making use of the fact that the function is periodic.
Ec. derivadas parciales 496
Ejemplo 1 EDP hiperbólica
• A string 50 cm long and weighing 0.5 g is under a tension of 33 kg.
Initially the mid-point of the string is displaced 0.5 cm from its
equilibrium position and released. We want to calculate the
displacement as a function of time at 5 cm intervals along the length of
the string, using equation
Ti j +1 = Ti +j1 + Ti −j1 − Ti j −1
∆x
• From equation ∆t = the ∆t must be 8.8 x 10-5 seconds.
Tg / w

Ec. derivadas parciales 497