Trabajo Fin de Gradobibing.us.es/proyectos/abreproy/91030/fichero/MEMORIA.pdf11 11Modelo de...

93
Agradecimientos 1 1 Equation Chapter 1 Section 1 Trabajo Fin de Grado Grado en Ingeniería Civil Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation Autor: Mario López Muñoz Tutor: Gabriel Chamorro Sosa Dep. de Ingeniería de la Construcción y Proyectos de Ingeniería Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2016

Transcript of Trabajo Fin de Gradobibing.us.es/proyectos/abreproy/91030/fichero/MEMORIA.pdf11 11Modelo de...

Agradecimientos

1

1

Equation Chapter 1 Section 1

Trabajo Fin de Grado

Grado en Ingeniería Civil

Modelo de propagación de oleaje por elementos

finitos mediante la Mild Slope Equation

Autor: Mario López Muñoz

Tutor: Gabriel Chamorro Sosa

Dep. de Ingeniería de la Construcción y Proyectos de Ingeniería

Escuela Técnica Superior de Ingeniería

Universidad de Sevilla

Sevilla, 2016

2

3

3 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Trabajo Fin de Grado

Grado en Ingeniería Civil

Modelo de propagación de oleaje por elementos

finitos mediante la Mild Slope Equation

Autor:

Mario López Muñoz

Tutor:

Gabriel Chamorro Sosa

Dep. de Ingeniería de la Construcción y Proyectos de Ingeniería

Escuela Técnica Superior de Ingeniería

Universidad de Sevilla

Sevilla, 2016

4

5

5 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Trabajo Fin de Grado: Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope

Equation

Autor: Mario López Muñoz

Tutor: Gabriel Chamorro Sosa

El tribunal nombrado para juzgar el Trabajo arriba indicado, compuesto por los siguientes miembros:

Presidente:

Vocales:

Secretario:

Acuerdan otorgarle la calificación de:

Sevilla, 2016

El Secretario del Tribunal

6

7

7 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

A mi familia

A mis amigos

8

Agradecimientos

9

9

AGRADECIMIENTOS

Quiero agradecer a mi tutor Gabriel Chamorro Sosa la confianza depositada en mi para la realización de este

trabajo, el cual desde el principio me ha dado todas las explicaciones y ayuda posibles para conseguir realizar

algo que pensé que nunca lograría. En especial quiero darle las gracias porque me ha enseñado otra forma de

ver la ingeniería y el mundo profesional.

También quiero darle las gracias a mi madre, padre y hermano sin los cuales no habría podido llegar hasta aquí.

Ellos siempre me han apoyado y dado ánimos desde pequeño y en especial en el transcurso del grado, sin

mencionar los innumerables esfuerzos y sacrificios que han realizado para que pueda ser la persona que soy hoy

en día.

Quiero darle las gracias a mis compañeros de clase, que han conseguido que estos años de universidad no sólo

sean una experiencia en el ámbito de la enseñanza sino también en el ámbito personal. En especial quiero

agradecer este trabajo a todas las personas especiales que me he encontrado por el camino y sin las cuales todo

esto habría sido mucho más difícil, y las cuales espero que sigan en mi vida durante mucho tiempo.

Finalmente quiero agradecer a mis amigos de toda la vida los ánimos que me han dado en cada dificultad

encontrada durante estos años en la universidad.

Mario López Muñoz

Sevilla, 2016

10

10

11

11 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

RESUMEN

El presente trabajo está destinado a analizar la propagación del oleaje mediante el método de los elementos

finitos, utilizando un software desarrollado específicamente para ello.

En primer lugar, se realiza el desarrollo teórico de las ecuaciones que gobiernan el fenómeno, pasando

posteriormente a validar los resultados obtenidos con el programa con casos con solución analítica conocida de

la bibliografía técnica especializada.

Finalmente se describen las funciones básicas que utiliza el programa para el cálculo, así como el funcionamiento

del mismo a partir de un ejemplo de una dársena portuaria.

12

12

13

13 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

ÍNDICE

Agradecimientos 9

Resumen 11

Índice 13

Índice de Tablas 15

Índice de Figuras 17

1 Introducción 19

2 Desarrollo e implementación de la M.S.E. 21 2.1 Introducción 21 2.2 Introducción a la Mild Slope Equation 23 2.3 Teoremas empleados 23 2.4 Deducción de la M.S.E. 24

2.4.1 Forma débil de la ecuación 27 2.5 Desarrollo de las integrales en el dominio 28

2.5.1 Elemento triangular de tres nodos en coordenadas cartesianas 29 2.5.2 Elemento triangular de tres nodos en coordenadas naturales 30

2.6 Desarrollo de las integrales de contorno 33 2.6.1 Contorno cerrado 33 2.6.2 Contorno abierto 36 2.6.3 Resumen 37

2.7 Solución de la ecuación principal 38 2.7.1 Método de Galerkin 38 2.7.2 Términos del domino 38 2.7.3 Términos en el contorno 39

3 Validación de resultados 47 3.1 Propagación simple del oleaje 47

3.1.1 Descripción del fenómeno 47 3.1.2 Modelo empleado 47 3.1.3 Solución teórica 48 3.1.4 Solución obtenida 48 3.1.5 Comparación de resultados 50

3.2 Difracción 51 3.2.1 Descripción del fenómeno 51 3.2.2 Modelo empleado 51 3.2.3 Solución teórica 53 3.2.4 Solución obtenida 54 3.2.5 Comparación de resultados 56

3.3 Shoaling 57 3.3.1 Descripción del fenómeno 57

14

14

3.3.2 Modelo empleado 57 3.3.3 Solución teórica 58 3.3.4 Solución obtenida 59 3.3.5 Comparación de resultados 60

3.4 Resonancia 62 3.4.1 Descripción del fenómeno 62 3.4.2 Modelo empleado 62 3.4.3 Solución teórica 62 3.4.4 Solución obtenida 64 3.4.5 Comparación de resultados 66

4 Funciones empleadas 67 4.1 Dominio 67

4.1.1 Función interpol 68 4.1.2 Función k_h 68 4.1.3 Función celeridad 68 4.1.4 Función dominio 69

4.2 Contorno 70 4.2.1 Función kz_contorno 70 4.2.2 Función celeridad_contorno 71 4.2.3 Función cálculo_contorno 71 4.2.4 Función Int_N 72 4.2.5 Función Int_NN 73

5 Validación de un puerto en el software desarrollado 75 5.1 Visualización del entorno gráfico 75 5.2 Proyecto 76

5.2.1 Creación de un proyecto 76 5.2.2 Empezar desde un proyecto creado 77

5.3 Introducción de geometría 78 5.4 Introducción de batimetría 78 5.5 Mallado 79 5.6 Condiciones de contorno 80 5.7 Resolución del problema 81 5.8 Visualización de la solución 83 5.9 Solución en el tiempo 83 5.10 Herramientas auxiliares 83 5.11 Análisis de resultados 84

5.11.1 Dársena portuaria con dique absorbente 84 5.11.2 Dique no absorbente 87

6 Conclusión 91

7 Bibliografía 93

15

15 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

ÍNDICE DE TABLAS

Tabla 3.1 – Geometría empleada 48

Tabla 3.2 – Batimetría empleada 48

Tabla 3.3 – Condiciones de contorno impuestas 49

Tabla 3.4 – Geometría empleada en el modelo de difracción 54

Tabla 3.5 – Condiciones de contorno en el modelo de difracción 55

Tabla 3.6 – Geometría empleada para el modelo de shoaling 59

Tabla 3.7 – Batimetría empleada para el modelo de shoaling 60

Tabla 3.8 – Condiciones de contorno impuestas para el modelo de shoaling 60

Tabla 3.9 – Periodos de resonancia teóricos 63

Tabla 3.10 – Puntos de la geometría para el modelo de resonancia 64

Tabla 3.11 – Condiciones de contorno para el modelo de resonancia 65

Tabla 3.12 – Comparación analítica de los periodos de resonancia 66

Tabla 4.1 – Variables introducidas 67

Tabla 4.2 – Valores de las condiciones de contorno 70

Tabla 5.1 – Geometría dársena portuaria con dique absorbente 84

Tabla 5.2 – Batimetría dársena portuaria con dique absorbente 85

Tabla 5.3 – Condiciones de contorno dársena portuaria con dique absorbente 86

Tabla 5.4 – Condiciones de contorno dársena portuaria con dique no absorbente 88

16

16

17

17 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

ÍNDICE DE FIGURAS

Figura 2.1 – Esquema del oleaje con fondo plano 21

Figura 2.2 – Dirección del frente de ondas 25

Figura 2.3 – Discretización del dominio 28

Figura 2.4 – Representación de las funciones de forma 28

Figura 2.5 – Aproximación del potencial por las funciones de forma 29

Figura 2.6 – Sentido de cálculo del área 29

Figura 2.7 – Coordenadas naturales 30

Figura 2.8 – Esquema de borde cerrado 33

Figura 2.9 – Esquema de borde abierto 36

Figura 2.10 – Funciones de forma para un elemento de dos nodos 42

Figura 2.11 – Coordenadas naturales para un elemento de dos nodos 42

Figura 3.1 – Modelo de propagación empleado 47

Figura 3.2 – Solución obtenida 49

Figura 3.3 – Difracción tras un dique 51

Figura 3.4 – Modelo de difracción empleado 52

Figura 3.5 – Solución teórica para una difracción 53

Figura 3.6 – Coeficiente de difracción teórico en MATLAB 54

Figura 3.7 – Solución gráfica del modelo de difracción 55

Figura 3.8 – Coeficiente de difracción obtenido 56

Figura 3.9 – Comparación de los coeficientes de difracción obtenidos 56

Figura 3.10 – Modelo de shoaling empleado 57

Figura 3.11 –Ks en función de h/Lo 59

Figura 3.12 – Coeficiente de shoaling obtenido 60

Figura 3.13 – Comparación de coeficiente de shoaling 61

Figura 3.14 – Modelo de resonancia 62

Figura 3.15 – Modos de resonancia 63

Figura 3.16 – Periodos de resonancia obtenidos 65

Figura 3.17 – Comparación gráfica de los periodos de resonancia 66

Figura 4.1 – Código de resolución del dominio 68

Figura 4.2 – Función interpol 68

Figura 4.3 – Función k_h 68

Figura 4.4 – Función celeridad 69

Figura 4.5 – Función dominio 69

18

18

Figura 4.6 – Código de resolución del contorno 70

Figura 4.7 – Función kz_contorno 71

Figura 4.8 – Función celeridad_contorno 71

Figura 4.9 – Función calculo_contorno 72

Figura 4.10 – Función Int_N 73

Figura 4.11 – Función Int_NN 73

Figura 5.1 – Ventana principal del programa 75

Figura 5.2 – Tipos de datos 76

Figura 5.3 – Panel de proyecto 76

Figura 5.4 – Ventana de creación de proyecto 76

Figura 5.5 – Ventana de introducción de archivos creados 77

Figura 5.6 – Tipos de introducción 78

Figura 5.7 – Tabla de puntos 78

Figura 5.8 – Ventana de batimetría 79

Figura 5.9 – Ventana de mallado 80

Figura 5.10 – Selección de malla a guardar 80

Figura 5.11 – Selección gráfica del contorno 81

Figura 5.12 – Tabla resumen de Condiciones de Contorno 81

Figura 5.13 – Panel de división de contorno 81

Figura 5.14 – Ventana principal con solución obtenida 82

Figura 5.15 – Propiedades del cálculo realizado 82

Figura 5.16 – Panel de opciones de visualización 83

Figura 5.17 – Panel de opciones para la visualización en el tiempo 83

Figura 5.18 – Solución dársena portuaria con dique absorbente 86

Figura 5.19 – Coeficiente de propagación para dársena portuaria con dique absorbente 87

Figura 5.20 – Solución de dársena portuaria con dique no absorbente 88

Figura 5.21 – Coeficiente de propagación de dársena portuaria con dique no absorbente 89

19

19 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

1 INTRODUCCIÓN

l propósito de este trabajo se centra en el estudio del oleaje dentro de un puerto mediante la Mild Slope

Equation por el método de los elementos finitos. Históricamente este método ha estado ligado al cálculo

de estructuras en el campo aeroespacial, demostrando su idoneidad para problemas complejos frente a los

métodos tradicionales.

Con el paso del tiempo la formulación del método se ha ido implementando en otras áreas como la que nos

ocupa. Tradicionalmente los fenómenos de propagación del oleaje como el shoaling, la refracción o la difracción

se han estudiado a partir de métodos más simplificados y con muchas limitaciones. Con la llegada de una mayor

capacidad de computación, se ha podido implementar el MEF permitiendo obtener una solución muy

aproximada a la real.

El problema del desconocimiento a priori del ángulo de aproximación de los potenciales reflejados dentro del

dominio al contorno se trata mediante un truncamiento de segundo orden del desarrollo en serie de Taylor de la

función cos𝜃, que mejora sustancialmente los resultados numéricos en comparación con las aproximaciones de

primer orden, las cuales suponen que los potenciales reflejados llegan perpendiculares al contorno. En este TFG

no se han considerado condiciones de contorno basadas en la aplicación de capas absorbentes numéricas como

la Perfectly Matched Layer.

El objetivo que se plantea en este documento es la obtención de una solución numérica válida para problema de

propagación del oleaje, introduciendo los datos del modelo en un programa que se desarrollará para ello en

MATLAB ®. Este modelo estará compuesto de elementos triangulares de tres nodos y funciones de forma

lineales y podrá implementarse para los casos de fondo plano y fondo variable.

Inicialmente se hará un desarrollo numérico de la solución, para posteriormente crear las diversas funciones que

resuelven el problema. Tras esto, se comprobará la veracidad de los resultados obtenidos por el programa con

soluciones analíticas conocidas, corroborando que la solución es válida.

E

20

20

21

21 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

2 DESARROLLO E IMPLEMENTACIÓN DE LA

M.S.E.

2.1 Introducción

Antes de explicar el desarrollo de la M.S.E. introduciremos algunos conceptos previos sobre el tema. Partiremos

de la ecuación de ondas de Airy, la cual se obtiene a partir de la integración del Laplaciano y nos proporciona

