Vous êtes sur la page 1sur 114

Aplicación del Método de Petrov-

Galerkin Local Libre de Malla a Problemas


Unidimensionales del Tipo C°-Edición Única

Title Aplicación del Método de Petrov-Galerkin Local Libre de Malla a


Problemas Unidimensionales del Tipo C°-Edición Única

Issue Date 2003-12-01

Publisher Instituto Tecnológico y de Estudios Superiores de Monterrey

Item Type Tesis de maestría

Downloaded 17/06/2018 03:24:32

Link to Item http://hdl.handle.net/11285/571310


INSTITUTO TECNOLÓGICO Y DE ESTUDIOS
SUPERIORES DE MONTERREY
CAMPUS MONTERREY
DIVISIÓN DE INGENIERÍA Y ARQUITECTURA
PROGRAMA DE GRADUADOS EN INGENIERÍA

TECNOLÓGICO
DE MONTERREY

APLICACIÓN DEL MÉTODO DE PETROV-GALERKIN


LOCAL LIBRE DE MALLA A PROBEMAS
UNIDIMENSIONALES DEL TIPO C

TESIS
PRESENTADA COMO REQUISITO PARCIAL
PARA OBTENER EL GRADO ACADÉMICO DE:
MAESTRO EN CIENCIAS
ESPECIALIDAD EN SISTEMAS DE MANUFACTURA

POR:

MILTON CARLOS ESTEVA SÁNCHEZ

MONTERREY, N. L. DICIEMBRE DE 2003


INSTITUTO TECNOLÓGICO Y DE ESTUDIOS
SUPERIORES DE MONTERREY
CAMPUS MONTERREY

DIVISIÓN DE INGENIERÍA Y ARQUITECTURA


PROGRAMA DE GRADUADOS EN INGENIERÍA

TECNOLÓGICO
DE MONTERREY

APLICACIÓN DEL MÉTODO DE PETROV-GALERKIN


LOCAL LIBRE DE MALLA A PROBLEMAS
UNIDIMENSIONALES DEL TIPO C°

TESIS

PRESENTADA COMO REQUISITO PARCIAL


PARA OBTENER EL GRADO ACADÉMICO DE
MAESTRO EN CIENCIAS
CON ESPECIALIDAD EN SISTEMAS DE MANUFACTURA

POR:

MILTON CARLOS ESTEVA SÁNCHEZ

DICIEMBRE 2003
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS
SUPERIORES DE MONTERREY
CAMPUS MONTERREY

DIVISIÓN DE INGENIERÍA Y ARQUITECTURA


PROGRAMA DE GRADUADOS EN INGENIERÍA

Los miembros del comité de tesis recomendamos que el presente proyecto de tesis

presentado por el Ing. Milton Carlos Esteva Sánchez sea aceptado como requisito

parcial para obtener el grado académico de Maestro en Ciencias con especialidad en:

SISTEMAS DE MANUFACTURA

Comité de Tesis:

Alex Elías Zúñiga, Ph. D.


Asesor

Sergio Gallegas Cázares. Ph. D. Carlos Nungara y Pérez, M.C.


Sinodal Sinodal

Federico Viramontes Brown, Ph. D


Director del Programa de Graduados en Ingeniería

Diciembre 2003
Dedicatoria

A mis padres Felipe y Teresa por darme la confianza y las herramientas necesarias

para luchar por lograr mis metas tanto personales como profesionales.

A mis hermanos León Felipe y Ornar Francisco por creer en mí y apoyarme en cada

uno de los proyectos que he emprendido.

A Synthia por todo el amor y cariño que he recibido en estos últimos años de mi

vida y por apoyarme en la realización de mis metas profesionales.

A Rodrigo, Javier, Alejandro, José Ángel y todos mis amigos por compartir tantos

buenos momentos y recibir siempre palabras alentadoras para seguir adelante.


Agradecimientos

A mi asesor, el Dr. Alex Elías Zúñiga por su guía y consejos durante el año dedicado

a la realización de esta tesis y especialmente por la confianza depositada en mí para

alcanzar las metas profesionales que me he propuesto.

Al Dr. Sergio Gallegos Cazares por su enorme dedicación y disposición para la

enseñanza como profesor y por su tiempo y atinados comentarios como sinodal de

esta tesis.

Al Ing. Carlos Nungaray Pérez por su participación en el comité de esta tesis y por

enriquecerla con sus acertados comentarios.

Al Departamento de Ingeniería Mecánica del ITESM y al ITESM/CONACYT por el

apoyo de beca para realizar mis estudios de maestría.

A mis compañeros y amigos Víctor, Nicolás, Ismael, Blanca y Esteban y a los demás

asistentes del Departamento de Ingeniería Mecánica por convivir conmigo y hacer

amena mi estancia en la maestría.


Resumen

En el presente trabajo se hace una implementación didáctica del método de Petrov-

Galerkin local libre de malla en la solución de problemas unidimensionales del tipo

C0; poniendo especial énfasis en el desarrollo de cada una de las etapas de

implantación del método tales como construcción de la función de aproximación,

selección de la función de prueba y generación del sistema de ecuaciones

algebraicas. También se presenta un algoritmo en donde se describe detalladamente

la generación paso a paso de los elementos que conforman a las matrices de rigidez

y a los vectores de fuerzas, lo cual permite tener entendimiento claro de la influencia

que las funciones de peso tienen en la solución del problema.

Todos los conceptos, etapas, procesos y algoritmos de implementación

computacional para ilustrar la aplicación de esta técnica numérica se llevan a cabo a

través de: la validación mediante "la prueba de la parcela" y con la solución de dos

problemas. Uno relacionado con los desplazamientos y esfuerzos en una barra

sometida a fuerzas concentradas y de cuerpo y el otro relacionado con un problema

unidimensional de transferencia de calor en donde se analiza una aleta de

enfriamiento.

I
Índice

Capítulo 1 Introducción 1
1.1 Definición de Métodos Libres de Malla 3
1.2 Características de los Métodos Libres de Malla 4
1.3 Objetivo de la Investigación 6
1.4 Estructura de la Tesis 7

Capítulo 2: El Método MLPG Aplicado a Problemas C0 9


2.1 Desarrollo de la Forma Débil 10
2.2 Obtención del Sistema de Ecuaciones 14

Capítulo 3: Aproximación por Mínimos Cuadrados Móviles 20


3.1 El Procedimiento MCM 22

Capítulo 4: Funciones de Peso 31


4.1 Funciones de Peso Comunes 31
4.2 Impacto de la Función de Peso en la Función de Aproximación 38

Capítulo 5 Implementación Numérica 43


5.1 Algoritmo General de Solución 43
5.2 Ejemplos Numéricos Unidimensionales 46
5.2.1 Prueba de la Parcela 46
5.2.2 Barra Sujeta a Fuerzas de Cuerpo y Carga Concentrada en su
extremo 50
5.2.3 Transferencia de Calor en Aleta de Enfriamiento 62

Conclusiones y trabajo a futuro 68


Conclusiones 68
Trabajo a futuro 70

Referencias 71

II
Apéndice A Programas en MatLab 72
Código A. 1 Cálculo de Funciones de Forma y su derivada 72
Código A.2 Cálculo de Aproximaciones MCM con diferentes tipos de
Funciones de Peso 74
Código A.3 Prueba de la Parcela I 78
Código A.4 Prueba de la Parcela II 79
Código A.5 Prueba de la Parcela III 81
Código A.6 Problema de Barras 82
Código A.7 Problema de Aleta de Enfriamiento 84

Apéndice B Aspectos Adicionales 87


B.l Integración Numérica. Cuadratura Gaussiana 87
B.2 Método de Residuos Pesados 92

III
índice de Figuras

Figura 1.1 (a) Discretización del dominio en el método de elementos finitos.


(b) Representación del domino en métodos libres de malla 4
Figura 2.1 Dominios de funciones de aproximación y prueba 15
Figura 2.2 Tipos de fronteras para el dominio local 17
Figura 3.1 Dominio de soporte de nodo y dominio de definición de la
aproximación MCM en el punto x 22
Figura 3.2 Triángulo de Pascal para dos dimensiones 24
Figura 3.3 Pirámide de Pascal para tres dimensiones 24

Figura 3.4 La función de aproximación u h (x) y los parámetros nodales uI en la


aproximación MCM 26
Figura 3.5 Funciones de forma típicas y sus derivadas, (a) Función de forma
oi, (b) Derivada de la función de forma do i /dx 30
Figura 4.1 Funciones de peso con radio normalizado, a) Wl: Spline cúbica;
W2: Spline cuarta; W3: Exponencial; W4: Spline cuarta b) W5: Gauss; W6:
De potencias; W7: Spline tres términos 35
Figura 4.2 Primera derivada de las funciones de peso con radio normalizado, a)
Wl: Spline cúbica; W2: Spline cuarta; W3: Exponencial; W4: Spline cuarta b)
W5: Gauss; W6: De potencias;W7: Spline tres términos 36
Figura 4.3 Segunda derivada de las funciones de peso con radio normalizado.
a) Wl: Spline cúbica; W2: Spline cuarta ; W3: Exponencial; W4: Spline cuarta
b) W5: Gauss; W6: De potencias; W7: Spline tres términos 37
Figura 4.4 Función de peso constante sobre todo el dominio y su aproximación
MCM resultante, a) Función de peso b) Aproximación MCM 39
Figura 4.5 Función de peso constante con soporte compacto y su aproximación
MCM resultante, a) Función de peso b) Aproximación MCM 40

IV
Figura 4.6 Función de peso continua y suave con soporte compacto y su
aproximación MCM resultante, a) Función de peso b) Aproximación MCM. .. 41
Figura 5.1 Algoritmo general de solución para el MLPG 45
Figura 5.2 Modelo de 9 nodos igualmente espaciados de barra de longitud /. ... 47
Figura 5.3 Barra empotrada sujeta a fuerza de cuerpo y concentrada 50
Figura 5.4 Dominio de la función de aproximación y de prueba para el modelo
de 4 nodos igualmente espaciados 52
Figura 5.5 Comparación entre el MLPG y la solución exacta de la variable
primaria para el modelo de 9 nodos igualmente espaciados 60
Figura 5.6 Comparación entre el MLPG y la solución exacta de la variable
secundaria para el modelo de 9 nodos igualmente espaciados 60
Figura 5.7 Comparación entre el MLPG y la solución exacta de la variable
primaria para el modelo de 16 nodos igualmente espaciados 61
Figura 5.8 Comparación entre el MLPG y la solución exacta de la variable
secundaria para el modelo de 16 nodos igualmente espaciados 61
Figura 5.9 (a) Aleta de enfriamiento de forma rectangular; (b) Modelo
unidimensional de la aleta de enfriamiento 62
Figura 5.10 Comparación de la variable primaria 9. MLPG 15a = nodos
igualmente distribuidos. MLPG 15b = nodos distribuidos aleatoriamente 66
Figura 5.11 Comparación de la variable secundaria dQ/dC,. MLPG 15a =
nodos igualmente distribuidos. MLPG 15b = nodos distribuidos
aleatoriamente 67
Figura 5.12 Comparación antes y después de refinamiento de la variable
secundaria d9/dC 67
Figura B.l Solución aproximada del desplazamiento de la barra obtenidas
mediante el método de colocación, Galerkin y Petrov-Galerkin comparados
con la solución exacta 99

V
índice de Tablas

Tabla 1.1 Algunos Métodos Libres de Malla y sus características principales. 6


Tabla 2.1 Procesos físicos modelados por la ecuación (2.1) para cuando c = 0.
Note que las condiciones de frontera esenciales son u r - TT y las condiciones

de frontera naturales vienen dadas por q =ff 12

Tabla 5.1 Comparación de la solución MLPG con la solución exacta 52


Tabla 5.2 Cálculo de la derivada de las funciones de forma, peso y f nodo) de la
ecuación (2.22) para el dominio de integración del nodo # 1 [O 2] 53
Tabla 5.3 Cálculo del primer renglón de la matriz de rigidez y el primer
elemento del vector de fuerzas nodales para el dominio de integración del nodo
#1 [02] 54
Tabla 5.4 Cálculo de la derivada de las funciones de forma, peso y f(nodo) de
la ecuación (2.22) para el dominio de integración del nodo # 2 [O 3] 54
Tabla 5.5 Cálculo del segundo renglón de la matriz de rigidez y el segundo
elemento del vector de fuerzas nodales para el dominio de integración del nodo
#2 [0 3] 55
Tabla 5.6 Cálculo de la derivada de las funciones de forma, peso y f(nodo) de
la ecuación (2.22) para el dominio de integración del nodo # 3 [03] 55
Tabla 5.7 Cálculo del tercer renglón de la matriz de rigidez y el tercer
elemento del vector de fuerzas nodales para el dominio de integración del nodo
#3 [0 3] 56
Tabla 5.8 Cálculo de la derivada de las funciones de forma, peso y f(nodo) de
la ecuación (2.22) para el dominio de integración del nodo # 4 [1 3] 56
Tabla 5.9 Cálculo del cuarto renglón de la matriz de rigidez y el cuarto
elemento del vector de fuerzas nodales para el dominio de integración del nodo
#4 [1 3] 57
Tabla 5.10 Comparación de la solución MLPG con la solución exacta 64

VI
Tabla 5.11 Norma de error e para los modelos de 9, 15 y 31 nodos 65

Tabla B. 1: Factores de peso y puntos de Cuadratura de Gauss para polinomios


de orden siete o menor 90

VII
Simbología

C Continuidad de función hasta la función misma. (9)

C1 Continuidad de función hasta la primera derivada. (31)

/7 Condiciones de frontera esenciales. (10)

<7 Condiciones de frontera naturales. (10)

Q Dominio total del problema. (10)

Qs Subdominio de acción de la forma débil local. (14)

Qx Dominio de definición de la aproximación MCM en el punto x. (22)

f Frontera total del problema. (10)

fu Frontera esencial del problema. (11)

Fq Frontera natural del problema. (11)

rsu Intersección de frontera natural con la frontera del subdominio Qs (16)

Fsq Intersección de frontera esencial con la frontera del subdominio Qs (16)

Fs Frontera del subdominio Os totalmente dentro de Q (16)

au Parámetro de castigo para la imposición de las condiciones de frontera


esenciales. (16)
u (x) Función de aproximación (trial function) discretizada. (22)

v(x) Función de prueba (test function). (11)

w(x-x¡) Función de peso en x con respecto al nodo x¡. (25)

(J) Vector de funciones de forma de nodos en el dominio de soporte. (27)

VIH
O,.v Vector de derivadas de las funciones de forma en el dominio de
soporte. (28)
Matriz de rigidez obtenida de integrales de dominio. (18)

K(bdy) Matriz de rigidez obtenida de términos de la frontera. (18)

fiodo) Vector de fuerzas nodales obtenido de integrales de dominio. (18)

f* bd> ' Vector de fuerzas nodales obtenido de términos de tontera. (18)

dI Distancia entre un punto .Y y el nodo x¡. (31)

/•/ Tamaño del dominio de soporte de la función de aproximación para el


nodo/. (31)
r¡) Tamaño del dominio de soporte de la función de prueba. (14)

as Parámetro adimensional de escalamiento. (32)

r Radio normalizado para definir funciones de peso. (32)

(#) Indica la página en donde el símbolo aparece por primera vez.

IX
Capítulo 1

Introducción

La solución de ecuaciones diferenciales ("ecuaciones diferenciales ordinarias" en

una dimensión, y "ecuaciones diferenciales parciales" en dos y tres dimensiones)

que modelan procesos físicos han sido siempre el reto de la ingeniería.

Desafortunadamente, sólo es posible resolverlas de forma analítica para aquellos

problemas cuyo dominio son formas sencillas y generalmente para problemas

lineales (i.e. ecuaciones diferenciales en donde la variable desconocida y sus

derivadas aparecen solamente como combinaciones lineales). Sin embargo, la

mayoría de los problemas de ingeniería ocurren en formas de dominio complejas, y

pueden contener no linealidades de la variable desconocida y sus derivadas. Para

resolver este tipo de problemas es necesario entonces desarrollar métodos numéricos

que permitan aproximar de manera precisa la solución.

Durante las últimas tres décadas se han desarrollado diversos métodos numéricos

debido a los gigantescos avances de la tecnología computacional. El método de

elementos finitos es uno de los métodos computacionales más usados mundialmente,

y ha sido aplicado en áreas tales como mecánica de sólidos, electromagnetismo,

transferencia de calor, mecánica de fluidos, entre otras. La característica esencial del

método de elementos finitos consiste en la discretización del dominio del problema

1
en elementos y el uso de funciones de interpolación para representar la solución de

forma continua ya sea globalmente o por elemento. A pesar de su eficiencia

computacional y versatilidad, el método de elementos finitos tiene algunas

deficiencias como continuidad limitada a través de las fronteras de los elementos,

dificultades en la generación de malla o remallado en problemas de propagación de

grieta, convergencia lenta o incluso divergencia en mallas fuertemente

distorsionadas o deformadas [1,2]. En años recientes, investigadores han prestado

especial atención a los métodos libres de malla como nuevas maneras de enfrentar

estas deficiencias.

Las características que hacen atractivos a los métodos libres de malla es su

flexibilidad y el potencial que poseen para evitar la gran labor humana que demanda

el método de elementos finitos para el proceso de construcción de mallas

complicadas. Y son especialmente útiles para problemas con discontinuidades y

fronteras móviles. En estos casos el principal objetivo de los métodos libres de malla

es atenuar la dificultad del malleo y remalleo mediante la adición o remoción de

nodos en el dominio. Así pues, los métodos libres de malla ofrecen las siguientes

ventajas: eliminación de distorsión de malla, facilidad en la construcción del modelo

y orden de continuidad mayor en el campo de solución (comparado con el método de

elementos finitos). Las desventajas de estos métodos es que de cierta manera

dependen de parámetros proporcionados por el usuario que afectan

considerablemente en la solución; además de que requieren más gasto

2
computacional que el requerido por el método de elementos finitos por ejemplo en la

generación de las funciones de forma.

Los métodos libres de malla han sido desarrollados en una gran variedad. La idea

inicial de estos métodos data a partir del "Smoothed Particle Hydrodynamics

niethod (SPH)" desarrollado para modelar fenómenos astrofísicos (Gingold y

Monaghan, 1977) el cual requería sólo de nodos para la interpolación de la variable

