Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Métodos Numéricos, Transcripciones de Sistemas Fotovoltaicos

Una introducción a los métodos numéricos, una rama de las matemáticas aplicadas que estudia técnicas computacionales para resolver problemas matemáticos. Se abordan temas como la búsqueda de raíces de ecuaciones no lineales, optimización, programación en lenguajes científicos como octave, matlab, scilab, mathematica, r y julia, operaciones con matrices, cifras significativas, errores de aproximación y diversos algoritmos numéricos como el método de la bisección, el método de newton y la eliminación gaussiana. El documento incluye pseudocódigos que ilustran la implementación de estos métodos. Además, se plantean preguntas y temas adicionales que pueden ser investigados por el estudiante, lo que lo convierte en un recurso valioso para comprender y aplicar los conceptos de los métodos numéricos en diversas áreas de la ciencia y la ingeniería.

Tipo: Transcripciones

2021/2022

Subido el 24/06/2023

roberto-toapanta-1
roberto-toapanta-1 🇪🇨

1 documento

1 / 49

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31

Vista previa parcial del texto

¡Descarga Métodos Numéricos y más Transcripciones en PDF de Sistemas Fotovoltaicos solo en Docsity!

Tema 1

1.1. Ejemplo de moƟvación Los métodos numéricos engloban múlƟples aplicaciones en ciencia e ingeniería. En este curso revisaremos el cálculo de errores que sentará una base para los cálculos siguientes. Estudiaremos los métodos para encontrar raíces de ecuaciones no lineales, que son muy úƟles en varios problemas prácƟcos. Nos concentraremos luego en una parte muy importante de los métodos numéricos que es el álgebra matricial y la resolución de sistemas lineales de ecuaciones. Los sistemas lineales de ecuaciones se aplican actualmente en la ciencia y la industria de manera habitual. Dentro de los modelos matemáƟcos, la opƟmización juega un papel muy importante en múlƟples aplicaciones en la ciencia y en la industria. Es por esto que se estudiará la programación u opƟmización lineal que, aunque parezca muy limitada al tratar únicamente con funciones y restricciones lineales, se observará que su rango de aplicación es muy amplio y es actualmente muy uƟlizada en varios ambientes empresariales debido a su demostrada capacidad de mejorar procesos y abaratar costos. 1.2. Sobre los contenidos de la asignatura Al iniciar cada capítulo hay una pequeña introducción con un caso real sobre la importancia de los temas a estudiar. Siempre se incluyen enlaces extras a páginas en las que puede encontrar más información. El texto Ɵene colores de fondo que se describen a conƟnuación. Los cuadros en color rojo claro conƟenen ejercicios resueltos. En general, estos ejercicios Ɵenen que ver más con la parte matemáƟca de la asignatura. Estudie la resolución de cada ejercicio pues le dará pautas sobre el comportamiento de los algoritmos. Ejercicio Esta es la planƟlla de ejercicios. Revise con detenimiento el desarrollo de los mismos. Los cuadros con ơtulo azul conƟenen teoremas que son muy importantes para sentar las bases teóricas de los contenidos. Recuerde que los teoremas son muy importantes porque son el fundamento para el desarrollo de los temas de la asignatura. Los cuadros con Ɵtulo rojo, como en que se presenta a conƟnuación, conƟene definiciones de conceptos matemáƟcos. Las definiciones nos ayudan a tener conceptos matemáƟcos claros y a manejar mismo lenguaje dentro del estudio de los temas. Los cuadros amarillos conƟenen preguntas para usted. Son importantes ya que le permite adentrarse más en el tema y probar también el grado de comprensión que ha adquirido del texto. Algunas son preguntas que pretenden que invesƟgue más sobre los contenidos y profundice el aprendizaje; otras conƟenen ejercicios de programación que serán discuƟdos en las sesiones virtuales. Este es un cuadro de ejemplo que conƟene preguntas y temas extras que pueden ser invesƟgados por usted. En los cuadros grises podrá encontrar seudocódigos de los principales algoritmos que estudiará en este curso. Estos seudocódigos le serán muy úƟles al momento de programar en el lenguaje de su preferencia.

