Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Aplicaciones del
Método de los Elementos Finitos
en Física
MONOGRAFÍAS del
Departamento de FÍSICA APLICADA 2
UNIVERSIDAD POLITÉCNICA DE MADRID
ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES
Aplicaciones del
Método de los Elementos Finitos
en Física
MONOGRAFÍAS del
Departamento de FÍSICA APLICADA 2
Edita e imprime: Sección de Publicaciones de la Escuela
Técnica Superior de Ingenieros Industriales.
Universidad Politécnica de Madrid.
I.S.B.N: 84-7484-127-5
Presentación:
Esta segunda Monografía del Departamento de Física Aplicada a la Ingeniería Industrial presenta un método
numérico que no suele incluirse habitualmente, todavía, en los programas universitarios de las disciplinas clásicas de
la física. Se trata del método de los elementos finitos (MEF) cuyas aplicaciones se iniciaron hace casi cincuenta
años, al mismo tiempo que nacían los primeros computadores.
El autor de la presente Monografía ha resumido excelentemente lo esencial de los fundamentos del MEF en un
primer capítulo, poniendo de manifiesto la uniformidad de tratamiento cuando se plantean las ecuaciones de la
física mediante principios variacionales, para concentrarse después en una serie de aplicaciones de mecánica y
campos eléctrostáticos.
La selección de las primeras aplicaciones, estática de hilos, se ha decidido al objeto de familiarizar a los no
iniciados con ejemplos sencillos de principios variacionales, como la determinación de la curva de equilibrio de un
hilo sometido a su propio peso mediante la minimización de la correspondiente energía potencial. Un hilo es un
sistema unidimensional y este primer análisis puede realizarse con una simple hoja de cálculo como se describe en la
publicación. Sin embargo, un hilo es también sistema no lineal por lo que un análisis mediante el MEF permite
abordar problemas cuya solución ya no es presentable mediante funciones elementales.
Después de las aplicaciones indicadas, el autor plantea la utilización del método en electrostática, indicando
procedimientos prácticos para la incorporación de las correspondientes condiciones de contorno que no suelen
encontrarse en publicaciones especializadas sobre la materia. El MEF es una alternativa adecuada para la
resolución de numerosos problemas de la teoría del potencial de la que el campo electrostático es un caso particular.
Con objeto de lograr un equilibrio adecuado entre los conceptos teóricos y su aplicación práctica, el autor ha
preparado los programas de resolución de las aplicaciones indicadas mediante la utilización de MatLab, con objeto
de facilitar al lector herramientas que le permitan resolver los ejemplos seleccionados y otros similares. Aunque
existen paquetes comerciales muy completos para aplicaciones del MEF, es conveniente practicar antes con códigos
como los que incorpora la Monografía que, aprovechando la potencia de MatLab, pueden estructurarse de forma
muy compacta y relativamente reducida. Además, estos códigos pueden resultar más eficientes, incluso, que los
productos comerciales en aplicaciones sencillas.
De todo lo dicho se desprende el objetivo didáctico que persigue la Monografía cual es la posibilidad de servir de
base para la introducción de este método de cálculo en las asignaturas de física de primer ciclo universitario.
Índice:
PRESENTACIÓN ..............................................................................................................iii
ÍNDICE................................................................................................................................ v
Capítulo 1:
Fundamentos teóricos
1.1 Introducción
La resolución de problemas en los que se ven involucrados medios continuos suelen conducir a
sistemas de ecuaciones en derivadas parciales (EDPs) cuya resolución permite obtener la
distribución espacio-temporal de los parámetros buscados. A continuación se incluyen algunos
ejemplos:
⎛ ∂ 2T ∂ 2T ∂ 2T ⎞ ∂T
k ⎜⎜ 2 + 2 + 2 ⎟⎟ + q = ρc
⎝ ∂x ∂y ∂z ⎠ ∂t
FUNDAMENTOS TEÓRICOS 2
Estos tres ejemplos corresponden a situaciones en las que la solución buscada es un campo
escalar. Por esta razón es suficiente una única EDP. Pero habría que añadir a este listado
ejemplos en los cuales la función a determinar fuera un campo vectorial. En estos casos ya
aparecerían sistemas de EDPs propiamente dichos, como por ejemplo:
Los métodos analíticos, salvo en ciertos casos particulares, no son capaces de resolver esta clase
de EDPs. Por tanto, el recurso a métodos numéricos se hace imprescindible en el análisis técnico
de este tipo de sistemas. Para ello, es necesario “discretizar” el problema. Es decir, pasar de un
modelo matemático en el cual el número de valores de la función incógnita a determinar es
infinito a otro aproximado al anterior pero con un número discreto de incógnitas escalares. En
general, éstas suelen coincidir con los valores que toma la función incógnita en ciertos puntos
característicos del sistema que se denominan nodos. El valor del campo (escalar o vectorial) en el
resto del dominio se evalúa recurriendo a técnicas de interpolación.
En muchas ocasiones es así mismo imprescindible linealizar el modelo discreto con el fin de
poder utilizar las herramientas que el álgebra lineal proporciona y que en el momento actual
parecen ser la única herramienta matemática eficiente para trabajar con un número muy elevado
de variables (≥106). En cualquier caso, la utilización del álgebra lineal junto con algoritmos de tipo
iterativo permite resolver también muchos otros problemas no lineales.
FUNDAMENTOS TEÓRICOS 3
El “Método de los Elementos Finitos” proporciona las herramientas necesarias para realizar
ambos pasos: la discretización fundamentalmente pero también la linealización. A diferencia de
otras técnicas de resolución de sistemas de EDPs se caracteriza por lo siguiente:
• Generalidad: poco a poco el MEF ha dejado de ser una herramienta enfocada hacia la
resolución de problemas de elasticidad y cálculo de estructuras para convertirse en una
herramienta de amplio espectro de utilización. Hoy en día existen paquetes de software
que utilizando técnicas de elementos finitos (E.F.) permiten resolver un gran número de
sistemas de EDPs.
• Facilidad para la introducción de condiciones de contorno y de modelos de
comportamiento localizados. Puede decirse que es una herramienta que presenta una gran
modularidad.
• Las bases del método son relativamente sencillas lo que permite o facilita una adecuada
comprensión por parte del usuario. Se convierte así en una herramienta intuitiva, fácil de
controlar y de uso muy extendido.
• Existe una gran cantidad de recursos disponibles que facilitan su implementación
(paquetes de software, bibliografía, experiencia acumulada en su utilización, etc...)
⎧ x − xi−1
⎪ yi−1 + ⋅ (yi - y i-1 ) si x ∈ [ xi−1, xi )
S i (x) = ⎨ xi − xi−1 f ( x ) = ∑ Si ( x )
⎪⎩ 0 si x ∉ [ xi−1, xi ) i
1 Obsérvese que los intervalos son cerrados en el extremo inferior y cerrados en el superior. Ello permite definir
directamente la función interpolante como suma de los “splines” sin que aparezcan problemas en los puntos xi (si
los intervalos fueran cerrados en ambos extremos en ellos la función interpolante alcanzaría un valor 2yi).
FUNDAMENTOS TEÓRICOS 4
El modo de obtener la función interpolante en el caso del MEF es ligeramente más flexible. Si el
dominio del problema es el intervalo I ≡ [x0 , xn ] , éste se subdividiría, como en el caso de la
aproximación por “splines” en una serie de subintervalos adyacentes (elementos finitos)
I e ≡ [ae , be ) , donde a e y be serían algunos de los puntos (nodos) xi cuyas ordenadas yi se
conocen (mejor dicho, se suponen conocidas, puesto que estas van a ser en realidad las incógnitas
del problema). Pero a diferencia de los “splines” donde los nodos eran siempre puntos extremos
de los intervalos I i , en el caso del MEF se pueden considerar también nodos internos. La
función interpolante es una combinación lineal de “funciones de forma”, asociadas cada una de
ellas a un determinado nodo de un cierto elemento finito, que de nuevo toman un valor nulo
fuera de dicho elemento. Así por ejemplo, pueden considerarse las siguientes funciones de forma
en caso de elementos que contengan únicamente dos nodos:
⎧ be − x ⎧ x − ae
⎪ si x ∈ [ae , be ) ⎪ si x ∈ [ae , be )
Ae (x) = ⎨ be − ae Be (x) = ⎨ be − ae
⎪⎩ 0 si x ∉ [ae , be ) ⎪⎩ 0 si x ∉ [ae , be )
N
f (x) = ∑ y(ae )Ae (x) + y(be )Be (x)
e =1
Nótese que esta función interpolante coincide con la obtenida anteriormente en el caso de
interpolación mediante “splines” de grado 1.
E J
f (x) = ∑∑ cej Aej (x)
e =1 j =1
donde las cej serían constantes que se determinarían al obligar a que f (x) pase por los puntos
(xi , yi ) y sea continua (función interpolante de clase C 1 ). Se obtendría así el siguiente sistema de
ecuaciones:
⎡ ce1 ⎤ ⎡ y(ae1 )⎤
⎢c ⎥ ⎢ y(a )⎥
ce = ⎢ ⎥ de = ⎢
e2 e2 ⎥
y
⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎣ceJ ⎦ ⎣y(aeJ )⎦
FUNDAMENTOS TEÓRICOS 5
Obsérvese que la matriz del sistema es una matriz banda, con un ancho de banda muy estrecho
(el correspodiente a la matrices Me: 2J − 1 ) y además desacoplado (puede resolverse de manera
independiente para cada elemento). Si consideráramos funciones interpolantes de clase C 2
dejaría de estar desacoplado pero el ancho de banda seguiría siendo muy reducido (igual o inferior
a 6J − 1 ). Por tanto, aun cuando el número de incógnitas involucrado pueda llegar a ser muy alto
( E × J ), la resolución del sistema será relativamente sencilla.
⎡1 x0 x02 x0n ⎤ ⎡ α 0 ⎤ ⎡ y0 ⎤
⎢ ⎥ ⎢ ⎥
⎢1 x1 x12 x1n ⎥ ⎢⎢ α1 ⎥⎥ ⎢ y1 ⎥
⎢1 x2 x22 x2n ⎥ ⋅ ⎢ α 2 ⎥ = ⎢ y2 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ % ⎥ ⎢ # ⎥ ⎢#⎥
⎢⎣1 xn xn2 xnn ⎥⎦ ⎢⎣α n ⎥⎦ ⎢⎣y n ⎥⎦
El número de incógnitas es ligeramente inferior. Sin embargo, la matriz del sistema es una matriz
densa. En general, ninguno de sus términos será nulo. Por consiguiente, su resolución será muy
costosa pudiendo llegar a convertirse en un sistema inestable desde el punto de vista numérico2
para valores elevados de n .
Este hecho, la aparición de matrices banda o matrices dispersas, concede al MEF una ventaja
relativa muy importante desde el punto de vista computacional frente a otros procedimientos
alternativos en los que las “funciones de forma” que se extienden a la totalidad del dominio.
El problema real a resolver es más complejo. Recuérdese que son precisamente los valores y i
que toma la función en los nodos las incógnitas del problema. Sin embargo la estructura de la
matriz final resultante sigue siendo del mismo tipo.
Solventado el problema de cómo generar una solución discreta (la función interpolante) más o
menos próxima a la solución del problema queda por resolver como se “mide” la “distancia”
entre ambas. Una primera idea es elevar al cuadrado y sumar las ecuaciones que forman el sistema
de EDPs. Consideremos un problema en el cual se han de determinar ϕ1, ϕ 2 ,", ϕG funciones
escalares incógnitas que dependen de m variables independientes x1 , x 2 , " , x m una de las cuales
puede ser el tiempo. Tendríamos entonces un sistema de EDPs como el que sigue (en el caso de
que fuera un sistema de segundo orden):
2 Los errores de truncamiento y redondeo pueden alcanzar una influencia tal que la solución obtenida no posea valor
alguno
FUNDAMENTOS TEÓRICOS 6
⎧ ⎛ ∂ϕ ∂ 2 ϕ i ⎞⎟
⎪ f1 ⎜⎜ xj , ϕ i , i , =0
⎪ ⎝ ∂xj ∂xj ∂xk ⎟⎠
⎪ ⎛ ∂ϕ ∂ 2 ϕ i ⎞⎟
⎪ f2 ⎜ xj , ϕ i , i ,
⎪ ⎜ ∂x ∂x ∂x ⎟=0
⎨ ⎝ j j k ⎠
⎪ #
⎪ #
⎪
⎪ f ⎛⎜ x , ϕ , ∂ϕ i , ∂ ϕ i ⎞⎟ = 0
2
Naturalmente Π = f12 + f22 + " + fG2 es una medida de dicha “distancia” pues únicamente se
anula cuando se alcanza la solución real siendo estrictamente superior a cero en el resto de
circunstancias. Ahora bien, como se comentará más adelante, este modo de trabajar posee
grandes inconvenientes que dificultan su implementación práctica.
Una solución alternativa es recurrir a principios variacionales como, por ejemplo, aquellos de la
estática de sistemas que aseguran que la solución de equilibrio es la que corresponde a una energía
potencial mínima. En situaciones como esta, una solución es tanto más próxima a la real cuanto
mas baja sea la “energía” que le corresponde. La obtención de estos principios variacionales
puede realizarse de dos maneras diferentes:
Existe aún una tercera vía cuando no resulta sencillo encontrar principios variacionales que
puedan ser implementados con facilidad. Esta consiste en apoyarse en la forma variacional
“débil” del sistema de EDPs de partida.
Quizá el mejor ejemplo sea el que proporciona la Mecánica Analítica. Sabemos que, en el caso de
sistemas conservativos, la evolución del sistema se realiza de forma que la integral de la
lagrangiana L a lo largo del tiempo (acción hamiltoniana) alcance un valor extremal:
I = ∫ Ldt
Una vez discretizado el sistema, el estado de éste es función únicamente de un número finito de
coordenadas generalizadas q = [q1(t), q 2 (t),", qn (t)] y de sus derivadas respecto del tiempo
T
q = [q1(t), q2 (t),", qn (t)] . La lagrangiana, por tanto, será también función exclusivamente de
T
L = L(q, q , t)
FUNDAMENTOS TEÓRICOS 7
Para que la acción lagrangiana L alcance un valor extremal deberán verificarse las ecuaciones de
Euler:
d ⎡ ∂L ⎤ ∂L
⎢ ⎥− =0 ∀ g = 1" n
dt ⎣ ∂qg ⎦ ∂qg
Dado que, en la mayoría de las aplicaciones prácticas, para alcanzar una adecuada representación
del estado del sistema real es necesario recurrir a un número muy elevado de coordenadas
generalizadas la no linealidad del sistema dificulta tanto su resolución que éste resulta en la
práctica irresoluble. Para soslayar esta dificultad se va a recurrir a su linealización en torno a una
solución cercana a la real.
⎡ Δq ⎤ ⎡ Δq ⎤
T ⎢
⎢ ⎥ 2
⎥
L(q 0 + Δq, q 0 + Δq , t0 + Δt) = L 0 + ∇L ⋅ Δq + Δq [
1 T
Δq T
]
Δt ⋅ ∇ L ⋅ ⎢ Δq ⎥ + "
2
⎢ ⎥
⎢⎣ Δt ⎥⎦ ⎢⎣ Δt ⎥⎦
⎡ Δq ⎤ ⎡ D E g ⎤ ⎡ Δq ⎤
= L0 + a [ T
] ⎢
b c ⋅ Δq + Δq
T
⎢ ⎥ 2
⎥ [
1 T
Δq T
]
Δt ⋅ ⎢E T F h ⎥ ⋅ ⎢ Δq ⎥ + "
⎢ ⎥ ⎢ ⎥
⎢⎣ Δt ⎥⎦ ⎢⎣ g T h T α⎥⎦ ⎢⎣ Δt ⎥⎦
⎡ ∂L ∂q1 ⎤ ⎡ ∂L ∂q1 ⎤
⎡a ⎤ ⎢ ∂L ∂q ⎥ ⎢ ∂L ∂q ⎥
⎢ ⎥ ; ∂L
⎢
∇L = b ⎥ siendo a = 2
b=⎢ 2
⎥ y c=
⎢ ⎥ ⎢ # ⎥ ⎢ # ⎥ ∂t
⎢⎣ c ⎥⎦ ⎢ ⎥ ⎢ ⎥
⎣∂L ∂qn ⎦ ⎣∂L ∂qn ⎦
Nótese que al ser la matriz hessiana ∇ 2 L simétrica han de se serlo también las matrices D y F.
Si se realiza el cambio de variables u = Δq = [q1(t) − q01(t), q2 (t) − q02 (t),", qn (t) − q0 n (t)] ,
T
entonces u = [q1(t) − q01(t), q2 (t) − q02 (t),", qn (t) − q0 n (t)] T = Δq . Si además se elige t0 = 0 y
se aproxima la lagrangiana L por su desarrollo en serie de Taylor truncado de orden 2:
⎡u ⎤ ⎡D E g ⎤ ⎡u ⎤
L( q, q , t) ≅ L [
~ ( u, u , t) = L 0 + a T
b T
] ⎢ ⎥ 2
[
1
c ⋅ ⎢u ⎥ + u T u T
]
Δt ⋅ ⎢ E T
⎢
F h ⎥ ⋅ ⎢u ⎥
⎥ ⎢ ⎥
⎣⎢ t ⎦⎥ ⎣⎢ g
T
hT α⎦⎥ ⎣⎢ t ⎦⎥
~
Por tanto, la correspondiente aproximación para la acción lagrangiana I es:
∫ ~ dt
~I = L
~
Para que I alcance un valor extremal se deben verificar las ecuaciones de Lagrange para las
nuevas incógnitas ug = ug (t) = q g (t) − q0 g (t) :
d ⎡ ∂L ~ ⎤ ∂L ~
⎢ ⎥− =0 ∀g = 1" n
dt ⎣ ∂u g ⎦ ∂ug
d
[b + F ⋅ u + E ⋅ u + h ⋅ t] − [a + D ⋅ u + E ⋅ u + g ⋅ t] = 0
dt
Recuérdese que los vectores a, b, g, h y las matrices D, E y F al ser parte de los coeficientes del
desarrollo de Taylor de L no pueden ser función de u, ni de u ni tampoco de t . Por tanto:
+ E ⋅ u + h − [a + D ⋅ u + E ⋅ u + g ⋅ t] = 0
F⋅u
F⋅u
− D ⋅ u = a + g ⋅ t − h
La matriz F suele denominarse matriz de masa del sistema y se suele representar con el símbolo
M. A su vez, la matriz D cambiada de signo se suele denominar matriz de rigidez y se representa
utilizando el símbolo K. El término independiente suele recibir el nombre de vector de fuerzas
(nodales) equivalentes reservándose para él el símbolo f . Utilizando esta nueva notación el
sistema de ecuaciones quedaría en la forma:
M⋅u
+ K ⋅ u = f
FUNDAMENTOS TEÓRICOS 9
M(q 1, q 1 ) ⋅ u
1 + K(q 1, q 1 ) ⋅ u1 = f (q 1, q 1, t)
La resolución de éste permitiría obtener otra solución q 2 (t) = q 1 (t) + u 1 (t) mejor que la
anterior. Procediendo iterativamente de este modo pueden obtenerse soluciones para sistemas en
los cuales la no linealidad sea significativa.
K ⋅ u eq = f
La estabilidad del punto de equilibrio encontrado puede analizarse apoyándose en los valores
propios de la matriz de rigidez K. Por ser esta matriz simétrica todos sus valores propias serán
reales. Si no existe ningún valor propio negativo o nulo entonces el punto de equilibrio será
estable. Si existe algún valor propio negativo será inestable3.
Una vez determinado el punto de equilibrio qeq y aceptando que éste resulte ser un punto de
equilibrio estable puede procederse al estudio de las pequeñas perturbaciones que pueden
producirse alrededor de dicho punto. Para ello se procede al cálculo de las frecuencias propias y
modos normales de vibración que se resolvería determinando los valores propios ω2 y los
vectores propios v que son solución de la siguiente ecuación:
ω2 M ⋅ v = K ⋅ v
[
u(t) = u eq + Re Ae iωt + φ ⋅ v ]
Todo lo visto hasta este momento puede extenderse a sistemas no conservativos introduciendo
las fuerzas fg(gen) generalizadas asociadas a cada una de las coordenadas generalizadas q g . En este
caso el sistema de ecuaciones diferenciales, ya linealizado, a resolver sería el siguiente:
3 En el caso particular en el cual existe al menos un valor propio nulo siendo positivos los restantes valores propios,
la información proporcionada por las derivadas segundas no es suficiente para poder decidir acerca de la estabilidad
del punto de equilibrio.
FUNDAMENTOS TEÓRICOS 10
d ⎡ ∂L ~ ⎤ ∂L ~
⎢ ⎥− = fg( gen) ∀g = 1" n
dt ⎣ ∂u g ⎦ ∂ug
G ∂rG G
donde fg( gen) = ∫∫∫ f v ⋅ dxdydz , siendo f v el vector fuerza por unidad de volumen que actúa
∂q g
G G
[ T
]
sobre el punto de coordenadas r = r(q, t) . Sea f ( gen) = f1( gen) f2( gen) " fn( gen) , el sistema de
ecuaciones diferenciales quedaría en la forma
+ K ⋅ u = [a + g ⋅ t − h ] + f (gen)
M⋅u
M⋅u
+ K ⋅ u = f
Nótese, sin embargo, que anteriormente el vector f era un vector constante salvo la presencia de
un término lineal respecto del tiempo. Ahora dicho vector será, en general una función no lineal
tanto del tiempo como quizá también de u y u .
Si el vector f es constante puede demostrarse fácilmente que un sistema que poseyera una energía
cinética T = 12 u T ⋅ M ⋅ u , una energía potencial U = 12 u T ⋅ K ⋅ u y sobre el que estuviera
actuando un cierto sistema de fuerzas que diera lugar a un vector de fuerzas generalizadas
precisamente igual a f, tendría un comportamiento dinámico idéntico al de nuestro sistema.
Conviene, por último, considerar un caso particular en el cual parte de las fuerzas por unidad de
G G G G G
volumen f v son debidas a fenómenos de rozamiento viscoso. Sea f v = f v(vis) + f v* donde f v*
G
representa la contribución de cualesquiera otro tipo de fuerzas y f v(vis) las fuerzas por unidad de
volumen de origen viscoso que responden a la siguiente expresión:
G (vis ) G
dr
f v = −λ ⋅
dt
Aceptemos una discretización que permita determinar la posición de un punto cualquiera del
sistema a través de la relación:
G G
r = r(q, t)
G G G G G G
dr n ∂r ∂r ⎛ n ∂r ∂r ⎞
Entonces, =∑ qk + y f v(vis) = −λ ⋅ ⎜⎜ ∑ qk + ⎟⎟
dt k =1 ∂qk ∂t ⎝ k = 1 ∂qk ∂t ⎠
FUNDAMENTOS TEÓRICOS 11
G * ∂rG ⎡ ⎛ n ∂r
G G
∂r ⎞⎤ ∂r
G
f ( gen )
= ∫∫∫ f v ⋅ dxdydz − ∫∫∫ ⎢λ ⋅ ⎜⎜ ∑ qk + ⎟⎟⎥ ⋅ dxdydz = fg( gen,*) + fg( gen, vis)
∂q g ⎣ ⎝ k = 1 ∂qk ∂t ⎠⎦ ∂q g
g
Las componentes de las fuerzas generalizadas correspondientes a las fuerzas de origen viscoso se
calcularán a partir de la relación:
⎡n ⎛ G G G G
∂r ⎞ ∂r ⎛ ∂r ⎞ ∂r ⎤
f ( gen, vis )
= − ∫∫∫ ⎢∑ ⎜⎜ λ ⋅ ⎟⎟ ⋅ qk + ⎜ λ ⋅ ⎟ ⋅ ⎥ dxdydz
⎣ k = 1 ⎝ ∂qk ⎠ ∂q g ⎝ ∂t ⎠ ∂q g ⎦
g
⎡ ⎛ G G ⎤
∂r ⎞ ∂r
donde L = [lkg ] = ⎢ ∫∫∫ ⎜⎜ λ ⋅ ⎟⎟ ⋅ dxdydz ⎥
⎣ ⎝ ∂qk ⎠ ∂q g ⎦
⎡ G G ⎤
⎛ ∂r ⎞ ∂r
f ′ = [fg′] = ⎢− ∫∫∫ ⎜ λ ⋅ ⎟ ⋅ dxdydz ⎥ y f0( gen,vis) = −L ⋅ q 0 + f ′
⎣ ⎝ ∂ t ⎠ ∂q g ⎦
Trasladando este resultado al sistema de ecuaciones diferenciales este pasa a tomar la siguiente
forma:
M⋅u
+ L ⋅ u + K ⋅ u = f
Nos centraremos en aquellos sistemas cuya dinámica puede ser descrita a través de EDPs. Mas
aún, con el fin de no complicar en exceso el desarrollo posterior reduciremos el tratamiento a
aquellos casos en los cuales dicho sistema de EDPs se reduce a una única ecuación diferencial del
tipo:
∂ϕ ∂ϕ ∂ 2 ϕ ∂ 2 ϕ ∂ 2ϕ ∂ 2ϕ
f (x1, x2 ,", xN , ϕ, ,", , 2, ,", , 2 )= 0
∂x1 ∂xN ∂x1 ∂x1 ∂xN ∂xN −1∂xN ∂xN
FUNDAMENTOS TEÓRICOS 12
T
⎡ ∂ϕ ∂ϕ ∂ϕ ⎤
denominemos r = [x1 x2 " xN ]
T
; ∇ϕ = ⎢ " y
⎣ ∂x1 ∂x2 ∂xN ⎥⎦
⎡ ∂ 2ϕ ∂ 2ϕ ∂ 2ϕ ⎤
⎢ ∂x 2 ∂x1∂x2 ∂x1∂xN ⎥
⎢ 21 ⎥
⎢ ∂ ϕ ∂ 2ϕ ∂ 2ϕ ⎥
∇ ϕ = ⎢ ∂x2 ∂x1
2
∂x22 ∂x2 ∂xN ⎥
⎢ % ⎥
⎢ 2 ⎥
⎢ ∂ ϕ ∂ 2ϕ ∂ 2ϕ ⎥
⎢⎣ ∂xN ∂x1 ∂xN ∂x2 ∂xN2 ⎥⎦
f (r, ϕ, ∇ϕ, ∇ 2 ϕ) = 0
∂ 2ϕ ∂ 2ϕ ∂ 2ϕ ρ
+ + + =0
∂x 2 ∂y 2 ∂z 2 ε
El dominio de integración coincide con la totalidad del dominio de definición del problema.
Al elevar al cuadrado la ecuación, cualquier solución que no sea la correcta da lugar a un valor no
nulo para f que se traduce en un valor estrictamente positivo para f 2 . Por tanto, la solución
real, aquella que anula f , da lugar a un mínimo absoluto (el valor nulo) para Π .
FUNDAMENTOS TEÓRICOS 13
⎡ ∂F ∂p1 ⎤
⎢ ⎥
∂F ⎡ ∂ ∂ ∂ ⎤ ⎢ ∂F ∂p2 ⎥ ∂ϕ
− " ⋅ =0 donde pi =
∂ϕ ⎢⎣ ∂x1 ∂x2 ∂xN ⎥⎦ ⎢ ⎥ ∂xi
⎢ ⎥
⎣∂F ∂pN ⎦
donde A es una matriz simétrica de dimensión N × N cuyos elementos son del tipo
aij = aij (x1, x2 ,", xN ) . Es decir, no dependen de ϕ ni de sus derivadas pero si dependerán, en
general, de x1, x2 ,", xN . El escalar b es también del mismo tipo b = b(x1, x2 ,", xN )
⎡ ∂ ∂ ∂ ⎤
b−⎢ " ⋅ (A ⋅ p ) = 0
⎣ ∂x1 ∂x1 ∂x1 ⎥⎦
∂ ⎡ ∂ϕ ⎤
Que puede ponerse en la forma: ∑∑ x ⎢aij (x1 " xN ) ⎥ = b(x1 " xN )
∂xj ⎦
i j i ⎣
Por tanto cualquier ecuación en derivadas parciales de este último tipo puede substituirse por el
siguiente principio variacional:
Π=∫
Ω
( 1
2 p T ⋅ A ⋅ p + bϕ )dΩ = extremo
Existen otros sistemas de EDPs similares a los anteriores (como, por ejemplo, la ecuación del
calor) que no encajan en el esquema desarrollado anteriormente. En concreto serían todos
aquellos sistemas de EDPs lineales que contuvieran derivadas de primer orden:
∂ ⎡ ∂ϕ ⎤ ∂ϕ
∑∑ ∂x ⎢aij (x1 " xN ) ⎥ + ∑ α i (x1 " xN )
∂xj ⎦ i ∂xi
= b(x1 " xN )
i j i ⎣
FUNDAMENTOS TEÓRICOS 14
Podría pensarse que recurriendo, en el principio variacional, a un integrando más complejo como
pudiera ser el que se presenta a continuación (el cual contiene todos los términos
correspondientes a un desarrollo de Taylor de orden 2) este problema pudiera obviarse:
F = 12 p T Ap + bϕ + 1
2 cϕ 2 + ϕ d T p + g T p
∂ ⎡ aij + aji ∂ϕ ⎤
∑∑ ∂x ⎢
2
⎥ = b + ∇ ⋅ g + cϕ
∂xj ⎦
T
i j i ⎣
En el caso concreto del campo electrostático (para medios lineales pero no necesariamente ni
homogéneos ni isótropos) este problema no está presente y puede utilizarse el siguiente principio
variacional:
G G
Π=∫
Ω
( 1
2 )
E ⋅ D − ρϕ dxdydz = ∫
Ω
( 1
2 p T ⋅ ε ⋅ p − ρϕ ) dxdydz = extremo donde p = grad ϕ
n
ϕ(x, y, z ) = ∑ N g (x, y, z ) ⋅ ug
g =1
Donde las funciones N g (x, y, z ) son las funciones de forma o de interpolación y las ug son las
incógnitas o coordenadas generalizadas del problema. Por tanto:
n ∂N
∂ϕ ∂ϕ n
∂N g ∂ϕ n
∂N g
=∑ g
⋅ ug =∑ ⋅ ug =∑ ⋅ ug
∂x g =1 ∂x ∂y g = 1 ∂y ∂z g = 1 ∂z
Π=∫
Ω
[
1
2 ]
u T ⋅ (BAB T ) ⋅ u + bNu dΩ = extremo
Π = 12 u T ⋅ ∫ BAB T dΩ ⋅ u + ∫ bN T dΩ ⋅ u = extremo
Ω Ω
Π = 12 u T ⋅ C ⋅ u − q T ⋅ u = extremo
cij = ∫ ∇N iT ⋅ A ⋅ ∇N j dΩ qi = − ∫ N i b dΩ
Ω Ω
En la práctica, las funciones de forma o de interpolación suelen elegirse de manera tal que tomen
un valor nulo en casi todo el dominio Ω salvo en un pequeño subdominio Ω e (elemento finito)
con el fin de simplificar el cálculo y conseguir una estructura de matriz dispersa para C . Estos
subdominios Ω e poseen entre sí intersecciones de volumen nulo (es decir, a lo sumo pueden
compartir vértices, aristas o caras). Denominemos C ( e ) y q ( e ) al resultado de las siguientes
integrales extendidas exclusivamente a lo largo del subdominio Ω e :
Para realizar el cálculo de éstas únicamente necesitaremos tener en cuenta el pequeño número de
funciones de forma o interpolación que no se anulan en dicho subdominio. Consiguientemente
será un cálculo relativamente sencillo. C ( e ) y q ( e ) reciben los nombres, respectivamente, de
matriz de capacidad elemental y vector de cargas elemental correspondientes al elemento finito
e . La matriz global de capacidades C y el vector de cargas global q se obtienen mediante el
“ensamblaje” (suma) de la totalidad de las matrices de cargas elementales y de los vectores de
cargas elementales respectivamente.
C = ∑ C(e ) ; q = ∑ q (e )
e e
El hecho de que la matriz de capacidades posea una estructura de matriz dispersa (casi todos sus
elementos son nulos salvo una pequeña parte que suelen encontrarse cerca de la diagonal si la
numeración de las incógnitas se ha realizado de forma óptima) permite reducir enormemente el
volumen de cálculo necesario para resolver el sistema de ecuaciones lineales Cu = q .
FUNDAMENTOS TEÓRICOS 16
∂ ∂2
∇ ⋅ (A ⋅ ∇ϕ ) = b + (αϕ) + 2 (βϕ)
∂t ∂ t
Esta es una ecuación similar a la ecuación del calor y que, debido a la presencia de derivadas de
primer orden, no puede ser obtenida a partir de un principio variacional siguiendo el
procedimiento descrito en el apartado anterior. Los términos aij de la matriz A , b , α y β son
función exclusivamente de x, y, z y t . Denomínese g = b + ∂(αϕ) ∂t + ∂ 2 (βϕ) ∂t 2 con el fin de
simplificar. Entonces:
∇ ⋅ (A ⋅ ∇ϕ ) − g = 0
∫ ψ [∇ ⋅ (A ⋅ ∇ϕ) − g] dΩ = 0
Ω
∀ ψ = ψ(x, y, z, t) (*)
Vamos a tratar de cambiar el formato de la integral anterior recurriendo para ello a la integración
por partes (fórmulas de Green). Para ello partiremos de la aplicación del Teorema de Gauss a la
siguiente expresión:
G
∫ ∇ ⋅ (ψ A ⋅ ∇ϕ ) dΩ = ∫ ψ (A ⋅ ∇ϕ ) ⋅ dS
Ω S
G
∫ ψ ∇ ⋅ (A ⋅ ∇ϕ ) dΩ = ∫ ψ (A ⋅ ∇ϕ ) ⋅ dS − ∫ ∇ψ ⋅ (A ⋅ ∇ϕ ) dΩ
Ω S Ω
[ ∫ ψ (A ⋅ ∇ϕ) ⋅ dSG − ∫
S Ω
]
∇ψ ⋅ (A ⋅ ∇ϕ ) dΩ − ∫ ψ g dΩ = 0
Ω
G
∫ ∇ψ ⋅ (A ⋅ ∇ϕ ) dΩ + ∫ ψ g dΩ = ∫ ψ (A ⋅ ∇ϕ ) ⋅ dS ∀ ψ = ψ(x, y, z, t) (**)
Ω Ω S
FUNDAMENTOS TEÓRICOS 17
Esta última expresión suele recibir la denominación de forma débil correspondiente a la EDP (*)
de partida y puede considerarse una generalización del Principio de los Trabajos Virtuales de la
mecánica.
Consideremos, con el fin de simplificar el problema, que las condiciones de contorno impuestas
sobre la superficie S son de tipo Dirichlet (se conoce el valor de la función sobre dicha
superficie). Se va a aproximar el campo escalar ϕ buscado utilizando la siguiente combinación
lineal de funciones de forma N i :
n
ϕ = ∑ ui N i
i =1
Por tanto, se han reordenado las funciones de forma de manera que las asociadas al contorno
ocupen las últimas posiciones. La misma operación se realiza con las incógnitas ui dividiéndose
en dos grupos:
∫ Ω
[ (
∇Gi ⋅ A ⋅ ∇ ∑1 1 v j Gj + ∑n1 +1 wk Hk
n n
1
) ] dΩ + ∫ Ω S
[ n
( n
1
G
Gi g dΩ = ∫ Gi A ⋅ ∇ ∑1 1 v j Gj + ∑n1 +1 wk Hk ⋅ dS = 0 )]
FUNDAMENTOS TEÓRICOS 18
Nótese que la integral de superficie se anula al tomar, sobre la superficie frontera S, valores nulos
las funciones de forma Gi . Dado que las vi y las wi no son función de la posición (aun cuando
pueden ser funciones del tiempo) pueden salir fuera de las respectivas integrales, quedando
reducida la expresión anterior a lo siguiente:
n1 n
∑ vj ∫ ∇N i ⋅ A ⋅ ∇N j dΩ +
j =1
Ω
∑
j = n1 +1
wj ∫ ∇N i ⋅ A ⋅ ∇N j dΩ + ∫ N i g dΩ = 0
Ω Ω
Nótese que las definiciones de los kij y de los fi coinciden con las de los cij y los qi obtenidas
en el apartado anterior para el caso particular del campo electrostático. Deben hacerse, sin
embargo, dos comentarios:
• Estas expresiones tienen una validez más general, pues los términos g pueden incluir
dependencia del tiempo y de las derivadas parciales de ϕ respecto del tiempo.
• En el apartado anterior no se habían aplicado las condiciones de contorno, por lo que el
número de incógnitas a determinar era mayor.
[ ]
K vv = k ij i, j = 1" n1 K ww = [kij ] i, j = n1 + 1,", n
K vw = [k ] ij i = 1" n1; j = n1 + 1" n K wv = [kij ] i = n1 + 1,", n; j = 1" n1
f v = fi i = 1" n1 f w = fi i = n1 + 1,", n
K vv v + K vw w = f v ⇒ K vv v = f v − K vw w
Nótese que si no se hubieran impuesto las condiciones de contorno se habría obtenido el sistema
siguiente que coincide exactamente (una vez realizado el cambio de notación) con el obtenido en
el apartado anterior:
⎡ K vv K vw ⎤ ⎡ v ⎤ ⎡ f v ⎤
⎢K ⎥⋅⎢ ⎥ = ⎢ ⎥
⎣ wv K ww ⎦ ⎣w⎦ ⎣f w ⎦
f v = [f v0 − L vw w ] − L vv v − M vv v
− M vw w
+ L vv v + K vv v = f v0 − [M vw w
M vv v + K vw w]
+ L vw w
FUNDAMENTOS TEÓRICOS 19
1.6 Referencias
En la referencia [1.1] puede encontrarse una colección muy amplia de ejemplos de problemas de
determinación de campos físicos que pueden resolverse utilizando técnicas de elementos finitos.
Aun cuando el texto esté enfocado hacia el uso de un determinado paquete de software su lectura
sigue siendo recomendable pues proporciona una visión muy clara de las posibilidades de
utilización del MEF en campos de la física muy variados (desde la electrostática a la mecánica
ondulatoria) en los cuales su utilización ha sido muy reducida hasta el momento.
Una introducción al MEF partiendo de sistemas discretos como son las estructuras metálicas o
los circuitos eléctricos puede encontrarse en un texto que puede considerarse como una de las
referencias clásicas en el ámbito de los Elementos Finitos: la obra de Zienkiewicz y Taylor [1.2].
Una referencia de gran utilidad para el lector que quiera introducirse en el estudio de las técnicas
de elementos finitos es de nuevo la referencia [1.2] puesto que prácticamente abarca todos los
aspectos de esta materia comenzando desde un nivel relativamente sencillo e intuitivo hasta
alcanzar, en algunos casos, un nivel de cierta altura matemática. En concreto, en esta referencia
puede encontrarse una explicación clara de los diferentes procedimientos que permiten generar el
sistema de ecuaciones del sistema discreto. Así mismo dedica un cierto espacio al estudio de los
problemas que plantea la resolución de problemas no lineales y el tratamiento de la variable
tiempo. Para aquellos lectores que deseen una aproximación más rigurosa a estos problemas
pueden encontrarla en [1.5] y en [1.6].
El método de los elementos de contorno es una técnica emparentada con el MEF y que posee
importantes ventajas comparativas frente a éste cuando la información en el interior del dominio
bajo estudio no es relevante. En este caso, el problema puede ser expresado en función
exclusivamente de los valores que toma la función incógnita en el contorno, reduciéndose por
tanto en una unidad la dimensión del problema (los problemas tridimensionales pasan a ser
bidimensionales y los bidimensionales unidimensionales). Las consecuencias que de ello se
derivan son de gran interés práctico, pues la potencia de cálculo requerida se reduce
drásticamente. La presentación de este método cae fuera de los objetivos de esta monografía por
lo que se remite al lector interesado a la referencia [1.11], bastante clara y concisa pero al mismo
tiempo rigurosa.
La referencia [1.5] incluye una reflexión bastante acertada, presentada desde una perspectiva
histórica, acerca de la controversia entre el cálculo simbólico y el cálculo numérico.
El lector interesado en temas relacionados con el cálculo variacional puede consultar las
referencias [1.7] y [1.8]. Asimismo, los aspectos relativos a la mecánica analítica introducidos en el
apartado 1.3 se pueden encontrar en cualquier texto dedicado a esta materia como puede ser la
referencia [1.9].
FUNDAMENTOS TEÓRICOS 20
[1.1] Backstrom, G.: Fields of Physics on the PC by Finite Element Analisis. Studenlitteratur.
ISBN 91-44-00293-9. 1996.
[1.2] Zienkiewicz, O.C.; Taylor, R.L.: The Finite Element Method. Volúmenes 1 y 2. McGraw-Hill.
ISBN 0-07-084178-8. 1994. (Existe también una versión traducida al castellano).
[1.3] Ralston, A.; Rabinowitz, P.: A first course in numerical analysis. McGraw-Hill.
ISBN 0-07-051158-6. 2ª Edición. 1985.
[1.4] de la Fuente, J.L.: Tecnologías computacionales para sistemas de ecuaciones, optimización lineal y
entera. Ed. Reverté. ISBN 84-291-2605-8. 1993.
[1.5] Eriksson, K.; et al.: Computational Differential Equations . Cambridge University Press.
ISBN 0-521-56738-6. 1996.
[1.6] Brenner, S.C.; Scott, L.R.: The Mathematical Theory of Finite Element Methods. Springer.
ISBN 3-540-94193-2. 1994.
[1.7] Elsgoltz, L.: Ecuaciones diferenciales y cálculo variacional. Mir-Rubiños. 1977.
[1.8] Krasnov, M.L.; Makarenko, G.I.; Kiseliov, A.I.: Cálculo variacional. Mir-Rubiños.
ISBN 84-604-1605-4. 1992.
[1.9] Goldstein, H.: Mecánica Clásica. Ed. Aguilar. ISBN 84-03-20057-9. 1979.
[1.10] Tralli, N.: Classical electromagnetic theory. McGraw-Hill. 1963.
[1.11] Alarcón, E.; Reyero, P.: Guía de Introducción al Método de los Elementos de Contorno.
ETSII-UPM, Sección de Publicaciones. ISBN 84-7484-035-X. 1983.
ESTÁTICA Y DINÁMICA DE HILOS 21
Capítulo 2:
Estática y Dinámica de Hilos
2.1 Introducción
El objetivo de la estática y dinámica de hilos es analizar el comportamiento mecánico de
elementos de unión flexibles tales como cables, cadenas, correas, etc. Para ello, se recurre con
mucha frecuencia al modelo físico-matemático de hilo ideal en sus variantes de hilo elástico e hilo
inextensible.
Los procedimientos de análisis clásicos, en el caso de hilo elástico, no suelen abarcar mucho más
que el mero planteamiento de las ecuaciones de equilibrio, las cuales, en el caso general, resultan
de difícil integración. El concepto de hilo inextensible es susceptible de un tratamiento
matemático más sencillo que permite su aplicación a un cierto número de aplicaciones prácticas
de gran interés: hilo sometido a carga vertical variable por unidad de abscisa e hilo con carga
constante por unidad de longitud de arco (catenaria).
Sin embargo, los procedimientos clásicos no incluyen una herramienta suficientemente versátil
que permita resolver de manera eficiente problemas más generales como puedan ser:
Sería además conveniente un método que al mismo tiempo que proporciona la obtención de las
posiciones de equilibrio facilite el análisis dinámico del sistema cuando éste está sometido a
perturbaciones que inducen pequeñas oscilaciones alrededor de las posiciones de equilibrio. El
MEF es una herramienta que permite dar respuestas a las demandas planteadas anteriormente.
ESTÁTICA Y DINÁMICA DE HILOS 22
Antes de continuar, conviene recordar que el concepto de hilo ideal (sistema unidimensional
infinitamente deformable a flexión pero resistente a esfuerzos de tracción) es solamente una
aproximación a los sistemas reales que tratamos de estudiar. En concreto para longitudes del
orden del diámetro de la sección normal la hipótesis de ausencia de resistencia a flexión es
naturalmente falsa.
Incluso podemos encontrar situaciones aún más claras. Por ejemplo, considérese el problema de
obtener la figura de equilibrio de una cadena. El estudio directo de ésta como un conjunto de
elementos rígidos (sus eslabones) articulados entre sí resulta complicado. Por ello, suele
aproximarse mediante un hilo inextensible que posea la misma masa por unidad de longitud. La
solución a este problema es la catenaria. Esta solución es válida si la consideramos
"macroscópicamente" pero, naturalmente, observada “microscópicamente” es falsa: supondría
que los eslabones inicialmente rígidos se han curvado. En cualquier caso, la catenaria es aceptada
como una solución técnicamente válida pues los posibles errores en las magnitudes bajo estudio
(posiciones y tensiones) suelen ser inferiores a la incertidumbre con la cual se conocen los
parámetros de la cadena (masa por unidad de longitud, longitud total, longitud de los eslabones,
etc.)
Por tanto, el sistema que vamos a estudiar y que reemplaza al concepto de hilo ideal elástico es un
conjunto de resortes articulados entre sí (ver figura 2.1) mediante articulaciones ideales. La figura
de equilibrio del hilo pasa a ser una poligonal que es función exclusivamente de las coordenadas
de las articulaciones.
ESTÁTICA Y DINÁMICA DE HILOS 23
n+1
1 1
(xi, yi, zi)
2 n n+1
G 2 i
F1
G
e G
F2 Fn
G
Fi
Los “eslabones” van a ser denominados elementos finitos y las articulaciones nodos.
Naturalmente, la posición de un punto interno de un elemento finito es función exclusivamente
de la posición de sus nodos. En este caso se obtiene directamente por interpolación lineal de las
posiciones de las dos articulaciones o nodos del elemento. Por tanto, hemos reducido un
problema correspondiente a un sistema continuo (con un número infinito de coordenadas
generalizadas) al estudio de un sistema discreto cuya posición viene determinada por un número
G G G G
finito de coordenadas generalizadas: las coordenadas de los nodos ri = xi i + y i j + z i k .
Si la longitud l del elemento es “pequeña” podemos considerar que las fuerzas por unidad de
G
longitud f l que actúan sobre dicho elemento permanecen prácticamente constantes a lo largo de
él. Por tanto, aceptaremos que podemos substituir dicho sistema de fuerzas por dos fuerzas
G G
concentradas de valor 12 fl ⋅ l aplicadas en cada uno de los dos nodos. fl representa el valor
G
medio de f l . Aún cuando este problema puede ser analizado con mayor rigor (ver apartados 1.3.2
y 1.3.3), por el momento consideraremos como razonablemente válido el resultado anterior.
Con el fin de simplificar aún más el problema se aceptará también que el sistema de fuerzas
aplicadas no varía ni con la posición ni con el tiempo. Por tanto, de acuerdo con la aproximación
descrita el párrafo anterior queda reducido a un sistema de fuerzas concentradas constantes
G G G G
Fi = X i i + Yi j + Zi k aplicadas en los nodos.
Aceptaremos, así mismo, que los apoyos del hilo (sobre puntos fijos, guías, poleas, etc.) son
también ligaduras ideales.
ESTÁTICA Y DINÁMICA DE HILOS 24
G G G G
En la expresión anterior Fi = X i i + Yi j + Zi k y ke son constantes conocidas.
donde E e representa el módulo de elasticidad del material. Por tanto, la tensión a la que estará
sometido dicho elemento es: Te = E eSe ⋅ ε e . Es decir:
⎛E S ⎞
Te = ⎜⎜ e e ⎟⎟ ⋅ Δle
⎝ le0 ⎠
Por consiguiente, la constante elástica del elemento será ke = E eSe le 0 . El problema a resolver se
reduce a minimizar la función de 3 ⋅ n variables escalares U = U(x1 " z n ) con las
correspondientes condiciones de contorno (por ejemplo: nodos inicial y final fijos),
representando n el número total de nodos.
Ejemplo nº 1:
Determinar la figura de equilibrio de un cable flexible apoyado en dos puntos situados a la misma altura y
separados entre sí una distancia V = 30 m y sometido a una carga vertical descendente por unidad de longitud
equivalente a nueve veces su propio peso. Las características de dicho cable se incluyen a continuación:
Denominación común: 6 × 19 × 1"
Masa específica por unidad de longitud λ: 28,6 kg
Producto del módulo de elasticidad por el área de la sección normal ES: 2,02 × 107 N
Longitud total en ausencia de cargas L0: 36 m
El sistema va a ser discretizado en N=20 elementos de longitudes naturales
iguales l0 = 36 m / 20 = 1,8 m y constante elástica
F = 12 (1 + 9) ⋅ λg = 2525 N
⎛V⎞
2a ⋅ Sh⎜ ⎟ = L 0
⎝ 2a ⎠
1 ⎡ ⎛ V ⎞⎤
UC = apg ⋅ ⎢V − a ⋅ Sh⎜ ⎟⎥ = - 561 481 J
2 ⎣ ⎝ a ⎠⎦
donde p = (1 + 9)λ
-15 -10 -5 5 x 10 15
0
-5
-10
4 Se ha utilizado el algoritmo minimizador Solver incluido en la hoja de cálculo Excel ’97 de Microsoft.
ESTÁTICA Y DINÁMICA DE HILOS 27
⎛V⎞
TMAX = aλg ⋅ cosh⎜ ⎟ = 64 128 N
⎝ 2a ⎠
⎛V⎞
TMAX = aλg ⋅ cosh⎜ ⎟ = 64 128 N
⎝ 2a ⎠
ESTÁTICA Y DINÁMICA DE HILOS 28
La mayor ventaja que el uso de un algoritmo de carácter general posee es la facilidad con la que el
problema es planteado y preparado para su resolución por ordenador. Su mayor inconveniente es
quizá su lentitud, derivada de su característica de algoritmo de propósito general. Por esta razón
es conveniente desarrollar un método específico para la minimización de la energía potencial. Por
otro lado, en apartados posteriores comprobaremos que este enfoque facilita el estudio dinámico
del sistema, virtud que no poseen los algoritmos de propósito general.
La estrategia que vamos a seguir para el desarrollo de este método específico de minimización
consistirá en lo siguiente.
⎡ x1 ⎤ ⎡ x11 ⎤ ⎡ u1 ⎤ ⎡ η1 ⎤
⎢y ⎥ ⎢y ⎥ ⎢v ⎥ ⎢ η ⎥
⎢ 1⎥ ⎢ 11 ⎥ ⎢ 1⎥ ⎢ 2
⎥
⎢ z1 ⎥ ⎢ z11 ⎥ ⎢ w1 ⎥ ⎢ η3 ⎥
⎢#⎥ ⎢ # ⎥ ⎢ # ⎥ ⎢ # ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢#⎥ ⎢ # ⎥ ⎢ ⎥# ⎢ # ⎥
⎢ i⎥
x ⎢ xi1 ⎥ ⎢ i⎥
u ⎢ η3( i −1)+1 ⎥
⎢ ⎥
r = ⎢ y i ⎥ r1 = ⎢ y i1 ⎥ r = r1 + u u = ⎢ vi ⎥ = ⎢ η3(i−1)+2 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ zi ⎥ ⎢ z i1 ⎥ ⎢ wi ⎥ ⎢ η3(i−1)+3 ⎥
⎢#⎥ ⎢ # ⎥ ⎢ # ⎥ ⎢ # ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢#⎥ ⎢ # ⎥ ⎢ # ⎥ ⎢ # ⎥
⎢xn ⎥ ⎢xn1 ⎥ ⎢ un ⎥ ⎢ η3(n−1)+1 ⎥
⎢y ⎥ ⎢y ⎥ ⎢ v ⎥ ⎢η ⎥
⎢ n⎥ ⎢ n1 ⎥ ⎢ n ⎥ ⎢ 3(n−1)+2 ⎥
⎢⎣ z n ⎥⎦ ⎢⎣ z n1 ⎥⎦ ⎢⎣wn ⎥⎦ ⎢⎣ η3(n−1)+3 ⎥⎦
[ ]
U( r1 + u) = U( r1 ) + [∇U( r1 )] ⋅ u + 21 u T ⋅ ∇ 2 U( r1 ) ⋅ u + "
T
ESTÁTICA Y DINÁMICA DE HILOS 29
∂ U ∂η1 ⎤
⎡ ∂ U ∂x1 ⎤ ⎡ ∂ U ∂u1 ⎤ ⎡
⎢ ∂ U ∂y1 ⎥ ⎢ ∂ U ∂v1 ⎥ ⎢ ∂ U ∂η2 ⎥
⎢ ∂ U ∂z ⎥ ⎢ ∂ U ∂w ⎥ ⎢ ∂ U ∂η3 ⎥
⎢ ⎥ ⎡ ∂2 U ∂2 U ∂2 U ⎤
⎢ # 1⎥ ⎢ 1
⎥ # ⎢ ∂η2
⎢ # ⎥ ⎢
#
⎥ ⎢ # ⎥ ∂η1∂η2 ∂η1∂η3n ⎥⎥
# ⎢ ⎥ ⎢ 21
⎢ ⎥ ⎢ ⎥ ∂ U ∂η3(i −1)+1 ⎥ ⎢ ∂ U ∂ U
2
∂2 U ⎥
⎢ ∂ U ∂xi ⎥ ⎢ ∂ U ∂ui ⎥ ⎢ ⎢ ∂η2 ∂η3n ⎥
∇ 2 U(r1 ) = ⎢ ∂η2 ∂η1 ∂η2 2
∇ U(r1 ) = ⎢ ∂ U ∂y i ⎥ = ⎢ ∂ U ∂vi ⎥ = ⎢ ∂ U ∂η3(i−1)+ 2 ⎥ ⎥
⎢ ∂ U ∂z i ⎥ ⎢ ∂ U ∂wi ⎥ ⎢ ∂ U ∂η3(i−1)+ 3 ⎥ ⎢
%
⎥
⎢ # ⎥ ⎢ # ⎥ ⎢ #
⎥
⎢ % ⎥
⎢ # ⎥ ⎢ ⎥ ⎢ ⎥
# ⎢ # ⎥ ⎢ ∂2 U ∂2 U ∂2 U ⎥
⎢∂ U ∂x ⎥ ⎢ ∂ U ∂u ⎥ ⎢ ∂η ∂η ∂η ∂η
⎢ n⎥ ⎢ n⎥ ⎢ ∂ U ∂η3(n −1)+1 ⎥ ⎣ 3n 1 3n 2 ∂η32n ⎥⎦
⎢∂ U ∂y n ⎥ ⎢ ∂ U ∂vn ⎥ ⎢∂ U ∂η3(n −1)+ 2 ⎥
⎢ ⎥
⎣⎢ ∂ U ∂z n ⎦⎥ ⎣⎢∂ U ∂wn ⎦⎥ ⎣⎢∂ U ∂η3(n −1)+ 3 ⎦⎥
El vector columna ∇ U(r1 ) cambiado de signo recibe el nombre de vector de fuerzas nodales
equivalentes f (r1 ) = −∇ U(r1 ) y la matriz hessiana K(r1 ) = ∇2 U(r1 ) matriz de rigidez del sistema.
Nótese que esta matriz es simétrica. Mas adelante se comentará la razón por la cual se utiliza esta
nomenclatura.
∂ U ∂ηg = 0 ∀g = 1,2,",3n
Es decir,
∇U
~ (u) = 0 − f (r1 ) + 1
2
[ ]
K(r1 ) + K(r1 )T ⋅ u = 0
Dado que la matriz K(r1 ) = ∇2 U(r1 ) es simétrica, el problema a resolver será el siguiente sistema
de ecuaciones lineales:
K(r1 ) ⋅ u = f (r1 )
Considérese ahora un sistema unidimensional. En este caso, la ecuación que obtenemos es una
ecuación escalar del tipo k ⋅ u = F . Pero si la analizamos con más detalle (ver figura 2.3) nos
daremos cuenta que k representa la constante elástica5 del resorte que mantiene unido el único
nodo presente a un punto fijo, u es el desplazamiento de este nodo según su único grado de
libertad y F es naturalmente la fuerza aplicada a dicho nodo. Por tanto, extendiendo estos
conceptos a un sistema con 3n grados de libertad es lógico que se utilice la nomenclatura de
matriz de rigidez del sistema para K y de vector de fuerzas nodales para f.
5Nótese que k es tanto mayor cuanto más rígido es el resorte. Por tanto, quizá una nomenclatura más correcta sería
denominarla constante de rigidez del resorte.
ESTÁTICA Y DINÁMICA DE HILOS 30
A0 u
F
T = k⋅u
Procediendo de manera iterativa se obtendrían estimaciones cada vez más cercanas a la solución:
rk +1 = rk + [K(rk )] f (rk )
−1
Antes de continuar, escribamos la energía potencial de las fuerzas aplicadas en formato matricial:
G G
UF = − ∑ Fi ⋅ ri = − ∑ (X i ⋅ xi + Yi ⋅ yi + Zi ⋅ zi )
i i
⎡ X1 ⎤
⎢Y ⎥
⎢ 1⎥
⎢ Z1 ⎥
⎢ # ⎥
⎢ ⎥
⎢ # ⎥
⎢ Xi ⎥
denominemos f F = ⎢ Yi ⎥ ; entonces UF = −fFT ⋅ u
⎢ ⎥
⎢ Zi ⎥
⎢ # ⎥
⎢ ⎥
⎢ # ⎥
⎢X n ⎥
⎢Y ⎥
⎢ n⎥
⎢⎣ Z n ⎥⎦
⎡ ∂ UE ∂u1 ⎤
⎢ ∂ U ∂v ⎥
⎢ E 1
⎥
⎢ ∂ UE ∂v1 ⎥
⎢ # ⎥
⎢ ⎥
⎢ # ⎥
⎢ ∂ UE ∂ui ⎥
f E = −∇ UE (r1 ) = − ⎢ ∂ UE ∂vi ⎥
⎢ ⎥
⎢ ∂ UE ∂vi ⎥
⎢ # ⎥
⎢ ⎥
⎢ # ⎥
⎢∂ UE ∂un ⎥
⎢ ∂ U ∂v ⎥
⎢ E n⎥
⎣⎢ ∂ UE ∂vn ⎦⎥
f E = − ∑ ∇ U E e (r1 ) = ∑f Ee
e e
[ ]
f E e = - ∇ U E e (r1 ) = −∇ 12 ke (le − le 0 )2 = −ke (le1 − le0 ) ⋅ ∇le (r1 )
Sin embargo, la longitud le del elemento e (y con el su energía elástica) depende únicamente de
las coordenadas de sus dos nodos. Denominemos a éstos p y q. Entonces:
le = le (xp , y p , z p , xq , yq , z q )
U E e = U E e (xp , y p , z p , xq , yq , z q )
Es decir, el vector columna ∇le (r1 ) es un vector disperso, en el sentido de que de sus 3n
componentes solo seis son distintas de cero:
⎡ # ⎤
⎢ 0 ⎥
⎢ # ⎥
⎢ ⎥ ⎡ ∂l ⎤ ⎡ ∂l ⎤
⎢∇ ple (r1 )⎥ ⎢ e ⎥ ⎢ e ⎥
⎢ ⎥ ⎢ ∂xp 1⎥ ⎢ ∂xq 1⎥
⎢ # ⎥ ⎢ ⎥ ⎢ ⎥
∂l ⎥ y ∇ q le (r1 ) = ⎢ ∂le
∇le (r1 ) = ⎢ 0 ⎥ donde ∇ p le (r1 ) = ⎢ e ⎥
⎢ # ⎥ ⎢ ∂y p 1
⎥ ⎢ ∂yq 1
⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
∇
⎢ qe 1 ⎥
l ( r ) ⎢ ∂le ⎥ ⎢ ∂le ⎥
⎢ ⎥ ⎢ ∂z p ⎥ ⎢ ∂z q ⎥
⎣ 1⎦ ⎣ 1⎦
⎢ # ⎥
⎢ 0 ⎥
⎢⎣ # ⎥⎦
ESTÁTICA Y DINÁMICA DE HILOS 32
G G
Pero ∇ p le (r1 ) = − te , donde te es un vector unitario que posee la dirección del segmento pq y el
G G
sentido de p hacia q. Análogamente ∇ p le (r1 ) = + te . La expresión de te puede escribirse de la
siguiente manera:
G G G H
te = ae i + be j + ce k
G G
G rq1 − rp1 xq1 − xp1 G yq1 − y p1 G zq1 − z p1 G
te = G G = ⋅i + ⋅ j+ ⋅k
rq1 − rp1 le1 le1 le1
xq1 − xp1 y − y p1 z − z p1
Por tanto, ae = ; be = q1 ; ce = q1
le1 le1 le1
G (p) G G (q ) G
Denominemos f Ee = −∇ p U E e (r1 ) = +ke Δle1 te y f Ee = −∇ p U E e (r1 ) = +ke Δle1 te .
Recordemos que la tensión del elemento es Te = ke Δle1 . Por consiguiente:
G (q ) G G (q ) G
f Ee = + Te te y f Ee = − Te te
Por tanto, f E e representa el efecto de las fuerzas elásticas que el elemento e ejerce sobre los
nodos p y q (ver figura 2.4a).
G G
f E(qe) = −ke Δle ⋅ te
G G
f E( pe) = +ke Δle ⋅ te
G
p te
Figura 2.4a.- Fuerzas elásticas que ejerce el elemento e sobre sus nodos p y q
q
Elemento e G G
− f E(qe) = +ke Δle ⋅ te
G G G
− f E( pe) = −ke Δle ⋅ te p
te
Figura 2.4b.- Fuerzas elásticas que ejercen los nodos p y q sobre el elemento e.
K = ∇ 2 U = ∇ 2 UF + ∇ 2 UE
⎡ ∂ 2 UE ⎤
K = ∇ 2 UE = ⎢ ⎥ i, j = 1" 3n
⎣ ∂ηi∂ηj ⎦
K = ∑ K(e)
e
Al igual que en el caso de las fuerzas elásticas equivalentes, determinaremos primero el formato
de la matriz de rigidez. Dado que UE e no depende de otras coordenadas que no sean las de los
nodos p y q, cualquier derivada segunda en la que intervenga una coordenada no perteneciente a
dichos nodos será nula. Es decir:
∂ 2 UE e
=0 si ηi ó ηj ∉ { xp , y p , z p , xq , yq , zq }
∂ηi∂ηj
⎡ ⎤
⎢ ⎥
⎢ ⎥ ⎡ ⎤
⎢ ⎥ ⎢ ⎥
⎢ ••• • •• ⎥ ⎢ ⎥
⎢ ••• • •• ⎥ ⎢ ⎥
⎢ ••• • •• ⎥ ⎢ K(ppe) K(pqe) ⎥
⎢ ⎥ ⎢ ⎥
K(e) =⎢ ⎥=⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢ ••• • •• ⎥ ⎢ K(qpe) K(qqe) ⎥
⎢ ••• • •• ⎥ ⎢ ⎥
⎢ ••• • •• ⎥ ⎢ ⎥
⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎣ ⎦
⎢⎣ ⎥⎦
donde:
⎡ ∂ 2 UE e ⎤
K(ppe) = ⎢ ⎥ ηi y η j ∈ { xp , y p , z p }
⎣ ∂ηi ∂ηj ⎦
⎡ ∂ 2 UE e ⎤
K(qqe) = ⎢ ⎥ ηi y η j ∈ { xq , yq , z q }
⎣ ∂ηi ∂ηj ⎦
⎡ ∂ 2 UE e ⎤ ηi ∈ { xq , yq , z q }
K(qpe) = ⎢ ⎥ η j ∈ { xp , y p , z p }
⎣ ∂ηi ∂ηj ⎦
⎡ ∂ 2 UE e ⎤ ηi ∈ { x p , y p , z p }
K(pqe) = ⎢ ⎥ η j ∈ { xa , ya , z a }
⎣ ∂ηi ∂ηj ⎦
La determinación todas y cada una de las componentes de las 4 submatrices de dimensión 3x3
antes mencionadas es algo laboriosa pero no encierra mayor dificultad que la de derivar
correctamente respecto de las coordenadas xp , y p , z p , xq , yq , zq . Después de realizado este trabajo
se obtiene que:
⎡ae ⎤ ⎡1 ⎤
⎛ Δle1 ⎞ ⎢ ⎥ Δle1 ⎢
K (e )
=K (e )
= −K (e )
= −K (e )
= K = ke ⋅ ⎜⎜1 −
~ (e )
⎟ ⋅ be [ae be ce ] + ke ⋅ 1 ⎥
le1 ⎟⎠ ⎢ ⎥ le1 ⎢ ⎥
pp qq pq qp
⎝
⎣⎢ ce ⎦⎥ ⎣⎢ 1⎥⎦
ESTÁTICA Y DINÁMICA DE HILOS 35
Ejemplo nº 2:
Considérese un cable cuyas características mecánicas son equivalentes a las del cable del ejemplo nº 1. Éste se
encuentra apoyado en dos puntos fijos, situados a la misma altura y distantes entre sí una distancia L0 = 10 m .
Inicialmente, el cable se encuentra en posición horizontal, sometido a una tensión T0 = α ⋅ ES (α = 0,001) y
en ausencia de cualquier otro tipo de esfuerzos exteriores. A continuación se le somete a una carga constante por
unidad de longitud equivalente a tres veces su propio peso (incluyendo a este último). Se pide determinar la flecha
máxima.
1 L 10 m
Pero L0 = N⋅ l1 = N⋅ (l0 + Δl1 ) = N⋅ (l0 + αl0 ) ⇒ l0 = ⋅ 0 = = 0,099 900 1 m
1 + α N 1,001 × 100
ES ES ES 2,02 × 107 N
k= = = ⋅ (1 + α ) N = × 1,001 × 100 = 2,02202 × 108 N m
l0 1 L L0 10 m
⋅ 0
1+ α N
α L0
⋅
α L0 Δl1 1 + α N α 0,001
Δl1 = αl0 = ⋅ ⇒ = = = = 9,99001 × 10− 4
1+ α N l1 L0 1 + α 1,001
N
f FT = [0 0 − 2 F 0 0 − 2 F "" 0 0 − 2 F]
G G
Los vectores unitarios tangentes a los elementos son todos iguales: te = i
G G ⎡ ES ⎤ ⎡ α L0 ⎤ G G G
FE(e) = +ke Δle1 ⋅ te = ⎢ ⋅ (1 + α ) N⎥ ⋅ ⎢ ⋅ ⎥ ⋅ i = α ES⋅ i = T0 ⋅ i
⎣ L0 ⎦ ⎣1 + α N ⎦
G G G
FE(e) = 0,001 × 2,02 × 10 7 N ⋅ i = 2,02 × 10 4 N ⋅ i
ESTÁTICA Y DINÁMICA DE HILOS 36
Nótese, sin embargo, que para cada nodo las fuerzas elásticas equivalentes
que introduce cada uno de los dos elementos contiguos son iguales y
opuestas por lo que se cancelan mutuamente. Por tanto, el vector de fuerzas
nodales elásticas es el vector nulo y consiguientemente:
f T = f FT + 0 = [0 0 − 2 F 0 0 − 2 F " " 0 0 − 2 F 0 0 − 2 F]
Dado que todos los elementos son iguales y que, para la estimación de la
solución inicial, poseen alargamientos también idénticos sus submatrices de
rigidez K~ (e) deberán igualmente ser las mismas.
⎡ ae2 ae be ae c e ⎤ ⎡1 ⎤
⎛ Δl ⎞ ⎢ ⎥ Δl
~
K (e )
= ke ⋅ ⎜⎜ 1 − e1 ⎟⎟ ⋅ ⎢ be ae b 2
be c e ⎥ + ke e1 ⋅ ⎢ 1 ⎥ =
le1 ⎢ ⎥
e
⎝ le1 ⎠
⎢ c e ae c e be c e2 ⎥⎦ ⎢⎣ 1⎥⎦
⎣
⎡1 0 0⎤ ⎡1 ⎤
⎡ ES ⎤ ⎛ α ⎞ ⎢ ⎥ ⎡ ES ⎤ α ⎢ ⎥=
= ⎢ ⋅ (1 + α ) N⎥ ⋅ ⎜ 1 − ⋅
⎟ ⎢ 0 0 0 + ⎢L ⋅ ( 1 + α ) N ⋅ ⋅
⎥ 1+ α ⎢ 1
⎝ 1 + α ⎠ ⎥ ⎥
⎣ 0
L ⎦ ⎢⎣0 0 0⎥⎦ ⎣ 0 ⎦ ⎢⎣ 1⎥⎦
⎧ ⎡1 0 0⎤ ⎡1 ⎤⎫
⎡ ES ⎤ ⎪⎢ ⎥ α ⎢ ⎪
=⎢ ⋅ (1 + α ) N⎥ ⋅ ⎨ 0 0 0 + ⋅ 1 ⎥⎬
⎢ ⎥ 1 + α ⎢ ⎥
⎣ 0
L ⎦ ⎪ ⎢0 0 0 ⎥ 1⎦⎥ ⎪⎭
⎩⎣ ⎦ ⎣⎢
ES α
Con el fin de simplificar denominemos k~ = ⋅ (1 + α ) ⋅ N y γ =
L0 1+ α
⎡1 0 0 ⎤
K = k ⋅ ⎢0 γ 0 ⎥
~ (e ) ~
⎢ ⎥
⎣⎢0 0 γ ⎦⎥
Por tanto, la matriz de rigidez del sistema será:
⎡ 2K~ −K
~ ⎤
⎢ ~ ⎥
⎢ − K 2K
~
⎥
⎢ % ⎥
K=⎢ ⎥
%
⎢ ~⎥
~ −K
⎢ 2K ⎥
⎢⎣ − K 2K ⎥⎦
~ ~
⎡ 2 −1 ⎤ ⎡ u1 ⎤ ⎡ 0 ⎤
⎢ 2γ −γ ⎥ ⎢ v ⎥ ⎢ 0 ⎥
⎢ ⎥ ⎢ 1 ⎥ ⎢ ⎥
⎢ 2γ −γ ⎥ ⎢ w 1 ⎥ ⎢ − 2 F⎥
⎢− 1 2 ⎥ ⎢ u2 ⎥ ⎢ 0 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ −γ 2γ ⎥ ⎢ v2 ⎥ ⎢ 0 ⎥
⎢ −γ 2γ ⎥ ⎢ w ⎥ ⎢ − 2 F⎥
⎢ % ⎥ ⎢ #2 ⎥ ⎢ # ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ % ⎥ ⎢ # ⎥ ⎢ # ⎥
k~ ⋅ ⎢ ⎥⋅⎢ ⎥=⎢ ⎥
⎢ % ⎥ ⎢ # ⎥ ⎢ # ⎥
⎢ % ⎥ ⎢ # ⎥ ⎢ # ⎥
⎢ 2 −1 ⎥ ⎢u ⎥ ⎢ 0 ⎥
⎢ ⎥ ⎢ N−2 ⎥ ⎢ ⎥
⎢ 2γ −γ ⎥ ⎢ vN−2 ⎥ ⎢ 0 ⎥
⎢ 2γ − γ ⎥ ⎢ w N − 2 ⎥ ⎢ − 2 F⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ − 1 2 ⎥ ⎢ u N −1 ⎥ ⎢ 0 ⎥
⎢ −γ 2γ ⎥ ⎢ v N −1 ⎥ ⎢ 0 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣ −γ 2 γ ⎦ ⎣ w N − 1 ⎦ ⎣ − 2 F⎦
ESTÁTICA Y DINÁMICA DE HILOS 37
-5 -3 -1 1 3 5
0
r30
-0.1
-0.2
r3
-0.3
r4
-0.4
r2
r1
-0.5
-0.6
Uk − Uk −1
εk (U) =
Uk
{
max η(ik ) − η(ik −1) }
ε k (η) = i
l0
Número de Iteraciones
1 5 10 15
1e+02
1e+00
1e-02 εk (η)
1e-04
1e-06
1e-08
1e-10
ε k (U)
1e-12
1e-14
1e-16
Figura 2.6.- Convergencia del proceso iterativo
correspondiente al ejemplo nº 2.
Ejemplo nº 3:
Resolver el ejemplo nº 1 discretizando el cable en N=100 elementos y minimizar la energía potencial utilizando el
método de la matriz de rigidez.
La longitud natural de los elementos será l0 = 36 m / 100 = 0,36 m y la constante
elástica
k = ES l0 = 2,02 × 10 7 N 0,36 m = 5,611 × 10 7 N m
F = 12 (1 + 9) ⋅ λg ⋅ l0 = 505 N
-15 -10 -5 0 5 10 15
0
-2
-4
-6
-8
-10
-12
Número de Iteraciones
0 5 10 15
1e+02
1e+00 εk (η)
1e-02
1e-04
1e-06
1e-08
ε k (U)
1e-10
1e-12
1e-14
1e-16
Ahora bien, el MEF no es capaz de trabajar con valores infinitos para la constante elástica. Por
tanto, lo único que podrá hacerse es ir incrementando progresivamente ésta y tratar de
comprobar si es cierto que cuando ES y N tienden a infinito las desviaciones respecto a la
solución analítica tienden a cero. En la tabla siguiente se han incluido diversos resultados (energía
potencial total, flecha y tensión máxima) para diversos valores de N y de ES. Nótese el
incremento de iteraciones necesarias para resolver el problema al crecer la constante elástica.
Se observa que al crecer la constante elástica el error relativo decrece hasta alcanzar un cierto
valor mínimo. Éste es el debido a la discretización del sistema, pudiendo únicamente reducirse
incrementando el número de nodos. Este efecto se observa claramente en el gráfico de la
figura 9.
Un último punto que puede resultar de interes es tratar de conocer con que velocidad disminuyen
los errores relativos al incrementarse el número de nodos. Experimentalmente puede
comprobarse que las desviaciones en la energía potencial total y en la flecha parecen decrecer con
el inverso del cuadrado del número de elementos. Sin embargo las desviaciones en la tensión
máxima decrecen únicamente con el inverso del número de elementos. En la tabla 2.5 se
presentan los resultados correspondientes a la resolución de un problema en el que se debía
obtener la figura de equilibrio de un hilo de acero (diámetro: 1 mm; E = 2,06 × 107 N cm 2 ;
ESTÁTICA Y DINÁMICA DE HILOS 41
densidad relativa: 7,9) de longitud natural L=360 m apoyado en dos puntos fijos situados a la
misma altura y separados entre sí V=300 m. Con el fin de obtener un valor de referencia se han
extrapolado los datos obtenidos a un número infinito de elementos (últimos valores de la tabla).
1e-03
N=100
1e-04 N=400
N=1600
1e-05
1e-06
1e-07
Figura 2.9.- Evolución de los errores relativos de la flecha al crecer la constante elástica
y el número de elementos
Número de elementos
10 100 1000 10000
1e-01
Errores
1e-02
relativos
1e-03
1e-04 U
f
1e-05
Tmax
1e-06
1e-07
1e-08
Figura 2.10.- Disminución de los errores relativos en la energía total, flecha y tensión máxima
al incrementarse el número de elementos.
Sin embargo, a pesar de la sencillez con que podrían haber sido tratadas, los algoritmos utilizados
para resolver algunos de los problemas planteados han utilizado un esquema aún más sencillo
pero sobre todo más general. La idea básica se centra de nuevo en preguntarse si el modelo
matemático utilizado refleja correctamente la realidad. Si aplicamos las condiciones de contorno
en los extremos tal y como se acaba de describir en el primer párrafo, esto equivaldría a aceptar la
existencia de apoyos ideales, infinitamente rígidos, capaces de absorber cualquier esfuerzo sin
desplazarse. En la práctica, sin embargo, estos apoyos no se comportan de esta manera. Los
apoyos reales se desplazan ligeramente al aplicarles un cierto esfuerzo, tanto más cuanto mayor
sea éste aun cuando los desplazamientos sean, en la mayoría de los casos, inapreciables. Tratemos
de modelar este comportamiento de manera lineal, para el caso del apoyo A correspondiente al
nodo 0:
G G G
TA = kA (rA − rA1 )
G
TA representa la acción que el hilo ejerce sobre dicho apoyo que debe ser igual a la tensión en
G G
dicho punto. rA1 se corresponde con la posición del apoyo en ausencia de esfuerzo alguno. rA es
G
el vector de posición del apoyo bajo la acción de TA . kA representa la constante elástica del
ESTÁTICA Y DINÁMICA DE HILOS 43
apoyo. Si este es muy rígido kA tomará un valor muy elevado. En el límite, un apoyo
infinitamente rígido poseerá una constante elástica infinita.
Si es cierto lo anterior, deberemos añadir a la expresión de la energía potencial total del sistema
un término adicional que tenga en cuenta la energía elástica acumulada por el apoyo A. De igual
manera debiéramos incluir la contribución del apoyo B (el correspondiente al nodo n + 1 ):
G G
U(x0 " z n+1 ) = − ∑ Fi ⋅ ri + ∑ 12 ke Δle2 + 12 kA lA2 + 21 kB lB2
i e
donde:
⎡1 ⎤ ⎡ u0 ⎤
l = (xA − xA1 ) + (yA − yA1 ) + (z A − z A1 ) = u + v + w = [u0
2 2 2 2 2 2 2
v0 w0 ] ⋅ ⎢ 1 ⎥ ⋅ ⎢ v0 ⎥
A 0 0 0
⎢ ⎥ ⎢ ⎥
⎢⎣ 1⎥⎦ ⎢⎣w0 ⎥⎦
⎡1 ⎤ ⎡ u n +1 ⎤
l = (xB − xB1 ) + (yB − yB1 ) + (zB − zB1 ) = u
2 2 2 2 2
+v 2
+w 2
= [un+1 v n +1 w n +1 ] ⋅ ⎢ 1 ⎥ ⋅ ⎢ v n +1 ⎥
B n +1 n +1 n +1
⎢ ⎥ ⎢ ⎥
⎢⎣ 1⎥⎦ ⎢⎣wn+1 ⎥⎦
Si utilizamos la expresión ya linealizada nos quedaría en la forma:
[
~ (u) = U1 − f (r1 )T ⋅ u + 21 u T ⋅ K(r1 ) + K(A) + K(B) ⋅ u
U ]
La matrices K(A) y K(B) serán matrices cuyas submatrices K(ijA) , K(ijB) son nulas excepto la
submatriz K(00A) en el caso de la primera y K(nB+1), n+1 en lo que respecta a K(B) :
⎡kA ⎤ ⎡kB ⎤
K(A )
=⎢ kA ⎥ K ( B)
=⎢ kB ⎥
00
⎢ ⎥ n +1, n +1
⎢ ⎥
⎣⎢ kA ⎦⎥ ⎣⎢ kB ⎦⎥
Debe hacerse notar que se ha realizado otra pequeña modificación: el incremento en el número
de incógnitas asociado a la toma en consideración de los nodos 0 y n + 1 . Por tanto la matriz K
ha sido ampliada. Si denominamos K* a la matriz de rigidez que teníamos antes incluir los nodos
0 y n + 1 la matriz K , después de ampliarla y añadir las contribuciones de las matrices K(A ) y
K(B) , sería la siguiente:
⎡K(00A) ⎤
⎢ ⎥
⎢ ⎥
⎢ ⎥
K=⎢ K* ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢⎣ K(nB+1);n+1 ⎥⎦
El procedimiento es, por tanto muy flexible y sencillo, y permite conseguir que un nodo
cualquiera permanezca fijo sin necesidad de reorganizar la estructura de la matriz. Basta con
añadir al sistema un nuevo elemento por cada apoyo. Esto se traduce simplemente en sumar a los
ESTÁTICA Y DINÁMICA DE HILOS 44
elementos de la diagonal de la matriz de rigidez que se corresponden con los grados de libertad
que se van a fijar la constante de rigidez del apoyo. En el caso usual de tratar de considerar el
apoyo como infinitamente rígido puede asignarse a dicha constante un valor muy elevado. Dado
que la mayoría de los ordenadores trabajan con número de coma flotante de mantisa de 15÷16
dígitos (en base diez) una buena elección es utilizar un valor igual a 10 −8 × kmax donde kmax es la
constante elástica más elevada de los elementos (tipo hilo) del sistema. Valores más elevados
pueden generar importantes errores de redondeo al invertir la matriz y valores menores quizá no
representen suficientemente bien el comportamiento de un apoyo casi rígido.
Consideremos ahora el caso más general de una ligadura del tipo ϕ(u) = ϕ(u0 ,", wn+1 ) . En la
práctica dicha ligadura estará materializada mediante una serie de dispositivos mecánicos. Estos,
es probable que se hayan diseñado buscando una rigidez elevada con el fin de que dicha ligadura
se cumpla “lo mejor posible”. Sin embargo, deberemos aceptar como en los casos anteriores que
dichos dispositivos aún poseen un cierto comportamiento elástico ante esfuerzos elevados.
Tratemos por tanto de modelar el comportamiento “elástico” resultante de la ligadura
introduciendo la siguiente “energía elástica” U ( L ) :
U(L) = 21 kL ϕ 2
[ ]
U(L) (u) = 12 kL ϕ12 + kL ∇ϕ T ⋅ u + 21 u T ⋅ kL ∇ϕ ⋅ ∇ϕ T + ϕ∇ 2 ϕ ⋅ u + "
U
2 2 2
[ ]
~ (u) = U1* − f * (r1 )T ⋅ u + 1 u T ⋅ K* (r1 ) ⋅ u + 1 kL ϕ12 + kL ∇ϕ T ⋅ u + 1 u T ⋅ kL ∇ϕ ⋅ ∇ϕ T + ϕ∇ 2 ϕ ⋅ u
Aquellos términos que llevan un asterisco son los que corresponden al sistema antes de haber
introducido la ligadura. El efecto de la introducción de esta última es equivalente a la adición a la
matriz de rigidez y al vector de fuerzas nodales equivalentes los siguientes términos:
[
K(r1 ) = K* (r1 ) + kL ∇ϕ ⋅ ∇ϕ T + ϕ∇ 2 ϕ ]
f (r1 ) = f * (r1 ) − kL ∇ϕ
ESTÁTICA Y DINÁMICA DE HILOS 45
d ⎛⎜ ∂L ⎞ ∂L
⎟− = Qg g = 0,1,",3(n + 1)
dt ⎜⎝ ∂η g ⎟ ∂ηg
⎠
⎧l = 0 Qg = Fxk
G ∂rGk ⎪
[ ]
n +1
Qg = ∑ Fk ⋅ =⎨ l = 1 Qg = Fyk Q = Q0 " Q3(n+1)
T
k =0 ∂ηg ⎪
⎩l = 2 Qg = Fzk
Aceptaremos que un punto cualquiera del elemento e puede posicionarse recurriendo a un único
parámetro ξ (que varía entre 0 y 1 y permanece constante en el tiempo) y naturalmente a las
coordenadas de los nodos:
G G G
r = (1 − ξ)rp + ξrq
K K K
La velocidad de dicho punto sería v = (1 − ε)v p + ξv q . Por tanto, la energía cinética del elemento
e sería:
⎡E pp E pq ⎤ ⎡v p ⎤
T( e ) = ∫
ξ =1
ξ=0
1
2 v 2 ⋅ λ e0le0 dξ = ∫
ξ =1
ξ=0
1
2 [v T
p ]
v qT ⋅ ⎢ ⋅
E pp ⎥⎦ ⎢⎣ v q ⎥⎦
dξ
⎣ E qp
donde λ e0 : densidad por unidad de longitud del elemento para alargamiento nulo
le0 : longitud natural del elemento
me : masa del elemento
⎡1 ⎤ ⎡1 ⎤
y E pp = E qq = λ e0le 0 ⋅ (1 − ξ) dξ ⋅ ⎢ 1 ⎥ 2
E pq = E qp = λ e0le0 ⋅ ξ(1 − ξ)dξ ⋅ ⎢ 1 ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣ 1⎥⎦ ⎢⎣ 1⎥⎦
⎡M(ppe ) M(pqe ) ⎤ ⎡v p ⎤
Integrando se obtiene T (e )
= 1
2 [
v v ⋅ ⎢ (e )
T
p
T
q ] ⎥ ⋅ ⎢ ⎥ donde:
M(qqe ) ⎦ ⎣ v q ⎦
⎣M qp
ESTÁTICA Y DINÁMICA DE HILOS 46
⎡1 ⎤ ⎡1 ⎤
M (e )
=M (e )
1
= λ e0 le0 ⋅ ∫ (1 − ξ) dξ ⋅
2 ⎢ 1 ⎥ = m ⋅
1 ⎢ 1 ⎥
pp qq
0 ⎢ ⎥ 3 e ⎢ ⎥
⎢⎣ 1⎥⎦ ⎢⎣ 1⎥⎦
⎡1 ⎤ ⎡1 ⎤
M (e )
=M (e )
1
= λ e 0 le 0 ⋅ ∫ ξ(1 − ξ)dξ ⋅ ⎢ 1 ⎥ = m ⋅
1 ⎢ 1 ⎥
pp qq
0 ⎢ ⎥ 6 e ⎢ ⎥
⎢⎣ 1⎥⎦ ⎢⎣ 1⎥⎦
⎡ ⎤
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ M (ppe) M (pqe) ⎥
⎢ ⎥
⎢ ⎥
M (e ) =⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ M (qpe) M (qqe) ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
T = 12 u T ⋅ M ⋅ u donde M = ∑ M( e )
e
Por tanto, la lagrangiana del sistema (una vez aproximada la energía potencial por su desarrollo de
Taylor truncado de orden 2) sería:
{
L = 12 u T ⋅ M ⋅ u − U( r1 ) + [∇U( r1 )] ⋅ u + 12 u T ⋅ K(r1 ) ⋅ u
T
}
G G G G
Sea f A (ξ) = fAx (ξ)i + fAy (ξ) j + fAz (ξ)k y g = 3(k − 1) + l , k = 0 " n + 1 y l = 0" 2
⎧ k = p ; l = 0 q (e) = 1f (ξ) ⋅ (1 − ξ) l dξ
⎪ g ∫ 0 Ax e0
⎪ k = p ; l = 1 q = f (ξ) ⋅ (1 − ξ) l dξ
1
∫ 0 Ay
( e )
⎪ g e0
⎪ k = p ; l = 2 q = f (ξ) ⋅ (1 − ξ) l dξ
1
∫ 0 Az
( e )
G ⎪ g e0
1G ∂r ⎪
q g(e) = ∫ f A (ξ) ⋅ le0 dξ = ⎨ k ≠ p y k ≠ q q g(e) = 0
0 ∂ηg ⎪ 1
⎪k = q ; l = 0 q g(e) = ∫ fAx (ξ) ⋅ ξ le0 dξ
⎪ 0
1
⎪ k = q ; l = 1 q g = ∫ 0 fAy (ξ) ⋅ ξ le0 dξ
(e )
⎪ 1
⎪⎩k = q ; l = 2 q g = ∫ 0 fAz (ξ) ⋅ ξ le 0 dξ
(e )
Nótese que en este caso hemos incluido todo tipo de fuerzas (distribuidas, las concentradas ya se
habían evaluado con anterioridad) que no derivan de un potencial, incluyendo fuerzas que puedan
depender de la posición, velocidad, tiempo, etc...
Por tanto, las ecuaciones de Lagrange escritas en formato vectorial quedan de la siguiente forma:
M⋅u
+ K(r1 ) ⋅ u = Q(r, u , t) + q(r, u , t) − ∇U(r1 )
Usualmente, el sistema se linealiza en torno a un punto de equilibrio req , para lo cual es necesario
determinarlo previamente, por ejemplo, utilizando el siguiente algoritmo iterativo:
M⋅u
+ K(req ) ⋅ u = ΔQ(r, u , t) + Δq(r, u , t)
[ω M − K(r )] ⋅ v = 0
2
eq
jwt+ φ0
r(t) = req + A ⋅ ve
ESTÁTICA Y DINÁMICA DE HILOS 48
M⋅u
+ Lu + K(req ) ⋅ u = ΔQ(r, u , t) + Δq * (r, u , t)
Ejemplo nº 4:
Determinar las frecuencias propias y los modos normales de vibración de un cable flexible apoyado en dos puntos
situados a la misma altura y separados entre sí una distancia V = 30 m . Las características de dicho cable se
incluyen a continuación:
Masa específica por unidad de longitud λ: 286 kg m
Producto del módulo de elasticidad por el área de la sección normal ES: 2,02 × 107 N
Longitud total en reposo L0: 36 m
[ω M − K(r )]⋅ v
2
i eq i =0
500
400
Frecuencia (Hz)
300
200
100
0
0 100 200 300
Nº de orden
Figura 2.11a.-Distribución de las frecuencias propias del hilo correspondiente a los ejemplos 1 y 3.
Nº grados de libertad
1 10 100 1000
1000
100
Frecuencia (Hz)
10
0.1
1.50
1.25
Frecuencia (Hz)
1.00
(2.12a)
0.75
0.50
0.25
0.00
0 100 200 300 400
Nº grados de libertad
Nº grados de libertad
10 100 1000
1.0E+00
Error Normalizado E
1.0E-02
(2.12b)
1.0E-04
1.0E-06
6.0E-04
Error normalizado E
4.0E-04
(2.12c)
2.0E-04
0.0E+00
0 4 8 12
Nº de orden
fi(m ) − fi(−m1 )
Ei =
fi(m )
(m )
donde fi es el valor obtenido para la frecuencia propia con número de
orden m para la discretización ℵi . La figura 2.12b muestra la evolución
de E en función del número de grados de libertad de la discretización. Este
error normalizado suele ser menor cuanto mas bajo es el número de orden de
la frecuencia considerada (ver figura 2.12c).
⎛V ⎞
Tmin = λga = 39520 N Tmax = λga ⋅ Ch⎜ ⎟ = 64127 N
⎝ 2a ⎠
ESTÁTICA Y DINÁMICA DE HILOS 52
-5
0.19 Hz
Modo
Nº 1
-10
0 0 10 20 30
0
-5
0
0.30 Hz
Modo
-10 Nº 2
0
0
0 10 20 30
0
-5 4.10 Hz
Modo
-10 Nº 45
0
0
0 10 20 30
-5 0
7.73 Hz
Modo
Nº 82
-10
0
0
0 10 20 30
1/ 2
1 ⎛T ⎞
f
1
(T )
= ⋅⎜ ⎟ = 0,163 ÷ 0,208 Hz
2L ⎝ λ ⎠
2
⎛ T 1/ 2 + Tmax
1/ 2
⎞
Tmed = ⎜⎜ min ⎟⎟ = 51083 N
⎝ 2 ⎠
obtendríamos la siguiente aproximación para la frecuencia fundamental:
1/ 2
1 ⎛ Tmed ⎞
f1
(T )
= ⋅⎜ ⎟ = 0,187 Hz
2L ⎝ λ ⎠
Valor muy próximo al obtenido. Sin embargo, para las siguientes frecuencias
los resultados ya no son tan similares (ver tabla 2.6).
1 0.1880 0.1856
2 0.2969 0.1856
3 0.3607 0.3712
4 0.4944 0.3712
5 0.5383 0.5569
6 0.6880 0.5569
7 0.7165 0.7425
8 0.8686 0.7425
9 0.8952 0.9281
10 1.0551 0.9281
11 1.0742 1.1137
12 1.2336 1.1137
13 1.2535 1.2993
14 1.4188 1.2993
15 1.4332 1.4850
16 1.5959 1.4850
17 1.6133 1.6706
18 1.7822 1.6706
19 1.7938 1.8456
20 1.9545 1.8562
21 1.9748 1.8562
22 2.1463 2.0418
23 2.1563 2.0418
24 2.1955 2.2274
25 2.3383 2.2274
−1
La diagonalización de la matriz de la matriz A = K M permite calcular
todas las frecuencias y modos normales de vibración del sistema, sin
embargo es un proceso muy costoso desde el punto de vista del tiempo de
proceso empleado tal y como puede comprobarse a partir de los datos de la
tabla 2.7.
ESTÁTICA Y DINÁMICA DE HILOS 54
2.10 Referencias.
Es difícil encontrar en la literatura aplicaciones del MEF a la resolución de problemas de estática
de hilos. Por el contrario es sencillo encontrar textos sobre teoría de las estructuras en los que se
aborde el problema del cálculo de celosías articuladas por métodos matriciales (ver, por ejemplo,
[2.1]). Teniendo en cuenta que un hilo discretizado es una celosía hipostática (o mecanismo) es,
por tanto, sencillo aprovechar gran parte de los desarrollos teóricos incluidos en dichos textos. La
diferencia mayor estriba en que la mayor parte de los problemas de celosías estudiados mediante
métodos matriciales son aquellos que corresponden a celosías isostáticas o hiperestáticas. En
ellas, los desplazamientos de los nodos al someter la estructura a carga son pequeños por lo que
el problema es lineal o cuasi-lineal. Sin embargo, en el caso de celosías hipostáticas los
desplazamientos de los nodos ya no son obligatoriamente pequeños por lo que el problema
pierde su linealidad.
[2.1] Timoshenko, S.P.; Young, D.H.: Teoría de las Estructuras. Ed. Urmo. ISBN 84-314-0241-5.
1983.
[2.2] Prieto, M.: Curso de Mecánica Racional, Vol. I. Ed. A.D.I. ISBN 398-7698-X. 1986.
[2.3] French, A.P.: Vibraciones y Ondas. Ed. Reverté. ISBN 84-291-4100-6. 1997.
ESTÁTICA Y DINÁMICA DE HILOS 55
Apéndice 2A:
Evaluación del vector de fuerzas nodales y
de la matriz de rigidez
⎡ # ⎤
⎢ 0 ⎥
⎢ # ⎥
⎢ ∂ UE e ∂up ⎥
⎢ ∂ U ∂v ⎥
⎢ Ee p ⎥
⎢∂ UE e ∂w p ⎥
⎢ # ⎥
fE e = −∇ UE e (r1 ) = − ⎢ 0 ⎥
⎢ # ⎥
⎢ ∂ U ∂u ⎥
⎢ Ee q
⎥
⎢ ∂ U E e ∂vq ⎥
⎢ ∂ UE e ∂wq ⎥
⎢ # ⎥
⎢ 0 ⎥
⎢ # ⎥
⎣ ⎦
Para facilitar el cálculo de las derivadas anteriores vamos a recurrir al siguiente artificio
matemático:
UE = ∑ 12 ke (le − l0 )2 ;
1
le = Γe 2 ; Γe = (xq − xp )2 + (yq − y p )2 + (zq − z p )2
e
Por tanto, UE depende de le ; ésta de Γe y finalmente Γe depende de xp " zq . Para hallar las
UE UE
∂ UE e dl ∂Γ
= ke (le − le 0 ) ⋅ e ⋅ e
∂ηi dΓe ∂ηi
⎡∂ U ⎤ dl ⎡ ∂Γ ⎤ dl
Por tanto, ∇ UE e = ⎢ E e ⎥ = ke (le − le 0 ) ⋅ e ⋅ ⎢ e ⎥ = ke (le − le 0 ) ⋅ e ⋅ ∇Γe
⎣ ∂ηi ⎦ dΓe ⎣ ∂ηi ⎦ dΓe
ESTÁTICA Y DINÁMICA DE HILOS 56
⎡ # ⎤
⎢ 0 ⎥
⎢ # ⎥
⎢ − 2 ⋅ (xq − xp )⎥
⎢ − 2 ⋅ (y − y p )⎥
⎢ q ⎥
⎢ − 2 ⋅ (z q − z p )⎥
dle 1 −1 1 ⎢ # ⎥
= ⋅ Γe 2 = y ∇Γe = ⎢ 0 ⎥
dΓe 2 2le ⎢ # ⎥
⎢+ 2 ⋅ (x − xp )⎥
⎢ q
⎥
⎢ + 2 ⋅ (y q − y p )⎥
⎢ + 2 ⋅ (zq − z p )⎥
⎢ # ⎥
⎢ 0 ⎥
⎢ # ⎥
⎣ ⎦
⎡ # ⎤
⎢ 0 ⎥
⎢ # ⎥
⎢+ 2 ⋅ (xq1 − xp 1)⎥
⎢ + 2 ⋅ (y − y ) ⎥
⎢ q1 p1 ⎥
⎢ + 2 ⋅ ( z q1 − z p1 ) ⎥
1 ⎢ # ⎥
fE e = −∇ UEe (r1 ) = ke Δle1 ⋅ ⋅⎢ 0 ⎥
2le1 ⎢ # ⎥
⎢ − 2 ⋅ (x − x )⎥
⎢ q1 p1
⎥
⎢ − 2 ⋅ (y q1 − y p1 ) ⎥
⎢ − 2 ⋅ (zq1 − z p1 ) ⎥
⎢ # ⎥
⎢ 0 ⎥
⎢ # ⎥
⎣ ⎦
G G G H
Recordando la expresión del vector unitario te = ae i + be j + ce k y dado que:
xq1 − xp1 y − y p1 z − z p1
ae = ; be = q1 ; ce = q1
le1 le1 le1
ESTÁTICA Y DINÁMICA DE HILOS 57
⎡ # ⎤
⎢ 0 ⎥
⎢ # ⎥
⎢ + ae ⎥
⎢+ b ⎥
⎢ e⎥
⎢ + ce ⎥
⎢ # ⎥
fE e = −∇ UEe (r1 ) = ke Δle1 ⋅ ⎢ 0 ⎥
⎢ # ⎥
⎢ − ae ⎥
⎢ − be ⎥
⎢− c ⎥
⎢ e⎥
⎢ # ⎥
⎢ 0 ⎥
⎣ # ⎦
K = ∑ K(e)
e
⎡ ∂2 U ⎤
K( e ) = ⎢ Ee
⎥
∂η ∂
⎢⎣ i jη 1⎥
⎦
Pasemos a determinar las derivadas parciales. Para ello recurriremos al mismo artificio que ya
utilizamos en el caso del vector de fuerzas nodales equivalentes.
∂ 2 UE e ∂ ⎛ ∂ UE e ⎞ ∂ ⎛⎜ dle ∂Γe ⎞⎟
= ⎜ ⎟
∂ηi ∂ηj ∂ηi ⎜ ∂η ⎟ = ∂η ⎜ ke (le − le 0 ) ⋅ dΓ ⋅ ∂η ⎟ =
⎝ j ⎠ i ⎝ e j ⎠
2
⎛ dle ⎞ ∂Γe ∂Γe d 2le ∂Γe ∂Γe dle ∂ 2 Γe
= ke ⋅ ⎜⎜ ⎟⎟ ⋅ ⋅ + ke (le − le0 ) ⋅ ⋅ ⋅ + ke (le − l0 ) ⋅ ⋅
⎝ dΓe ⎠ ∂ηi ∂ηj dΓe ∂ηi ∂ηj dΓe ∂ηj ∂ηj
2
⎡ ∂2 U ⎤
K(e)(r1 ) = ⎢ Ee
⎥=
⎢⎣ ∂ηi ∂ηj 1 ⎥⎦
⎧⎛ dl ⎞ 2 d 2 le ⎫⎪ ⎡ ∂Γe ∂Γe ⎤ dle ⎡ ∂ 2 Γe ⎤
⎪⎜ e ⎟
= ke ⋅ ⎨ + ke Δle1 ⋅ 2 ⎬ ⎢
⋅ ⋅ ⎥ + ke Δle1 ⋅ ⋅⎢ ⎥
⎜ ⎟
⎪⎩⎝ dΓe 1 ⎠ dΓe 1 ⎪ ⎣⎢ ∂ηi 1 ∂ηj 1 ⎦⎥
⎭
dΓe 1 ⎣⎢ ∂ηj ∂ηj 1 ⎦⎥
k ⎛ Δl ⎞ ⎡ ∂Γ ∂Γ ⎤ Δl 1 ⎡ ∂ 2 Γe ⎤
K(e)(r1 ) = e2 ⋅ ⎜⎜1 − e1 ⎟⎟ ⋅ ⎢ e ⋅ e ⎥ + ke e1 ⋅ ⋅ ⎢ ⎥
4le1 ⎝ le1 ⎠ ⎢⎣ ∂ηi 1 ∂ηj 1 ⎥⎦ le1 2 ⎢⎣ ∂ηj ∂ηj 1 ⎥⎦
ESTÁTICA Y DINÁMICA DE HILOS 58
Tratemos de ir un poco más allá. Por ejemplo, la matriz hessiana de Γe es muy sencilla de
obtener:
⎡ ⎤
⎢ ⎥
⎢ ⎥
⎢ 2 −2 ⎥
⎢ ⎥
⎢ 2 −2 ⎥
⎢ 2 −2 ⎥
⎡ ∂ Γe ⎤ ⎢
2 ⎥
∇ 2 Γe = ⎢ ⎥=⎢ ⎥
⎣ ∂η j ∂η j ⎦ ⎢ ⎥
⎢ ⎥
⎢ −2 2 ⎥
⎢ −2 2 ⎥
⎢ −2 2 ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
Para comprobarlo basta con recordar que Γe es solamente función de xp " zq , siendo por tanto
nulas todas aquellas derivadas en las que aparezca una variable que no sea ninguna de las seis
correspondientes a los nodos p y q. Pero además:
∂ 2 Γe ∂ 2 Γe ∂ 2 Γe ∂ 2 Γe ∂ 2 Γe ∂ 2 Γe
= = " = =2 y = = = −2
∂up2 ∂vp2 ∂wq2 ∂up ∂uq ∂vp ∂vq ∂wp ∂wq
El resto de las derivadas parciales son también nulas (la demostración es evidente a partir de la
expresión de Γe ).
⎡ ∂Γ ∂Γ ⎤
Nos falta por expresar de manera compacta ⎢ e ⋅ e ⎥ :
⎣ ∂ηi ∂ηj ⎦
⎡ ⎤
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎢ ae2 ae be ae ce − ae2 − ae be − ae ce ⎥
⎢ be ae be2 be ce − be ae − be2 − be ce ⎥
⎢ ce ae ce be ce2 − ce ae − ce be − ce2 ⎥
⎢ ⎥
⎡ ∂Γ ∂Γe ⎤ 2 ⎢ ⎥
⎢ e
⋅ ⎥ = 4le1 ⋅ ⎢ ⎥
∂η
⎣⎢ i 1 ∂η ⎥
j 1⎦
⎢ ⎥
⎢ − ae2 − ae be − ae ce ae2 ae be ae ce ⎥
⎢ − be ae − be2 − be ce be ae be2 be ce ⎥
⎢ ⎥
⎢ − ce ae − ce be − ce2 ce ae ce be ce2 ⎥
⎢ ⎥
⎢ ⎥
⎢ ⎥
⎣ ⎦
⎡ ae2 ae be ae ce ⎤ ⎡ae ⎤
⎢ ⎥
~
Si denominamos C (e )
= ⎢ be ae be2 be ce ⎥ = ⎢ be ⎥ [ae be ce ] entonces:
⎢ ⎥
⎢ce ae ce be ce2 ⎥⎦ ⎢⎣ ce ⎥⎦
⎣
Apéndice 2B:
Código MatLab para la resolución de
problemas de estática de hilos mediante el
MEF
En este apéndice se pretende describir un código muy sencillo que permite abordar la resolución
de problemas de estática de hilos mediante análisis por elementos finitos. La elección de MatLab
como lenguaje de programación se apoya en dos puntos principalmente. Por un lado, el enfoque
del propio MatLab hacia la resolución de problemas de álgebra lineal (operaciones con matrices y
vectores, inversión de matrices, cálculo de valores y vectores propios, operaciones con matrices
dispersas, etc...) lo que simplifica enormemente la programación (obsérvese lo reducido del
código presentado). Por otro lado, el Dpto. de Física Aplicada de la UPM incluye entre su oferta
educativa un seminario de MatLab por lo que la labor de formación en dicho lenguaje de
programación puede ser abordada por el propio departamento.
nº de elementos
p q ke A e0 me condiciones
50 Nelem
de
1 2 2.80555556e+007 7.20000000e-001 2.05920000e+002 contorno
2 3 2.80555556e+007 7.20000000e-001 2.05920000e+002
3 4 2.80555556e+007 7.20000000e-001 2.05920000e+002
4 5 2.80555556e+007 7.20000000e-001 2.05920000e+002
6 Dicho archivo puede ser escrito con cualquier procesador de textos capaz de generar archivos ASCII.
ESTÁTICA Y DINÁMICA DE HILOS 62
El archivo posee dos partes. En la primera se almacena la información relativa a los elementos
que forman el hilo. En la segunda parte se incluye la información relativa a los nodos.
La primera parte está encabezada por una primera línea que contiene el número total de
elementos (50 en el ejemplo de la figura 2.14). A continuación aparecen tantas líneas de texto
como elementos hay. En cada una de ellas, y por este orden, se incluyen el número de los nodos
inicial y final del elemento, su constante elástica, su longitud y su masa. Se recomienda expresar
todas estas magnitudes en unidades del SI (no haciendo uso de múltiplos). De esta manera es
mucho más sencillo asegurar la correcta expresión de las unidades de los resultados finales del
problema que se estudie.
La segunda parte está de nuevo encabezada por una línea de texto donde se fija el número total
de nodos del sistema. A continuación, para cada nodo, se incluye una línea de texto donde
aparecen las coordenadas x, y, z del nodo, las componentes fx , fy , fz de las fuerzas aplicadas en
el nodo, la posible masa concentrada situada en dicho nodo y un descriptor de las condiciones de
contorno a las que está sometido el nodo. Respecto de éste último, un 1 en la posición
correspondiente a la coordenada x indica que está última debe permanecer constante. Si aparece
un 0 dicha coordenada puede variar libremente. Así un nodo libre poseerá el descriptor “0 0 0” y
un nodo conectado a un apoyo fijo “1 1 1”.
MaxIter=30;
ensam Ensamblaje de K y f
u=K\f;
Resolución
for i=1:Npun
ii=3*(i-1);
x(i)=x(i)+u(ii+1);
y(i)=y(i)+u(ii+2); Actualización
z(i)=z(i)+u(ii+3);
end;
end
En la figura 2.15 aparece el listado del cuerpo del programa, almacenado en el archivo
mefhilo.m. En él puede distinguirse fácilmente su estructura básica. Comienza abriendo el
archivo descrito en el apartado anterior en el cual se encuentran almacenados los datos del
problema. A continuación la subrutina leer (almacenada en el archivo leer.m) lee dicho
archivo y almacena los datos en las variables correspondientes (ver apartado 2B.3).
archivo ensam.m) y que será descrita en el apartado 2B.4. El paso siguiente es resolver el
sistema de ecuaciones Ku = f que permite determinar los desplazamientos de los nodos. Las
nuevas coordenadas nodales serán simplemente el resultado de sumar los desplazamientos que se
acaban de evaluar a las coordenadas antiguas. Esta labor es la que se realiza en la parte final del
bucle.
Con el fin de simplificar la estructura del programa se ha utilizado un número fijo de iteraciones,
treinta, que en la práctica (ver ejemplos 2 y 3 de este capítulo) ha demostrado ser suficientemente
elevado. Más adelante se comentará brevemente como se puede implementar el control del
proceso iterativo descrito en los ejemplos 2 y 3.
Una vez completado el proceso iterativo de resolución del problema, las coordenadas de los
nodos, quedan almacenadas en las variables x, y, z a disposición del usuario.
Nelem=fscanf(fid,'%d');
fscanf(fid,'%s/n');
nada=fscanf(fid,'%d %d %f %f %f',[5,Nelem]);
p =nada(1,:)';
q =nada(2,:)';
k =nada(3,:)';
l0=nada(4,:)';
me=nada(5,:)';
clear nada
Npun=fscanf(fid,'%d');
fscanf(fid,'%s/n');
nada=fscanf(fid,'%f %f %f %f %f %f %f %f %f %f',[10,Npun]);
fclose ('all');
x =nada(1,:)';
y =nada(2,:)';
z =nada(3,:)';
fx=nada(4,:)';
fy=nada(5,:)';
fz=nada(6,:)';
mp=nada(7,:)';
pconx=nada( 8,:)';
pcony=nada( 9,:)';
pconz=nada(10,:)';
g=9.81;
K=sparse([],[],[],3*Npun,3*Npun);
f=zeros(3*Npun,1);
t=[1:3]'; rp=t; rq=t; r=t;
Inicialización
for i=1:Nelem
ip=p(i); iq=q(i);
r(1)=x(iq)-x(ip); Determinación de
r(2)=y(iq)-y(ip);
r(3)=z(iq)-z(ip); parámetros básicos
lelem=sqrt(r'*r);
eelem=(lelem-l0(i))/lelem;
t=r/lelem;
C=k(i)*(1-eelem)*t*t';
Submatrices de rigidez
D=C+k(i)*eelem*eye(3);
fe=k(i)*(lelem-l0(i))*t;
Subvector de fuerzas
ip=3*(ip-1);
iq=3*(iq-1);
K(ip+1:ip+3,ip+1:ip+3)=K(ip+1:ip+3,ip+1:ip+3)+D;
K(iq+1:iq+3,iq+1:iq+3)=K(iq+1:iq+3,iq+1:iq+3)+D; Ensamblaje de la
K(ip+1:ip+3,iq+1:iq+3)=K(ip+1:ip+3,iq+1:iq+3)-D;
K(iq+1:iq+3,ip+1:ip+3)=K(iq+1:iq+3,ip+1:ip+3)-D; matriz de rigidez
f(ip+1:ip+3)=f(ip+1:ip+3)+fe;
f(iq+1:iq+3)=f(iq+1:iq+3)-fe;
f(ip+3)=f(ip+3)-me(i)*g/2;
f(iq+3)=f(iq+3)-me(i)*g/2;
Idem. vector de fuerzas
end
La subrutina ensam posee una segunda parte (ver figura 2.19) en la cual se aplican las
condiciones de contorno tanto en lo que respecta a fuerzas aplicadas como a nodos que tienen
total o parcialmente impedidos sus movimientos. El procedimiento utilizado para aplicar este
segundo tipo de condiciones de contorno es el descrito en el apartado 2.7. El valor elegido para la
constante de rigidez “infinita” kL ha sido 10 −8 × kmax ( kmax es la componente de la matriz de
rigidez de valor más elevado).
infinito=1e8*max(max(K));
for i=1:Npun
ii=3*(i-1);
f(ii+1)=f(ii+1)+fx(i);
f(ii+2)=f(ii+2)+fy(i);
f(ii+3)=f(ii+3)+fz(i)-mp(i)*g;
K(ii+1,ii+1)=K(ii+1,ii+1)+infinito*pconx(i);
K(ii+2,ii+2)=K(ii+2,ii+2)+infinito*pcony(i);
K(ii+3,ii+3)=K(ii+3,ii+3)+infinito*pconz(i);
end
iter=1; control=1
while control>1e-12
ensam
u=K\f;
for i=1:Npun
ii=3*(i-1);
x(i)=x(i)+u(ii+1); y(i)=y(i)+u(ii+2); z(i)=z(i)+u(ii+3);
end;
% Energía
U=-(fx'*x+fy'*y+fz'*z);
for i=1:Nelem
dl=sqrt((x(p(i))-x(q(i)))^2+(y(p(i))-y(q(i)))^2+(z(p(i))-
z(q(i)))^2)-l0(i);
U=U+0.5*k(i)*dl^2+me(i)*g*(z(p(i))+z(q(i)))/2;
end
En la figura 2.20 se ha incluido un listado a modo de ejemplo de como podría ser implementado
un control del proceso iterativo de resolución del problema. En este caso, el parámetro de error
utilizado es la variación relativa de la energía potencial entre iteraciones consecutivas, ε k (U)
(ver ejemplo nº 2). En cada iteración se evalúa la energía potencial total U comparándose, en
términos relativos, con la energía correspondiente a la iteración anterior Uans. Se obtiene así el
parámetro ε k (U) que se almacena en la variable control. Cuando el valor absoluto de esta
variable desciende por debajo de 10 −12 el proceso finaliza. Nótese que de acuerdo con los
resultados empíricos obtenidos en los ejemplos 2 y 3 de éste capítulo el límite mínimo que puede
alcanzarse para el parámetro ε k (U) utilizando aritmética de coma flotante de doble precisión es
del orden de 10 −16 . Por tanto, la fijación del final del proceso iterativo en 10 −12 parece bastante
razonable pues se encuentra cerca del límite inferior para asegurar un nivel de precisión muy
bueno y al mismo tiempo suficientemente alejado de él para garantizar que en la gran mayoría de
los casos la convergencia se alcance.
Representación Gráfica:
Plot3 (x,y,z)
l=sqrt((x(p)-x(q)).^2+(y(p)-y(q)).^2+(z(p))-z(q)).^2)
T=k.*(l-l0)
7 Las variables l y T son variables vectoriales de dimensión 1×Nelem. El cálculo se realiza de forma automática para
todos los elementos.
8 Se ha supuesto que el apoyo considerado es correspondiente al nodo nº 1 que se encuentra conectado al nodo nº 2
Capítulo 3:
Electrostática en 3 dimensiones
3.1 Introducción
El estudio del campo electrostático a través del Método de los Elementos Finitos es
relativamente sencillo de abordar debido fundamentalmente a los siguientes aspectos:
• Se trata de un campo escalar, por lo que cada nodo tendrá asociada una incógnita escalar y
no vectorial (como en el caso de los problemas de hilos). Esto facilita el trabajo de
ensamblaje puesto que en vez de trabajar con submatrices y subvectores se trabaja
directamente con escalares.
• Los problemas a resolver son lineales. No es por tanto necesario recurrir a algoritmos
iterativos para encontrar la solución.
• Son problemas de tipo estacionario por lo cual el tiempo no interviene.
Utilizaremos todas estas ventajas para centrar el esfuerzo mayor de este capítulo en los problemas
de tipo geométrico no tratados hasta el momento como son:
donde ρ es la densidad de carga libre. Si el medio es lineal, aun cuando no sea ni homogéneo ni
G G
isótropo, se puede establecer la siguiente relación lineal entre D y el vector E de intensidad del
campo eléctrico:
G G
D = ε⋅E
donde ε es el tensor permitividad eléctrica que puede substituirse por un escalar en el caso de
G
medios isótropos. Por otro lado, la ecuación de Maxwell correspondiente al rotacional de E nos
G
asegura que, en problemas estacionarios, E admite un potencial escalar φ que se denomina
potencial eléctrico:
G G
G ∂B ∂B G G
rot E + =0 ; si =0 ⇒ rot E = 0 ⇒ ∃ φ E = −∇ ⋅ φ
∂t ∂t
∇ ⋅ (ε ⋅ ∇φ) + ρ = 0
De acuerdo con lo visto en el primer capítulo esta ecuación diferencial es equivalente al siguiente
principio variacional donde Ω es el volumen a lo largo del cual se extiende el campo eléctrico:
G G
Π=∫ (
1
Ω 2
)
E ⋅ D − ρϕ dΩ = extremo
Π resulta ser la lagrangiana del campo electrostático (veánse las referencias9 [1.9] y [1.10]).
La estrategia para la resolución del problema será interpolar el potencial a partir de un número
finito de parámetros φ1 " φn que se convierten así en las incógnitas del problema. Si la elección
de dichos parámetros y de las funciones de interpolación se realiza de forma adecuada la
expresión de la lagrangiana total resulta ser la siguiente:
Π = Π 0 − q T u + 12 u TCu
del problema. Por tanto la determinación de los n parámetros se reduce a la resolución del
sistema de ecuaciones lineales:
Cu = q
9 En estas referencias no aparece de manera directa la lagrangiana del campo electrostático. Sin embargo es
inmedianto obtenerla a partir de la expresión más general de la lagrangiana del campo electromagnético. Para ello,
basta anular los términos relativos al campo magnético, a las corrientes y a las derivada del campo eléctrico respecto
del tiempo.
ELECTROSTÁTICA EN 3 DIMENSIONES 71
∫ Ω ∩Ω
e g
dΩ = 0 ∀e, g
∪ Ωe = Ω
e
En principio, esos parámetros podrían ser de cualquier tipo pero en la práctica suelen elegirse
como tales los valores φ(ke) que toma la función incógnita en ciertos puntos característicos del
G G G G
elemento rk(e) = xk(e) i + yk(e) j + zk(e)k que se denominan nodos. Asimismo, la función interpolante
podría ser también cualquier función que a partir de dichos valores y de las coordenadas x, y, z
de un punto cualquiera del elemento permitiera estimar el valor de φ para dicho punto:
donde M es el número total de nodos que posee el elemento. Sin embargo, de nuevo se suele
restringir la forma de la función interpolante a una del tipo:
ELECTROSTÁTICA EN 3 DIMENSIONES 72
Para hacer referencia a un nodo concreto pueden seguirse dos caminos distintos. Puede
especificarse el elemento e al que pertenece e indicar el número de orden k dentro de dicho
elemento. Éste ha sido el procedimiento utilizado en las expresiones inmediatamente anteriores.
Sin embargo, el nodo ha de poseer también un número de orden propio i que permita
identificarlo como perteneciente al dominio Ω del problema sin necesidad de especificar al
elemento al que pertenece. La relación entre ambos números de orden se suele almacenar en una
matriz que se denomina matriz de conectividad y para la cual reservaremos el símbolo. Así, el
número de orden i (en el dominio Ω ) del nodo k del elemento e se encuentra almacenado en
la posición pek de la matriz de conectividad P . En la figura 3.1 se han representado
gráficamente las relaciones anteriores para un ejemplo bidimensional (aparecen triángulos en vez
de tetraedros).
G G
Si i = pek entonces ri = rk(e)
Nodo i3
k
i1 e
Elemento
i2
e i1 i2 i3
Matriz P
1 2
Con el fin de descargar la notación cuando se esté hablando de un cierto nodo k (número de
orden dentro de un elemento) perteneciente a un elemento e y este elemento e esté claramente
identificado, se eliminará el superíndice (e) .
Las funciones de forma deben cumplir una serie de propiedades que aseguren la convergencia
hacia la solución real cuando el tamaño de los elementos tiende a cero. Una condición necesaria
para ello que enunciamos sin demostración (ver [1.2]) es la siguiente:
En nuestro caso, de los distintos tipos de elementos tetraédricos se van a utilizar aquellos más
sencillos: los elementos tetraédricos lineales. En estos últimos se consideran únicamente cuatro
nodos que coinciden con los vértices del propio tetraedro.
⎧ξ ≥ 0 ; η ≥ 0 ; ζ ≥ 0
Ωe ≡ Λ ≡ ⎨
⎩ ξ+ η+ ζ ≤1
Podemos utilizar el mismo esquema anterior para aproximar el valor de una función escalar
(como pueda ser φ ó ρ ) en el interior del tetraedro apoyándonos en los valores que toma en los
vértices (nodos):
Además se verifican las dos condiciones necesarias enunciadas anteriormente para que exista
convergencia:
Pero dado que los valores φ1, φ3 , φ4 son comunes para dos elementos que compartan
la cara determinada por los nodos 1,3 y 4 entonces el valor de la función interpolante
es el mismo se considere la cara como perteneciente a un elemento o al adyacente.
⎡1 0 0 0⎤ ⎡ φ1 ⎤ ⎡1 −1 −1 − 1⎤ ⎡ 1 ⎤
φ = [1 ξ η ζ] ⋅ ⎢ − 1 1 0 0⎥ ⋅ ⎢φ2 ⎥ = [φ φ φ φ ] ⋅ ⎢0 1 0 0 ⎥ ⋅ ⎢ ξ⎥
⎢− 1 0 1 0⎥ ⎢ φ3 ⎥ 1 2 3 4
⎢0 0 1 0 ⎥ ⎢η⎥
⎢⎣ − 1 0 0 1⎥⎦ ⎢⎣φ4 ⎥⎦ ⎢⎣0 0 0 1 ⎥⎦ ⎢⎣ ζ ⎥⎦
⎡1 −1 −1 − 1⎤ ⎡1 ⎤
donde denominaremos D = ⎢0 1 0 0 ⎥ ; entonces φ = [φ φ φ φ ] ⋅ D ⋅ ⎢ ξ ⎥
⎢0 0 1 0⎥ 1 2 3 4 ⎢η⎥
⎢⎣0 0 0 1 ⎥⎦ ⎢⎣ ζ ⎥⎦
⎡1 0 0 0⎤ ⎡1 x1 y1 z1 ⎤
[1 x y z ] = [1 ξ η ζ] ⋅ ⎢⎢−− 11 1 0 0⎥ ⋅ ⎢1 x2 y2 z2 ⎥
0 1 0⎥ ⎢1 x3 y3 z3 ⎥
⎢⎣ − 1 0 0 1⎥⎦ ⎢⎣1 x4 y4 z4 ⎥⎦
⎡1⎤ ⎡ 1 1 1 1 ⎤ ⎡1 −1 −1 − 1⎤ ⎡ 1 ⎤
⎢x⎥ = ⎢x1 x2 x3 x4 ⎥ ⎢0 1 0 0 ⎥ ⎢ ξ⎥
o bien ⎢ y ⎥ ⎢ y1 y2 y3 y 4 ⎥ ⋅ ⎢0 0 1 0 ⎥ ⋅ ⎢η⎥
⎢⎣ z ⎥⎦ ⎢⎣ z1 z2 z3 z4 ⎥⎦ ⎢⎣0 0 0 1 ⎥⎦ ⎢⎣ ζ ⎥⎦
ELECTROSTÁTICA EN 3 DIMENSIONES 75
Por tanto,
⎡ x⎤ ⎡ ξ⎤
vectores posición r = ⎢y ⎥ s = ⎢η⎥
⎢⎣ z ⎥⎦ ⎢⎣ ξ ⎥⎦
⎡1⎤ ⎡1⎤
vectores posición ⎢ x⎥ ⎢ ξ⎥
~r = ⎢ ⎥ ~s = ⎢ ⎥
ampliados y η
⎢ ⎥ ⎢ ⎥
⎢⎣ z ⎥⎦ ⎢⎣ ζ ⎥⎦
vectores de potenciales y ⎡ φ1 ⎤ ⎡ ρ1 ⎤
⎢φ ⎥ ⎢ρ ⎥
densidades de cargas u = ⎢ 2⎥ p = ⎢ 2⎥
φ ρ
nodales ⎢φ3 ⎥ ⎢ρ 3 ⎥
⎣ 4⎦ ⎣ 4⎦
En estas condiciones:
U= ∫∫∫ 1
ε(∇φ ⋅ ∇φ)dV − ∫∫∫ ρφdV = ∑ ⎡ ∫∫∫ 12 ε(∇φ ⋅ ∇φ)dV − ∫∫∫ ρφdV ⎤ = ∑ U (e)
Ω
2
Ω ⎢ Ωe
e ⎣
Ωe ⎥⎦ e
Con el fin de simplificar el posterior desarrollo se ha supuesto que se está trabajando en un medio
isótropo con lo cual se el tensor permitividad eléctrica puede substituirse por un escalar tal y
como se ha hecho en la expresión anterior. Descompondremos la lagrangiana del elemento e en
dos partes:
U C(e) = ∫∫∫
Ωe
1
2 ε(∇φ ⋅ ∇φ)dV y U Q(e) = − ∫∫∫ ρφdV
Ωe
⎡1⎤
⎢ x⎥
Recordando que φ = [φ1 φ2 φ3 φ4 ] ⋅ R ⋅
−1 ⎢ ⎥
, el gradiente ampliado de φ será :
⎢y ⎥
⎢ ⎥
⎣z ⎦
⎡ ∂φ ⎤
⎢ ∂1 ⎥
⎢ ∂φ ⎥ ⎡ φ1 ⎤
⎢ ⎥ ⎢ ⎥
~ φ = ⎢ ∂x ⎥ = (R −1 )T ⎢φ2 ⎥ = (R −1 )T u
∇
⎢ ∂φ ⎥ φ
⎢ 3⎥
⎢ ∂y ⎥ ⎢⎣φ4 ⎥⎦
⎢ ∂φ ⎥
⎢ ⎥
⎣ ∂z ⎦
2
⎛ ∂φ ⎞ ⎛ ∂φ ⎞ ⎛ ∂φ ⎞
[ ] [ ] [ ]
2 2
T
∇φ ⋅ ∇φ = ⎜ ⎟ + ⎜ ⎟ + ⎜ ⎟ = (R −1 )T u ⋅ A ⋅ (R −1 )T u = u T ⋅ R −1A(R −1 )T ⋅ u
⎝ ∂x ⎠ ⎝ ∂y ⎠ ⎝ ∂z ⎠
⎡0 ⎤
⎢ 1 ⎥
donde la matriz A responde a la siguiente expresión A = ⎢
1 ⎥
⎢ ⎥
⎢⎣ 1⎥⎦
Introduciendo este resultado en la integral de U C(e) :
U C(e) = ∫∫∫
Ωe
1
2 [ ] [ ]
ε u T ⋅ R −1A(R −1 )T ⋅ u dxdydz = 12 u T ⋅ ε Ve ⋅ R −1A(R −1 )T ⋅ u = 12 u T ⋅ C(e) ⋅ u T
10 Nótese que a diferencia de los problemas de estática de hilos U ya no representa una energía potencial. Su
significado ha quedado reducido al de la lagrangiana del campo electrostático.
ELECTROSTÁTICA EN 3 DIMENSIONES 77
RD
donde V = ∫∫∫ dxdydz = ∫∫∫ RD dξdηdζ =
Ω (e )
Λ 6
⎡1⎤ ⎡1 ⎤
⎢ ξ⎥ ⎢ ξ⎥
φ = [φ1 φ2 φ3 φ4 ] ⋅ D ⋅ ⎢ ⎥ y ρ = [ρ1 ρ 2 ρ3 ρ4 ] ⋅ D ⋅ ⎢ ⎥
⎢η⎥ ⎢η⎥
⎢ ⎥ ⎢ ⎥
⎣ζ ⎦ ⎣ ξ⎦
⎧ ⎡1⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ ⎪ ⎢ ⎥
⎪ ξ ⎪ φ
U Q(e) = − ∫∫∫ [ρ1 ρ2 ρ3 ρ 4 ] ⋅ ⎨D ⋅ ⎢ ⎥ ⋅ [1 ξ η ζ ] ⋅ DT ⎬ ⋅ ⎢ 2 ⎥ dxdydz =
⎪ ⎢η⎥ ⎪ ⎢ φ3 ⎥
Ω( e )
⎢
⎪⎩ ⎣ ζ ⎦ ⎥ ⎪⎭ ⎢⎣φ4 ⎥⎦
⎧ ⎡1⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ξ⎥ ⎪ ⎢φ ⎥
⎪ ⎪
= −[ρ1 ρ 2 ρ3 ρ 4 ] ⋅ D ⋅ ⎨ ∫∫∫ ( e ) ⎢ ⎥ ⋅ [1 ξ η ζ ] ⋅dxdydz ⎬ ⋅ DT ⋅ ⎢ 2 ⎥ =
⎪
Ω ⎢ η⎥
⎪ ⎢ φ3 ⎥
⎪⎩ ⎢ ⎥ ⎪⎭ ⎢ ⎥
⎣ζ⎦ ⎣φ4 ⎦
⎧ ⎡1 ⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ξ⎥ ⎪ ⎢ ⎥
⎪ ⎪ T ⎢φ2 ⎥
= −[ρ1 ρ 2 ρ3 ρ 4 ] ⋅ D ⋅ ⎨ RD ⎢
∫∫∫Ω(e) ⎢η⎥⎥ ⋅ [1 ξ η ζ ] ⋅d ξd ηd ζ ⎬ ⋅ D ⋅
⎪ ⎪ ⎢ φ3 ⎥
⎪⎩ ⎢ ⎥ ⎪⎭ ⎢ ⎥
⎣ζ ⎦ ⎣φ4 ⎦
⎧ ⎡1⎤ ⎫
⎪⎪ ⎢ ξ⎥ ⎪⎪ T
Denominemos B = D ⋅ ⎨ RD ∫∫∫Ω(e) ⎢η⎥ ⋅ [1 ξ η ζ] ⋅dξdηdζ ⎬ ⋅ D
⎪ ⎢ ⎥ ⎪
⎪⎩ ⎢⎣ ζ ⎥⎦ ⎪⎭
⎡20 5 5 5⎤ ⎡2 1 1 1⎤
⎢5 2 1 1 ⎥ ⎢1 2 1 1⎥
B=
V
D⋅ ⎢ ⎥ ⋅ DT = V ⎢ ⎥ con V = RD
20 ⎢5 1 2 1⎥ 20 ⎢1 1 2 1⎥ 6
⎢ ⎥ ⎢ ⎥
⎣5 1 1 2⎦ ⎣1 1 1 2⎦
T
Por tanto, U (e) = U C(e) + U Q(e) = 12 u TC(e)u − q (e) u donde:
⎡2 1 1 1 ⎤ ⎡ ρ1 ⎤
⎢ 1⎥ ⎢ρ 2 ⎥
V ⎢1 2 1
⎥⋅⎢ ⎥
C(e) = ε V⋅ R −1A(R −1 )T q (e) =
20 ⎢1 1 2 1⎥ ⎢ρ 3 ⎥
⎢ ⎥ ⎢ ⎥
⎣1 1 1 2⎦ ⎣ρ 4 ⎦
Si no existen cargas libres, como ocurrirá en la gran mayoría de los elementos, el término lineal en
u no aparece.
ELECTROSTÁTICA EN 3 DIMENSIONES 78
⎡1⎤ ⎡1 ⎤
⎢ ξ⎥ ⎢ ξ⎥
φ = [φ1 φ2 φ3 φ4 ] ⋅ D ⋅ ⎢η⎥ y σ = [σ1 σ2 σ3 0] ⋅ D ⋅ ⎢η⎥
⎢⎣ 0 ⎥⎦ ⎢⎣ 0 ⎥⎦
∂r ∂r
dS = × dξdη = (r2 − r1 ) × (r3 − r1 ) dξdη = 2 A dξdη
∂ξ ∂η
(r2 − r1 ) × (r3 − r1 )
donde A = representa el área de la cara del elemento ζ = 0 .
2
⎡1⎤ ⎡ φ1 ⎤
⎢ ξ⎥ ⎢φ ⎥
U Q(s) = − ∫∫ σφdS = ∫∫ [σ1 σ2 σ3 0] ⋅ D ⋅ ⎢ ⎥ ⋅ [1 ξ η 0] ⋅ D ⋅
T ⎢ 2⎥
⋅ (2 A dξdη) =
ζ =0 ζ =0 ⎢η⎥ ⎢ φ3 ⎥
⎢ ⎥ ⎢ ⎥
⎣0⎦ ⎣φ4 ⎦
⎧ ⎡1 ⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ξ⎥ ⎪ ⎢ ⎥
⎪ φ
T⎪ ⎢ 2⎥
= −2 A⋅ [σ1 σ2 σ3 0] ⋅ ⎨D ⋅ ∫∫ ⎢ ⎥ ⋅ [1 ξ η 0] ⋅ dξdη ⋅ D ⎬ ⋅ =
ζ =0 ⎢ η⎥
⎪ ⎪ ⎢ φ3 ⎥
⎪⎩ ⎢ ⎥ ⎪⎭ ⎢⎣φ4 ⎥⎦
⎣0⎦
⎧ ⎡12 4 4 0⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ ⎪ ⎢ ⎥
⎪ 1 1 ⎢4 2 1 0 φ
= −2 A⋅ [σ1 σ2 σ 3 0] ⋅ ⎨D ⋅ ⎥ ⋅ DT ⎪⎬ ⋅ ⎢ 2 ⎥ =
⎪ 2 12 ⎢ 4 1 2 0⎥ ⎪ ⎢ φ3 ⎥
⎪⎩ ⎢ ⎥ ⎪⎭ ⎢⎣φ4 ⎥⎦
⎣0 0 0 0⎦
⎡2 1 1 0⎤ ⎡ φ1 ⎤
⎢ ⎥ ⎢ ⎥
A 1 2 1 0⎥ ⎢ φ 2 ⎥
= −[σ1 σ2 σ3 0] ⋅ ⎢ ⋅
12 ⎢1 1 2 0⎥ ⎢ φ3 ⎥
⎢ ⎥ ⎢ ⎥
⎣ 0 0 0 0⎦ ⎣ φ 4 ⎦
⎡2 1 1⎤ ⎡ φ1 ⎤ ⎡2 1 1⎤ ⎡ σ1 ⎤
⎢1 2 1⎥ ⋅ ⎢σ ⎥
1 2 1 ⎥ ⋅ ⎢ φ2 ⎥ y q =
A⎢ A
U Q(s) = −[σ1 σ2 σ3 ] ⋅
(s)
12 ⎢ ⎥ ⎢ ⎥ 12 ⎢ ⎥ ⎢ 2⎥
⎣⎢1 1 2⎦⎥ ⎢⎣ φ3 ⎦⎥ ⎢
⎣ 1 1 2 ⎥⎦ ⎢⎣ σ 3 ⎥⎦
⎡1 ⎤ ⎡1 ⎤
⎢ξ⎥ ⎢ξ⎥
φ = [φ1 φ2 φ3 φ4 ] ⋅ D ⋅ ⎢ ⎥ y λ = [σ1 σ2 σ3 0] ⋅ D ⋅ ⎢ ⎥
⎢0⎥ ⎢0⎥
⎢ ⎥ ⎢ ⎥
⎣0⎦ ⎣0⎦
= − φ1λ1L − 12 φ1 (λ 2 − λ1 ) ⋅ L − 1
2 (φ2 − φ1 )λ1L − 13 (φ2 − φ1 )(λ 2 − λ1 )
L representa la longitud de la arista. Reordenando el resultado anterior en formato matricial se
obtiene la siguiente expresión
L ⎡2 1⎤ ⎡ φ1 ⎤ L ⎡2 1⎤ ⎡ λ 1 ⎤
U Q(l) = −[λ1 λ 2 ] ⋅ ⋅ y q (l) = ⋅
6 ⎢⎣1 2⎥⎦ ⎢⎣φ2 ⎥⎦ 6 ⎢⎣1 2⎥⎦ ⎢⎣λ 2 ⎥⎦
ELECTROSTÁTICA EN 3 DIMENSIONES 80
G G G G
⎛ ∂r ∂r ⎞ G G G G
dS = −⎜⎜ × ⎟⎟dξdη = −(r2 − r1 ) × (r3 − r1 )dξdη = 2Adξdη
⎝ ∂ξ ∂η ⎠
G G
El signo de dS = 2Adξdη debe elegirse de tal manera que apunte hacia el exterior del elemento.
Esta condición puede expresarse de la forma:
G G G
A ⋅ (r4 − r1 ) < 0
⎡ φ1 ⎤
⎢φ ⎥ ⎡1⎤
~ φ = (R ) ⎢ ⎥ y φ = [φ φ φ φ ] ⋅ D ⋅ ⎢ ξ ⎥
Dado que ∇ −1 T 2
⎢ φ3 ⎥ 1 2 3 4 ⎢η⎥
⎢ ⎥ ⎢⎣ 0 ⎥⎦
⎣ φ4 ⎦
⎡1 ⎤ ⎡ φ1 ⎤
⎢ ξ⎥ ⎢φ ⎥
U φ(ς=0) = ∫∫ [φ1 φ2 φ3 φ4 ] ⋅ D ⋅ ⎢ ⎥ ⋅ [0 ax ay az ] ⋅ (R −1 )T ⋅ ⎢ 2 ⎥ ⋅ 2dξdη =
S ⎢η⎥ ⎢ φ3 ⎥
⎢ ⎥ ⎢ ⎥
⎣0⎦ ⎣φ 4 ⎦
⎧ ⎡3⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ ⎪ ⎢ ⎥
⎪ 1 ⎢1⎥ φ
−1 T ⎪ ⎢ 2 ⎥
= [φ1 φ2 φ3 φ4 ] ⋅ ⎨D ⋅ ⋅ [0 ax ay az ] ⋅ (R ) ⎬ ⋅
⎪ 3 ⎢1⎥ ⎪ ⎢ φ3 ⎥
⎪⎩ ⎢ ⎥ ⎪⎭ ⎢⎣φ4 ⎥⎦
⎣0⎦
⎧ ⎡1 ⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ ⎪ ⎢ ⎥
⎪1 1 φ
−1 T ⎪ ⎢ 2 ⎥
U φ(ς=0) = [φ1 φ2 φ3 φ4 ] ⋅ ⎨ ⎢ ⎥ ⋅ [0 ax ay az ] ⋅ (R ) ⎬ ⋅
⎪ 3 ⎢1 ⎥ ⎪ ⎢ φ3 ⎥
⎪⎩ ⎢⎣0⎥⎦ ⎪⎭ ⎢⎣φ4 ⎥⎦
ELECTROSTÁTICA EN 3 DIMENSIONES 81
v = φi i = 1" n1 w = φd = ud d = n1 + 1,", n
C vv = [cij ] i, j = 1" n1 C ww = [cij ] i, j = n1 + 1,", n
C vw = [cij ] i = 1" n1; j = n1 + 1" n C wv = [cij ] i = n1 + 1,", n; j = 1" n1
q v = qi i = 1" n1 q w = qd d = n1 + 1,", n
C vv v + C vw w = q v ⇒ C vv v = q v − C vw w
Este proceso de reordenación es fácil definirlo en el plano teórico pero puede resultar bastante
costosa su implementación práctica: requiere una reestructuración completa de la matriz de
capacidad cuando las incógnitas ud no ocupan posiciones consecutivas. Por tanto, puede resultar
más conveniente recurrir a una estrategia similar a la descrita en el apartado 2.7. Supongamos que
el nodo d estuviera conectado mediante un condensador virtual de capacidad CL a un punto
mantenido a un potencial constante ud (igual precisamente a la condición de contorno que
queremos imponer). En este caso, la lagrangiana total es:
U= ∫∫∫ Ω
1
2 ε(∇φ ⋅ ∇φ)dV − ∫∫∫ ρφdV
Ω
+ 1
2 CL (ud − φd )2
U = U 0 − q T u + 12 u TCu + 1
2 CL ud2 − CL φd ud + 21 CL φ2d
[ ] [
U = U 0 + 21 CL φ2d − q T u + CL ud φd + ] [u Cu + C φ ]
1
2
T 2
L d
Sean q L y C L un vector columna y una matriz de capacidad tales que todos sus elementos sean
nulos salvo qLd = CL ud y CLdd = CL respectivamente. Entonces:
[ ]
U = U 0 + 21 CL ud2 − (q + q L )T u + 12 u T (C + CL )u
11 Ver apéndice 3A. El lector podrá observar que no se ha incluido el témino − (Qu ud + Qφ φd ) donde Qu
representa la carga aplicada sobre la armadura a potencial ud y Qφ la carga correspondiente a la armadura a
potencial φd . Si ambas son nulas (el condensador virtual se “conecta” descargado) dicho término desaparece.
ELECTROSTÁTICA EN 3 DIMENSIONES 82
(C + CL )u = q + q L
Cuanto mayor sea la capacidad del condensador mayor será la energía acumulada por éste para
una diferencia dada entre φd y el valor de la condición de contorno ud . Por tanto, si se elige un
valor muy elevado CL la diferencia entre ud y φd será muy pequeña. En el límite, si se pudiera
introducir una capacidad infinita se alcanzaría la igualdad ud = φd . En la práctica se suele elegir
un valor CL del orden de 108 × C max , donde C max es el máximo valor absoluto de los términos
de la diagonal de la matriz C .
Con el fin de obligar a que las expresiones anteriores se cumplan podríamos introducir
condensadores virtuales de capacidad muy elevada C L conectando entre sí todas las posibles
parejas de nodos i, j pertenecientes al conductor. La nueva expresión de la lagrangiana del
sistema sería ahora12:
N N
U = ∫∫∫ 1
Ω 2
ε(∇φ ⋅ ∇φ)dV − ∫∫∫ ρφdV
Ω
+ ∑∑ i=1 j = i +1
1
2 C L (φi − φ j )2
N N
U = U 0 + 12 u T Cu − q T u + ∑∑
i =1 j = i +1
1
2 C L (φi − φ j )2
⎡ 1 − 1⎤ ⎡ φi ⎤
∑ [φ φ j ]⋅ ⎢
N N N N
∑∑ 1
CL (φi − φ j )2 = 12 CL ∑ ⎥⋅⎢ ⎥ =
⎣ − 1 1 ⎦ ⎣φ j ⎦
2 i
i=1 j = i+1 i=1 j = i+1
⎡N − 1 − 1 − 1 ⎤ ⎡ φ1 ⎤
⎢ −1 N −1 − 1 ⎥ ⎢ φ2 ⎥
= 12 CL [φ1 φ2 " φN ] ⋅ ⎢ ⎥⋅⎢ ⎥
⎢ % ⎥ ⎢ # ⎥
⎢ ⎥ ⎢ ⎥
⎣ −1 −1 N − 1⎦ ⎣φN ⎦
12 Nótese de nuevo que al conectarse los condesandores virtuales “descargados” no aparecen en la expresión de la
lagrangiana los términos correspondientes a las cargas (ver nota al pié nº 4)
ELECTROSTÁTICA EN 3 DIMENSIONES 83
⎡N − 1 − 1 −1 ⎤
⎢ −1 N −1 −1 ⎥
⎢ 0 ⎥
⎢ % ⎥
⎢
CL = CL − 1 ⎥
⎢ −1 N −1 ⎥
⎢ ⎥
⎢ 0 0 ⎥
⎢ ⎥
⎣⎢ ⎦⎥
(C + C L )u = q
Nótese que en este caso el vector de cargas nodales equivalentes no debe ser modificado.
Naturalmente, en la práctica los nodos del conductor no suelen ocupar posiciones contiguas con
lo que la matriz C L presentará una estructura “desordenada” respecto de la mostrada
anterioremente. Los elementos no nulos C Lij serán aquellos que correspondan a nodos i, j
pertenecientes al conductor y si éstos no ocupan posiciones contiguas los elementos CLij
tampoco.
3.10 Referencias
Los aspectos relacionados con la teoría electromagnética incluidos en este capítulo pueden
encontrarse en cualquier texto dedicado a esta materia como pueden ser las referencias [3.1] y
[3.2]. Una descripción del campo electromagnético desde un punto de vista variacional puede
encontrarse en [1.10]. En [3.4] se incluye una introducción bastante clara y breve al concepto de
capacidad eléctrica.
Aquellos aspectos relacionados con la partición del dominío en elementos finitos y las
propiedades que éstos deben cumplir pueden econtrarse expuestos de manera bastante rigurosa
en [1.6]. Una aproximación también rigurosa a esta materia pero quizá de lectura más sencilla
puede encontrarse en [1.2].
La referencia [1.5] dedica un capítulo completo a la implementación del MEF para la resolución
de la ecuación de Poisson. En ella se puede encontrar un tratamiento bastante completo en lo que
respecta a la aplicación de las condiciones de contorno. La referencia [1.2] también incluye un
capítulo dedicado a este tipo especial de EDP. Las referencias [1.11] y [3.5], aun cuando
enfocadas hacia el estudio del Método de los Elementos de Contorno, pueden resultar útiles al
lector interesado en el estudio de los problemas de la Teoría del Potencial desde una óptica
variacional.
ELECTROSTÁTICA EN 3 DIMENSIONES 84
[3.1] Lorrain, P.; Corson, D.R.: Campos y ondas electromagnéticos. Ed. Selecciones Científicas.
ISBN 84-85021-29-0. 1979.
[3.2] Johnk, T.A.: Teoría electromagnética: campos y ondas. Ed. Limusa. ISBN 968-18-1201-8. 1994.
[3.3] Schneiders, R.: Mesh Generation & Grid Generation on the Web.
www-users.informatik.rwth-aachen.de/%7Eroberts/meshgeneration.html
[3.4] Palacios, J.: Electricidad y Magnetismo. Ed. Espasa-Calpe. 1959
[3.5] Paris, F.: El método de los elementos de contorno en la teoría del potencial y de la elasticidad. Tesis
doctoral, ETSII-UPM. 1979.
ELECTROSTÁTICA EN 3 DIMENSIONES 85
Apéndice 3A:
Sistemas de conductores y condensadores
S0
S1
Ω0
Sn
Ω1
S2 Ωn
Ω2
La solución de este problema debe verificar la siguiente ecuación de Poisson con las siguientes
condiciones de contorno:
∇ ⋅ (ε ⋅ ∇ϕ) = ρ en el interior de Ω 0
G G
ϕ(r) = u0 (r) en la superficie exterior S 0 (14)
Consideremos ahora la siguiente serie de problemas particulares. Para cada nodo i tratemos de
encontrar la solución ϕ(i) correspondiente a un problema en cual sobre la superficie exterior
G G
continuemos teniendo las mismas condiciones de contorno ϕ(r) = u0 (r) pero todos los
conductores están a potencial nulo salvo Ω i que se encuentra a potencial ui . ( ui(0) = 0 ∀i ).
También se verificará que ∇ ⋅ (ε ⋅ ∇ϕ(i) ) = ρ en el interior de Ω 0 . Denomínese φ(i) a la diferencia
entre ϕ(i) y ϕ(0) . Entonces φ(i) es solución del siguiente problema:
[ ]
∇ ⋅ (ε ⋅ ∇φ(i) ) = ∇ ⋅ ε ⋅ (∇ϕ(i) − ∇ϕ(0) ) = ρ − ρ = 0 en el interior de Ω 0
14 Se ha supuesto implicítamente que sobre la superficie exterior únicamente se imponen condiciones de contorno
típo Dirichlet. Si por el contrario dichas condiciones fueran de tipo Neumann deberían haberse expresado como
G G
dϕ dn(r ) = Φ (r )
ELECTROSTÁTICA EN 3 DIMENSIONES 87
De nuevo resolveremos el problema por partes, tal y como se realizó anteriormente. Así la
solución ϕ
~ podrá expresarse como:
ϕ
~ = ϕ(0) + ~φ(1) + ~φ(2) + " + ~φ(n)
(0)
q
q
C P
P u
⎡Q~ ⎤ ⎡Q1 ⎤ ⎡ C11 C12
1
( 0 )
C1n ⎤ ⎡ u~1 ⎤
⎢ ~ ⎥ ⎢ (0) ⎥ ⎢
⎢Q2 ⎥ = ⎢Q2 ⎥ + ⎢C21 C22 C2 n ⎥ ⎢ u~2 ⎥ Qi( j )
⎥⋅⎢ ⎥ donde Cij =
⎢ # ⎥ ⎢ ⎥ ⎢ % ⎥ ⎢#⎥ λ
⎢ ~ ⎥ ⎢ (0) ⎥ ⎢ ⎥ ⎢ ⎥
⎣Qn ⎦ ⎣Qn ⎦ ⎣Cn1 Cn 2 Cnn ⎦ ⎣u~n ⎦
La matriz C se denomina matriz de capacidad del sistema. Obsérvese que conocida dicha matriz
y el vector de cargas q (0) (correspondiente a aquella solución en la cual todos los conductores
ELECTROSTÁTICA EN 3 DIMENSIONES 88
están a potencial nulo) es posible determinar directamente la carga que almacena cualquier
conductor supuesto que se conocen los potenciales u~i de todos los conductores. Es posible
demostrar además que la matriz C es simétrica (ver, por ejemplo, [3.4]).
Por tanto, puede decirse que la lagrangiana del sistema es U = 12 u TCu − (q − q (0) )T u
3A.2 Condensadores
Consideremos ahora una situación en la cual:
• En caso de existir la frontera exterior S0 las condiciones de contorno impuestas sobre ella
sean del tipo ϕ = 0 ó dϕ dn = 0 .
En estas condiciones es claro que la solución ϕ(0) es la solución nula. La demostración es trivial
pues la ecuación ∇ ⋅ (ε ⋅ ∇ϕ(0) ) = 0 se verifica de forma automática así como todas las
condiciones de contorno: sobre la superficie exterior S0 y sobre las superficies interiores Si . Por
tanto, las cargas Qi(0) serán también nulas. En efecto:
dϕ ( 0 )
Qi(0) = ∫ Sj
−
dn
dS = 0
Considérese ahora un sistema del mismo tipo que los anteriores formado exclusivamente por dos
conductores (armaduras). Un dispositivo de este tipo es lo que se conoce como condensador.
Entonces:
⎡ Q1 ⎤ ⎡C11 C12 ⎤ ⎡ u1 ⎤
⎢Q ⎥ = ⎢C ⎥⋅⎢ ⎥
⎣ 2 ⎦ ⎣ 21 C 22 ⎦ ⎣u2 ⎦
En general, sería necesario para describir dicho dispositivo proporcionar tres coeficientes de
capacidad: C11 , C12 = C 21 y C 22 . Cuando la distribución de cargas generada por las armaduras
del condensador puede ser aproximada mediante una capa eléctrica doble y cerrada (p.e.
condensador esférico, condensador plano infinito, condensador cilíndrico infinito) es posible
demostrar que los tres coeficientes son iguales ( C1 = −C12 = −C 21 = C 22 = C ) recibiendo el
único coeficiente restante el nombre de capacidad del conductor. Los condensadores reales no
admiten una aproximación exacta por una capa doble por lo que los tres coeficientes son
distintos. Ahora bien, los diseños usuales de los condensadores conducen a diferencias muy
pequeñas entre estos coeficientes (ver apartado 4.5, ejemplo correspondiente a la figura 4.21).
ELECTROSTÁTICA EN 3 DIMENSIONES 89
La expresión que relaciona las cargas con el potencial podría escribirse ahora como:
⎡ Q1 ⎤ ⎡ C − C ⎤ ⎡ u1 ⎤
⎢Q ⎥ = ⎢ − C ⋅
C ⎥⎦ ⎢⎣u2 ⎥⎦
⎣ 2⎦ ⎣
Capítulo 4:
Electrostática en 2 dimensiones.
4.1 Introducción
Como se habrá podido observar en el capítulo 3 no se han incluidos ejemplos prácticos. La razón
fundamental para ello es la dificultad asociada a la representación gráfica de elementos
geométricos tridimensionales que, a veces, es superior a la correspondiente a la propia resolución
del problema. Sin embargo, este capítulo dedicado al estudio de problemas electrostáticos
bidimensionales si incluirá ejemplos prácticos.
El capítulo comienza con una particularización de las ecuaciones del campo electrostático para
aquellos problemas en los que, por razones de simetría plana, puede eliminarse una de las tres
dimensiones. A continuación se ha dedicado un apartado a aquellos problemas que presentan
simetría de revolución, en los cuales si se trabaja en coordenadas cilíndricas también puede
eliminarse una dimensión.
Por último, el apartado 4.5 introduce un tipo de elementos que permiten la introducción de
condiciones de contorno en el “infinito”.
ELECTROSTÁTICA EN 2 DIMENSIONES 92
φ(x, y, z 0 + δ) = φ(x, y, z 0 ) ∀δ
En estas condiciones, basta con determinar el campo en el plano z = z 0 para que el problema
esté resuelto. En dicho plano, la EDP que permite describir el potencial eléctrico es:
∂ ⎛ ∂φ ⎞ ∂ ⎛ ∂φ ⎞
⎜ε ⋅ ⎟ + ⎜ε ⋅ ⎟ + σ = 0
∂x ⎝ ∂x ⎠ ∂y ⎝ ∂y ⎠
Donde se ha aceptado implícitamente que se está trabajando con un medio lineal e isótropo, aun
cuando puede no ser homogéneo. σ representa ahora la densidad de carga por unidad de área.
La técnica para discretizar el medio (en este caso el plano xy ) y generar una función de
interpolación va a ser la misma ya presentada en el caso de problemas tridimensionales. Los
elementos tetraédricos se convierten en triángulos y las funciones de interpolación pasan a ser las
siguientes:
⎧ξ ≥ 0 ; η ≥ 0
Λ≡ ⎨
⎩ ξ+ η≤1
⎡1 ⎤ ⎡1 ⎤
φ = [φ1 φ2 φ3 ] ⋅ D ⋅ ⎢ ξ ⎥ σ = [σ1 σ2 σ3 ] ⋅ D ⋅ ⎢ ξ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣η⎥⎦ ⎢⎣η⎥⎦
⎡1 − 1 − 1⎤ ⎡1 1 1⎤
donde D = ⎢0 1 0⎥ y R = ⎢x1 x2 x3 ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣0 0 1 ⎥⎦ ⎢⎣ y1 y2 y3 ⎥⎦
ELECTROSTÁTICA EN 2 DIMENSIONES 93
Vectores posición ⎡ x⎤ ⎡ ξ⎤
r=⎢ ⎥ s=⎢ ⎥
⎣y ⎦ ⎣η⎦
⎡1⎤ ⎡1⎤
Vectores posición ~r = ⎢x⎥ ~s = ⎢ ξ ⎥
ampliados ⎢ ⎥ ⎢ ⎥
⎢⎣ y ⎥⎦ ⎢⎣η⎥⎦
Vectores de potenciales y ⎡ φ1 ⎤ ⎡ σ1 ⎤
densidades de cargas u = ⎢φ2 ⎥ p = ⎢σ 2 ⎥
nodales ⎢ ⎥ ⎢ ⎥
⎢⎣ φ3 ⎥⎦ ⎢⎣ σ 3 ⎥⎦
Las expresiones anteriores toman la misma forma que en el caso de los problemas
tridimensionales:
U C(e) = ∫∫ Ωe
1
2 ε(∇φ ⋅ ∇φ)dS y U Q(e) = − ∫∫ σφdS
Ωe
2 2
⎛ ∂φ ⎞ ⎛ ∂φ ⎞ T
[ ]
∇φ ⋅ ∇φ = ⎜ ⎟ + ⎜ ⎟ = (R −1 )T u ⋅ A ⋅ (R −1 )T u = u T R −1A(R −1 )T u [ ] [ ]
⎝ ∂x ⎠ ⎝ ∂y ⎠
⎡0 ⎤
donde A = ⎢ 1 ⎥ . Introduciendo este resultado en la integral de U C(e) :
⎢ 1⎥⎦
⎣
U C(e) = ∫∫ Ωe
1
2 [ ] [
ε u T ⋅ R −1A(R −1 )T ⋅ u dxdy = 12 u T ⋅ εSe ⋅ R −1A(R −1 )T ⋅ u = 12 u T ⋅ C(e) ⋅ u T ]
RD
donde Se = ∫∫ Ωe
dxdy = ∫∫ Λ
RD dξdη =
2
es la superficie del elemento.
⎧ ⎡1 ⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ T⎪ ⎢
UQ = U (e )
= − ∫∫ σφdS = − ∫∫ [σ1 σ2 σ 3 ] ⋅ ⎨D ⋅ ξ ⋅ [1 ξ η] ⋅ D ⎬ ⋅ φ2 ⎥ dxdy =
Q
Ωe Ωe ⎢ ⎥ ⎢ ⎥
⎪ ⎢η⎥ ⎪ ⎢φ ⎥
⎩ ⎣ ⎦ ⎭ ⎣ 3⎦
⎧ ⎡1⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ ⎪ T ⎢ ⎥
= −[σ1 σ2 σ 3 ] ⋅ D ⋅ ⎨ ∫∫ ξ ⋅ [1 ξ η]dxdy ⎬ ⋅ D ⋅ φ2 =
Ω ⎢ ⎥ ⎢ ⎥
⎪ e ⎢η⎥ ⎪
⎩ ⎣ ⎦ ⎭ ⎣⎢ φ3 ⎦⎥
⎧ ⎡1⎤ ⎫ ⎡ φ1 ⎤
⎪ ⎢ ⎥ ⎪ T ⎢ ⎥
= −[σ1 σ2 σ 3 ] ⋅ D ⋅ ⎨ RD ∫∫ ξ ⋅ [1 ξ η]dξdyη⎬ ⋅ D ⋅ φ2
Λ⎢ ⎥ ⎢ ⎥
⎪ ⎢ η⎥ ⎪ ⎢⎣ φ3 ⎥⎦
⎩ ⎣ ⎦ ⎭
⎧ ⎡1 ⎤ ⎫
⎪ ⎢ ⎥ ⎪
Denominemos B = D ⋅ ⎨ RD ∫∫ ξ ⋅ [1 ξ η]dξdyη⎬ ⋅ DT y p = [σ1 σ3 ]
T
σ2
Λ⎢ ⎥
⎪ ⎪
⎩ ⎣⎢η⎦⎥ ⎭
⎡2 1 1⎤
Se ⎢
1 2 1⎥ donde Se =
RD
Integrando se obtiene B =
12 ⎢ ⎥ 2
⎣⎢1 1 2⎦⎥
C = ∑ C(e) y q = ∑ q (e ) .
e e
ELECTROSTÁTICA EN 2 DIMENSIONES 95
4.2.3 Ejemplos
Como puede observarse en la figura se ha utilizado una malla de elementos triangulares lineales
con nodos en los vértices. La malla ha sido generada por un programa de dominio público [4.1].
Como datos de entrada exige la definición del contorno en forma de poligonal (conjunto finito de
segmentos rectilíneos). Asimismo permite controlar, de forma aproximada, el tamaño de los
elementos. Obsérvese que en la zona próxima al electrodo conectado a potencial V 0 el tamaño de
los elementos es sensiblemente menor. La razón por la cual la malla se ha generado de este modo
es porque precisamente en esta zona es donde el potencial sufre variaciones más fuertes. En la
figura 4.2 se presentan los resultados obtenidos. Las líneas equipotenciales están separadas entre
sí 0,1 × V 0 .
⎡1 ⎤ ⎡1 ⎤
φ = [φ1 φ2 φ3 ] ⋅ D ⋅ ⎢ ξ ⎥ ρ = [ρ1 ρ 2 ρ3 ] ⋅ D ⋅ ⎢ ξ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣η⎥⎦ ⎢⎣η⎥⎦
⎡1 − 1 − 1⎤ ⎡1 1 1⎤
donde D = ⎢0 1 0⎥ y R = ⎢x1 x2 x3 ⎥
⎢ ⎥ ⎢ ⎥
⎢⎣0 0 1 ⎥⎦ ⎢⎣ z1 z2 z3 ⎥⎦
ELECTROSTÁTICA EN 2 DIMENSIONES 99
vectores posición ⎡ x⎤ ⎡ ξ⎤
r=⎢ ⎥ s=⎢ ⎥
⎣z ⎦ ⎣η⎦
⎡1⎤ ⎡1⎤
vectores posición
~r = ⎢z ⎥ ~s = ⎢ ξ ⎥
ampliados ⎢ ⎥ ⎢ ⎥
⎢⎣y ⎥⎦ ⎢⎣η⎥⎦
Las expresiones anteriores toman la misma forma que en el caso de los problemas
tridimensionales:
Al igual que en ocasiones anteriores y con el fin de simplificar el problema, aceptaremos posibles
variaciones en la permitividad eléctrica de elemento a elemento, pero no dentro de un elemento.
Comenzaremos evaluando las dos componentes de la lagrangiana de un elemento e :
U C(e) = ∫∫∫ Ωe
1
2 ε(∇φ ⋅ ∇φ) dΩ y U Q(e) = − ∫∫∫ σφ dΩ
Ωe
∂φ G 1 ∂φ G ∂φ G
En las expresiones dΩ = 2πxdxdz y ∇φ = ux + u θ + u z . Pero, por existir simetría
∂x x ∂θ ∂z
∂φ ∂φ G ∂φ G
de revolución = 0 y por tanto ∇φ = ux + uz .
∂θ ∂x ∂z
2 2
⎛ ∂φ ⎞ ⎛ ∂φ ⎞ T
[ ]
∇φ ⋅ ∇φ = ⎜ ⎟ + ⎜ ⎟ = (R −1 )T u ⋅ A ⋅ (R −1 )T u = u T R −1A(R −1 )T u[ ] [ ]
⎝ ∂x ⎠ ⎝ ∂z ⎠
⎡0 ⎤
donde A = ⎢ 1 ⎥ . Introduciendo este resultado en la integral de U C(e) :
⎢ 1⎥⎦
⎣
U C(e) = ∫∫ Ωe
1
2 [ ] [ ]
ε u T ⋅ R −1A(R −1 )T ⋅ u dΩ = 12 u T ⋅ εVe ⋅ R −1A(R −1 )T ⋅ u = 12 u T ⋅ C(e) ⋅ u T
⎡1 − 1 − 1⎤ ⎡ 1 ⎤
Ve = ∫∫∫ dΩ = ∫∫∫ 2πxdxdz = ∫∫ 2π RD ⋅ [x1 x2 x3 ] ⋅ ⎢0 1 0 ⎥ ⋅ ⎢ ξ ⎥ dξdη =
Ωe Ωe Λ ⎢ ⎥ ⎢ ⎥
⎢⎣0 0 1 ⎥⎦ ⎢⎣η⎥⎦
RD x1 + x2 + x3 x + x2 + x3
= 2π ⋅ ⋅ = 2 π ⋅ Se ⋅ 1
2 3 3
donde Se = 1
2 RD es la superficie de la sección del elemento en el plano xz .
⎡2 1 1⎤
Ve ⎢
donde q (e )
=B p y B= T
1 2 1⎥
12 ⎢ ⎥
⎢⎣1 1 2⎥⎦
Las dos puntos anteriores son los responsables de su gran popularidad. Sin embargo, poseen
también inconvenientes, en cierta manera, derivados de esa sencillez que les caracteriza:
Por tanto cuando no se dispone de paquetes de software que permitan generar mallas de
elementos triangulares (o tetraédricos en problemas en 3D) de forma automática o bien los
recursos de memoria del sistema sean limitados (existe un límite bajo al número total de nodos)
puede ser interesante recurrir a elementos mas sofisticados que utilicen funciones de forma de
orden superior (p.e. polinomios de segundo grado o superior) y que permitan una mejor
interpolación y una mejor adaptación a recintos curvos.
Otra situación en la cual estos elementos pueden mostrar ventajas comparativas frente a los
elementos triangulares es cuando el número de nodos que estos últimos necesitan se hace tan
grande que los tiempos necesarios para la resolución del sistema de ecuaciones lineales pueden
resultar prohibitivos. En otras ocasiones, aun no alcanzándose ese límite temporal el tamaño del
sistema puede ser tal que lo convierta en un sistema inestable desde un punto de vista numérico
(los errores de redondeo y truncamiento alcanzan valores tan altos que la solución obtenida no se
parece a la real). En estos casos el recurso a elementos más sofisticados pueden ayudar a
solventar los problemas antes mencionados a costa de una mayor complejidad en la evaluación de
la matriz de rigidez.
Son quizá, después de los elementos triangulares lineales, los elementos más sencillos. En la
figura siguiente se han representado algunos de los tipos de elementos pertenecientes a esta
familia.
(a) (b)
(c) (d)
Figura 4.6.- Elementos lagrangianos rectangulares
En este tipo de elementos se utilizan coordenadas locales ξ, η que toman valores entre 0 y 1 (ver
figura 4.7). Así, cualquier punto del interior del elemento puede expresarse en la forma:
G G G
r(ξ, η) = r1 + aξ i + bη j
ELECTROSTÁTICA EN 2 DIMENSIONES 102
b G
j
ξ
K
i
G a
r1
En esta familia de elementos los nodos se sitúan en los vértices de una malla rectangular cuyas
coordenadas locales son del tipo (ξ i , ηj ) donde ξ i y ηj pueden tomar los siguientes valores:
Las funciones de forma de esta familia de elementos son obtenidas a partir de los polinomios de
Lagrange de tal manera que la función de forma N kl (ξ, η) correspondiente a un nodo de
coordenadas locales ξk , ηl tome valor nulo para el resto de los nodos y valor unidad para el nodo
al cual corresponde. Una expresión general de una función de forma de este tipo podría ser la
siguiente:
∏ (ξ − ξ i ) ∏ (η − ηj )
N kl (ξ, η) = i ≠k
⋅ j ≠l
∏ (ξk − ξi ) ∏ (ηk − ηj )
i ≠k j ≠l
∏ (ξ − ξ ) ∏ (η − η ) ∏ (ς − ς )
i
j ≠m
j k
Nlmn (ξ, η, ς) = i ≠l
⋅ ⋅ k ≠n
∏ (ξ − ξ ) ∏ (η − η ) ∏ (ς − ς )
i ≠l
l i
j ≠m
m j
k ≠n
n kj
donde los φij son los valores que toma la función incógnita en los nodos (ξ i , ηj ) del elemento.
Con el fin de simplificar la notación suele realizarse un cambio de notación en la numeración de
los nodos. Pasemos a indicar con un asterisco la notación utilizada hasta el momento. De esta
forma,
φ(ξ, η) = ∑∑ φi* j* N i* j* (ξ, η)
i* j*
La pareja de índices que hasta el momento hemos denominado i, j la hemos renombrado como
i* , j * . Esta va a ser substituida por un índice único k . El cambio puede realizarse utilizando, por
ejemplo, la siguiente relación:
Nótese de nuevo que las variables marcadas con un asterisco son las que se corresponden con la
notación utilizada en la primera parte de este apartado. Utilizando ya el nuevo índice k la función
aceptaría una expresión más sencilla:
φ(ξ, η) = ∑ φk N k (ξ, η)
k
ELECTROSTÁTICA EN 2 DIMENSIONES 104
Por tanto, lo ideal es disponer de un polinomio interpolador con un gran número de grados de
libertad (por tanto, con un gran número de términos) para facilitar su adaptación a la función que
se quiere interpolar pero al mismo tiempo manteniendo en lo posible el grado de dicho
polinomio lo más bajo posible para evitar oscilaciones violentas.
Por tanto, a las funciones de forma de los elementos lagrangianos les sobran términos de grado
elevado pero al mismo tiempo les faltan algunos términos intermedios. Como ejemplo tomemos
el elemento (b) de la figura 4.6. Sus funciones de forma son del siguiente tipo:
Se define como orden del elemento el orden del polinomio completo de mayor grado que puede
representar de manera exacta la función interpolante asociada a dicho elemento.
Existe una familia de elementos paralelepipédicos, denominada familia serendípita (vease, por
ejemplo, [1.2]), los cuales se caracterizan por lo siguiente:
Pero quizá la familia más interesante sea la familia elementos tetraédricos (de orden igual o
superior a uno). En este caso como en el anterior el número de nodos internos es muy reducido
(nulo en muchos casos). Sin embargo, su característica más importante reside en el hecho de que,
mediante una adecuada elección del número total de nodos, es siempre posible construir una
función interpolante que sea un polinomio completo.
Hasta ahora solo hemos considerado elementos con geometrías muy sencillas, triángulos y
rectángulos. Sin embargo, cuando se introdujeron los elementos lagrangianos se dijo que una de
sus ventajas comparativas respecto a los sencillos elementos triangulares lineales era su
posibilidad de adaptarse a contornos curvos. Para poder lograr “curvar” los elementos
rectangulares introducidos hasta el momento consideremos una relación entre las coordenadas
cartesianas x, y y las coordenadas locales más sofisticada que la transformación lineal
considerada hasta el momento. Una posible alternativa para la construcción de dicha
transformación es construirla de modo análogo a la función interpolante:
En la expresión anterior (xi , y i ) son las coordenadas cartesianas de los nodo i del elemento y las
funciones M i = M i (ξ, η) son las funciones de forma correspondientes a dicho nodo. Estas
funciones de forma no tienen porqué ser las mismas que las utilizadas para construir la función
interpolante. Sin embargo, es muy usual utilizar en mismo conjunto de funciones de forma en
ambos casos. Si es así (M i = N i ) entonces estamos ante los denominados elementos curvos
isoparamétricos.
Las funciones de forma M i determinan una transformación (ξ, η) → (x, y) que denominaremos
“generatriz” y que ha de verificar una serie de propiedades comúnmente englobadas dentro del
concepto de “conformidad geométrica”:
⎡ ∂x ∂x ⎤
⎢ ∂ξ ∂η ⎥
J=⎢
⎢ ∂y ∂y ⎥⎥
⎢⎣ ∂ξ ∂η ⎥⎦
• Por otro lado, teniendo en cuenta que suele partirse de una discretización realizada en
el dominio de las coordenadas locales (ξ, η) sería deseable que la transformación
“generatriz” transformara las discretizaciones en dicho dominio en nuevas
discretizaciones en coordenadas cartesianas (x, y) . En concreto debe transformar
elementos adyacentes que compartan una arista (o una cara en tres dimensiones) de
nuevo en elementos adyacentes que sigan compartiendo esa misma arista (o cara) sin
separarse y sin penetrarse.
ELECTROSTÁTICA EN 2 DIMENSIONES 106
Es muy sencillo demostrar que si se parte de una discretización en el dominio de (ξ, η) realizada
mediante elementos lagrangianos y se utilizan las funciones de forma definidas en los apartados
anteriores la transformación generatriz verifica la segunda de las propiedades antes enunciadas.
En efecto, dado que la variación de la función interpolante (que ahora resulta ser la base de la
transformación generatriz) sobre una cara de un elemento sólo depende de los valores nodales
asociados a los nodos situados sobre dicha cara y dado que dichos nodos pertenecen al mismo
tiempo al elemento considerado y al elemento vecino con el que comparte esa cara, la función
interpolante debe ser idéntica para ambos elementos (sobre dicha cara). Este resultado puede
generalizarse a cualquier otro tipo de funciones de forma que aseguren continuidad C 0 entre
elementos en la función interpolante.
Respecto del cumplimiento de la primera condición no es posible dar una respuesta tan concreta
como la anterior. Baste por el momento recomendar que la transformación generatriz no debe
conducir a “deformaciones excesivas” del elemento rectangular original. El lector interesado
puede consultar [1.2].
La función interpolante de un elemento finito cualquiera responde a una expresión del tipo:
φ(ξ, η) = ∑ φi N i (ξ, η)
i
⎡ x⎤ ⎡x x2 xI ⎤
r=⎢ ⎥ R=⎢ 1 "
⎣y ⎦ ⎣ y1 y2 yI ⎥⎦
φ(ξ, η) = N T u r = R ⋅M
Para evaluar la lagrangiana del elemento nos apoyaremos como ya hiciéramos en el caso de los
elementos triangulares en las expresiones siguientes:
U C(e) = ∫∫ Ωe
1
2 ε(∇φ ⋅ ∇φ) dΩ y U Q(e) = − ∫∫ σφ dΩ
Ωe
∂φ G ∂φ G
donde dΩ = dxdy y ∇φ = i+ j . Determinemos las derivadas parciales de φ :
∂x ∂y
ELECTROSTÁTICA EN 2 DIMENSIONES 107
∂φ ∂N i ∂φ ∂N i
(ξ, η) = ∑ φi (ξ, η) (ξ, η) = ∑ φi (ξ, η)
∂x i ∂x ∂y i ∂y
⎡∂N ∂x ∂N 2 ∂x ∂N I ∂x⎤
∇ xy N = ⎢ 1 "
⎡∂φ ∂x⎤ ⎣∂N1 ∂y ∂N 2 ∂y ∂N I ∂y ⎥⎦
∇φ = ⎢ ⎥
⎣∂φ ∂y ⎦
⎡ ∂N ∂ξ ∂N 2 ∂ξ ∂N I ∂ξ ⎤
∇N = ∇ ξηN = ⎢ 1 "
⎣∂N1 ∂η ∂N 2 ∂η ∂N I ∂η⎥⎦
⎡ ∂N1 ∂N 2 ∂N I ⎤ ⎡ ∂ξ ∂η ⎤ ⎡ ∂N1 ∂N 2 ∂N I ⎤
⎢
∇ xy N = ⎢ ∂∂Nx ∂x ⎥ ⎢
" ∂∂Nx ⎥ = ⎢ ∂∂x ∂x ⎥ ⋅ ⎢ ∂ξ ∂ξ ∂ξ ⎥
∂N 2 ξ ∂η ⎥ ⎢ ∂N1 ∂N 2
"
∂N I ⎥⎥
⎢ 1 I
⎥ ⎢ ⎥ ⎢
⎣ ∂y ∂y ∂y ⎦ ⎣ ∂y ∂y ⎦ ⎣⎢ ∂η ∂η ∂η ⎥⎦
J
⎡ ∂ξ ∂ξ ⎤ ⎡ ∂x ∂x ⎤ ⎡ ∂ξ ∂ξ ⎤
⎡ ⎤ ⎢
d ξ ⎥
∂y ⎡ ⎤ y ⎡ ⎤
dx dx ⎢ ⎥
∂ξ ∂η ⎡ ⎤ d ξ ⎢ ∂y ⎥
Pero ⎢ ⎥ = ⎢ ∂x ⎥ ⋅⎢ ⎥ ⎢ ⎥ = ⎢ ⎥ ⋅ ⎢ ⎥ ; luego ⎢ ∂x = J −1 . Por tanto:
⎣dη⎦ ⎢ ∂η ∂η ⎣ dy ⎦ ⎣ dy ⎦ ∂y ∂y ⎣dη⎦ ∂η ∂η ⎥
⎥ ⎢ ⎥ ⎢ ⎥
⎢⎣ ∂x ∂y ⎥⎦ ⎣⎢ ∂ξ ∂η ⎦⎥ ⎢⎣ ∂x ∂y ⎥⎦
∇ xy N = (J−1 )T ⋅ ∇N
⎡ x⎤
⎢y ⎥ = r = R ⋅ M ⇒ J = ∇ ξηr = R ⋅ ∇ ξηM
⎣ ⎦
⎡ ∂M ∂ξ ∂M 2 ∂ξ ∂M I ∂ξ ⎤
donde ∇ ξηM = ∇M = ⎢ 1 "
⎣∂M1 ∂η ∂M 2 ∂η ∂M I ∂η⎥⎦
U C(e) =∫∫ 1
Ωe 2
[
ε (J−1 )T ⋅ ∇N ⋅ u ] ⋅ [(J
T −1 T
]
) ⋅ ∇N ⋅ u dxdy =
= ∫∫ 1
Ωe 2
[
εu T ⋅ ∇N T (J−1 )(J−1 )T ∇N ⋅ u dxdy ]
Si ahora se realiza el cambio de variable (x, y) → (ξ, η) la integral anterior queda en la forma:
ELECTROSTÁTICA EN 2 DIMENSIONES 108
U C(e) = ∫
η =1
η= 0 ⎝ ∫ ξ=0 2
[ ]
⎛⎜ ξ =1 1 εu T ⋅ ∇N T (J−1 )(J−1 )T ∇N ⋅ u J dξ ⎞⎟ dη
⎠
Nótese, que el vector u no depende de (ξ, η) por lo que podrá extraerse fuera de la integral. Si
aceptamos, como ya se ha hecho en apartados anteriores, que la permitividad eléctrica ε es un
escalar que puede variar de un elemento a otro pero que debe permanecer constante en el interior
de uno dado ε también podría salir fuera de la integral:
⎩ η= 0 ⎝ ξ = 0 ⎠ ⎭
[ ]
η =1
⎛⎜ ξ =1 H T H J dξ ⎞⎟ dη
∫ ⎝ ∫ ξ=0
T
C(e) = donde H = (J−1 )T ∇N = (R ⋅ ∇M)−1 ∇N
η= 0 ⎠
Pasemos ahora a determinar el vector de cargas nodales equivalentes q (e) que surge durante la
evaluación de U Q(e) :
U Q(e) = − ∫∫ σφ dΩ
Ωe
φ(ξ, η) = ∑ φi N i (ξ, η) = N T u
i
Supondremos conocido el vector p = [σ1 " σ I ] que nos proporciona los valores de las
T
densidades de carga σ i en cada uno de los nodos del elemento. A partir de estos datos y
utilizando la misma función interpolante que para el potencial φ podríamos determinar la
densidad de carga en cualquier punto del elemento de coordenadas locales (ξ, η) :
σ(ξ, η) = ∑ σ i N i (ξ, η) = N T p
i
U Q(e) = − ∫∫ (N p)(N u ) dΩ = p ⋅ ∫∫
T T T
NN T dxdy ⋅ u = p T ⋅ ⎧⎨ ∫ ⎛⎜ ∫ NN T J dξ ⎞⎟ dη⎫⎬ ⋅ u
η =1 ξ =1
Ωe Ωe ⎩ η= 0 ⎝ ξ = 0 ⎠ ⎭
η =1
⎛⎜ ξ =1 NN T J dξ ⎞⎟ dη
B= ∫ η= 0 ⎝ ∫ ξ=0 ⎠
Como siempre, minimizando esta expresión obtendremos un sistema de ecuaciones lineales que
es el que nos permite resolver el problema:
Nótese, sin embargo, que desde el punto de vista práctico nos hemos saltado un paso muy
importante: la integración de las expresiones siguientes
η =1
⎛⎜ ξ =1 H T H J dξ ⎞⎟ dη η =1
⎛⎜ ξ =1 NN T J dξ ⎞⎟ dη
C(e) = ∫ η= 0 ⎝ ∫ ξ=0 ⎠
B= ∫ η= 0 ⎝ ∫ ξ=0 ⎠
Para algún caso concreto (p.e. elementos lagrangianos de orden 2: I * = J * = 2 ) quizá pudiera
intentarse obtener las expresiones analíticas de las integrales anteriores. Sin embargo, eso no es
posible (o al menos no es rentable desde el punto de vista de su implementación en un programa
informático) para la totalidad de los elementos de la familia lagrangiana. La alternativa es recurrir
a procedimientos de integración de tipo numérico. En el apartado siguiente se analiza como
abordar dicha integración.
El método de integración numérica más ampliamente utilizado para la evaluación de las integrales
que han aparecido en el apartado anterior es la cuadratura de Gauss-Legendre. (ver, por ejemplo,
[2.3]). Recordemos, en primer lugar, como puede utilizarse este método para hallar la integral
definida de una función f (x) en el intervalo [ 0 , 1]:
1 n
∫ 0
f (x) dx ≅ ∑w f
i =1
i i
15 Nótese que la cuadratura de Gauss-Legendre suele, usualmente definirse en el intervalo [-1,1]. Sin embargo, en el
caso que nos ocupa dicho intervalo se ha substituido por el [0,1]. Por esta razón los puntos de integración incluidos
en la tabla 4.3 pueden diferir de los que usualmente aparecen en la literatura.
ELECTROSTÁTICA EN 2 DIMENSIONES 110
ai wi ai wi
n=1 n=8
0.5000 0000 0000 1.0000 0000 0000 0.0198 5507 1751 0.0506 1426 8145
0.1016 6676 1293 0.1111 9051 7227
n=2 0.2372 3379 5042 0.1568 5332 2939
0.2113 2486 5405 0.5000 0000 0000 0.4082 8267 8752 0.1813 4189 1689
0.7886 7513 4595 0.5000 0000 0000 0.5917 1732 1248 0.1813 4189 1689
0.7627 6620 4958 0.1568 5332 2939
n=3 0.8983 3323 8707 0.1111 9051 7227
0.1127 0166 5379 0.2777 7777 7778 0.9801 4492 8249 0.0506 1426 8145
0.5000 0000 0000 0.4444 4444 4444
0.8872 9833 4621 0.2777 7777 7778 n=9
0.0159 1988 0246 0.0406 3719 4181
n=4 0.0819 8444 6337 0.0903 2408 0347
0.0694 3184 4203 0.1739 2742 2569 0.1933 1428 3650 0.1303 0534 8200
0.3300 0947 8208 0.3260 7257 7431 0.3378 7328 8298 0.1561 7353 8520
0.6699 9052 1792 0.3260 7257 7431 0.5000 0000 0000 0.1651 1967 7501
0.9305 6815 5797 0.1739 2742 2569 0.6621 2671 1702 0.1561 7353 8520
0.8066 8571 6350 0.1303 0534 8202
n=5 0.9180 1555 3663 0.0903 2408 0348
0.0469 1007 7031 0.1184 6344 2528 0.9840 8011 9754 0.0406 3719 4181
0.2307 6534 4947 0.2393 1433 5250
0.5000 0000 0000 0.2844 4444 4444 n=10
0.7692 3465 5053 0.2393 1433 5250 0.0130 4673 5741 0.0333 3567 2153
0.9530 8992 2969 0.1184 6344 2528 0.0674 6831 6656 0.0747 2567 4576
0.1602 9521 5850 0.1095 4318 1255
n=6 0.2833 0230 2935 0.1346 3335 9661
0.0337 6524 2898 0.0856 6224 6190 0.4255 6283 0509 0.1477 6211 2354
0.1693 9530 6767 0.1803 8078 6524 0.5744 3716 9491 0.1477 6211 2362
0.3806 9040 6958 0.2339 5696 7286 0.7166 9769 7065 0.1346 3335 9655
0.6193 0959 3042 0.2339 5696 7286 0.8397 0478 4150 0.1095 4318 1258
0.8306 0469 3233 0.1803 8078 6524 0.9325 3168 3345 0.0747 2567 4576
0.9662 3475 7102 0.0856 6224 6190 0.9869 5326 4259 0.0333 3567 2154
n=7
0.0254 4604 3829 0.0647 4248 3084
0.1292 3440 7200 0.1398 5269 5745
0.2970 7742 4311 0.1909 1502 5252
0.5000 0000 0000 0.2089 7959 1837
0.7029 2257 5689 0.1909 1502 5253
0.8707 6559 2800 0.1398 5269 5745
0.9745 5395 6171 0.0647 4248 3084
A partir de la expresión anterior es fácil demostrar que en el caso de una integral doble la fórmula
correspondiente a la cuadratura es la siguiente:
x =1 y =1 n n
∫ ∫ x=0 y =0
f (x, y) dxdy ≅ ∑∑ w w f (a , a )
i =1 j = 1
i j i j
x =1 y =1 z =1 n n n
∫ ∫ ∫
x=0 y =0 z =0
f (x, y, z ) dxdyz ≅ ∑∑∑ w w w f (a , a , a )
i = 1 j =1 k = 1
i j k i j k
La elección del orden de integración adecuado no es tan sencillo como a primera vista pudiera
parecer.
Por un lado, es lógico pensar que dado que el hecho de recurrir a un procedimiento aproximado
para la determinación de las matrices C(e) y vectores q (e) elementales introduce componentes de
error adicionales en nuestro algoritmo, éstas deberán mantenerse lo más bajas posibles. Es decir,
parecería que se debiera elegir un orden de integración tan alto como fuera posible. Sin embargo,
esto puede llegar a representar un coste en tiempo de proceso muy elevado. Piénsese, por
ejemplo, que el salto de un orden de integración 3 a un orden 4 en el caso de problemas en 3D
supone pasar de utilizar 33 = 27 puntos de integración a 4 3 = 64 : un incremento de un 140%. Si
el salto se produce a un orden 5 el incremento sería de un 360%. Por otro lado, aun cuando
teóricamente el coste de resolución del sistema de ecuaciones lineales debiera ser muy superior al
de cálculo y ensamblaje de la matriz de rigidez también es cierto que en muchas ocasiones se
utilizan rutinas específicas, altamente optimizadas, para la resolución de dicho sistema. Por el
contrario, la labor de cálculo y ensamblaje de la matriz suele realizarse en muchas ocasiones
utilizando técnicas de programación estándar. Estas dos últimas consideraciones permiten
explicar por qué, en la práctica, el coste relativo en tiempo de proceso asociado al ensamblaje es
superior al que, a priori, cabría esperar. Como ejemplo, baste comentar que en el caso de
problemas de tamaño pequeño susceptibles de ser resueltos en ordenadores personales el tiempo
necesario para realizar el cálculo y ensamblaje de la matriz puede ser varias veces superior al
necesario para resolver el sistema de ecuaciones lineales. Desde esta perspectiva se comprende
claramente que una elección del orden de integración realizada alegremente puede conducir a
tiempos de proceso prohibitivos.
Desde otro punto de vista, si el índice de integración se elige excesivamente bajo puede ocurrir
que las componentes de error adicionales debidas a la integración numérica crezcan tanto que
lleguen a afectar la convergencia del algoritmo16. Es decir, la convergencia de éste hacia la
solución real cuando se disminuye el tamaño del elemento se vea ralentizada. Si el orden de
integración es muy bajo puede llegar a perderse la convergencia.
16 Se dice que un algoritmo basado en técnicas de elementos finitos es convergente cuando al tender el tamaño de los
elementos a cero la solución φ que proporciona tiende a la solución real φ∗. Si h es un parámetro que determina el
tamaño de los elementos y ε es una medida de la desviación de entre la solución proporcionada y la real, se dice que
la convergencia del algoritmo es de orden a ,abreviadamente O(ha), si para h suficientemente pequeño ε ~ kha . Si la
desviación se mide a través de parámetros como puedan ser los siguientes:
ε1 = max { φi − φ*i } 1 nG
i ∑(φ − φ*i )2
ε2 =
nG i=1
entonces el orden de convergencia a suele coincidir con el grado p del polinomio completo más elevado que es capaz
de reproducir la función interpolante. Para los elementos de la figura 4.6 sus ordenes de convergencia son los
siguientes: (a) O(h) ; (b) y (c) O(h2) ; (d) O(h3).
ELECTROSTÁTICA EN 2 DIMENSIONES 112
De manera general cuatro son los puntos a considerar a la hora de elegir correctamente el orden
de integración requerido:
• Orden de integración óptimo. Parecería lógico que los errores en la solución final se
redujeran al incrementarse el orden de integración. Sin embargo, se ha demostrado que
en ocasiones la presencia de componentes de error asociadas a la integración numérica
puede ser útil bajo ciertas circunstancias puesto que puede darse una cancelación mútua
entre estos errores y los asociados a la función interpolante. En estos casos, puede
observarse que una reducción del orden de integración conduce a desviaciones menores
en la solución final.
η =1
⎛⎜ ξ =1 H T H J dξ ⎞⎟ dη η =1
⎛⎜ ξ =1 NN T J dξ ⎞⎟ dη
C(e) = ∫ η= 0 ⎝ ∫ ξ=0 ⎠
B= ∫ η= 0 ⎝ ∫ ξ=0 ⎠
ELECTROSTÁTICA EN 2 DIMENSIONES 113
donde G(C )(ξ, η) = H T (ξ, η) ⋅ H(ξ, η) J(ξ, η) y G(B )(ξ, η) = N T (ξ, η) ⋅ N(ξ, η) J(ξ, η)
η =1
⎛⎜ ξ =1G(C )(ξ, η) dξ ⎞⎟ dη η =1
⎛⎜ ξ =1G(B )(ξ, η) dξ ⎞⎟ dη
C(e) = ∫ η= 0 ⎝ ∫ ξ=0 ⎠
B= ∫ η= 0 ⎝ ∫ ξ=0 ⎠
Estas integrales pueden ser aproximadas mediante las siguientes sumas ponderadas:
n n n n
C(e) ≅ ∑∑ wi w j G(C )(ai , aj ) B ≅ ∑∑ wi w jG(B )(ai , aj )
i j i j
Nótese, por tanto, que en realidad G(C )(ai , aj ) y G(B )(ai , aj ) dependen indirectamente
de los valores φi de la función incógnita en los nodos. De quién depende directamente es
de los valores φl = φ(ξ = ai , η = aj ) de dicha función incógnita en los puntos de
integración. Naturalmente los φl dependen los φi a través de las funciones de forma. De
alguna manera es como si se hubiera realizado un cambio de variable, substituyendo los
φi por los φl . Si el número de ambos es el mismo, en general podrá pasarse sin
problemas de los unos a los otros y de los otros a los unos puesto que existirá una
aplicación biunívoca entre ambos. Si existen más φl que φi podremos siempre pasar de
los φi a los φl utilizando las funciones de forma y también podremos realizar el proceso
inverso pues tenemos más información de la necesaria (por cada φl podríamos construir
una ecuación que nos relacionara este con los φi , nos sobrarían entonces ecuaciones). Sin
embargo, si el número de φl es inferior al de φi podremos realizar el primer paso de φi a
φl pero no el segundo de φl a φi . Así, si determinamos la matriz de capacidad C en
función de los φl (que es lo que ocurre en el caso de la integración numérica) esta matriz
corresponderá a un sistema con nC = min{ nG , nI } grados de libertad, donde nI es el
número total de variables nodales φi y nG el número total de φl (es decir, el número
total de puntos de integración). Por tanto, dicha matriz C nunca podrá tener un rango
superior a nC , y si nI es inferior a nG dicho rango será inferior a su dimensión
( nI × nI ) debiendo ser obligatoriamente una matriz singular.
En resumen, el orden de integración n debe elegirse de tal modo que asegure que el número de
puntos de integración nG (para la totalidad del sistema) sea igual o superior al número de nodos
nI . No puede darse una regla general que permita elegir de manera directa el orden de
integración n . Sin embargo, cuando el sistema posee un número muy elevado de elementos y
posee una geometría “razonable” (no es excesivamente “esbelto” en ninguna de sus partes) el
número medio de nodos por elemento tiende a los valores contenidos en la tabla 4.4.
(a) 1
(b) 4
(c) 6
(d) 9
Tabla 4.4.- Número medio de nodos por elemento para aquellos de la figura 4.6
(a) (b)
Figura 4.8.-
A continuación se presentan algunos ejemplos prácticos de utilización del MEF para la resolución
de problemas de electrostática en 2D. El primero de ellos es un problema muy sencillo para el
cual se dispone de solución analítica: consiste en determinar el campo entre las dos armaduras
concéntricas de un condensador cilíndrico entre las cuales existe una diferencia de potencial
Δφ = V 0 . Gracias a la simetría cilíndrica del problema se ha podido restringir el estudio a un
sector circular tal y como puede observarse en la figura 4.9 (en realidad, aprovechando al máximo
dicha simetría el problema degenera en un problema unidimensional). Inicialmente se ha utilizado
una malla de 18 × 18 = 324 elementos lagrangianos de 9 nodos (fig. 4.6b) que contiene 1369
nodos. Dicha malla ha sido generada manualmente mediante programación directa al comienzo
del programa de cálculo.
ELECTROSTÁTICA EN 2 DIMENSIONES 115
R1
r
R2
Ln(r R2 )
ϕ(r) = V 0 ⋅
Ln(R1 R2 )
Para ello definiremos dos parámetros globales que tratan de medir la desviación entre la solución
φ proporcionada por el MEF y la solución exacta ϕ conocida:
⎧ φ − ϕi ⎫
• El error máximo ε MAX = max ⎨ i ⎬
⎩ V0 ⎭
2
1 I ⎛ φi − ϕ i ⎞
• El error medio cuadrático ε MED = ∑⎜
I i=1 ⎜⎝ V 0
⎟⎟
⎠
Ensamblaje
100
10 -3 Resolución
Error máximo
Error medio 10
10-5 Tiempo
de
1 proceso
(s)
10-7
0.1
10-9 0.01
Figura 4.10.- Representación gráfica de algunos resultados correspondientes al ejemplo de la figura 4.8
ELECTROSTÁTICA EN 2 DIMENSIONES 117
A la vista de los resultados incluidos en la tabla 4.5 pueden sacarse las siguientes conclusiones
para este ejemplo:
Para este problema se dispone de una solución analítica (ver, por ejemplo, [4.5] ) en forma serie
infinita que puede evaluarse mediante la suma de los m primeros términos. En este caso, debido
al crecimiento exponencial de la función “seno hiperbólico” únicamente pueden sumarse los
m = 38 primeros términos (en ordenadores que puedan trabajar con números tan grandes como
10323 ).
⎛ π(a − x) ⎞ ⎛ πy ⎞
∞
Sh⎜ (2i + 1) ⋅ ⎟ ⋅ Sh⎜ (2i + 1) ⋅ ⎟
4 ⎝ b ⎠
ϕ(x, y) = V 0 ∑ ⎝ ⎠
b
π i =0 ⎛ πa ⎞
(2i + 1) ⋅ Sh⎜ (2i + 1) ⋅ ⎟
⎝ b ⎠
La suma ϕ*(x, y) de estos primeros 38 términos da muy buenos resultados para puntos alejados
del electrodo situado a potencial V 0 (electrodo vertical izquierdo). Sin embargo, para puntos muy
cercanos a dicho electrodo aparece un cierto comportamiento oscilatorio (ver figura 4.12)
1.2
0.8
ϕ* (x = 0, y)
V0 0.6
0.4
0.2
1.5
0.5
-0.5
5
10
0 5
0
Figura 4.13.-Valor del potencial φ en los nodos
ELECTROSTÁTICA EN 2 DIMENSIONES 119
Los resultados mostrados en la figura 4.13 parecen, a primera vista, decepcionantes. El MEF
proporciona una solución con grandes oscilaciones que da lugar a la existencia de errores de hasta
casi el 100%. Podría argüirse que la malla utilizada no contiene un número suficientemente
grande de elementos y en cierto modo es así. Sin embargo, representemos en vez de los valores
obtenidos para los nodos aquellos correspondientes a los puntos de integración utilizados (figura
4.14). Sorprendentemente las oscilaciones casi desaparecen obteniéndose una solución (si se
interpola linealmente entre estos puntos de integración) que incluso llega a ser mejor que la
proporcionada por la aproximación de la solución analítica en las cercanías del electrodo a
potencial V 0 . Este resultado no se ha obtenido por casualidad. En general, el recurso a órdenes
de integración reducidos junto con la evaluación de la solución en los puntos de integración
permite que los errores introducidos por la función interpolante y aquellos provenientes de la
integración numérica se cancelen mutuamente. La colocación de los puntos de integración es
óptima para reducir los errores durante la integración numérica pero esta colocación también
resulta óptima para la evaluación de la función interpolante. Por ello, aparece esa mejora tan
espectacular entre la figura 4.13 y la 4.14. Por tanto, como norma general es recomendable
proporcionar como solución final la correspondiente a los puntos de integración.
1.5
0.5
0
5
0 5
0
Figura 4.14.-Valor del potencial φ en los puntos de integración.
En la figura 4.15 se han representado las soluciones correspondientes a la primera fila de puntos
paralela al electrodo situado a potencial V 0 y más próxima a él, tanto para los nodos como para
los puntos de integración. Se observa claramente como la segunda es mucho más suave que la
primera, desapareciendo casi por completo las oscilaciones que ahora son incluso más pequeñas
que las correspondientes a la aproximación de la solución analítica.
Por último se incluye un tercer ejemplo en el cual el condensador de la figura 4.9 pasa a tener una
armadura interna con una sección no circular y a ocupar una posición no centrada respecto a la
armadura externa (figura 4.16). La malla puede continuar siendo generada por procedimientos
manuales, aunque ahora ya es necesario recurrir a algún artificio algebraico para realizarlo. En la
figura 4.17 se representa la solución proporcionada por un análisis mediante elementos finitos.
ELECTROSTÁTICA EN 2 DIMENSIONES 120
1.6
1.4
1.2
0.8
0.6
0.4
0.2
0
0 0.25 0.5 0.75 1
Figura 4.15.-Comparación de los resultados correspondientes a los nodos (cuadrados) con la solución
correspondiente a los puntos de integración (círculos).
ELECTROSTÁTICA EN 2 DIMENSIONES 121
Puede, sin embargo, salvarse el problema anterior utilizando al menos dos alternativas:
Esta es la solución más sencilla, pero será en general costosa si como se ha dicho antes
k >> 1 porque el número de elementos (y nodos a introducir) probablemente sea elevado.
17 En este caso la discretización en elementos finitos permite pasar de un número infinito y no numerable de
incógnitas (el valor de la función incógnita en todos y cada uno de los puntos del dominio) a otro infinito pero
numerable.
ELECTROSTÁTICA EN 2 DIMENSIONES 123
r0 = R0
R1 − R0
r1 = R0 + 1 ⋅
n
#
R1 − R0
ri = R0 + i ⋅
n
#
R1 − R0
rn = R0 + n ⋅ = R1
n
Supondremos inicialmente que por ser R1 >> R0 → φ(R1 ) ≈ 0 .Por tanto utilizaremos la
primera de las alternativas descritas e impondremos la condición de contorno φn = φ(rn ) = 0 .
Para resolver el problema determinaremos la expresión de la lagrangiana del sistema en función
de los φi = φ(ri ) y posteriormente procederemos a su minimización.
2
R1 ⎛ dφ ⎞
U=∫ 1
ε(r) ⋅ ⎜ ⎟ ⋅ 4πr 2 dr
R0 2
⎝ dr ⎠
Si en el interior del elemento e interpolamos linealmente el potencial en función del valor que
alcanza en los nodos de los extremos y aceptamos que la permitividad permanezca constante e
igual a ε e = 12 [ε(re−1 ) + ε(re )] :
dφ φ − φe−1 φ − φe−1
= e =n e
dr R1 − R0 R1 − R0
n
2 2
⎛ dφ ⎞ n
⎛ dφ ⎞
ε e ⋅ ⎜ ⎟ ⋅ 4πr 2 dr = ∑ U e
R1 re
U =∫ 1
2 donde Ue = ∫ 1
2 εe ⋅ ⎜ ⎟ ⋅ 4πr 2 dr
R0
⎝ dr ⎠ e =1
re −1
⎝ dr ⎠
2 2
⎛ φ − φe−1 ⎞ ⎛ φ − φe ⎞
⎟⎟ ⋅ 4π ⋅ (re3 − re3−1 )
re 1
U e = ε e ⋅ ⎜⎜ n e
1
2
⎟⎟ ⋅ 4π ⋅ ∫ r 2 dr = 12 ε e ⋅ ⎜⎜ n e
⎝ R1 − R0 ⎠ re −1
⎝ R1 − R0 ⎠ 3
n
La minimización directa de U = ∑ U e = U (φ0 , φ1,", φn ) (imponiendo las condiciones de
e =1
contorno φ0 = V 0 y φn = 0 ) conduce a la solución que aparece en la figura 4.18 (círculos) para
un problema en el cual:
αε0
ε(r) = R1 = kR0 con k = 5 y α = 2
r
Puede observarse la gran diferencia que existe respecto de la solución analítica exacta (línea
continua). La expresión de esta última es la siguiente:
⎧ ⎛ ln(r R0 ) ⎞
⎪ V 0 ⋅ ⎜⎜1 − ⎟⎟ ∀r ∈ [R0 , R1 ]
⎪
ϕ(r) = ⎨ ⎝ α + ln(R1 R0 ) ⎠
⎪ α R
V0 ⋅ ⋅ 1 ∀r > R1
⎪⎩ α + ln(R1 R0 ) r
cte
ϕ(r) =
r
2 2
∞ ⎛ dφ ⎞ ∞ ⎛ R ⎞ ∞ dr
U∞ = ∫ 1
2 ε 0 ⋅ ⎜ ⎟ ⋅ 4 πr 2 dr = ∫ 12 ε 0 ⋅ ⎜ − φn 2n ⎟ ⋅ 4 πr 2 dr = 2 πε 0 φn2 Rn2 ∫ − 2 =
Rn
⎝ dr ⎠ Rn ⎝ r ⎠ Rn r
⎛ 1 ⎞
= 2πε 0 φn2 Rn2 ⋅ ⎜⎜ ⎟⎟ = 2πε 0 ⋅ Rn ⋅ φ2n
⎝ n⎠
R
n
U = ∑ U e + U ∞ = U (φ0 , φ1,", φn )
e =1
Aún cuando el problema no hubiera poseído simetría esférica se habría podido suponer que el
potencial seguía una ley del tipo φ = cte ⋅ r −1 para puntos del exterior de una esfera de radio
suficientemente grande en cuyo interior estuvieran confinadas todas las cargas libres del problema
ELECTROSTÁTICA EN 2 DIMENSIONES 125
(que deberían totalizar una carga total no nula ni infinita) y en su exterior solo existiera el vacío.
Es decir, para distancias suficientemente elevadas del dominio en el que están confinada la
distribución de cargas, ésta puede ser substituída por una carga puntual.
φ(r) V 0 φi − ϕ(ri )
V0
1 0.010
0.8 0.008
0
0 2 4 6 8 r R0
En otras ocasiones, cuando las distribuciones de cargas totalizan una carga total nula, éstas
pueden ser aproximadas, para distancias suficientemente grandes, mediante multipolos que según
su orden dan lugar a leyes de variación del tipo expuesto en la tabla 4.6. (ver [4.2]):
Tabla 4.6.- Leyes de variación del potencial para campos creados por multipolos
k
⎛R⎞
ϕ(r, ψ, θ) = ϕ 0 (ψ, θ) ⋅ ⎜ ⎟
⎝r⎠
donde (r, ψ, θ) representan las coordenadas esféricas del punto en el que se evalúa el potencial.
Tratemos ahora de evaluar la componente de la lagragangiana correspondiente al exterior Ω C de
la esfera Ω . Aceptaremos que no existen cargas ni medios materiales algunos en Ω C . Por tanto:
U ∞ = ∫∫∫ 1
ε 0 ∇ϕ ⋅ ∇ϕ dV
ΩC . 2
dϕ dϕ
U ∞ = ∫∫∫ 1
2 ε 0∇ϕ ⋅ ∇ϕ dV + ∫∫∫ 1
2 ε 0 ϕΔϕ dV = ∫∫ 1
2 ε 0ϕ dS + ∫∫ 12 ε 0 ϕ dS
Ω .C
Ω C
Γ dn Γ∞ dn
dϕ dϕ
∫∫ 1
Γ∞ 2
ε0ϕ
dn
dS = lim ∫∫ 12 ε 0 ϕ dS
r →∞ Γ( r ) dn
Dado que en el exterior no existen cargas libres Δϕ = 0 y si además se cumplen las condiciones
de regularidad en el infinito:
dϕ dϕ
∫∫ 1
Γ∞ 2
ε 0ϕ
dn
dS = lim ∫∫ 12 ε 0 ϕ dS = 0
r →∞ Γ( r ) dn
dϕ kR k 1 kε
U∞ = ∫∫ Γ
1
2 ε 0ϕ
dn
dS = 12 ε 0 ∫∫ ϕ 02 (ψ) k +1 ⋅ dS = ⋅ 0 ⋅ ∫∫ ϕ 02 (ψ)dS
Γ R 2 R Γ
Como ejemplo sencillo, consideremos aquellos problemas con simetría de revolución. En este
caso podremos eliminar una dimensión ( ϕ dejará ser función de ψ ) y la frontera se convertirá en
una circunferencia cuyo centro deberá estar en el eje de revolución (para que la simetría se siga
conservando). Por tanto la expresión de U ∞ podrá reescribirse de la siguiente manera:
1 kε 0 2 π 2
2 R ∫0
U∞ = ⋅ ⋅ ϕ 0 (ψ)(2πx)Rdθ
ELECTROSTÁTICA EN 2 DIMENSIONES 127
La frontera a su vez está compuesta por elementos finitos de frontera, segmentos en este caso
que (si se utilizan triángulos lineales en la discretización) tendrán sólo dos nodos: sus puntos
inicial A y final B . Podremos calcular la compomente U ∞ de la lagrangiana como suma de las
lagrangianas U ∞(e) correspondientes a cada elemento e de la frontera:
U ∞(e) =
1 kε 0 ξ=1
⋅
2 R ξ =0
[ 2
] [
⋅ ∫ uA (1 − ξ)2 + uB ξ ⋅ 2π xA (1 − ξ)2 + xB ξ ⋅ A e dξ ]
donde se ha aceptado implícitamente que debido al pequeño tamaño de los segmentos A e la línea
poligonal que determina la frontera de la discretización puede considerarse suficientemente
próxima a la circunferencia con la que realmente queremos trabajar. uA y uB representan los
potenciales de los puntos A y B. xA y xB representan sus coorespondientes coordenadas x .
1 kε 0 ξ=1
U ∞(e) = ⋅
2 R ξ=0
[ 2
] [
⋅ ∫ uA (1 − ξ)2 + uB ξ ⋅ 2π xA (1 − ξ)2 + xB ξ ⋅ A e dξ ]
1 2 πkε 0 A e ⎛ ⎡1 1
⎤ ⎡ 121 1
⎤ ⎞ ⎡ uA ⎤
U ∞(e) = ⋅ [uA uB ] ⋅ ⎜ xA ⋅ ⎢ 41 12
1 ⎥⎦ + x ⋅
B ⎢ 1
12
1 ⎥⎦ ⎟ ⋅ ⎢⎣uB ⎥⎦
2 R ⎝ ⎣ 12 12 ⎣ 12 4 ⎠
Por tanto, hemos conseguido de nuevo expresar las lagrangianas de cada elemento e de la
frontera como una forma cuadrática de los potenciales nodales uA y uB . La matriz de dicha
forma cuadrática será, como de costumbre, una matriz de capacidad:
1 ⎡u ⎤ 2 πkε 0 A e ⎛ ⎡1 1
⎤ ⎡ 121 1
⎤⎞
U ∞(e) = ⋅ [uA uB ] ⋅ C(e) ⋅ ⎢ A ⎥ donde C(e) = ⎜ xA ⋅ ⎢ 41 12
1 ⎥⎦ + xB ⋅ ⎢⎣ 121
12
1 ⎥⎦ ⎟
2 ⎣uB ⎦ R ⎝ ⎣ 12 12 4 ⎠
Algo similar, puede realizarse en el caso de problemas tridimensionales. En este caso la frontera
es realmente una superficie esférica que en realidad estará aproximada mediante una superficie
facetada cuyas caras serán triángulos si los elementos finitos elegidos han sido los tetraedros
lineales.
Como ejemplo se ha resuelto un sencillo problema para el cual se posee solución analítica: el
campo creado por una distribución esférica y homogénea de carga. El problema posee en realidad
simetría esférica (por tanto, es un problema unidimensional) pero se ha resuelto utilizando
únicamente su simetría cilíndrica. Para ello se ha utilizado la discretización que se muestra en la
figura 4.19 (triángulos lineales) donde la relación entre el radio R del volumen discretizado y el
radio r0 de la esfera cargada es R r0 = 10 . El problema se ha resuelto utilizando diferentes
tamaños de malla con el fin de estudiar la convergencia y si esta se ve afectada por el hecho de
existir esa pequeña diferencia entre la frontera real de la discretización y la esfera teórica a la que
debería ajustarse. Los resultados obtenidos se resumen en la tabla 4.7 y en la figura 4.10.
ELECTROSTÁTICA EN 2 DIMENSIONES 128
0.1
E max
E med
0.01
0.001
0.0001
Hasta ahora hemos resuelto el problema de la consideración del espacio exterior al dominio Ω
forzando a que a una distancia suficientemente elevada la evolución del potencial sea la
correspondiente a un multipolo de orden k − 1 . Una visión mas amplia de esta técnica puede
encontrarse en [1.2]. El Método de los Elementos de Contorno también puede proporcionar
ELECTROSTÁTICA EN 2 DIMENSIONES 129
Por último se ha procedido a estudiar un condensador cilíndrico formado por dos armaduras
metálicas concéntricas, de espesor despreciable, altura h y diámetros d1 y d2 . El espacio
comprendido entre ambas armaduras se encuentra relleno de un dieléctrico de permititividad
ε = αε0 . La figura 4.22 contiene la malla utilizada para el estudio de un condensador en el cual
h d1 = 30 17 , h d2 = 30 23 y α = 5 . Los elementos infinitos utilizados para tener en cuenta el
espacio exterior simulan el comportamiento de una carga neta situada en el origen del sistema de
coordendas (centro del condensador). Como se podrá comprobar más adelante, en general las
cargas que cada una de las armaduras almacenan poseerán signos opuestos pero sus valores
absolutos no serán exactamente iguales. Por ello, la contribución de ambas es una carga neta no
nula y consiguientemente se ha elegido el modelo de carga puntual (y no el de multipolo) para
representar el campo eléctrico en regiones alejadas del condensador.
d2 d1
Figura 4.21.- Condensador cilíndrico Figura 4.22.- Malla utilizada para el análisis
del condensador de la figura 4.21
En la figura 4.23 se han representado las curvas equipotenciales cuando la armadura interior se
somete a un potencial + 21 V 0 y la exterior a − 12 V 0 (la diferencia de potencial entre dos curvas
adyacentes es 0,05 × V 0 siendo V 0 la diferencia de potencial entre las armaduras del
condensador). La figura 4.24 es un detalle ampliado de figura 4.23 que pretende representar con
mayor claridad el campo en las cercanías de los bordes del condensador.
ELECTROSTÁTICA EN 2 DIMENSIONES 130
Figura 4.23.- Líneas equipotenciales en el Figura 4.24.- Detalle de las líneas equipotenciales en el borde
condensador de la figura 4.21 del condensador de la figura 4.21
⎡C11 C12 ⎤ ⎡V 1 ⎤ ⎡ Q1 ⎤
⎢C ⎥⋅⎢ ⎥ = ⎢ ⎥
⎣ 21 C 22 ⎦ ⎣V 2 ⎦ ⎣Q2 ⎦
Si suponemos ambas armaduras aisladas del resto del espacio e inicialmente descargadas y a
potencial nulo, cuando se transfiera una cierta carga + Q desde la armadura interna a la armadura
externa la primera quedará cargada con Q1 = −Q y la segunda con Q2 = +Q alcanzándose los
potenciales V1 y V 2 que podemos calcular de acuerdo con la siguiente expresión:
−1
⎡V1 ⎤ ⎡C11 C12 ⎤ ⎡ − Q⎤
⎢V ⎥ = ⎢C ⎥ ⎢ + Q⎥
⎣ 2 ⎦ ⎣ 21 C 22 ⎦ ⎣ ⎦
En estas condiciones, se define la capacidad C del condensador como la diferencia entre la carga
transferida Q y la diferencia de potencial ΔV = V 2 − V1 que se establece entre las armaduras.
Operando y teniendo en cuenta que C12 = C 21 en virtud de la simetría de la matriz:
C11C 22 − C122
C=
C11 + C 22 + 2C12
ELECTROSTÁTICA EN 2 DIMENSIONES 131
C11 = Q1 V 0 C12 = Q2 V 0
Q1 = ∑q
i∈A1
i Q2 = ∑q
i∈A2
i
C 21 = Q1 V 0 C 22 = Q2 V 0
h d1 = 30 17 , h d2 = 30 23 y α = 5
V1 V 0 V2 V0 Q1 ε 0 rm (1)
Q2 ε 0 rm (1)
1 0 322,5111 -319,3637
0 1 -319,3637 337,5674
(1)
rm = 41 (d1 + d2 )
Tabla 4.8.- Resultados numéricos correspondientes al condensador cilíndrico de la figura 4.21
C = 322,0471 × ε 0 rm
En el caso particular de los condensadores cilíndricos de longitud elevada en los cuales el efecto
borde puede ser despreciado existe una expresión analítica que permite calcular su capacidad
[3.1]:
ELECTROSTÁTICA EN 2 DIMENSIONES 132
2πhε 2π ⋅ (3 rm ) ⋅ (5 ε 0 )
C* = = = 311,7888 × ε 0 rm
ln(d2 d1 ) ln(23 17)
Se observa que la diferencia entre ambos valores es pequeña: el cociente C C * resulta ser
1,0329. Es decir, la capacidad real del condensador excede en un 3,3% aquella que le
correspondería aceptando que el efecto borde no estuviera presente.
4.6 Referencias
Para la generación automática de las mallas de elementos triangulares utilizadas en los ejemplos
de este capítulo se ha recurrido a un programa de domino público que puede encontrarse en la
página de Internet [4.1]. Es un programa muy sencillo de utilizar del que se dispone de su código
fuente. Sin embargo, su funcionamiento no es del todo correcto pudiéndose obtener resultados
de mala calidad e incluso absurdos en algunas situaciones. Un paquete de sotware de gran calidad,
también de dominio público, que no debe presentar estos problemas de funcionamiento es el
descrito en la referencia [4.2]. Sin embargo, su uso e instalación resultan más complejos. El lector
interesado en este tema puede consultar la referencia [3.4].
La referencia [4.3] es también un texto de carácter introductorio al cálculo numérico pero de gran
calidad. Quizá la gran ventaja que presente frente a la referencia [1.3] es que se encuentra
traducido al castellano.
La totalidad de los ejemplos descritos en este capítulo han sido implementados en un lenguaje de
programación [4.4] específicamente diseñado para el trabajo con matrices. Se caracteriza
especialmente por la capacidad de poder trabajar con matrices dispersas lo que ayuda
enormemente en la implementación de rutinas de elementos finitos. Un sencillo paquete de
software de dominio público que se ejecuta bajo [4.4] es el referenciado en [4.5]. Aun cuando está
diseñado pensando fundamentalmente en aplicaciones de tipo mecánico y estructural también
contiene rutinas que permiten resolver problemas de electrostática. Por último, un paquete
también de domino público que presenta el análisis mediante elementos finitos desde una
perspectiva más cercana a los paquetes de cálculo simbólico es el referenciado en [4.6]
Las referencias [4.7], [4.8] y [4.9] son páginas de internet donde se puede encontrar abundante
información sobre elementos finitos (paquetes de software tanto comerciales como de dominio
público, enlaces, bibliografía, etc...).
Apéndice 4A:
Códigos MatLab para la resolución de
problemas de electrostática
En este apéndice se van a presentar algunos ejemplos de códigos, escritos en MatLab [4.4] y
utilizados para la resolución de los ejemplos de este capítulo, que pueden servir al lector de
muestra para la escritura de sus propias rutinas. Estos ejemplos no pretenden ser exhaustivos. En
concreto se obvia todo lo relativo a la representación gráfica de los resultados salvo cuando ésta
puede realizarse de manera directa utilizando rutinas estándar de MatLab. El objetivo es
simplemente que el lector adquiera una idea clara de la estructura básica de un programa de
análisis mediante elementos finitos.
La estructura del archivo de entrada para EasyMesh puede observarse en la figura 4. Nótese, en primer
lugar, que el texto situado entre dos símbolos “#” es considerado un comentario y por tanto no será
procesado. La definición del contorno se realiza mediante segmentos rectilíneos que están conectados
entre sí mediante nodos (ver figura 4.26). El archivo posee dos partes. En la primera se especifica el
número total de nodos utilizados (cuatro en el ejemplo) para la definición del contorno y sus
correspondientes coordenadas x e y. En la segunda parte se definen los segmentos que forman el
contorno. Se comienza fijando el número total de ellos (cuatro) y posteriormente se proporcionan los
números de los nodos primero y segundo de cada elemento. Así, en el ejemplo de las figuras 4.25 y
4.26 el contorno está formado por cuatro segmentos (1 a 4) para cuya definición necesitamos
cuatro nodos (1 a 4, ver figura 4.26).
ELECTROSTÁTICA EN 2 DIMENSIONES 134
Cada uno de estos segmentos son subdivididos por EasyMesh en otros segmentos de menor
longitud antes de comenzar el proceso de generación de la malla propiamente dicho. La longitud
de estos segmentos (y por tanto el tamaño de los triángulos de la malla) puede ajustarse actuando
sobre los controladores de espaciado que, para cada nodo, se incluyen en la columna “espaciado”
del archivo de datos. El programa trata de generar triángulos, en las cercanías del nodo
considerado, cuyos lados posean longitudes próximas al valor de espaciado especificado. La malla
generada por EasyMesh (a partir de ejemplo1.d) puede observarse en la figura 4.1.
#*********
NODOS
*********#
#------+-----+-----+-----------+----------#
# nodo | x | y | espaciado | marcador #
#------+-----+-----+-----------+----------#
0: 0.0 0.0 0.03 1
1: 10.0 0.0 0.90 2
2: 10.0 3.5 0.90 2
3: 0.0 3.5 0.03 1
#***********
SEGMENTOS
***********#
4 # Número de segmentos #
#----------+----+----+----------#
# segmento | 1º | 2º | marcador #
#----------+----+----+----------#
0: 0 1 2
1: 1 2 2
2: 2 3 2
3: 3 0 1
Asimismo, tanto en la información correspondiente a los nodos como en aquella otra relativa a
los segmentos aparece una columna denominada “marcador”. Gracias a ella es posible clasificar
los nodos en diferentes tipos. Los nodos internos son marcados con un cero. A los nodos del
contorno utilizados para definir los segmentos se les asigna el valor que aparece en la columna
“marcador” (a la derecha de la columna espaciado). Por último, a los nodos del contorno
resultantes de la subdivisión de los segmentos se les asigna el valor incluido en la columna
“marcador” correspondiente al segmento al que pertenecen. Así, en este caso, todos los nodos
pertenecientes al segmento nº 3 (incluyendo los nodos 0 y 3) son todos de tipo 1, el resto de los
nodos del contorno han sido declarados de tipo 2 y los interiores son tipo 0. Esta información
será utilizada posteriormente por el programa de elementos finitos para imponer las condiciones
de contorno. Así, el potencial de los nodos tipo 1 se igualará a la unidad18, el potencial de los
18 El enunciado del ejemplo correspondiente a la figura 4.1 consideraba que el electrodo de la izquierda estaba
sometido a potencial V0. En este caso se ha supuesto que V0=1. En cualquier caso, dada la linealidad del problema, si
este no fuera el caso bastaría con multiplicar la solución obtenida por V0 para obtener la solución buscada.
ELECTROSTÁTICA EN 2 DIMENSIONES 135
nodos tipo 2 se igualará a cero y los potenciales de los nodos tipo 0 son libres, es decir, son las
incógnitas del problema.
3 2
2
3 1
0 1
Una descripción detallada de la estructura de los archivos de salida generados por EasyMesh puede
encontrarse en la referencia [4.1]. En las figuras 4.27, 4.28 y 4.29 se presentan los archivos
generados correspondientes al ejemplo de las figuras 4.25 y 4.26.
1441
0: 0 1 2 -1 1 -1 2 1 0 1.500099999999996e-002 1.491452991452990e-002 -1
1: 3 0 2 0 3 2 1 5 3 1.957741171450258e-002 1.951817321478898e-002 -1
2: 4 0 3 1 4 -1 3 7 4 6.205311915283276e-003 4.474432655467142e-002 -1
3: 2 5 3 5 1 6 8 5 6 4.138981340090376e-002 2.370508199726190e-002 -1
4: 4 3 6 5 7 2 10 11 7 1.665283479583244e-002 5.742571718811638e-002 -1
5: 3 5 6 8 4 3 12 10 8 3.613671024983302e-002 5.464781804169200e-002 -1
6: 2 7 5 9 3 -1 14 6 9 6.429752066115690e-002 1.208635593584145e-002 -1
7: 4 6 8 11 -1 4 15 13 11 9.114277730689204e-003 7.457559681697612e-002 -1
8: 9 6 5 5 10 12 12 16 18 4.617726954571937e-002 6.601610938848171e-002 -1
9: 7 10 5 10 6 13 17 14 20 9.524952797484510e-002 4.165820377041540e-002 -1
10: 5 10 9 16 8 9 23 16 17 7.179133296123280e-002 6.660100191454969e-002 -1
1440: 802 801 780 1426 1427 -1 2229 2230 2242 1.058841595504638e-002 3.275036103743000e+000 -1
----------------------------------------------------------------------------------------------------------
e: i, j, k, ei, ej, ek, si, sj, sk xV, yV sign
El archivo “.n” (ejemplo1.n) contiene las coordenadas de los nodos junto con el marcador
de tipo comentado anteriormente. En la primera línea se incluye el número total de nodos y
posteriormente, dedicando una línea para cada nodo, aparecen la coordenadas x e y junto el
marcador (ver figura 4.28). El archivo “.s” (ejemplo1.s) contiene información relativa a los
segmentos que forman la malla (los segmentos frontera entre elementos). Esta información no es
utilizada por el programa de elementos finitos por lo que se remite al lector interesado a la
referencia [4.1].
804
0: 0.000000000000000e+000 2.982905982905981e-002 1
1: 0.000000000000000e+000 0.000000000000000e+000 1
2: 2.999999999999992e-002 0.000000000000000e+000 2
3: 2.203246238363269e-002 4.150822001836574e-002 0
4: 0.000000000000000e+000 5.965959328028303e-002 1
5: 5.378712636338089e-002 4.689916299036691e-002 0
6: 2.626653745886977e-002 7.120555137576720e-002 0
7: 9.859504132231390e-002 0.000000000000000e+000 2
8: 0.000000000000000e+000 8.949160035366921e-002 1
9: 5.290658544519346e-002 8.546048821370492e-002 0
10: 9.255958198307034e-002 8.336386995016704e-002 0
2244
0: 1 0 -1 0 1
1: 2 0 0 1 0
2: 1 2 0 -1 2
3: 0 3 2 1 0
4: 4 0 2 -1 1
5: 2 3 1 3 0
6: 2 5 3 6 0
7: 4 3 4 2 0
8: 3 5 5 3 0
9: 2 7 6 -1 2
10: 6 3 5 4 0
La información contenida en los archivos “.e” y “.n” es leida por las subrutinas leerelem y
leernodo respectivamente. El código de éstas se incluye en las figuras 4.28 y 4.29.
ELECTROSTÁTICA EN 2 DIMENSIONES 137
function [n,conect,marker]=LeerElem(archivo)
FID=fopen([archivo,'.e'],'r');
n=fscanf(FID,'%4d',1);
nada=fscanf(FID,'%*s %d %d %d %d %d %d %d %d %d %e %e %d',[12,n]);
nadat=nada';
conect=nadat(:,1:3)+1;
marker=nadat(:,12);
end
function [n,coord,marker]=LeerNodo(archivo)
FID=fopen([archivo,'.n'],'r');
n=fscanf(FID,'%4d',1);
nada=fscanf(FID,'%*s %e %e %d',[3,n]);
nadat=nada';
coord=nadat(:,1:2);
marker=nadat(:,3);
end
Las mallas de elementos lagrangianos utilizadas en los ejemplos del apartado 4.4.6 fueron
generadas de forma manual, entendiendo el adjetivo “manual” como indicador de que han sido
generadas por código embebido en el programa principal de elementos finitos y escrito
específicamente para cada uno de los ejemplos. En la figura 4.30 se ha incluído el código utilizado
para la generación de la malla del ejemplo correspondiente a la figura 4.9. En la figura 4.31 se ha
esquematizado la numeración utilizada, tanto de los nodos como de los elementos (incluidos
estos últimos en un círculo). Se trata de una malla formada por 6×8=48 elementos lagrangianos
de 9 nodos que da lugar a un total de 13×17=221 nodos. La malla realmente representada en la
figura 4.9 poseía un número mayor de elementos (6×8=48 elementos, 49×49=2041) pero se ha
preferido esta versión reducida para facilitar su representación gráfica. Para la obtención de las
coordenadas de los nodos se ha partido de su expresión en coordenadas cilíndricas la cual resulta
bastante sencilla. Los nodos del contorno se marcan del siguiente modo:
• Tipo 1: los nodos del segmento inferior (θ=0, excluyendo los nodos extremos 1 y 209)
• Tipo 2: El arco derecho (r=R2)
• Tipo 3: El segmento superior (θ=π/4, excluyendo los nodos extremos 13 y 221)
• Tipo 2: El arco izquierdo (r=R1)
ELECTROSTÁTICA EN 2 DIMENSIONES 138
El resto del código puede parecer a priori algo complicado y quizá también farragoso. Sin
embargo, el lector interesado puede comprobar, con ayuda del manual de referencia técnica de
MatLab [4.1], que no lo es tanto.
ir=[0:1/(2*na):1]; it=[0:1/(2*nb):1];
R=r1+(r2-r1)*ir; T=t1+(t2-t1)*it;
[rr,tt]=meshgrid(R,T);
MarkerPun=zeros(size(rr));
MarkerPun=4*(rr==r1)+2*(rr==r2)+(tt==t1).*(~(rr==r1)).*(~(rr==r2))+
3*(tt==t2).*(~(rr==r1)).*(~(rr==r2));
MarkerPun=MarkerPun(:);
x=rr.*cos(tt); y=rr.*sin(tt);
[d1,d2]=size(x);
x=x(:); y=y(:);
Rpun=[ x y ];
Npun=prod(size(x));
Nelem=na*nb;
Figura 4.30.- Código específico para la generación de la malla de elementos lagrangianos del ejemplo
correspondiente a la figura 4.9
ELECTROSTÁTICA EN 2 DIMENSIONES 139
221
48
12
13 6 11
12
11 5
10
10
9 4
8 9
7 3
6 14
5
4 16 29 43
31 37
3 19 25
28 13
2 15
1 14 27 40 53 66 79 92 105 118 131 144 157 170 183 196 209
Figura 4.31.- Esquema de numeración de nodos y elementos utilizado en la malla de la figura 4.9
(la malla representada es una versión reducida de la malla de dicha figura)
Si no existen cargas libres (como en el caso del ejemplo de la figura 4.1 que es al que corresponde
el código presentado) no es necesario realizar el ensamblaje del vector de cargas. Por ello, se pasa
directamente a la aplicación de las condiciones de contorno utilizando el procedimiento descrito
en el apartado 3.8. Nótese que en este caso los nodos marcados como tipo 1 (electrodo
izquierdo) están a potencial V 0 = 1 V y los marcados como tipo 2 (el resto de los nodos del
contorno) están a potencial nulo.
y la parte superior de la matriz). En todo caso, y con el fin de simplificar al máximo el código se
ha utilizado el procedimiento general, no tan eficiente pero mas sencillo de interpretar para el
lector.
Por último, se han incluido algunas líneas de código que permiten generar una representación
gráfica (mapa de color) de la solución. La rutina fill dibuja el mapa de color de cada elemento
triangular interpolando linealmente el valor del potencial a partir del valor proporcionado para los
tres vertices o nodos de dicho elemento.
C=sparse(Npun,Npun);
for Ielem=1:Nelem
C(Conec(Ielem,:),Conec(Ielem,:))=C(Conec(Ielem,:),Conec(Ielem,:))+
kelemt2d(Ielem);
end
gplot (C,Rpun);
axis ('equal'); axis ('off');
q=zeros(Npun,1);
Cinf=1e+8*max(max(C));
for i=1:Npun
if MarkerPun(i)==1, C(i,i)=C(i,i)+Cinf; q(i)=q(i)+Cinf*1;
elseif MarkerPun(i)==2, C(i,i)=C(i,i)+Cinf; q(i)=q(i)+Cinf*0;
end
end
u=C\q;
Figura 4.32.- Código correspondiente a la estructura básica del programa (elementos triangulares)
ELECTROSTÁTICA EN 2 DIMENSIONES 141
end
end
R= [ Rpun(Conec(Ielem,:),1)' ; Rpun(Conec(Ielem,:),2)' ];
K=zeros(9);
for i=1:size(N,2)
GradN=[Na(:,i)'; Nb(:,i)'];
J=R*(GradN)';
H=(inv(J))'*GradN;
K=K+H'*H*abs(det(J))*GaussH(i);
end;
end;
klag2d2 necesita conocer los puntos de integración (almacenados en GaussXY), los pesos
que cada uno de ellos tiene asignados (GaussH) y los valores que las funciones de forma (N) y
sus derivadas parciales (Na y Nb) toman en dichos puntos de integración. La relación entre estas
variables y las utilizadas en el apartado 4.4 aparece descrita en la tabla 4.9.
Tanto los puntos de integración como los pesos respectivos pueden escribirse manualmente al
comienzo del programa principal utilizando la información de la tabla 4.3. Algo similar podría
hacerse en lo que respecta a las funciones de forma y sus derivadas. Sin embargo, con el fin de
poder variar fácilmente tanto el orden de los elementos como el orden de integración se han
incluido dos subrutinas que realizan esta labor. La primera de ellas, GaussLeg calcula los puntos
de integración (z) y los pesos respectivos (h) correspondientes a la cuadratura de Gauss-Legendre.
Para ello es necesario proporcionarle el máximo orden de integración (n) a considerar. GaussLeg
devuelve los puntos de integración y los pesos para todos los ordenes de integración iguales o
inferiores a n. Los valores presentados en la tabla 4.3 han sido determinados utilizando esta
subrutina. El listado de GaussLeg se incluye en la figura 4.36.
GaussLeg está basado en los algoritmos descritos en el apartado 2.10 de la referencia [4.3]. En primer
lugar, utilizando un algoritmo recurrente se obtienen las expresiones de los polinomios de Legendre (P).
A continuación se pasa a la determinación de sus raices (z). Por último, para el cálculo de los pesos es
necesario apoyarse en polinomios de Lagrange (pol) que son evaluados utilizando la subrutina
PolyPass. La integración de éstos en el intervalo [− 1,1] (realizada por la subrutina PolyInt)
proporciona finalmente los pesos (h). Los listados de las subrutinas PolyPass y PolyInt se
incluyen en las figuras 4.37 y 4.38. Nótese el uso extensivo que se realiza en estas subrutinas y en
GaussLeg de funciones pertenecientes a la toolbox PolyFun de MatLab.
ELECTROSTÁTICA EN 2 DIMENSIONES 143
Orden de integración: n
Índices: i, j
Pesos: GaussH ( k) = wi ⋅ wj
siendo k = n ⋅ (i − 1) + j
Funciones de forma: N ( k, g) = N g (ai , aj )
Tabla 4.9.- Correspondencia entre las variables que aparecen en la subrutina klag2d2
y aquellas utilizadas en el apartado 4.4
function [z,h]=GaussLeg(n);
P=zeros(n+1);
P(1,n+1)=1;
P(2,n )=1;
for i=3:n+1
P(i,:)=(2*(i-1)-1)/(i-1)*[P(i-1,2:n+1) 0]-(i-2)/(i-1)*P(i-2,:);
end
w=zeros(n);
for i=1:n
z(i,1:i)=sort(((roots (P(i+1,:)))'+1)/2);
end
h=zeros(size(z));
for i=1:n
x=z(i,1:i);
for j=1:i
y=zeros(size(x));
y(j)=1;
pol=polypass(x,y);
pol=polyint(pol);
h(i,j)=polyval(pol,1)-polyval(pol,0);
end
end
end
function p = polypass(x,y)
% PolyPass(x,y) evalúa el polinomio p(x) que pasa por todos
% y cada uno de los puntos ( x(i), y(i) ),
x=x(:); y=y(:);
n=prod(size(x));
A=zeros(n);
for i=1:n, for j=1:n, A(i,j)=x(i)^(n-j);, end, end
p=A\y;
end
La subrutina ffl2d es la encargada de evaluar las funciones de forma y sus derivadas. El listado
que se incluye en la figura 4.39 permite seleccionar entre elementos de orden 1 y elementos de
orden 2.
a=(a(:))'; b=(b(:))';
if n==1
N= (1-a).*(1-b); Na= -(1-b); Nb= -(1-a);
N=[N; a .*(1-b)]; Na=[Na; +(1-b)]; Nb=[Nb; -a ];
N=[N; (1-a).*b ]; Na=[Na; -b ]; Nb=[Nb; +(1-a)];
N=[N; a .*b ]; Na=[Na; +b ]; Nb=[Nb; +a ];
elseif n==2
N= 4*(0.5-a).*(1-a).*(0.5-b).*(1-b); Na= 4*(-1.5+2*a).*(0.5-b).*(1-b); Nb= 4*(0.5-a).*(1-a).*(-1.5+2*b);
N=[N; 8*( a).*(1-a).*(0.5-b).*(1-b)]; Na=[Na; 8*( 1.0-2*a).*(0.5-b).*(1-b)]; Nb=[Nb; 8*( a).*(1-a).*(-1.5+2*b)];
N=[N;-4*(0.5-a).*( a).*(0.5-b).*(1-b)]; Na=[Na;-4*( 0.5-2*a).*(0.5-b).*(1-b)]; Nb=[Nb;-4*(0.5-a).*( a).*(-1.5+2*b)];
N=[N; 8*(0.5-a).*(1-a).*( b).*(1-b)]; Na=[Na; 8*(-1.5+2*a).*( b).*(1-b)]; Nb=[Nb; 8*(0.5-a).*(1-a).*( 1.0-2*b)];
N=[N;16*( a).*(1-a).*( b).*(1-b)]; Na=[Na;16*( 1.0-2*a).*( b).*(1-b)]; Nb=[Nb;16*( a).*(1-a).*( 1.0-2*b)];
N=[N;-8*(0.5-a).*( a).*( b).*(1-b)]; Na=[Na;-8*( 0.5-2*a).*( b).*(1-b)]; Nb=[Nb;-8*(0.5-a).*( a).*( 1.0-2*b)];
N=[N;-4*(0.5-a).*(1-a).*(0.5-b).*( b)]; Na=[Na;-4*(-1.5+2*a).*(0.5-b).*( b)]; Nb=[Nb;-4*(0.5-a).*(1-a).*( 0.5-2*b)];
N=[N;-8*( a).*(1-a).*(0.5-b).*( b)]; Na=[Na;-8*( 1.0-2*a).*(0.5-b).*( b)]; Nb=[Nb;-8*( a).*(1-a).*( 0.5-2*b)];
N=[N; 4*(0.5-a).*( a).*(0.5-b).*( b)]; Na=[Na; 4*( 0.5-2*a).*(0.5-b).*( b)]; Nb=[Nb; 4*(0.5-a).*( a).*( 0.5-2*b)];
elseif n>2
'No se han implementado elementos de orden superior a 2'
end
end
Ngauss=2;
[z,h]=gaussleg(Ngauss);
[ a, b]=meshgrid(z(Ngauss,:),z(Ngauss,:)); GaussXY=[a(:) b(:)];
[ha,hb]=meshgrid(h(Ngauss,:),h(Ngauss,:)); GaussH =ha(:).*hb(:);
[N,Na,Nb]=ffl2d(2,GaussXY(:,1),GaussXY(:,2));