aproximada. No es hasta la publicación del "Dijffuse Element Method" por Nayroles,

Touzot & Villon (1992) en la que el estudio de los métodos libres de malla se

empieza a popularizar entre los investigadores para aplicarlo en áreas como

mecánica de sólidos y fluidos entre otras. Desarrollos posteriores incluyen el

"Element-Free Galerkin Method (EFG)" por Belytschko, Lu & Gu [3]; el

"Meshless Local Petrov-Galerkin Method (MLPG)" por Atluri & Zhu (1998); el

"Reproducing Kernel Particle Method (RKPM)" por Liu. Chen, Uras & Chang

(1996); el "Finite Point Method" por Eugenio Oñate (1996); el "Meshless Galerkin

Method using Radial Basis Function (RFB)" por Wendland (1999) entre otros. Con

la característica que no requieren de una malla predefinida para la interpolación de la

variable aproximada. La diferencia entre estos métodos radica en la técnica utilizada

para la interpolación de la función de aproximación. A pesar de que en estos

métodos no se requiere de una malla para la interpolación de la función de

aproximación y de prueba, el uso de "elementos" es inevitable ya sea para la

integración de la forma débil o de la energía.

3
1.1 Definición de Métodos Libres de Malla

Los métodos libres de malla, denominados en la literatura como Meshfree o

Meshless Methods, son aquellos métodos utilizados para establecer un sistema de

ecuaciones algebraicas para el dominio del problema sin el uso de una malla

predefinida. Estos métodos utilizan para resolver el problema un conjunto de nodos

posicionados tanto en el dominio del problema como en la frontera. Este conjunto de

nodos no forman una malla, lo cual significa que no es requerida ninguna

información de relación entre nodos, al menos para la interpolación de la variable de

campo (ver Figura 1.1). Dichos nodos deben ser colocados para cubrir todo el

dominio y la frontera concentrándose en las zonas en donde se requiera de mayor

precisión en la solución.

Nodos
Elementos
Triangulares

(a) (b)

Figura 1.1 (a) Discretización del dominio en el método de elementos fínitos. (b) Representación
del domino en métodos libres de malla.

1.2 Características de los Métodos Libres de Malla

Una vez definido el propósito de un método libre de malla queda entonces la

pregunta, ¿Qué característica califica a un método para considerarlo un método libre

4
de malla? El requerimiento mínimo es que no necesite de una malla predefinida para

la interpolación de la variable de campo. Por otro lado, un método libre de malla

ideal es aquél que no necesita de una malla en ninguna etapa del proceso de solución

del problema. Todos lo métodos reportados en la literatura no son realmente ideales

y pueden ser clasificados en alguna de las siguientes categorías:

• Métodos que necesitan de celdas de integración para evaluar las matrices del

sistema de ecuaciones obtenidas de la forma débil del problema. El método

libre de elementos de Galerkin [3] es uno de los métodos que pertenece a esta

categoría.

• Métodos que necesitan celdas de integración locales para evaluar las matrices

del sistema de ecuaciones. El método MLPG pertenece a esta categoría. Este

método se considera esencialmente libre de malla porque crear una malla

local es mucho mas sencillo que crear un malla para todo el dominio. Esta es

la razón principal de escoger este método para el desarrollo de esta tesis.

• Métodos que no requieren de una malla en lo absoluto, pero tienen el

problema de ser menos precisos. Los métodos de Colocación y Diferencias

Finitas pertenecen a esta categoría. En estos métodos el tipo de problema

físico es importante en la selección de los nodos para obtener resultados

estables y precisos. Este tipo de métodos poseen una ventaja significativa,

que no requieren de integración.

• Métodos de partículas, que requieren de predefinir las partículas para su

volumen o masa. Los métodos SPH pertenecen a esta categoría. Y sufren de

5
problemas en la imposición de las condiciones de frontera. Además, el

predefinir las partículas requiere de un cierto tipo de malleo.

En la Tabla 1.1 se presentan alguno de los métodos reportados en la literatura, y se

detallan sus características principales tales como el sistema de ecuaciones que

resuelven y el método de aproximación que utilizan para la variable de campo.

Tabla 1.1 Algunos Métodos Libres de Malla y sus características principales.

Sistema de Método de
Método Referencia ecuaciones a ser aproximación de la
resuelto variable de campo
Diffuse Element Aproximación MCM.
Nayroles(1992) Forma Débil
Method Método de Galerkin
Element-Free
Aproximación MCM.
Galerkin Method Belytschko(1994) Forma Débil
Método de Galerkin
(EFG)
Meshless Local Aproximación MCM.
Petrcn -Galerkin Atluri&Zhu(1998) Forma Débil Local Método Petrov-
Method (MLPG) Galerkin
Aproximación MCM.
Oñate(1996); Liszka
Representación por
Finite Point Method and Orkisz( 1980); Forma Fuerte
diferencias finitas
Jensen(1980)
(Series de Taylor)
Smooth Partióle Lucy(1977):Gingold Representación
Forma Fuerte
Hvdrodvnamics and Monaghan (1977) Integral
Reproducing Kernel Representación
Liu. W. K. (1993) Forma Débil y Fuerte
Particle Method Integral (RKPM)
Oden&Abani(1994);
Partition of Unity .
/7/7-clouds Armando & Oden Forma Débil
Aproximación MCM
(1995)
Partition of Unity Babuska & Melenk Partition of Unity.
Forma Débil
FEM (1995) Aproximación MCM
Point Interpolaron Liu. G. R. & Gu Forma Débil y forma
Point Interpolation
Method (1999) débil local
Boundary Node Mukherjee & Forma Débil y forma
Aproximación MCM
Methods Mukherjee(1997) débil local
Boundary Point Liu. G. R. & Gu Forma Débil y forma
Point Interpolaron
interpolation methods (2000) débil local
MCM = Mínimos Cuadrados Móviles

6
1.3 Objetivo de la Investigación

En el presente trabajo se presenta de forma didáctica cada uno de los conceptos,

etapas, procesos y algoritmos computacionales necesarios para aplicar el método de

Petrov-Galerkin local libre de malla en la solución de problemas unidimensionales

de) tipo C°.

1.4 Estructura de la Tesis

La tesis esta estructurada en forma secuencial para que el aprendizaje del método

Petrov-Galerkin Local libre de malla sea fácil de asimilar. A continuación se

presenta una breve explicación de cada capítulo.

Capítulo 2.- Se presenta el desarrollo de la forma débil de la ecuación diferencial

que modela algún proceso físico y la generación de las expresiones necesarias para

formar la matriz de rigidez y el vector de "fuerzas" nodales que formarán el sistema

de ecuaciones algebraicas a resolver.

Capítulo 3.- Este capítulo detalla el procedimiento para generar las funciones de

forma utilizadas en las expresiones de la matriz de rigidez y vector de "fuerzas"

nodales. Estas funciones de forma se generan mediante la aproximación por

mínimos cuadrados móviles (MCM).

Capítulo 4.- En la aproximación MCM es necesario utilizar una función de peso

para generar las funciones de forma. En este capítulo se presentan las características

7
de este tipo de funciones, las funciones que se reportan en la literatura y su impacto

en la forma de la solución del problema.

Capítulo 5.- En este capítulo se presenta la implementación numérica del MLPG

realizada mediante programas computacionales hechos en MatLab. Para validar el

método se realizan tres pruebas de la parcela. Además, problemas de elasticidad

lineal en barras y de transferencia de calor en aletas de enfriamiento son resueltos y

comparados con la solución analítica para validar el método.

Apéndice A.- En esta sección de la tesis se encuentran los programas

computacionales en MatLab utilizados para generar todas y cada una de las gráficas

y tablas presentadas en este trabajo.

Apéndice B.- El apéndice B presenta dos temas de importancia para el

entendimiento del MLPG. Como primera parte se presenta detalladamente el

proceso de integración numérica que es utilizado para generar las matrices de rigidez

y el vector de "fuerzas" nodales para la solución del sistema de ecuaciones

algebraicas. En la segunda parte de esta sección se describe el método de residuos

pesados, herramienta indispensable para el desarrollo de la forma débil de la

ecuación diferencial que modela el proceso físico del problema.

8
Capítulo 2

El Método MLPG Aplicado a Problemas C°

En este capítulo se describe el desarrollo del Método de Petrov-Galerkin Local Libre

de Malla (MLPG por su nombre en inglés) y su aplicación en la solución de

problemas C° unidimensionales (i.e. problemas modelados por ecuaciones

diferenciales ordinarias de segundo orden) en ingeniería.

La obtención de un sistema de ecuaciones para la solución aproximada de los

valores de la variable de campo //, la cual generalmente está relacionada con

desplazamientos en mecánica de sólidos, es posible al plantear matemáticamente la

forma débil de la ecuación diferencial que modela al problema físico en cuestión

utilizando para esto el método de residuos pesados. Por otra parte, la aproximación

por mínimos cuadrados móviles (Moving Least Squares Aproximation, MLS) es

utilizada para construir la aproximación a la solución conocida como función de

aproximación (triol function) de la variable de campo. La función de prueba (test

function) utilizada en el método de residuos pesados es seleccionada de un espacio

de funciones diferente al de la función de aproximación, a este proceso se le conoce

como el método de Petrov-Galerkin [4]. En éste método, las condiciones de frontera

esenciales son impuestas por el método de castigo (penalty method). Al sustituir las

funciones de aproximación y de prueba en la forma débil de la ecuación diferencial

9
permite construir un sistema de ecuaciones algebraicas similares al que se obtiene en

el Método de Elementos Finitos (FEM, por sus siglas en inglés). En este método los

elementos de la matriz de rigidez y del vector de fuerzas nodales se calculan

empleando la cuadratura de Gauss.

En el capítulo 5 se presentan detalladamente un problema de barras sometidas a

fuerzas concentradas y de cuerpo además de un problema de transferencia de calor

en aletas de enfriamiento para ilustrar la aplicación del MLPG en la solución de

ecuaciones diferenciales ordinarias lineales.

A continuación se describe la obtención de la forma débil de una ecuación

diferencial ordinaria lineal de segundo orden no homogénea.

2.1 Desarrollo de la Forma Débil

Considere el problema de encontrar la solución de la siguiente ecuación diferencial

[I]:

d du
, (2.1)
dx \ dx

la cual es válida en el dominio Q (O ^ ,Y ^ L) con frontera F, donde b y c son

parámetros del problema y a / se le conoce como la "carga". Estos parámetros

pueden estar o no en función de x. Las condiciones de frontera esenciales y naturales

de la ecuación (2.1) pueden ser especificadas como:

u = Tí en Fu , q - tf en Lq , (2.2)

en donde

10
í=* . (2.3)
ax

Note que Fu y f t| son las regiones de la frontera en donde la variable primaria u. y la

variable secundaria q. están dadas. Por lo tanto.

ruurq=r. (2.4)
La ecuación (2.1) modela el comportamiento de varios procesos físicos. En la Tabla

2.1 se listan algunos de estos procesos así como la interpretación física de sus

parámetros [5].

En diversos problemas ingenieríles es difícil conocer a priori la solución exacta de

las ecuaciones diferenciales que los modelan. Por esta razón, se busca obtener una

solución numérica que se aproxime a la solución exacta. En este contexto, el método

MLPG es empleado para obtener la solución aproximada de //. Aplicando la técnica

de residuos pesados a la ecuación (2.1) y ya que ;? es la función aproximada se

puede definir el residuo de la ecuación como:

. (2.5)
dx \ ax )

Multiplicando el residuo por una función de prueba v(x) (función de peso en el

método de residuos pesados) e integrando sobre todo el dominio se tiene (ver

Apéndice B.2):

''(«,)'"''
Í/.V dx
=O. (2.6)

11
Tabla 2.1 Procesos físicos modelados por la ecuación (2.1) para cuando c = 0. Note que las condiciones de frontera
esenciales son u _ = íí y las condiciones de frontera naturales vienen dadas por q = c¡.

Variable Primaria "Carga"


Proceso b Variable Secundaria
// /
?
EA (£=Módulo de Young.
1 . Deformación axial de Desplazamiento Fuerzas distribuida por
A=área de la sección Fuerza Interna
una barra longitudinal unidad de longitud.
transversal)
2. Deflexión transversal de Carga transversal
Deflexión transversal Tensión en el cable Fuerza axial
un cable distribuida
/zD 4 /128// (D=diámetro, Generación de flujo
3. Mujo a través de tubos Presión hidrustática Caudal
(.1= viscosidad) (generalmente cero)

4. Transferencia de calor Temperatura Conductividad térmica Generación de calor Flujo de Calor


5. Electroestática Potencial electrostático Constante dieléctrica Densidad de carga Flujo eléctrico

12
La función que se utilice para aproximar a u debe ser dos veces diferenciable y

además satisfacer las condiciones de frontera dadas por la ecuación (2.2). Además,

la función de prueba no debe ser singular en ningún punto del dominio. Estas

condiciones son fáciles de satisfacer para problemas unidimensionales pero en varias

dimensiones no resulta tan evidente. Por esta razón, se recurre entonces a una

formulación que tenga requerimientos más débiles para la función de aproximación.

Esto puede lograrse debilitando la ecuación (2.6) mediante integración por partes

para problemas unidimensionales o mediante la aplicación del teorema de la

divergencia para problemas en dos y tres dimensiones [1].

Así. la ecuación (2.6) puede ser integrada por partes para generar su forma débil la

cual viene dada como:

e dü dv t e \ , dú
b dx + cvudx - A'«-v - vb =0 (2.7)
J dx dx J J dx