1.3. Introducción a un lenguaje de programación de cálculo cienơfico Existen múlƟples programas y lenguajes tanto libres como propietarios dedicados específicamente a la modelación matemáƟca, entre los cuales citaremos Octave, Matlab, Scilab, MathemaƟca, R y Julia. En este curso se priorizará el uso de soŌware libre, es por eso que se uƟlizará preferentemente Octave, Scilab, Julia, R o Python que, aunque es un lenguaje de programación con un enfoque más amplio, es muy uƟlizado en modelación matemáƟca y análisis de datos. Se pueden uƟlizar también lenguajes como C y Fortran para trabajar en los códigos, aunque resulta más complicado y largo programar en estos lenguajes. Lea sobre el soŌware de simulación matemáƟca descrito en el párrafo anterior. Elija de entre las opciones libres la que sea de su preferencia, recuerde que no hay problema en que use varios lenguajes en el curso, pero esto dificultará mucho el avance. Le recomiendo uƟlizar Julia, Python u Octave. 1.3.1. Entorno de trabajo en el lenguaje de programación Revisaremos de forma general los principales aspectos que conciernen al entorno de trabajo o IDE. Un IDE es uno o varios programas que soportan algunas tareas relaƟvas al lenguaje de programación, entre las cuales podemos nombrar la edición de programas que usualmente proveen un entorno con autocompletado y sugerencias de comandos. Un IDE incluye también la compilación, la ejecución y la depuración de programas. Cada entorno de trabajo tendrá sus parƟcularidades según el lenguaje que se elija para el curso. Como un IDE que facilita el trabajo en múlƟples lenguajes se recomienda que pruebe los notebooks con Jupyter. 1.3.2. Tipos de datos Los Ɵpos de datos son los atributos para la información que maneja nuestro compilador o intérprete. Estos atributos nos ayudan a manejar cada Ɵpo de dato de forma adecuada. En este curso manejaremos datos numéricos, es por esto que los Ɵpos más importantes serán int (número entero, del inglés integer), float (número de punto flotante, del inglés floaƟng point) y lógica o boolean dato lógico o booleano, nombrado en honor a Charles Boole). En general no se manejarán otros Ɵpos de datos en este curso. 1.3.3. Operadores aritméƟcos y lógicos En las siguientes secciones revisaremos brevemente la forma de trabajar con las estructuras matemáƟcas en cualquier soŌware. Hay que tomar en cuenta que ciertos lenguajes están más orientados a una programación matemáƟca que otros en los que se puede realizar programas más generales. Se recomienda leer la documentación oficial del lenguaje de su preferencia y buscar las principales fuentes de ayuda disponibles en la red. 1.4. Definición de vectores y matrices Entre los múlƟples elementos que manejaremos dentro del curso están los vectores, y en forma más general las matrices, que juegan un papel muy importante en la creación de ruƟnas de cálculo cienƟfico. Cada lenguaje de programación pose sus parƟcularidades en la forma de manejar estos elementos y en las diferentes funciones que actúan sobre los mismos. Un lenguaje de programación de cálculo cienƟfico posee librerias de alto nivel que conƟenen funciones especializadas que actúan sobre vectores o matrices. Es aconsejable que el lector se familiarice con estas funciones ya que siempre será mejor uƟlizarlas que crear una función propia. Estas funciones están opƟmizadas en varios casos paralelizadas. 1.4.1. Comandos y funciones que actúan sobre vectores Cada lenguaje Ɵene sus funciones parƟculares, pero las principales nos permiten manipular vectores de manera puntual o general. Por ejemplo, podemos susƟtuir un elemento de un vector indicando únicamente su posición o indice. Tenemos también funciones que iteran sobre los elementos de un vector y

if (condición) sentencias; else sentencias; endif while (condición) sentencias; endwhile Otra sentencia de control bastante úƟl es break, la cual interrumpe de forma anƟcipada un ciclo al cumplir cierta condición. Lea la documentación del lenguaje de su preferencia, revise cómo se uƟlizan las sentencias de control. Haga pruebas creando programas sencillos. 1.5.3. Creación de funciones propias de usuario Las funciones propias de usuario son muy importantes para mantener un código limpio y ordenado. El formato de su creación y la forma en la que son llamadas depende del lenguaje en el que se está trabajando. Trataremos en general de organizar nuestro código de forma que este sea legible para cualquier persona, promoviendo el uso de comentarios detallados en las funciones creada 1.5.4. Lectura y escritura de variables La asignación y el despliegue de variables depende del lenguaje y del IDE. Tendremos en este curso mucho cuidado al desplegar números de forma correcta, uƟlizando los decimales adecuados y la notación que corresponda. InvesƟgue las formas de graficar datos y funciones en el lenguaje de programación de su elección. Pruebe con funciones sencillas, cambie colores, Ɵpos de línea y leyendas. AUTO EVALUCION 1 ¿Por qué la simulación matemáƟca es importante en la industria? Rpta: B) Porque permite conocer el comportamiento de los procesos. ¿Qué significa los cuadros azules en los contenidos? Rpta: A) Teoremas importantes ¿Cuál de los siguientes lenguajes de cálculo cienơfico es soŌware libre? Rpta: B) Octave ¿Cuáles de las siguientes sentencias son condicionales? Rpta: A) if, if else, while. ¿Qué significan los cuadros con fondo rojo en los contenidos? Rpta: B) Ejercicios ¿Cuál de las siguientes sentencias termina anƟcipadamente un ciclo? Rpta: C) Break

