Clase 12 de Marzo de 2025 Relaciones de recurrencia I¶
Relaciones de recurrencia (RR)¶
¿Que son?
- Funciones que un término depende de los anteriores
- Funciones deben tener valores conocidos condiciones iniciales (parada de la recursión)
Soluciones a la R.R
- Si no hay condiciones iniciales pueden ser multiples funciones en términos n
- Para que sea una sola solución deben existir las condiciones iniciales
Relaciones de recurrencia homogeneas¶
Que forma tienen
Las constantes C son diferentes de 0
Solución
- Estime la ecuación caracteristica
- Forma de la solución es estimar las raices de la ecuación caracteristica
- Estas constantes se estiman resolviendo el sistema reemplazando por las condiciones iniciales
La relación de recurrencia dada es:
Paso 1: Ecuación característica¶
Para resolver la R.R, planteamos la ecuación característica:
Factorizamos la ecuación:
Por lo tanto, las raíces son:
Paso 2: Forma general de la solución¶
La solución general para la R.R es:
Paso 3: Determinar las constantes usando las condiciones iniciales¶
Usamos las condiciones iniciales:
Sustituimos en la solución general:
Para \(a(0)\):
Para \(a(1)\):
Esto forma un sistema de ecuaciones:
- \(A + B = 5\)
- \(2A + 3B = 8\)
Resolviendo el sistema:
De la primera ecuación:
Sustituimos \(B\) en la segunda ecuación:
Sustituimos \(A = 7\) en \(B = 5 - A\):
Paso 4: Solución particular¶
Sustituimos \(A = 7\) y \(B = -2\) en la solución general:
Ecuaciones homogeneas con raices repetidas¶
Si aplicamos este metodo para R.R (2,2)
Supongamos que la condiciones iniciales son a0 = 3 a1= 5
Esto es un sistema inconsistente
La solución por cada raiz repetida van multiplicando la solución n¹ , n² , n³ ….
Ejemplo¶
Raices (2,2,2,3,3)
object recurrencia1 {
def a(n:Int):Int = {
if (n==0) 4
else {
if (n==1) 6
else 5*a(n-1)-6*a(n-2)
}
}
def f(n:Int):Int = -2*Math.pow(3,n).toInt+6*Math.pow(2,n).toInt
def main(args: Array[String]): Unit = {
val l = (0 to 15).toList
for (n <- l) {
println("n = "+n+" a(n) = "+a(n)+" f(n) = "+f(n))
}
}
}