un comportamiento del oleaje para fondo plano.

∇2Φ = 0 (2.1.1)

Esta expresión se cumple para aquellos fluidos con las siguientes características:

- Que sea incompresible, es decir, que su densidad sea constante a lo largo del tiempo.

ρ = cte →𝑑ρ

𝑑𝑡= 0 (2.1.2)

- Fluido no viscoso.

𝜇 = 0 (2.1.3)

- Fluido irrotacional. Se caracteriza en que el rotacional de �⃗� es cero en cualquier punto y en cualquier

instante.

∇𝑥�⃗� = 0 (2.1.4)

- Profundidad constante.

Figura 2.1 – Esquema del oleaje con fondo plano

- Fondo impermeable.

22

22

�⃗� = (𝑢, 𝑣, 𝑤) = (𝑢, 0, 0) (2.1.5)

Además, el Laplaciano que estamos estudiando es de tipo elíptico, por lo que es necesario introducir condiciones

en todos los contornos para su resolución. Estas condiciones se clasifican en cinemáticas o dinámicas y para el

caso que nos ocupa son las siguientes:

- Condición de contorno cinemática de superficie libre.

- Condición de contorno cinemática de fondo.

- Condición de contorno dinámica de superficie libre.

- Condiciones de contorno laterales.

Bajo todas estas premisas, resolvemos el problema mediante separación de variables, quedando la función

potencial:

Φ(x, z, t) = 𝑋(𝑥) · 𝑍(𝑧) · 𝑇(𝑡) (2.1.6)

Φ(x, z, t) = (𝐵1 · sen(𝑘𝑥 − 𝜎𝑡 + 𝜑1) + 𝐵2 · sen(𝑘𝑥 − 𝜎𝑡 + 𝜑

2)) · (𝐶 · 𝑒𝑘𝑧 + 𝐷𝑒−𝑘𝑧) (2.1.7)

Siendo 𝐵1, 𝐵2, 𝐶 y 𝐷 constantes de integración que se determinan con las condiciones de contorno, quedando

finalmente:

Φ(x, z, t) =𝑔 · 𝐴

𝜎·cosh 𝑘(ℎ + 𝑧)

cosh 𝑘ℎ· sen(𝑘𝑥 − 𝜎𝑡 + 𝜑

1) (2.1.8)

Las variables 𝜎 y 𝑘 introducidas se relacionan a partir de la ecuación de dispersión:

𝜎2 = 𝑔 · 𝑘 · 𝑡ℎ(𝑘 · ℎ) (2.1.9)

Se puede hallar la longitud de onda L con la ecuación anterior:

𝑘 =2𝜋

𝐿 (2.1.10)

𝜎 =2𝜋

𝑇 (2.1.11)

𝐿 =𝑔 · 𝑇²

2𝜋𝑡ℎ(𝑘 · ℎ) (2.1.12)

Además, se definen las variables celeridad (𝑐) y celeridad de grupo (𝑐𝑔):

𝑐 =𝐿

𝑇 (2.1.13)

𝑐 =𝑔𝑇

2𝜋· 𝑡ℎ(𝑘ℎ) (2.1.14)

𝑐𝑔 =1

2(1 +

2𝑘ℎ

senh(2𝑘ℎ)) (2.1.15)

23

23 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

La ecuación de Airy sólo es aplicable en los casos en los que el fondo es constante. En los casos en los que el

fondo es irregular esta ecuación no es capaz de simular adecuadamente el fenómeno de propagación del oleaje,

debiéndose usar para ello modelos numéricos más complejos.

2.2 Introducción a la Mild Slope Equation

Bajo las teorías anteriormente mencionadas, Berkoff (1972) implementa un desarrollo para modelar los

fenómenos de oleaje en dos dimensiones. Este desarrollo considera una batimetría constante o, en su defecto,

recta y paralela sin obstáculos y siempre que se cumpla la siguiente hipótesis de fondo suave.

𝑆𝑅 =tan 𝜃

𝑘 · ℎ< 0.1 (2.2.1)

Se trata de un modelo elíptico, es decir, se hace necesario introducir condiciones de contorno a lo largo de todo

el dominio para su resolución.

Bajo estas condiciones, la M.S.E. es capaz de reproducir los fenómenos de shoaling, refracción, difracción y

reflexión para un fondo suave (Hipótesis de Rayleigh). Esta implementación viene como consecuencia de

aproximar la función 𝐾𝑝(𝑧)real a la obtenida por Airy.

𝐾𝑝(𝑧)𝑟𝑒𝑎𝑙 = 𝐾𝑝(𝑧)𝐴𝑖𝑟𝑦 =cosh 𝑘(ℎ + 𝑧)

cosh 𝑘ℎ (2.2.2)

Con esta aproximación, se puede desacoplar la variable z del problema, quedando por tanto nuestro dominio

determinado por las variables (x, y, t). Con esto se consideran constantes en z a nivel de elemento las variables

de número de onda, celeridad y celeridad de grupo.

2.3 Teoremas empleados

Teorema de la divergencia de Gauss

∫ 𝑑𝑖𝑣 𝑞 · 𝑑ΩΩ

= ∫ 𝑞 · 𝑛 · 𝑑ΓΓ

(2.3.1)

(1) ∫ ∇ 𝑞 · 𝑑ΩΩ

= ∫ 𝑞 · 𝑛 · 𝑑ΓΓ

(2.3.2)

(2) ∇ (𝜙 · 𝑣) = 𝜙 · 𝑑𝑖𝑣(𝑣) + ∇𝜙 · 𝑣 (2.3.3)

Combinando (1) y (2):

∫ ∇ (𝜙 · 𝑣) · 𝑑ΩΩ

= ∫ 𝜙 · 𝑣 · 𝑛 · 𝑑ΓΓ

(2.3.4)

∫ 𝜙 · ∇ 𝑣 · 𝑑ΩΩ

+ ∫ ∇𝜙 · 𝑣 · 𝑑ΩΩ

= ∫ 𝜙 · 𝑣 · 𝑛 · 𝑑ΓΓ

(2.3.5)

24

24

Teorema de Green – Gauss

2.4 Deducción de la M.S.E.

La M.S.E se obtiene como un promedio ponderado de la ecuación de gobierno en la columna de agua.

∇2Φ =𝜕2Φ

𝜕𝑥2+

𝜕2Φ

𝜕𝑦2+

𝜕2Φ

𝜕𝑧2= 0 (2.4.1)

En este promedio introduciremos como función de peso el factor 𝐾𝑝(𝑧) , que como hemos mencionado

anteriormente lo aproximaremos al calculado por Airy para onda propagándose en fondo plano, donde es posible

obtener su expresión analítica.

∫ 𝐾𝑝(𝑧) · ∇2Φ dz0

−ℎ

= 0 (2.4.2)

Siendo:

𝐾𝑝(𝑧) =cosh 𝑘(ℎ + 𝑧)

cosh 𝑘ℎ (2.4.3)

Nuestro problema vendrá expresado por un potencial complejo Φ̃, aunque para su resolución tomaremos sólo

su parte real.

Φ̃ → 𝐹𝑜𝑟𝑚𝑎 𝑐𝑜𝑚𝑝𝑙𝑒𝑗𝑎 𝑑𝑒 Φ

Φ = Re{Φ̃}

Este potencial complejo tiene la siguiente expresión:

Φ̃ = −𝑖 · 𝑔 · 𝐴

𝜎· 𝐾𝑝(𝑧) · 𝑒𝑖·�⃗⃗�·�⃗� · 𝑒−𝑖·𝜎·𝑡 · 𝑒𝑖·𝜑𝑖 (2.4.4)

Siendo:

�⃗� = (𝑥, 𝑦) (2.4.5)

�⃗⃗� = (𝑘𝑐𝑜𝑠 𝜃, 𝑘𝑠𝑒𝑛𝜃) (2.4.6)

25

25 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Figura 2.2 – Dirección del frente de ondas

Si desarrollamos este término nos queda:

𝐴′ = 𝐴 · 𝑒𝑖·𝜑𝑖 (2.4.7)

Φ̃ = −𝑖 · 𝑔 · 𝐴′

𝜎· 𝐾𝑝(𝑧) · 𝑒𝑖·�⃗⃗�·�⃗� · 𝑒−𝑖·𝜎·𝑡 (2.4.8)

𝜙(𝑥, 𝑦) = −𝑖 · 𝑔 · 𝐴′

𝜎· 𝑒−𝑖·𝜎·𝑡 → 𝑃𝑜𝑡𝑒𝑛𝑐𝑖𝑎𝑙 𝑟𝑒𝑑𝑢𝑐𝑖𝑑𝑜 𝑑𝑒 𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 (2.4.9)

Φ̃ = 𝜙(𝑥, 𝑦) · 𝐾𝑝(𝑧) · 𝑒−𝑖·𝜎·𝑡 (2.4.10)

Introducimos este resultado en la integral ∫ 𝐾𝑝(𝑧)0

−ℎ· ∇2Φ · dz = 0 eliminando los términos dependientes del

tiempo (𝑒−𝑖·𝜎·𝑡).

∫𝜕2𝜙

𝜕𝑥2𝐾𝑝

2 dz0

−ℎ

+ ∫𝜕2𝜙

𝜕𝑦2𝐾𝑝

2 dz0

−ℎ

+ ∫𝜕2𝜙

𝜕𝑧2𝐾𝑝

2 dz0

−ℎ

= 0 (2.4.11)

Si desarrollamos el término de la integral en z de 𝐾𝑝(𝑧):

𝑑𝐾𝑝

𝑑𝑧=

k · senh 𝑘(ℎ + 𝑧))

cosh 𝑘ℎ (2.4.12)

𝑑2𝐾𝑝

𝑑𝑧2= 𝑘2

cosh 𝑘(ℎ + 𝑧)

cosh 𝑘ℎ= 𝑘2𝐾𝑝 (2.4.13)

Introduciendo este término en la integral y desarrollando esta nos queda:

26

26

𝜕

𝜕𝑥[𝜕𝜙

𝜕𝑥∫ 𝐾𝑝

2 dz0

−ℎ

] + 𝜕

𝜕𝑦[𝜕𝜙

𝜕𝑦∫ 𝐾𝑝

2 dz0

−ℎ

] + 𝑘2𝜙 ∫ 𝐾𝑝2 dz

0

−ℎ

= 0 (2.4.14)

Se puede comprobar que:

∫ 𝐾𝑝2 dz

0

−ℎ

=𝑡ℎ(𝑘ℎ)

𝑘[1

2(1 +

2𝑘ℎ

senh 2𝑘ℎ)] (2.4.15)

Para desarrollar el término 𝐾𝑝(𝑧) introducimos las siguientes variables de la ecuación de dispersión:

𝜎2 = 𝑔 · 𝑘 · 𝑡ℎ(𝑘ℎ) (2.4.16)

𝑡ℎ(𝑘ℎ) =𝜎2

𝑔 · 𝑘 (2.4.17)

𝑡ℎ(𝑘ℎ)

𝑘=

𝜎2

𝑔 · 𝑘2=

𝑐2

𝑔 (2.4.18)

Sustituyendo estos términos en el término integral de 𝐾𝑝(𝑧) queda:

∫ 𝐾𝑝2 dz

0

−ℎ

=𝑐2

𝑔[1

2(1 +

2𝑘ℎ

senh 2𝑘ℎ)] =

𝑐 · 𝑐𝑔

𝑔 (2.4.19)

Sustituyendo en la ecuación principal:

𝜕

𝜕𝑥[𝜕𝜙

𝜕𝑥·𝑐 · 𝑐𝑔

𝑔] +

𝜕

𝜕𝑦[𝜕𝜙

𝜕𝑦·𝑐 · 𝑐𝑔

𝑔] + 𝑘2𝜙 ·

𝑐 · 𝑐𝑔

𝑔= 0 (2.4.20)

∇( 𝑐𝑐𝑔∇𝜙) + 𝑘2𝑐𝑐𝑔𝜙 = 0 (2.4.21)

Mild Slope Equation en dominio frecuencial

Siendo:

- 𝑐: Celeridad de la onda.

- 𝑐𝑔: celeridad de grupo.

- 𝑘: número de onda.

- 𝜙: potencial reducido de velocidad.

Para cada profundidad 𝑐, 𝑐𝑔, 𝑘 se obtienen de la ecuación de dispersión:

27

27 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

𝜎2 = 𝑔 · 𝑘 · 𝑡ℎ(𝑘ℎ) (2.4.22)

Nos queda por tanto la M.S.E. expresada en su forma fuerte:

∇( 𝑐𝑐𝑔∇𝜙) + 𝑘2𝑐𝑐𝑔𝜙 = 0 (2.4.23)

2.4.1 Forma débil de la ecuación

Una vez hallada la forma fuerte de la ecuación calcularemos su forma débil, que se obtiene multiplicando la

expresión anterior por una función de peso arbitraria 𝛹:

𝛹 · [∇( 𝑐𝑐𝑔∇𝜙) + 𝑘2𝑐𝑐𝑔𝜙] = 0 (2.4.24)

Si integramos en el dominio Ω:

∫ 𝛹 · [∇( 𝑐𝑐𝑔∇𝜙) + 𝑘2𝑐𝑐𝑔𝜙] · 𝑑ΩΩ

= 0 (2.4.25)

∫ Ψ · ∇( 𝑐𝑐𝑔∇𝜙) · 𝑑ΩΩ

+ ∫ 𝛹 · 𝑘2𝑐𝑐𝑔𝜙 𝑑ΩΩ

= 0 (2.4.26)

Aplicando el Teorema de Green – Gauss en el primer término integral:

∫ 𝛹Γ

𝑐𝑐𝑔∇𝜙 · 𝑛 𝑑Γ − ∫ ∇𝛹 · 𝑐𝑐𝑔∇𝜙 𝑑ΩΩ

+ ∫ 𝛹 · 𝑘2𝑐𝑐𝑔𝜙 𝑑ΩΩ

= 0 (2.4.27)

Por lo tanto, la forma débil queda:

∫ 𝛹Γ

𝑐𝑐𝑔𝜕𝜙

