Solucion de Ecuaciones Diferenciales Ordinarias de Segundo Orden por Métodos ...Carlos Aguilar
Este documento presenta los códigos para la soluciones de ecuaciones diferenciales Ordinarias de Segundo Orden por métodos numéricos en MATLAB. Los métodos numéricos utilizados fueron el de EULER y el de RUNGE-KUTTA de orden 4. Las ODEs resueltas en este ejemplo corresponden a un par de ecuaciones diferenciales de los osciladores de Van Der Pol.
Solucion de Ecuaciones Diferenciales Ordinarias de Segundo Orden por Métodos ...Carlos Aguilar
Este documento presenta los códigos para la soluciones de ecuaciones diferenciales Ordinarias de Segundo Orden por métodos numéricos en MATLAB. Los métodos numéricos utilizados fueron el de EULER y el de RUNGE-KUTTA de orden 4. Las ODEs resueltas en este ejemplo corresponden a un par de ecuaciones diferenciales de los osciladores de Van Der Pol.
Solución de Ecuaciones Diferenciales Ordinarias por los Métodos de Euler, Run...Carlos Aguilar
En este documento se comparan los métodos de Euler, Runge-Kutta 4 y la función ODE45 de MATLAB para la solución aproximada de ecuaciones diferenciales ordinarias con distintos pasos de integración.
Solución de Ecuaciones Diferenciales Ordinarias por los Métodos de Euler, Run...Carlos Aguilar
En este documento se comparan los métodos de Euler, Runge-Kutta 4 y la función ODE45 de MATLAB para la solución aproximada de ecuaciones diferenciales ordinarias con distintos pasos de integración.
Expresiones Algebraicas
Es aquella que contiene letras, números y signos. La manipulación de expresiones algebraicas tiene las mismas propiedades que la manipulación de expresiones numéricas, ya que las letras se comportan como si fuesen números. Las expresiones algebraicas que se tratarán en este curso tendrán, por lo general, una o dos letras.
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
En este proyecto de investigación nos adentraremos en el fascinante mundo de la intersección entre el arte y los medios de comunicación en el campo de la informática.
La rápida evolución de la tecnología ha llevado a una fusión cada vez más estrecha entre el arte y los medios digitales, generando nuevas formas de expresión y comunicación.
Continuando con el desarrollo de nuestro proyecto haremos uso del método inductivo porque organizamos nuestra investigación a la particular a lo general. El diseño metodológico del trabajo es no experimental y transversal ya que no existe manipulación deliberada de las variables ni de la situación, si no que se observa los fundamental y como se dan en su contestó natural para después analizarlos.
El diseño es transversal porque los datos se recolectan en un solo momento y su propósito es describir variables y analizar su interrelación, solo se desea saber la incidencia y el valor de uno o más variables, el diseño será descriptivo porque se requiere establecer relación entre dos o más de estás.
Mediante una encuesta recopilamos la información de este proyecto los alumnos tengan conocimiento de la evolución del arte y los medios de comunicación en la información y su importancia para la institución.
Es un diagrama para La asistencia técnica o apoyo técnico es brindada por las compañías para que sus clientes puedan hacer uso de sus productos o servicios de la manera en que fueron puestos a la venta.
En este documento analizamos ciertos conceptos relacionados con la ficha 1 y 2. Y concluimos, dando el porque es importante desarrollar nuestras habilidades de pensamiento.
Sara Sofia Bedoya Montezuma.
9-1.
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...espinozaernesto427
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta intensidad son un tipo de lámpara eléctrica de descarga de gas que produce luz por medio de un arco eléctrico entre electrodos de tungsteno alojados dentro de un tubo de alúmina o cuarzo moldeado translúcido o transparente.
lámparas más eficientes del mercado, debido a su menor consumo y por la cantidad de luz que emiten. Adquieren una vida útil de hasta 50.000 horas y no generan calor alguna. Si quieres cambiar la iluminación de tu hogar para hacerla mucho más eficiente, ¡esta es tu mejor opción!
Las nuevas lámparas de descarga de alta intensidad producen más luz visible por unidad de energía eléctrica consumida que las lámparas fluorescentes e incandescentes, ya que una mayor proporción de su radiación es luz visible, en contraste con la infrarroja. Sin embargo, la salida de lúmenes de la iluminación HID puede deteriorarse hasta en un 70% durante 10,000 horas de funcionamiento.
Muchos vehículos modernos usan bombillas HID para los principales sistemas de iluminación, aunque algunas aplicaciones ahora están pasando de bombillas HID a tecnología LED y láser.1 Modelos de lámparas van desde las típicas lámparas de 35 a 100 W de los autos, a las de más de 15 kW que se utilizan en los proyectores de cines IMAX.
Esta tecnología HID no es nueva y fue demostrada por primera vez por Francis Hauksbee en 1705. Lámpara de Nernst.
Lámpara incandescente.
Lámpara de descarga. Lámpara fluorescente. Lámpara fluorescente compacta. Lámpara de haluro metálico. Lámpara de vapor de sodio. Lámpara de vapor de mercurio. Lámpara de neón. Lámpara de deuterio. Lámpara xenón.
Lámpara LED.
Lámpara de plasma.
Flash (fotografía) Las lámparas de descarga de alta intensidad (HID) son un tipo de lámparas de descarga de gas muy utilizadas en la industria de la iluminación. Estas lámparas producen luz creando un arco eléctrico entre dos electrodos a través de un gas ionizado. Las lámparas HID son conocidas por su gran eficacia a la hora de convertir la electricidad en luz y por su larga vida útil.
A diferencia de las luces fluorescentes, que necesitan un recubrimiento de fósforo para emitir luz visible, las lámparas HID no necesitan ningún recubrimiento en el interior de sus tubos. El propio arco eléctrico emite luz visible. Sin embargo, algunas lámparas de halogenuros metálicos y muchas lámparas de vapor de mercurio tienen un recubrimiento de fósforo en el interior de la bombilla para mejorar el espectro luminoso y reproducción cromática. Las lámparas HID están disponibles en varias potencias, que van desde los 25 vatios de las lámparas de halogenuros metálicos autobalastradas y los 35 vatios de las lámparas de vapor de sodio de alta intensidad hasta los 1.000 vatios de las lámparas de vapor de mercurio y vapor de sodio de alta intensidad, e incluso hasta los 1.500 vatios de las lámparas de halogenuros metálicos.
Las lámparas HID requieren un equipo de control especial llamado balasto para funcionar
3Redu: Responsabilidad, Resiliencia y Respetocdraco
¡Hola! Somos 3Redu, conformados por Juan Camilo y Cristian. Entendemos las dificultades que enfrentan muchos estudiantes al tratar de comprender conceptos matemáticos. Nuestro objetivo es brindar una solución inclusiva y accesible para todos.
1. Algortimos de tipo Divide y Vencerás
1. Planteamiento general
2. Determinación del caso base
3. Ejemplos clásicos
3.1. Búsqueda binaria
3.2. Algortimos de ordenación
3.3. Problema de la selección
3.4. Multiplicación de matrices de Strassen
1. Planteamiento general
• Idea general
– Descomponer un problema en subproblemas
(más pequeños)
– Resolver cada subproblema
– Combinar las soluciones
1
2. 1. Planteamiento general
Función DV(X: Datos del problema)
si pequeño(X)
entonces
S = sencillo(X)
sino (X1, ..., Xl) = descomponer(X)
para i = 1 hasta l
hacer Si = DV(Xi)
S = combinar(S1, ..., Sl)
devolver S
1. Planteamiento general
• Asumiendo la existencia de
– pequeño(X) - función booleana que determina si
es práctico aplicar sencillo(X)
– sencillo(X) - algoritmo práctico para el problema si
su tamaño es suficientemente pequeño
– descomponer(X) - función que descompone P en l
subproblemas P1, ..., Pl con entradas X1, ..., Xl
– combinar(S1, ..., Sl) - función que combina l
soluciones Si para Pi, en una única para P
2
3. 1. Planteamiento general
• Efectividad del enfoque
– Debe elegirse correctamente el umbral a partir del
cual aplicar sencillo(X)
– Las funciones de descomposición y combinación
deben ser eficientes
– Los subproblemas deben ser aproximadamente
del mismo tamaño
1. Planteamiento general
• Complejidad
– pequeño(X) tarda un tiempo asimilable a otras
funciones del esquema
– sencillo(X) tarda f(n)
– descomponer(X) y combinar(S1, ... Sl) tardan
entre los dos g(n)
– el tamaño de cada subproblema es de n/b
3
4. 1. Planteamiento general
• Complejidad
t(n) = f(n) si sencillo(X)
t(n) = l.t(n/b) + g(n) en otro caso
y si g(n) ∈ θ(nk)
t(n) ∈ θ(nk) si l < bk
t(n) ∈ θ(nk.log n) si l = bk
t(n) ∈ θ(nlog l) si l > bk
1. Planteamiento general
• Observación
– Si l = número de subproblemas
– Y n/b = tamaño de los subproblemas
– No necesariamente l = b !!!
4
5. 1. Planteamiento general
• Ejemplo (Multiplicación de grandes enteros)
– Multiplicar dos números a y b enteros muy
grandes
– Algoritmo clásico ∈ θ(n2) con n = número de cifras
del mayor de los números
1. Planteamiento general
• Ejemplo (Multiplicación de grandes enteros)
– Enfoque DyV1
– Dividir cada número en n/2 cifras
– Ejemplo a = 981, b = 1234
• w = 09, x = 81
• y = 12, z = 34
• a . b = (102w + x)(102y + z) = 104wy + 102(wz + xy) + xz =
1080000 + 127800 + 2754 = 1210554
5
6. 1. Planteamiento general
• Ejemplo (Multiplicación de grandes enteros)
– Complejidad DyV1
t(n) = 1 si n = 1
t(n) = 4.t(n/2) + n en otro caso
=> t(n) ∈ θ(n2)
1. Planteamiento general
• Ejemplo (Multiplicación de grandes enteros)
– Enfoque DyV2
– No calcular (wz + xy) = (w + x)(y + z) - wy - xz
– p = wy, q = xz, r = (w + x)(y + z)
• a . b = 104p + 102(r - p - q) + q
6
7. 1. Planteamiento general
• Ejemplo (Multiplicación de grandes enteros)
– Complejidad DyV2
– Usando el algoritmo clásico para p, q, r,
ahorramos 25%
– Además
t(n) = 1 si n = 1
t(n) = 3.t(n/2) + n en otro caso
=> t(n) ∈ θ(nlog3) = θ(n1.585)
2. Determinación del caso base
• Ejemplo (Multiplicación de grandes enteros)
– Supongamos que usamos el algoritmo DyV2 con
t(n) = h(n) si n ≤ n0
t(n) = 3.t(n/2) + g(n) en otro caso
siendo h(n) = n2 µs el tiempo de la multiplicación
clásica y g(n) = 16n µs el tiempo de las sumas
7
8. 2. Determinación del caso base
• La elección del umbral de aplicación de
sencillo(X) (es decir, pequeño(X)) es
fundamental
• Si no se elige adecuadamente, el enfoque D
y V es muy ineficiente
2. Determinación del caso base
• Ejemplo (Multiplicación de grandes enteros)
– Si n0 = 1
• DyV2 tarda 41 segundos para 5000 cifras
• M. Clásica tarda 25 segundos para 5000 cifras
– Si n0 = 64
• DyV2 tarda 6 segundos para 5000 cifras
8
9. 2. Determinación del caso base
• El umbral depende de
– los algoritmos
– las implementaciones
• Cálculo del umbral
– Calcular la complejidad de los algoritmos
– Calcular las constantes de la implementación
– Calcular el n0 tal que los tiempos del algoritmo DV
y del clásico coincidan en él
3. Ejemplos clásicos
3.1. Búsqueda binaria
• Problema
– Dada una matriz T de n componentes ordenada
crecientemente (T[i] ≤ T[i+1]), y dado un elemento
x, encontrar el i tal que
• 1 ≤ i ≤ n+1
• T[i-1] < x ≤ T[i]
– Observación
• Si x no está en T, se pide dónde debería estar
9
10. 3. Ejemplos clásicos
3.1. Búsqueda binaria
• Solución clásica (secuencial)
Función bsecuencial(T: matriz [1..n] de entero, x: entero) :
entero
para i = 1 hasta n
hacer
si (x ≤ T[i])
entonces devolver i
devolver n+1
3. Ejemplos clásicos
3.1. Búsqueda binaria
• Complejidad (secuencial)
– O(n) en el caso peor
– Ω(1) en el caso mejor
– θ((n+1)/2) = θ(n) en media
10
11. 3. Ejemplos clásicos
3.1. Búsqueda binaria
• Enfoque Divide y Vencerás (binaria)
– Dividir la matriz en dos partes de igual tamaño
– Buscar en una sola de las dos partes
– (Para reducir el número de llamadas, mirar
primero si x puede estar en la matriz)
3. Ejemplos clásicos
3.1. Búsqueda binaria
Función bbinaria(T: matriz [1..n] de entero, x: entero) :
entero
si ((n = 0) o (x > T[n]))
entonces devolver n+1
sino devolver brecursiva(T,1,n,x)
11
12. 3. Ejemplos clásicos
3.1. Búsqueda binaria
Función brecursiva(T: matriz [1..n] de entero, i,j,x: entero) :
entero
si (i = j)
entonces devolver i
k = (i+j) div 2
si x ≤ T[k]
entonces devolver brecursivo(T,i,k,x)
sino devolver brecursivo(T,k+1,j,x)
3. Ejemplos clásicos
3.1. Búsqueda binaria
• Complejidad
t(n) = 1 si n = 1
t(n) = t(n/2) + g(n) si n = 2i, n > 1
con g(n) ∈ θ(1)
=> t(n) ∈ θ(log2 n) = θ(log n)
12
13. 3. Ejemplos clásicos
3.1. Búsqueda binaria
• Observaciones
– Perdemos eficiencia en el caso mejor
• El caso mejor de bsecuencial es más general
– Ganamos eficiencia en todos los demás casos
– La versión iterativa de bbinaria es equivalente en
tiempo
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Problema
– Dada una matriz T de n componentes, ordenarla
ascendentemente
• T[i] ≤ T[i+1] para 1 ≤ i ≤ n-1
– Disponemos de dos algoritmos que ordenan
matrices en tiempo O(n2)
• Ordenación por selección
• Ordenación por inserción
13
14. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Idea de un algoritmo de tipo D y V
– Descomponer la matriz original en dos partes
– Ordenar cada parte por separado
– Combinar las partes ordenadas
• Dos enfoques
– Descomposición simple, combinación compleja
– Descomposición compleja, combinación simple
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Ordenación por mezcla
– Dividir la matriz por la mitad
– Ordenar cada mitad
– Mezclar las mitades ordenadas
• Precisa espacio auxiliar (no es in situ)
14
15. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
Procedimiento ordmezcla(T: matriz [1..n+1] de entero, i,j:
entero)
U, V: matriz [1..n+1] de entero
si (i < j)
entonces
k = (i+j) div 2
para l = i hasta k hacer U[l] = T[l]
para l = k+1 hasta j hacer V[l] = T[l]
ordmezcla(U,i,k)
ordmezcla(V,k+1,j)
mezclar(U,V,T,k)
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
Procedimiento mezclar(U,V,T: matriz [1..n+1] de entero,
i,j,k: entero)
U[k+1] = ∞; V[j+1] = ∞
{marcadores para evitar comparaciones}
i1 = i; j1 = k+1 {índices}
para k2 = i hasta j
hacer si (U[i1] < V[j1])
entonces T[k2] = U[i2]
i2 = i2 +1
sino T[k2] = V[j2]
j2 = j2 +1
15
16. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Complejidad
– La descomposición y la mezcla se hacen en
tiempo lineal
t(n) = 2t(n div 2) + g(n) si n es par
t(n) = t(n div 2) + t(n div 2 +1) + g(n) si n es impar
t(n) = 2t(n/2) + g(n) si n = 2i
con g(n) ∈ θ(n)
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Complejidad
t(n) ∈ θ(n.log2 n)
– Precisa mucho espacio auxiliar
– Caso base: j -i suficientemente pequeño =>
ordenar por inserción
16
17. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Ordenación rápida (Hoare)
– Se elige un elemento “pivote”
– Se desplazan a un lado los elementos menores
que él y a otro los mayores
– Se ordenan las submatrices
– No hace falta combinar los resultados
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Observaciones
– Para que los subcasos queden equilibrados, la
elección ideal del pivote es la mediana
– La descomposición
• no debe necesitar espacio auxiliar (in situ)
• debe hacerse en una sola pasada
17
18. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
Procedimiento pivote(T: matriz [1..n] de entero, i,j, var l:
entero)
p = T[i]; k = i; l = j+1
repetir k = k+1 hasta (T[k] > p ó k ≥ j)
repetir l = l -1 hasta (T[l] ≤ p)
mientras (k < l)
hacer intercambiar(T,k,l)
repetir k = k+1 hasta (T[k] > p)
repetir l = l -1 hasta (T[l] ≤ p)
intercambiar(T,i,l)
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
Procedimiento ordrapida(T: matriz [1..n] de entero, i,j:
entero)
si (i < j)
entonces
pivote(T,i,j,l)
ordrapida(T,i,l-1)
ordrapida(T,l+1,j)
18
19. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Complejidad
– El tamaño de los subproblemas depende de la
posición donde va el elemento pivote
– La posición del pivote depende de los datos del
problema
– Estudio del mejor y peor casos, y en media
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Complejidad (peor caso)
– El peor caso se da cuando los subproblemas
están más desequilibrados (por ejemplo, T
ordenada)
t(n) = t(n-1) + t(1) + g(n)
con g(n) ∈ θ(n) (cálculo del pivote)
=> t(n) ∈ θ(n2)
19
20. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Complejidad (mejor caso)
– El mejor caso se da cuando los subproblemas
están perfectamente equilibrados (por ejemplo,
cuando el elemento pivote es siempre la mediana
de la submatriz correspondiente)
t(n) = 2t(n/2) + g(n) si n = 2i
con g(n) ∈ θ(n) => t(n) ∈ θ(n.log n)
3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Complejidad (en media)
– Suposiciones
• Los n elementos de T son distintos
• pivote(T,1,n,l) asigna a l una posición cualquiera entre 1
y n => todas las posiciones equiprobables
– Se estudia el número medio de llamadas y
operaciones adicionales
=> t(n) ∈ θ(n.log n)
20
21. 3. Ejemplos clásicos
3.2. Algoritmos de ordenación
• Observaciones
– Una versión práctica
• Tomar la mediana de T[1], T[n/2], T[n]
– Situación general
• Los elementos se repiten => modificar pivote(T,i,j,l) para
obtener pivote(T,i,j,k,l) de modo que entre k y l estén los
elementos repetidos
– Se puede lograr θ(n.log n) pero con una constante
oculta alta
3. Ejemplos clásicos
3.3. Problema de la selección
• Problema
– Dada una matriz T de n componentes con
elementos desordenados, encontrar el k-esimo
elemento más pequeño
• Si k = 1, se busca el mínimo
• Si k = n, se busca el máximo
• Si k = n/2, se busca la mediana (elemento que deja a su
izda. el 50% de los datos, y a su dcha. el otro 50%)
• Si k = 1/4, 1/2 y 3/4, se buscan los cuartiles
• Si k = 1/10, 1/5, 3/10, ..., 9/10, se buscan los deciles
21
22. 3. Ejemplos clásicos
3.3. Problema de la selección
• Algoritmo sencillo
– Ordenar la matriz
– Seleccionar el elemento en la posición k
• Complejidad
– Usando la ordenación rápida
O(n2) en el caso peor
O(n.log n) en el caso mejor y en media
3. Ejemplos clásicos
3.3. Problema de la selección
• Opción
– Usar el procedimiento pivote(T,i,j,l)
– El pivote queda en la posición l
• Si l = k, hemos acertado
• Si l > k, hay que buscar el elemento en las casillas de i a
l-1
• Si l < k, hay que buscar el elemento en las casillas de
l+1 a k
22
23. 3. Ejemplos clásicos
3.3. Problema de la selección
Función seleccion(T: matriz [1..n] de entero, k: entero):
entero
i = 1; j = n
pivote(T,i,j,l)
mientras (k ≠ l)
hacer si (l > k)
entonces j = l-1
sino i = l+1
pivote(T,i,j,l)
devolver T[l]
3. Ejemplos clásicos
3.3. Problema de la selección
• Complejidad
– Depende de los datos de entrada, porque se basa
en el procedimiento pivote
– Caso mejor
• Acertamos a la primera
t(n) ∈ θ(n)
23
24. 3. Ejemplos clásicos
3.3. Problema de la selección
• Complejidad
– Caso peor
• Por ejemplo, k = 1 y T = [9, 1, 2, 3, 4, 5, 6, 7, 8]
t(n) ∈ θ(n2)
– En media
• Se hace un número logarítmico de llamadas a pivote(),
cada una con coste lineal
t(n) ∈ θ(n.log n)
3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
• Problema
– Multiplicar dos matrices de nxn componentes
• Solución elemental
– La que viene dada por la definición clásica
24
25. 3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
Función multiplicar(A,B: matriz [1..n][1..n] de entero):
matriz [1..n][1..n] de entero
R : matriz [1..n][1..n] de entero
para i = 1 hasta n
hacer para j = 1 hasta n
hacer R[i][j] = 0
para k = 1 hasta n
hacer R[i][j] = R[i][j] + A[i][k] . B[k][j]
devolver R
3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
• Complejidad
– t(n) ∈ θ(n3)
• Enfoque Divide y vencerás
– Descomponer las matrices en menores de tamaño
inferior
25
26. 3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
• Descomposición
A11 A12 B11 B12 R11 R12
A= B= R=
A21 A22 B21 B22 R21 R22
R11 = A11xB11 + A12xB21
R12 = A11xB12 + A12xB22
R21 = A21xB11 + A22xB21
R22 = A21xB12 + A22xB22
3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
• Complejidad
t(n) = 1 si n ≤ 2
t(n) = 8t(n/2) + n2 si n > 2, n = 2i
=> t(n) ∈ θ(n3)
26
27. 3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
• Reducción del número de multiplicaciones
(Strassen, 1970)
P = (A11+A22) (B11+B22)
Q = (A21+A22)B11 R11 = P+S-T+V
R’ = A21(B12-B22) R12 = R’+T
S = A22(B21-B11) => R21 = Q+S
T = (A11+A12)B22 R22 = P+R-Q+U
U = (A21-A11) (B11+B12)
V = (A12-A22) (B21+B22)
3. Ejemplos clásicos
3.4. Multiplicación de matrices de
Strassen
• Complejidad
t(n) = 1 si n ≤ 2
t(n) = 7t(n/2) + n2 si n > 2, n = 2i
=> t(n) ∈ θ(nlog2 7) = θ(n2,81)
27