Note que la integración por partes produce un término de frontera [vb(dñ/dx)~\{-. Este

término está relacionado con las condiciones de frontera naturales ya que contiene a

la variable secundaria b(díi/dx) que es parte de la forma débil. Así que sólo falta

satisfacer las condiciones de frontera esenciales. Los requerimientos de la función de

aproximación han sido debilitados, por lo que ahora sólo es necesario que sea

diferenciable una vez. Este decremento en los requerimientos de la función de

aproximación se ha logrado transfiriendo la diferenciación de la variable primaria u

a la función de prueba v. La forma débil dada en la ecuación (2.7) es el punto de

13
partida para obtener el sistema de ecuaciones discretos que permite generar una

solución aproximada del problema.

2.2 Obtención del Sistema de Ecuaciones

A diferencia del método de Galerkin en el cual las funciones de aproximación y de

prueba son tomadas del mismo espacio de funciones, el método de Petrov-Galerkin

toma las funciones de aproximación y de prueba de espacios de funciones diferentes

[4]. La función de aproximación es generada usando mínimos cuadrados móviles y

la función de prueba puede ser cualquier función conocida. Por ejemplo, una función

de peso de las que se utilizan en la aproximación por mínimos cuadrados cuyo

dominio está bien definido puede ser seleccionada como función de prueba [2].

Algunos dominios pueden ser círculos, elipses y rectángulos en 2D, esferas,

elipsoides y paralelepípedos en 3D. Estas funciones poseen un parámetro controlable

ro el cual representa la distancia del nodo / hasta donde la función se desvanece (i.e.

la función es cero). Esta propiedad de la función de prueba le da el carácter de

método local. La Figura 2.1 muestra la comparación de los dominios de la función

de prueba del nodo i y la función de aproximación del nodo j.

Se puede ahora definir el sub-dominio local para cada nodo como Qs, entonces la

integración de la forma débil puede ser restringida a Qs (ver Figura 2.1). Esto le da

la característica de un "verdadero método libre de malla" (tmly meshless meíhod) ya

que no es necesario definir elementos para la aproximación de la solución, ni para la

integración de la forma débil. Debido a las características anteriores, el método es

14
denominado Método de Petrov-Galerkin Local Libre de Malla (Meshless Local

Petrov-Galerkin Method, MLPG) [6].

Función de
Función de / Prueba del
Aproximación nodo /
del nodo j

Dominio de la función de Aproximación (2ry)

Figura 2.1 Dominios de funciones de aproximación y prueba.

Aplicando estos conceptos a la forma débil de la ecuación (2.1) la cual está

representada por la ecuación (2.7), entonces es posible escribir las integrales en el

sub-dominio Qs de la siguiente manera:

f dil dv r r dú
\b dx + \cviid\~ \fvdx- vb (2.8)
J dx dx J J dx

Como se mencionó anteriormente, esta ecuación fuerza a que las condiciones de

frontera naturales se cumplan debido al término que sale de la integración por partes.

Así mismo, es necesario asegurar que las condiciones de frontera esenciales se

642042

15
cumplan, lo cual se consigue empleando el método de castigo. Por lo tanto, la

formulación débil de la ecuación (2.8) puede ser escrita como:

clñ
\b clx + cvi'idx - /VY/.V + a L[(/? - // Vi vb (2.9)
J cix & J J- " V Jl
™ d\-

en donde a u es el parámetro de castigo utilizado para imponer las condiciones de

frontera esenciales y Fsu es el subdominio de frontera en donde u está especificada

(i.e. 11 es dato) localmente es decir, Fsu — Fs n Fu. Por lo que Fs puede ser

descompuesto de tres formas posibles:

rsu = F s n f u (intersección de Fs con F u ), (2.10)

F s q = r s n F q (intersección de Fs con Fq), (2.11)

Fs (cuando Qs esta completamente dentro de Q). (2.12)

Hay que notar que el dominio en la frontera Fs en una, dos y tres dimensiones

pueden estar representados como puntos, líneas y superficies respectivamente. En la

Figura 2.2 se muestran los conceptos de las ecuaciones (2.10)-(2.12) aplicados al

subdominio Qs en dos dimensiones.

Retomando la definición de la variable secundaria ecuación (2.3), podemos escribir

el último término de la ecuación (2.9) como:

=W, ( ,+k],. w/ +M A . (2.13)


Como la función se seleccionó para que ésta fuera nula en la frontera del

subdominio Fs. el último término del lado derecho de la ecuación (2.13) es cero, ya

16
que la función de peso v es cero. Finalmente la formulación local débil de la

ecuación (2.8) es:

dfi dv
\h d\ + ÍT//Í/.Y - \fvdx + ait [(íi - /7 )v], v - [v<yl s ~[^¡]\ v</ = 0 (2.14)
J c/v d\ J J " "

La sustitución de la función de aproximación y la función de prueba permitirá

formar el sistema de ecuaciones que es necesario para obtener la solución

aproximada del problema. Ya que es un método de Petrov-Galerkin, y considerando

que las funciones de aproximación y prueba provienen de diferentes espacios

funcionales, la forma débil de la ecuación (2.14) genera matrices de rigidez

asimétricas, a diferencia del método de Galerkin en el cual las matrices resultantes

son simétricas.

Nodo

Figura 2.2 Tipos de fronteras para el dominio local.

17
Aquí, la función de aproximación se obtiene al emplear la aproximación por

mínimos cuadrados móviles la cual puede ser escrita de forma similar a la que se

utiliza en el método de elementos finitos (ver capítulo 3); esto es

,(-Y)H, . (2.15)

En forma matricial la ecuación (2.15) puede ser escrita como:

11 " ( x ) = <J> ' ( x ) • ü , (2.16)

en donde <t>T son las funciones de forma similares a las del método de elementos

finitos, pero obtenidas de manera diferente y ü representa a los valores nodales

ficticios de la variable primaria u.

Derivando la ecuación (2.15) con respecto a x, se obtiene:

(2.17)
dx '

la cual puede ser escrita matricialmente como:

dfa d(f>2 d(f>n u-,


(2.18)
dx dx dx

Sustituyendo las ecuaciones (2.16) y (2.18) en la forma débil de la ecuación (2.14),

permite generar un sistema de ecuaciones de la forma:

j^(woí/o) j^(Wv) £ _ U(HOÍ/O) + ¿(Mr) _ Q n 19)

18
en donde el superíndice nodo está relacionado con las integrales de dominio y el

superíndice bdy con los términos de la frontera. Cada uno de los términos de la

ecuación (2.19) vienen dados en notación indicial como:

- \b ,/vi
„ (,„*/„> v do
r , ív ~.¡ ,i.. ,
(2.20)

(2.21)

'""""'
(2.22)

(2.23)

En forma matricial estas ecuaciones pueden ser escritas de la forma siguiente:

(2.25)

(2.26)

(2.27)

En el capítulo siguiente se presenta una descripción detallada de la aproximación

por mínimos cuadrados móviles y cómo son generadas las funciones de forma y sus

derivadas.

19
Capítulo 3

Aproximación por Mínimos Cuadrados Móviles

La aproximación por mínimos cuadrados móviles MCM (Moving Least Squares,

MLS por sus siglas en inglés) es considerada como una de las mejores técnicas para

la interpolación de datos así como para la generación de las funciones de forma en

los métodos libres de malla [2]. Lo que hace popular a la técnica MCM son las

siguientes características: 1) La función aproximada es continua y suave en todo el

domino del problema; y 2) es capaz de reproducir una aproximación con el orden de

consistencia deseado.

La generación de funciones de forma las cuales son empleadas para obtener la

solución aproximada de las ecuaciones (2.15) y (2.16) es uno de los temas más

importantes en la formulación de métodos libres de malla. El reto es construir

funciones de forma utilizando solamente nodos esparcidos en un dominio sin malla

predefinida para proveer la conectividad de los nodos.

Una buena metodología para la construcción de las funciones de forma debe

satisfacer los siguientes requerimientos básicos [1]:

1. Distribución arbitraria de los nodos.- La elección de la posición de los

nodos en el interior del dominio y en su frontera debe ser arbitraria o al

menos más flexible que la seguida en el método de elementos finitos.

20
2. Estabilidad.- El algoritmo desarrollado debe ser lo suficientemente robusto.

3. Consistencia.- La condición de consistencia es esencial para la convergencia

de los resultados numéricos cuando el espaciamiento nodal es reducido.

4. Dominio Compacto.- El dominio de la variable de aproximación debe ser

pequeño comparado con el dominio del problema. El cumplimiento de este

requerimiento lleva a la creación de matrices de rigidez bandadas, las cuales

pueden ser manipuladas con una buena eficiencia computacional.

5. Eficiencia Computacional.- El algoritmo computacional debe ser eficiente y

del mismo orden o menor que el del método de elementos finitos, ya que un

procedimiento computacionalmente costoso es impráctico sin importar qué

tan bueno sea.

6. Propiedad de la Función Delta de Kronecker.- Es recomendable, pero no

indispensable que la función de forma posea esta propiedad ya que se

simplifica la imposición de las condiciones de frontera esenciales. Sin esta

propiedad se adiciona costo computacional para imponer dichas condiciones.

7. Compatibilidad.- Idealmente la aproximación debe ser compatible a través

del dominio del problema. Este requerimiento es innecesario si se utiliza la

forma débil de residuos pesados.

A continuación se describe el procedimiento para la formulación de la ecuaciones

que permiten generar las funciones de forma y sus derivadas.

21
3.1 El procedimiento MCM

Considere un subdominio Qx que está en la vecindad del punto x y es denominado el

dominio de definición de la aproximación MCM para la función de aproximación en

el punto x, el cual esta localizado dentro del dominio del problema Q tal y como se

ilustra en la Figura 3.1 [7].

Dominio de Definición
Dominio de
Q,, cié la aproximación
Soporte del
MCM para la función
nodo y¡ \
de aproximación en el
punto x

Figura 3.1 Dominio de soporte de nodo y dominio de definición de la aproximación MCM en el


punto x.

La variable de campo en el dominio de definición esta dada por:

Vxef2x, (3.1)

y se utiliza para aproximar la función u en Qx, sobre un número aleatoriamente

localizado de nodos {xj}, 1=1,2,....N. En esta

22
pT(\) = [pi(\).p2(\) ........ p „,(*)] (3.2)

representa una base monomial completa donde p¡(x) ..... p,,,(x) son cada uno de los /;?

términos de la base. a(x) es un vector de coeficientes el cual está definido como:

a 7 '(x) = [fl,(x),<7 2 (x)........«„,(*)], (3.3)

en donde cti(x),ci:(x) ..... am(x) representan los coeficientes de la base monomial en

función de ,Y. Para la generación del vector de bases monomiales de la ecuación

(3.2) se utiliza el triángulo y la pirámide de Pascal para dos y tres dimensiones,

respectivamente. Un polinomio completo de orden / en el triángulo de Pascal es

aquel que tiene todos los elementos del triángulo desde el nivel 1 hasta el nivel / + 1.

Las Figuras 3.2 y 3.3 ilustran polinomios completos hasta de tercer orden. Algunos

ejemplos de bases monomiales lineales (/ = 1) para una, dos y tres dimensiones

pueden ser:

p r (x) = [l,.v].
(3.4)

p r ( x ) = [l,.v,v]. (3.5)

P r OO = [i.,,v,.-]. (3 6)
'

Ya que / es el orden del mayor polinomio completo entonces, se puede calcular la

longitud del vector p para una, dos y tres dimensiones como:

/;/ = / + ! unidimensional (3.7)

+ 2) .
m= bidimensional / 7 0^
2 (.->•<>)

23
(3.9)
/?7 = tridimensional

1 iNiveí i

X y Nivel ~

x2 xy
*
y2 Nivel 3

Nivel 4
x3 x2y xy?2 y3

Figura 3.2 Triángulo de Pascal para dos dimensiones.

Nivel 1

Nivel 2

Nivel 3

Nivel 4

Figura 3.3 Pirámide de Pascal para tres dimensiones.

El vector de coeficientes a(x) para cualquier punto dado es determinado

minimizando la diferencia entre la aproximación en ese punto y los parámetros

nodales n¡ de u en x=x¡. Los coeficientes a¡(x) son entonces calculados con la norma

L- la cual está definida como:

24
V ,
J/ = 2^w(x-x ' ^
í)[u f (x¡.x)-u¡
I=\
o bien

/=!
en donde la definición (3.1) ha sido empleada. Aquí x¡ es la posición del nodo /,

nY.Y-.Y/J es la función de peso asociada con el nodo / en un punto x y n es el número

de nodos en Qx para los cuales -\v(x-x¡) > 0.

La función de peso en la ecuación (3.10a) y (3.10b) puede ser teóricamente

cualquier función siempre y cuando satisfaga tres condiciones básicas que son:

w(x - x, ) > O en el dominio de acción (Positiva)


(3.11a)
ir(.Y - x¡ ) = O fuera del dominio de acción (Compacta) _, ,

ir(,Y - x¡ ) debe ser monotónicamente decreciente. ,-, * - , ^

Una discusión mas detallada sobre la elección de la función de peso se encuentra en

el capítulo 4.

Es importante notar que n¡ en la ecuación (3.10a) representa los valores nodales de

control y no los valores de la función de aproximación n'(x). En la Figura 3.4 se

distinguen estos dos valores para un caso unidimensional.

25
Figura 3.4 La función de aproximación u''(x) y los parámetros nodales u¡ en la aproximación 1V1CIM.

Como la ecuación (3.10) es una medida del error queremos que éste sea mínimo.

Para esto se requiere que:

cJ
=0 (3.12)

el cual resulta en el siguiente sistema de ecuaciones lineales:

A x
( )mxm a inxl( x ) = B inxn( x ) u / X ' (3.13)

o bien.

a(x) = A(x) (3.14)

donde las matrices A(x) y B(x) están definidas como:

(3.15)

(3.16)
B(x) = \\v(x - xl )p(jfj), w(x - x2 )p(-v2), ir(.Y - A-,,

26
Como un ejemplo del caso unidimensional con base monomial lineal, y empleando

las ecuaciones (3.15) y (3.16), se tiene:

1 .Y2 1 (3.17)
A(x) = ir(.v-. ir(.v - .Y2
A'-, Xj

\ 1
(3.18)
B(x) = ir(.Y - A-, ) "'(-Y-A-,,)
x -Y ?
\

La sustitución de la ecuación (3.14) en la ecuación (3.1) permite representar a la

función de aproximación de forma similar al método de los elementos finitos, esto

es:

(3.19)

donde.
(3.20)

Aquí la función de forma <P¡(x) está definida por:

(3.21)
7=1

Note que m es el número de términos de la base monomial p(x) el cual es

usualmente mucho menor que n. que es el número de nodos en el dominio de

definición Qx. Este requerimiento de n » ni previene la singularidad de la matriz A,

llamada en inglés weighted moment matrix, permitiendo que la inversa de la matriz

A exista.

27
Es necesario también obtener las derivadas espaciales de la función de aproximación

de la ecuación (3.19) y para esto es necesario calcular estas a partir de la función de

forma. Estas derivadas pueden ser obtenidas como:

0 / (.Y).. v =(p r A- 1 B / ).. v


(3.22)

en donde.

(3.23)
B ir v x
, (- ~
dx

y A'[x es calculada como,

-i A -i A A -i
..T = ~ A A..YA • (3.24)

De igual forma que en la ecuación (3.17) y (3.18) tendríamos para una base lineal en

una dimensión ,

" ¡i (3.25a)

d A 1 x
- - x, H'(A--A ; Í )
dx dx (3.25b)

Una característica interesante de las funciones de forma obtenidas con MCM es que

no poseen la propiedad de la función delta de Kronecker 0¡(x.¡) ^ du que resulta en

u'(x¡) ^u¡\ i.e., los parámetros nodales n¡ no son los valores nodales u (x/). Por esta

razón el MCM no es interpolación sino que es una aproximación a la función u (ver

figura 3.4). La aproximación de la función en el i-ésimo nodo nh(x¡) depende no sólo

del parámetro z// sino también de los parámetros u¡ a z/,,, parámetros que

28
corresponden a todos los nodos dentro del dominio de soporte del nodo /. Esta

propiedad hace que la imposición de las condiciones de frontera esenciales sea mas

complicada que en el método de elementos finitos. Varias técnicas han sido

desarrolladas para este propósito en los diferentes métodos libre de malla, tal es el

caso de multiplicadores de Lagrange en el método libre de elementos de Galerkin [3]

o el método de parámetros de castigo (penalty method) para el MLPG [1].

Una gráfica típica de funciones de forma y sus derivadas de MCM están dadas para

el dominio unidimensional de nueve nodos igualmente espaciados. La Figura 3.6

ilustra las funciones de forma para los nodos 1, 3 y 5. Se puede ver claramente

como las funciones de forma pueden alcanzar un valor máximo considerablemente

menor que 1. i.e. no poseen la propiedad de la función delta de Kronecker. Las

funciones de forma y sus derivadas fueron obtenidas utilizando la función de peso de

la ecuación (4.7) con a = 4, con una distancia de soporte /•/ = 1 y base polinomial

cuadrática. Los cálculos para obtener las gráficas fueron efectuados con el código

A. 1 del Apéndice A.

29
(a)

dtn-

(b)

Figura 3.5 Funciones de forma típicas y sus derivadas, (a) Función de forma </>,-, (b) Derivada de
la función de forma (l<f>/(L\.

30
Capítulo 4

Funciones de Peso

Las funciones de peso w(x-x¡) juegan un rol importante en los métodos libres de

malla ya que tienen un impacto directo en la forma de la función aproximada [8].

Además, deben ser generadas con base en las condiciones mencionadas en la

ecuación (3.11). Estas funciones deben ser diferentes de cero en la vecindad de x¡,

denominado el dominio de soporte del nodo /, con el propósito de generar un

conjunto de ecuaciones discretas dispersas. Esto es equivalente a decir que la

función de peso tiene un soporte compacto en el que w(x-x¡) = O fuera del dominio.

También, es necesario que w(x-x¡) sea positiva y decrezca monotónicamente cuando

||A--.Y/|| se incremente ya que cuando las derivadas de estas funciones son suaves su

integración numérica es fácil de evaluar. Es deseable que w(x-x/) sea suave ya que si

por ejemplo w(x-x¡) tiene continuidad C1 (i.e. la función es continua hasta la primer

derivada), entonces para una base polinomial, las funciones de forma <$>¡(x) también

deben tener continuidad C 1 . Por lo anterior la mayoría de los métodos libres de

malla utilizan funciones de peso con forma de campana [1].

4.1 Funciones de peso Comunes

Definamos ahora d¡ = \ \x-x¡\ \ la distancia entre los puntos x y x¡. Y sea /•/ el tamaño

del dominio de soporte del nodo /el cual se obtiene mediante:

31
(4
= «l s"
< /s ''>
donde as es un parámetro adimensional de escalamiento al que generalmente se le

asignan valores en el intervalo de 2.0 < a s < 3.0 [1]. dx es una distancia la cual es

determinada de tal manera que incluya un número suficiente de nodos para que la

matriz A de la ecuación (3.15) sea invertible en cualquier punto del dominio Ds.

Entonces podemos expresar a la función de peso en términos del radio normalizado r

definido como r = d¡/r¡.

A continuación se presenta un listado de las funciones de peso mas comunes

mencionadas en la literatura [1,2,8,9] expresadas como funciones de /-.

1. La función de peso spline cúbica (Wl):

2 -> 3 1
- 4r ~ + 4r para r<
3 2
4 -> 4 -> 1
- 4r + 4/'~ - rj para <r < 1
3 3 2 (4.2)
O para r > 1.

2. La función de peso spline cuarta (W2):

jl - 6r 2 + 8r3 - 3r4 para r< 1


[ O para r>\. (43)

3. La función de peso exponencial (W3):

a r <\ ....
(4.4)
O para r > 1.

32
4. La función de peso spline cuarta (W4):

(2 9 , 19 3 5 4
,
-\ I 'I A" A"
,
\ z^
, ,
1 I '/ f* I J "\
- r" + r' - r
f^ -» *^
para
*
r<1
(4 5)
O para r > 1. v • J

5. La función de peso de Gauss (W5):

/' < 1

O pa/'o /• > 1,

en donde c y k son constantes; c controla la forma de la función de peso y por

simplicidad k = 1 [2]. Una metodología para seleccionar un valor adecuado de c es

discutida por Belytschko en [3].

6. La función de peso de potencias con ct=l, 2.3,4 (W6):

O para r > 1.

1 . La función de peso spline de tres términos (W7):

íl-3/- 2 + 2 r 3 para r < 1


^
O para r>\. (4-8)

Para obtener las derivadas con respecto a x de las matrices A y B en las ecuaciones

(3.23) y (3.24) es necesario calcular la derivada con respecto a x de la función de

33
peso. Esta derivada se obtiene fácilmente utilizando la regla de la cadena. Por

ejemplo la derivada de la función W7 sería:

í ~> ^
(h\-¡ _ íh\'¡ dr _ J(-12r + 24r~ - \2rJ)signo(x -x¡) pora r<1
clx (ir íix \ O paro r >1 (4-9)

Para ilustrar el comportamiento de las funciones de peso, estas se grafican en

función del parámetro r. En la Figura 4.1 se muestran las gráficas de las funciones

de peso de las ecuaciones (4.1) a (4.7). Note que en la Figura 4.1 la función de peso

W4 dada por la ecuación (4.4) tiene forma muy similar a Wl dada por la ecuación

(4.1) pero tiene la ventaja de que no es una función compuesta. Esta función de peso

W4 ha sido empleada en muchas aplicaciones con resultados favorables [1]. Además

en la Figura 4.2 se muestra la primera derivada de las siete funciones de peso. Note

que las funciones son suaves en todo el dominio. En esta Figura 4.2 se puede

observar que el comportamiento de la función W4 es similar al de la función Wl. En

la Figura 4.3 se ilustra el comportamiento de la segunda derivada de las funciones de

peso en donde se nota que para Wl la función ya no es suave. En cambio, la segunda

derivada de la función W4 continúa siendo suave pero no se desvanece en la frontera

del dominio.

34
— WG
W3
W4

-1

(a)

— W6
W7

-1 -0.5 O 0.5

(b)
Figura 4.1 Funciones de peso con radio normalizado, a) Wl: Spline cúbica; W2: Spline cuarta;
W3: Exponencial; W4: Spline cuarta b) W5: Gauss; W6: De potencias; W7: Spline tres
términos.

35
—>W2
W3
1 W4

(a)

"W6
W7

(b)
Figura 4.2 Primera derivada de las funciones de peso con radio normalizado, a) Wl: Spiine
cúbica; VV2: Spiine cuarta; W3: Exponencial; W4: Spiine cuarta b) W5: Gauss; W6: De
potencias; W7: Spiine tres términos.

36
W1
X
•o — W2 1
W3
W"4

(a)

\
\
x
•o •W6
W7

(b)
Figura 4.3 Segunda derivada de las funciones de peso con radio normalizado, a) Wl: Spline
cúbica; W2: Spline cuarta ; W3: Exponencial; W4: Spline cuarta b) W5: Gauss; W6: De
potencias; W7: Spline tres términos.

37
4.2 Impacto de la Función de Peso en la Función de

Aproximación.

La selección de la función de peso w(x-x¡} afecta la aproximación resultante uh(x).

Para ilustrar mejor esta idea, considere los tres casos mostrados en las Figuras 4.4,

4.5 y 4.6 en donde la función u(x) es aproximada por nh(x) usando los valores

nodales de once nodos igualmente espaciados. Se utiliza una base polinomial lineal

p T =[l, .Y], y para cada caso, la correspondiente función de peso del nodo 6 es

graficada junto con la aproximación MCM resultante para todo el dominio.

En la Figura 4.4 se ve que la función de peso asociada con cada nodo es constante

sobre todo el dominio. La aproximación MCM para cada punto \ del dominio se

involucran a todos los nodos (n = 11 en la ecuación (3.19)) lo cual resulta en el

clásico ajuste lineal de datos por mínimos cuadrados. Para este caso, los coeficientes

a(x) ya no están en función de x sino que son constantes para cualquier punto del

dominio. Por lo tanto, se puede concluir que la dependencia de x de los coeficientes

a(x) está relacionada con la selección de la función de peso.

En la Figura 4.5, la función de peso asociada con cada nodo es constante pero con

soporte compacto, es decir, la función de peso es diferente de cero sobre un

subdominio centrado en el nodo. El tamaño del subdominio es seleccionado de tal

manera que sólo dos nodos (n = m = 2) contribuyan a la aproximación para cada

punto x del dominio.

38
1 tí
<« «T
e, B
••* ^
&s &
9

Aproximación w(x)
^ TI P p p p p
T] B o o o o o o o o o b k> *. Í3> i»
C 9 p
9 0 t>
0 P
0^
O- S o
3
a no- o
n p

1! p
o- o k>
Ko

~ tfí
"! <->• p
o w p OJ
X 3
g S
L; „
2. o p p
o> o- TJ TJ ^
O
a>
ñ' o ñ' p
bi O- oí
ín^ :os*®
6- 3
• n
— ¿ 0 -2- P
D. tn en
0
3
=' 0 p
o' ^j
^

0
VI p
B bo bo
Si
•o
o
o <D
p
¿D
i'
5- b
9
3 3
I e
a 3
3
ñ .*>
'Ji w(x)

Aproximación o p o p
o J^ b) bo
p
o
2. ó:
O- B
3
aa o

»
CA
"O
ffc
o w p
o- ° Ko
^ n
> i
•? I o
O te
x 3
§'»
&!
p
TJ *•
O
(O
2Í P
O- üi
ni 3

s3 H o
•B
£ú
O
^^
O

p
bo

p
¿o
3
a
n
5:

2
O
1.2

0.8

0.6

0.4

0.2

0.0 0.2 0.4 0.6 0.8 1.0

Posición (x)

(a)

0.0 0.1 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0

Posición (x)

(b)
Figura 4.6 Función de peso continua y suave con soporte compacto y su aproximación IVICM
resultante, a) Función de peso b) Aproximación MCM.

41
Esta función de peso genera "interpolaciones" lineales por tramos entre cada nodo

las cuales son similares a la interpolación lineal del método de elementos finitos; por

lo tanto la aproximación de la variable de campo no es suave (i.e. la primer derivada

es discontinua). El delimitar la función de peso mediante un soporte compacto para

que sólo algunos nodos vecinos se incluyan en la aproximación le da el carácter de

local al procedimiento.

En la Figura 4.6, la función de peso posee también un soporte compacto pero ahora

es una función suave, a = 4 en la ecuación (4.7), con un subdominio mayor de tal

manera que n > m. Así, la aproximación MCM resulta continua y suave a pesar de

que la base polinomial es lineal, es decir, la aproximación MCM hereda la

continuidad de la función de peso. Esta característica del método permite aumentar

el orden de la aproximación en aquellas regiones del dominio en donde queremos

tener una mejor aproximación a la solución utilizando una función de peso de orden

mayor en la región requerida.

El cálculo para la obtención de las gráficas de la aproximación MCM de las Figuras

4.4, 4.5 y 4.6 fueron generadas con el código A.2 del Apéndice A.

42
Capítulo 5

Implementación Numérica

En este capítulo, el Método de Petrov-Galerkin Local Libre de Malla desarrollado en

capítulos anteriores se aplica para resolver numéricamente problemas de ingeniería.

En la sección 5.1 se propone un algoritmo que ayuda a la implementación

computacional del método. La sección 5.2 presenta la solución de problemas

unidimensionales en tres subsecciones las cuales constan de una validación al

algoritmo computacional, un problema de elasticidad lineal en barras sujetas a

fuerzas de cuerpo y concentradas, y por último un problema de transferencia de calor

en aletas de enfriamiento.

5.1 Algoritmo General de Solución

Todo programa computacional se desarrolla a partir de un algoritmo que dicta la

metodología a seguir en la solución del problema. La implementación

computacional del MLPG puede ser generada de acuerdo al siguiente algoritmo [9]

el cual también es ilustrado en la Figura 5.1:

1) Se representa el dominio Q y la frontera F del problema mediante un

número finito de nodos M[/=l,2 ,M]. Se escogen la base polinomial y la

función de peso (tipo y radio /•/) de tal manera que la aproximación MLS esté

bien definida para la función de aproximación.

43
2) Se escoge el tamaño y la forma del subdominio local Qs y su correspondiente

frontera f s para cada nodo.

3) Se genera un ciclo sobre M nodos localizados dentro del dominio D y la

frontera F para:

• Determinar los puntos de cuadratura de Gauss x() en Qs y Fs

• Generar un ciclo sobre los puntos de cuadratura del paso anterior:

a) Determinar los nodos x¡ localizados en el dominio de