¿Cuál de los siguientes es un lenguaje de programación de cálculo cienơfico? Rpta: A) Fortran La programación lineal se uƟliza en la empresa de manera general para. Rpta: B) Mejorar procesos y abaratar costos. ¿Qué significa los cuadros rojos en los contenidos? Rpta: B) Definiciones de conceptos ¿Qué significa los cuadros en color amarillo en los contenidos? Rpta: C) Temas extras para invesƟgar

Tema 2 Análisis de errores

2.1. Ejemplo de moƟvación Una mañana del 4 de junio de 1996 el nuevo cohete Ariane 5 estaba listo para despegar en la Guyana Francesa. Su viaje inaugural duró muy poco. A los 30 segundos de vuelo tuvo que ser destruido porque perdió su trayectoria. En un proyecto mulƟmillonario manejado por múlƟples países y agencias, ¿qué pudo salir mal tan pronto? Al ser un sistema extremadamente complicado hay muchas partes que pueden fallar, se puede sospechar de un fallo electrónico, hidráulico o algún problema con la presión en el combusƟble. Después de un análisis exhausƟvo, la ESA (Agencia Espacial Europea), determino que el desastre fue producido por un error de soŌware. Se uƟlizó el mismo soŌware de la versión anterior de este cohete, el Ariane 4. Los nuevos y mejorados sensores enviaron información que el soŌware anterior no pudo manejar. El sistema de referencia interno del cohete envió la información en números de punto flotante de 64 bits, que el soŌware anterior no podía manejar. Estos números se convirƟeron a un entero de 16 bits, lo que provocó que el cohete enƟenda mal la información y realice una corrección de trayectoria errónea que llevó a su destrucción.

2.1 Ejemplo de moƟvación

Estos errores en el soŌware provocaron un desastre que costó varios millones de euros y provoco retrasos en los programas de la ESA. Este es un ejemplo de una de las múlƟples razones por las cuales los errores numéricos deben ser estudiados a profundidad. Puede encontrar una explicación mas extensa y detallada sobre este suceso en e siguiente enlace: 2.2. Error absoluto y relaƟvo Al realizar cálculos, es muchas veces inevitable el tener que aproximar las canƟdades. La aproximación puede ser por dificultades en la medición o por restricciones en la capacidad de cálculo. Definimos entonces el error de forma intuiƟva como la diferencia entre el valor exacto y su aproximación. Existen dos Ɵpos de errores que definimos a conƟnuación.

¿Qué conclusiones puede obtener del ejercicio? ¿Qué error considera usted que es más significaƟvo? Si estamos resolviendo un problema y no disponemos del valor exacto, podemos calcular un error aproximado. Este error nos puede servir como criterio de parada para ciertos métodos iteraƟvos 2.1.1. Redondeo y truncamiento El redondeo y el truncamiento son dos formas de reducir la canƟdad de cifras decimales en un número real. Un sistema Ɵene siempre una precisión fija y por lo tanto no trabajamos con números reales que tengan un infinito número de decimales. Hay múlƟples formas de redondear números decimales, la más habitual es elegir el número de cifras a conservar y el número más cercano al original con las cifras significaƟvas deseadas. Notemos que de forma general el redondeo y truncamiento no se refieren únicamente a las a cifras decimales de un número, sino a las cifras significaƟvas que se desee conservar del número. Cabe recordar que es muy importante el uso del símbolo al hacer un redondeo o truncamiento ya que es una aproximación del número original en la que siempre estaremos comeƟendo algún error. En la siquiente tabla se presenta dos ejemplos de redondeo y truncamiento Reflexione sobre el redondeo y el truncamiento. ¿Cuál es preferible uƟlizar? Piense en casos en los que podría preferir un método sobre el otro. Grafique una función de redondeo a un decimal y una de truncamiento a un decimal, observe sus diferencias. 2.3. ExacƟtud y precisión Supongamos por ejemplo que tenemos una balanza con una precisión de un gramo. Si pesamos algo podemos obtener como resultado 523 g, sabemos que esta medida es exacta. Si con la misma balanza se realiza otra medida y se reporta un peso de 523.235 g, sabemos que esta medida no Ɵene significado, puesto que nuestra balanza es precisa únicamente hasta un gramo. La exacƟtud y la precisión están relacionadas con la medición de alguna canƟdad. La exacƟtud se refiere a que tan cerca del valor real se encuentra

