22 votos

Resolución de un peculiar sistema de ecuaciones

Tengo el siguiente sistema de ecuaciones donde se conocen de la $m$ $a, b, c, x, y, z$ son desconocidos. ¿Cómo uno va sobre la solución de este sistema? No aplicarán todos los trucos de álgebra lineal generalmente que sé y no quiero hacerlo a través de sustituciones tediosas.

\begin{aligned} un + b + c & = m_0 \\ ax + por + cz & = m_1 \\ ax ^ 2 + a ^ 2 + cz ^ 2 & = m_2 \\ ax ^ 3 + a ^ 3 + cz ^ 3 & = m_3 \\ ax ^ 4 + a ^ 4 + cz ^ 4 & = m_4 \\ ax ^ 5 + por ^ 5 + cz ^ 5 & = m_5 \end{aligned}

17voto

Alex Bolotov Puntos 249

Deje que $\displaystyle x,y,z$ ser raíces de $\displaystyle t^3 + pt^2 + qt + r = 0$.

es decir,

$\displaystyle x^3 + px^2 + qx + r = 0$ ----- (1)

$\displaystyle y^3 + py^2 + qy + r = 0$ ----- (2)

$\displaystyle z^3 + pz^2 + qz + r = 0$ ----- (3)

Multiplicar el (1) por $\displaystyle$, (2) por $\displaystyle b$ y (3) por $\displaystyle c$ y la adición de da

$\displaystyle m_3 + p m_2 + q m_1 + rm_0 = 0$ ----- (4)

Multiplicar el (1) por $\displaystyle ax$, (2) por $\displaystyle por$ y (3) por $\displaystyle cz$ y la adición de da

$\displaystyle m_4 + pm_3 + qm_2 + rm_1 = 0$ ----- (5)

Multiplicar el (1) por $\displaystyle ax^2$, (2) por $\displaystyle por^2$ y (3) por $\displaystyle cz^2$ y la adición de da

$\displaystyle m_5 + pm_4 + qm_3 + rm_2 = 0$ ----- (6)

Ahora (4), (5), (6) es un conjunto de 3 ecuaciones lineales con 3 variables ($\displaystyle p,q,r$) y puede ser resuelto fácilmente.

Esto nos da la cúbico que $\displaystyle x,y,z$ satisfacer (porque podemos descubrir que $\displaystyle p,q,r$) que se pueden resolver mediante el Método de Cardano, o más simplemente por el Trigonométricas Hiperbólicas Método.

Una vez que usted sabe que $\displaystyle x,y,z$ puede resolver por $\displaystyle a,b,c$, como esos que se hacen sólo de ecuaciones lineales.

5voto

Xetius Puntos 10445

Mira las primeras tres ecuaciones como un sistema de ecuaciones lineales determinación de $a$, $b$ y $c$ en términos de $$ x, $y$, $z$, $m_0$, $m_1$, $m_2$; la matriz de coeficientes es una de van der Monde de la matriz para el triple $x$, $y$, $z$, por lo que no es difícil usar la regla de Cramer para resolver cuando no hay dos de ellos son iguales.

Ahora reemplace los valores que tienes para $a$, $b$ y $c$ en el segundo grupo de tres ecuaciones. Por arte de magia, después de la simplificación y la cancelación de las cosas comunes a numeradores y denominadores, es un sistema de polinomio de ecuaciones en $x$, $y$ y $z$. Además, los tres de la mano izquierda lados son simétricos polinomios en $x$, $y$ y $z$, así que después de expresar dichos mano izquierda lados en términos de la primaria simétrica polinomios en $x$, $y$ y $z$, usted termina con un no demasiado difícil polinomio sistema.

Resolverlo.

Ahora usted tiene los valores de $x+y+z$, $xy+xz+yz$ y $xyz$. La solución de una ecuación cúbica ahora le da $x$, $y$ y $z$ y, a partir de la primera parte, también $a$, $b$ y $c$.