𝜕𝑛 𝑑Γ − ∫ ∇𝛹 · 𝑐𝑐𝑔∇𝜙 𝑑Ω

Ω

+ ∫ 𝛹 · 𝑘2𝑐𝑐𝑔𝜙 𝑑ΩΩ

= 0 (2.4.28)

Realizamos la distinción entre forma fuerte y débil refiriéndonos al grado de la ecuación. En la forma fuerte

tenemos un gradiente al cuadrado, el cual reducimos en la forma débil a costa de que las funciones 𝛹 tengan el

mismo grado que 𝜙.

28

28

2.5 Desarrollo de las integrales en el dominio

Para desarrollar las ecuaciones en el dominio partiremos de la ecuación integral hallada anteriormente:

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

− ∫ ∇𝛹 · 𝑐𝑐𝑔∇𝜙 𝑑ΩΩ

+ ∫ 𝛹 · 𝑘2𝑐𝑐𝑔𝜙 𝑑ΩΩ

= 0 (2.5.1)

Como podemos observar, nos encontramos con dos integrales en el dominio y otra en el contorno. Partiremos

de un dominio que discretizaremos en elementos triangulares de tres nodos, de modo que la integral en vez de

en el contorno se evaluará en cada uno de estos elementos.

Figura 2.3 – Discretización del dominio

Esta discretización nos permite realizar una aproximación lineal de 𝜙 en el elemento en función de su valor en

cada uno de los tres nodos de este. Para realizar dicha aproximación emplearemos las funciones de forma.

Figura 2.4 – Representación de las funciones de forma

Para este tipo de elementos se definen tres funciones de forma, una por cada vértice. Dichas funciones toman

el valor unidad en su vértice correspondiente, es decir, la función 𝑁1𝑒vale uno en el vértice 1 y cero en el resto

y así sucesivamente. De esta forma aproximamos el potencial 𝜙 como:

𝜙 = 𝜙1 · 𝑁1𝑒 + 𝜙2 · 𝑁2

𝑒 + 𝜙3 · 𝑁3𝑒 (2.5.2)

29

29 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Figura 2.5 – Aproximación del potencial por las funciones de forma

2.5.1 Elemento triangular de tres nodos en coordenadas cartesianas

Las funciones de forma se pueden escribir en términos de x e y de la siguiente forma:

𝑁𝑖 =1

2𝐴· [𝑥𝑗 · 𝑦𝑗 − 𝑥𝑘 · 𝑦𝑗 + (𝑦𝑗 − 𝑦𝑘) · 𝑥 + (𝑥𝑘 − 𝑥𝑗) · 𝑦] (2.5.3)

𝑁𝑗 =1

2𝐴· [𝑥𝑘 · 𝑦𝑖 − 𝑥𝑖 · 𝑦𝑘 + (𝑦𝑘 − 𝑦𝑖) · 𝑥 + (𝑥𝑖 − 𝑥𝑘) · 𝑦] (2.5.4)

𝑁𝑘 =1

2𝐴· [𝑥𝑖 · 𝑦𝑗 − 𝑥𝑗 · 𝑦𝑖 + (𝑦𝑖 − 𝑦𝑗) · 𝑥 + (𝑥𝑗 − 𝑥𝑖) · 𝑦] (2.5.5)

Siendo 𝐴 el área del elemento, que se calcula siempre que se recorra este en sentido antihorario de la siguiente

forma:

2𝐴 = |

1 1 1𝑥𝑖 𝑥𝑗 𝑥𝑘

𝑦𝑖 𝑦𝑗 𝑦𝑗

| (2.5.6)

Figura 2.6 – Sentido de cálculo del área

30

30

El vector de potencial y las funciones de forma se definen como:

𝜙𝑒 = (

𝜙𝑖

𝜙𝑗

𝜙𝑘

) (2.5.7)

𝑁𝑒 = (𝑁𝑖𝑒 𝑁𝑗

𝑒 𝑁𝑘𝑒) (2.5.8)

𝜙 = 𝜙𝑒 · 𝑁𝑒 (2.5.9)

En función de estas expresiones calculamos el gradiente de potencial.

∇𝜙 =

[ 𝜕𝜙

𝜕𝑥𝜕𝜙

𝜕𝑦]

=

[ 𝜕𝑁𝑖

𝑒

𝜕𝑥

𝜕𝑁𝑗𝑒

𝜕𝑥

𝜕𝑁𝑘𝑒

𝜕𝑥𝜕𝑁𝑖

𝑒

𝜕𝑦

𝜕𝑁𝑗𝑒

𝜕𝑦

𝜕𝑁𝑘𝑒

𝜕𝑦 ]

[

𝜙𝑖

𝜙𝑖

𝜙𝑘

] (2.5.10)

∇𝜙 = 𝐵𝑒 · 𝜙𝑒 (2.5.11)

Si despejamos 𝐵𝑒nos queda:

𝐵𝑒 =1

2𝐴[𝑦𝑗 − 𝑦𝑘 𝑦𝑘 − 𝑦𝑖 𝑦𝑖 − 𝑦𝑗

𝑥𝑘 − 𝑥𝑗 𝑥𝑖 − 𝑥𝑘 𝑥𝑗 − 𝑥𝑖] (2.5.12)

2.5.2 Elemento triangular de tres nodos en coordenadas naturales

A continuación, calcularemos las expresiones halladas en el apartado anterior en función de las coordenadas

naturales.

Figura 2.7 – Coordenadas naturales

Estas coordenadas naturales tienen las siguientes propiedades:

𝜉1 + 𝜉2 + 𝜉3 = 1 (2.5.13)

31

31 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Los vértices tienen las siguientes coordenadas:

1→ (1,0,0) 2→ (0,1,0) 3→ (0,0,1)

Los puntos medios se encuentran en:

1-2→ (1

2,1

2, 0) 2-3→ (0,

1

2,1

2) 3-1→ (

1

2, 0,

1

2)

El centro de gravedad está en el punto (1

3,1

3,1

3).

Podemos relacionar las coordenadas cartesianas y las coordenadas naturales:

[1𝑥𝑦] = [

1 1 1𝑥1 𝑥2 𝑥3

𝑦1 𝑦2 𝑦3

] [

𝜉1

𝜉2

𝜉3

] (2.5.14)

Invertiremos el sistema para hallar la expresión de las coordenadas naturales en función de las cartesianas:

[

𝜉1

𝜉2

𝜉3

] =1

2𝐴[

𝑥2 · 𝑦3 − 𝑥3 · 𝑦2 𝑦2 − 𝑦3 𝑥3 − 𝑥2

𝑥3 · 𝑦1 − 𝑥1 · 𝑦3 𝑦3 − 𝑦1 𝑥1 − 𝑥3

𝑥1 · 𝑦2 − 𝑥2 · 𝑦1 𝑦1 − 𝑦2 𝑥2 − 𝑥1

] [1𝑥𝑦] (2.5.15)

En el caso de elementos triangulares de tres nodos las funciones de forma son iguales a las coordenadas

naturales, de esta forma el potencial viene determinado como:

𝑁𝑒 = (𝜉1 𝜉2 𝜉3) (2.5.16)

𝜙𝑒 = (

𝜙1

𝜙2

𝜙3

) (2.5.17)

𝜙 = 𝜙1 · 𝜉1 + 𝜙2 · 𝜉2 + 𝜙3 · 𝜉3 (2.5.18)

Seguidamente hallamos el gradiente del potencial en función de las coordenadas naturales, que se puede

calcular como:

𝜕𝜙

𝜕𝑥=

𝜕𝜙

𝜕𝜉1·𝜕𝜉1

𝜕𝑥+

𝜕𝜙

𝜕𝜉2·𝜕𝜉2

𝜕𝑥+

𝜕𝜙

𝜕𝜉3·𝜕𝜉3

𝜕𝑥 (2.5.19)

𝜕𝜙

𝜕𝑦=

𝜕𝜙

𝜕𝜉1·𝜕𝜉1

𝜕𝑦+

𝜕𝜙

𝜕𝜉2·𝜕𝜉2

𝜕𝑦+

𝜕𝜙

𝜕𝜉3·𝜕𝜉3

𝜕𝑦 (2.5.20)

32

32

Luego el gradiente nos queda:

∇𝜙 =

[ 𝜕𝜙

𝜕𝑥𝜕𝜙

𝜕𝑦]

=

[ 𝜕𝜉1

𝜕𝑥

𝜕𝜉2

𝜕𝑥

𝜕𝜉3

𝜕𝑥𝜕𝜉1

𝜕𝑦

𝜕𝜉1

𝜕𝑦

𝜕𝜉3

𝜕𝑦 ]

[ 𝜕𝜙

𝜕𝜉1

𝜕𝜙

𝜕𝜉2

𝜕𝜙

𝜕𝜉3]

(2.5.21)

∇𝜙 = 𝐵𝑒 · 𝜙𝑒 (2.5.22)

Siendo:

𝐵𝑒 =

[ 𝜕𝜉1

𝜕𝑥

𝜕𝜉2

𝜕𝑥

𝜕𝜉3

𝜕𝑥𝜕𝜉1

𝜕𝑦

𝜕𝜉1

𝜕𝑦

𝜕𝜉3

𝜕𝑦 ]

=1

2𝐴[𝑦2 − 𝑦3 𝑦3 − 𝑦1 𝑦1 − 𝑦2

𝑥3 − 𝑥2 𝑥1 − 𝑥3 𝑥2 − 𝑥1] (2.5.23)

[ 𝜕𝜙

𝜕𝜉1

𝜕𝜙

𝜕𝜉2

𝜕𝜙

𝜕𝜉3]

= [

𝜙1

𝜙2

𝜙3

] (2.5.24)

Como podemos observar, la expresión de ∇𝜙 es igual tanto si trabajamos en coordenadas cartersianas como

naturales, como era de esperar. El empleo de estas últimas se realiza por motivos de simplificación de los

cálculos de integración numérica mediante cuadraturas de Gauss, que veremos más adelante.

33

33 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

2.6 Desarrollo de las integrales de contorno

2.6.1 Contorno cerrado

Se denomina contorno cerrado a aquellos dominios que están físicamente cerrados y que tienen cierta capacidad

de reflexión. En la realidad se identifican como muelles, costas, diques, y todo tipo de estructuras costeras.

Figura 2.8 – Esquema de borde cerrado

Definiremos los siguientes parámetros:

𝜙𝑖𝑛: Potencial entrante.

𝜙𝑖𝑛: Potencial reflejado.

Cada uno de los potenciales vienen determinados por:

𝜙𝑖𝑛 = �̃� · 𝑒−𝑘𝑥·𝑥·𝑖 · 𝑒−𝑘𝑦·𝑦·𝑖 (2.6.1)

𝜙𝑅 = 𝑅 · �̃� · 𝑒𝑘𝑥·𝑥·𝑖 · 𝑒𝑘𝑦·𝑦·𝑖 (2.6.2)

Siendo:

�̃�: La altura de ola compleja.

𝑅: Coeficiente de reflexión.

𝑘𝑥, 𝑘𝑦: Número de onda en las direcciones x e y.

El coeficiente de reflexión varía entre 0 y 1, siendo 0 el valor asignado para un contorno totalmente absorbente

y 1 en el caso de que fuera totalmente reflejante.

El número de onda en cada una de las direcciones x e y se calcula como:

𝑘𝑥 = 𝑘 · cos 𝜃 (2.6.3)

34

34

𝑘𝑦 = 𝑘 · sen 𝜃 (2.6.4)

El potencial en el contorno será la suma del potencial incidente y del potencial reflejado:

𝜙 = 𝜙𝑖𝑛 + 𝜙𝑅 = �̃�(𝑒−𝑘𝑥·𝑥·𝑖 + 𝑅 · 𝑒𝑘𝑥·𝑥·𝑖) · 𝑒𝑘𝑦·𝑦·𝑖 (2.6.5)

A partir de esta expresión hallamos la cantidad de potencial que atraviesa el contorno.

𝜕𝜙

𝜕𝑛=

𝜕𝜙

𝜕𝑥+

𝜕𝜙

𝜕𝑦 (2.6.6)

𝜕𝜙

𝜕𝑛= �̃�(−𝑖 · 𝑘𝑥 · 𝑒−𝑘𝑥·𝑥·𝑖 + 𝑅 · 𝑖 · 𝑘𝑥 · 𝑒𝑘𝑥·𝑥·𝑖) · 𝑒𝑘𝑦·𝑦·𝑖 + �̃�(𝑒−𝑘𝑥·𝑥·𝑖 + 𝑅 · 𝑒𝑘𝑥·𝑥·𝑖) · 𝑖 · 𝑘𝑦 · 𝑒𝑘𝑦·𝑦·𝑖 (2.6.7)

El ángulo 𝜃 no está determinado a priori, ya que se trata del ángulo con el que llega la onda al contorno tras

interaccionar con otros. Para determinar este ángulo realizaremos un desarrollo de Taylor del cos 𝜃 en 𝜃 = 0.

cos 𝜃 ≈ ∑(−1)𝑘

(2𝑘)!𝑥2𝑘

𝑛

𝑘=0

(2.6.8)

cos 𝜃 = √1 − sen2 𝜃 ≈ 1 −sen2 𝜃

2+ ⋯ (2.6.9)

Si tomamos el contorno del ejemplo (x=0):

𝜙|𝑥=0 = �̃� · (1 + 𝑅) · 𝑒𝑘𝑦·𝑦·𝑖 (2.6.10)

Si derivamos respecto a y el potencial que atraviesa el contorno en x=0.

𝜕𝜙

𝜕𝑦|𝑥=0

= 𝑖 · 𝑘𝑦 · �̃� · (1 + 𝑅) · 𝑒𝑘𝑦·𝑦·𝑖 (2.6.11)

𝜕2𝜙

𝜕𝑦2|𝑥=0

= −𝑘𝑦2 · �̃� · (1 + 𝑅) · 𝑒𝑘𝑦·𝑦·𝑖 = −𝑘𝑦

2 · 𝜙|𝑥=0 (2.6.12)

𝜕2𝜙

𝜕𝑦2|𝑥=0

= −𝑘2 · sen2 𝜃 · 𝜙|𝑥=0 (2.6.13)

35

35 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Si despejamos sen2 𝜃:

sen2 𝜃 = −𝜕2𝜙

𝜕𝑦2|𝑥=0

·1

𝑘2 · 𝜙|𝑥=0 (2.6.14)

Este resultado lo introducimos en el desarrollo de Taylor del cos 𝜃 anterioremente hallado.

cos 𝜃 ≈ 1 −sen2 𝜃

2≈ 1 +

1

2·𝜕2𝜙

𝜕𝑦2|𝑥=0

·1

𝑘2 · 𝜙|𝑥=0 (2.6.15)

Luego la cantidad de potencial que atraviesa el contorno queda como:

𝜕𝜙

𝜕𝑛|𝑥=0

= −𝑖𝑘 cos 𝜃1 − 𝑅

1 + 𝑅𝜙|𝑥=0 = −𝑖

1 − 𝑅

1 + 𝑅(𝑘𝜙 +

1

2𝑘

𝜕2𝜙

𝜕𝑦2)|

𝑥=0

(2.6.16)

Generalizando esta expresión para cualquier dominio:

𝜕𝜙

𝜕𝑛= −𝑖

1 − 𝑅

1 + 𝑅(𝑘𝜙 +

1

2𝑘

𝜕2𝜙

𝜕𝑠2) (2.6.17)

36

36

2.6.2 Contorno abierto

Asignamos como contorno abierto a aquellos dominios que dejan pasar libremente tanto las olas entrantes al

dominio como las reflejadas por otros contornos.

Figura 2.9 – Esquema de borde abierto

Se definen los siguientes parámetros:

𝜙𝑖𝑛: Potencial entrante en el dominio.

�̅�𝑖𝑛: Vector dirección del potencial entrante.

𝜙𝑜𝑢𝑡: Potencial saliente del domino.

�̅�: Vector normal del contorno. Se define hacia el exterior de este.

Si estudiamos el caso del potencial que sale del dominio:

𝜙𝑖𝑛 = �̃� · 𝑒−𝑘𝑥·𝑥·𝑖 · 𝑒−𝑘𝑦·𝑦·𝑖 = �̃� · 𝑒−�⃗⃗�·�⃗�·𝑖 (2.6.18)

𝜕𝜙𝑖𝑛

𝜕𝑛= ∇𝜙𝑖𝑛 · �⃗⃗� = −�̃� · 𝑖 · [𝑘𝑥 , 𝑘𝑦] · 𝑒−𝑖·(𝑘𝑥·𝑥+𝑘𝑦·𝑦) · [𝑛𝑥 , 𝑛𝑦] (2.6.19)

𝜕𝜙𝑖𝑛

𝜕𝑛= −𝑖(�⃗⃗� · �⃗⃗�)𝜙𝑖𝑛 (2.6.20)

37

37 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Para estudiar el potencial que sale del dominio aplicamos la expresión para el caso de borde reflejante.

𝜕𝜙𝑜𝑢𝑡

𝜕𝑛= −𝑖

1 − 𝑅

1 + 𝑅(𝑘𝜙𝑜𝑢𝑡 +

1

2𝑘

𝜕2𝜙𝑜𝑢𝑡

𝜕𝑠2) (2.6.21)

En el caso de borde abierto el factor de reflexión en el contorno es cero, luego nos queda:

𝜕𝜙𝑜𝑢𝑡

𝜕𝑛= −𝑖 (𝑘𝜙𝑜𝑢𝑡 +

1

2𝑘

𝜕2𝜙𝑜𝑢𝑡

𝜕𝑠2) (2.6.22)

Si sumamos el potencial en el contorno:

𝜙 = 𝜙𝑖𝑛 + 𝜙𝑜𝑢𝑡 → 𝜙𝑜𝑢𝑡 = 𝜙 − 𝜙𝑖𝑛 (2.6.23)

𝜕𝜙

𝜕𝑛=

𝜕𝜙𝑖𝑛

𝜕𝑛+

𝜕𝜙𝑜𝑢𝑡

𝜕𝑛 (2.6.24)

𝜕𝜙

𝜕𝑛= −𝑖𝑘𝜙𝑖𝑛(𝑒𝑖𝑛⃗⃗ ⃗⃗ ⃗⃗ · �⃗⃗�) − 𝑖𝑘(𝜙 − 𝜙𝑖𝑛) −

𝑖

2𝑘(𝜕2𝜙

𝜕𝑠2−

𝜕2𝜙𝑖𝑛

𝜕𝑠2) (2.6.25)

2.6.3 Resumen

Ecuación integral:

∫ 𝛹Γ

𝑐𝑐𝑔𝜕𝜙

𝜕𝑛 𝑑Γ − ∫ ∇𝛹 · 𝑐𝑐𝑔∇𝜙 𝑑Ω

Ω

+ ∫ 𝛹 · 𝑘2𝑐𝑐𝑔𝜙 𝑑ΩΩ

= 0 (2.6.26)

En bordes cerrados:

𝜕𝜙

𝜕𝑛= −𝑖

1 − 𝑅

1 + 𝑅(𝑘𝜙 +

1

2𝑘

𝜕2𝜙

𝜕𝑠2) (2.6.27)

En bordes abiertos:

𝜕𝜙

𝜕𝑛= −𝑖𝑘𝜙𝑖𝑛(𝑒𝑖𝑛⃗⃗ ⃗⃗ ⃗⃗ · �⃗⃗�) − 𝑖𝑘(𝜙 − 𝜙𝑖𝑛) −

𝑖

2𝑘(𝜕2𝜙

𝜕𝑠2−

𝜕2𝜙𝑖𝑛

𝜕𝑠2) (2.6.28)

38

38

2.7 Solución de la ecuación principal

2.7.1 Método de Galerkin

La ecuación integral que define nuestro problema es:

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

− ∫ 𝑐𝑐𝑔∇𝛹∇𝜙 𝑑ΩΩ

+ ∫ 𝑐𝑐𝑔𝛹𝑘2𝜙 𝑑ΩΩ

= 0 (2.7.1)

Anteriormente dijimos 𝛹 es una función de peso arbitraria. Podemos imponer que esta función sea igual a las

funciones de forma (Método de Galerkin):

𝛹 = 𝑁𝑒 · 𝑐 = 𝑐𝑇 · 𝑁𝑒 (2.7.2)

∇𝛹 = 𝐵𝑒 · 𝑐 = 𝑐𝑇 · 𝐵𝑒 (2.7.3)

Siendo c un vector columna de términos constantes que, al aparecer en todos los términos de la ecuación igualada

a cero, podemos eliminarlo.

2.7.2 Términos del domino

Estudiemos ahora el primer término de las integrales en el domino de la ecuación principal:

−∫ 𝑐𝑐𝑔 · ∇𝛹 · ∇𝜙 𝑑ΩΩ

(2.7.4)

Aplicando el Método de Galerkin y sabiendo que ∇𝜙 = 𝐵𝑒 · 𝜙𝑒 , la integral queda:

−∫ 𝑐𝑐𝑔 · 𝐵𝑒𝑇· 𝐵𝑒 · 𝜙𝑒𝑑Ω

Ω𝑒 (2.7.5)

Nótese el cambio del dominio de integración, pasando este al dominio en el elemento. De la expresión anterior

podemos sacar de la integral los siguientes términos a ser constantes en el elemento:

−(𝑐𝑐𝑔)𝑒· 𝐵𝑒𝑇

· 𝐵𝑒 · (∫ 𝑑ΩΩ𝑒

) · 𝜙𝑒 (2.7.6)

Quedando finalmente:

−(𝑐𝑐𝑔)𝑒· 𝐵𝑒𝑇

· 𝐵𝑒 · 𝐴𝑒 · 𝜙𝑒 (2.7.7)

Siendo A el área del elemento, que viene dada por la expresión (2.5.6).

A continuación, seguimos el mismo procedimiento para el segundo término de la ecuación principal:

39

39 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

∫ 𝑐𝑐𝑔 · 𝛹 · 𝑘2 · 𝜙 𝑑ΩΩ

(2.7.8)

∫ 𝑐𝑐𝑔 · 𝑁𝑒𝑇· 𝑘2 · 𝑁𝑒 · 𝜙𝑒 𝑑Ω

Ω𝑒 (2.7.9)

Ahora sacamos de la integral los términos constantes en el elemento y dejamos las funciones de forma y

potencial en coordenadas naturales:

(𝑐𝑐𝑔𝑘2)𝑒· [∫ (

𝜉1

𝜉2

𝜉3

) (𝜉1 𝜉2 𝜉3)𝑑ΩΩ𝑒

] 𝜙𝑒 (2.7.10)

(𝑐𝑐𝑔𝑘2)𝑒[∫ (

𝜉12 𝜉1𝜉2 𝜉1𝜉3

𝜉2𝜉1 𝜉22 𝜉2𝜉3

𝜉3𝜉1 𝜉3𝜉2 𝜉32

)𝑑ΩΩ𝑒

] 𝜙𝑒 (2.7.11)

(𝑐𝑐𝑔𝑘2)𝑒·𝐴𝑒

12[2 1 11 2 11 1 2

]𝜙𝑒 (2.7.12)

Para el desarrollo de (2.7.12) se ha usado la siguiente propiedad:

∫ 𝜉1𝑖 𝜉2

𝑗 𝜉3𝑘𝑑Ω

Ω𝑒=

𝑖! 𝑗! 𝑘!

(𝑖 + 𝑗 + 𝑘 + 2)!2𝐴 (2.7.13)

2.7.3 Términos en el contorno

De la ecuación principal nos queda el siguiente término en el contorno:

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

(2.7.14)

A continuación, desarrollaremos este término dependiendo de si estamos trabajando con bordes abiertos o con

cerrados. Recordemos que en el capítulo 2.6 hallamos el término 𝜕𝜙

𝜕𝑛.

En bordes cerrados:

𝜕𝜙

𝜕𝑛= −𝑖

1 − 𝑅

1 + 𝑅(𝑘𝜙 +

1

2𝑘

𝜕2𝜙

𝜕𝑠2) (2.7.15)

En bordes abiertos:

𝜕𝜙

𝜕𝑛= −𝑖𝑘𝜙𝑖𝑛(𝑒𝑖𝑛⃗⃗ ⃗⃗ ⃗⃗ · �⃗⃗�) − 𝑖𝑘(𝜙 − 𝜙𝑖𝑛) −

𝑖

2𝑘(𝜕2𝜙

𝜕𝑠2−

𝜕2𝜙𝑖𝑛

𝜕𝑠2) (2.7.16)

Podemos observar que el término 𝜕2𝜙

𝜕𝑠2 aparece tanto en bordes cerrados como abiertos. Si desarrollamos este

término integrando por partes en la ecuación principal:

40

40

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

(2.7.17)

∫ 𝑐𝑐𝑔𝛹𝜕2𝜙

𝜕𝑠2 𝑑Γ

Γ

(2.7.18)

Para bordes cerrados:

∫ 𝑐𝑐𝑔𝛹𝜕2𝜙

𝜕𝑠2 𝑑Γ

Γ𝑐𝑒𝑟𝑟𝑎𝑑𝑜

= 𝑐𝑐𝑔 𝛹𝜕𝜙

𝜕𝑠|Γ𝑐𝑒𝑟𝑟𝑎𝑑𝑜

− ∫ 𝑐𝑐𝑔 𝜕𝛹

𝜕𝑠

𝜕𝜙

𝜕𝑠𝑑Γ

Γ𝑐𝑒𝑟𝑟𝑎𝑑𝑜

(2.7.19)

Para bordes abiertos:

∫ 𝑐𝑐𝑔𝛹𝜕2𝜙

𝜕𝑠2 𝑑Γ

Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

= 𝑐𝑐𝑔 𝛹𝜕𝜙

𝜕𝑠|Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

− ∫ 𝑐𝑐𝑔 𝜕𝛹

𝜕𝑠

𝜕𝜙

𝜕𝑠𝑑Γ

Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

(2.7.20)

Al repetirse el término 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑠|Γen ambos bordes y ser un dominio cerrado, podemos eliminarlos ya que:

𝑐𝑐𝑔 𝛹𝜕𝜙

𝜕𝑠|Γ𝑐𝑒𝑟𝑟𝑎𝑑𝑜

+ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑠|Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

= 0 (2.7.21)

Podemos aplicar el mismo procedimiento a 𝜕2𝜙𝑖𝑛

𝜕𝑠2 :

∫ 𝑐𝑐𝑔𝛹𝜕2𝜙𝑖𝑛

𝜕𝑠2 𝑑Γ = 𝑐𝑐𝑔 𝛹

𝜕𝜙𝑖𝑛

𝜕𝑠|Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

− ∫ 𝑐𝑐𝑔 𝜕𝛹

𝜕𝑠

𝜕𝜙𝑖𝑛

𝜕𝑠𝑑Γ

Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

(2.7.22)

Pudiendo aproximar el término 𝑐𝑐𝑔 𝛹𝜕𝜙𝑖𝑛

𝜕𝑠|Γ𝑎𝑏𝑖𝑒𝑟𝑡𝑜

a cero, ya que sólo aparece en los extremos del dominio

abierto.

41

41 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

2.7.3.1 Contornos totalmente reflejantes

Para contornos totalmente reflejantes (R=1) la expresión del potencial que atraviesa el contorno queda:

𝜕𝜙

𝜕𝑛= −𝑖

1 − 𝑅

1 + 𝑅(𝑘𝜙 +

1

2𝑘

𝜕2𝜙

𝜕𝑠2) (2.7.23)

𝜕𝜙

𝜕𝑛= 0 (2.7.24)

Luego la integral de contorno en estos bordes sería nula.

2.7.3.2 Contornos abiertos sin entrada de potencial

A continuación, calculamos las integrales para contornos abiertos. Para simplificar el proceso distinguiremos

entre dos casos. El primero de ellos es de borde abierto sin entrada de potencial (𝜙𝑖𝑛 = 0) y el segundo será

con entrada de potencial, que lo tomaremos de valor unidad (𝜙𝑖𝑛 =1).

Primero comenzaremos con el caso 𝜙𝑖𝑛 = 0. Nótese que esta condición se produce para una reflexión de R=0,

luego tenemos:

𝜕𝜙