el valor medido, está directamente relacionado con la medida del error absoluto. La precisión está relacionada con la dispersión en las mediciones de una canƟdad. 2.4. Representación de punto flotante 2.4.1. Cifras significaƟvas Las cifras significaƟvas son los números contados desde el dígito "más a la izquierda" hasta el dígito correcto "más a la derecha", incluyendo los ceros que sean exactos, (Cheney y Kincaid, 2008). Podemos diferenciar entre las medidas 147 m y 147.0 m. La primera Ɵene tres cifras significaƟvas, mientras que la segunda Ɵene cuatro. Podríamos decir en este caso que la primera medición es precisa hasta un metro, mientras que la segunda medida es precisa hasta una décima de metro. 2.4.1 Cifras SignificaƟvas. Observemos como el resultado cambia significaƟvamente entre los tres calculos. Notemos también que al considerar las cifras significaƟvas siempre truncamos los valores a la canƟdad de citras signiƟcaƟvas. Esta pérdida de precisión debe ser considerada al hacer los cálculos, puesto que debemos recordar que nos encontramos trabajando en un computador que Ɵene una precisión fija. Hay que tener cuidado al hacer operaciones que Ɵenden a provocar errores cuando trabajamos cerca de la precisión del computador.

Calcule la serie de Maclaurin para alguna de las funciones anteriores, trunque la serie en n =

  1. Elija un punto c y calcule el valor de la función mediante el computador, compare con la aproximación del punto uƟlizando la serie. ¿Qué puede decir acerca del error? 2.6. Orden de aproximación y cota superior asintóƟca. El orden de aproximación nos da el comportamiento de la función en las cercanías de un valor, El orden de aproximación nos sirve para determinar que tan bien una serie finita aproxima una función, por ejemplo una serie de Taylor truncada.

Definición 5: Orden de aproximación. La cota superior asintóƟca describe el comportamiento asintóƟco de una función, es decir, cómo se comporta a función al tender a infinito. Se suele conocer a esta cota como notación O grande (del inglés big O notaƟon). Definimos la cota superior asintóƟca como: Definición 5: Cota superior asintoƟca. La cota superior asintóƟca cambia de definición ligeramente para el caso de ciencias de la computación y nosotros presentaremos mas atención a la siguiente definición. Analice la diferencia entre la definición general de la cota superior asintóƟca y la definición en ciencias de la computación. ¿Qué diferencias y similitudes encuentra? ¿Para qué nos sirve la restricción sobre los enteros posiƟvos? En el contexto del curso uƟlizaremos la notación O grande para describir el desempeño de los algoritmos contando el número de operaciones que estos realicen. Por ejemplo, si un algoritmo necesita para un problema de tamaño n, de T(n) = 12n3+7n2 operaciones, diremos que el algoritmo es de orden O(n3). Notemos que, si n crece, el término de mayor exponente, en este caso n3, domina la expresión, lo podemos concluir de la definición, si la analizamos detenidamente. Es por esto que el orden del algoritmo se nota con el término de mayor exponente. InvesƟque y estudie cómo el término con el mayor exponente domina la expresión anterior. Pruebe con múlƟples valores de coeficientes, use valores de n suficientemente grandes. ¿Por qué no se uƟlizan valores pequeños de n?

Tema 3 Raices de ecuaciones.