PD: Siguiendo estos pasos es fácilmente factible en Mathematica y obtener una respuesta. La respuesta es simplemente demasiado grande, y creo que no se puede dar masajes en algo sensato---y he ahí la duda no es una buena manera de resolver el sistema de ecuaciones con la mano.

Mma, por otro lado, no resuelve el sistema tal y como está originalmente en el momento en que me dio.

NB2: Para la comparación, el sistema $$\left\{\begin{aligned}a + b = m_0\\ax+by=m_1\\ax^2+^2=m_2\\ax^3+^3=m_3\end{aligned}\right.$$ tiene como solución, de acuerdo con Mma (y esto uno lo hace se calcula por sí mismo): $$\begin{aligned} a &= \frac{-2 m_1^3+3 m_0 m_2 m_1+m_0 \left(\sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+4 m_0 m_2^3+m_0^2 m_3^2}-m_0 m_3\right)}{2 \sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+m_0 \left(4 m_2^3+m_0 m_3^2\right)}} \\ &b = \frac{2 m_1^3-3 m_0 m_2 m_1+m_0 \left(m_0 m_3+\sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+4 m_0 m_2^3+m_0^2 m_3^2}\right)}{2 \sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+m_0 \left(4 m_2^3+m_0 m_3^2\right)}} \\ &x = \frac{-m_1 m_2+m_0 m_3+\sqrt{\left(m_1 m_2-m_0 m_3\right){}^2+4 \left(m_1^2-m_0 m_2\right) \left(m_1 m_3-m_2^2\right)}}{2 \left(m_0 m_2-m_1^2\right)} \\ &y = \frac{m_1 m_2-m_0 m_3+\sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+4 m_0 m_2^3+m_0^2 m_3^2}}{2 m_1^2-2 m_0 m_2} \end{aligned} $$ y $$\begin{aligned} a &=\frac{2 m_1^3-3 m_0 m_2 m_1+m_0 \left(m_0 m_3+\sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+4 m_0 m_2^3+m_0^2 m_3^2}\right)}{2 \sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+m_0 \left(4 m_2^3+m_0 m_3^2\right)}} \\ &b=\frac{-2 m_1^3+3 m_0 m_2 m_1+m_0 \left(\sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+4 m_0 m_2^3+m_0^2 m_3^2}-m_0 m_3\right)}{2 \sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+m_0 \left(4 m_2^3+m_0 m_3^2\right)}} \\ &x=-\frac{m_1 m_2-m_0 m_3+\sqrt{\left(m_1 m_2-m_0 m_3\right){}^2+4 \left(m_1^2-m_0 m_2\right) \left(m_1 m_3-m_2^2\right)}}{2 \left(m_0 m_2-m_1^2\right)} \\ &y=-\frac{-m_1 m_2+m_0 m_3+\sqrt{4 m_3 m_1^3-3 m_2^2 m_1^2-6 m_0 m_2 m_3 m_1+4 m_0 m_2^3+m_0^2 m_3^2}}{2 \left(m_1^2-m_0 m_2\right)} \end{aligned} $$

4voto

Andrew Puntos 140

Parece que estoy un poquito tarde para este partido en particular, pero pensé que tenía que mostrar otra manera de resolver el OP algebraica del sistema, que voy a refundir aquí en notación diferente:

$$\begin{aligned} w_1+w_2+w_3&=m_0\\ w_1 x_1+w_2 x_2+w_3 x_3&=m_1\\ w_1 x_1^2+w_2 x_2^2+w_3 x_3^2&=m_2\\ w_1 x_1^3+w_2 x_2^3+w_3 x_3^3&=m_3\\ w_1 x_1^4+w_2 x_2^4+w_3 x_3^4&=m_4\\ w_1 x_1^5+w_2 x_2^5+w_3 x_3^5&=m_5 \end{aligned}$$

y el problema es encontrar los $x_i$ y el $w_i$ satisfacer el sistema de ecuaciones.