definición de la aproximación MLS para la función de

aproximación en el punto AV>, i.e., aquellos nodos con

M'fao) > 0.

b) Para aquellos nodos determinados en el paso a) calcular

$J(XQ) y su derivada espaciales (/>i.,{xo).

c) Se procede a la evaluación de las ecuaciones (2.24) a (2.27)

d) Ensamblar las contribuciones al sistema de ecuaciones

lineales.

• Termina el ciclo sobre puntos de cuadratura.

4) Resolver el sistema de ecuaciones resultante para los valores nodales de

control de la variable de campo: [K]u=f

5) Calcular el valor de la variable de campo z/ y sus derivadas utilizando los

valores nodales de control en el punto de análisis deseado.

44
Se seleccionan para MLS:
1) RepresentarQy T . = p, W j p 2 W i ...,p mW]

Función de peso

2) Se selecciona la forma y
3) Para cada nodo determinar los
tamaño de Qs para cada nodo. puntos de cuadratura \Q en fls y Fs.
Y evaluar las ecuaciones 2.24-27.

4) Resolver el sistema de ecuaciones


Ku=f.
5) Calcular el valor de u y su
derivada utilizando los valores
control en el punto de análisis
deseado.

Valores

Figura 5.1 Algoritmo general de solución para el MLPG.

45
5.2 Ejemplos Numéricos Unidimensionales

Antes de solucionar problemas particulares, es necesario primero validar el

algoritmo computacional. El mecanismo de validación es el mismo empleado en el

método de elementos finitos y se cubre en la sección 5.2.1. En las dos subsecciones

siguientes se resolverán problemas unidimensionales del tipo C°. es decir, problemas

en los que la función de la variable de campo sea continua y diferenciable una vez.

En la sección 5.2.2 se resuelve un problema de elasticidad lineal de barras sujetas a

fuerzas de cuerpo y cargas puntuales. Y por último, en la sección 5.2.2, se analiza un

problema de transferencia de calor en una aleta de enfriamiento.

5.2.1 Prueba de la Parcela

Para asegurar que la implementación del método funciona antes de aplicarlo a

resolver cualquier problema de ingeniería es necesario validarlo. La validación al

igual que en el método de elementos finitos se hace mediante lo que se conoce como

"prueba de la parcela". La prueba consiste en prescribir una solución exacta como

condiciones de frontera. El algoritmo pasa la prueba si se reproduce la solución

exacta en todos los nodos interiores del modelo. Las siguientes soluciones exactas

son utilizadas para la prueba de la parcela:

I. //-constante
II. H = .V (5.1)
III. z/ = r

46
Configuración del modelo y parámetros necesarios

Considere una barra uniforme de longitud /. La representación del dominio se hace

con 6, 9, 21, y 31 nodos igualmente espaciados. La Figura 5.1 muestra el modelo de

9 nodos.

1 2 3 5 9

á i h

Figura 5.2 Modelo de 9 nodos igualmente espaciados de barra de longitud /.

En la aproximación por mínimos cuadrados móviles una base polinomial lineal

pT = [1. x] debe ser capaz de reproducir exactamente soluciones de orden lineal o

menores. Por lo tanto este tipo de base puede ser utilizada para las pruebas I y II de

la ecuación (5.1). Similarmente la base polinomial cuadrática p T = [1. x, x:] debe ser

capaz de reproducir exactamente soluciones de orden cuadrático y menores. Por lo

tanto esta base es utilizada en la prueba III de la ecuación (5.1). El parámetro de

castigo se selecciona mediante un valor que es de tres a diez veces el orden del

número mas grande en la matriz de rigidez de la ecuación (2.20) para que no se

genere un mal condicionamiento de la matriz. Por lo que un parámetro de castigo de

a u = leo y la función de peso de la ecuación (4.7) con a = 4 son utilizados en las

tres pruebas. Como el orden del polinomio de función de peso escogida es 8 y el

orden máximo del polinomio de aproximación es de 2 para la prueba III, entonces el

47
polinomio a integrar es de orden 10, requiriendo al menos 6 puntos de Gauss para la

integración numérica. Para las pruebas, 8 puntos de Gauss fueron utilizados para

evaluar las integrales de las ecuaciones (2.20) y (2.22). Los códigos A.3, A.4 y A.5

del apéndice A fueron utilizados para realizar las pruebas I, II y III respectivamente.

I. Prueba de la Parcela I. Para ésta prueba, se asignan a los parámetros de la

ecuación (2.1) los siguientes valores: b = 1 y c = 0. Ya que u = constante = AT,

sustituyendo éstos valores en la ecuación (2.1) lleva a que / = 0. Las condiciones de

frontera esenciales en el nodo 1 (x = 0) y nodo N (x = I = 1) están dadas por:

ll = K,
(5.2)
U =K .
x=l=\

Esta prueba corresponde a un desplazamiento de cuerpo rígido de la barra (barra sin

carga) de magnitud K. Los valores de /•„ y r/, el tamaño del soporte de la función de

prueba y la función de aproximación respectivamente, son escogidos como /•„ = 2Ax

y /•/ = 1 como una primera corrida siendo Ax la distancia entre nodos. Para los

modelos de 6 y 9 nodos, el programa calculó la solución exacta para los valores

nodales de control e interpolados de la variable primaria y secundaria. Para los

modelos de 21 y 31 nodos, el programa falló para el cálculo de los valores nodales

de control ya que se pierde el carácter de localidad (i.e. todos los nodos participan en

la aproximación de la solución) pero los valores interpolados fueron los de la

solución exacta. El valor de r¡ fue cambiado a /•/ = SAx para los modelos de 21 y 31

nodos y con este valor el algoritmo calculó la solución exacta para los valores

48
nodales de control e interpolados de la variable primaria y secundaria. Por lo tanto el

programa es capaz de reproducir la solución exacta para los valores interpolados

pero los valores nodales de control dependen del parámetro /•/.

II. Prueba de la Parcela II. Para ésta prueba se utilizaron los mismos modelos de

la prueba anterior y se asignan los valores de los parámetros de la ecuación (2.1)

como b = 1 y c = 0. Si se sustituyen estos valores en la ecuación (2.1) y si se hace

que // = x/l = x entonces es fácil probar que / = 0. Las condiciones de frontera

esenciales en el nodo 1 (x = 0) y condiciones de frontera naturales en el nodo N

(.v = / = 1 ) están dadas por:

",=0=°'
,du (5-3)
o

Esta prueba es el caso de una barra uniforme con una carga puntual en el extremo.

La solución exacta para la variable primaria es el valor de la posición x del nodo y

para la variable secundaria es 1 para cualquier nodo. Todos los modelos calcularon

la solución exacta para la variable primaria y secundaria tanto para los valores

nodales de control como para los valores interpolados.

III. Prueba de la Parcela III. Para ésta prueba se utilizaron los modelos de la

prueba anterior y se asignan los valores de los parámetros de la ecuación (2.1) como

b = O y c = 1. Si se sustituyen estos valores en la ecuación (2.1) y si se hace que

u = (x/l)' = x' entonces es fácil probar que/= (x/l)' = x'. Una posibilidad para las

49
condiciones de frontera esenciales en el nodo 1 (.Y = 0) y las condiciones de frontera

naturales en el nodo N (x = I = 1) están dadas por:

u ( () = O,
(5 4)
h'<" =». '
Í/A
" .v=/..l

La solución exacta para la variable primaria es el valor de la posición ,Y del nodo al

cuadrado y para la variable secundaria es dos veces la posición en cualquier nodo. El

programa computacional reprodujo la solución exacta para la variable primaria y

secundaria tanto para los valores nodales de control como para los valores

interpolados en cada uno de los modelos propuestos. A continuación se presenta la

solución de un problema de elasticidad lineal.

5.2.2 Barra Sujeta a Fuerzas de Cuerpo y Carga Concentrada en

su Extremo

Considere la barra empotrada y uniforme de la Figura 5.2 donde A es el área de la

sección transversal, L es la longitud de la barra, E es el módulo de elasticidad del

material. f(x) es la fuerza de cuerpo y P es una carga concentrada.

Figura 5.3 Barra empotrada sujeta a fuerza de cuerpo y concentrada.

50
De acuerdo con la Tabla 2.1, este proceso físico se puede modelar con la siguiente

ecuación diferencial:

d(v Ádi'\ = /f = A-,


\ EA - 5)
<-.
(t(5
dx( d\) '

sujeta a las condiciones de frontera:

" „ = °-
(5 6)
* -
La solución analítica de la ecuación (5.5) que satisface las condiciones de frontera

(5.6) es:

11=
1 \\P+
1L ^
EA\( 2 (5.7)
dn 1
a -E P+l L2 I- Vi. (5-8)
dx A

Los datos del problema son A = I, E = 100, P = 2 y L = 3. Para obtener la solución

numérica con el MLPG de la ecuación (5.5) con las condiciones de frontera de la

ecuación (5.6) se utilizaron 4 modelos con 4, 9, 16 y 31 nodos igualmente

espaciados. Para los modelos se utilizó la función de peso de la ecuación (4.7) con

a = 4. base polinomial cuadrática p T = [1. A% x~] y un parámetro de castigo a u = leo.

Y además se seleccionaron los parámetros /•„ = 2A\ y r¡ = 8Ax (no excediendo la

longitud de la barra) para los cuatro modelos. La integración se realizó con 8 puntos

de Gauss. La Tabla 5.1 compara los resultados numéricos con los analíticos de la

variable primaria y secundaria para A- = 0, 1.5 y 3. El código A.6 del apéndice A fue

utilizado para el cálculo de la solución numérica de este problema.

51
Tabla 5.1 Comparación de la solución MLPG con la solución exacta.

Solución Mod. de Mod. de Mod. de Mod. de


Exacta 4 nodos 9 nodos 1 6 nodos 31 nodos
x=0 0 6.56E-06 6.56E-06 6.57E-06 6.57E-06
U x=1.5 0.091875 0.0916 0.0917 0.0919 0.0919
x=3 0.15 0.1494 0.1497 0.15 0.15
x=0 6.5 6.4482 6.2911 6.506 6.5014
a x=1.5 5.375 5.3013 5.3646 5.3735 5.3745
x=3 2 1 .9482 1.7911 2.006 2.0015

Función de Prueba Función de Aproximación


> = 2.0 r,= 3.0

Nodo 1

Puntos de
Cuadratura
Nodo 2 *

Nodo 3 *

Nodo 4 '

Figura 5.4 Dominio de la función de aproximación y de prueba para el modelo de 4 nodos


igualmente espaciados.

52
A continuación se presenta el desarrollo de los cálculos necesarios para obtener la

solución numérica para el modelo de 4 nodos. En la Figura 5.4 se ilustran los

dominios de las funciones de aproximación y de prueba para cada uno de los nodos

del modelo que detallan sobre que dominio debe hacerse la integración. Los valores

de las celdas de las tablas siguientes fueron obtenidos haciendo pequeñas

modificaciones a los códigos mencionados en capítulos anteriores y utilizando el

programa dado en el apéndice B. 1 de integración numérica. Cada una de las tablas

siguientes calcula el /-ésimo renglón del la matriz de rigidez y el /-ésimo elemento

del vector de fuerzas nodales.

Tabla 5.2 Cálculo de la derivada de las funciones de forma, peso yy<nodo) de la ecuación (2.22)
para el dominio de integración del nodo # 1 [O 2|.
Coord. Peso Fun. Derivada Fun. Forma
Punto /-(nodo)
Gauss Gauss Peso dv/dx d(/>,/dx
Gauss
xy wy v,
1 0.0397 0.1012 0.9984 -0.0793 0.004 [-1.4603 1.9206-0.46030.0]

"> 0.2033 0.2224 0.9593 -0.3942 0.0434 [-1.2826 -1.551 1 -0.2545 -0.0141]

j 0.4745 0.3137 0.7932 -0.7976 0.1181 [-0.9048 0.6887 0.3368 -0. 1208]

4 0.8166 0.3627 0.4822 -0.945 0.1428 [-0.5572 -0.01 19 0.6953 -0.1263]

5 1.1834 0.3627 0.1784 -0.6496 0.0766 [-0.3283 -0.3317 0.6483 0.01 17]

6 1.5255 0.3137 0.0306 -0.2231 0.0146 [-0.1492 -0.5268 0.5012 0.1748]

7 1.7967 0.2224 0.0014 -0.0258 0.0005 [-0.0206 -0.6414 0.3448 0.3173]

8 1.9603 0.1012 2.38e-6 -2.38e-4 4.74e-7 [0.0496 -0.6884 0.2281 0.4107]

53
Tabla 5.3 Cálculo del primer renglón de la matriz de rigidez y el primer elemento del vector de
fuerzas nodales para el dominio de integración del nodo #1 |0 2|.
is(noilo) A¡/•(nixlo)
Punto de
Cuadratura
K
\j Punto de
Cuadratura
l/
ecuación 2.20 ecuación 2.20
1 [ 1 1726-1 VJ2"1 0 3696 0 0] s [7 7146 7 81^ -1^ 273 -0 ~>lb">\

-> 111.243-13.5972.230.1233] 6 [ 1 .0446 3.6873 -3.5086 - 1 .223]

j |22.637-17.2328.42683.0219j 7 [0.01 19 0.3685 -0.1 981 -0.182]

4 [19.0960.4077-23.831 4.327] 8 1-0.0001 0.0017-0.0006-0.001]

El primer renglón de la matriz de rigidez queda entonces como:

KIJ = [62.9406 -20.0914 -48.6388 5.7896]

y el primer elemento del vector de fuerzas nodales es: fi= 0.4

Tabla 5.4 Cálculo de la derivada de las funciones de forma, peso y/"odo) de la ecuación (2.22)
para el dominio de integración del nodo # 2 [O 3|.
Coord. Peso Fun. Derivada Fun. Forma
Punto /•(nodo)
Gauss Gauss Peso dv/dv dfydx
Gauss
x,,, Wy v,
1 0.0596 0.1518 0.3681 0.8888 0.0033 [-1.4403 1.8806-0.4401 -0.0001]

•> 0.305 0.3336 0.5976 0.9448 0.0608 [-1.1471 1.2462-0.0512-0.0479]

j 0.7117 0.4706 0.9194 0.5414 0.3079 [-0.64150.13630.6519-0.1467]

4 1.2248 0.544 0.9504 -0.4329 0.6333 [-0.3055 -0.3586 0.6338 0.0304]

5 1.7752 0.544 0.5215 -0.9514 0.5036 [-0.0304 -0.6338 0.3586 0.3055]

6 2.2883 0.4706 0.1172 -0.516 0.1262 10.1467-0.6519-0.13630.6415]

7 2.695 0.3336 0.0063 -0.0758 0.0057 10.04790.0512-1.2462 1.1471]

8 2.9404 0.1518 1.18e-5 -7.84e-4 5.29e-6 f 0.0001 0.4401 -1.8806 1.4403]

54
Tabla 5.5 Cálculo del segundo renglón de la matriz de rigidez y el segundo elemento del vector
de fuerzas nodales para el dominio de integración del nodo #2 [O 3|.
y (nodo) •s(noclo)
Punto de K Punto de K
2.¡ 2j
Cuadratura Cuadratura
ecuación 2.20 ecuación 2.20
1 [-19.438 25.379 -5.939 -0.0013] 5 [1.571 32.802-18.561 -15.811]

-> [-36.1539.274-1.613-1.519] 6 [-3.5634 15.8303.310-15.578]


->
J [-16.344 3.4736 16.609 -3.7386] 7 [-0.1212-0.12943.1516-2.901]

4 [7.19438.4453-14.924-0.7148] 8 [0.000 -0.0052 0.0224 -0.0171]

El segundo renglón de la matriz de rigidez queda entonces como:

K 2| = [-66.852 125.071 -17.945 -40.273]

y el segundo elemento del vector de fuerzas nodales es: fi = 1.6408

Tabla 5.6 Cálculo de la derivada de las funciones de forma, peso yy* nodo> de la ecuación (2.22)
para el dominio de integración del nodo # 3 [O 3|.
Coord. Peso Fun. Derivada Fun. Forma
Punto /•(nodo)
Gauss Gauss Peso dv/dx dfydx
Gauss
*Q wy v,
1 0.0596 0.1518 1.18e-5 7.84e-4 1.07e-7 [-1.4403 1.8806-0.4401 0.00]

-i 0.305 0.3336 0.0063 0.0758 6.41e-4 [-1.1471 1.2462-0.0512-0.0479]

j-\ 0.7117 0.4706 0.1172 0.516 0.0392 [-0.64 1 5 0. 1 363 0.65 1 9 -0. 1 467]

4 1.2248 0.544 0.5215 0.9514 0.3475 [-0.3055 -0.3586 0.6338 0.0304]

5 1.7752 0.544 0.9504 0.4329 0.9178 [-0.0304 -0.6338 0.3586 0.3055]

6 2.2883 0.4706 0.9194 -0.5414 0.99 [0.1467-0.6519-0.13630.6415]

7 2.695 0.3336 0.5976 -0.9448 0.5373 [0.04790.0512-1.2462 1.1471]

8 2.9404 0.1518 0.3681 -0.8888 0.1643 [0.0001 0.4401 -1.8806 1.4403]

55
Tabla 5.7 Cálculo del tercer renglón de la matriz de rigidez y el tercer elemento del vector de
fuerzas nodales para el dominio de integración del nodo #3 |0 3|.
js(nodo) ws(n<xlo)
Punto de Punto de K3j
Cuadratura Cuadratura
ecuación 2.20 ecuación 2.20
1 [-0.0171 0.0224-0.00520.00] 5 [-0.7148-14.924 8.445 7.1943]

9 6 [-3.7386 16.6093.473-16.344]
[-2.93.1516-0.1294-0.1212]

3 [-15.5783.3109 15.83-3.5634] 7 [-1.5109-1.61339.274-36.15]

4 [-15.811 -18.561 32.802-3.563] 8 [-0.0013 -5.939 25.379-19.438]

El tercer renglón de la matriz de rigidez queda entonces como:

K 3| = [-40.2739-17.943 125.071 -66.852]

y el tercer elemento del vector de fuerzas nodales es: f$ = 2.9968

Tabla 5.8 Cálculo de la derivada de las funciones de forma peso y/ nodo) de la ecuación (2.22)
para el dominio de integración del nodo # 4 [1 3|.
Coord. Peso Fun. Derivada Fun. Forma
Punto /•(nodo)
Gauss Gauss Peso dv/dx d(/)/dx
Gauss
xy Wy V,
1 1.0397 0.1012 2.38e-6 2.38e-4 2.51 e-7 [-0.4107 -0.2281 0.6884 -0.0496]

•> 1.2033 0.2224 0.0014 0.0258 3.71e-4 [-0.3173 -0.3448 0.6414 0.0206]

3 1.4745 0.3137 0.0306 0.2231 0.0141 [-0. 1 748 -0.50 1 2 0.5268 0. 1 492]

4 1.8166 0.3627 0.1784 0.6496 0.1175 [-0.01 1 7 -0.6483 0.33 1 7 0.3283]

5 2.1834 0.3627 0.4822 0.945 0.3818 [0.1263-0.69530.01190.5572]

6 2.5255 0.3137 0.7932 0.7976 0.6284 [0.1208 -0.3368 -0.6887 0.9048]

7 2.7967 0.224 0.9593 0.3942 0.5966 [0.0141 0.2545-1.5511 1.2826]

8 2.9603 0.1012 0.9984 0.0793 0.2992 [0.000.4603-1.9206 1.4603]

56
Tabla 5.9 Cálculo del cuarto renglón de la matriz de rigidez y el cuarto elemento del vector de
fuerzas nodales para el dominio de integración del nodo #4 (1 3J.

K¡si nodo) ts-(nodo)


Punto de
Cuadratura
lJ Punto de
Cuadratura
A
4./
ecuación 2.20 ecuación 2.20
1 1-0.001 -0.00060.0017 -0.000 1J 5 [4.3272-23.831 0.4077 19.096]

•> [-0.1823-0.1981 0.36850.0119] 6 [3.02 1 9 -8.426 - 1 7.232 22.637]

j>-> (-1.2233-3.50863.6873 1.0446] 7 [0.12332.2306-13.597 11.243]

4 1-0.2762 -15.273 7.815 7.7346] 8 [0.000.3696-1.5422 1.1726]

El cuarto renglón de la matriz de rigidez queda entonces como:

K4j= [5.7896 -48.638 -20.091 62.94]

y el cuarto elemento del vector de fuerzas nodales es: f4 = 2.0381.

De esta manera la matriz de rigidez y el vector de fuerzas nodales de las ecuaciones

(2.20) y (2.22) quedan como:

62.94 -20.09 -48.63 5.78 0.4


-66.85 125.07 -17.94 -40.27 e(nodo) _ 1.64
K (nodo) (5.9)
-40.27 -17.94 125.07 -66.85 2.99
5.78 -48.63 -20.09 62.94 2.03

Restaría entonces evaluar la matriz de rigidez y vector de fuerzas nodales de las

ecuaciones (2.21) y (2.23) respectivamente. Como se puede apreciar en la Figura 5.4

sólo para los nodos 1 y 2 la función de prueba es diferente de cero en la frontera

esencial x = 0. Si a = leo, y observando que:

57
v'A=[l 0.3164 O 0], O 7 '=[l O O 0] y d
® =[-1.5 2 -0.5 0], (5.10)
dx

los cuales se obtuvieron al aplicar las ecuaciones (4.7), (3.21) y (3.22) evaluadas en

.Y = 0. Así, la ecuación (2.25) queda como:

1 0 0 0 -1.5 2 -0.5 O
0.3164 0 0 0 0.6328 -0.1582 O O (5.11)
K( =a
O 0 0 0 O O 0 0
O 0 0 0 O O 0 0

Y simplificando se llega a:

1 0 0 0
0.3164 0 0 0
(5.12)
O 0 0 0
O 0 0 0

Por otro lado sabemos que íl = O , tf = 2 yv evaluado en la frontera natural x = 3

es v = [O O 0.3164 1]T; entonces la ecuación (2.23) queda como:

Fs =[2v] = [0 O 0.6328 2]T , (5 .13)

generando así el sistema de ecuaciones:

I- ú — If ((nodo)
"0í'cf' + f ^Í3!v) = Q (5.13)

Quedando entonces los valores nodales de control Ufic como:


(5.14)
ur¡c = [6.56e-6 0.0617 0.1177 0.1494]r

Para obtener el valor real del desplazamiento y del esfuerzo sólo resta evaluar la

función de forma y su derivada en la coordenada deseada x = O, 1.5 y 3. Haciendo

esto obtenemos los valores reportados en la Tabla 5.1 en la cual se nota que los

58
resultados son bastante cercanos a la solución analítica, a pesar de que sólo se

utilizaron 4 nodos para representar el dominio del problema.

En las Figuras 5.5 a 5.8 se ilustra como el MLPG reproduce la solución exacta tanto

para la variable primaria como para la secundaria ya que éstas son polinomios de

tercer y segundo orden respectivamente. Hay que notar que la respuesta es suave en

todo el dominio tanto para el desplazamiento como para el esfuerzo en comparación

con el método de elementos finitos que para una interpolación cuadrática como la

que se propuso generaría una función lineal por tramos para el esfuerzo.

59
Desplazamiento de la Barra

• Exacta
o MLPG

Figura 5.5 Comparación entre el MLPG y la solución exacta de la variable primaria para el
modelo de 9 nodos igualmente espaciados.

Esfuerzo en la Barra

Exacta
o MLPG

0.0 0.5 1.0 1.5 2.0 2.5 3.0

Figura 5.6 Comparación entre el MLPG y la solución exacta de la variable secundaria para el
modelo de 9 nodos igualmente espaciados.

60
Desplazamiento de la Barra

- Exacta
MLPG

0.0 0.5 1.0 1.5 2.0 2.5 3.0

Figura 5.7 Comparación entre el MLPG y la solución exacta de la variable primaria para el
modelo de 16 nodos igualmente espaciados.

Esfuerzo en la Barra

- Exacta
MLPG

Figura 5.8 Comparación entre el MLPG y la solución exacta de la variable secundaria para el
modelo de 16 nodos igualmente espaciados.

61
5.2.3 Transferencia de Calor en Aleta de Enfriamiento

Considere el problema de transferencia de calor en una aleta de enfriamiento de

forma rectangular como se ilustra en la Figura 5.9a, en donde A es el área de la

sección transversal, P es el perímetro, ir es el ancho, / es la longitud, y / el espesor.

Si se supone que no hay flujo de calor en la dirección v. el problema puede ser

modelado como un caso unidimensional como se ilustra en la Figura 5.9b.

(a) (b)
Figura 5.9 (a) Aleta de enfriamiento de forma rectangular; (b) Modelo unidimensional de la
aleta de enfriamiento.

La ecuación diferencial que modela este fenómeno físico es [10]:

__d2T + h ,T_T )= Q
2 +
dx kt (5.15)

sujeta a las condiciones de frontera:

T .v=0
= TP"'víl '

=0
(5.16)

62
en donde T es la temperatura, h el coeficiente de convección, k la conductividad

térmica, T, la temperatura ambiente, y 7},,,m/ la temperatura en la pared.

Si se introducen los siguientes cambios de variable:

i
7/2
f (5-17)
pared ~ ' x ' kl '

la ecuación (5.15) puede ser escrita en forma diferente como:

<I20 ,
~ ^2+/r^= ° (5 18)
'

sujeta a las condiciones de frontera:

"=° (5.19)
d
* =o-

La solución analítica [10] de esta ecuación diferencial viene dada por:

cosh(///) ' ^ 20)

d9 sinh(/// - //C)
H = = -¿u ' .
dC cosh(///)

La solución numérica MLPG de este problema es analizada utilizando 4 modelos;

tres con 9. 15. y 31 nodos igualmente espaciados y un modelo con 15 nodos

distribuidos aleatoriamente tal y como se ilustra en la Figura 5.10. Para resolver

numéricamente el problema se tomó un valor de // = 4 y / = 1. La función de peso

utilizada para obtener la solución numérica de la ecuación (5.18) está dada por la

ecuación (4.7) con a = 4 y base polinomial cuadrática pT = [1, A% .Y"]. Se utilizaron

63
los parámetros /•„ = 2A\ y r¡ = 8Ax. La integración es realizada con 10 puntos de

cuadratura de Gauss y un parámetro de castigo a u = leo. La Tabla 5.10 compara los

resultados numéricos con los analíticos a distancias de C= O, 0.5 y LO de los

modelos de nodos igualmente distribuidos. El código A.7 del apéndice A fue

utilizado para el cálculo de la solución de este problema. Todos los modelos tuvieron

buenos resultados y mejoraron con el incremento de nodos.

Tabla 5.10 Comparación de la solución MLPG con la solución exacta.

Solución Mod. de Mod. de Mod. de


Exacta 9 nodos 15 nodos 31 nodos
¿=0.0 1.0 1.00 1.00 1.00
z ¿=0.5 0.13776 0.1376 0.1378 0.1378
¿=1.0 0.36618 0.0369 0.0378 0.0366
¿=0.0 -3.99731 -4.2715 -4.0877 -3.9984
dO/d¿; ¿=0.5 -0.53124 -0.5311 -0.5291 -0.5320
¿=1.0 0.0 0.0475 0.0747 -0.0041

Debido a que la solución exacta no es un polinomio, la solución MLPG no

reproduce la solución exacta. Es necesario entonces tener una medida del error, las

normas de la ecuación (5.21) y (5.22) son utilizadas para cuantificarlo [10].

1 M (5.21)
^-I \®MLPG ~ 9exacta )
i=\

M
e
H = MLPG exacta
ta )
M'
(5.22)

64
gp soiuiuiop so| gnb ojsa uoo opuapBq ( c l ' £ BjnSij JSA) uoispsjd JOUSLU gp uoi§3.i
EI U3 SOpOU SOp UOJEUOplpE 9S UplOnjOS B! JEJOfaiU EJBJ ' UB09SJ9JUI 3S SEUadE UOl§3J
ES3 U9 sopou so[ 3p Eqarud gp uopunj B| ap soiuiuiopqns so| anb B /( uoi§94 BSS
U9 9JU3lUBpldBJ BiqiUBO BUBpUnOSS 3[qBUBA B| 9nb B • y, > J? > O UO|§94 B[ U9 3JSIX3
anb sopou 9p oju9iiuBpBds9 joXeui |B 3ju3iu|Bdpuud sqgp as ojsg •[ >j>
B[ U9 OUIOO BSp3jd UBJ S9 OU yí > J7 > Q UOI§9J B| U9 BUBpUn99S 9|qBUBA B| BJBd
OdllAI uppnjos B| 9nb BJjsn[i 3ju9uiBJB|o [ [-g Ban§ij Bq - sopinquisip 9ju9uiBuojB9|B
Á [Bngj sopou gi gp oppoui pp 3p/Qp Jod opBjuss9jd94 JOJBO 9p ofny pp X
^ BUBuiud 9|qBUBA B[ 9p upionqujsip B| uo9 BPBX9 uppnjos B[ 9p uopBJBduioo Bun
U33Bq U'g X QI'S SBJiioij Bq •sopinqiajsip 9ju9iu[BnS¡ sopou ¡_\ 9p oppoui un 3p so[
UOJ9HJ \Vg = 1.1 X X^l = ".1 SOJJ9lUBJBd SO] 9p S9JOJBA SOq '9JU9UIBIJOJE9JB SOpBpBdS9
SOpOU g[ UOO OppOUI Un OpUBZlJ|jn 9JU9lUBA9nU O|A[OS9J 9S BUI3|qOjd OIUSILU
:.0l Xei6I90'0 :.0l Xób'O -.01 X 6 c ' I »!>
r.0l XCOt-81'0 r-Ol X69T r .0l Xc098'9 o¿
SOpOU [£ 0|3 l>ppOl\i sopou ¿I 3p o|opo[\ sopou 5 ap O|3poiv .10.1.10 ap IHU.ION
•sopou so|apoiu so| .10.1.10
S9 oppoui p opuBno gXnuiuisip .10.1.19 9p GUIJO u
B[ BqBJ9dS9 9S OUIO3 X "SOI.IOJ9BJSIJBS LÍOS SOpBJ[llS9J SO"] '[ |'C B|qBJ^ B| U9 LIBJU9S3.ld
9S SOpBJ|IlS9J SOq -gg = IAJ 3p JO|BA UI1 BJBd SBpB|I19[B9 UOJ911J H¿ /( Oj SBLUJOU
•oiuiuiop pp o§JB[ o| B sopinquisip 9ju9LU|Bn§i so;und sp ojguinu un 59 JA] 9puop ug
las funciones de peso se intersequen en regiones mas grandes. El cálculo con este

nuevo modelo se realizó utilizando un valor para los parámetros /•„ = 2zlv y r¡ = SA\

de un modelo de 19 nodos igualmente distribuidos. La Figura 5.12 ilustra la

comparación de los modelos antes y después del refinamiento. La adición de dos

nodos al modelo mejora considerablemente la aproximación MLPG.

Los ejemplos numéricos expuestos en este capítulo validan al MLPG como una

herramienta efectiva para la solución de problemas en ingeniería. Una posible

desventaja al utilizarlo es la dependencia de la solución en los parámetros de tamaño

de soporte para las funciones de aproximación y de prueba que son introducidos por

el usuario. Y es ahí en donde radia una línea más de investigación en estos métodos.

1 2 6 11 15

o.s «;

X
07 ^A

06 \ A

\A E>acta
O 5 \A » MLPG 15a
"~\. A MLPG 15b

0.4 VA

03 *X£ A

02

O O
00 01 02 03 0.4 0.5 06 07 0.8 09

Figura 5.10 Comparación de la variable primaria 0. MLPG 15a = nodos igualmente


distribuidos. MLPG 15b = nodos distribuidos aleatoriamente.

66
1 2 11

05

0.0 _ d -tf A fl-ft •?-

O
0.0 0.1 0.2 0.3 0.4 0.5 0.9 1.0
-0.5

-1.0

O — Exacta
» -2.0 MLPG 15a
O -•- MLPG15b
'=" -2.5

-3.0

-3.5

-4.0

-4.5

Figura 5.11 Comparación de la variable secundaria d6/d¿;. MLPG 15a = nodos


igualmente distribuidos. MLPG 15b = nodos distribuidos aleatoriamente.

-D • •-
1 2 13 17
05

00
0.0 0.1 0.2 03 0.5
-05

•- -1 O
_o
ra Exacta
O -1 5
o> MLPG antes de refinamiento
13 MLPG después de refinamiento
0-20

Figura 5.12 Comparación antes y después de refinamiento de la variable secundaria

67
Conclusiones y Trabajo a Futuro

Conclusiones

El Método de Petrov-Galerkin Local Libre de Malla (MLPG) aplicado a problemas

unidimensionales del tipo C° ha sido presentado en forma detallada en este trabajo

en donde se describen cada uno de los conceptos y procedimientos necesarios para el

desarrollo y comprensión del método. Empezando con la formulación débil de la

ecuación diferencial gobernante, construcción de las funciones de aproximación y de

prueba, la descripción de la generación del sistema de ecuaciones de las matrices de

rigidez y vectores fuerza y terminando con la solución numérica de problemas.

Cabe mencionar que en las expresiones de la matriz de rigidez y el vector de fuerzas

nodales que se obtienen a partir de la formulación débil de la ecuación diferencial

aparecen términos adicionales. Uno de ellos, generado por el método de castigo, es

necesario para satisfacer las condiciones de frontera esenciales pero tiene como

desventaja costo computacional adicional. Sin embargo, éste se justifica al poder

atacar problemas en los que otros métodos no son efectivos.

La solución numérica del problema depende fuertemente del domino de soporte de

las funciones de aproximación y de prueba (r/ y r0 respectivamente) para que el

proceso de aproximación por mínimos cuadrados, técnica con la cual se generan las

funciones de forma, esté bien definida. Estos parámetros son de suma importancia y

deben ser seleccionados por el usuario.

68
Las funciones de forma obtenidas mediante MCM, a diferencia de las generadas por

el método de elementos finitos, requieren de una cantidad considerable de

operaciones para obtenerlas, especialmente con la inversa de la matriz A. Además de

que estas funciones no poseen la propiedad de la delta de Kronecker.

La selección de la función de peso es otro aspecto importante en la obtención de la

solución aproximada ya que impacta considerablemente en su forma. Además, es la

responsable de darle un nivel de continuidad mayor a las funciones de forma, es

decir, las funciones de forma heredan el nivel de continuidad de las funciones de

peso seleccionadas.

El algoritmo computacional presentado en este trabajo se validó mediante "la prueba

de la parcela" y se resolvieron problemas de elasticidad y transferencia de calor

utilizando programas computacionales en MatLab. Los resultados numéricos

obtenidos fueron comparados con la solución analítica. La norma de error utilizada

muestra convergencia tanto para la variable primaria como para la secundaria si los

valores de los parámetros fueron correctamente seleccionados (tamaño del dominio

de soporte y definición, parámetro de castigo para la imposición de las condiciones

de frontera esenciales y función de peso) ya que éstos impactan fuertemente en la

solución.

Finalmente, con este trabajo se presentan en forma clara y concisa los pasos que

deben seguirse para aplicar el método de Petrov-Galerkin local libre de malla en la

solución de problemas unidimensionales del tipo C°, lo cual no se encuentra

disponible detalladamente en la literatura relacionada con estos métodos.

69
Trabajo a Futuro

El trabajo que aún falta por realizar una vez que ya se tiene dominado el método

consiste básicamente en extender la aplicación de éste a los tipos de problemas para

los cuales los métodos libres de malla fueron creados. Para ello pueden citarse las

siguientes oportunidades de desarrollo:

• Aplicación del método de Petrov-Galerkin local libre de malla a problemas

unidimensionales de elasticidad no-lineal. En especial a modelar

numéricamente el fenómeno de suavizamiento en elastómeros (Rubber

E/asticin'} y comparar los resultados de la simulación con datos

experimentales de laboratorio.

• Aplicación del método de Petrov-Galerkin local libre de malla en problemas

bidimensionales o tridimensionales presentando todas las técnicas

adicionales necesarias a las presentadas en este trabajo para la solución de

problemas de elasticidad no-lineal.

• Otro tema interesante es el estudio de la aplicación de estos métodos a los

problemas que se presentan en la nanotecnología (específicamente en la

modelación numérica de nano tubos de carbón). La modelación de la

dinámica molecular está encontrando en los métodos libres de malla una

herramienta poderosa para resolver problemas.

70
Referencias
1. Liu G. R..(2002): Mesh Free Methods: Moving beyond the Finite Element Method,
CRC Press.

2. Atluri S. N. y Shen S. (2002): The Meshless Local Petrov-Galerkin (MLPG)


Method, Tech Science Press.

3. Belytschko T., Lu Y. Y. y Gu L.(1994): Element-Free Galerkin Methods,


International Journal for Numérica/ Methods in Engineering, volumen 37, pp
229-256.

4. Hughes Thomas J. R. (1987-2000): The Finite Element Method, Linear Static and
Dynamic Finite Element Analysis, Dover

5. Reddy J. N.,(1993): An introduction to the Finite Element Method, Second


Edition, McGraw-Hill.

6. Atluri S. N. y Zhu Tulong (2000): New Concepts in Meshless Methods,


International Journal for Numérica! Methods in Engineering, volumen 47, pp
537-556.

7. Atluri S. N., Kim H.-G. y Cho J. Y. (1999): A critical assessment of the truly
Meshless Local Petrov-Galerkin (MLPG) and Local Boundary Integral Equation
(LBIE) methods. Computational Mechantes, volumen 24, pp 348-372.

8. Dolbow John y Belytschko T. (1998): An introduction to Programming the


Meshless Element Free Galerkin Method, Archives of Computational Methods in
Engineering. volumen 5, número 3, pp 207-241

9. Atluri S. N. y Zhu T. (1998): A new Meshless Local Petrov-Galerkin (MLPG)


approach in computacional mechanics, Computational Mechantes, volumen 22,
pp 117-127.

10. Down R. Phillips: Meshless Local Petrov-Galerkin Method for Bending


Problems, National Aeronautics and Space Administration NASA/TM-2002-
211936.

11. Hutton David V.(2003) : Fundamentáis of Finite Analysis, McGraw-Hill

12. Chapra Steven C., Gánale Raymond P. (2002): Numérica! Methodsfor Engineers.
Fourth Edition, McGraw-Hill

71
Apéndice A

Programas en MatLab

En este apéndice se encuentran todos los programas utilizados en los capítulos

anteriores. Los programas están hechos para ser ejecutados en MatLab y cuentan con

etiquetas explicando los pasos mas importantes.

CÓDIGO A.1 Cálculo de funciones de forma y su derivada

%Programa para calcular Funciones de Forma


%par;\ utilizarse en el método: MLPG

% Coordenadas de los nodos igualmente espaciados


xn=linspace(0.1.9):
nnodes=length(xn);

%Base polinomial cuadrática para el MLS


syms x
pol=[l \x A 2]:
dpol=dift"(pol.x);
ngrad=length(pol):

% Detenninando la longitud (Rj) del


% dominio de soporte de cada nodo j.
dinax=8:
deltax=xn(2)-xn(l):
din = dmax*deltax*ones(l.nnodes):

%Discretizando el dominio para hacer la gráfica


xx=linspace(0.1.51):

% Ciclo sobre cada punto xx para realizar el calculo de la


% función de forma
forj = l:length(xx)
xg = xx(j):
% Detenninando la distancia entre cada nodo y la posición xg
dif = xg*ones( 1 .nnodes)-xn:
% Calculando el valor de las funciones de peso y su derivada
\v=zeros( nnodes):
d\v=zeros( nnodes):
P=zeros(nnodes,ngrad);
for i=l:nnodes
d = ahs(dif(i)):
dddx=sign(dif(i)):
Rj=dm(i);

72
ifd<=Rj:
w < U ) = (l-((d A 2)/(Rj A 2))) A 4:
dw(i.i)=4*((l-((d A 2)/(Rj A 2))) A 3)*(-l)*(Rj A (-2))*2*d*dddx:
el se d>Rj:
w(i.i) = 0.0:
chvfi.i )=().():
end
polev_n=subs(pol.x.xn(i)):
f'or k= 1 :ngrad
P(i.k)=polev_n(k):
end
end
B=P'*\v:
A=B*P:

Bx=P'*d\v:
Ax=Bx*P;

Ai=inv(A):
Aid=-Ai*Ax*Ai:

pole\ •_p=subs(pol.x.xg):
dpole\ _p=subs(dpol.x.xg):

PHl=polev_p*Ai*B;
DPHI=dpolev_p*Ai*B + polev_p*Ai*Bx + polev_p*Aid*B:
"/¿Obteniendo datos de los nodos 1, 3. 5 para la gráfica

phi3(j)=PHI(3):
phi5(.j)=PHI(5):
dphil(.j)=DPHI(l):
dphi30)=DPHI(3):
dphi5(j)=DPHI(5);
end

%Haciendo la gráfica de la función de forma y sus derivada.


plot(xx.phil)
hold
plot(xx.phi3)
plot(xx.phi5)
grid
figure
plot(xx.dphil)
hold
plot(xx.dphi3)
plot(xx.dphi5)
arid

73
CÓDIGO A.2 Cálculo de aproximaciones MLS con diferentes
tipos de funciones de peso.
% Programa para obtener las gráficas de las Figuras
% 4.3.^4.4 y 4.5

% Coordenadas de los nodos


xn=linspace( 0.1.11);
nnodes=length(xn):
% Valores nodales a aproximar
ul=|0:.04;.05:.14:.15;.145:.14:.12;.l;.05;.04]:
%Base polinomial lineal para el MLS
syms \
pol=[lx]:
dpol=difí'(pol.x);
ngrad=length(pol):
% Determinando la longitud (Rj) del
% dominio de soporte de cada nodo j.
dmax=10: % Para la Figura 4.3
%dmax=l; % Para la Figura 4.4
%dmax=2.v % Para la Figura 4.5

deltax=xn(2)-xn(l):
dm = dmax*deltax*ones(l.nnodes):
%Discretizando el dominio para hacer la gráfica
xx=linspace(0.1.55):
% Ciclo sobre cada punto para realizar el calculo de la
% función de forma
for j = l:length(xx)
xg=xx(j);
% Determinando la distancia entre cada nodo y la posición xg
dif = xg*ones( 1 .nnodes)-xn:
% Calculando el valor de las funciones de peso y
% su derivada
\v=zeros(nnodes):
dw=zeros( nnodes):
P=zeros(nnodes.ngrad):
for i= 1 :nnodes
d = abs(dif(i)):
dddx=sign(dif(i)):
Rj=dm(i):
ifd<=Rj:
% Para la Figura 4.3 y 4.4
w(i.i)= 1:
dw(i.i)=0:
% Para la Figura 4.5
%w(i.i) = (l-((d A 2)/(Rj A 2))) A 4:
%dw(i.i)=4*((l-((d A 2)/(Rj A 2))) A 3)*(-l)*(Rj A (-2))*2*d*dddx:
el se d>Rj:
w(i.i) = 0.0:
dw(i.i)=0.0:
end
polev n=subs(pol.x.xn(i));
for k=l:ngrad
P(i.k)=pole\_n(k):
end
end
B=P'*w:

74
A=B*P:

Bx=P'*d\v;
Ax=Bx*P:
Ai=inv(A):
Aid=-Ai*Ax*Ai:

pole\_p=subs(pol.x.xg):
dpolev_p=subs(dpol.x.xg):

PHI=polev_p*Ai*B:
DPHI=dpolev_p*Ai*B + polev_p*Ai*Bx + polc\ p*Aid*B:
%()bten¡endo datos para la gráfica
ux(j)=PlH*ul:
dux(j)=PHI*uI:
end
%Haciendo la gráfica de la aproximación
plot(xx.ux)
gris

Programa utilizado para los ejemplos numéricos del capitulo 5.

CÓDIGO A. 3.1 Subrutina de adquisición de datos :


fuiíction [data.xn.vRo.vRj.Los.rig]=EntradaDatos(j)
% Subrutina de datos de entrada
nnd=input('Nuniero de nodos en el dominio? ');
rig=input('Cual es la rigidez de la barra (EA)?'(;
r=input('Igiialniente espaciados ? (S or N) '):
ifr='S'
lim=input('Vector de longitud del dominio? ');

el se
xn=input('l eclea el vector de posiciones de los nodos '):
end
r=input('Mismo Ro y Rj para todos los nodos? (S or N) ');
ifr=='S'
Ro=input('Radio de la función de prueba (Ro)? '):
Rj=input('Radio de la función de aproximación (Rj)? '):
\ Ro=ones( 1 .nnd)*Ro:
vRj=ones(l.nnd)*Rj:
el se
vRo=input( 'Teclea el vector de Ros '):
vRj=input('Teclea el vector de Rjs '):
end
Wf=input('Función de peso a utilizar: l)De potencias alpha=4'):
data=[nnd Wf]:
Los=zeros(nnd.2):
Los( 1: l.l:2)=[xn( 1 ) xn( 1 )+vRo( 1)]:
l.os(nnd:nnd.l :2)=[xn(nnd)-vRo(nnd) xn(nnd)]:
tor i=2:nnd-l
liml=xn(i)-vRo(i):
Hm2=xn(i)+\Ro(i):
ifliml<=xn(l)
Los(i.l)=xn(l):
el se

75
Los(i.l)=liml:
eiid
if Iim2>=\n(nnd)
Los(i.2)=xn(nnd):
else
Los(i.2)=lini2:
end
end

CÓDIGO A.3.2 Subrutina para el cálculo de funciones de forma:

% Rutina para calcular la función de forma y su derivada para el punto de Gauss


% especificado
function [PHI.DPHI|=FuncionForma(vRj.xn.data.XQ)
nnodes=data( 1):
vvft=data(2):
%Base polinomial para el MLS
syms x
% pol=[l x]; % Para Prueba de la Parcela I.II
pol=[l x xA2]; % Para Prueba de la Parcela III. barra y Aleta de enfriamiento
dpol=diff(pol.x):
ngrad=length(pol);
% Determinando la distancia entre cada nodo y la posición xg
dif = XQ*ones( 1 .nnodes)-xn:
% Calculando el valor de las funciones de peso y
% su derivada
vv=zeros(nnodes):
d\v=zeros( nnodes);
P=zeros(nnodes.ngrad);
for i= 1 :nnodes
d = abs(dif(i)):
dddx=sign(dif(i)):
Rj=vRj(i):
ifd<=Rj:
[pes.dpes]=FuncioiiPeso(wft.d.dddx.Rj);
w(i.i) =pes:
dw(i.i)=dpes:
else d>Rj:
w(i.i) = 0.0:
dw(i.i)=0.0:
end
pole\_n=subs(pol.x.xn(i));
for k= 1 :ngrad
P(i.k)=polev_n(k);
end
end
B=P'*w:
A=B*P:
Bx=P'*dw;
Ax=Bx*P:
Ai=inv(A):
Aid=-Ai*Ax*Ai:
polex _p=subs(pol.x.XQ);
dpole\_p=subs(dpol.x.XQ):
PHI=pole\j*Ai*B:

76
DPHI=dpole\ ji*Ai*B + polev_p*Ai*B\ + polev_p*Aid*B:

CÓDIGO A.3.3 Subrutina para el cálculo de funciones de peso:

function [\v.dvv]=FuncionPeso(wft.d.dx.Rj):
% función para calcular la función de peso
%F-unción de peso de Potencias con alpha=4
w=(l-((d A 2)/(Rj A 2))) A 4:
d\\=4*((l-((d A 2)/(Rj A 2))) A 3)*(-l)*(Rj A (-2))*2*d*d\;

CÓDIGO A.3.4 Subrutina para cálculo de puntos de cuadratura

% Rutina para calcular las coordenadas cartesianas


% de los puntos de Gauss en el subdominio de cada nodo
function [XqsJ=PuntosCuadratura(Lim.QG)
% Valores de cuadratura de Gauss para
%6.8 y 10 puntos
ifQG=6
gauss=[-0.93246 0.17132:
-0.66120 0.36076:
-0.23861 0.46791:
0.23861 0.46791:
0.66120 0.36076:
0.93246 0.17132]:
elseifQG==8
gauss=(-0.96029 0.101229:
^-0.796666 0.222381:
-0.525532 0.313707:
-0.183435 0.362684:
0.183435 0.362684:
0.525532 0.313707:
0.796666 0.222381:
0.96029 0.101229];
elseifQG==10
gauss=[-0.97390656.6671334E-02:
-o78650633 0.1494514:
-0.67940960.2190864:
-0.4333954 0.2692667;
-0.14887440.2955244:
0.1488743 0.2955243:
0.4333954 0.2692666:
0.67940950.2190863;
0.86506330.1494513:
0.9739064 6.6671357E-02]:
end
a=Lim(l):
b=Lim(2):
% Convirtiendo coordenadas y pesos del espacio natural al
% espacio cartesiano
fori=l:QG
Xqs(i.l)=((a+b)/2)+((b-a)/2)*gauss(i.l);
Xqs(i.2)=((b-a)/2)*gauss(i.2);
end

77
CÓDIGO A.3 Prueba de la Parcela I

% Programa Principal para el Método Local Petrov-Galerkin


% en una dimensión. PRUEBA DE LA PARCELA 1
i—1:
[data.xn.x Ro.\ Rj.Los.Rig]=EntradaDatos(i):
nnd=data( 1):
wrt=data(2):
% Ciclo para evaluar los términos de la matriz de rigidez
% provenientes de la integración en el dominio
Knode=7.eros(nnd):
fnode=zeros(nnd. 1):
QP=input('Cuantos puntos de cuadratura para la integración? '):
for i= I :nnd
lim=Los(i:i.l:2);
[Xqs]=PuntosCuadratura(lim.QP);
forj=l:QP
xq=Xqs(j.l):
wg=Xqs(j.2):
[PHI.DPHI]=FimcionFonna(vRj.xn.data.xq);
dif=\q-\n(i):
r=abs(dif):
rd\=sign(dif):
ifr<=vRo(i);
[w.dw]=FuncionPeso(wft.r,rdx,vRo(i)):
else r>Rj:
\v= 0.0:'
dw=0.0:
end
% Evaluando la ecuación 2.20 con c=0
Knode(i:i.l:nnd)=Knode(i:i.l:nnd)+((Rig*dw*wg)*DPHl):
fc=0; % Fuerza de cuerpo, f=0
fhode(i)=fnode(i)+(fc*w*wg): % Evaluando ecuación 2.22
end
end

%Pidiendo las condiciones de frontera esenciales


\fe=input('Posición de nodo de frontera esencial? ');
ud=input('Cual es el valor de la condición de frontera esencial? '):
xfn=input('Posición de nodo de la otra frontera esencial? '):
qd=input('Cual es el valor de la otra frontera esencial? '):
% Calculando el parámetro de castigo para imponer
% las condiciones de frontera esenciales
alpha=le6:
% Evaluando los términos de la matriz de rigidez de la
% frontera esencial y natural del problema
wfe=zeros(nnd. 1):
[PHlí.DPHIf|=FuncionForma(vRj.xn.data.xfe):
for i= 1 :nnd
dife=xfe-xn(i):
r=abs(dife):
rdx=sign(dife):
difn=xfn-xn(i):
ni=abs(difn);
rndx=sign(difn):
ifr<=vRo(i):
|we.dwe]=FuncionPeso(wft.r.rdx.vRo(i)):

78
elser>\Ro(i):
we= 0.0:
dwe=0.0:
end
ii'ni<=vRo(i):
| wn.dwn |=l-unción Peso(\vft.rn.rndx.\Ro( i)):
else rn>vRo(i):
\vn= 0.0:
dwn-0.0:
end
\vfe(i)=\ve:
wfh(i)=\\n:
end

Kbdyl=alpha*(wfe*PHIf)-(wfe*DPHIf):
ibdyl=(alpha*ud*wfe):
Kbdy2=alpha*(wfn'*PHIf)-(wfh'*DPHIf):
fbdy2=(alplia*ud*wfh'):
% Preparando el sistema de ecuaciones para la solución
% de los valores ficticios del desplazamiento
K=Kbdy 1 +Kbd\ 2+Knode:
f=thode+fbdy 1 +fbd> 2:
ufíc=K\f:

CÓDIGO A.4 Prueba de la Parcela II

% Programa Principal para el Método Local Petrov-Galerkin


% en mía dimensión. PRUEBA DE LA PARCELA II
i=l:
[data.xn.\Ro.vRj.Los.Rig]=EntradaDatos(i):
nnd=data( 1):
wñ=data(2):
% Ciclo para evaluar los términos de la matriz de rigidez
% provenientes de la integración en el dominio
Knode=zeros(nnd):
thode=zeros(nnd. 1):
QP=input('Cuantos puntos de cuadratura para la integración? '):
tbr i=l:nnd
lim=Los(i:i.l:2):
[Xqs]=PuntosCuadratura(lim,QP);
forj=l:QP
xq=Xqs(j-l):
\vg=Xqs(.j.2):
[PHLDPHIl=FuncionFornia(vRj.xn.data.xq):
dif=xq-xn(i):
r=abs(dit):
rdx=sign(dif):
ifr<=vRo(i):
|w.dwJ=FuncionPeso(wft.r.rdx.vRo(i)):
else r>Rj:
\\= 0.0;
d\\=0.0:
end
% Evaluando la ecuación 2.20 con c=0
Knode(i:i. 1 :nnd)=Knode(i:i. 1 :nnd)+((Rig*dw*wg)*DPHI):

79
% Evaluando la fuerza de cuerpo
ic=0:
fnodet i )=thode( i)+(fe* w* wg):
end
end
%1'idiendo las condiciones de frontera esenciales v naturales
xfe=input('Posicion de nodo de frontera esencial? '):
ud=input('C'ual es el valor de la condición de frontera esencial? '):
xfn=input('Posieión de nodo de frontera natural? '):
qd=input('Cual es el valor de la condición de frontera natural? '):

% Calculando el parámetro de castigo para imponer


alpha=le6:
% Evaluando los términos de la matriz de rigidez de la
% frontera esencial y natural del problema
wfe=7.eros(nnd. 1):
[PHIf.DPHIfl=FuncionForma(vRj.xn.data.xfe):

for i= 1 :nnd
dife=xfe-\n(i):
r=abs(dife):
rdx=sign(dife):
difh=xfn-xn(i):
ni=abs(difn):
mdx=sign(difn):
ifr<=\Ro(i):
[vve.dwe]=FuncionPeso(wft.r.rdx.v r Ro(i)):
el se r>vRo(i):
we= 0.0:
dwe=0.0:
end
if m<=vRo(i):
[wn.dwn]=FuncionPeso(wft.rn.rndx.vRo(i));
else m>vRo(i):
wn= 0.0:
dwn=0.ü:
end
wie(i)=we:
\vfn(i)=wn:
end

Kbdy=alpha*(wfe*PHIf)-(wfe*DPHIf);
fbdv=(alpha*ud*v\fe)+(qd*wfn'):
% Preparando el sistema de ecuaciones para la solución
% de los valores ficticios del desplazamiento
K=Kbdy+Knode:
f=fnode+fbdv:
ufic=K\f:

% Calculando los valores reales del desplazamiento


for i=l:nnd
[PHI.DPHI]=FuncionForma(vRj.xn.data.xn(i));
ureal(i)=PHI*ufie:
esf(i)=DPHI*ufic:
end
ureal=ureal'
esf=esf

80
CÓDIGO A.5 Prueba de la Parcela III

% Programa Principal para el Método Local Petrov-Galerkin


% en una dimensión. PRUEBA O LA PARCLI.A III
i=l:
|data.xn.vRo.vRj.Los.Rig]=HntradaDatos(i):
nnd=data( 1):
\\ft=data(2):
cc= 1:
% Ciclo para evaluar los términos de la matriz de rigidez
% provenientes de la integración en el dominio
Knode=zeros(nnd):
fnode=zeros(nnd.l):
QP=input( 'Cuantos puntos de cuadratura para la integración? ');
f'or i=l:nnd
lim=Los(i:i.l:2|:
[Xqs]=PuntosCuadratura(lim.QP):
f'or j=l:QP
xq=Xqs(j.l):
wg=Xqs(j.2);
[PHI.DPH]]=FuncionForma(v'Rj.xn.data.xq):
dif=xq-xn(i):
r=abs(dif);
rdx=sign(dil):
if'r<=vRo(i):
[ w.d\v]=FuncionPeso( wft,r.rdx.vRo( i)):
else r>Rj:
w= 0.0:'
dw=0.0:
end
%E valuando la ecuación 2.20 con c=l
Knode(i:i.l:nnd)=Knode(i:i.l:nnd)+((Rig*dw*DPHI)+(cc*w*PHI))*wg:
% Evaluando la fuerza de cuerpo
fc=xq"2:
fhode( i )=fnode( i)+(fc*w* wg):
end
end

%Pidiendo las condiciones de frontera esenciales y naturales


xfe=input('Posición de nodo de frontera esencial? ');
ud=input('Cual es el valor de la condición de frontera esencial? '):
xfn=input('Posición de nodo de frontera natural? '):
qd=input('Cual es el \alor de la condición de frontera natural? ');

% Calculando el parámetro de castigo para imponer


% las condiciones de frontera esenciales
alpha= 1 eó;
% Evaluando los términos de la matriz de rigidez de la
% frontera esencial y natural del problema
\vfe=zeros(nnd. 1):
[PHIf.DPHIf]=FuncionForma(vRj.xn.data.xfe):

for i= 1 :nnd
dife=xfe-xn(i):
r=abs(dife):
rdx=sign(dife):
difn=xrh-xn(i):

81
ni=abs(dilh):
nidx=sign(dith):
iír<=\Ro(i):
[ \ve.d\\ e]=FuncionPeso( \vft.r.rdx. \Ro( i)):
else r>vRo(i):
vve= ü.ü:
d\ve=0.0:
end
if"ni<=vRo(i):
[ \vn.dv\Ti ]=FuncionPeso( \\ft.m.mdx. vRo( i)):
else ni>vRo(i):
wii= 0.0;
dwn=0.0:
end
wfe(i)=we;
wfn(i)=wn:
end

Kbdy=alpha*(wfe*PHlfl-(\vfe*DPHIf):
fbdy=(alpha*ud*wfe)+<qd*wfn'):
% Preparando el sistema de ecuaciones para la solución
% de los valores ficticios del desplazamiento
K=Kbdy+Knode:
f=fnode+fbdy:
ufic=K\f:

% Calculando los valores reales del desplazamiento


tbr i= 1 :nnd
[PHI.DPHI]=FuncionFomia(vRj,xn.data.xn(i)):
ureal(i)=PHI*ufic:
esf(i)=DPHI*ufíc:
end
ureal=ureal'
esf=esf

CÓDIGO A.6 Problema de Barras

% Programa Principal para el Método Local Petrov-Galerkin


% en una dimensión. PROBLEMA DE BARRA
i=l:
[data.xn.\ Ro.\ Rj.Los.RigJ=EntradaDatos(i):
nnd=data( 1):
wft=data(2):

% Ciclo para evaluar los términos de la matriz de rigidez


% provenientes de la integración en el dominio
Knode=zeros( nnd):
fnode=zeros(nnd. 1):
QP=input('Cuantos puntos de cuadratura para la integración? '
tbr i= 1 :nnd
lim=Los(i:i.l:2):
[Xqs]=PuntosCuadratura(lini.OP):
tbrj=l:QP
xq=Xqs(.j.l):
wg=Xqs(¡.2);

82
[PHI.DPHI]=FuncionForma(vRj.xn.data.xq):
dif=xq-xn(i):
r=abs(dif);
rd\=sign(dif):
ifr<=vRo(i):
[\v.dw]=FuncionPeso(wft.r.rdx.vRo(i)):
else r>Rj;
w= 0.0:
dw=0.0:
end
%Evaluando la ecuación 2.20 con c=0
Knode(i:U:nnd)=Knode(i:i.l:nnd)+((Rig*d\v*wg)*DPHI):
% Evaluando la fuerza de cuerpo f
fc=xq:
fnode( i )=fnode( i)+(fc*w* wg):
end
end

%Pidiendo las condiciones de frontera esenciales y naturales


xfe=input('Posición de nodo de frontera esencial? '):
ud=input('CuaI es el valor de la condición de frontera esencial? ');
xfn=input('Posición de nodo de frontera natural? '):
qd=input('Cual es el valor de la condición de frontera natural? ');

% Calculando el parámetro de castigo para imponer


alpha=le6:
% Evaluando los términos de la matriz de rigidez de la
% frontera esencial y natural del problema
wfe=zeros(nnd. 1):
[PHIf.DPHIf]=FuncionFornia(vRj.xn.data.xfe):

tbr i= 1 :nnd
dife=xfe-xn(i):
r=abs(dife):
rdx=sign(dife):
difn=xfn-xn(i):
rn=abs(difn):
nidx=sign(difn):
ifr<=vRo(i);
[\ve.dwe]=HuncionPeso(wft.r.rdx.vRo(i)):
elser>vRo(i):
we= 0.0:
dwe=0.0:
end
ifni<=vRo(i):
[wn.dwn]=FuncionPeso(wft.m.mdx.vRo(i)):
else m>vRo(i):
wn= 0.0;
dwn=0.0:
end
\\fe(i)=we:
\vfn(i)=wn:
end
%Calculando la matriz de rigidez y vector de izas en la frontera
Kbdy=alpha*(wfe*PHIf)-(wfe*DPHIf):
fbdy=(alpha*ud*wfe)+(qd*wfn'):

% Preparando el sistema de ecuaciones para la solución

83
% de los valores ficticios del desplazamiento
K=Kbdy+Knode:
r=fnode+fbdy:
ufic=K\f:

°/o Calculando los valores reales del desplazamiento


Ibr i=l:nnd
|PHI.I)PHIJ=FuncionFoniia(vRj.xn.data.xn(i)):
ureal(i)=PHI*iific:
esf(i)=DPHl*ufic:
end
Lireal=ureal';
esl'=100*esf;

"'¿Cálculo de los valores necesarios para hacer la gráfica


%de las Figuras 5.3 y 5.4
\x=linspace(().3.55):
nn=Iength(xx):
tbr i=l:nn
[PHI.DPH!J=FuncionForma(vRj.xn.data.xx(i)):
ux(i)=PHI*ufic:
dux(i)=100*DPHI*ufic:
end
% Generación de gráficas
plot(xx.ux)
grid
figure
plot(xx.dux)
grid
% Calculando los valores en x=0.1.5 y 3.0
[PHI.DPHI|=FuncionForma(vRj,xn.data.O):
uini=PHI*ufic
esfini=DPHl*ufic*10()

|PHI.DPHI]=FuncionForma(vRj.xn.data.l.5):
umit=PHI*ufic
esi'mit=DPHl*ufic*100

fPHI.DPHI]=FuncionForma(vRj.xn.data.3):
uend=PHI*ufic
estend=DPHI*ufic*100

CÓDIGO A.7 Problema de aleta de enfriamiento

% Programa Principal para el Método Local Petrov-Galerkin


% en una dimensión. ALETA DE ENFRIAMIENTO
i=l:
[data.\n.\ ROA Rj.Los.Rig]=EntradaDatos(i):
nnd=data( 1):
wft=data(2):
cc=16:
% Ciclo para evaluar los términos de la matriz de rigidez
% provenientes de la integración en el dominio
Knode=zeros(nnd):
thode=zeros(nnd. 1):

84
QP=input('Cuantos puntos de cuadratura para la integración? '):
for i = l : n n d
lim=Los(i:i.l:2);
(Xqs]=PuntosCiiadratura(lim.QP):
forj=l:QP
xq=Xqs(j.l):
wg=Xqs(j.2):
[Plll.DPIII]=FuncionForma(vRj.xn.data.xq):
dil=xc|-xn(i):
r=abs(dif);
rdx=sign(dif):
if r<=vRo(i):
[ v\.d\v|=FimcionPeso( \vft.r.rdx. vRo( i)):
else r>Rj;
\\= Ü.O:
d\\=0.():
end
%h valuando la ecuación 2.20 con c=!6
Knode(i:i.l:nnd)=Knode(i:i.l:nnd)+((Rig*dw*DPHI)+(cc*w*PHI))*wg:
% I:valuando la fuerza de cuerpo f=0
fc=0:
fnode(i)=fnode(i)+(fc*w*wg):
end
end

%Pidiendo las condiciones de frontera esenciales y naturales


\fe=input('Posición de nodo de frontera esencial? ');
ud=input('Cual es el valor de la condición de frontera esencial? '):
xfn=input('Posición de nodo de frontera natural? '):
qd=input('Cual es el valor de la condición de frontera natural? '):

% Calculando el parámetro de castigo para imponer


% las condiciones de frontera esenciales
alpha=le6:
% Evaluando los términos de la matriz de rigidez de la
% frontera esencial y natural del problema
wfe=zeros(nnd. 1):
[PHIf.DPHIf]=FuncionFonna(vRj.xn.data.xfe):
for i=l:nnd
dife=xfe-\n(i):
r=abs(dife):
rdx=sign(dife):
difn=xfn-xn(i):
m=abs(difn):
rndx=sign(dilh):
if r<=\Ro(i):
[we.dwe]=FuncionPeso(wft.r.rdx.vRo(i)):
else r>\Ro(i):
we= 0.0:
dwe=0.0:
end
ifm<=vRo(i):
|wn.dwn]=FuncionPeso(wft.rn.mdx,vRo(i));
else m>vRo(i):
wn= 0.0:
d\v«=0.0:
end
wfe(i)=we:

85
\vfn(i)=\vn;
end
%Calculando los términos de frontera de la matriz
% de rigidez y vector de Izas
Kbd\=alpha*(\vfe*I > HlfH\vfe*DPHIf):
fbdy=(alpha*ud*\vto)+(qd*\vín'):

% Preparando el sistema de ecuaciones para la solución


% de los valores ficticios del desplazamiento
K=Kbdy+Knode:
f=thode+fbdy:
ufic=K\f:

% Calculando los valores reales de temperatura


for i= 1 :nnd
[PlH.DPHIl=FuntionForma(vRj.xn.data.xn(i)):
ureal(i)=PHI*ufic:
esf(i)=DPHI*ufic:
end
ureal=ureal'
esf=esf
% Haciendo los cálculos para valores de gráficas de
% las Figuras
xx=linspace(0.1.55):
nn=length(xx)i
for i= 1 :nn
fPHI.DPHI]=FimcionFonna(vRj.xn.data.x\(i)):
ux(i)=PHI*ufic:
dux(i)=DPHI*ufic:
end

plot(xx.ux)
grid
figure
plot(xx.dux)
grid
% Calculando los valores de temperatura y finjo en las
% posicione 0.0.5 y 1.0
[PHI.DPHI]=FuncionForma(vRj.xn.data.O):
uini=PHI*ufic
esfini=DPHl*ufic

[PHl.DPHI]=FimcionFonna(vRj.xn.data..5):
umit=PHI*ufic
esfmit=DPHI*ufic

[PHI.DPHI]=FuncionFomia(\Rj.xn.data.l);
uend=PHI*ufíc
estend=DPHl*ufic

86
Apéndice B

Aspectos Adicionales

B.1 Integración Numérica. Cuadratura Gaussiana

Al igual que en el Método de Elementos Finitos, el MLPG requiere evaluar

integrales para la generación de la matriz de rigidez y el vector de fuerzas nodales

ecuaciones (2.20) y (2.22). Debido a la naturaleza de la aproximación por mínimos

cuadrados en los métodos libres de malla éstas integrales son complejas e imposibles

de evaluarse en forma cerrada [7]. Para ello se deben utilizar técnicas numéricas que

permitan aproximar estas integrales de forma precisa.

El problema de la integración numérica parte de querer conocer el valor de la

ecuación (B.l) sin tener que resolverla analíticamente; en donde a y b están dados y

F es una función definida.

b
I=\F(x)dx. (B.l)

Con un cambio de variable c = cx+ d, la ecuación (B. 1) puede ser escrita como:

i
/ = !/7(if)í/K con d¿ = cdx, (B.2)
-i

87
y los coeficientes c y d son determinados de tal manera que los límites de

integración sean uno y menos uno. Así pues el procedimiento de integración

Gaussiana para la ecuación (B.2) puede ser aproximada por:

ih(¿¡) * (B-3)

en donde W, son los factores de peso de Gauss y ¿,¡ los puntos de Goitss o puntos de

cuadratura. Con esta ecuación, el utilizar ni puntos de Gauss resulta en el valor

exacto de un polinomio de orden 2/77-7 [11]. Por ejemplo, un polinomio cúbico

puede ser integrado exactamente utilizando solo dos puntos de cuadratura evaluando

el integrando en esos puntos, multiplicándolos por los factores de peso y sumando

los resultados.

La manera en como se calculan los puntos de cuadratura y los factores de peso

parten de integrar un polinomio general como sigue:

f 2 2 2
- \( ¿ = 2a0 + a-, + a4 +....+ a (B.4)
J • .j - 5 n+ ] n •

Expandiendo el lado derecho de la ecuación (B.3) en términos del polinomio general

tenemos:

88
El lado derecho de la ecuación (B.4) tiene que ser igual al lado derecho de la

ecuación (B.3) para que la integración sea exacta generando entonces el sistema de

ecuaciones siguiente:

en donde se supone que en estas ecuaciones n es un número par.

Para encontrar los valores de los factores de peso y puntos de Gauss será necesario

resolver las ecuaciones (B.6). Para el ejemplo específico de encontrar los valores de

89
los dos puntos y los dos pesos necesarios para evaluar exactamente un polinomio de

tercer orden, se requiere de resolver el siguiente sistema de ecuaciones:

(B.7)

w =3 + w =3 - o
" l ^ l ^ ^ 2 ^ 2 ~ u-

/
teniendo como solución: W\ = l, W^~l, ¿,¡=(1/3)' Para obtener los

valores de los pesos y puntos de Gauss para ordenes de cuadratura superiores se

pueden utilizar los valores de la Tabla B.l [11] o el programa Gauss.exe anexado en

el disco que acompaña a esta tesis.

Tabla B.l: Factores de peso y puntos de Cuadratura de Gauss para polinomios de orden siete
o menor.
m $ W,
1 0.0 2.0
2 0.577350269189626 1.0
-0.577350269189626 1.0
3 0.0 0.888888888888889
0.774596669241483 0.555555555555556
-0.77456669241483 0.555555555555556
4 0.339981043583856 0.652145154862526
-0.339981043583856 0.652145154862526
0.861136311590453 0.347854845137454
-0.861136311590453 0.347854845137454

En ocasiones se requiere de evaluar la integral para límites que no son de -1 a 1

como en la ecuación (B.l). Para esto, es posible convertir los factores de peso y

puntos de Gauss ya calculados en la Tabla B.l mediante las siguientes ecuaciones

[12]:

90
b+a b- a
X +
'= o , -'
(B.8)
W^W,

Ejemplo Ilustrativo:

Evaluar la integral /(*)=• l(.\- +3.v-2)</.v utilizando cuadratura Gaussiana de tal

manera que el resultado sea exacto.

Solución:

Ya que la función es un polinomio de segundo orden, se requieren al menos dos

puntos de cuadratura para calcular exactamente la solución. Por lo que escogemos

los valores de la Tabla B.l para m = 2. Y ya que los límites de integración no son -1

y 1 se calculan los nuevos puntos y pesos de Gauss como:

= ]943375

- ( _ 0 . 57735) = .0.943375

Evaluando en los puntos de cuadratura ya calculados, multiplicando por el peso y

sumando tenemos:

/(.Y) = (2.5)[(1.943375) : + 3(1.943375) - 2J+ (2.5)[(-0.943375): + 3(-0.943375) - 2J


/(.v) = 9.16665695315

La solución numérica corresponde a la solución exacta de la integral la cual es

f(x) = 55/6.

91
B.2 El Método de Residuos Pesados

El Método de Residuos Pesados (MRP) es una técnica utilizada para obtener

soluciones aproximadas a ecuaciones diferenciales que son el modelo matemático de

algún fenómeno físico. Este método intenta minimizar de forma integral y ponderada

el nivel de error que se introduce al proponer una función de aproximación a la

solución.

Para describir generalmente el método, considere una ecuación diferencial escrita en

la forma:

A(u) = f en el dominio Q, (B.9)

en donde A es un operador diferencial (lineal o no lineal) que actúa sobre la variable

dependiente //, y/es una función conocida de las variable independiente x. Algunos

ejemplos de este operador son [5]:

d du
A(n) = - a
dx dx

, d'ii
2. A(u)= b , (B.10)
dx ( dx'

d ( du
\u
dx \ dx

Para que el operador A sea lineal en sus argumentos tiene que satisfacer la relación

A(au + J3v) = aA(u) + /3A(v) , (B.ll)

92
para cualesquier escalares a y /? y variables dependientes u y v. Si un operador no

cumple la ecuación (B.l 1) se dice que es no lineal. En la ecuación (B.10) todos los

operadores son lineales excepto 3.

En el MRP la solución aproximada denominada como // debe ser seleccionada de tal

manera que no solo satisfaga los requerimientos de diferenciabilidad del operador de

ecuación sino que también satisfaga las condiciones de frontera esenciales y

naturales. Podemos entonces representar a la solución aproximada como:

z/(.Y) = 0 ( ,(.v) +j]o,.0 ( (A-). (B.l2)


; 1

En la ecuación (B.l2) los coeficientes a-, son coeficientes indeterminados y los

términos (f>,, son funciones de aproximación conocidas. Cabe mencionar que (/>o no

esta multiplicado por ningún coeficiente para satisfacer cualquier condición de

frontera y el resto de las funciones para satisfacer condiciones homogéneas.

Al sustituir la solución aproximada en la ecuación (B.9) esta no quedará satisfecha y

es posible definir un residuo R de la ecuación como:

R(x) = A ( f i ) - f ^ O . (B.l 3)

El MRP es una técnica que intenta minimizar el error o residuo de una forma

integral y ponderada, esto es:

jV,(A-)fl(A-)¿/Q = 0 \= l n (B.14)
()

93
en donde las funciones y/(x) son funciones de peso arbitrarias, con el único requisito

que sean linealmente independientes para que las ecuaciones algebraicas que se

generen en (B. 14) sean linealmente independientes y puedan resolverse.

Existen varios métodos clásicos basados en el MRP. La diferencia entre ellos radica

en la naturaleza de la función de peso i//(x). Dando lugar a los métodos denominados

colocación, mínimos cuadrados, Galerkin y Petrov-Galerkin. A continuación se

resuelve un ejemplo de cada uno de estos métodos para ilustrar los detalles del

procedimiento.

Ejemplo Ilustrativo:

Suponga el problema de la barra de la sección 5.2.2 en el cual se pretende resolver la

ecuación diferencial:

= f =x VO<A-<I
dx \ dx )

sujeta a las condiciones de frontera:

EAdu =P

donde E = Módulo de Elasticidad y A = área transversal de la barra.

La solución analítica de la ecuación (B.15) que satisface las condiciones de frontera

(B.16)es:

94
La solución aproximada que tiene la forma de la ecuación (B. 12) es:

ü - a(> + ci}x + a^x~, (B. 18)

Aplicando las condiciones de frontera de la ecuación (B. 17) se tiene que:

(a> x = O, /? = O => £/„ = O,


(B.19)

© x = L. EAcht =2 => a, = P
-2La,. (B.20)
dx EA

Con esto la aproximación depende solo de un coeficiente indeterminado quedando

entonces la aproximación de la solución y el residuo como:

P x + í(x-- -2Lx]a^
ü = £A \ = ó. +áa^ (B.21)
y r- vo} r\ _

Método de Colocación.

El método de colocación consiste en evaluar el residuo en tantos puntos como

coeficientes indeterminados haya. La función de peso empleada sería entonces la

función delta de Dirac. Para este problema en particular como solo hay un

coeficiente indeterminado se evalúa la integran en un punto, digamos a la mitad del

dominio x = V:L . quedando entonces la ecuación para obtener el valor de 02 como:

H- L (B.23)
2
~ 4EA'

95
Sustituyendo el valor de (i: en la solución aproximada de la ecuación (B.21) se tiene

que:

(B.24)
EA

Método de Mínimos Cuadrados

El método de mínimos cuadrados consiste en minimizar la integral del cuadrado del

residuo con respecto a cada uno de los coeficientes indeterminados. Para este

problema en particular se tiene entonces:

! 1
d
Rdx = (B.25)
da,

por lo que la función de peso utilizada en este método esta dada por:

dR
V, = , - (B.26)
ca,

para el problema analizado la función de peso estaría dada por:

a (B.27)

y la integral quedaría entonces como:

. .
í Rdx = \(~2EA)(-2EAa2 - x)dx = í(-2EAa2 - x)dx = 0

96
integrando y evaluando la ecuación (B.28) se obtiene el valor de a?:

L
a =~ (B.29)
2
4EA'

que es la misma solución aproximada que la obtenida por el método de colocación.

Método de Petrov-Galerkin

El método de Petrov-Galerkin consiste en proponer como funciones de peso

cualquier juego de funciones linealmente independientes. El número de funciones de

peso propuesta dependerá del número de coeficientes indeterminados que tenga la

solución aproximada. Para este problema en particular se propone la función i// = x.

Entonces la integral de dominio queda entonces como:

/. .
[l/R(x)dx = \(x)(-2EAa2 - x)dx = O

=0=>o, =-
3 - 3EA

sustituyendo el valor de a? en la solución aproximada se tiene que:

L
//- = „
"+ v- .v
EA 3 3

Método de Galerkin

El método de Galerkin consiste en escoger las funciones de peso iguales a las

funciones de aproximación </>¡ que multiplican a cada uno de los coeficientes

97
indeterminados a¡. Para este problema en particular la función de peso queda dado

por:

= <> =.v 2 - 2L\.


(B.33)
i.
(B.34)
x)dx = í(.v- - 2Lx)(~2EAa2 - x)dx = O,

U-.EA+' (B.35)
3 - 1 2 16EA

sustituyendo el valor de a? en la solución aproximada se tiene que:

5L 5L
n
P+ ~ LY- .Y (B.36)
EA 8 16

En la Figura B.l se ilustran las soluciones de cada uno de los métodos vistos

comparados con la solución exacta para los valores del problema de la sección 5.2.2

que son /* = 2, Z. = 3, E = 100 y A = \. Todas las soluciones aproximadas obtenidas

son relativamente buenas a pesar de que son aproximadas mediante un polinomio

cuadrático siendo que la solución exacta es un polinomio cúbico.

98
Desplazamiento de la Barra

0.16

0.14

0.12

0.10

3 0.08
-Exacta
0.06 Colocación

0.04 Gaterkin

Petrov-Galerkin
0.02

0.00 -I
0.0 0.5 1.0 1.5 2.0 2.5 3.0

Figura B.1 Solución aproximada del desplazamiento de la barra obtenidas mediante el método de
colocación, Galerkin y Petrov-Galerkin comparados con la solución exacta.

99