You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Método de Newton-Raphson para la solución de sistemas de ecuaciones no lineales
El método de Newton-Raphson para la solución de sistemas de ecuaciones no lineales permite calcular una solución numérica para $\mathbf{f(x)=0}$ con $\mathbf{f(x)}:\mathbb{R}^n \rightarrow \mathbb{R}^n$.
Se parte de valores iniciales de $\mathbf{x}$ con los que $\mathbf{f(x)}\ne 0$ para llegar a un valor $\mathbf{x}$ tal que $\mathbf{f(x+\Delta x)=0}$ .
Se utiliza la serie de Taylor truncada en la primera derivada:
Formulación del método de Newton-Raphson para la solución de flujos de potencia
Recordemos que el problema de flujo de potencia está dado por las ecuaciones de inyección de potencia a cada uno de los nodos del sistema. Para resolver este sistema de ecuaciones simultáneo, se puede aplicar el método de Newton-Raphson teniendo en cuenta que:
Donde $\Delta P_{esp,i}$ es la potencia activa especificada o conocida para los nodos de generación y de carga, mientras que $\Delta Q_{esp,j}$ es la potencia reactiva especificada o conocida para los nodos de carga. Estas son las variables conocidas de potencia de todos los nodos.
Además, las variables del sistema de ecuaciones son:
Donde $\delta_i$ son los ángulos de los nodos de generación y de carga, mientras $V_j$ son las magnitudes de voltaje de los nodos de carga. Es decir, las variables desconocidas de los voltajes de todos los nodos.
Entonces, las funciones que se resuelven buscan lograr que la diferencia entre los valores de potencia conocidos en los nodos sea prácticamente igual a la potencia calculada en los nodos. Estas diferencias deben ser menores a una tolerancia que se representa por $\varepsilon$. Comúnmente, esta tolerancia es muy pequeña, por debajo de $10^{-4}$.
Aplicando el método de Newton-Raphson, tenemos que $-\mathbf{f(x)}=[J]\mathbf{\Delta x}$, pero con la definición dada para $\mathbf{f(x)}$:
Donde $i$ son los índices de los nodos de carga y de generación, mientras que $j$ representa los índices de los nodos de carga.
Para mejorar la simetría numérica de la matriz jacobiana, se reformula el sistema usando como variable $\frac{\Delta V_j}{V_j}$ en vez de $\Delta V_j$. Además, se sabe que $\frac{\partial \Delta P_i}{\partial x_i}=-\frac{\partial P_i}{\partial x_i}$ y de la misma manera $\frac{\partial \Delta Q_j}{\partial x_i}=-\frac{\partial Q_j}{\partial x_i}$, por lo tanto:
Luego de definir las ecuaciones que conforman el núcleo del método de Newton-Raphson aplicado a la solución de flujos de potencia. Podemos establecer un algoritmo general para resolver el problema. En la siguiente figura se muestra un diagrama de flujo que sirve de guía para la implementación del método.
Ejemplo
Se tiene una red de potencia de tres nodos cuyos datos están dados en valores por unidad calculados con base de potencia de $100 MVA$ y tensión igual a $100k V$.
En la siguiente figura se muestra el diagrama unifilar de la red, con las impedancias de las líneas de transmisión y las tablas de los datos de nodos y enlaces
Tabla de datos de nodos:
Nodos
Tipo de nodo
Tensión nominal (kV)
Potencia activa inyectada (MW)
Potencia reactiva inyectada (MVAr)
Magnitud de voltaje (p.u.)
Ángulo de voltaje (p.u.)
1
Referencia
100
--
--
1.02
0.0
2
Generación
100
50
--
1.02
0.0
3
Carga
100
-100
-60
1.02
0.0
Resultados
Obtenidos en 2 iteraciones del algoritmo propuesto para la aplicación del método de Newton-Raphson a la solución de flujos de potencia.
Nodos
Magnitud de Voltaje (p.u)
Ángulo de Voltaje (rad)
Potencia activa inyectada (MW)
Potencia reactiva inyectada (MVAr)
1
1,02
0
50,9767
7,09556
2
1,02
-0,00822
50
55,12521
3
1,00434
-0,01678
-100
-59,9995
En este enlace, encontrarás el código en Python para resolver el ejemplo usando la formulación del método de Newton-Raphson.
PowerFlow es de uso libre para fines académicos, conoce nuestra licencia, cláusulas, condiciones de uso y como referenciar los contenidos publicados en este repositorio, dando clic aquí.
¿Encontraste útil este repositorio? Apoya su difusión marcando este repositorio con una ⭐ o síguenos dando clic en el botón Follow de Josimardtm en GitHub.
Este curso guía ha sido desarrollado con el apoyo de la Escuela Colombiana de Ingeniería - Julio Garavito. Encuentra más contenidos en https://github.com/uescuelaing