3.1. Ejemplo de moƟvación Los planetas al girar alrededor del sol se mueven en órbitas elípƟcas no uniformes. Su movimiento cumple las leyes de Kepler, de las cuales la segunda ley especifica que el momento angular es constante. La ecuación de Kepler para el movimiento planetario es M = E - senE, Donde M es la anomalia media, € es la excentricidad de la elipse y E es la anomalia excêntrica. Puede ser de interés resolver la ecuación para encontrar la anomalia excéntrica (E) para lo cual nos encontramos ante una ecuación no lineal muy dificil de resolver mediante métodos algebraicos. Observemos en la siguiente imagen el movimiento que describe un objeto celeste al trasladarse en el cielo. Para conocer con exacƟtud estos movimientos debemos ser capaces de resolver ecuaciones como la de Kepler. 3.1 Ejemplo de moƟvación.

En esta sección estudiaremos tres métodos que nos permiten resolver ecuaciones no

lineales de forma numérica. Varios fenómenos pueden ser descritos mediante el uso

de ecuaciones o sistemas de ecuaciones no lineales, es muy importante entonces

conocer formas de hallar soluciones de manera eficiente

Autoevaluaciones 3 ¿Puedo uƟlizar un método de búsqueda de raíces para encontrar la intersección de dos funciones? Rpta: A) es posible. Si f es una función conƟnua en un intervalo [a,b] y f (a)f(b) <0, entonces el método de la bisección convergerá hacia una raíz. Rpta: A) si. Como no se puede obtener una expansión analíƟca para la derivada se uƟliza y se necesita una convergencia más rápida que una lineal se uƟliza Rpta: C) Secante. El método de bisección Ɵene. Rpta: A) Convergencia lineal. La convergencia del método de la secante depende Rpta: C) del tamaño del paso. El método de la secante Ɵene Rpta: B) Convergencia superlineal. El método de la bisección Rpta: A) Siempre converge en el intervalo donde exisơa una raíz. El método de newton Ɵene Rpta: C) Convergencia cuadráƟca. El método de newton aplicado a una función con un punto de inflexión en la vecindad de la raiz Rpta: B) Diverge progresivamente. Si el intervalo [a,b], se cumple que f(a)f(b)<0 entonces. Rpta: A) f no Ɵene raíz en [a,b]

es aplicable debido a que encontrar la inversa de una matriz es un proceso muy

complicado e ineficiente, incluso para un computador.

4.1. Ejemplo de moƟvación

La forma más sencilla de resolver un sistema de ecuaciones es uƟlizar eliminación

gaussiana, este proceso es fácil de uƟlizar y será el punto de parƟda para analizar

métodos más complejos y eficientes para resolver sistemas lineales. Al resolver un

sistema lineal mediante eliminación gaussiana se obƟene un nuevo sistema,

Ux =b

Con U una matriz triangular superior. Estudiaremos primero cómo resolver estos

sistemas con matrices triangulares. Antes de revisar los sistemas lineales es importante

que revise algunos temas relacionados las matrices y los sistemas lineales. Puede

encontrar más información en las secciones 1.7 a 1.10 de Grossman, 1993.

4.2. Sistemas lineales triangulares.

Supongamos que tenemos un sistema lineal Ux=b, De aquí en adelante U representara

una matriz triangular superior y L una matriz triangular inferior.

Note que el determinante de una matriz triangular es el producto de los elementos de

su diagonal. Este hecho nos será de uƟlidad en el cálculo del determinante de la matriz

original del problema y se uƟliza también para calcular el criterio de parada en algunos

algoritmos. En el siguiente ejemplo resolvemos manualmente un sistema lineal con

una matriz triangular superior.

PDF ingresar.

de las diagonales, esto hace que sea bastante barato almacenar una matriz de grandes

dimensiones.

Igresa pdf 2

Autoevaluación 4 Para la eliminación gaussiana con pivoteo parcial se requiere conseguir que la matriz de coeficientes sea. Rpta: B) Triangular superior Al realizar eliminación gaussiana con pivoteo parcial se toma como pivote a la entrada Rpta: B) Con mayor valor absoluto. Para realizar eliminacion gaussiana se necesita que Rpta: C) No hay restricción para la matriz de coeficientes Una matriz tridiagonal corresponde al sistema de la forma Rpta: El método de eliminación gaussiana para matrices tridiagonales es de orden Rpta: A) O(n). El orden del metodo de eliminacion gaussiana es Rpta: C) O(n^3). El orden de metodo de eliminacion gaussiana con y sin pivote es el mismo Rpta: A) Verdadero En la matriz aumentada, ¿Cuál es el pivte de la segunda columna si aplicamos pivote parcial? Rpta: C) -7. En la matriz aumentada, ¿Cuál es el pivote de la trcera columna si aplicamos pivote parcial?