𝜕𝑛= −𝑖𝑘𝜙 −

𝑖

2𝑘

𝜕2𝜙

𝜕𝑠2 (2.7.25)

Estudiaremos el caso de un borde abierto sin entrada de potencial sobre el eje x (y=cte).

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

= ∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑦 𝑑x =

Γ

(2.7.26)

= ∫ 𝑐𝑐𝑔𝛹 (−𝑖𝑘𝜙 −𝑖

2𝑘

𝜕2𝜙

𝜕𝑥2) 𝑑x

Γ

= (2.7.27)

= −𝑖 ∫ 𝑘𝑐𝑐𝑔𝛹𝜙𝑑xΓ

−𝑖

2∫

1

𝑘𝑐𝑐𝑔 𝛹

𝜕2𝜙

𝜕𝑥2𝑑x

Γ

(2.7.28)

El segundo término integral lo integraremos por partes, quedando la integral completa:

= −𝑖 ∫ 𝑘𝑐𝑐𝑔𝛹𝜙𝑑xΓ

−𝑖

2[1

𝑘𝑐𝑐𝑔 𝛹

𝜕𝜙

𝜕𝑥|Γ− ∫

1

𝑘𝑐𝑐𝑔

𝜕𝛹

𝜕𝑥

𝜕𝜙

𝜕𝑥𝑑𝑥

Γ

] (2.7.29)

El término 1

𝑘𝑐𝑐𝑔 𝛹

𝜕𝜙

𝜕𝑥|Γes igual a cero (2.7.20), quedando:

42

42

= −𝑖 ∫ 𝑘𝑐𝑐𝑔𝛹𝜙𝑑xΓ

+𝑖

2∫

1

𝑘𝑐𝑐𝑔

𝜕𝛹

𝜕𝑥

𝜕𝜙

𝜕𝑥𝑑𝑥

Γ

(2.7.30)

Estas integrales las discretizaremos en elementos lineales de dos nodos, lo cual es compatible con la

discretización lineal del dominio con triángulos de tres nodos.

Emplearemos las siguientes funciones de forma en coordenadas naturales:

Figura 2.10 – Funciones de forma para un elemento de dos nodos

Figura 2.11 – Coordenadas naturales para un elemento de dos nodos

𝑁𝑒 = [𝑁1𝑒 𝑁2

𝑒] (2.7.31)

𝑁1𝑒 =

1

2(1 − 𝜉) (2.7.32)

𝑁2𝑒 =

1

2(1 + 𝜉) (2.7.33)

𝜙𝑒 = [𝜙1

𝜙2] (2.7.34)

𝜙 = 𝑁𝑒 · 𝜙𝑒 (2.7.35)

𝜕𝜙

𝜕𝑥=

𝜕𝑁𝑒

𝜕𝑥· 𝜙𝑒 = [

𝜕𝑁1𝑒

𝜕𝑥

𝜕𝑁2𝑒

𝜕𝑥] [

𝜙1

𝜙2] = 𝐵𝑒 · 𝜙𝑒 (2.7.36)

Las coordenadas cartesianas en función de las naturales vienen dadas por:

43

43 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

[𝑥𝑦] = [

𝑥1 · 𝑁1𝑒(𝜉) 𝑥2 · 𝑁2

𝑒(𝜉)

𝑦1 · 𝑁1𝑒(𝜉) 𝑦2 · 𝑁2

𝑒(𝜉)] (2.7.37)

Siendo los diferenciales del término integral:

𝑑𝑥 =𝜕𝑥

𝜕𝜉· 𝑑𝜉 = 𝑥1

𝜕𝑁1𝑒

𝜕𝜉𝑑𝜉 + 𝑥2

𝜕𝑁2𝑒

𝜕𝜉𝑑𝜉 (2.7.38)

𝑑𝑥 = −𝑥1

2𝑑𝜉 +

𝑥2

2𝑑𝜉 =

𝑥2 − 𝑥1

2𝑑𝜉 (2.7.39)

𝑑𝑥 =𝐿

2𝑑𝜉 (2.7.40)

Aplicaremos este diferencial y el Método de Galerkin para calcular la integral:

= −𝑖 ∫ 𝑘𝑐𝑐𝑔𝛹𝜙𝑑xΓ

+𝑖

2∫

1

𝑘𝑐𝑐𝑔

𝜕𝛹

𝜕𝑥

𝜕𝜙

𝜕𝑥𝑑𝑥

Γ

(2.7.41)

= −𝑖(𝑐𝑐𝑔𝑘)𝑒[∫ 𝑁𝑒𝑇

𝑁𝑒𝐿

2𝑑𝜉

1

−1

] 𝜙𝑒 +𝑖

2∫

1

𝑘𝑐𝑐𝑔 𝐵𝑒𝑇

𝐵𝑒𝜕𝜙

𝜕𝑥𝑑𝑥

Γ

(2.7.42)

Para el término 𝜕𝜙

𝜕𝑥 tenemos:

𝜙 = 𝑁𝑒 · 𝜙𝑒 (2.7.43)

𝜕𝜙

𝜕𝑥=

𝜕𝑁𝑒

𝜕𝑥· 𝜙𝑒 =

𝜕𝑁𝑒

𝜕𝜉

𝜕𝜉

𝜕𝑥· 𝜙𝑒 =

2

𝐿

𝜕𝑁𝑒

𝜕𝜉· 𝜙𝑒 (2.7.44)

Siendo:

𝜕𝑁𝑒

𝜕𝜉= [

𝜕𝑁1𝑒

𝜕𝜉

𝜕𝑁2𝑒

𝜕𝜉] = [−

1

2

1

2] =

1

2[−1 1] (2.7.45)

Luego:

𝜕𝜙

𝜕𝑥=

2

𝐿·1

2[−1 1] · 𝜙𝑒 =

1

𝐿[−1 1] · 𝜙𝑒 = 𝐵𝑒 · 𝜙𝑒 (2.7.46)

Finalmente, la integral nos queda:

44

44

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

= [−𝑖(𝑐𝑐𝑔𝑘)𝑒∫ 𝑁𝑒𝑇

𝑁𝑒𝐿

2𝑑𝜉

1

−1

+𝑖𝐿(𝑐𝑐𝑔)

𝑒

4𝑘𝑒𝐵𝑒𝑇

𝐵𝑒 ∫ 𝑑𝜉1

−1

] · 𝜙𝑒 (2.7.47)

2.7.3.3 Contornos abiertos con entrada de potencial

Tras esto calcularemos la integral para los bordes abiertos con entrada de potencial (𝜙𝑖𝑛 =1).

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

(2.7.48)

Siendo:

𝜕𝜙

𝜕𝑛= −𝑖𝑘𝜙𝑖𝑛(𝑒𝑖𝑛⃗⃗ ⃗⃗ ⃗⃗ · �⃗⃗�) − 𝑖𝑘(𝜙 − 𝜙𝑖𝑛) −

𝑖

2𝑘(𝜕2𝜙

𝜕𝑠2−

𝜕2𝜙𝑖𝑛

𝜕𝑠2) (2.7.49)

Si suponemos que el potencial incidente el perpendicular al borde tenemos:

𝑒𝑖𝑛⃗⃗ ⃗⃗ ⃗⃗ · �⃗⃗� = −1 (2.7.50)

Además, sustituimos 𝜙𝑖𝑛 =1, quedándonos el término 𝜕𝜙

𝜕𝑛:

𝜕𝜙

𝜕𝑛= 𝑖𝑘 − 𝑖𝑘(𝜙 − 1) −

𝑖

2𝑘

𝜕2𝜙

𝜕𝑠2= 2𝑖𝑘 − 𝑖𝑘𝜙 −

𝑖

2𝑘

𝜕2𝜙

𝜕𝑠2 (2.7.51)

Supongamos como en el caso anterior un borde abierto con potencial entrado igual a uno que es horizontal sobre

el eje x:

∫ 𝑐𝑐𝑔𝛹𝜕𝜙

𝜕𝑛 𝑑Γ

Γ

= ∫ 𝑐𝑐𝑔𝛹 [2𝑖𝑘 − 𝑖𝑘𝜙 −𝑖

2𝑘

𝜕2𝜙

𝜕𝑥2 ] 𝑑x

Γ

= (2.7.52)

= 2𝑖(𝑐𝑐𝑔𝑘)𝑒∫ 𝛹𝑑xΓ

− 𝑖(𝑐𝑐𝑔𝑘)𝑒∫ 𝛹𝜙𝑑xΓ

−𝑖(𝑐𝑐𝑔)

𝑒

2𝑘𝑒∫ 𝛹

𝜕2𝜙

𝜕𝑥2 𝑑x

Γ

(2.7.53)

Integramos por partes el último término integral, quedando:

2𝑖(𝑐𝑐𝑔𝑘)𝑒∫ 𝛹𝑑xΓ

− 𝑖(𝑐𝑐𝑔𝑘)𝑒∫ 𝛹𝜙𝑑xΓ

−𝑖(𝑐𝑐𝑔)

𝑒

2𝑘𝑒[𝛹

𝜕𝜙

𝜕𝑦|Γ

− ∫𝜕𝛹

𝜕𝑥

𝜕𝜙

𝜕𝑥 𝑑x

Γ

] (2.7.54)

45

45 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

El término 𝛹𝜕𝜙

𝜕𝑦|Γse elimina según (2.7.21). Aplicando el Método de Garlerkin y trasformando el diferencial

a coordenadas naturales:

2𝑖(𝑐𝑐𝑔𝑘)𝑒∫ 𝑁𝑒𝑇

𝑁𝑒𝐿

2𝑑𝜉

1

−1

− 𝑖(𝑐𝑐𝑔𝑘)𝑒[∫ 𝑁𝑒𝑇

𝑁𝑒𝐿

2𝑑𝜉

1

−1

] 𝜙𝑒 −𝑖(𝑐𝑐𝑔)

𝑒𝐿

2𝑘𝑒𝐵𝑒𝑇

𝐵𝑒𝜙𝑒 (2.7.55)

46

46

47

47 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

3 VALIDACIÓN DE RESULTADOS

3.1 Propagación simple del oleaje

3.1.1 Descripción del fenómeno

El problema planteado consiste en la propagación de una ola por un espacio de fondo constante, resultando de

esta propagación una altura de ola que es igual a la introducida inicialmente.

3.1.2 Modelo empleado

Para la comprobación elaboraremos un modelo con fondo constante y comprobaremos que la altura de ola no

varía. Las condiciones de contorno son las siguientes:

Figura 3.1 – Modelo de propagación empleado

Para asegurar la fiabilidad de la solución comprobaremos que estamos trabajando en aguas reducidas y la ola se

ve alterada por el fondo. Para una profundidad de 5 metros:

𝑇 = 5 𝑠𝑔 𝑧 = 5 𝑚

} → 𝑘 = 0.2073 (3.1.1)

𝐿 =2𝜋

𝑘= 30.31 𝑚 (3.1.2)

48

48

Condición de aguas reducidas:

𝑑

𝐿<

1

2→

5

30.31= 0.16 (3.1.3)

Por lo que cumple la condición de aguas reducidas.

3.1.3 Solución teórica

La solución teórica se obtendrá a partir del razonamiento del fenómeno. Si para un fondo variable la altura de

ola debe alterarse, para un fondo constante esta debe permanecer constante. Es por ello que, si se introduce un

oleaje con potencial de valor unidad, el potencial a la salida del modelo debe de ser igual a uno.

3.1.4 Solución obtenida

Desarrollaremos un modelo dentro del programa con las siguientes propiedades:

- Geometría:

x (m) y (m)

0 0

0 200

120 200

120 0

0 0

Tabla 3.1 – Geometría empleada

- Batimetría de fondo con pendiente constante dada por los siguientes puntos:

x (m) y (m) z (m)

0 0 5

120 0 5

0 200 5

120 200 5

Tabla 3.2 – Batimetría empleada

- Malla de tamaño 3 metros.

- Condiciones de contorno:

49

49 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Borde Condición de contorno

(0,0) - (0,200) Borde totalmente reflejante

(0,200) - (120,200) Borde no reflejante sin entrada de potencial

(120,200) - (120,0) Borde totalmente reflejante

(120,0) - (0,0) Borde no reflejante con entrada de potencial igual a 1

Tabla 3.3 – Condiciones de contorno impuestas

- Periodo: 5 segundos.

Con estas propiedades, obtenemos la siguiente solución:

Figura 3.2 – Solución obtenida

50

50

Si representamos la parte real de esta solución nos queda:

Como podemos observar, el valor máximo obtenido es de 1,009 m.

3.1.5 Comparación de resultados

El resultado obtenido teóricamente es de 1 metro, mientras el que nos da el programa es de 1,009, luego podemos

dar por buena la solución, ya que se da un error del orden de los milímetros.

51

51 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

3.2 Difracción

3.2.1 Descripción del fenómeno

Se denomina difracción al fenómeno por el cual la energía del oleaje es transferida lateralmente.

Figura 3.3 – Difracción tras un dique

Esto se produce cuando el frente de oleaje encuentra un obstáculo a su paso que forma cierto ángulo con su

dirección. Si el fondo es constante se produce difracción pura, ya que no se puede producir shoaling ni refracción.

3.2.2 Modelo empleado

Elaboraremos un modelo de un dique para el que la longitud de onda sea la mitad que la apertura del dique

(B=2L). Por simplificación sólo desarrollaremos la mitad de dicho modelo, aplicando una simetría por el eje

vertical que impondremos como un borde totalmente reflejante. Además, en el contorno inferior incidirá un

potencial de valor unidad perpendicular a dicho borde.

52

52

Figura 3.4 – Modelo de difracción empleado

La batimetría será constante de valor 5 metros y el potencial tendrá una frecuencia de 5 sg. Con todos estos

datos podemos calcular la longitud de onda, que viene dada por:

𝑇 = 5 𝑠𝑔 𝑧 = 5 𝑚

} → 𝑘 = 0.207 (3.2.1)

Para 𝑘 = 0.2073, la longitud de onda resulta:

𝐿 =2𝜋

𝑘= 30.309 𝑚 (3.2.2)

Luego la apertura (B) del dique debe de ser 2𝐿 ≈ 60 𝑚.