La clave aquí es reconocer que este es exactamente el problema de la recuperación de los nodos $x_i$ y pesos $w_i$ de $n$-punto de cuadratura de Gauss de la regla con un poco de peso de la función $w(u)$ y un poco de apoyo intervalo $[a,b]$, dado los momentos de $m_j=\int_a^b w(u)u^j \mathrm du,\quad j=0\dots2n-1$. Recordemos que $$n-punto las reglas son diseñadas para exactamente integrar funciones de la forma $w(u)p(u)$, donde $p(u)$ es un polinomio de grado a lo más $2n-1$, y esta es la razón por la que tenemos $2n$ ecuaciones.

Como es bien sabido, los nodos y los pesos de una cuadratura de Gauss puede ser obtenida si sabemos que los polinomios ortogonales $P_k(u)$ asociadas con el peso de la función $w(u)$. Esto es debido al hecho de que los nodos de una $n$-punto de Gauss regla son las raíces del polinomio ortogonal $P_n(u)$. La primera fase del problema, ahora, es determinar el conjunto de polinomios ortogonales de los momentos.

Por suerte, en 1859(!), Chebyshev obtenido un método para determinar la recursividad de los coeficientes de $a_k$, $b_k$ para el polinomio ortogonal de recurrencia

$$P_{k+1}(u)=(u-a_k)P_k(u)-b_k P_{k-1}(u)\quad P_{-1}(u)=0,P_0(u)=1$$

cuando se les da la $m_j$. Chebyshev del algoritmo es el siguiente: inicializar las cantidades

$$\sigma_{-1,l}=0,\quad l=1,\dots,2n-2$$ $$\sigma_{0,l}=m_l,\quad l=0,\dots,2n-1$$ $$a_0=\frac{m_1}{m_0}$$ $$b_0=m_0$$

y, a continuación, realizar la recursividad

$$\sigma_{k,l}=\sigma_{k-1,l+1}-a_{k-1}\sigma_{k-1,l}-b_{k-1}\sigma_{k-2,l}$$

para $l=k,\dots,2n-k+1$ y $k=1,\dots,n-1$, a partir de la cual la recursividad coeficientes de $k=1,\dots,n-1$ son dadas por

$$a_k=\frac{\sigma_{k,k+1}}{\sigma_{k,k}}-\frac{\sigma_{k-1,k}}{\sigma_{k-1,k-1}}$$ $$b_k=\frac{\sigma_{k,k}}{\sigma_{k-1,k-1}}$$

Voy a omitir los detalles de cómo el algoritmo se obtuvo, y en lugar de decirle a usted para buscar en este papel por Walter Gautschi donde se habla de estas cosas.

Una vez que el $a_k$ y $b_k$ se han obtenido, resolviendo el conjunto original de ecuaciones se puede hacer a través de la Golub-Welsch algoritmo; esencialmente, uno resuelve un tridiagonal simétrica eigenproblem donde $a_k$ son las entradas de la diagonal y el $b_k$ son las entradas fuera de la diagonal (el polinomio característico de este tridiagonal simétrica la matriz es de $P_n(x)$). El $x_i$ son los autovalores de la matriz, y los $w_i$ puede ser obtenido a partir de los primeros componentes de los vectores propios normalizados por la multiplicación de los cuadrados de esas cantidades con $m_0$.

He sido totalmente teórico hasta este punto, y usted y la mayoría de la gente prefiere tener el código para jugar con. Por lo tanto, ofrecen la siguiente Mathematica aplicación de la teoría de los descritos anteriormente:

(* Chebyshev's algorithm *)

chebAlgo[mom_?VectorQ, prec_: MachinePrecision] := 
 Module[{n = Quotient[Length[mom], 2], si = mom, ak, bk, np, sp, s, v},
  np = Precision[mom]; If[np === Infinity, np = prec];
  ak[1] = mom[[2]]/First[mom]; bk[1] = First[mom];
  sp = PadRight[{First[mom]}, 2 n - 1];
  Do[
   sp[[k - 1]] = si[[k - 1]];
   Do[
    v = sp[[j]];
    sp[[j]] = s = si[[j]];
    si[[j]] = si[[j + 1]] - ak[k - 1] s - bk[k - 1] v;
    , {j, k, 2 n - k + 1}];
   ak[k] = si[[k + 1]]/si[[k]] - sp[[k]]/sp[[k - 1]];
   bk[k] = si[[k]]/sp[[k - 1]];
   , {k, 2, n}];
  N[{Table[ak[k], {k, n}], Table[bk[k], {k, n}]}, np]
  ]

(* Golub-Welsch algorithm *)

golubWelsch[d_?VectorQ, e_?VectorQ] := 
 Transpose[
  MapAt[(First[e] Map[First, #]^2) &, 
   Eigensystem[
    SparseArray[{Band[{1, 1}] -> d, Band[{1, 2}] -> Sqrt[Rest[e]], 
      Band[{2, 1}] -> Sqrt[Rest[e]]}, {Length[d], Length[d]}]], {2}]]

(Tomo nota de que la aplicación aquí de Chebyshev del algoritmo se ha optimizado para el uso de dos vectores en lugar de una matriz de dos dimensiones.)

Vamos a intentar un ejemplo. Deje de $m_j=j!$ y tomar el sistema anterior ($n=3$):

{d, e} = chebAlgo[Range[0, 5]!]
{{1., 3., 5.}, {1., 1., 4.}}

xw = golubWelsch[d, e]
{{6.2899450829374794, 0.010389256501586145}, {2.2942803602790467, 0.27851773356923976}, {0.4157745567834814, 0.7110930099291743}}

Tenemos aquí la equivalencia xw[[i, 1]]$=x_i$ y xw[[i, 2]]$=w_i$; vamos a ver si el conjunto original de ecuaciones son satisfechos:

Chop[Table[Sum[xw[[j, 2]] xw[[j, 1]]^i, {j, 3}] - i!, {i, 0, 5}]]
{0, 0, 0, 0, 0, 0}

y lo son.

(Este ejemplo corresponde a la generación de los tres puntos de Gauss-Laguerre de la regla.)


Como final a un lado, la solución dada por Aryabhata es una manera aceptable de la generación de cuadratura de Gauss reglas de momentos, a pesar de que se requieren $O(n^3)$ esfuerzo en la solución de las ecuaciones lineales, frente a los $O(n^2)$ esfuerzo que se requiere para la combinación de Chebyshev y Golub-Welsch. Hildebrand da una discusión de este enfoque en su libro.

Aquí es Aryabhata propuesta en Mathematica código (después de haber hecho la eliminación de las variables correspondientes en el fondo):

gaussPolyGen[mom_?VectorQ, t_] := 
 Module[{n = Quotient[Length[mom], 2]}, 
  Expand[Fold[(#1 t + #2) &, 1, Reverse[LinearSolve[
   Apply[HankelMatrix, Partition[mom, n, n-1]], -Take[mom, -n]]]]]]

y comparar, utilizando el ejemplo anterior:

gaussPolyGen[Range[0, 5]!, t]
-6 + 18*t - 9*t^2 + t^3

% == -6 LaguerreL[3, t] // Simplify
True

Después de haber encontrado las raíces del polinomio generado por gaussPolyGen[], uno sólo resuelve un adecuado Vandermonde sistema lineal para obtener los pesos.

nodes = t /. NSolve[gaussPolyGen[Range[0, 5]!, t], t, 20]
{0.4157745567834791, 2.294280360279042, 6.2899450829374794}

weights = LinearAlgebra`VandermondeSolve[nodes, Range[0, 2]!]
{0.711093009929173, 0.27851773356924087, 0.010389256501586128}

Los resultados aquí y desde el método anterior son comparables.

4voto

Brian Deacon Puntos 4185

@Aryabhata solución en perspicaz, pero voy a presentar el (tedioso, pero sin pensar mecánica) la metodología que tienden a usar para acercarse a este tipo de problemas: como resultado.

La resultante de dos polinomios es un polinomio con una variable eliminada. Por lo tanto, se puede proceder a resolver un sistema polinomial aproximadamente de la misma manera que lo haría con un sistema lineal (en teoría).

En primer lugar, convertir las ecuaciones de polinomios, $p_i$, de modo que las raíces de estos polinomios son las soluciones a las ecuaciones.

$$\begin{eqnarray} p_0 &=& a+b+c-m_0\\ p_1 &=& a x + b y + c z - m_1\\ p_2 &=& x^2 + b y^2 + c z^2 - m_2\\ p_3 &=& x^3 + b y^3 + c z^3 - m_3\\ p_4 &=& x^4 + b y^4 + c z^4 - m_4\\ p_5 &=& x^5 + b y^5 + c z^5 - m_5 \end{eqnarray}$$

Escoge a tu favorito (por ejemplo, $p_0$), y utilizarla para calcular un montón de resultantes (usando Mathematica's ${\tt Resultante []}$ (función) que eliminar una variable (por ejemplo, $a$):

$$\begin{eqnarray} r_0 &=& {\tt Resultante[} p_0, p_1, un {\tt ]} = -m_1 - b x c x + m_0 x + b y + c z\\ r_1 &=& {\tt Resultante[} p_0, p_2, un {\tt ]} = -m_2 - b x^2 - c x^2 + m_0 x^2 + b y^2 + c z^2 \\ r_2 &=& {\tt Resultante[} p_0, p_3, un {\tt ]} = -m_3 - b x^3 - c x^3 + m_0 x^3 + b y^3 + c z^3\\ r_3 &=& {\tt Resultante[} p_0, p_4, un {\tt ]} = -m_4 - b x^4 - c x^4 + m_0 x^4 + b y^4 + c z^4\\ r_4 &=& {\tt Resultante[} p_0, p_5, un {\tt ]} = -m_5 - b x^5 - c x^5 + m_0 x^5 + b y^5 + c z^5\\ \end{eqnarray}$$

(Por supuesto, las cantidades anteriores a simplemente a resolver los $p_0 = 0$ para $el$ y sustituir en la otra $p_i$, ya que el sistema es lineal en $un$. El mismo será cierto cuando la eliminación de $b$ y $c$, así que usar resultantes aquí es un poco de exageración, pero el proceso es mecánico, lo suficiente como para ser tan fácil (no)pensar como, por ejemplo, la eliminación Gaussiana.)

Ahora, hacemos uso de, digamos, $r_0$ para calcular resultantes que eliminar $b$, y así sucesivamente. Por su especial sistema, los polinomios en cada paso, pasar de tener factores comunes que dan lugar a posibles soluciones; usted puede ser que necesite para considerar de ellos por separado, pero tienden a representar "caso especial" de los escenarios. En la siguiente, tengo la base de la siguiente resultante paso en el infrecuente factores (indicado con mayúsculas variables).

$$\begin{eqnarray} s_i &=& {\tt Resultante[} r_0, r_i, b {\tt ]} = S_i \cdot (x-y), \hspace{0,2}i = 1, 2, 3, 4\\ t_i &=& {\tt Resultante[} S_0, S_i, c {\tt ]} = T_i \cdot (y-z)(z-x), \hspace{0,2}i = 1, 2, 3 \\ u_i &=& {\tt Resultante[} T_0, T_i, x {\tt ]} = U_i \cdot (m_2-m_1 y - m_1 z + m_0 y z ), \hspace{0,2}i = 1, 2 \\ v_1 &=& {\tt Resultante[} U_0, U_1, y {\tt ]} \end{eqnarray}$$

El final de polinomios, $v_1$, sólo tiene una variable, $z$.

$$\begin{eqnarray}v_1 &=& \left(m_2^2 - m_1 m_3 - m_1 m_2 z + m_0 m_3 z + m_1^2 z^2 - m_0 m_2 z^2\right)^4 \\ && \left(-m_3^3 + 2 m_2 m_3 m_4 - m_1 m_4^2 - m_2^2 m_5 + m_1 m_3 m_5 \right.\\ &&\a la izquierda. + z\left(m_2 m_3^2 - m_2^2 m_4 - m_1 m_3 m_4 + m_0 m_4^2 + m_1 m_2 m_5 - m_0 m_3 m_5 \right) \right. \\ &&\a la izquierda. +z^2\left(- m_2^2 m_3 + m_1 m_3^2 + m_1 m_2 m_4 - m_0 m_3 m_4 - m_1^2 m_5 + m_0 m_2 m_5\right) \right. \\ &&\a la izquierda. + z^3\left( m_2^3 - 2 m_1 m_2 m_3 + m_0 m_3^2 + m_1^2 m_4 - m_0 m_2 m_4\right)\right)^2\end{eqnarray}$$

El primer factor es otro "caso especial", por lo que $z$, en general, debe ser una raíz del polinomio cúbico en el segundo factor. Para obtener $y$ y $x$, y el resto, usted podría back-sustituir en polinomios de antes en la resultante de la cadena (como lo haría con un sistema lineal), o simplemente podría calcular la resultante de las cadenas que eliminar todas las variables, excepto $$ y, a continuación, cada una de las variables, excepto $x$, etc.

Resulta que (como era de esperar) su particular sistema es tal que el "final" de polinomios de $x$, $y$ y $z$ son equivalentes; es decir, $$ x, $y$ y $z$ son las raíces de la cúbico en el segundo factor de $v_1$ arriba. (Esta es, de hecho, @Aryabhata cúbicos.)

Voy a notar que como resultado, en general, son computacionalmente caro (especialmente en forma simbólica). Muy a menudo, el proceso puede saturar completamente en Mathematica, incluso por bastante modestos sistemas, y/o el final polinomio puede ser de enorme grado. A veces, un poco de delicadeza en el orden de la eliminación de la ayuda. Mi primer intento de encontrar (una cadena de como resultado que eliminó todo pero) $$ consiguió pantanoso, pero la eliminación en el orden de $b$, $c$, $z$, $y$, $x$ me dio una ecuación cúbica (y algunos "caso especial" factores) ... que es enorme, así que no voy a presentar aquí. Un enfoque práctico que aquí podría encontrar $x$, $y$ y $z$ desde el polinomio cúbico, sustituir estos valores en tres de los $p_i$, y resolver el sistema lineal de $a$, $b$ y $c$.

1voto

David HAust Puntos 2696

SUGERENCIA de $\ $ Explotar el innata de la simetría del problema - aquí el poder sumas como simétrica funciones.

La suma de la energía de $\rm\ \ \Sigma_n = a\ x^n + b\ y^n + c\ z^n\ \ $ satisface la recursividad

$$\rm \Sigma_{n+3} - (x+y+z)\ \Sigma_{n+2} + (xy+yz+zx)\ \Sigma_{n+1} - xyz\ \Sigma_n\ =\ 0 $$

Por $\rm\ n = 0,1,2\ $ el de arriba se obtiene un sistema lineal de $\rm\: \ x+y+z,\ \ xy+yz+zx,\ \ xyz\ ,\:$, que son los coeficientes de la cúbico cuyas raíces son $\rm\ x, y, z$

COMENTARIO de $\ $ Como ya he dicho en una respuesta a una pregunta similar, los lectores familiarizados con la teoría de Lucas-Lehmer secuencias puede reconocer esta recursividad como uno de los muchos identidades satisfecho por las sumas de las potencias. Tales identidades surgir en muchas situaciones y contextos diversos. Aquí es un ejemplo interesante: Capdegelle a trabajar en la FLT (Último Teorema de Fermat) empleó la suma de la energía de recursividad $\rm\ F_{n+3} + S_2\: F_{n+2} + S_1\: F_{n+1} + S_0\: F_n = 0\ $ donde $\rm\ F_n = X^n + Y^n - Z^n\ $ es el polinomio de Fermat y los polinomios $\rm\ S_k\ $ son de la escuela primaria simétrica polinomios $\rm\ S_0 = XYZ,$ $\rm\ S_1 = XY + XZ + YZ,\ $ $\rm S_2 = -(X+Y+Z)\:.\ $

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X