Dividiendo la ecuación (29) entre y teniendo en cuenta la definición (1) de los polinomios de Legendre se obtiene que
, lo que quiere decir que los polinomios de Legendre son soluciones de la ecuación (27). Para hallar la solución general de la ecuación (27) se multiplica la ecuación por -1,
(27")
, luego se busca la solución general en la forma
(30)
Teniendo en cuenta que
, la ecuación (27") se transforma en:
(31)
Si los ceros de son entonces
Descomponiendo en fracciones simples,
(32)
, donde
,
Se observa que Por derivación,
Escribiendo que es una solución de la ecuación diferencial (27") resulta que
(33)
Poniendo en (33) resulta que
Así, según la relación (31),
(34)
(34")
, donde
(34")
, es un polinomio de grado menor o igual que
Por tanto, según (30), la solución general de la ecuación diferencial (27) es
(35)
Definición 2: Las funciones
(36)
, se llaman las funciones de Legendre de tipo 2.
Evidentemente, las funciones (36) son soluciones de la ecuación (27), y los polinomios se pueden determinar sustituyendo las funciones (36) en la ecuación (27).
Lema 6:
En efecto, si se introducen las notaciones
,
, entonces
(37)
Escribiendo que son soluciones de la ecuación (27), resulta que
(38)
(39)
Luego, teniendo en cuenta que es solución de la ecuación (27) los coeficientes de t y de s en las igualdades (38) y (39) son nulos. Así (38) y (39) son equivalentes a las siguientes:
(40)
(41)
, respectivamente. Sumando las últimas dos ecuaciones se obtiene que
(42)
Teniendo en cuenta que las únicas soluciones de tipo polinomio de la ecuación diferencial (27) son los polinomios de Legendre de grado el polinomio nulo y que los polinomios son de gradoresulta que
(43)
Para hallar hay que sustituir en la ecuación (36) y tener en cuenta que
y y que es una constante:
Entonces, y
Para hallar hay que sustituir en la ecuación (40) y tener en cuenta que
y y que
Para hallar hay que sustituir en la ecuación (40) y tener en cuenta que
y y que
Para hallar hay que sustituir en la ecuación (36) y tener en cuenta que
Lema 7: En los polinomios los exponentes de son todos pares o todos impares (se considera que 0 es par), según que n-1 es par o impar.
En efecto, según la fórmula (34"),
, donde se son los ceros de en orden creciente. Entonces, teniendo en cuenta el lema 3,
Así, es una función polinomio par o impar según que es par o impar.
Observación 4: Teniendo en cuenta el lema 7, en el cálculo de los polinomiosse puede reducir considerablemente el volumen de los cálculos:
Para hallar teniendo en cuenta el lema (7) resulta que puesto que Luego, puesto que
,
, y sustituyendo en la relación (36) para a las expresiones siguientes
, resulta que
Así,
Utilizando la observación 4, se puede averiguar que
El código siguiente permite calcular los polinomios utilizando las operaciones con números enteros y decimales largos [4] y [5] y las funciones para operar con facciones expuestas a continuación.
Public Function PolLegWNG(ByVal g As Integer) As String
Dim i As Integer, j As Integer, i1 As Integer, pg As String, y() As String, z() As String
Dim res() As String, rc As String, dpleg() As String, dy() As String, y1() As String, resf As String
Dim n As Integer, pot2 As String, cw() As String, gm As Integer, cw1() As String, cw2() As String
Dim expot2 As Integer, rr() As String, nm As Integer, x(2) As String ', cw22() As String
If g < 3 Then
If g = 2 Then
PolLegWNG = "(-3/2)x": Exit Function
End If
If g = 1 Then
PolLegWNG = "-1": Exit Function
End If
Else
ReDim res(g – 1, 2)
rc = Chr$(13) + Chr$(10): gm = Int(g / 2): n = 7
ReDim z(g), cw(g – 1), dy(g – 1), y(g), dpleg(g – 1, 2) ', cw1(g – 1), cw2(g – 2)
y1() = PolLegNG(g)
For i = 0 To g: y(i) = y1(i): Next i
expot2 = y1(g + 1)
x(1) = "2": x(2) = expot2: pot2 = Potencias(x(), n): j = 0
dy() = PolDerivadoNG(y(), n)
For j = 0 To g – 1
x(1) = dy(j): x(2) = "2": dpleg(j, 1) = Multiplicar(x(), n)
Next j
For j = 0 To g – 1: dpleg(j, 2) = pot2: Next j
For i = 0 To g – 1
i1 = i Mod 2
If i1 = 0 Then cw(i) = "1" Else cw(i) = "0"
Next i
cw1() = PolDerivadoNG(cw(), n)
cw2() = PolDerivadoNG(cw1(), n)
nm = Str$(g * (g + 1)): If Left$(nm, 1) = " " Then nm = Mid$(nm, 2)
For i = 0 To g – 1
x(1) = nm: x(2) = cw(i): cw(i) = Multiplicar(x(), n)
Next i
For i = 0 To g – 2
x(1) = "-2": x(2) = cw1(i): x(1) = Multiplicar(x(), n)
x(2) = cw(i): cw(i) = Sumar(x(), n)
Next i
'cw22() = cw2()
For i = 0 To g – 3
x(1) = "-1": x(2) = cw2(i): x(1) = Multiplicar(x(), n)
x(2) = cw(i): cw(i) = Sumar(x(), n)
Next i
For i = 0 To g – 1 Step 2
If i = 0 Then
x(1) = dpleg(i, 1): x(2) = dpleg(i, 2)
z(1) = "-1": z(2) = cw(i): rr() = mufr(x(), z())
res(i, 1) = rr(1): res(i, 2) = rr(2)
Else
x(1) = res(i – 2, 1): x(2) = res(i – 2, 2): z(1) = cw2(i – 2): z(2) = "1": rr() = mufr(x(), z())
x(1) = dpleg(i, 1): x(2) = dpleg(i, 2): z(1) = rr(1): z(2) = rr(2)
rr() = sufr(x(), z())
x(1) = "-1": x(2) = cw(i): rr() = mufr(rr(), x())
res(i, 1) = rr(1): res(i, 2) = rr(2)
End If
Next i
End If
resf = "W" + Mid$(Str$(g – 1), 2) + "(x) = "
For i = 0 To g – 1 Step 2
resf = resf + "(" + res(i, 1) + "/" + res(i, 2) + ")" + "x^" + Str$(g – 1 – i)
If g – 1 – i = 0 Or g – 1 – i = 1 Then
Exit For
Else
resf = resf + " + "
End If
Next i
PolLegWNG = resf
End Function
' ———————————————————————————
Public Function PolDerivadoNG(ByRef p() As String, n As Integer) As Variant
Dim i As Integer, gx As Integer, x(2) As String, xd() As String
gx = UBound(p())
ReDim xd(gx – 1)
For i = 0 To gx – 1
x(1) = Mid$(Str$(gx – i), 2): x(2) = p(i)
xd(i) = Multiplicar(x(), n)
Next i
PolDerivadoNG = xd()
End Function
' ——————————————————————
Public Function sufr(xa() As String, ya() As String) As Variant
Dim x(2) As String, fr(2) As String, rr() As String
Dim n As Integer, r1 As String, r2 As String
n = 7
x(1) = xa(1): x(2) = ya(2): r1 = Multiplicar(x(), n)
x(1) = xa(2): x(2) = ya(1): r2 = Multiplicar(x(), n)
x(1) = r1: x(2) = r2: fr(1) = Sumar(x(), n)
x(1) = xa(2): x(2) = ya(2): fr(2) = Multiplicar(x(), n)
x(1) = fr(1): x(2) = fr(2): rr() = sifr(x())
fr(1) = rr(1): fr(2) = rr(2)
sufr = fr()
End Function
' ——————————————————————-
Public Function refr(xa() As String, ya() As String) As Variant
Dim x(2) As String, fr(2) As etring, rr() As String
Dim n As Integer, r1 As String, r2 As String
n = 7
x(1) = xa(1): x(2) = ya(2): r1 = Multiplicar(x(), n)
x(1) = xa(2): x(2) = ya(1): r2 = Multiplicar(x(), n)
x(1) = r1: x(2) = r2: fr(1) = Restar(x(), n)
x(1) = xa(2): x(2) = ya(2): fr(2) = Multiplicar(x(), n)
x(1) = fr(1): x(2) = fr(2): rr() = sifr(x())
fr(1) = rr(1): fr(2) = rr(2)
refr = fr()
End Function
' ——————————————————————–
Public Function mufr(xa() As String, ya() As String) As Variant
Dim x(2) As String, fr(2) As String, rr() As String
Dim n As Integer
n = 7
x(1) = xa(1): x(2) = ya(1): fr(1) = Multiplicar(x(), n)
x(1) = xa(2): x(2) = ya(2): fr(2) = Multiplicar(x(), n)
rr() = sifr(fr())
fr(1) = rr(1): fr(2) = rr(2)
mufr = fr()
End Function
' ———————————————————————————
Public Function sifr(xa() As String) As Variant
Dim x(2) As String, fr(2) As String, rr() As String
Dim n As Integer, mcd As String, r As String
n = 7
mcd = MaxComDiv(xa(), n)
x(1) = xa(1): x(2) = mcd
rr() = DivisionEuclidea(x(), n): fr(1) = rr(1)
x(1) = xa(2): x(2) = mcd
rr() = DivisionEuclidea(x(), n): fr(2) = rr(1)
sifr = fr()
End Function
Para darse cuenta de la eficacia del código anterior, se obtiene con mucha rapidez el resultado siguiente:
Lema 8: (44)
En efecto, según el binomio de Newton,
(45)
Derivando la igualdad (45) sucesivamente se obtiene que
Definición 3: Se llama función generatriz de los polinomios de Legendre la función:
(46)
Para desarrollar en una serie de potencias a la función (46), según la variable se considera el desarrollo
(47)
, convergente para
Teniendo en cuenta que se puede elegir a tan pequeño para que tengan lugar las desigualdades
Entonces poniendo en el desarrollo (45) se obtiene que
(48)
Desarrollado y ordenando a (48) según las potencias de t, resulta que
, donde
, y en general el coeficiente del término de que contiene a es
Por tanto, según el lema 8,
Bibliografía:
[1 ] Nicolae Cioranescu, Tratat de Matematici Speciale, Edititura de Stat Didactic? si Pedagogica,
Bucuresti, 1962
[2] I. GH. Sabac, MATEMATICI SPECIALE, I-II, Edititura de Stat Didactic? si Pedagogica,
Bucuresti, 1962
[ 3] V.Rudner, Editura Didactica si Pegagogic?, Bucuresti, 1970 .
[4] Aladar Peter Santha, Cálculos con números enteros largos en ordenadores, Monografias.com, 2012
[5] Aladar Peter Santha, Cálculos con números decimales largos en ordenadores, Monografias.com, 2012
Autor:
Aladar Peter Santha
Página anterior | Volver al principio del trabajo | Página siguiente |