El coeficiente de difracción viene determinado por:

𝑘𝑑 =𝑎𝑙𝑡𝑢𝑟𝑎 𝑑𝑒 𝑜𝑙𝑎 𝑟𝑒𝑠𝑢𝑙𝑡𝑎𝑡𝑒

𝑎𝑙𝑡𝑢𝑟𝑎 𝑑𝑒 𝑜𝑙𝑎 𝑖𝑛𝑐𝑖𝑑𝑒𝑛𝑡𝑒 (3.2.3)

Como hemos impuesto que el potencial incidente sea igual a 1, el coeficiente de difracción de nuestro modelo

será igual al potencial resultante.

53

53 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

3.2.3 Solución teórica

Para hallar la solución teórica nos basaremos en el Shore Protection Manual. Bajo todas las premisas expuestas

en el apartado anterior, el coeficiente de difracción viene dado por la siguiente figura:

Figura 3.5 – Solución teórica para una difracción

Si a esta solución adimensional le imponemos las condiciones de nuestro modelo y la introducimos en

MATLAB mediante la herramienta WebPlotDigitizer, nos queda:

54

54

Figura 3.6 – Coeficiente de difracción teórico en MATLAB

3.2.4 Solución obtenida

Para el problema descrito, desarrollaremos un modelo dentro del programa con las siguientes propiedades:

- Geometría:

x (m) y (m)

0 0

0 200

120 200

120 0

30 0

0 0

Tabla 3.4 – Geometría empleada en el modelo de difracción

- Batimetría de fondo constante a 5 metros.

- Malla de tamaño 3 metros.

55

55 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

- Condiciones de contorno:

Borde Condición de contorno

(0,0,-5) - (0,200,-5) Borde totalmente reflejante

(0,200,-5) - (120,200,-5) Borde no reflejante sin entrada de potencial

(120,200,-5) - (120,0,-5) Borde no reflejante sin entrada de potencial

(120,0,-5) - (30,0,-5) Borde totalmente reflejante

(30,0,-5) - (0,0,-5) Borde no reflejante con entrada de potencial igual a 1

Tabla 3.5 – Condiciones de contorno en el modelo de difracción

- Periodo: 5 segundos.

Con estas propiedades, obtenemos la siguiente solución:

Figura 3.7 – Solución gráfica del modelo de difracción

56

56

Si en esta solución hallamos aquellos contornos cuyo valor del potencial sea 1, 0.8, 0.6, 0.4 y 0.2 tenemos:

Figura 3.8 – Coeficiente de difracción obtenido

3.2.5 Comparación de resultados

Si superponemos la solución teórica y la obtenida nos queda:

Figura 3.9 – Comparación de los coeficientes de difracción obtenidos

57

57 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Como podemos observar, la solución obtenida se aproxima mucho a la real, por lo que podemos considerar

como óptimo el resultado. Si nos fijamos en la curva obtenida para un coeficiente de difracción de 0.2, en torno

al punto 120,120 dicha gráfica tiende a deformarse. Esto se debe a la interacción que tiene el oleaje al llegar al

vértice (120,200), ya que choca contra el borde que es totalmente reflejante, produciendo así una respuesta que

interfiere en la curva mencionada.

3.3 Shoaling

3.3.1 Descripción del fenómeno

El shoaling consiste en la reducción de la longitud de onda y el aumento de su altura conforme esta se acerca a

la orilla. Esto se produce debido a que la ola conforme recorre el fondo se decelera, por lo que por conservación

de energía la altura debe aumentar.

Este fenómeno se produce en aguas reducidas, ya que en aguas profundas el oleaje no se ve afectado por el

fondo. En batimetrías rectas y paralelas se produce shoaling puro, sin fenómeno de refracción.

3.3.2 Modelo empleado

Elaboraremos un modelo en el que propagaremos una ola desde aguas profundas hasta aguas reducidas.

Figura 3.10 – Modelo de shoaling empleado

Este modelo constará de dos bordes reflejantes verticales paralelos entre sí, así como de un borde no reflejante

horizontal con entrada de un potencial de valor unidad que es paralelo a otro borde no reflejante sin entrada de

potencial. La batimetría estará compuesta de una pendiente constante que va desde 25 metros de profundidad a

1.

Además, podemos calcular si efectivamente nos encontramos en ambos extremos en aguas profundas y en aguas

reducidas.

Para z = 20m:

58

58

𝑇 = 5 𝑠𝑔 𝑧 = 20 𝑚

} → 𝑘 = 0.1611 (3.3.1)

𝐿 =2𝜋

𝑘= 39 𝑚 (3.3.2)

Condición de aguas profundas:

𝑑

𝐿>

1

2→

25

38.91= 0.514 (3.3.3)

Con lo cual estamos en aguas profundas.

Para z = 1m:

𝑇 = 5 𝑠𝑔 𝑧 = 5 𝑚

} → 𝑘 = 0.412 (3.3.4)

𝐿 =2𝜋

𝑘= 15.23 𝑚 (3.3.5)

Condición de aguas reducidas:

𝑑

𝐿<

1

2→

1

15.23= 0.065 (3.3.6)

Por lo que cumple la condición de aguas reducidas.

3.3.3 Solución teórica

Como en el caso de la difracción, emplearemos el Shore Protection Manual para resolver el problema

planteado. Para ello primero calcularemos la longitud de onda en aguas profundas, que viene dado por:

𝐿𝑜 = 1.56 · 𝑇2 (3.3.7)

Para T = 5 sg:

𝐿𝑜 = 39 𝑚 (3.3.8)

A partir del Shore Protection Manual se puede calcular el coeficiente de shoaling utilizando la siguiente tabla.

59

59 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Figura 3.11 –Ks en función de h/Lo

Introduciremos esta gráfica en Matlab mediante la herramienta WebPlotDigitizer, para posteriormente validar

nuestro modelo con este gráfico, comprobando si difiere o no de él.

3.3.4 Solución obtenida

Desarrollaremos un modelo dentro del programa con las siguientes propiedades:

- Geometría:

x (m) y (m)

0 0

0 200

120 200

120 0

0 0

Tabla 3.6 – Geometría empleada para el modelo de shoaling

- Batimetría de fondo con pendiente constante dada por los siguientes puntos:

x (m) y (m) z (m)

0 0 25

120 0 25

0 200 1

60

60

120 200 1

Tabla 3.7 – Batimetría empleada para el modelo de shoaling

- Malla de tamaño 3 metros.

- Condiciones de contorno:

Borde Condición de contorno

(0,0) - (0,200) Borde totalmente reflejante

(0,200) - (120,200) Borde no reflejante sin entrada de potencial

(120,200) - (120,0) Borde totalmente reflejante

(120,0) - (0,0) Borde no reflejante con entrada de potencial igual a 1

Tabla 3.8 – Condiciones de contorno impuestas para el modelo de shoaling

- Periodo de la ola: 5 segundos.

Si representamos h/Lo frente a Ks nos queda la gráfica siguiente:

Figura 3.12 – Coeficiente de shoaling obtenido

3.3.5 Comparación de resultados

Como podemos ver en la Figura 3.13 – Comparación de coeficiente de shoaling, los resultados obtenidos siguen

la misma tendencia que los teóricos sin diferir cuantiosamente teniendo en cuenta el grado de incertidumbre, por

lo que podemos dar como válido el resultado.

61

61 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Figura 3.13 – Comparación de coeficiente de shoaling

62

62

3.4 Resonancia

3.4.1 Descripción del fenómeno

Este fenómeno se produce en zonas abrigadas cuando el periodo de oscilación de estas se iguala con el periodo

de las variaciones propias del nivel del mar. Al producirse esto, el área en cuestión entra en resonancia,

produciendo grandes oscilaciones del nivel del mar dentro de esta.

3.4.2 Modelo empleado

Para el estudio de la resonancia emplearemos una dársena con las siguientes dimensiones.

Figura 3.14 – Modelo de resonancia

Nótese que las condiciones de contorno impuestas son las de borde totalmente reflejante en paredes verticales

y borde horizontal superior, así como borde no reflejante con entrada de potencial de valor unidad.

3.4.3 Solución teórica

Según el Shore Protection Manual, la resonancia se puede estudiar distinguiendo dos casos: dársenas abiertas y

dársenas cerradas. Nuestro caso de estudio es una dársena abierta:

En estos casos, siempre que nos encontremos en aguas reducidas, el periodo de resonancia viene determinado

por:

(3.4.1)

Siendo:

- 𝑙𝐵: ancho de la dársena. En nuestro caso este ancho es de 400 metros.

- 𝑛: Periodo natural n de oscilación.

- 𝑔: gravedad (9.81 m/s²)

- 𝑑: Profundidad de la dársena. En nuestro caso es de 5 metros.

63

63 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Figura 3.15 – Modos de resonancia

En base a la expresión anterior, los periodos de resonancia de la dársena serán:

n Tn (s)

0 127,71

1 42,57

2 25,54

3 18,24

4 14,19

Tabla 3.9 – Periodos de resonancia teóricos

64

64

Si dibujamos estos periodos en una gráfica, obtenemos:

3.4.4 Solución obtenida

Desarrollaremos un modelo dentro del programa con las siguientes propiedades:

- Geometría:

x (m) y (m)

0 0

0 100

200 100

200 0

0 0

Tabla 3.10 – Puntos de la geometría para el modelo de resonancia

- Batimetría de fondo constante de valor 1 metro.

- Malla de tamaño 3 metros.

65

65 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

- Condiciones de contorno:

Borde Condición de contorno

(0,0) - (0,100) Borde totalmente reflejante

(0,100) - (200,100) Borde totalmente reflejante

(200,100) - (200,0) Borde totalmente reflejante

(200,0) - (0,0) Borde no reflejante con entrada de potencial igual a 1

Tabla 3.11 – Condiciones de contorno para el modelo de resonancia

- Periodo de la ola: 5 segundos.

Con estas propiedades, obtenemos la siguiente solución en la línea de la bocana:

Figura 3.16 – Periodos de resonancia obtenidos

El muestreo de periodos que se ha realizado para esta gráfica varía en 0.01 segundos.

66

66

3.4.5 Comparación de resultados

Si nos fijamos en el gráfico anterior, podemos comprobar que los valores más bajos obtenidos coinciden con los

periodos de resonancia hallados en la solución teórica.

Figura 3.17 – Comparación gráfica de los periodos de resonancia

Si comparamos analíticamente los valores obtenidos:

n Tn (s) teórico Tn (s) obtenido Error

0 127,71 127,70 0,01

1 42,57 42,61 -0,04

2 25,54 25,51 0,03

3 18,24 18,22 0,02

4 14,19 14,16 0,03

Tabla 3.12 – Comparación analítica de los periodos de resonancia

Se puede constatar en la tabla que los periodos de resonancia obtenidos que la solución es correcta.

Además, podemos corroborar este resultado ya que según la solución teórica en el borde de esta bocana la

amplitud valdrá cero, por lo que podemos considerar el resultado como válido.

67

67 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

4 FUNCIONES EMPLEADAS

Para el cálculo de la solución se desarrollan una serie de funciones en MATLAB. Estos algoritmos se basan en

los proporcionados por Gabriel Chamorro, aunque se ha mejorado considerablemente el tiempo de cálculo, la

obtención de contornos, además de implementarse el código para un fondo variable.

4.1 Dominio

Para el cálculo del dominio dentro del programa emplearemos el código que a continuación se muestra. Es

necesario conocer que previamente se han introducido los siguientes datos:

Variable Descripción

T Periodo del oleaje.

pv Define los puntos de la geometría.

b Define los puntos de la batimetría.

fondo_cte Indica si la batimetría es constate.

p Matriz de puntos de mallado

t Matriz de triángulos de mallado.

cc Matriz de condiciones de contorno.

Tabla 4.1 – Variables introducidas

Tras introducir en el programa estas variables, el código de resolución: % PROPIEDADES w=2*pi/T; % frecuencia angular (rad/sg) g=9.81; % gravedad (m/sg2)

% DOMINIO if isequal(fondo_cte,0) % asignar a cada elemento una profundidad [Xq,Yq,Zq]=griddata(b(:,1),b(:,2),b(:,3),p(:,1),p(:,2)); zh=interpol(Xq,Yq,Zq,t); elseif isequal(fondo_cte,1) zh=ones(size(t,1),1)*b(1,3); end

kz=k_h(zh,T); % hallar k para cada elemento (varía por profundidad) ccg=celeridad(zh,kz,fondo_cte,T); % hallamos el término de CCg. Si el fondo es cte,

CCg=1. K=zeros(size(p,1)); Kee=zeros(size(p,1));

for n=1:size(t,1); ti=t(n,1); tj=t(n,2); tk=t(n,3); % numeros de nodos del elem. pii=p(ti,:);pj=p(tj,:);pk=p(tk,:); % coordenadas de los nodos kh=kz(n,1); % saca la k del nodo con el que está trabajando cele=ccg(1,n);

68

68

Ke=dominio(pii,pj,pk,kh,cele); Kee([ti tj tk],[ti tj tk])=Kee([ti tj tk],[ti tj tk])+Ke; end

Figura 4.1 – Código de resolución del dominio

Se emplean las siguientes funciones para la resolución del dominio:

4.1.1 Función interpol

Obtiene la coordenada z del centro de gravedad de cada uno de los elementos de la malla.

function [zh]=interpol(Xq,Yq,Zq,t) %SACA LA COORDENADA Z DEL CENTRO DE GRAVEDAD for i=1:length(t); t1=t(i,1);t2=t(i,2);t3=t(i,3); x1=Xq(t1);x2=Xq(t2);x3=Xq(t3);xt=[x1;x2;x3]; y1=Yq(t1);y2=Yq(t2);y3=Yq(t3);yt=[y1;y2;y3]; z1=Zq(t1);z2=Zq(t2);z3=Zq(t3);zt=[z1;z2;z3]; x_cdg=(x1+x2+x3)/3; y_cdg=(y1+y2+y3)/3; [x_grid,y_grid,z_grid]=griddata(xt,yt,zt,x_cdg,y_cdg); zh(i,1)=z_grid; end end

Figura 4.2 – Función interpol

4.1.2 Función k_h Calcula la k de cada elemento, en función de su centro de gravedad.

function [kh]=k_h(zh,T) g=9.81; zh=abs(zh); for i=1:length(zh) Lo=g*T^2/(2*pi); Lin=Lo; Lout=Lo*tanh((2*pi/Lo)*zh(i,1)); error=abs(Lin-Lout); while error>1e-3 Lin=Lout; Lout=Lo*tanh((2*pi/Lin)*zh(i,1)); error=abs(Lin-Lout); end L=Lout; kh(i,1)=2*pi/L; end end

Figura 4.3 – Función k_h

4.1.3 Función celeridad Halla el término CCg para cada una de las profundidades y número de onda.

function [ccg]=celeridad(zh,k,fondo_cte,T)

if isequal(fondo_cte,1) ccg=ones(size(zh,1)); elseif isequal(fondo_cte,0) zh=abs(zh); g=9.81;

69

69 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

for i=1:size(zh,1) L = 2*pi/k(i,1); c = L/T; cg = (1/2)*c*(1+(2*k(i,1)*zh(i,1))/sinh(2*k(i,1)*zh(i,1))); ccg(i)=c*cg; end end end

Figura 4.4 – Función celeridad

4.1.4 Función dominio En base a las variables introducidas, calcula cada uno de los términos ((2.7.7) y (2.7.12)) para todos los

elementos del dominio.

function Ke =dominio(p1,p2,p3,kh,cele) x1=p1(1); y1=p1(2); x2=p2(1); y2=p2(2); x3=p3(1); y3=p3(2);

C=[ 1 1 1 ; x1 x2 x3 ; y1 y2 y3];

A=(1/2)*det(C);

B=(1/(2*A))*[y2-y3 y3-y1 y1-y2 ; x3-x2 x1-x3 x2-x1];

I1=(kh^2*A/12)*[2 1 1 ; 1 2 1 ; 1 1 2];

I2=-A*(B'*B);

Ke=(I1+I2)*cele;

end

Figura 4.5 – Función dominio

70

70

4.2 Contorno

Para el contorno distinguiremos tres tipos de condiciones:

Valor Condición

1 Borde totalmente reflejante

2 Borde no reflejante sin entrada de potencial

3 Borde no reflejante con entrada de potencial

Tabla 4.2 – Valores de las condiciones de contorno

En base a estos valores, resolvemos los términos del contorno con la siguiente línea de código:

% CONTORNO if isequal(fondo_cte,0) for r=1:size(cc,1) for s=1:size(cc{r,1},1)-1 z1=Zq(cc{r,1}(s,1)); z2=Zq(cc{r,1}(s+1,1)); z_contorno{r,1}(s,1)=(z1+z2)/2; end end elseif isequal(fondo_cte,1) for r=1:size(cc,1) z_contorno{r,1}=ones(size(cc{r,1},1),1)*b(1,3); end end

kz_contorno=k_contorno(z_contorno,T); % hallar k para cada elemento (varía por profundidad) ccg_contorno=celeridad_contorno(z_contorno,kz_contorno,fondo_cte,T); % hallamos el término

de CCg. Si el fondo es cte, CCg=1.

[Kas,f]=calculo_contorno(p,t,cc,T,kz_contorno,ccg_contorno);

Figura 4.6 – Código de resolución del contorno

4.2.1 Función kz_contorno

Calcula el número de onda para los lados del contorno.

function kh=k_contorno(z_contorno,T) g=9.81;

for r=1:size(z_contorno,1) z_contorno{r,1}=abs(z_contorno{r,1}); for s=1:size(z_contorno{r,1},1) Lo=g*T^2/(2*pi); Lin=Lo; Lout=Lo*tanh((2*pi/Lo)*z_contorno{r,1}(s,1)); error=abs(Lin-Lout); while error>1e-3 Lin=Lout; Lout=Lo*tanh((2*pi/Lin)*z_contorno{r,1}(s,1)); error=abs(Lin-Lout); end L=Lout;

71

71 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

kh{r,1}(s,1)=2*pi/L; end end

end

Figura 4.7 – Función kz_contorno

4.2.2 Función celeridad_contorno

Calcula la CCg para los elementos del contorno.

function [ccg_contorno]=celeridad_contorno(z_contorno,kh,fondo_cte,T)

if isequal(fondo_cte,1) for r=1:size(z_contorno,1) ccg_contorno{r,1}=ones(size(z_contorno{r,1},1)); end elseif isequal(fondo_cte,0) for r=1:size(z_contorno,1) g=9.81; z_contorno{r,1}=abs(z_contorno{r,1}); for s=1:size(z_contorno{r,1},1) L = 2*pi/kh{r,1}(s,1); c(s) = L/T; cg(s) =

(1/2)*c(s)*(1+(2*kh{r,1}(s,1)*z_contorno{r,1}(s,1))/sinh(2*kh{r,1}(s,1)*z_contorno{r

,1}(s,1))); ccg_contorno{r,1}(s,1)=c(s)*cg(s); end end end end

Figura 4.8 – Función celeridad_contorno

4.2.3 Función cálculo_contorno

El cálculo de los elementos de contorno viene dado por la siguiente función:

function [Kas,f]=calculo_contorno(p,t,cc,T,k,ccg)

%cc --- matriz con numero de puntos del contorno (NO coordenadas) np=length(cc); npp=size(p,1); Kas=zeros(npp);

for n=1:np if isequal(cc{n,2},1) %BORDE TOTALMENTE REFLEJANTE (R=1)

elseif isequal(cc{n,2},2) %BORDE ABIERTO SIN ENTRADA DE POTENCIAL (fi_in=0)

ncc=size(cc{n,1},1);

%primero calcular k por cada dos puntos for j=1:ncc-1 cele=ccg{n,1}(j,1); X1=p(cc{n,1}(j,1),1);Y1=p(cc{n,1}(j,1),2); X2=p(cc{n,1}(j+1,1),1);Y2=p(cc{n,1}(j+1,1),2);

72

72

Le=sqrt((X2-X1)^2+(Y2-Y1)^2); B=(1/Le)*[-1 1]; Ke=(-0.5*Le*k{n,1}(j,1)*1i*Int_NN+(Le*1i/(2*k{n,1}(j,1)))*B'*B)*cele;

Kas(cc{n,1}(j,1),cc{n,1}(j,1))=Kas(cc{n,1}(j,1),cc{n,1}(j,1))+Ke(1,1); Kas(cc{n,1}(j,1),cc{n,1}(j+1,1))=Kas(cc{n,1}(j,1),cc{n,1}(j+1,1))+Ke(1,2); Kas(cc{n,1}(j+1,1),cc{n,1}(j,1))=Kas(cc{n,1}(j+1,1),cc{n,1}(j,1))+Ke(2,1); Kas(cc{n,1}(j+1,1),cc{n,1}(j+1,1))=Kas(cc{n,1}(j+1,1),cc{n,1}(j+1,1))+Ke(2,2); end

elseif isequal(cc{n,2},3) %BORDE ABIERTO CON ENTRADA DE POTENCIAL (fi_in=1)

ncc=size(cc{n,1},1);

for j=1:ncc-1 cele=ccg{n,1}(j,1); X1=p(cc{n,1}(j,1),1);Y1=p(cc{n,1}(j,1),2); X2=p(cc{n,1}(j+1,1),1);Y2=p(cc{n,1}(j+1,1),2);

Le=sqrt((X2-X1)^2+(Y2-Y1)^2); B=(1/Le)*[-1 1]; Ke=(-0.5*Le*k{n,1}(j,1)*1i*Int_NN+(Le*1i/(2*k{n,1}(j,1)))*B'*B)*cele;

Kas(cc{n,1}(j,1),cc{n,1}(j,1))=Kas(cc{n,1}(j,1),cc{n,1}(j,1))+Ke(1,1); Kas(cc{n,1}(j,1),cc{n,1}(j+1,1))=Kas(cc{n,1}(j,1),cc{n,1}(j+1,1))+Ke(1,2); Kas(cc{n,1}(j+1,1),cc{n,1}(j,1))=Kas(cc{n,1}(j+1,1),cc{n,1}(j,1))+Ke(2,1); Kas(cc{n,1}(j+1,1),cc{n,1}(j+1,1))=Kas(cc{n,1}(j+1,1),cc{n,1}(j+1,1))+Ke(2,2); end

f=zeros(size(p,1),1);

for j=1:ncc-1

phin=cc{n,3}; cele=ccg{n,1}(j,1); X1=p(cc{n,1}(j,1),1);Y1=p(cc{n,1}(j,1),2); X2=p(cc{n,1}(j+1,1),1);Y2=p(cc{n,1}(j+1,1),2); Le=sqrt((X2-X1)^2+(Y2-Y1)^2); fe1=(Le*k{n,1}(j,1)*1i*Int_N)*cele*phin; f(cc{n,1}(j,1))=f(cc{n,1}(j,1))+fe1(1); f(cc{n,1}(j+1,1))=f(cc{n,1}(j+1,1))+fe1(2); end end end end

Figura 4.9 – Función calculo_contorno

4.2.4 Función Int_N

Calcula numéricamente la cuadratura de Gauss para la integral definida en (2.7.47)

function integral=Int_N

% Obtiene numericamente con cuadratura de Gauss (dos puntos) la integral % de N·dT

chi1=-1/sqrt(3) ; w1=1.0; chi2=+1/sqrt(3) ; w2=1.0;

Ne11=0.5*(1-chi1); Ne21=0.5*(1+chi1); Ne1=[Ne11 Ne21];

73

73 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Ne12=0.5*(1-chi2); Ne22=0.5*(1+chi2); Ne2=[Ne12 Ne22];

integral=Ne1'*w1+Ne2'*w2;

end

Figura 4.10 – Función Int_N

4.2.5 Función Int_NN

Calcula numéricamente la cuadratura de Gauss para la integral definida en (2.7.55)

function integral=Int_NN

% Obtiene numericamente con cuadratura de Gauss (dos puntos) la integral % de NT·N·dT

chi1=-1/sqrt(3) ; w1=1.0; chi2=+1/sqrt(3) ; w2=1.0;

Ne11=0.5*(1-chi1); Ne21=0.5*(1+chi1); Ne1=[Ne11 Ne21];

Ne12=0.5*(1-chi2); Ne22=0.5*(1+chi2); Ne2=[Ne12 Ne22];

integral=Ne1'*Ne1*w1+Ne2'*Ne2*w2;

end

Figura 4.11 – Función Int_NN

74

74

75

75 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

5 VALIDACIÓN DE UN PUERTO EN EL SOFTWARE

DESARROLLADO

Realizaremos un recorrido por el programa siguiendo el ejemplo de un modelo de una dársena portuaria. Con

este desarrollo podremos conocer la utilización del programa, así como validar los resultados obtenidos en este

con un caso mas cercano a la realidad.

5.1 Visualización del entorno gráfico

El programa creado sigue el método de trabajo utilizado por programas como ANSYS ® o AUTOCAD ®. En

una primera pantalla se visualizan todas las opciones de las que dispone, pudiendo añadir las propiedades del

problema a través de los submenús disponibles en la ventana incial.

Figura 5.1 – Ventana principal del programa

Estas propiedades son las que configuran las variables del problema y son:

76

76

- Geometría.

- Batimetría.

- Malla.

- Condiciones de contorno.

- Periodo de la ola.

Además, desde esta ventana se puede configurar la carpeta de trabajo o añadir archivos

ya creados. A continuación, pasamos a describir cada una de las herramientas del

programa.

Figura 5.2 – Tipos de datos

5.2 Proyecto

Desde esta herramienta podemos añadir las propiedades relacionadas con nuestro proyecto.

Figura 5.3 – Panel de proyecto

5.2.1 Creación de un proyecto

Desde esta ventana se puede añadir el nombre del proyecto y la carpeta donde se guardarán los archivos creados.

Figura 5.4 – Ventana de creación de proyecto

77

77 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Estos archivos serán nombrados por el nombre del proyecto seguido de una nomenclatura que depende del tipo

de variable a la que hace referencia. De esta forma, el sistema de archivos que se crean con el programa queda:

- Nombredelproyecto_geo: Se refiere al archivo que contiene los puntos que define la geometría.

- Nombredelproyecto_b: Se trata del archivo que configura los puntos de la batimetría.

- Nombredelproyecto_p: Contiene las coordenadas cartesianas de cada uno de los puntos de la malla.

- Nombredelproyecto_t: Es la matriz que define los tres puntos que conforman cada uno de los elementos.

En cada fila de este archivo se encuentra el número de la fila de la matriz p cuyas coordenadas definen

al punto en cuestión.

- Nombredelproyecto_cc: Contiene los lados del contorno y el valor de la condición de contorno en este.

Estos valores pueden variar de 1 a 3 dependiendo del tipo de condición, siendo su nomenclatura la

siguiente:

o 1: Se asigna este valor a aquellos bordes que son totalmente reflejantes.

o 2: Se utiliza para los bordes no reflejantes sin entrada de potencial.

o 3: Para aquellos bordes con entrada de potencial perpendicular al borde.

Todos estos archivos se crean con la extensión “.mat” que es propia de MATLAB.

Una vez designado el nombre del proyecto y la carpeta contenedora, se pulsa guardar y el programa registra

estos valores para usarlos posteriormente.

5.2.2 Empezar desde un proyecto creado

Esta herramienta se utiliza para añadir al programa los archivos que ya hayamos creado previamente. Para ello,

se marca la casilla que designa el tipo de archivo que es (geometría, batimetría…) y se pulsa en guardar. El

programa automáticamente cerrará la ventana sin necesidad de pulsar el botón de cerrar. Si se incorpora

geometría, se dibujará en los ejes de la ventana principal.

Figura 5.5 – Ventana de introducción de archivos creados

78

78

5.3 Introducción de geometría

Se establecen tres formas de introducir la geometría en el programa.

Figura 5.6 – Tipos de introducción

La primera de ellas lee un archivo externo como variable geométrica. La diferencia que tiene esta herramienta

con la disponible en proyecto creado es que desde aquí además de archivos .mat también se pueden añadir .txt.

El segundo procedimiento para añadir los puntos de la geometría es dibujarlos manualmente. Previamente se

establecen unos mínimos y máximos para dibujar adecuadamente en los ejes. Tras esto se pasa a establecer los

puntos con el puntero.

El tercer método, que es el que usaremos en nuestro ejemplo es añadir los puntos uno a uno por sus coordenadas

x e y. Cabe mencionar que en los tres métodos se añade una tabla con los puntos añadidos, la cual se puede

modificar directamente, modificándose también los puntos dibujados en la gráfica.

Figura 5.7 – Tabla de puntos

5.4 Introducción de batimetría

La introducción de batimetría se asemeja mucho al submenú de geometría, aunque con ciertas diferencias.

Para poder crear una batimetría se deben introducir ciertos puntos de esta, y el programa interpolará la

profundidad a todo el dominio según estos puntos.

79

79 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

La primera herramienta permite importar el archivo de batimetría desde un archivo externo. Como otra opción

cuenta además con la introducción punto a punto designando las coordenadas x,y,z de cada uno de estos. El

valor de la profundidad se ha establecido en el programa como un número positivo, aun así, si se introdujera un

número negativo no causaría error.

Figura 5.8 – Ventana de batimetría

La última herramienta de introducción de este submenú permite asignar un fondo constante en todo el dominio

del problema, creándose automáticamente una tabla con los puntos de la geometría anteriormente introducida

con el valor de la profundidad asignada.

Al igual que en la introducción de la geometría, se crea una tabla modificable con los puntos que componen la

batimetría creada.

Se debe tener especial atención en la creación de la batimetría ya que se deben poner suficientes puntos como

para que el programa pueda interpolar en todo el dominio. Por ello se recomienda que si la geometría no es muy

extensa se cojan los mismos puntos que la definen para configurar la batimetría. Si no se pudiera establecer un

valor de la profundidad es programa causará un error cuando resuelva el problema.

5.5 Mallado

El mallado se realiza a partir de la herramienta DISTMESH, que permite crear una malla triangular designando

su tamaño y los máximos y mínimos de la geometría. El programa tiene como opción predeterminada calcular

estos máximos y mínimos automáticamente, aunque se puede elegir introducirlos manualmente.

Por tanto, el único valor que se introduce en este submenú es el tamaño de la malla (h). Una vez asignada, el

programa calcula y representa la malla creada. Además, se rellena en una tabla unos valores con las propiedades

de dicha malla, como el número de elementos o el tiempo de computación.

80

80

Figura 5.9 – Ventana de mallado

Además, el programa dispone de la opción de representar gráficamente la malla interpolada con los datos de

batimetría introducidos.

Si se desea volver a calcular la malla para otro tamaño, se vuelve a asignar un valor a “h”, quedándose registrada

la nueva malla y la anterior.

Figura 5.10 – Selección de malla a guardar

Finalmente, para guardar se puede elegir qué malla de las que se hayan creado deseamos guardar.

5.6 Condiciones de contorno

Desde este submenú se designan las condiciones de contorno que posee nuestro modelo. Inicialmente se debe

pulsar el botón de cargar tabla, para que el programa analice cada uno de los bordes de los que consta la malla.

Una vez calculados, se rellena una tabla cuyas filas corresponden a cada uno de los bordes existentes.

La introducción de las condiciones de contorno se puede realizar de dos maneras. La primera de ellas es

gráficamente. Pulsando el botón “Selección gráfica” el programa nos deja designar el borde al que queremos

añadirle la condición. Una vez seleccionado, se elige qué tipo de condición queremos imponer. Si el borde fuese

81

81 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

abierto con entrada de potencial, el programa permite la opción de imponer el valor de dicho potencial, estando

definido por defecto en 1.

Figura 5.11 – Selección gráfica del contorno

El segundo método de introducción es a través de la tabla. Si se selecciona una fila de esta, en el gráfico de la

geometría se marca de color rojo el contorno al que corresponde tal fila. Desde esta tabla se pueden añadir las

condiciones de contorno deseadas sin necesidad de utilizar la selección gráfica.

Figura 5.12 – Tabla resumen de Condiciones de Contorno

Otra función existente en este submenú es la de dividir un contorno en dos. Esta función se debe a que para

realizar la división de contornos el programa establece que una línea deja de estar en un contorno en el

momento en el que la normal de ambos es diferente. Es por ello que para líneas rectas en las que hasta un

punto se desea una condición de contorno determinada y en el otro lado se desea otra distinta es necesario el

uso de esta herramienta.

Figura 5.13 – Panel de división de contorno

5.7 Resolución del problema

Tras introducir todas las variables necesarias, sólo es necesario introducir el periodo del oleaje en estudio. Tras

esto se pulsa en “Calcular” y el programa calcula la solución del problema.

82

82

Figura 5.14 – Ventana principal con solución obtenida

En la ventana principal se muestra la representación gráfica de la solución y algunos datos del problema, como

el número de puntos o el tiempo que ha tardado el programa en calcular las integrales del dominio y del contorno.

Figura 5.15 – Propiedades del cálculo realizado

83

83 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

5.8 Visualización de la solución

El programa permite variar el modo de visualización de la solución, pudiendo interpolar los valores en z o incluso

añadirle luz al modelo.

Figura 5.16 – Panel de opciones de visualización

5.9 Solución en el tiempo

Se puede visualizar la respuesta en el tiempo del modelo ante la ola incidente, pudiendo observar su respuesta

en el tiempo deseado e incluso generar un archivo de video.

Figura 5.17 – Panel de opciones para la visualización en el tiempo

5.10 Herramientas auxiliares

Para un uso adecuado del programa se han añadido un conjunto de funcionalidades que van desde poder rotar o

mover las figuras que se visualizan hasta guardarlas. Además, en la pantalla principal y en los submenús se ha

añadido un botón de resetear para poder realizar desde cero la introducción de datos.

84

84

5.11 Análisis de resultados

5.11.1 Dársena portuaria con dique absorbente

El modelo introducido se ha realizado para un dique absorbente y tiene las siguientes propiedades:

- Geometría:

x (m) y (m)

60 100

180 100

180 200

150 200

150 180

145 180

145 200

130 200

130 230

100 230

100 200

110 170

145 141

142 135

105 170

95 200

60 200

60 100

Tabla 5.1 – Geometría dársena portuaria con dique absorbente

- Batimetría:

x (m) y (m) z (m)

60 100 20

85

85 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

180 100 20

180 200 10

150 200 10

150 180 10

145 180 8

145 200 7

130 200 6

130 230 5

100 230 5

100 200 5

110 170 7

145 141 15

142 135 15

105 170 12

95 200 10

60 200 10

60 100 20

Tabla 5.2 – Batimetría dársena portuaria con dique absorbente

- Malla de tamaño 1 metro.

- Condiciones de contorno:

Puntos Condición

(60,200) - (60,100) Borde totalmente reflejante

(95,200) - (60,200) Borde abierto sin entrada de potencial

(105,170) - (95,200) Borde abierto sin entrada de potencial

(142,135) - (105,170) Borde abierto sin entrada de potencial

(145,141) - (142,135) Borde abierto sin entrada de potencial

(110,170) - (145,141) Borde abierto sin entrada de potencial

86

86

(100,200) - (110,170) Borde abierto sin entrada de potencial

(100,230) - (100,200) Borde abierto sin entrada de potencial

(130,230) - (100,230) Borde abierto sin entrada de potencial

(130,200) - (130,230) Borde abierto sin entrada de potencial

(145,200) - (130,200) Borde abierto sin entrada de potencial

(145,180) - (145,200) Borde abierto sin entrada de potencial

(150,180) - (145,180) Borde abierto sin entrada de potencial

(150,200) - (150,180) Borde abierto sin entrada de potencial

(180,200) - (150,200) Borde abierto sin entrada de potencial

(180,100) - (180,200) Borde totalmente reflejante

(60,100) - (180,100) Borde abierto con entrada de potencial

Tabla 5.3 – Condiciones de contorno dársena portuaria con dique absorbente

- Periodo: 5 segundos.

- Potencial incidente: 1 metro.

El resultado que nos da es el siguiente:

Figura 5.18 – Solución dársena portuaria con dique absorbente

87

87 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Podemos representar el potencial en el dominio, quedando:

Figura 5.19 – Coeficiente de propagación para dársena portuaria con dique absorbente

5.11.2 Dique no absorbente

A continuación, realizaremos un modelo igual que el anterior, pero cambiando las condiciones de contorno en

el dique para imponer que sea totalmente reflejante. Al introducir esta propiedad, también impondremos que

los extremos verticales sean totalmente absorbentes, para evitar así las posibles interferencias que pudiera tener

sobre el modelo.

Las condiciones de contorno quedan:

Puntos Condición

(60,200) - (60,100) Borde abierto sin entrada de potencial

(95,200) - (60,200) Borde abierto sin entrada de potencial

(105,170) - (95,200) Borde totalmente reflejante

(142,135) - (105,170) Borde totalmente reflejante

(145,141) - (142,135) Borde totalmente reflejante

(110,170) - (145,141) Borde abierto sin entrada de potencial

(100,200) - (110,170) Borde abierto sin entrada de potencial

88

88

(100,230) - (100,200) Borde abierto sin entrada de potencial

(130,230) - (100,230) Borde abierto sin entrada de potencial

(130,200) - (130,230) Borde abierto sin entrada de potencial

(145,200) - (130,200) Borde abierto sin entrada de potencial

(145,180) - (145,200) Borde abierto sin entrada de potencial

(150,180) - (145,180) Borde abierto sin entrada de potencial

(150,200) - (150,180) Borde abierto sin entrada de potencial

(180,200) - (150,200) Borde abierto sin entrada de potencial

(180,100) - (180,200) Borde abierto sin entrada de potencial

(60,100) - (180,100) Borde abierto con entrada de potencial

Tabla 5.4 – Condiciones de contorno dársena portuaria con dique no absorbente

- Periodo: 5 segundos.

- Potencial incidente: 1 metro.

El resultado que nos da es el siguiente:

Figura 5.20 – Solución de dársena portuaria con dique no absorbente

89

89 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

Si representamos el potencial en el dominio, nos queda:

Figura 5.21 – Coeficiente de propagación de dársena portuaria con dique no absorbente

90

90

91

91 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

6 CONCLUSIÓN

Este trabajo ha tenido como objetivo desarrollar un programa que implemente la Mild Slope Equation y así

poder resolver modelos de propagación de oleaje. Inicialmente se ha explicado las ecuaciones que gobiernan el

problema, tras las cuales se ha procedido a la validación de los resultados obtenidos por el programa.

Estos resultados no difieren en gran medida de la solución analítica, aunque es necesario saber interpretarlos.

Partimos de un modelo que discretiza el dominio en elementos triangulares de tres nodos y aunque existen

modelos que aumentan el número de nodos, se ha querido centrar el trabajo en obtener el potencial, dejando a

un lado las variables derivadas de este. El tamaño de la discretización realizada depende en gran medida de la

geometría del modelo y de las propiedades del oleaje, así como de los resultados que se quieran obtener, por lo

que se hace necesario tener un criterio adecuado para determinarlo. Los errores introducidos con el tamaño de

la malla pueden ser determinantes a la hora de obtener una solución válida del problema. En general se considera

que un tamaño adecuado como la longitud de onda entre 20.

Otro aspecto importante en la realización de este estudio son las condiciones de contorno. Aunque se han querido

simplificar estas a tres, la formulación permite introducir muchas más. La imposición de condiciones en los

bordes del dominio depende en gran medida de los fenómenos que se quiera modelar, y es en base a estos donde

se deben configurar unas adecuadas condiciones de contorno. En el ejemplo de la dársena portuaria se

comprueba la variación en los resultados obtenidos en el caso de que el dique de la dársena fuera absorbente o

no. Es por ello que se hace visible que en función de las condiciones el modelo reproducirá mejor o peor la

realidad. Un trabajo posterior sería estudiar la capacidad de otras condiciones de contorno para modelar los

fenómenos de propagación del oleaje vistos en este documento.

En resumen, el programa desarrollado es capaz de reproducir adecuadamente la propagación del oleaje siempre

y cuando se tengan en cuenta las limitaciones descritas. Estas limitaciones son el tamaño de la malla, así como

la determinación de las condiciones de contorno. También es necesario hacer hincapié en que aun salvándose

las dos limitaciones anteriores, es necesario confirgurar adecuadamente el problema en cuanto al

comportamiento del oleaje.

92

92

93

93 Modelo de propagación de oleaje por elementos finitos mediante la Mild Slope Equation

7 BIBLIOGRAFÍA

[1] O.C. Zienkiewicz, “El método de los elementos finitos”, McGraw-Hill, 1994.

[2] Chamorro Sosa, Gabriel, “Tema modelo M.E.F. de la Mild Slope Equation”, 2016.

[3] Chamorro Sosa, Gabriel, Funciones de cálculo para la Mild Slope Equation, 2013.

[4] Chamorro Sosa, Gabriel, “Temario para la asignatura de Obras Marítimas”, 2013.

[5] Barragán Guerrero, Diego Orlando, “Manual de interfaz gráfica de usuario en Matlab”, 2008.

[6] Craig S.Lent, “Learning to Program with Matlab”, Wiley, 2013.

[7] Department of the Army,”Shore Protection Manual”, Coastal Engineering Research Center, 1984.

[8] C. Pozrikidis, “Introduction to finite and spectral element methods using MATLAB”, Boca Raton, 2014.

[9] Perera Velamazán, Ricardo, “Introducción al método de elementos finitos”, Sección de Publicaciones de la

Escuela Técnica Superior de Ingenieros Industriales, Universidad Politécnica de Madrid, 2004.

[10] Per-Olof Persson, Distmesh, Department of Mathematics, UC Berkeley, 2012.

[11] Berkhoff, J. C. W., "Computation of combined refraction–diffraction", Proceedings 13th International

Conference on Coastal Engineering, Vancouver, 1972.

[12] A. Baquerizo Azofra; M. A. Losada Rodrigez; M Lopez Rodrigez, “Fundamentos del movimiento

oscilatorio”, Universidad de Granada, 2005.

[13] Mathworks, http://es.mathworks.com/

[14] WebPlotDigitizer, http://arohatgi.info/WebPlotDigitizer/index.html