Uploaded by wilinton1989

TrabajoEscritoFinal

advertisement
Análisis estructural por elementos finitos de puente curvo a cuatro puntos de
apoyo de sección transversal tipo viga cajón
Wilinton López Rojas, David Leiton Lasso & Diana Soto Pineda
Profesor
Jairo Andrés Paredes López, PhD.
Análisis Estructural por elementos finitos
Universidad Nacional de Colombia Sede Manizales
Ingeniería Civil y Arquitectura
Manizales 13 de Octubre de 2018
Contenido
Introducción .................................................................................................................................... 7
Marco teórico .................................................................................................................................. 8
Método de los elementos finitos ................................................................................................. 8
Formulación Isoperimétrica ........................................................................................................ 9
Elementos isoperimétricos de 9 nodos (2D) ......................................................................... 10
Pesos de cada nodo ............................................................................................................... 11
Integración numérica por cuadraturas ................................................................................... 11
Derivadas de las funciones de forma .................................................................................... 12
Derivadas de las funciones de forma y coordenadas nodales cartesianas ............................ 13
Matriz Jacobiana ................................................................................................................... 14
Matriz cinemática.................................................................................................................. 14
Elementos isoperimétricos de 20 nodos (3D) ....................................................................... 15
Objetivo de estudio ....................................................................................................................... 23
Análisis sección transversal en Iso 9 ........................................................................................ 23
Descripción del modelo ........................................................................................................ 24
Geometría de la sección analizada ........................................................................................ 25
Malla de la sección analizada ............................................................................................... 26
Zona de restricciones ............................................................................................................ 26
Material ................................................................................................................................. 27
Resultados del post proceso del Iso 9 ................................................................................... 27
Deformación en la sección debido a izaje............................................................................. 27
Esfuerzos en X ...................................................................................................................... 28
Esfuerzos en Y ...................................................................................................................... 29
Análisis puente en Iso 20 .......................................................................................................... 30
Descripción del modelo ........................................................................................................ 30
Geometría del puente analizado ............................................................................................ 30
Ubicación de los puntos de la geometría del puente ............................................................. 33
Definición de las cargas ........................................................................................................ 42
Revisión del Código Colombiano de puentes (CCP14)........................................................ 42
Factor de mayorización ......................................................................................................... 43
Carga en nodos de ubicación del camión .............................................................................. 43
Archivo de cargas ................................................................................................................. 44
Restricciones ......................................................................................................................... 45
Archivos de restricciones ...................................................................................................... 45
Malla del puente .................................................................................................................... 46
Resultados puente con elementos Iso 20 .................................................................................. 47
Gráficas 2D ........................................................................................................................... 47
Gráficas de esfuerzos en puente vista 3D ............................................................................. 47
Esfuerzos en X ...................................................................................................................... 47
Resultados de esfuerzos en vista 3D ......................................................................................... 50
Esfuerzos en Y ...................................................................................................................... 51
Esfuerzos en Z....................................................................................................................... 52
Esfuerzos cortantes 𝝉𝒙𝒚........................................................................................................ 53
Esfuerzos cortantes 𝝉𝒙𝒛 ........................................................................................................ 54
Esfuerzos cortantes 𝝉𝒚𝒛 ........................................................................................................ 55
Esfuerzo principal 1 .............................................................................................................. 56
Esfuerzo principal 2 .............................................................................................................. 57
Esfuerzo principal 3 .............................................................................................................. 58
Deformación unitaria en X.................................................................................................... 59
Deformación unitaria en Y.................................................................................................... 59
Deformación unitaria en Z. ................................................................................................... 59
Deformación unitaria en XY ................................................................................................. 60
Deformación unitaria en XZ ................................................................................................. 61
Deformación unitaria en YZ ................................................................................................. 61
Deformación principal 1 ....................................................................................................... 62
Deformación principal 2 ....................................................................................................... 62
Deformación principal 3 ....................................................................................................... 63
Deformación del puente ........................................................................................................ 63
Conclusiones ................................................................................................................................. 64
Bibliografía ................................................................................................................................... 65
Anexo 1. Líneas de código para análisis de elemento de 9 nodos ............................................ 66
Anexo 2. Líneas de código para Iso 20 ..................................................................................... 85
Lista de figuras
Figura 1.0 Proceso para análisis con FEM. (Ferreira, 2009) ......................................................... 8
Figura  Mapeo de un elemento padre en un elemento isoperimétrico. (Hutton V., 2004) ....... 9
Figura 3.0 Consideraciones para definir un elemento como isoperimétrico de 4 nodos. (Paredes
López J. A., Elemento Isoparámetrico, 2018) ........................................................................ 9
Figura 4.0 Elemento isoperimétrico de 9 nodos en coordenadas naturales. (Paredes López J. A.,
Elemento cuadrilátero isoparamétrico de nueve nodos, 2018) ............................................. 10
Figura 5.0 Elemento hexaédrico de 20 nodos. (Felippa A., 2004) .............................................. 15
Figura 6.0 Sitio de la sección a analizar con iso 9 (2D). .............................................................. 24
Figura 7.0 Situación de izaje: a dos puntos. (Solís Díaz, 2016) ................................................... 24
Figura 8.0 Sección del puente con losa inferior en cota a = 0.2 m. .............................................. 25
Figura 9.0 Geometría de la sección con las respectivas superficies. ............................................ 25
Figura 10.0 Malla generada con elementos cuadriláteros de nueve nodos. .................................. 26
Figura 11.0 Ubicación de cargas ................................................................................................... 27
Figura 12.0 Deformación en y de la sección sometida a peso propio y dos puntos de izaje. ....... 28
Figura 13.0 Esfuerzos en X debido a izaje y peso propio. ............................................................ 28
Figura 14.0 Esfuerzos en Y debido a peso propio y 2 puntos de izaje. ........................................ 29
Figura 15.0 Los esfuerzos cortantes en el plano XY. ................................................................... 29
Figura 16.0 Trazabilidad de los parámetros a cumplir en el análisis del Iso 20. .......................... 30
Figura 17.0 Sección del puente curvo que corresponde a los apoyos de los extremos. La distancia
a varía de 0.4 m extremos en apoyos a 0.2 m en luces. ....................................................... 30
Figura 18.0 Esquema para cálculo de puntos................................................................................ 31
Figura 19.0 Herramienta usada para la estimación de las distancias necesarias. (NASA (National
Aeronautics ans Space Administration) , 2015) ................................................................... 31
Figura 20.0 Losa inferior con las 3 luces pedidas. ........................................................................ 32
Figura 21.0 Losa superior del puente. ........................................................................................... 32
Figura 22.0 Modelo 3D del puente en GiD................................................................................... 33
23.0 Las características del camión de diseño según figura 3.6.1.2.2-1. (República de Colombia,
Ministerio de Transporte, Invias, 2014) ................................................................................ 43
Figura 24.0 Desplazamiento debido a las cargas aplicadas. ......................................................... 44
Figura 25.0 Esfuerzo en Z: esfuerzos en losa superior. ................................................................ 48
Figura 26.0 Esfuerzos en Y: esfuerzos en losa superior. .............................................................. 48
Figura 27.0 Vista YX de esfuerzos en xz. .................................................................................... 48
Figura 28.0 Vista en corte de esfuerzos en xy. ............................................................................. 49
Figura 29.0 Vista en sección de esfuerzos en yz. ......................................................................... 49
Figura 30.0 Esfuerzos en X (Sxx) vista 1. .................................................................................... 50
Figura 31.0 Esfuerzos en X (Sxx) vista 2. ................................................................................... 50
Figura 32.0 Esfuerzos en Y (Syy) vista 1. .................................................................................... 51
Figura 33.0 Esfuerzos en Y (Syy) vista 2. .................................................................................... 51
Figura 34.0 Esfuerzos en Z (Szz) vista 1. ..................................................................................... 52
Figura 35.0 Esfuerzos en Z (Szz) vista 2. ..................................................................................... 52
Figura 36.0 Esfuerzos cortantes 𝜏𝑥𝑦............................................................................................ 53
Figura 37.0 Esfuerzos cortantes 𝜏𝑥𝑦 vista 2. ............................................................................... 53
Figura 38.0 Esfuerzos cortantes 𝜏𝑥𝑧 vista 1. ................................................................................ 54
Figura 39.0 Esfuerzos cortantes 𝜏𝑥𝑧 vista 2. ................................................................................ 54
Figura 40.0 Esfuerzos cortantes 𝜏𝑦𝑧 vista 1. ............................................................................... 55
Figura 41.0 Esfuerzos cortantes 𝜏𝑦𝑧 vista 2. ............................................................................... 55
Figura 42.0 Esfuerzo principal 1 vista 1. ..................................................................................... 56
Figura 43.0 Esfuerzo principal 1 vista 2. ...................................................................................... 56
44.0 Esfuerzo principal 2 vista 1................................................................................................... 57
Figura 45.0 Esfuerzo principal 2 vista 2. ...................................................................................... 57
Figura 46.0 Esfuerzo principal 3 vista 1. ...................................................................................... 58
Figura 47.0 Esfuerzo principal 3 vista 2. ...................................................................................... 58
Figura 48.0 Deformación unitaria en X. ...................................................................................... 59
Figura 49.0 Deformación unitaria en Y. ...................................................................................... 59
Figura 50.0 Deformación unitaria en Z......................................................................................... 60
Figura 51.0 Deformación unitaria en XY. .................................................................................... 60
Figura 52.0 Deformación unitaria en XZ. ..................................................................................... 61
Figura 53.0 Deformación unitaria en YZ. ..................................................................................... 62
Figura 54.0 Deformación principal 1. ........................................................................................... 62
55.0 Deformación principal 2. ...................................................................................................... 62
Figura 56.0 Deformación principal 3. .......................................................................................... 63
Figura 57.0 Vista deformada del puente. ...................................................................................... 63
Figura 58.0 Vista original vs vista deformada. ............................................................................. 64
Tablas
Tabla 1. Signos y pesos de cada nodo del elemento cuadrilátero de nueve nodos en los puntos de
Gauss. .................................................................................................................................... 11
Tabla 2.0 Coordenadas para del punto 1. ...................................................................................... 33
Tabla 3.0 Coordenadas del punto 15............................................................................................. 34
Tabla 4.0 Coordenadas del punto 17............................................................................................. 34
Tabla 5.0 Coordenadas del punto 6............................................................................................... 34
Tabla 6.0 Coordenadas del punto 5............................................................................................... 35
Tabla 7.0 Coordenadas del punto 2............................................................................................... 35
Tabla 8.0 Coordenadas del punto 16............................................................................................. 35
Tabla 9.0 Coordenadas del punto 18............................................................................................. 35
Tabla 10.0 Coordenadas del punto 3............................................................................................. 36
Tabla 11.0 Coordenadas del punto 4............................................................................................. 36
Tabla 12.0 Coordenadas del punto 13........................................................................................... 36
Tabla 13.0 Coordenadas del punto 7............................................................................................. 37
Tabla 14.0 Coordenadas del punto 9............................................................................................. 37
Tabla 15.0 Coordenadas del punto a 19. ....................................................................................... 37
Tabla 16.0 Coordenadas del punto 11........................................................................................... 38
Tabla 17.0 Coordenadas del punto 12........................................................................................... 38
Tabla 18.0 Coordenadas del punto 20........................................................................................... 38
Tabla 19.0 Coordenadas del punto 10........................................................................................... 39
Tabla 20.0 Coordenadas del punto 8............................................................................................. 39
Tabla 21.0 Coordenadas del punto 14.......................................................................................... 40
Tabla 22.0 Coordenadas del punto 21........................................................................................... 40
Tabla 23.0 Coordenadas del punto 23........................................................................................... 40
Tabla 24.0 Coordenadas del punto 25........................................................................................... 40
Tabla 25.0 Coordenadas del punto 26........................................................................................... 41
Tabla 26.0 Coordenadas del punto 27........................................................................................... 41
Tabla 27.0 Coordenadas del punto 28........................................................................................... 41
Tabla 28.0 Selección del factor de mayorización –resistencia I (CCP14- Tabla 3.4.1.1.
(República de Colombia, Ministerio de Transporte, Invias, 2014)....................................... 42
Tabla 29.0 Cagas en nodos debido a camión de diseño. ............................................................... 43
Tabla 30.0 Nodos cargados primeras 12 posiciones. .................................................................... 44
Tabla 31.0 Posiciones resumen del archivo de restricciones. ....................................................... 46
Tabla 32.0 Visualización del comportamiento de la deformación en el puente debido a las cargas
y restricciones. ...................................................................................................................... 46
Tabla 33.0 Divisiones de las piezas en el puente para generación de malla. ............................... 46
Tabla 34.0 Visualización de las divisiones en la malla. ............................................................... 47
Introducción
Este trabajo escrito contiene la totalidad del desarrollo metodológico del análisis estructural
usando el método de los elementos finitos con el programa GiD, mediante la generación de la
geometría de un puente curvo con cuatro puntos de apoyo de sección transversal tipo viga cajón.
GiD es un procesador de pre-proceso y post-procesal, parametrizable y cómodo de emplear para
simulaciones numéricas en ciencia e ingeniería que fue diseñado para cubrir todas las necesidades
comunes en el campo de simulaciones numéricas desde el pre-procesamiento posterior,
modelado geométrico (CAD), generación de malla, definición de datos de análisis, transferencia
de datos a software de análisis, operaciones de post procesamiento y visualización de resultados.
Para el inicio del análisis, fue necesario generar la geometría del puente en un software de dibujo
por computador llamado AutoCAD, los puntos de conexión de esta geometría fueron exportados
en un archivo Excel y posteriormente organizados por cada subdivisión, lo anterior debido a que
al intentar realizar la misma geometría en GiD se presentaron solapes de líneas, pero crear los
puntos ya establecidos previamente, se generaron los volúmenes necesarios que constituyen todo
el puente con tres luces curvas. Al terminar la verificación de todos los volúmenes que conforman
la geometría del puente, se procedió a realizar un esquema de las subdivisiones de las líneas de
cada volumen, y se calculó manualmente la cantidad de elementos que tendría todo el modelo,
pues la cantidad de memoria necesaria para post-procesamiento se define por la cantidad de
elementos y los nodos de estos. La malla que se creó fue exportada a un archivo de excel, donde
se organizaron los datos que fueron llevados a Note Pad, se verifico que la cantidad de elementos
fuera congruente con la cantidad de elementos estimada manualmente, así se verifico que la malla
no presentará errores. Se procedió a revisar el Código Colombiano de Puente 14 (CCP 14), esto
para calcular las cargas bajo las que estaría sometido el puente en una ubicación específica, luego
de establecer las cargas se enlistaron los elementos y de estos los nodos que estaría sometidos a
dichas cargas para armar un archivo txt con dichas cargas. Teniendo en cuenta que el enunciado
del problema habla de 4 puntos de apoyo, de los cuales 2 son apoyos simples y 2 son apoyos
rígidos (resistentes a torsión), se enlistaron los nodos sometidos a dichas restricciones,
posteriormente se armó el archivo txt donde se ubicó cero en los ejes correspondientes sometidos
a la restricciones de movimiento, y también se generó un txt con las propiedades de material. Estos
archivos se crearon con el fin de usar un código en Matlab para los elementos isoperimétricos de
20 nodos (3D), y así usar el archivo de resultados para el análisis de desplazamientos,
deformaciones y esfuerzos. Además, se realizó un análisis con elementos isoperimétricos de 9
nodos en una sección transversal del puente y considerando dos puntos de izaje, dicho análisis
considerando peso propio y modelo de deformación plana, para obtener el campo esfuerzosdesplazamientos de la sección (Leiton Lasso, López Rojas, & Soto Pineda, 2018).
Marco teórico
Método de los elementos finitos
A razón de analizar diversos sistemas ingenieriles, se requiere el desarrollo de un modelo
matemático para describir dicho sistema. En el proceso desarrollo de modelo matemático, es
necesario establecer algunas suposiciones que sirven para crear simplificaciones, de forma que
las expresiones matemáticas son desarrollos para describir el comportamiento del sistema, siendo
por lo general ecuaciones diferenciales con condiciones de frontera, pero es complejo obtener
soluciones precisas que describan el sistema ingenieril mediante un desarrollo manual.
Actualmente existen computadoras de alto desempeño que hacen posible solucionar dichas
ecuaciones diferenciales, junto con las diversas técnicas de soluciones numéricas han sido
desarrolladas y aplicadas para resolver numerosos problemas de ingeniería para obtener soluciones
aproximadas. En esencia, el método de los elementos finitos (FEM, finite element method) es una
de las más grandes técnicas de soluciones numéricas; entre las ventajas del FEM se identifica el
que un programa computacional puede ser desarrollado para analizar varios tipos de problemas,
en particular, cualquier forma compleja discretizada y con condiciones de borde puede ser
manejada aplicando el método de los elementos finitos (Kwon W. & Bang, 2000). De este método
se pueden identificar los siguientes pasos de análisis:
Discretización del
dominio
Escribir las matrices
de rigidez de los
elementos
Ensamblar la matri de
rigidez global
Post-proceso
Aplicar condiciones de
borde
Figura 1.0 Proceso para análisis con FEM. (Ferreira, 2009)
Formulación Isoperimétrica
El método de elementos finitos es una técnica eficaz para analizar sistemas en ingeniería.
Problemas que comprenden geometrías complejas requieren de elementos diferentes a los
elementos usuales como son los triángulos, rectángulos y tetraedros, ya que no siempre pueden
ser usados eficientemente para geometrías irregulares. El término isoperimétrico refiere a que las
funciones de forma del elemento se usan para definir desplazamientos, usando un sistema de
coordenadas natural (Hutton V., 2004).
El elemento isoperimétrico es básicamente la derivación de cuatro lados de un elemento
rectangular a través de un proceso de mapeo, siendo el elemento rectangular el elemento padre con
sus coordenadas naturales y el elemento cuadrilátero en un sistema cartesiano de
coordenadas globales (x, y) (Paredes López J. A., Elemento Isoparámetrico, 2018). La geometría
del elemento cuadrilátero respecto a las coordenadas natrales se describe por:
x xi*Ni 

y yi*Ni 

Figura  Mapeo de un elemento padre en un elemento isoperimétrico. (Hutton V., 2004)
Para considerar un elemento rectangular definido en el sistema de coordenadas como un
isoperimétrico se debe cumplir que (Paredes López J. A., Elemento Isoparámetrico, 2018):
La transformación sea tal que las coordenadas en el sistema natural son: () = ±1
Las funciones que relacionan las coordenadas de () con
las coordenadas (x,y) son usadas para realizar una
interpolación de los desplazamientos.
Figura 3.0 Consideraciones para definir un elemento como isoperimétrico de 4 nodos. (Paredes López J. A.,
Elemento Isoparámetrico, 2018)
Elementos isoperimétricos de 9 nodos (2D)
La formulación que se realiza para un elemento isoperimétrico de 4 nodos se expande para un
elemento isoperimétrico de 9 nodos, se tendrían 9 funciones de forma y las derivadas de estas
funciones forma se realizan respecto a y a Las ecuaciones de esta formulación isoperimétrica
de nueve nodos son (Felippa A., 2004) :
Funciones de forma:
Iso de 9 nodos
1
𝑁 1 = 4 ∙ (1 − 𝜉) ∙ (1 − 𝜂) ∙ 𝜉𝜂
𝑁2=−
1
3.0
∙ (1 + 𝜉) ∙ (1 − 𝜂) ∙ 𝜉𝜂
4.0
𝑁 3 = 4 ∙ (1 + 𝜉) ∙ (1 + 𝜂) ∙ 𝜉𝜂
5.0
4
1
1
𝑁 4 = − 4 ∙ (1 − 𝜉) ∙ (1 + 𝜂) ∙ 𝜉𝜂
6.0
1
𝑁 5 = − 2 ∙ (1 + 𝜉 2 ) ∙ (1 − 𝜂) ∙ 𝜂
7.0
1
𝑁 6 = 2 ∙ (1 + 𝜉) ∙ (1 − 𝜂2 ) ∙ 𝜉
8.0
1
𝑁 7 = 2 ∙ (1 − 𝜉 2 ) ∙ (1 − 𝜂) ∙ 𝜂
1
9.0
𝑁 8 = − 2 ∙ (1 − 𝜉) ∙ (1 − 𝜂2 ) ∙ 𝜉
10.0
𝑁 9 = (1 − 𝜉 2 ) ∙ (1 − 𝜂2 )
11.0
Figura 4.0 Elemento isoperimétrico de 9 nodos en coordenadas naturales. (Paredes López J. A., Elemento
cuadrilátero isoparamétrico de nueve nodos, 2018)
Pesos de cada nodo
Cada ubicación de los nodos tiene signo y peso asignado, donde es el peso quien se encarga de
dar el nivel de precisión al ensamblar la matriz de rigidez de todo elemento, lo cual se debe hacer
en cada punto de Gauss asociado a cada nodo. A continuación se presenta una tabla con las
coordenadas y los pesos asociados a cada nodo del elemento isoperimétrico de nueve nodos:
Nodo
1
2
3
4
5
6
7
8
9
𝝃
−1
+1
+1
−1
0
+1
𝜼
−1
−1
+1
+1
−1
0
𝒘𝒋
5/9
5/9
5/9
5/9
8/9
5/9
𝒘𝒌
5/9
5/9
5/9
5/9
5/9
8/9
0
−1
0
+1
0
0
8/9
5/9
8/9
5/9
8/9
8/9
Tabla 1. Signos y pesos de cada nodo del elemento cuadrilátero de nueve nodos en los puntos de Gauss.
Integración numérica por cuadraturas
Las formas para la numérica o cuadraturas se establecen como métodos que son útiles para evaluar
aproximadamente integrales definidas (Skiba, 2005). Siendo necesarias en los casos 1 y 2:
Caso 1. Si la integral de una función es extremadamente dificil de expresar en términos de
funciones elementales.
Caso 2. La función es dada sólo puntos discretos o sea datos experimentales.
En el método de los elementos finitos, la fórmula de cuadratura que tiene un uso amplio es la
cuadratura de Gauss – Legendre según la forma polinomial de las integrales típicas (Paredes López
J. A., Elemento Isoparámetrico, 2018).
1
𝐼 = ∫ 𝑓(𝜉)𝑑𝜉
12.0
−1
La integral de la ecuación 39.0 se estima que puede ser calculada por n puntos de la sumatoria:
𝑛
𝐼 = ∑ 𝜔𝑗 𝑓(𝜉𝑗 )
𝑗=1
De donde:
13.0
2𝑛 − 1 = 𝑔𝑟𝑎𝑑𝑜 𝑑𝑒𝑙 𝑝𝑜𝑙𝑖𝑛𝑜𝑚𝑖𝑜
14.0
𝜉𝑗 = 𝑝𝑢𝑛𝑡𝑜𝑠 𝑓𝑖𝑗𝑜𝑠 𝑒𝑛𝑡𝑟𝑒 (−1 , 1)
𝜔𝑗 = 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒𝑠 𝑎𝑠𝑜𝑐𝑖𝑎𝑑𝑎𝑠 𝑎 𝜉𝑗
El valor de los parámetros se escogen para que el error en la sumatoria sea cero en el caso
polinomial, de donde 𝜉𝑗 son las raíces de los polinomios de Legendre, y 𝜔𝑗 serían las funciones
de estas raíces.
Derivadas de las funciones de forma
Las derivadas de las funciones de forma de realizan respecto a y a de manera que se obtendrán
18 derivadas de las funciones de forma que son:
𝜕𝑁1
= 0.25 ∙ (1-2𝜉) ∙ (1 − 𝜂) ∙ 𝜂
15.0
= − 0.25 ∙ (1 + 2𝜉) ∙ (1 − 𝜂) ∙ 𝜂
16.0
𝜕𝜉
𝜕𝑁2
𝜕𝜉
𝜕𝑁3
𝜕𝜉
𝜕𝑁4
𝜕𝜉
= 0.25 ∙ (1 + 2𝜉) ∙ (1 − 𝜂) ∙ 𝜂
17.0
= 0.25 ∙ (1 + 2𝜉) ∙ (1 − 𝜂) ∙ 𝜂
18.0
𝜕𝑁5
= 𝜉 ∙ (1 − 𝜂) ∙ 𝜂
19.0
= 0.5 (1 + 2𝜉) ∙ (1 − 𝜂2 )
20.0
𝜕𝜉
Derivadas de las
funciones de forma
respecto a: 𝜉
Iso de 9 nodos
𝜕𝑁6
𝜕𝜉
𝜕𝑁7
= −𝜉 ∙ (1 + 𝜂) ∙ 𝜂
21.0
= − 0.5 (1 − 2𝜉) ∙ (1 − 𝜂2 )
22.0
𝜕𝜉
𝜕𝑁8
𝜕𝜉
𝜕𝑁9
= −2𝜉 ∙ (1 − 𝜂2 )
23.0
= 0.25 ∙ (1-𝜉) ∙ (1 − 2𝜂) ∙ 𝜉
24.0
𝜕𝜉
𝜕𝑁1
𝜕𝜂
𝜕𝑁2
𝜕𝜂
= - 0.25 ∙ (1 + 𝜉) ∙ (1 − 2𝜂) ∙ 𝜉
𝜕𝑁3
𝜕𝜂
Derivadas de las
funciones de forma
respecto a: 𝜂
Iso de 9 nodos
𝜕𝑁4
𝜕𝜂
25.0
= 0.25 ∙ (1 + 𝜉) ∙ (1 + 2𝜂) ∙ 𝜉
26.0
= 0.25 ∙ (1 + 𝜉) ∙ (1 + 2𝜂) ∙ 𝜉
27.0
𝜕𝑁5
𝜕𝜂
= −0.5 ∙ (1 − 𝜉 2 ) ∙ (1 − 2𝜂)
𝜕𝑁6
= −𝜂 ∙ (1 + 𝜉) ∙ 𝜉
29.0
= 0.5 ∙ (1 − 𝜉 2 ) ∙ (1 + 2𝜂)
30.0
𝜕𝜂
𝜕𝑁7
𝜕𝜂
28.0
𝜕𝑁8
= 𝜂 ∙ (1 − 𝜉) ∙ 𝜉
31.0
= −2𝜂(1 − 𝜉 2 )2𝜂)
32.0
𝜕𝜂
𝜕𝑁9
𝜕𝜂
Derivadas de las funciones de forma y coordenadas nodales cartesianas
Al tener todas las derivadas de forma respecto a 𝜉 y ha 𝜂, se realiza la multiplicación de cada una
de estar por la coordenada en x y en y correspondiente, esto para luego calcular las matrices
cinemáticas de cada punto de Gauss como se muestra a continuación:
La ecuación 30.0 va desde la derivada de forma respecto a 𝜉 numero 1 multiplicada por la
coordenada en y1 y se suma con la segunda derivada de forma respecto a 𝜉 y se multiplica por la
coordenada en y9, esto se repite para todas las derivadas y todas las coordenadas en x y en y,
de forma que al final se tendrán cuatro ecuaciones que corresponden a la transformación de
coordenadas, con esos cuatro términos es posible calcular luego el Jacobiano.
𝜕𝑦
1
𝜕𝑁1
𝜕𝑁2
𝜕𝑁3
𝜕𝑁4
𝜕𝑁9
= ∙ [𝑦1 (
) + 𝑦2 (
) + 𝑦3 (
) + 𝑦4 (
) + ⋯ + 𝑦9 (
)] = 𝑏1
𝜕𝜂
4
𝜕𝜉
𝜕𝜉
𝜕𝜉
𝜕𝜉
𝜕𝜉
33.0
𝜕𝑦
1
𝜕𝑁1
𝜕𝑁2
𝜕𝑁3
𝜕𝑁4
𝜕𝑁9
= ∙ [𝑦1 (
) + 𝑦2 (
) + 𝑦3 (
) + 𝑦4 (
) + ⋯ + 𝑦9 (
)] = 𝑏2
𝜕𝜉
4
𝜕𝜂
𝜕𝜂
𝜕𝜂
𝜕𝜂
𝜕𝜂
34.0
𝜕𝑥
1
𝜕𝑁1
𝜕𝑁2
𝜕𝑁3
𝜕𝑁4
𝜕𝑁9
= ∙ [𝑥1 (
) + 𝑥2 (
) + 𝑥3 (
) + 𝑥4 (
) + ⋯ + 𝑥9 (
)] = 𝑐1
𝜕𝜉
4
𝜕𝜂
𝜕𝜂
𝜕𝜂
𝜕𝜂
𝜕𝜂
35.0
𝜕𝑥
1
𝜕𝑁1
𝜕𝑁2
𝜕𝑁3
𝜕𝑁4
𝜕𝑁9
= ∙ [𝑥1 (
) + 𝑥2 (
) + 𝑥3 (
) + 𝑥4 (
) + ⋯ + 𝑥9 (
)] = 𝑐2
𝜕𝜂
4
𝜕𝜉
𝜕𝜉
𝜕𝜉
𝜕𝜉
𝜕𝜉
36.0
Matriz Jacobiana
La matriz Jacobiana recibe su nombre por el matemático Carl Gustav Jacobi; la matriz Jacobiana
es una matriz formada por las derivadas parciales de primer orden en el actual caso pertinente de
x y y respecto a 𝜉 y a 𝜂. La forma de la matriz depende de la base o coordenadas elegidas, su
determinante se conoce como jacobiano, este jacobiano da la información pertinente del
comportamiento de la función respecto a un punto dado (Mathai, 1997). La siguiente es la forma
de la matriz Jacobiana para el sistema de coordenadas del presente trabajo:
𝜕𝑥
𝜕𝜉
𝑀𝑎𝑡𝑟𝑖𝑧 𝐽𝑎𝑐𝑜𝑏𝑖𝑎𝑛𝑎 =
𝜕𝑥
[𝜕𝜂
𝜕𝑦
𝜕𝜉
𝜕𝑦
𝜕𝜂]
37.0
El determinante de esta matriz se conoce como Jacobiano, cuyos 4 términos son el resultado de
las ecuaciones 30, 31, 32 y 33, y se ve así:
𝐽 = 𝑐1 ∙ 𝑏1 − 𝑐2 ∙ 𝑏2
38.0
Matriz cinemática
Para ensamblar la matriz cinemática se ensambla a partir de cálculo de los siguientes términos:
𝛽1 = 𝑏1
𝜕𝑁1
𝜕𝑁1
− 𝑏2
𝜕𝜉
𝜕𝜂
39.0
𝜁1 = 𝑐1
𝜕𝑁1
𝜕𝑁1
− 𝑐2
𝜕𝜉
𝜕𝜂
40.0
La matriz cinemática general tendría la siguiente forma:
𝛽𝑖
𝐵𝑖 = [ 0
𝜁𝑖
0
𝜁𝑖 ]
𝛽𝑖
41.0
Luego es necesario calcular también la matriz constitutiva del material:
1
𝐸
𝑣
𝐶=
∙⌈
1 − 𝑣2
0
𝑣
1
0
0
0
⌉
1
(1 − 𝑣)
2
41.1
Esta matriz cinemática se calcula para cada punto de Gauss multiplicándola por los
correspondientes pesos, el ensamble final de las matrices cinemáticas se multiplicaran por el
inverso del jacobiano y el espesor del elemento.
𝐾 𝑒 = 𝑡 ∙ 𝜔𝑗 ∙ 𝜔𝑘 ∙ 𝐵 𝑇 ∙ 𝐶𝐵 ∙ 𝐽
41.2
Elementos isoperimétricos de 20 nodos (3D)
El hexaedro de 20 nodos es el análogo del cuadrilátero de 8 nodos.
Figura 5.0 Elemento hexaédrico de 20 nodos. (Felippa A., 2004)
Las funciones de forma para este elemento son 20 funciones de forma en total (Paredes López J.
, 2018):
Para los nodos de las esquinas; los nodos 1, 2, 3,…8
1
∙ (𝜉 − 1) ∙ (𝜂 − 1) ∙ (𝜁 − 1) ∙ (𝜂 + 𝜉 + 𝜁 + 2)
8
42.0
1
𝑁2 = − ∙ (𝜉 + 1) ∙ (𝜂 − 1) ∙ (𝜁 − 1) ∙ (𝜂 − 𝜉 + 𝜁 + 2)
8
43.0
1
𝑁3 = − ∙ (𝜉 − 1) ∙ (𝜂 + 1) ∙ (𝜁 − 1) ∙ (𝜂 + 𝜉 − 𝜁 − 2)
8
44.0
1
𝑁4 = − ∙ (𝜉 − 1) ∙ (𝜂 + 1) ∙ (𝜁 − 1) ∙ (𝜂 − 𝜉 + 𝜁 + 2)
8
45.0
1
𝑁5 = − ∙ (𝜉 − 1) ∙ (𝜂 − 1) ∙ (𝜁 + 1) ∙ (𝜂 + 𝜉 − 𝜁 + 2)
8
46.0
𝑁6 =
1
∙ (𝜉 + 1) ∙ (𝜂 − 1) ∙ (𝜁 + 1) ∙ (𝜂 − 𝜉 − 𝜁 + 2)
8
47.0
𝑁7 =
1
∙ (𝜉 + 1) ∙ (𝜂 + 1) ∙ (𝜁 + 1) ∙ (𝜂 + 𝜉 + 𝜁 − 2)
8
48.0
1
𝑁8 = − ∙ (𝜉 − 1) ∙ (𝜂 + 1) ∙ (𝜁 + 1) ∙ (𝜂 − 𝜉 + 𝜁 − 2)
8
49.0
𝑁1 =
Las funciones de forma para los nodos intermedios 9,11, 17 y 19 de donde (𝜉 = 0)
1
𝑁9 = − ∙ (𝜉 2 − 1) ∙ (𝜂 − 1) ∙ (𝜁 − 1)
4
50.0
𝑁11 =
1
∙ (𝜉 2 − 1) ∙ (𝜂 + 1) ∙ (𝜁 − 1)
4
51.0
𝑁17 =
1
∙ (𝜉 2 − 1) ∙ (𝜂 − 1) ∙ (𝜁 + 1)
4
52.0
1
𝑁19 = − ∙ (𝜉 2 − 1) ∙ (𝜂 + 1) ∙ (𝜁 + 1)
4
53.0
Las funciones de forma para los nodos intermedios 10, 12, 18 y 20 (𝜂 = 0)
𝑁10 =
1
∙ (𝜂2 − 1) ∙ (𝜉 + 1) ∙ (𝜁 − 1)
4
54.0
1
𝑁12 = − ∙ (𝜂2 − 1) ∙ (𝜉 − 1) ∙ (𝜁 − 1)
4
55.0
1
𝑁18 = − ∙ (𝜂2 − 1) ∙ (𝜉 + 1) ∙ (𝜁 + 1)
4
56.0
1
∙ (𝜂2 − 1) ∙ (𝜉 − 1) ∙ (𝜁 + 1)
4
57.0
𝑁20 =
Las funciones de forma para los nodos intermedios 13, 14, 15 y 16
1
𝑁13 = − ∙ (𝜁 2 − 1) ∙ (𝜂 − 1) ∙ (𝜁 − 1)
4
58.0
1
∙ (𝜁 2 − 1) ∙ (𝜂 − 1) ∙ (𝜁 + 1)
4
59.0
1
𝑁14 = − ∙ (𝜁 2 − 1) ∙ (𝜂 + 1) ∙ (𝜁 + 1)
4
60.0
1
∙ (𝜁 2 − 1) ∙ (𝜂 + 1) ∙ (𝜁 − 1)
4
61.0
𝑁12 =
𝑁16 =
Las derivadas de las funciones de forma de las esquinas de los nodos 1, 2, 3,….8
𝜕𝑁1
𝜕𝜉
𝜕𝑁2
𝜕𝜉
𝜕𝑁3
𝜕𝜉
𝜕𝑁4
𝜕𝜉
𝜕𝑁5
𝜕𝜉
=
=−
=−
=−
=−
(𝜂−1)∙(𝜁−1)∙(𝜂+2𝜉+𝜁+1)
8
(𝜂−1)∙(𝜁−1)∙(𝜂−2𝜉+𝜁+1)
8
(𝜂+1)∙(𝜁−1)∙(𝜂+2𝜉−𝜁−1)
8
(𝜂+1)∙(𝜁−1)∙(2𝜉−𝜂+𝜁+1)
8
(𝜂−1)∙(𝜁+1)∙(2𝜉+𝜂−𝜁+1)
8
62.0
63.0
64.0
65.0
66.0
𝜕𝑁6
𝜕𝜉
𝜕𝑁7
𝜕𝜉
𝜕𝑁8
=
=
=−
𝜕𝜉
(𝜂−1)∙(𝜁+1)∙(𝜂−2𝜉−𝜁+1)
8
(𝜂+1)∙(𝜁+1)∙(𝜂+2𝜉+𝜁−1)
8
(𝜂+1)∙(𝜁+1)∙(𝜂−2𝜉+𝜁−1)
8
67.0
68.0
69.0
Con respecto a 𝜂:
𝜕𝑁1
𝜕𝜂
𝜕𝑁2
𝜕𝜂
𝜕𝑁3
𝜕𝜂
𝜕𝑁4
𝜕𝜂
𝜕𝑁5
𝜕𝜂
=−
=−
=−
=−
𝜕𝑁6
𝜕𝜂
𝜕𝑁7
𝜕𝜂
𝜕𝑁8
𝜕𝜂
Con respecto a 𝜁 :
=
=
=
=−
(𝜉−1)∙(𝜁−1)∙(2𝜂+𝜉+𝜁+1)
8
(𝜉+1)∙(𝜁−1)∙(2𝜂−𝜉+𝜁+1)
8
(𝜉+1)∙(𝜁−1)∙(2𝜂+𝜉−𝜁−1)
8
(𝜉−1)∙(𝜁−1)∙(𝜉−2𝜂+𝜁+1)
8
(𝜉−1)∙(𝜁+1)∙(2𝜂+𝜉−𝜁+1)
8
(𝜉+1)∙(𝜁+1)∙(2𝜂−𝜉−𝜁−1)
8
(𝜉+1)∙(𝜁+1)∙(2𝜂+𝜉+𝜁−1)
8
(𝜉−1)∙(𝜁+1)∙(2𝜂−𝜉+𝜁−1)
8
70.0
71.0
72.0
73.0
74.0
75.0
76.0
77.0
𝜕𝑁1
𝜕𝜁
𝜕𝑁2
𝜕𝜁
𝜕𝑁3
𝜕𝜁
𝜕𝑁4
𝜕𝜁
𝜕𝑁5
𝜕𝜁
=−
=−
=−
=−
𝜕𝑁6
𝜕𝜁
𝜕𝑁7
𝜕𝜁
𝜕𝑁8
𝜕𝜁
=
(𝜂−1)∙(𝜉−1)∙(𝜂+𝜉+2𝜁+1)
8
(𝜂−1)∙(𝜉+1)∙(𝜂−𝜉+2𝜁+1)
8
(𝜂−1)∙(𝜉+1)∙(𝜂+𝜉−2𝜁−1)
8
(𝜂+1)∙(𝜉−1)∙(𝜉−𝜂+2𝜁+1)
8
(𝜂−1)∙(𝜉−1)∙(𝜂+𝜉−2𝜁+1)
8
(𝜂−1)∙(𝜉+1)∙(𝜂−𝜉−2𝜁+1)
=
8
(𝜂+1)∙(𝜉+1)∙(𝜂+𝜉+2𝜁−1)
=
8
=−
(𝜂+1)∙(𝜉−1)∙(𝜂−𝜉+2𝜁−1)
8
78.0
79.0
80.0
81.0
82.0
83.0
84.0
85.0
Las derivadas de las funciones de forma para los nodos intermedios 9, 11, 17 y 19 (𝜉 = 0)
𝜕𝑁9
𝜕𝜉
=−
𝜕𝑁11
𝜕𝜉
𝜕𝑁17
𝜕𝜉
=
=
(𝜉)∙(𝜂−1)∙(𝜁−1)
2
(𝜉)∙(𝜂+1)∙(𝜁−1)
2
(𝜉)∙(𝜂−1)∙(𝜁+1)
2
86.0
87.0
88.0
𝜕𝑁19
=−
𝜕𝜉
𝜕𝑁9
𝜕𝜂
=−
𝜕𝑁11
𝜕𝜂
𝜕𝑁17
𝜕𝜂
𝜕𝑁19
𝜕𝜂
𝜕𝑁9
𝜕𝜁
=
=−
𝜕𝜁
𝜕𝑁17
𝜕𝜁
𝜕𝜁
=
=−
𝜕𝑁11
𝜕𝑁19
(𝜉)∙(𝜂+1)∙(𝜁+1)
=
=
=−
2
2
(𝜉 −1)∙(𝜁−1)
4
89.0
90.0
(𝜉2 −1)∙(𝜁−1)
4
91.0
(𝜉2 −1)∙(𝜁+1)
4
92.0
(𝜉2 −1)∙(𝜁−1)
4
93.0
(𝜉2 −1)∙(𝜂−1)
4
94.0
(𝜉2 −1)∙(𝜂+1)
4
95.0
(𝜉2 −1)∙(𝜂−1)
4
96.0
(𝜉2 −1)∙(𝜂+1)
4
97.0
Las derivadas de las funciones de forma para los nodos intermedios 10, 12, 18 y 20 (𝜂 = 0)
𝜕𝑁10
𝜕𝜉
𝜕𝑁12
𝜕𝜉
=
=−
(𝜉2 −1)∙(𝜁−1)
4
98.0
(𝜉2 −1)∙(𝜁−1)
4
99.0
𝜕𝑁18
𝜕𝜉
=−
𝜕𝑁20
𝜕𝜉
𝜕𝑁10
𝜕𝜂
𝜕𝑁12
𝜕𝜂
𝜕𝜂
𝜕𝜂
𝜕𝑁10
𝜕𝜁
𝜕𝑁12
𝜕𝜁
=
=−
𝜕𝜁
=
4
(𝜂)∙(𝜉−1)∙(𝜁−1)
=
100.0
(𝜉2 −1)∙(𝜁+1)
2
2
(𝜂)∙(𝜉+1)∙(𝜁+1)
2
(𝜂)∙(𝜉−1)∙(𝜁+1)
2
101.0
102.0
103.0
104.0
105.0
( 𝜂2 −1)∙(𝜉+1)
=−
𝜕𝑁20
4
(𝜂)∙(𝜉+1)∙(𝜁−1)
=−
𝜕𝑁20
𝜕𝑁18
=
=−
𝜕𝑁18
𝜕𝜁
=
(𝜉2 −1)∙(𝜁+1)
4
106.0
(𝜂2 −1)∙(𝜉−1)
4
107.0
(𝜂2 −1)∙(𝜉+1)
4
108.0
(𝜂2 −1)∙(𝜉−1)
4
Las derivadas de las funciones de forma para los nodos intermedios 13, 14, 15 y 16 (𝜁 = 0)
109.0
𝜕𝑁13
𝜕𝜉
=−
𝜕𝑁14
=
𝜕𝜉
𝜕𝑁15
𝜕𝑁16
𝜕𝜉
𝜕𝜂
𝜕𝜂
𝜕𝑁15
𝜕𝜂
𝜕𝑁16
𝜕𝑁13
𝜕𝜁
𝜕𝜁
𝜕𝑁15
𝜕𝜁
=
=
=−
111.0
(𝜁2 −1)∙(𝜂+1)
4
112.0
(𝜁2 −1)∙(𝜂+1)
4
113.0
( 𝜁2 −1)∙(𝜉−1)
4
114.0
( 𝜁2 −1)∙(𝜉+1)
=−
=−
𝜕𝑁14
4
=
=
110.0
(𝜁2 −1)∙(𝜂−1)
=−
𝜕𝑁14
𝜕𝜂
4
=−
𝜕𝜉
𝜕𝑁13
(𝜁2 −1)∙(𝜂−1)
4
115.0
( 𝜁2 −1)∙(𝜉+1)
4
116.0
(𝜂2 −1)∙(𝜉−1)
4
(𝜁)∙(𝜂−1)∙(𝜉−1)
2
(𝜁)∙(𝜂−1)∙(𝜉+1)
2
(𝜁)∙(𝜂+1)∙(𝜉+1)
2
117.0
118.0
119.0
120.0
𝜕𝑁16
𝜕𝜁
=
(𝜁)∙(𝜂+1)∙(𝜉−1)
121.0
2
Para un elemento de 20 nodos el vector de desplazamientos nodales tiene una columna con 40
filas, ya que 20 son desplazamientos en x de cada nodo y 20 desplazamientos en y de cada nodo:
𝑢1
𝑣1
𝜔1
𝑢2
𝑑 = 𝑣2
𝜔2
⋮ 𝑢20
𝑣20
[ 𝜔20 ]
Luego la matriz de funciones de forma del iso 20 es:
𝑁1
N=[0
0
0
𝑁1
0
0 𝑁2
0 0
𝑁1 0
0
𝑁2
0
0 𝑁20
0 … 0
𝑁2
0
122.
0
𝑁20
0
0
0 ]
𝑁20
123.0
De multiplicar los desplazamientos nodales y la matriz de funciones de forma del iso 20, se puede
obtener el vector de desplazamientos.
En el caso de las funciones de forma que dependen de 𝜉, 𝜂, 𝜁 es necesario establecer estas derivadas
respecto a x, y, y z. La matriz cinemática del iso 20 se ensambla de manera similar a la matriz
cinemática del iso 9, esto para cada punto de Gauss, luego el resultado será una matriz de rigidez
global del elemento, esta se ensambla como se describió en las ecuaciones 38 a la 41.2.
Objetivo de estudio
Analizar el comportamiento de un puente curvo de sección transversal tipo viga cajón con cuatro
puntos de apoyo, el cual será sometido a unas cargas a elección del Código Colombiano de Puentes
14 (CCP 14) y una sección a peso propio, usando un código en Matlab definiendo en GiD
elementos Iso 9 e Iso 20.
Análisis sección transversal en Iso 9
El puente curvo que se está analizando en este trabajo, presenta la oportunidad de estimar el
comportamiento de la sección que se eligió, sin aplicar ninguna carga pero si considerando la
gravedad de forma que debido a las restricciones impuestas se reflejará el comportamiento por
estar a peso propio. La siguiente figura muestra señalada la sección que se eligió para este análisis:
Figura 6.0 Sitio de la sección a analizar con iso 9 (2D).
Descripción del modelo
Para que la sección transversal este bajo peso propio, se partió de la premisa que este se da cuando
la sección se encuentra en el aíre, esto ocurre al realizarle un izaje de la sección.
Figura 7.0 Situación de izaje: a dos puntos. (Solís Díaz, 2016)
Geometría de la sección analizada
Se procedió a escoger una sección en el puente curvo que fuera interesante analizar, por lo que la
sección que resulta de cortar el puente en el punto máximo del arco que se forma en cada luz donde
se encuentra la disminución de área de la parte central inferior que empieza en 0.40m en los apoyos
y va disminuyendo hasta que en el punto máximo de la curva es 0.20 m. La geometría ya dibujada
en GiD se presenta en las siguientes imágenes:
Figura 8.0 Sección del puente con losa inferior en cota a = 0.2 m.
Figura 9.0 Geometría de la sección con las respectivas superficies.
La imagen 9.0 muestra la configuración de las superficies de la sección analizada por iso 9.
Malla de la sección analizada
Se generó una malla no estructurada para identificar el efecto del iso 9 y se obtuvo la malla que
se presenta en la siguiente imagen:
Figura 10.0 Malla generada con elementos cuadriláteros de nueve nodos.
Se revisó que la malla no tuviera inconsistencias de forma que al exportar el archivo de malla se
pudiera obtener conexión nodal continua para que el código en Matlab no presentará errores al
ser ejecutado.
Zona de restricciones
La sección del puente que se analiza por peso propio tiene ciertas especificaciones que permiten
analizarla, siendo una de ellas tener en cuenta los puntos de izaje del la sección. Los puntos de
izaje se ubicaron en los puntos lateral izquierdo y derecho, esto para evitar que por el peso se de
una falla en las alas si se ubicaran los puntos de izaje ahí. El archivo .txt de restricciones tendrá
los nodos seleccionados con cero para la dirección 2 que es la dirección Y, en la imagen siguiente
se puede ver los puntos donde se ubicó la restricción.
La carga será por lo tanto el peso propio del elemento, de forma que el archivo .txt de cargas no
tendrá valor alguno.
Figura 11.0 Ubicación de cargas
Material
La sección está hecha de concreto y además se considerará la gravedad para el análisis, por lo que
en el archivo de dgenerales.txt se digitarán los datos asociados al material y a las condiciones que
propician el análisis por peso propio. Además se especifica un espesor en el archivo de Matlab
para que este pueda hacer los respectivos cálculos interiormente.
Resultados del post proceso del Iso 9
Deformación en la sección debido a izaje
Figura 12.0 Deformación en y de la sección sometida a peso propio y dos puntos de izaje.
En este imagen es evidente que al ser sostenida la sección en sentido Y se presenta una
deformación debido a su propio peso en las alas de la sección como se espera analíticamente.
Esfuerzos en X
Figura 13.0 Esfuerzos en X debido a izaje y peso propio.
Los esfuerzos en X llegan a un máximo valor de 3310.3 KPa en los puntos donde hay cambios de
área evidentes como son las puntas de las alas y las esquinas interiores de la viga.
Esfuerzos en Y
Figura 14.0 Esfuerzos en Y debido a peso propio y 2 puntos de izaje.
La zona que está sometida a un mayor esfuerzo en Y es aquella que esta agarrada por el izaje,
como consecuencia es posible que se pudieses presentar una falla en esa zona debido a este
esfuerzo.
Figura 15.0 Los esfuerzos cortantes en el plano XY.
En los puntos de izaje es justamente donde se producen los esfuerzos cortantes y así lo muestra
la gráfica de resultados en el post-proceso.
Análisis puente en Iso 20
Para el análisis con el Iso 20, se creó uso todo el puente curvo bajo las condiciones que se
trazaron, las cuales son:
Puente curvo tipo viga cajón, con 4 apoyos (dos rígidos, dos
simples)
Del CCP 14 se eligio la carga que se aplicaría
La malla sería en Iso 20 para los analisis pertinentes en el post
proceso
Figura 16.0 Trazabilidad de los parámetros a cumplir en el análisis del Iso 20.
Descripción del modelo
El puente curvo esta hecho de concreto, tiene un radio de curvatura al eje longitudinal de 141
metros, se encuentra apoyado en 4 puntos de donde dos son imples y los otros dos son rígidos,
además el enunciado expresa que habrá una reducción de área a causa de que en el punto máximo
de la luz la losa inferior pasará de 0.4 metros a 0.2 metros.
Los datos de la geometría de la sección que corresponde a los apoyos de los extremos es la
siguiente:
Figura 17.0 Sección del puente curvo que corresponde a los apoyos de los extremos. La distancia a varía de 0.4 m
extremos en apoyos a 0.2 m en luces.
Geometría del puente analizado
En la construcción de la geometría del puente se afrontaron varios retos; entre ellos el más evidente
fue lograr un modelo geométricamente continuo, pero esto no fue posible fácilmente. Primero fue
necesario realizar esquemas manualmente pues así se podían calcular los puntos que se dibujarían
en el GiD. Hubieron intentos fallidos como dibujar la geometría y que esta no permitiera generar
una malla adecuada porque existían inconsistencias, lo cual se resolvió al optar por dibujar los
puntos exactos. A continuación una imagen del esquema que fue realizado para la generación de
puntos de la geometría:
Figura 18.0 Esquema para cálculo de puntos.
Una de las herramientas usadas en el cálculo de los puntos fue usar las coordenadas polares y
rectangulares para estimar distancias como se muestra a continuación:
Figura 19.0 Herramienta usada para la estimación de las distancias necesarias. (NASA (National Aeronautics ans
Space Administration) , 2015)
El resultado de haber realizado una geometría con precisión fue obtener el modelo que se
muestra a continuación:
Figura 20.0 Losa inferior con las 3 luces pedidas.
Figura 21.0 Losa superior del puente.
Figura 22.0 Modelo 3D del puente en GiD.
Ubicación de los puntos de la geometría del puente
Luego de haberse realizado el cálculo de cada punto mediante el uso de coordenadas polares, se
identificó que el programa GiD requería de buena precisión de forma que se concluyó que es
necesario realizar ese tipo de estimaciones con la mayor cantidad de decimales posible. Al final se
organizó en un archivo de excel si se obtuvieron las siguientes tablas (López Rojas , 2018) :
1
1
2
3
4
5
6
7
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x
2,34999999999999000
2,86811178543772000
4,41869667270149000
6,99053040325950000
10,56499617842530000
15,11621942125490000
20,61125507550990000
borde exterior
coordenadas xyz
y
z
0,00000000000000000 0,00000000000000000
0,20000000000000000 12,16827696712270000
0,00000000000000000 24,24847111615060000
0,20000000000000000 36,15313723633980000
0,00000000000000000 47,79610071618410000
0,20000000000000000 59,09308133778140000
0,00000000000000000 69,96230335820610000
Tabla 2.0 Coordenadas para del punto 1.
15
1
2
3
4
5
6
7
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
2,34999999999999000
2,86811178543772000
4,41869667270149000
6,99053040325950000
10,56499617842530000
15,11621942125490000
20,61125507550990000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,00000000000000000
12,16827696712270000
24,24847111615060000
36,15313723633980000
47,79610071618410000
59,09308133778140000
69,96230335820610000
Tabla 3.0 Coordenadas del punto 15.
17
1
2
3
4
5
6
7
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x
2,34999999999999000
2,86811178543772000
4,41869667270149000
6,99053040325950000
10,56499617842530000
15,11621942125490000
20,61125507550990000
Punto 17
y
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
z
0,00000000000000000
12,16827696712270000
24,24847111615060000
36,15313723633980000
47,79610071618410000
59,09308133778140000
69,96230335820610000
Tabla 4.0 Coordenadas del punto 17.
6
1
2
3
4
5
6
7
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x x
0,00000000000000000
0,52661728802786500
2,10265711406262000
4,71671095825539000
8,34985640210184000
12,97579410263770000
18,56103816616620000
Punto 6
y
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
z
0,00000000000000000
12,36803561799760000
24,64654241983870000
36,74663966390110000
48,58073806639740000
60,06317383616620000
71,11082877135160000
Tabla 5.0 Coordenadas del punto 6.
5
1
2
3
4
angulos en radianes
0,000
0,085
0,170
0,255
0,00000000000000000
0,52661728802786500
2,10265711406262000
4,71671095825539000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
0,00000000000000000
12,36803561799760000
24,64654241983870000
36,74663966390110000
5
6
7
0,340
0,426
0,511
8,34985640210184000 2,80000000000000000
12,97579410263770000 2,80000000000000000
18,56103816616620000 2,80000000000000000
48,58073806639740000
60,06317383616620000
71,11082877135160000
Tabla 6.0 Coordenadas del punto 5.
8
9
10
11
12
13
14
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x
6,65000000000001000
7,15254852537916000
8,65655629063642000
11,15113619624580000
14,61823066276180000
19,03274234468210000
24,36271580324520000
2,000
borde interior
coordenadas xyz
y
0,00000000000000000
0,20000000000000000
0,00000000000000000
0,20000000000000000
0,00000000000000000
0,20000000000000000
0,00000000000000000
z
0,00000000000000000
11,80276113786230000
23,52008532642340000
35,06715407101490000
46,36038130941080000
57,31801846839640000
67,86074621925890000
Tabla 7.0 Coordenadas del punto 2.
16
8
9
10
11
12
13
14
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,65000000000001000
7,15254852537916000
8,65655629063642000
11,15113619624580000
14,61823066276180000
19,03274234468210000
24,36271580324520000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,00000000000000000
11,80276113786230000
23,52008532642340000
35,06715407101490000
46,36038130941080000
57,31801846839640000
67,86074621925890000
Tabla 8.0 Coordenadas del punto 16.
18
8
9
10
11
12
13
14
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,65000000000001000
7,15254852537916000
8,65655629063642000
11,15113619624580000
14,61823066276180000
19,03274234468210000
24,36271580324520000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
Tabla 9.0 Coordenadas del punto 18.
0,00000000000000000
11,80276113786230000
23,52008532642340000
35,06715407101490000
46,36038130941080000
57,31801846839640000
67,86074621925890000
3
8
9
10
11
12
13
14
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
9,00000000000000000
9,49404302278901000
10,97259584927530000
13,42495564124990000
16,83337043908520000
21,17316766329930000
26,41293271258890000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
0,00000000000000000
11,60300248698740000
23,12201402273530000
34,47365164345360000
45,57574395919750000
56,34792597001160000
66,71222080611340000
Tabla 10.0 Coordenadas del punto 3.
4
8
9
10
11
12
13
14
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
9,0000000000000000
9,4940430227890100
10,9725958492753000
13,4249556412499000
16,8333704390852000
21,1731676632993000
26,4129327125889000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
0,0000000000000000
11,6030024869874000
23,1220140227353000
34,4736516434536000
45,5757439591975000
56,3479259700116000
66,7122208061134000
Tabla 11.0 Coordenadas del punto 4.
13
borde interior EXTERIOR
coordenadas xyz
angulos en
radianes
15
16
17
18
19
20
21
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x
2,65000000000001000
3,16702597659642000
4,71436129720857000
7,28080522602599000
10,84777997965800000
15,38946520661030000
20,87298489372400000
y
0,00000000000000000
0,20000000000000000
0,00000000000000000
0,20000000000000000
0,00000000000000000
0,20000000000000000
0,00000000000000000
Tabla 12.0 Coordenadas del punto 13.
z
0,00000000000000000
12,14277586275570000
24,19765350291380000
36,07737096899160000
47,69593424594410000
58,96923974224290000
69,81568309269810000
7
15
16
17
18
19
20
21
angulos en radianes
0,000 2,65000000000001000 0,40000000000000000 0,00000000000000000
0,085 3,16702597659642000 0,40000000000000000 12,14277586275570000
0,170 4,71436129720857000 0,40000000000000000 24,19765350291380000
0,255 7,28080522602599000 0,40000000000000000 36,07737096899160000
0,340 10,84777997965800000 0,40000000000000000 47,69593424594410000
0,426 15,38946520661030000 0,40000000000000000 58,96923974224290000
0,511 20,87298489372400000 0,40000000000000000 69,81568309269810000
Tabla 13.0 Coordenadas del punto 7.
9
15
16
17
18
19
20
21
angulos en radianes
0,000 2,65000000000001000 2,40000000000000000 0,00000000000000000
0,085 3,16702597659642000 2,40000000000000000 12,14277586275570000
0,170 4,71436129720857000 2,40000000000000000 24,19765350291380000
0,255 7,28080522602599000 2,40000000000000000 36,07737096899160000
0,340 10,84777997965800000 2,40000000000000000 47,69593424594410000
0,426 15,38946520661030000 2,40000000000000000 58,96923974224290000
0,511 20,87298489372400000 2,40000000000000000 69,81568309269810000
Tabla 14.0 Coordenadas del punto 9.
19
15
16
17
18
19
20
21
angulos en radianes
0,000 2,94999999999999000 2,80000000000000000 0,00000000000000000
0,085 3,46594016775512000 2,80000000000000000 12,11727475838870000
0,170 5,01002592171565000 2,80000000000000000 24,14683588967700000
0,255 7,57108004879245000 2,80000000000000000 36,00160470164330000
0,340 11,13056378089080000 2,80000000000000000 47,59576777570410000
0,426 15,66271099196560000 2,80000000000000000 58,84539814670440000
0,511 21,13471471193810000 2,80000000000000000 69,66906282719020000
Tabla 15.0 Coordenadas del punto a 19.
11
15
16
17
18
19
20
21
angulos en radianes
0,000 2,9499999999999900 2,6000000000000000 0,0000000000000000
0,085 3,4659401677551200 2,6000000000000000 12,1172747583887000
0,170 5,0100259217156500 2,6000000000000000 24,1468358896770000
0,255 7,5710800487924500 2,6000000000000000 36,0016047016433000
0,340 11,1305637808908000 2,6000000000000000 47,5957677757041000
0,426 15,6627109919656000 2,6000000000000000 58,8453981467044000
0,511 21,1347147119381000 2,6000000000000000 69,6690628271902000
Tabla 16.0 Coordenadas del punto 11.
12
22
23
24
25
26
27
28
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,05000000000001000
6,55472014306176000
8,06522704162225000
10,57058655071280000
14,05266306029620000
18,48625077397130000
23,83925616681700000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
2,60000000000000000
0,00000000000000000
11,85376334659630000
23,62172055289690000
35,21868660571140000
46,56071424989080000
57,56570165947340000
68,15398675027480000
Tabla 17.0 Coordenadas del punto 12.
20
22
23
24
25
26
27
28
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,0500000000000100
6,5547201430617600
8,0652270416222500
10,5705865507128000
14,0526630602962000
18,4862507739713000
23,8392561668170000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
2,8000000000000000
Tabla 18.0 Coordenadas del punto 20.
0,0000000000000000
11,8537633465963000
23,6217205528969000
35,2186866057114000
46,5607142498908000
57,5657016594734000
68,1539867502748000
10
22
23
24
25
26
27
28
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,34999999999999000
6,85363433422046000
8,36089166612931000
10,86086137347930000
14,33544686152900000
18,75949655932670000
24,10098598503110000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
2,40000000000000000
0,00000000000000000
11,82826224222930000
23,57090293966020000
35,14292033836320000
46,46054777965080000
57,44186006393490000
68,00736648476680000
Tabla 19.0 Coordenadas del punto 10.
8
22
23
24
25
26
27
28
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,34999999999999000
6,85363433422046000
8,36089166612931000
10,86086137347930000
14,33544686152900000
18,75949655932670000
24,10098598503110000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,40000000000000000
0,00000000000000000
11,82826224222930000
23,57090293966020000
35,14292033836320000
46,46054777965080000
57,44186006393490000
68,00736648476680000
Tabla 20.0 Coordenadas del punto 8.
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x
6,34999999999999000
6,85363433422046000
8,36089166612931000
10,86086137347930000
14,33544686152900000
18,75949655932670000
24,10098598503110000
14
borde interior exterior interior
coordenadas xyz
y
z
0,00000000000000000 0,00000000000000000
0,20000000000000000 11,82826224222930000
0,00000000000000000 23,57090293966020000
0,20000000000000000 35,14292033836320000
0,00000000000000000 46,46054777965080000
0,20000000000000000 57,44186006393490000
0,00000000000000000 68,00736648476680000
Tabla 21.0 Coordenadas del punto 14.
21
Angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
x
2,65000000000001000
3,16702597659642000
4,71436129720857000
7,28080522602599000
10,84777997965800000
15,38946520661030000
20,87298489372400000
y
z
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
0,00000000000000000
12,14277586275570000
24,19765350291380000
36,07737096899160000
47,69593424594410000
58,96923974224290000
69,81568309269810000
Tabla 22.0 Coordenadas del punto 21.
23
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
6,34999999999999000
6,85363433422046000
8,36089166612931000
10,86086137347930000
14,33544686152900000
18,75949655932670000
24,10098598503110000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
0,00000000000000000
11,82826224222930000
23,57090293966020000
35,14292033836320000
46,46054777965080000
57,44186006393490000
68,00736648476680000
Tabla 23.0 Coordenadas del punto 23.
25
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
7,50000000000000000
7,99947206699551000
9,49427272673981000
11,97358152741750000
15,41945143292130000
19,80693873652230000
25,10428362151850000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
2,80000000000000000
Tabla 24.0 Coordenadas del punto 25.
0,00000000000000000
11,73050800882240000
23,37610208891920000
34,85248298019490000
46,07657631039750000
56,96713394770400000
67,44532213365310000
26
angulos en radianes
0,000 1,50000000000000000 2,80000000000000000
0,085 2,02118824382140000 2,80000000000000000
0,170 3,58098023659807000 2,80000000000000000
0,255 6,16808507208779000 2,80000000000000000
0,340 9,76377540826573000 2,80000000000000000
0,426 14,34202302941460000 2,80000000000000000
0,511 19,86968725723670000 2,80000000000000000
0,00000000000000000
12,24053009616250000
24,39245435365480000
36,36780832715990000
48,07990571519740000
59,44396585847380000
70,37772744381190000
Tabla 25.0 Coordenadas del punto 26.
27
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
7,50000000000000000
7,99947206699551000
9,49427272673981000
11,97358152741750000
15,41945143292130000
19,80693873652230000
25,10428362151850000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
0,00000000000000000
11,73050800882240000
23,37610208891920000
34,85248298019490000
46,07657631039750000
56,96713394770400000
67,44532213365310000
Tabla 26.0 Coordenadas del punto 27.
28
angulos en radianes
0,000
0,085
0,170
0,255
0,340
0,426
0,511
1,50000000000000000
2,02118824382140000
3,58098023659807000
6,16808507208779000
9,76377540826573000
14,34202302941460000
19,86968725723670000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
2,47234042553191000
Tabla 27.0 Coordenadas del punto 28.
0,00000000000000000
12,240530096162500t00
24,39245435365480000
36,36780832715990000
48,07990571519740000
59,44396585847380000
70,37772744381190000
Definición de las cargas
Revisión del Código Colombiano de puentes (CCP14)
El procedimiento realizado para establecer las cargas a aplicar en una zona del puente consistió en
realizar la revisión del CCP14, y así elegir cual tipo de carga sería aplicable. Se optó por la carga
de carril de diseño, según la norma, la carga de carril de diseño debe consistir en una carga de 10.3
kN/m que debe ser uniformemente distribuida en dirección longitudinal, y en el sentido transversal
la carga de carril de diseño debe suponerse uniformemente distribuida sobre un ancho de 3000
mm, este tipo de cargas tienen la especificación de que no deben someterse a amplificación con
carga dinámica (República de Colombia, Ministerio de Transporte, Invias, 2014).
Tabla 28.0 Selección del factor de mayorización –resistencia I (CCP14- Tabla 3.4.1.1. (República de Colombia,
Ministerio de Transporte, Invias, 2014)
Factor de mayorización
Se eligió el estado límite conocido como resistencia I, este estado refiere a combinación básica de
cargas relacionadas con el uso vehicular normal del puente sin viento. El factor de mayorización
de 1.75 se seleccionó de la tabla 3.4.1.1 – Combinaciones de factores de carga del CCP14.
Carga en nodos de ubicación del camión
Los datos para el camión de diseño son:
23.0 Las características del camión de diseño según figura 3.6.1.2.2-1. (República de Colombia, Ministerio de
Transporte, Invias, 2014)
La ubicación de los nodos del camión con case enlisto así:
Nodo
Eje Y
Carga (Kn)
18110
18085
20650 2 -294
20612 2 -294
26046 2 -294
26000 2 -294
2
2
2
2
2
2
-73.5
-73.5
-294
-294
-294
-294
Tabla 29.0 Cagas en nodos debido a camión de diseño.
En la siguiente imagen se puede evidenciar como se ve afectado en puente por la ubicación de
las cargas, teniendo en cuenta que se aplicaron las cargas en 2520 nodos en la zona con mayor
longitud de los vectores de desplazamiento:
Figura 24.0 Desplazamiento debido a las cargas aplicadas.
Archivo de cargas
El archivo de cargas .txt se conformó por los nodos que se eligieron, los cuales se enlistaron
como se muestra en forma resumida en la siguiente tabla:
Ítem
1
2
3
4
5
6
7
8
9
10
11
12
Nodo
14915
15270
14748
15625
15100
15259
15975
15448
14894
16324
15611
15791
Eje
2
2
2
2
2
2
2
2
2
2
2
2
Tabla 30.0 Nodos cargados primeras 12 posiciones.
Carga (kN)
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
-0.343
Restricciones
Inicialmente se realizó un análisis del enunciado del problema donde especifica que el puente tiene
4 apoyos, de estos dos apoyos son apoyos simples y los otros don son apoyos rígidos, de forma
que se realizaron las respectivas restricciones en los extremos y en los medios. En los extremos se
eligió restringir un extremo en la dirección 1 y 2, para el otro extremo en la dirección1, 2 y 3, para
los de la mitad se restringió solo en la dirección 2.
Archivos de restricciones
Luego de obtener los nodos restringidos, se creó un archivo .txt donde se indicó con cero el eje
restringido, y en la siguiente tabla se presentan resumen de posiciones del archivo de restricciones:
Ítem
1
2
3
4
5
6
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Nodo
42779
42801
42830
42848
42866
42912
2178
2338
2781
2660
674
639
586
674
639
586
2530
731
797
42779
674
639
586
2530
731
797
Eje
2
2
2
2
2
2
3
3
3
3
3
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
Carga
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
Tabla 31.0 Posiciones resumen del archivo de restricciones.
Tabla 32.0 Visualización del comportamiento de la deformación en el puente debido a las cargas y restricciones.
Malla del puente
Para generar la malla del puente se creyó pertinente crear varias capas, debido a la complejidad
de la figura, dejar todo el modelo en una sola capa dificulta la selección de las líneas ya que son
muchas.
Sección del puente Divisiones horizontales
5
Ala izquierda
5
Ala derecha
1
Lateral derecho
1
Lateral izquierdo
11
Losa inferior
20
Losa superior
Divisiones verticales
1
1
5
5
1
1
Tabla 33.0 Divisiones de las piezas en el puente para generación de malla.
Las divisiones realizadas resultaron en una malla estructurada que esta por capas como se ve en
la siguiente imagen:
Tabla 34.0 Visualización de las divisiones en la malla.
Resultados puente con elementos Iso 20
Las siguientes imágenes corresponden al campo de resultados en esfuerzos, esfuerzos principales,
deformaciones unitarias, y desplazamientos del puente curvo. Se encuentran gráficas en 2D y en
el puente en 3D.
Gráficas 2D
Gráficas de esfuerzos en puente vista 3D
Esfuerzos en X
Figura 25.0 Esfuerzo en Z: esfuerzos en losa superior.
Esfuerzo en Z: Teniendo en cuenta que la carga aplicada a la estructura se ubicó en el vano central,
los mayores esfuerzos se presentan en el vano donde se aplicó la carga y en los apoyos centrales
donde se genera la reacción. En los vanos extremos los esfuerzos se presentan en una magnitud
menor.
Figura 26.0 Esfuerzos en Y: esfuerzos en losa superior.
Esfuerzo en Y: Teniendo en cuenta que para localizar el camión se consideró el teorema de Barett
que permite calcular la máxima deflexión, que para este caso de análisis se escogió vano central,
el máximo esfuerzo se produce justamente en esta posición.
Figura 27.0 Vista YX de esfuerzos en xz.
Figura 28.0 Vista en corte de esfuerzos en xy.
En las secciones de los apoyos centrales del puente se generan los esfuerzos máximos a cortantes
ya que, por la geometría curva, la localización de la carga de carril de diseño y el camión de diseño
en la parte exterior de la calzada genera una excentricidad que ocasiona que estas secciones estén
sometidas a torsión.
Figura 29.0 Vista en sección de esfuerzos en yz.
Resultados de esfuerzos en vista 3D
Figura 30.0 Esfuerzos en X (Sxx) vista 1.
Los esfuerzos en X varían de 29890 KPa hasta - 41889 Kpa, siendo su mayor influencia evidente
en los puntos de apoyo ubicados en los puntos más altos de la luz. Para los esfuerzos siguientes,
la mayor influencia también se da en los puntos restringidos de las luces como se espera.
Figura 31.0 Esfuerzos en X (Sxx) vista 2.
Esfuerzos en Y
Figura 32.0 Esfuerzos en Y (Syy) vista 1.
Figura 33.0 Esfuerzos en Y (Syy) vista 2.
Esfuerzos en Z
Figura 34.0 Esfuerzos en Z (Szz) vista 1.
Figura 35.0 Esfuerzos en Z (Szz) vista 2.
Esfuerzos cortantes 𝝉𝒙𝒚
Figura 36.0 Esfuerzos cortantes 𝜏𝑥𝑦
Figura 37.0 Esfuerzos cortantes 𝜏𝑥𝑦
vista 2.
Esfuerzos cortantes 𝝉𝒙𝒛
Figura 38.0 Esfuerzos cortantes 𝜏𝑥𝑧
vista 1.
Figura 39.0 Esfuerzos cortantes 𝜏𝑥𝑧
vista 2.
Esfuerzos cortantes 𝝉𝒚𝒛
Figura 40.0 Esfuerzos cortantes 𝜏𝑦𝑧
vista 1.
Figura 41.0 Esfuerzos cortantes 𝜏𝑦𝑧
vista 2.
Esfuerzo principal 1
Figura 42.0 Esfuerzo principal 1 vista 1.
Figura 43.0 Esfuerzo principal 1 vista 2.
Esfuerzo principal 2
44.0 Esfuerzo principal 2 vista 1.
Figura 45.0 Esfuerzo principal 2 vista 2.
Esfuerzo principal 3
Figura 46.0 Esfuerzo principal 3 vista 1.
Figura 47.0 Esfuerzo principal 3 vista 2.
Deformación unitaria en X
Figura 48.0 Deformación unitaria en X.
Deformación unitaria en Y
Figura 49.0 Deformación unitaria en Y.
Deformación unitaria en Z.
Figura 50.0 Deformación unitaria en Z.
Deformación unitaria en XY
Figura 51.0 Deformación unitaria en XY.
Deformación unitaria en XZ
Figura 52.0 Deformación unitaria en XZ.
Deformación unitaria en YZ
Figura 53.0 Deformación unitaria en YZ.
Deformación principal 1
Figura 54.0 Deformación principal 1.
Deformación principal 2
55.0 Deformación principal 2.
Deformación principal 3
Figura 56.0 Deformación principal 3.
Deformación del puente
Figura 57.0 Vista deformada del puente.
Figura 58.0 Vista original vs vista deformada.
Conclusiones
1. El análisis por el método de los elementos finitos es eficiente porque permite discretizar un
sistema y realizar análisis de varias variables que de otra forma sería imposible realizar,
sin embargo la precisión de los resultados depende de la experticia del usuario que este
ejecutando el análisis ya que si no tiene los conocimientos ingenieriles adecuados puede
que no vea errores que den resultados poco precisos; también está que el uso del software
de análisis puede requerir también una experiencia previa y horas de dedicación para
obtener una agilidad de manejo considerable.
2. La geometría es el punto de partida más importante, pues cuando la geometría presentaba
errores la malla se generaba con errores que se podían identificar al exportar los archivos
a excel pues la conectividad nodal era discontinua, razón por la cual fue importante realizar
un análisis previo para crear los puntos que posteriormente se crearon en GiD para realizar
el modelo en 3D.
3. Es interesante los datos del post proceso de la sección evaluada con iso 9, ya que los
resultados concernientes a deformación y a esfuerzos son congruentes por con resultados
que se esperan analíticamente, entonces se puede concluir que el peso propio de un
elemento estructural si produce esfuerzos y deformación que hay que tener en cuenta en la
construcción geométrica de estas para permitir que al ser izadas para ensamble no se
presente una falla por peso propio.
4. En el puente se identificó una torsión producida por las cargas que fueron aplicadas, esto
se evidencia en los esfuerzos cortantes y también en el modelo de deformación del puente,
esto sucede debido a la forma del puente y por lo cual se instalan dos apoyos rígidos que
le dan el aporte contra torsión que asegura que no se presente una falla del mismo mientras
esté en funcionamiento.
Bibliografía
(s.f.).
Felippa A., C. (2004). Introduction to finite element methods. University of Colorado at Boulder,
Course Notes, Department of Aerospace Engineeing Sciences, Colorado.
Ferreira, A. (2009). MATLAB Codes for Finite Element Analysis: Solids and Structures.
Universidade do Porto, Fac. Engenharia. Porto, Portugal: Springer Science Business
Media B.V.
Hutton V., D. (2004). Fundamentals of Finite Element Analysis. New York: McGraw-Hill.
Kwon W., Y., & Bang, H. (2000). The Finite Element Method using Matlab. Library of Congress
Cataloging in Publication Data.
Leiton Lasso, D. E., López Rojas, W., & Soto Pineda, D. Y. (2018). Estudiantes: Análisis
Estructural por Elementos Finitos. Universidad Nacional de Colombia, Ingeniería Civil y
Arquitectura, Manizales.
López Rojas , W. (2018). Análisis por coordenadas de la geometría de puente curvo tipo viga
cajón con 3 luces. Manizales.
Mathai, A. M. (1997). Jacobian of Matrix Transformations and Funtions of Matrix Argument.
McGill Universit , Deparment of Mathematics & Statistics . World Scientific Publishing
Co. Pte. Ltd.
NASA (National Aeronautics ans Space Administration) . (05 de Mayo de 2015). NASA.
Obtenido de https://www.grc.nasa.gov/www/k-12/airplane/coords.html
Paredes López, J. (2018). Elemento Hexaédrico de 20 nodos. Manizales.
Paredes López, J. A. (2018). Elemento cuadrilátero isoparamétrico de nueve nodos. Universidad
Nacional de Colombia. Manizales: Guía de estudio. Clase de análisis estructural por
elementos finitos.
Paredes López, J. A. (2018). Elemento Isoparámetrico. Universidad Nacional de Colombia ,
Manizales.
República de Colombia, Ministerio de Transporte, Invias. (2014). Norma Colombiana de diseño
de puentes CCP14. Bogotá : Asociación Colombiana de Ingeniería Sísmica - AIS.
Skiba, Y. (2005). Métodos y esquemas numéricos: un análisis computacional. Universidad
Nacional Autónoma de México. México,D.F.: Dirección general de publicaciones y
fomento editorial.
Solís Díaz, J. M. (03 de Agosto de 2016). Radio Rebelde. Obtenido de
http://www.radiorebelde.cu/noticia/comienza-colocacion-vigas-postensadas-puentematancero-guanima-20160803/
Anexo 1. Líneas de código para análisis de elemento de 9 nodos
%%
%Programa para problemas lineales planos de elementos finitos; octubre 2016
%Jairo Andrés Paredes López - japaredesl@unal.edu.co
%Profesor Asociado - UNIVERSIDAD NACIONAL DE COLOMBIA - SEDE MANIZALES
% Departamento de Ingeniería Civil - Posgrados de Estructuras
%%
clear,clc, close all;
tic
ttim=0;
timeacu=0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% LECTURA DE ENTRADA DE DATOS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
nudo= load ('coord.txt','-ascii');
%Lee las coordenadas nodales:coord.txt
elements=load ('malla.txt','-ascii'); %Lee la conectividad nodal: malla.txt
triang=elementos
restric=load('restric.txt','-ascii');%Lee los desplazamientos impuestos (nodo direccion - magnitud)
cargas=load('cargas.txt','-ascii'); %Lee los desplazamientos impuestos
dgen=load('dgenerales.txt','-ascii');
ttim = timing('Lectura de datos',ttim); %Reporting time
timeacu=timeacu+ttim;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% DEFINICIÓN DE CONDICIONES GENERALES DEL PROBLEMA A ANALIZAR
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
elemtpe=dgen(1); % 3 triangulo 3 nodos; 4 rectangulo 4 nodos; 5 isoparametrico 4
nodos; 9 iso 9nodos
analytype=dgen(2); % 1 tensio plana; 2 deformacion plana
ee=dgen(3); %espesor
nmat=dgen(4); %Nùmero de MATERIALES
numelem=size(elements,1); %numero de elementos del problema
numnudos=size(nudo,1); %numero de nudos de la malla
dim=2*numnudos;
%dimension de la matriz de rigidez global: doft
numrestric=size(restric,1); %numero de grados de libertad restringidos
uk=restric(:,3);
%subvector de desplazamientos conocidos
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PROPIEDADES MECÁNICAS DE LOS MATERIALES Y MATRICES CONSTITUTIVAS %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%PROPIEDADES DE LOS MATERIALES
Emat=zeros(nmat,1); % Vector con los valores de MODULO DE ELASTICIDAD de c/material
vmat=zeros(nmat,1); % Vector con los valores de Modulo de Poisson de c/material
romat=zeros(nmat,1);% Vector con los valores de densidad de c/material
for i=1:nmat
Emat(i)=dgen(4+i);
vmat(i)=dgen(4+nmat+i);
romat(i)=dgen(4+2*nmat+i);
end
grav=dgen(4+3*nmat+1);
%
%
%
(2.1e7)
(0.2);
%kN/m2 MÓDULOS DE ELASTICIDAD
%MÓdulos de Poisson
%Densidades
% Gravedad, si grav=0.0, el peso propio=0.0
%MATRIZ CONSTITUTIVA DE ELASTICIDAD ISOTROPICA " C " Para cada material
Cmat=zeros(3,3,nmat);
if analytype == 1
% para tension plana
for i =1:nmat
E=Emat(i);
v=vmat(i);
C=E*[1/(1-v^2) v/(1-v^2)
0;
v/(1-v^2) 1/(1-v^2)
0;
0
0
0.5/(1+v)];
Cmat(:,:,i)=C;
end
else if analytype == 2
%para deformación plana
for i =1:nmat
E=Emat(i);
v=vmat(i);
C=E/((1+v)*(1-2*v))*[(1-v)
v
0
;
v
(1-v)
0
;
0
0 (1-2*v)*0.5];
Cmat(:,:,i)=C;
end
else
error('error de definicion en el tipo de analisis')
end
end
%% ---------------------------------------------------------------------switch elemtpe
case 3
%% MATRIZ CINEMATICA B
B=zeros(3,6,numelem);
Ke=zeros(6,6,numelem);
for i =1:numelem
corx=nudo(elements(i,1:3),1);
x1=corx(1);
y1=cory(1);
x2=corx(2);
y2=cory(2);
x3=corx(3);
y3=cory(3);
cory=nudo(elements(i,1:3),2);
A(i)=0.5*det([1 x1 y1;1 x2 y2;1 x3 y3]);
%Area del triangulo i
a1=x2*y3-x3*y2;
b1=y2-y3;
c1=x3-x2;
a2=x3*y1-x1*y3;
b2=y3-y1;
c2=x1-x3;
a3=x1*y2-x2*y1;
b3=y1-y2;
c3=x2-x1;
Baux=[b1 0 b2
0 c1 0
c1 b1 c2
0 b3 0;
c2 0 c3;
b2 c3 b3];
B(:,:,i)=Baux/(A(i)*2);
%% MATRIZ DE RIGIDEZ DE CADA ELEMENTO
Be=B(:,:,i);
C=Cmat(:,:,elements(i,4));
% en el archivo malla en la columna 4 numero del
material
Ke(:,:,i)=ee*Be'*C*Be*A(i);
end
ttim = timing('calculo de matriz de rigidez elemental',ttim); %Reporting time
timeacu=timeacu+ttim;
%% ENSAMBLE DE LA MATRIZ GLOGAL DE RIGIDEZ
Kg=sparse(dim,dim);
for t=1:numelem
fila=[2*elements(t,1)-1 2*elements(t,1) 2*elements(t,2)-1 2*elements(t,2)
2*elements(t,3)-1 2*elements(t,3)];
Kg(fila,fila)=Kg(fila,fila)+Ke(:,:,t);
end
ttim = timing('ensamble',ttim); %Reporting time
timeacu=timeacu+ttim;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
VECTOR DE FUERZAS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Vector de fuerzas volumétricas de cada elemento
fbe=zeros(6,numelem);
fb=zeros(dim,1); %Verctor global de fuerzas volumétricas
if grav~=0.0; %cálculo vector de fuerzas volumétricas de cada elemento
for i =1:numelem
fbe(:,i)=-0.3333333333*ee*A(i)*romat(elements(i,4))*grav*[0 1 0 1 0 1 ];
end
% Calculo del vector global de fuerzas volumétricas
for i=1:numelem
for j=1:3
fb(elements(i,j)*2-1)=fb(elements(i,j)*2-1)+fbe(j*2-1,i);
fb(elements(i,j)*2)=fb(elements(i,j)*2)+fbe(j*2,i);
end
end
end
fg=zeros(dim,1);%VECTOR Global DE FUERZAS distribuidas
for i =1:size(cargas,1);
loc=cargas(i,1)*2+(cargas(i,2)-2);
fg(loc)=fg(loc)+cargas(i,3);
end
fg=fg+fb; % Vector global de cargas total
%-----------------------------------------------------------------%Define los grados de libertad restringidos
for k=1:size(restric,1)
ficol(k)=restric(k,1)*2+(restric(k,2)-2);
end
%Define los grados de libertad NO restringidos
n=0;
for i=1:dim
if i~=ficol
n=n+1;
noficol(n)=i;
ii(n)=i;
end
end
%GENERA EL VECTOR DE FUERZAS REDUCIDO
fa=fg(noficol);
%GENERA LAs subMATRIces DE Kg
ka=Kg(ficol,ficol);
kb=Kg(ficol,noficol);
kc=Kg(noficol,ficol);
kk=Kg(noficol,noficol);
%% CALCULA EL VECTOR DE DESPLAZAMIENTOS
unk=kk\(fa-kc*uk);
u=unk;
fr=ka*uk+kb*unk-fb(ficol); % fb(ficol) : fuerzas volumetricas aplicadas en los nodos
restringidos
ttim = timing('solucion',ttim); %Reporting time
D=zeros(dim,1);%VECTOR DE DESPLAZAMIENTOS CON LOS DESPLAZAMIENTOS DEL APOYO
n=0;
for i=noficol;n=n+1;
D(i)=u(n);
end
n=0;
for i=ficol;n=n+1;
D(i)=uk(n);
end
%% VECTOR DE DESPLAZAMIENTOS DE CADA ELEMENTO De
De=sparse(6,numelem);
for i=1:numelem
fila=[2*elements(i,1)-1 2*elements(i,1) 2*elements(i,2)-1 2*elements(i,2)
2*elements(i,3)-1 2*elements(i,3)];
De(:,i)=D(fila);
end
%% CALCULO DE LA DEFORMACION unitaria DE CADA ELEMENTO Strain
Strain=zeros(3,numelem);
for i =1:numelem
Strain(:,i)=B(:,:,i)*De(:,i);
end
%% CALCULO DE LAS TENSIONES EN CADA ELEMENTO
Stress=zeros(3,numelem);
for i =1:numelem
C=Cmat(:,:,elements(i,4));
Stress(:,i)=C*B(:,:,i)*De(:,i);
end
ttim = timing('esfuerzos y deformaciones',ttim); %Reporting time
timeacu=timeacu+ttim;
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%% ESCRIBE ARCHIVO DE RESULTADOS %%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
fid = fopen('salida.post.res', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.txt'); end
fprintf(fid, 'GID Post Results File 1.0\n');
fprintf(fid, '\n');
fprintf(fid, 'GaussPoints "GP_TRIANGLE_1"
Elemtype
Triangle \n');
fprintf(fid, 'Number of Gauss Points:
1\n');
fprintf(fid, 'Natural Coordinates
: Internal\n');
fprintf(fid, 'End GaussPoints\n');
fprintf(fid, '\n');
fprintf(fid, 'Result "STRESSES" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_TRIANGLE_1"\n');
fprintf(fid, 'ComponentNames "Sxx" "Syy" "Sxy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,Stress(1,i), Stress(2,i), Stress(3,i));
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "disp" "disp"
1.0 Vector OnNodes
"GP_TRIANGLE_1"\n');
fprintf(fid, 'ComponentNames "Dx" "Dy" \n');
fprintf(fid, 'Values \n');
for i=1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f\n', i,D(i*2-1), D(i*2));
if i==size(nudo,1);
end
fclose(fid);
fprintf(fid, 'End Values \n');end
fid = fopen('salida.post.msh', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.post.msh'); end
fprintf(fid, 'MESH dimension 3 ElemType Triangle Nnode 3\n');
fprintf(fid, 'Coordinates\n');
for i=1:1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,nudo(i,1), nudo(i,2), 0.0);
if i==size(nudo,1);
fprintf(fid, 'End Coordinates \n');end
end
fprintf(fid, 'Elements\n');
for i=1:numelem
fprintf(fid, '%d %d %d %d %d\n', i,elements(i,1), elements(i,2), elements(i,3),
elements(i,4));
if i==numelem;
fprintf(fid, 'End Elements \n');end
end
fclose(fid);
ttim = timing('escritura',ttim); %Reporting time
timeacu=timeacu+ttim
toc
timeacu=timeacu+toc
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% cASO DE ELEMENTO RECTANGULAR DE 4 NODOS
%
%
%
case 4
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%MATRIZ de Rigidez elemental Ke
Ke=zeros(8,8,numelem);
fbe=zeros(8,numelem);
for i=1:numelem
corx=nudo(elements(i,1:4),1);
cory=nudo(elements(i,1:4),2);
conecti=zeros(1,4);
for j=1:4
if (corx(j)==min(corx)& cory(j)==min(cory))
conecti(1)= elements(i,j);
elseif (corx(j)==max(corx)& cory(j)==min(cory))
conecti(2)= elements(i,j);
elseif (corx(j)==max(corx)& cory(j)==max(cory))
conecti(3)= elements(i,j);
else
conecti(4)= elements(i,j);
end
end
elements(i,1:4)= conecti(:);
end
%% MATRIZ de Rigidez elemental Ke
Ke=zeros(8,8,numelem);
for i=1:numelem
corx=nudo(elements(i,1:4),1);
cory=nudo(elements(i,1:4),2);
b=abs(corx(3)-corx(1))/2; h=abs(cory(3)-cory(1))/2;
C=Cmat(:,:,elements(i,5));
c1=C(1,1);c2=C(1,2);c3=C(2,2);c4=C(3,3);
Kee =[ 1/3/b*h*c1+1/3*b/h*c4
1/4*c2+1/4*c4 -1/3/b*h*c1+1/6*b/h*c4
1/4*c2-1/4*c4 -1/6/b*h*c1-1/6*b/h*c4
-1/4*c2-1/4*c4
1/6/b*h*c1-1/3*b/h*c4
-1/4*c2+1/4*c4;
1/4*c2+1/4*c4
1/3/b*h*c4+1/3*b/h*c3
-1/4*c2+1/4*c4 1/3/b*h*c4+1/6*b/h*c3
-1/4*c2-1/4*c4 -1/6/b*h*c4-1/6*b/h*c3
1/4*c2-1/4*c4
1/6/b*h*c4-1/3*b/h*c3;
-1/3/b*h*c1+1/6*b/h*c4
-1/4*c2+1/4*c4
1/3/b*h*c1+1/3*b/h*c4
1/4*c2-1/4*c4
1/6/b*h*c1-1/3*b/h*c4
1/4*c2-1/4*c4 -1/6/b*h*c1-1/6*b/h*c4
1/4*c2+1/4*c4;
1/4*c2-1/4*c4 -1/3/b*h*c4+1/6*b/h*c3
-1/4*c2-1/4*c4
1/3/b*h*c4+1/3*b/h*c3
-1/4*c2+1/4*c4
1/6/b*h*c4-1/3*b/h*c3
1/4*c2+1/4*c4 -1/6/b*h*c4-1/6*b/h*c3;
-1/6/b*h*c1-1/6*b/h*c4
-1/4*c2-1/4*c4
1/6/b*h*c1-1/3*b/h*c4
1/4*c2+1/4*c4
1/3/b*h*c1+1/3*b/h*c4
1/4*c2+1/4*c4 -1/3/b*h*c1+1/6*b/h*c4
1/4*c2-1/4*c4;
-1/4*c2-1/4*c4 -1/6/b*h*c4-1/6*b/h*c3
1/4*c2-1/4*c4
1/6/b*h*c41/3*b/h*c3
1/4*c2+1/4*c4
1/3/b*h*c4+1/3*b/h*c3
-1/4*c2+1/4*c4 1/3/b*h*c4+1/6*b/h*c3;
1/6/b*h*c1-1/3*b/h*c4
1/4*c2-1/4*c4 -1/6/b*h*c1-1/6*b/h*c4
1/4*c2+1/4*c4 -1/3/b*h*c1+1/6*b/h*c4
-1/4*c2+1/4*c4
1/3/b*h*c1+1/3*b/h*c4
-1/4*c2-1/4*c4;
-1/4*c2+1/4*c4
1/6/b*h*c4-1/3*b/h*c3
1/4*c2+1/4*c4 -1/6/b*h*c41/6*b/h*c3
1/4*c2-1/4*c4 -1/3/b*h*c4+1/6*b/h*c3
-1/4*c2-1/4*c4
1/3/b*h*c4+1/3*b/h*c3];
Ke(:,:,i)=ee*Kee;
end
%%
%% ENSAMBRLE DE LA MATRIZ GLOGAL DE RIGIDEZ
Kg=sparse(dim,dim);
for t=1:numelem
fila=[2*elements(t,1)-1 2*elements(t,1) 2*elements(t,2)-1 2*elements(t,2)...
2*elements(t,3)-1 2*elements(t,3) 2*elements(t,4)-1 2*elements(t,4)];
Kg(fila,fila)=Kg(fila,fila)+Ke(:,:,t);
end
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
VECTOR DE FUERZAS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Vector de fuerzas volumétricas de cada elemento
fbe=zeros(8,numelem);
fb=zeros(dim,1); %Vector global de fuerzas volumétricas
fg=zeros(dim,1);%VECTOR Global DE FUERZAS distribuidas
if grav~=0.0; %cálculo vector de fuerzas volumétricas de cada elemento
for i =1:numelem
%Vector de fuerzas volumétricas de cada elemento
fbe(:,i)=-ee*b*h*romat(elements(i,5))*grav*[0 1 0 1 0 1 0 1];
end
% Calculo del vector global de fuerzas volumétricas
for i=1:numelem
for j=1:4
fb(elements(i,j)*2-1)=fb(elements(i,j)*2-1)+fbe(j*2-1,i);
fb(elements(i,j)*2)=fb(elements(i,j)*2)+fbe(j*2,i);
end
end
end
for i =1:size(cargas,1);
loc=cargas(i,1)*2+(cargas(i,2)-2);
fg(loc)=fg(loc)+cargas(i,3);
end
fg=fg+fb; % Vector global de cargas total
%%
%% Define los grados de libertad restringidos
for k=1:size(restric,1)
ficol(k)=restric(k,1)*2+(restric(k,2)-2);
end
%% Define los grados de libertad NO restringidos
n=0;
for i=1:dim
if i~=ficol
n=n+1;
noficol(n)=i;
end
end
%% GENERA EL VECTOR DE FUERZAS APLICADAS REDUCIDO
fa=fg(noficol);
%% GENERA LAs subMATRIces DE Kg
ka=Kg(ficol,ficol);
kb=Kg(ficol,noficol);
kc=Kg(noficol,ficol);
kk=Kg(noficol,noficol);
%% -----------------------------------------------------------------------%% CALCULA EL VECTOR DE DESPLAZAMIENTOS
unk=kk\(fa-kc*uk);
fr=ka*uk+kb*unk-fb(ficol); % fb(ficol) : fuerzas volumetricas aplicadas en los nodos
restringidos
D=zeros(dim,1);%VECTOR DE DESPLAZAMIENTOS CON LOS DESPLAZAMIENTOS DEL APOYO
n=0;
for i=noficol;n=n+1;
D(i)=unk(n);
end
n=0;
for i=ficol;n=n+1;
D(i)=uk(n);
end
%VECTOR DE DESPLAZAMIENTOS DE CADA ELEMENTO De
De=sparse(8,numelem);
for i=1:numelem
fila=[2*elements(i,1)-1 2*elements(i,1) 2*elements(i,2)-1 2*elements(i,2)...
2*elements(i,3)-1 2*elements(i,3) 2*elements(i,4)-1 2*elements(i,4)];
De(:,i)=D(fila);
end
%% CALCULO DE LA DEFORMACION unitaria y esfuerzos DE CADA ELEMENTO
Strain=zeros(4,3,numelem);
Stress=zeros(4,3,numelem);
for i =1:numelem
C=Cmat(:,:,elements(i,5));
corx=nudo(elements(i,1:4),1);
cory=nudo(elements(i,1:4),2);
b=abs(corx(3)-corx(1))/2; h=abs(cory(3)-cory(1))/2;
%
%
%
corx=[-b b b -b]; cory=[-h -h h h];
%corx=[0 0 0 0]; cory=[0 0 0 0];
corx=[-b/2 b/2 b/2 -b/2]; cory=[-h/2 -h/2 h/2 h/2];
pg= 3^(1/2)/3; % cuadratura de Gauss para 2 puntos 0.577350269189626;
corx=pg*b*[-1 1 1 -1];
cory=pg*[-h -h h h];
for k=1:4
x= corx(k);y=cory(k);
B=1/(4*b*h)*[-(h-y)
0
-(b-x)
0
(h-y)
0
-(b-x)
0
-(b+x)
-(h-y) -(b+x) (h-y)
(h+y)
0
(b+x)
0
-(h+y)
0
(b+x)
0
(b-x)
(h+y) (b-x) -(h+y)];
Strain(k,:,i) =
B*De(:,i);
Stress(k,:,i) = C*B*De(:,i);
end
end
%%
%% %%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%% ESCRIBE ARCHIVO DE RESULTADOS %%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
fid = fopen('salida.post.res', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.txt'); end
fprintf(fid, 'GID Post Results File 1.0\n');
fprintf(fid, '\n');
fprintf(fid, 'GaussPoints "GP_Quadrilateral_4"
Elemtype
Quadrilateral \n');
fprintf(fid, 'Number of Gauss Points:
4\n');
fprintf(fid, 'Natural Coordinates
: Internal\n');
fprintf(fid, 'End GaussPoints\n');
fprintf(fid, '\n');
fprintf(fid, 'Result "STRESSES" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_Quadrilateral_4"\n');
fprintf(fid, 'ComponentNames "Sxx" "Syy" "Sxy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:4
if j==1;
fprintf(fid, '%d %15.8f %15.8f %15.8f\n',
i,Stress(j,1,i),Stress(j,2,i),Stress(j,3,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f\n', Stress(j,1,i),Stress(j,2,i),Stress(j,3,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "STRAINS" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_Quadrilateral_4"\n');
fprintf(fid, 'ComponentNames "Exx" "Eyy" "Txy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:4
if j==1;
fprintf(fid, '%d %15.8f %15.8f %15.8f\n',
i,Strain(j,1,i),Strain(j,2,i),Strain(j,3,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f\n', Strain(j,1,i),Strain(j,2,i),Strain(j,3,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "disp" "disp"
1.0 Vector OnNodes
"GP_Quadrilateral_4"\n');
fprintf(fid, 'ComponentNames "Dx" "Dy" \n');
fprintf(fid, 'Values \n');
for i=1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f\n', i,D(i*2-1), D(i*2));
if i==size(nudo,1);
end
fclose(fid);
fprintf(fid, 'End Values \n');end
fid = fopen('salida.post.msh', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.post.msh'); end
fprintf(fid, 'MESH dimension 3 ElemType Quadrilateral Nnode 4\n');
fprintf(fid, 'Coordinates\n');
for i=1:1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,nudo(i,1), nudo(i,2), 0.0);
if i==size(nudo,1);
fprintf(fid, 'End Coordinates \n');end
end
fprintf(fid, 'Elements\n');
for i=1:numelem
fprintf(fid, '%d %d %d %d %d %d\n', i,elements(i,1), elements(i,2), elements(i,3),
elements(i,4),elements(i,5));
if i==numelem;
fprintf(fid, 'End Elements \n');end
end
fclose(fid);
%% case 5 Elemento isoparamétrico de 4 nodos %%%%%%%%%%%%%%%%%%%%%%
%%
case 5
%% MATRIZ de Rigidez elemental Ke y Vector de fuerzas volum de cada elemento
Ke=zeros(8,8,numelem);
fbe=zeros(8,numelem);
pg= (1/3)^(1/2); % cuadratura de Gauss para 2 puntos 0.577350269189626;
pgs=pg*[-1 1 1 -1]; % vector de coordenadas Shi de los 4 puntos de Gauss
pgr=pg*[-1 -1 1 1]; % vector de coordenadas Eta de los 4 puntos de Gauss
B3=cell(1,numelem);
for i=1:numelem
corx=nudo(elements(i,1:4),1);
cory=nudo(elements(i,1:4),2);
% vectores de coordenadas nodales de
% cada elemento
bf=[0 -romat(elements(i,5))*grav];
C=Cmat(:,:,elements(i,5));
Kee=sparse(8,8);
fbee=zeros(8,1);
for ipg=1:4
shi=pgs(ipg);
eta=pgr(ipg);
dns=1/4*[eta-1 1-eta 1+eta -eta-1];
dnr=1/4*[shi-1 -shi-1 1+shi 1-shi];
b1=dot(dnr,cory);
b2=dot(dns,cory);
c1=dot(dns,corx);
c2=dot(dnr,corx);
J=c1*b1-c2*b2;
Bc=1/J*[b1*dns(1)-b2*dnr(1)
b1*dns(3)-b2*dnr(3)
0
0
b1*dns(2)-b2*dnr(2)
b1*dns(4)-b2*dnr(4)
0;
0
0
c1*dnr(1)-c2*dns(1)
0
c1*dnr(2)c2*dns(2)
0
c1*dnr(3)-c2*dns(3)
0
c1*dnr(4)c2*dns(4);
c1*dnr(1)-c2*dns(1) b1*dns(1)-b2*dnr(1) c1*dnr(2)-c2*dns(2) b1*dns(2)b2*dnr(2) c1*dnr(3)-c2*dns(3) b1*dns(3)-b2*dnr(3) c1*dnr(4)-c2*dns(4) b1*dns(4)b2*dnr(4)];
Kepg =
Kee =
Bc'*C*Bc*J;
Kee+Kepg;
if ipg==4;
B4{1,i}=Bc;
J4{1,i}=J;
end
N1=0.25*(1-shi)*(1-eta);
N2=0.25*(1+shi)*(1-eta);
N3=0.25*(1+shi)*(1+eta);
N4=0.25*(1-shi)*(1+eta);
N=[N1 0 N2 0 N3 0
0 N1 0 N2 0 N3
N4 0;
0 N4];
fbpg = N'*bf'*J;
fbee = fbee+fbpg;
end
Ke(:,:,i)=ee*Kee(:,:);
fbe(:,i)=ee*fbee;
end
ttim = timing('calculo de matriz de rigidez elemental',ttim); %Reporting time
timeacu=timeacu+ttim;
%% ENSAMBRLE DE LA MATRIZ GLOGAL DE RIGIDEZ y vector global de fuerzas volumétricas
Kg=sparse(dim,dim);
fb=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
for t=1:numelem
fila=[2*elements(t,1)-1 2*elements(t,1) 2*elements(t,2)-1 2*elements(t,2)...
2*elements(t,3)-1 2*elements(t,3) 2*elements(t,4)-1 2*elements(t,4)];
Kg(fila,fila) = Kg(fila,fila) + Ke(:,:,t);
fb(fila)
= fb(fila)
+ fbe(:,t);
end
ttim = timing('ensamble',ttim); %Reporting time
timeacu=timeacu+ttim;
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
VECTOR DE FUERZAS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fg=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
for i =1:size(cargas,1);
loc=cargas(i,1)*2+(cargas(i,2)-2);
fg(loc)=fg(loc)+cargas(i,3);
end
fg=fg+fb; % Vector global de cargas total
%%
%% Define los grados de libertad restringidos
for k=1:size(restric,1)
ficol(k)=restric(k,1)*2+(restric(k,2)-2);
end
%% Define los grados de libertad NO restringidos
n=0;
for i=1:dim
if i~=ficol
n=n+1;
noficol(n)=i;
end
end
%% GENERA EL VECTOR DE FUERZAS APLICADAS REDUCIDO
fa=fg(noficol);
%% GENERA LAs subMATRIces DE Kg
ka=Kg(ficol,ficol);
kb=Kg(ficol,noficol);
kc=Kg(noficol,ficol);
kk=Kg(noficol,noficol);
%% -----------------------------------------------------------------------%% CALCULA EL VECTOR DE DESPLAZAMIENTOS
unk=kk\(fa-kc*uk);
fr=ka*uk+kb*unk-fb(ficol); % fb(ficol) : fuerzas volumetricas aplicadas en los nodos
restringidos
D=zeros(dim,1);%VECTOR DE DESPLAZAMIENTOS CON LOS DESPLAZAMIENTOS DEL APOYO
n=0;
for i=noficol;n=n+1;
D(i)=unk(n);
end
n=0;
for i=ficol;n=n+1;
D(i)=uk(n);
end
%% VECTOR DE DESPLAZAMIENTOS DE CADA ELEMENTO De
De=sparse(8,numelem);
for i=1:numelem
fila=[2*elements(i,1)-1 2*elements(i,1) 2*elements(i,2)-1 2*elements(i,2)...
2*elements(i,3)-1 2*elements(i,3) 2*elements(i,4)-1 2*elements(i,4)];
De(:,i)=D(fila);
end
%% CALCULO DE LA DEFORMACION unitaria y esfuerzos DE CADA ELEMENTO
Strain=zeros(4,3,numelem);
Stress=zeros(4,3,numelem);
for i =1:numelem
corx=nudo(elements(i,1:4),1);
C=Cmat(:,:,elements(i,5));
cory=nudo(elements(i,1:4),2);
Bc=zeros(3,8);
for ipg=1:4
shi=pgs(ipg);
eta=pgr(ipg);
dns=1/4*[eta-1 1-eta 1+eta -eta-1];
dnr=1/4*[shi-1 -shi-1 1+shi 1-shi];
b1=dot(dnr,cory);
b2=dot(dns,cory);
c1=dot(dns,corx);
c2=dot(dnr,corx);
J=c1*b1-c2*b2;
Bc=1/J*[b1*dns(1)-b2*dnr(1)
0
b1*dns(2)-b2*dnr(2)
0
b1*dns(3)-b2*dnr(3)
0
b1*dns(4)-b2*dnr(4)
0;
0
c1*dnr(1)-c2*dns(1)
0
c1*dnr(2)c2*dns(2)
0
c1*dnr(3)-c2*dns(3)
0
c1*dnr(4)c2*dns(4);
c1*dnr(1)-c2*dns(1) b1*dns(1)-b2*dnr(1) c1*dnr(2)-c2*dns(2) b1*dns(2)b2*dnr(2) c1*dnr(3)-c2*dns(3) b1*dns(3)-b2*dnr(3) c1*dnr(4)-c2*dns(4) b1*dns(4)b2*dnr(4)];
Strain(ipg,:,i)= Bc*De(:,i);
Stress(ipg,:,i)=C*Bc*De(:,i);
end
end
%%
%% %%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%% ESCRIBE ARCHIVO DE RESULTADOS %%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
fid = fopen('salida.post.res', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.txt'); end
fprintf(fid, 'GID Post Results File 1.0\n');
fprintf(fid, '\n');
fprintf(fid, 'GaussPoints "GP_Quadrilateral_4"
Elemtype
Quadrilateral \n');
fprintf(fid, 'Number of Gauss Points:
4\n');
fprintf(fid, 'Natural Coordinates
: Internal\n');
fprintf(fid, 'End GaussPoints\n');
fprintf(fid, '\n');
fprintf(fid, 'Result "STRESSES" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_Quadrilateral_4"\n');
fprintf(fid, 'ComponentNames "Sxx" "Syy" "Sxy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:4
if j==1;
fprintf(fid, '%d %15.8f %15.8f %15.8f\n',
i,Stress(j,1,i),Stress(j,2,i),Stress(j,3,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f\n', Stress(j,1,i),Stress(j,2,i),Stress(j,3,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "STRAINS" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_Quadrilateral_4"\n');
fprintf(fid, 'ComponentNames "Exx" "Eyy" "Txy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:4
if j==1;
fprintf(fid, '%d %15.8f %15.8f %15.8f\n',
i,Strain(j,1,i),Strain(j,2,i),Strain(j,3,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f\n', Strain(j,1,i),Strain(j,2,i),Strain(j,3,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "disp" "disp"
1.0 Vector OnNodes
"GP_Quadrilateral_4"\n');
fprintf(fid, 'ComponentNames "Dx" "Dy" \n');
fprintf(fid, 'Values \n');
for i=1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f\n', i,D(i*2-1), D(i*2));
if i==size(nudo,1);
end
fclose(fid);
fprintf(fid, 'End Values \n');end
fid = fopen('salida.post.msh', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.post.msh'); end
fprintf(fid, 'MESH dimension 3 ElemType Quadrilateral Nnode 4\n');
fprintf(fid, 'Coordinates\n');
for i=1:1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,nudo(i,1), nudo(i,2), 0.0);
if i==size(nudo,1);
fprintf(fid, 'End Coordinates \n');end
end
fprintf(fid, 'Elements\n');
for i=1:numelem
fprintf(fid, '%d %d %d %d %d %d\n', i,elements(i,1), elements(i,2), elements(i,3),
elements(i,4),elements(i,5));
if i==numelem;
fprintf(fid, 'End Elements \n');end
end
fclose(fid);
ttim = timing('escritura',ttim); %Reporting time
timeacu=timeacu+ttim
toc
%% case 9 Elemento isoparamétrico de 9 nodos %%%%%%%%%%%%%%%%%%%%%%
%%
case 9
%% MATRIZ de Rigidez elemental Ke y Vector de fuerzas volum de cada elemento
Ke=zeros(18,18,numelem);
fbe=zeros(18,numelem);
%% Definicion de los 9 puntos de Gauss y sus respectivos pesos
pg= (3/5)^0.5; % (3/5)^0.5= 0.774596669241483;
wpg7=5/9;
% 0.555555555555556;
wpg0=8/9;
% 0.888888888888889;
pgs = pg*[ -1
1
1
-1
0
1
0
-1
0
];
ws =
[wpg7 wpg7 wpg7 wpg7 wpg0 wpg7 wpg0 wpg7 wpg0 ];
pgr = pg*[ -1
-1
1
1
-1
0
1
0
0 ];
wr =
[wpg7 wpg7 wpg7 wpg7 wpg7 wpg0 wpg7 wpg0
wpg0];
for i=1:numelem
corx=nudo(elements(i,1:9),1);
cory=nudo(elements(i,1:9),2);
% vectores de coordenadas nodales de
% cada elemento
bf=[0 -romat(elements(i,10))*grav];
C=Cmat(:,:,elements(i,10));
Kee=sparse(18,18);
fbee=zeros(18,1);
for ipg=1:9
shi=pgs(ipg);
eta=pgr(ipg);
dns = 1/4*[ (1-2*shi)*(1-eta)*eta
(1+2*shi)*(eta+1)*eta ...
-(1-2*shi)*(1+eta)*eta
eta^2)...
-4*shi*(1+eta)*eta
dnr = 1/4*[ (1-shi)*(1-2*eta)*shi
(1+shi)*(1+2*eta)*shi ...
-(1-shi)*(1+2*eta)*shi
4*eta*(1+shi)*shi
...
2*(1-shi^2)*(1+2*eta)
shi^2)];
b1=dot(dnr,cory)
b2=dot(dns,cory)
;
;
J=c1*b1-c2*b2;
BC=1/J*[ b1*dns(1)-b2*dnr(1)
0
b1*dns(2)-b2*dnr(2)
0
b1*dns(3)-b2*dnr(3)
0
b1*dns(4)-b2*dnr(4)
0
b1*dns(5)-b2*dnr(5)
0
b1*dns(6)-b2*dnr(6)
0
b1*dns(7)-b2*dnr(7)
0
b1*dns(8)-b2*dnr(8)
0
b1*dns(9)-b2*dnr(9)
-(1+2*shi)*(1-eta)*eta
4*shi*(1-eta)*eta
-2*(1-2*shi)*(1-eta^2)
2*(1+2*shi)*(1-8*shi*(1-eta^2)];
-(1+shi)*(1-2*eta)*shi
-2*(1-shi^2)*(1-2*eta)
4*eta*(1-shi)*shi
-8*eta*(1-
c1=dot(dns,corx);
c2=dot(dnr,corx);
0
c1*dnr(1)-c2*dns(1)
0
c1*dnr(2)-c2*dns(2)
0
c1*dnr(3)-c2*dns(3)
0
c1*dnr(4)-c2*dns(4)
0
c1*dnr(5)-c2*dns(5)
0
c1*dnr(6)-c2*dns(6)
0
c1*dnr(7)-c2*dns(7)
0
c1*dnr(8)-c2*dns(8)
0
c1*dnr(1)-c2*dns(1);
b1*dns(1)-b2*dnr(1);
c1*dnr(2)-c2*dns(2);
b1*dns(2)-b2*dnr(2);
c1*dnr(3)-c2*dns(3);
b1*dns(3)-b2*dnr(3);
c1*dnr(4)-c2*dns(4);
b1*dns(4)-b2*dnr(4);
c1*dnr(5)-c2*dns(5);
b1*dns(5)-b2*dnr(5);
c1*dnr(6)-c2*dns(6);
b1*dns(6)-b2*dnr(6);
c1*dnr(7)-c2*dns(7);
b1*dns(7)-b2*dnr(7);
c1*dnr(8)-c2*dns(8);
b1*dns(8)-b2*dnr(8);
c1*dnr(9)-c2*dns(9);
0
c1*dnr(9)-c2*dns(9)
b1*dns(9)-b2*dnr(9)];
Kepg = ws(ipg)*wr(ipg)*BC*C*BC'*J;
Kee = Kee + Kepg;
N1
N2
N3
N4
= 0.25*(1-shi)*(1-eta)*shi*eta;
N5 = -0.5*eta*(1-eta)*(1-shi^2);
= -0.25*(1+shi)*(1-eta)*shi*eta;
N6 =
0.5*shi*(1+shi)*(1-eta^2);
= 0.25*(1+shi)*(1+eta)*shi*eta;
N7 =
0.5*eta*(1+eta)*(1-shi^2);
= -0.25*(1-shi)*(1+eta)*shi*eta;
N8 = -0.5*shi*(1-shi)*(1-eta^2);
N9 = (1-shi^2)*(1-eta^2);
N = [N1 0
0 N1
N2 0
0 N2
N3 0
0 N3
N4 0
0 N4
N5 0
0 N5
N6 0
0 N6
N7 0
0 N7
N8 0
0 N8
N9
0
0;...
N9];
fbpg = ws(ipg)*wr(ipg)*N'*bf'*J;
fbee = fbee+fbpg;
end
Ke(:,:,i) = ee*Kee(:,:);
fbe(:,i) = ee*fbee;
end
%% ENSAMBRLE DE LA MATRIZ GLOGAL DE RIGIDEZ y vector global de fuerzas volumétricas
Kg=sparse(dim,dim);
fb=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
for t=1:numelem
fila=[2*elements(t,1)-1 2*elements(t,1) 2*elements(t,2)-1 2*elements(t,2)...
2*elements(t,3)-1 2*elements(t,3) 2*elements(t,4)-1 2*elements(t,4)...
2*elements(t,5)-1 2*elements(t,5) 2*elements(t,6)-1 2*elements(t,6)...
2*elements(t,7)-1 2*elements(t,7) 2*elements(t,8)-1 2*elements(t,8)...
2*elements(t,9)-1 2*elements(t,9) ];
Kg(fila,fila) = Kg(fila,fila) + Ke(:,:,t);
fb(fila)
= fb(fila)
+ fbe(:,t);
end
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
VECTOR DE FUERZAS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fg=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
for i =1:size(cargas,1);
loc=cargas(i,1)*2+(cargas(i,2)-2);
fg(loc)=fg(loc)+cargas(i,3);
end
fg=fg+fb; % Vector global de cargas total
%%
%% Define los grados de libertad restringidos
for k=1:size(restric,1)
ficol(k)=restric(k,1)*2+(restric(k,2)-2);
end
%% Define los grados de libertad NO restringidos
n=0;
for i=1:dim
if i~=ficol
n=n+1;
noficol(n)=i;
end
end
%% GENERA EL VECTOR DE FUERZAS APLICADAS REDUCIDO
fa=fg(noficol);
%% GENERA LAs subMATRIces DE Kg
ka=Kg(ficol,ficol);
kb=Kg(ficol,noficol);
kc=Kg(noficol,ficol);
kk=Kg(noficol,noficol);
%% -----------------------------------------------------------------------%% CALCULA EL VECTOR DE DESPLAZAMIENTOS
unk=kk\(fa-kc*uk);
D=zeros(dim,1);%VECTOR DE DESPLAZAMIENTOS CON LOS DESPLAZAMIENTOS DEL APOYO
D(noficol) = unk;
D(ficol)
= uk;
fr=ka*uk+kb*unk-fb(ficol); % fb(ficol) : fuerzas volumetricas aplicadas en los nodos
restringidos
%% VECTOR DE DESPLAZAMIENTOS DE CADA ELEMENTO De
De=sparse(18,numelem);
for t=1:numelem
fila=[2*elements(t,1)-1
2*elements(t,3)-1
2*elements(t,5)-1
2*elements(t,7)-1
2*elements(t,9)-1
2*elements(t,1)
2*elements(t,3)
2*elements(t,5)
2*elements(t,7)
2*elements(t,9)
2*elements(t,2)-1
2*elements(t,4)-1
2*elements(t,6)-1
2*elements(t,8)-1
];
2*elements(t,2)...
2*elements(t,4)...
2*elements(t,6)...
2*elements(t,8)...
De(:,t)=D(fila);
end
%% CALCULO DE LA DEFORMACION unitaria y esfuerzos DE CADA ELEMENTO
Strain=zeros(9,3,numelem);
Stress=zeros(9,3,numelem);
for i =1:numelem
corx=nudo(elements(i,1:9),1);
C=Cmat(:,:,elements(i,10));
cory=nudo(elements(i,1:9),2);
Bc=zeros(18,3);
for ipg=1:9
shi=pgs(ipg);
eta=pgr(ipg);
dns = 1/4*[ (1-2*shi)*(1-eta)*eta
-(1+2*shi)*(1-eta)*eta
(1+2*shi)*(eta+1)*eta
...
-(1-2*shi)*(1+eta)*eta
4*shi*(1-eta)*eta
2*(1+2*shi)*(1-
eta^2)...
-4*shi*(1+eta)*eta
-2*(1-2*shi)*(1-eta^2)
-8*shi*(1-eta^2)];
dnr = 1/4*[ (1-shi)*(1-2*eta)*shi
-(1+shi)*(1-2*eta)*shi
(1+shi)*(1+2*eta)*shi
...
-(1-shi)*(1+2*eta)*shi
-2*(1-shi^2)*(1-2*eta)
-4*eta*(1+shi)*shi
...
2*(1-shi^2)*(1+2*eta)
b1=dot(dnr,cory)
b2=dot(dns,cory)
;
;
4*eta*(1-shi)*shi
-8*eta*(1-shi^2)];
c1=dot(dns,corx);
c2=dot(dnr,corx);
J=c1*b1-c2*b2;
Bc=1/J*[
b1*dns(1)-b2*dnr(1)
0
b1*dns(2)-b2*dnr(2)
0
b1*dns(3)-b2*dnr(3)
0
b1*dns(4)-b2*dnr(4)
0
b1*dns(5)-b2*dnr(5)
0
b1*dns(6)-b2*dnr(6)
0
b1*dns(7)-b2*dnr(7)
0
b1*dns(8)-b2*dnr(8)
0
b1*dns(9)-b2*dnr(9)
0
0
c1*dnr(1)-c2*dns(1)
0
c1*dnr(2)-c2*dns(2)
0
c1*dnr(3)-c2*dns(3)
0
c1*dnr(4)-c2*dns(4)
0
c1*dnr(5)-c2*dns(5)
0
c1*dnr(6)-c2*dns(6)
0
c1*dnr(7)-c2*dns(7)
0
c1*dnr(8)-c2*dns(8)
0
c1*dnr(9)-c2*dns(9)
c1*dnr(1)-c2*dns(1);
b1*dns(1)-b2*dnr(1);
c1*dnr(2)-c2*dns(2);
b1*dns(2)-b2*dnr(2);
c1*dnr(3)-c2*dns(3);
b1*dns(3)-b2*dnr(3);
c1*dnr(4)-c2*dns(4);
b1*dns(4)-b2*dnr(4);
c1*dnr(5)-c2*dns(5);
b1*dns(5)-b2*dnr(5);
c1*dnr(6)-c2*dns(6);
b1*dns(6)-b2*dnr(6);
c1*dnr(7)-c2*dns(7);
b1*dns(7)-b2*dnr(7);
c1*dnr(8)-c2*dns(8);
b1*dns(8)-b2*dnr(8);
c1*dnr(9)-c2*dns(9);
b1*dns(9)-b2*dnr(9)];
Strain(ipg,:,i) =
Bc'*De(:,i);
Stress(ipg,:,i) = C*Bc'*De(:,i);
end
end
%%
%% %%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%% ESCRIBE ARCHIVO DE RESULTADOS %%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
fid = fopen('salida.post.res', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.txt'); end
fprintf(fid, 'GID Post Results File 1.0\n');
fprintf(fid, '\n');
fprintf(fid, 'GaussPoints "GP_Quadrilateral_9"
Elemtype
Quadrilateral \n');
fprintf(fid, 'Number of Gauss Points:
9\n');
fprintf(fid, 'Natural Coordinates
: Internal\n');
fprintf(fid, 'End GaussPoints\n');
fprintf(fid, '\n');
fprintf(fid, 'Result "STRESSES" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_Quadrilateral_9"\n');
fprintf(fid, 'ComponentNames "Sxx" "Syy" "Sxy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:9
if j==1; fprintf(fid, '%d %15.8f %15.8f %15.8f\n',
i,Stress(j,1,i),Stress(j,2,i),Stress(j,3,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f\n', Stress(j,1,i),Stress(j,2,i),Stress(j,3,i));
end
end
if i==numelem;
end
fprintf(fid, 'End Values \n');end
fprintf(fid, 'Result "STRAIN" "MECHANICAL"
1.0 Matrix OnGaussPoints
"GP_Quadrilateral_9"\n');
fprintf(fid, 'ComponentNames "Exx" "Eyy" "Exy"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:9
if j==1; fprintf(fid, '%d %15.8f %15.8f %15.8f\n',
i,Strain(j,1,i),Strain(j,2,i),Strain(j,3,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f\n', Strain(j,1,i),Strain(j,2,i),Strain(j,3,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "disp" "disp"
1.0 Vector OnNodes
"GP_Quadrilateral_9"\n');
fprintf(fid, 'ComponentNames "Dx" "Dy" \n');
fprintf(fid, 'Values \n');
for i=1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f\n', i,D(i*2-1), D(i*2));
if i==size(nudo,1);
end
fclose(fid);
fprintf(fid, 'End Values \n');end
fid = fopen('salida.post.msh', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.post.msh'); end
fprintf(fid, 'MESH dimension 3 ElemType Quadrilateral Nnode 9\n');
fprintf(fid, 'Coordinates\n');
for i=1:1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,nudo(i,1), nudo(i,2), 0.0);
if i==size(nudo,1);
fprintf(fid, 'End Coordinates \n');end
end
fprintf(fid, 'Elements\n');
for i=1:numelem
fprintf(fid, '%d %d %d %d %d %d %d %d %d %d %d\n', i,elements(i,1), elements(i,2),
elements(i,3), elements(i,4),elements(i,5),...
elements(i,6), elements(i,7),
elements(i,8), elements(i,9),elements(i,10) );
if i==numelem;
fprintf(fid, 'End Elements \n');end
end
fclose(fid);
end
disp('trabajo por hacer en clase')
Anexo 2. Líneas de código para Iso 20
%
%Programa para problemas lineales 3D de elementos finitos; noviembre 2016
%Jairo Andrés Paredes López - japaredesl@unal.edu.co
%Profesor Asociado - UNIVERSIDAD NACIONAL DE COLOMBIA - SEDE MANIZALES
% Departamento de Ingeniería Civil - Posgrados de Estructuras
%%
clear,clc, close all;
tic
ttim=0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% LECTURA DE ENTRADA DE DATOS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tic
nudo= load ('coord.txt','-ascii');
%Lee las coordenadas nodales:coord.txt
elements=load ('malla.txt','-ascii'); %Lee la conectividad nodal: malla.txt
triang=elementos
restric=load('restric.txt','-ascii');%Lee los desplazamientos impuestos (nodo
- direccion - magnitud)
cargas=load('cargas.txt','-ascii'); %Lee los desplazamientos impuestos
dgen=load('dgenerales.txt','-ascii');
ttim = timing('Lectura de datos',ttim); %Reporting time
% timeacu=timeacu+ttim;
% nudorest= load ('nodres.txt','-ascii');
multinivel
%Lee los nodos en la frontera
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% DEFINICIÓN DE CONDICIONES GENERALES DEL PROBLEMA A ANALIZAR
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
elemtpe=dgen(1); % 8 hexahedro 8 nodos; 20 hexahedro 20 nodos;
nmat=dgen(2); %Nùmero de MATERIALES
numelem=size(elements,1); %numero de elementos del problema
numnudos=size(nudo,1); %numero de nudos de la malla
dim=3*numnudos;
%dimension de la matriz de rigidez global: doft
numrestric=size(restric,1); %numero de grados de libertad restringidos
uk=restric(:,3);
%subvector de desplazamientos conocidos
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PROPIEDADES MECÁNICAS DE LOS MATERIALES Y MATRICES CONSTITUTIVAS %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%PROPIEDADES DE LOS MATERIALES
Emat=zeros(nmat,1); % Vector con los valores de MODULO DE ELASTICIDAD de
c/material
vmat=zeros(nmat,1); % Vector con los valores de Modulo de Poisson de
c/material
romat=zeros(nmat,1);% Vector con los valores de densidad de c/material
for i=1:nmat
Emat(i)=dgen(2+i);
vmat(i)=dgen(2+nmat+i);
romat(i)=dgen(2+2*nmat+i);
end
grav=dgen(2+3*nmat+1);
%
%
%
(2.1e7)
(0.2);
%kN/m2 MÓDULOS DE ELASTICIDAD
%MÓdulos de Poisson
%Densidades
% Gravedad, si grav=0.0, el peso propio=0.0
Cmat=cell(1,nmat);
for i =1:nmat
E=Emat(i);
v=vmat(i);
C=E/((1+v)*(1-2*v))*[ (1-v) v
v
v (1-v) v
v
v (1-v)
0
0
0
0
0
0
0
0
0
Cmat{1,i}=C;
end
0 0 0;
0 0 0;
0 0 0;
(1-2*v)/2
0
0;
0
(1-2*v)/2
0;
0
0 (1-2*v)/2 ];
%% MATRIZ de Rigidez elemental Ke y Vector de fuerzas volum de cada elemento
%% ENSAMBRLE DE LA MATRIZ GLOGAL DE RIGIDEZ y vector global de fuerzas
volumétricas
Kg=sparse(dim,dim);
fb=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
for i=1:numelem
corx=nudo(elements(i,1:20),1);
cory=nudo(elements(i,1:20),2);
corz=nudo(elements(i,1:20),3);
% vectores de coordenadas nodales de
% cada elemento
bf=[0
-romat(elements(i,21))*grav
C=Cmat{1,elements(i,21)};
0
];
[Kee,fbee] = K20nodos(corx,cory,corz,bf,C);
fila(1:3:60) = elements(i,1:20)*3-2;
del elemento
fila(2:3:60) = elements(i,1:20)*3-1;
fila(3:3:60) = elements(i,1:20)*3;
Kg(fila,fila) = Kg(fila,fila) + Kee;
fb(fila)
= fb(fila)
+ fbee;
% Cálculo de los grados de libertad
%
%
% Ensambalje matriz de rigidez
end
ttim = timing('calculo de matriz de rigidez elemental y ensamble',ttim);
%Reporting time
%% ENSAMBRLE DE LA MATRIZ GLOGAL DE RIGIDEZ y vector global de fuerzas
volumétricas
% Kg=sparse(dim,dim);
% fb=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
%
% for t=1:numelem
%
%
for k=1:20
% Cálculo de los grados de
libertad del elemento
%
filaaux{1,k}=elements(t,k)*3-[2 1 0];
%
end
%
fila=[filaaux{1,:}];
%
%
Kg(fila,fila) = Kg(fila,fila) + Ke{1,t};
%
fb(fila)
= fb(fila)
+ fbe{1,t};
% end
% ttim = timing('ensamble',ttim); %Reporting time
%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
VECTOR DE FUERZAS
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fg=sparse(dim,1);%VECTOR Global DE FUERZAS distribuidas
for i =1:size(cargas,1);
loc=cargas(i,1)*3+(cargas(i,2)-3);
fg(loc)=fg(loc)+cargas(i,3);
end
fg=fg+fb; % Vector global de cargas total
%%
%% Define los grados de libertad restringidos
ficol=zeros(size(restric,1),1);
for k=1:size(restric,1)
ficol(k)=restric(k,1)*3+(restric(k,2)-3);
end
%% Define los grados de libertad NO restringidos
dof=1:dim;
noficol=setdiff(dof,ficol);
clear dof;
%% GENERA EL VECTOR DE FUERZAS APLICADAS REDUCIDO
fa=fg(noficol);
%% GENERA LAs subMATRIces DE Kg
ka=Kg(ficol,ficol);
kb=Kg(ficol,noficol);
kc=Kg(noficol,ficol);
kk=Kg(noficol,noficol);
clear Kg;
%% ------------------------------------------------------------------------
%% CALCULA EL VECTOR DE DESPLAZAMIENTOS
unk=kk\(fa-kc*uk);
D=zeros(dim,1);%VECTOR DE DESPLAZAMIENTOS CON LOS DESPLAZAMIENTOS DEL APOYO
D(noficol) = unk;
D(ficol)
= uk;
fr=ka*uk+kb*unk-fb(ficol); % fb(ficol) : fuerzas volumetricas aplicadas en
los nodos restringidos
ttim = timing('solucion',ttim); %Reporting time
%% VECTOR DE DESPLAZAMIENTOS DE CADA ELEMENTO De
%% VECTOR DE DESPLAZAMIENTOS DE CADA ELEMENTO De
De=zeros(60,numelem);
for t=1:numelem
fila(1:3:60) = elements(t,1:20)*3-2;
del elemento
fila(2:3:60) = elements(t,1:20)*3-1;
fila(3:3:60) = elements(t,1:20)*3;
% Cálculo de los grados de libertad
%
%
De(:,t)=D(fila);
end
%% CALCULO DE LA DEFORMACION unitaria y esfuerzos DE CADA ELEMENTO
Strain=zeros(27,6,numelem);
Stress=zeros(27,6,numelem);
for i=1:numelem
corx=nudo(elements(i,1:20),1);
cory=nudo(elements(i,1:20),2);
corz=nudo(elements(i,1:20),3);
% vectores de coordenadas nodales de
% cada elemento
C
= Cmat{1,elements(i,21)};
Dee = De(:,i);
[eStress,eStrain] = B20nodos(corx,cory,corz,C,Dee);
Strain(:,:,i) = eStrain;
Stress(:,:,i) = eStress;
%
xp=sum(corx)/20; zp=sum(corz)/20;
%
alfa=atand(zp/(100-xp));
%
ca=cosd(alfa);
%
sa=sind(alfa);
%
%
StressL(:,1,i)= ca*(Stress(:,1,i)*ca + Stress(:,5,i)*sa) +
sa*(ca*Stress(:,5,i) + Stress(:,3,i)*sa);
%
StressL(:,2,i)= Stress(:,2,i);
%
StressL(:,3,i)= ca*(Stress(:,3,i)*ca - Stress(:,5,i)*sa) sa*(ca*Stress(:,5,i) - Stress(:,1,i)*sa);
%
StressL(:,4,i)= ca*Stress(:,4,i) + Stress(:,6,i)*sa;
%
StressL(:,5,i)= ca*(ca*Stress(:,5,i) + Stress(:,3,i)*sa) sa*(ca*Stress(:,1,i) + Stress(:,5,i)*sa);
%
StressL(:,6,i)= ca*Stress(:,6,i) - Stress(:,4,i)*sa;
%
end
ttim = timing('esfuerzos y deformaciones',ttim); %Reporting time
%% %%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%% ESCRIBE ARCHIVO DE RESULTADOS %%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%
fid = fopen('salida.post.res', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.txt'); end
fprintf(fid, 'GID Post Results File 1.0\n');
fprintf(fid, '\n');
fprintf(fid, 'GaussPoints "GP_HEXAHEDRA_27"
Elemtype
HEXAHEDRA\n');
fprintf(fid, 'Number of Gauss Points:
27\n');
fprintf(fid, 'Natural Coordinates
: Internal\n');
fprintf(fid, 'End GaussPoints\n');
fprintf(fid, '\n');
fprintf(fid, 'Result "STRESSES" "MECHANICAL"
1.0 Matrix
OnGaussPoints "GP_HEXAHEDRA_27"\n');
fprintf(fid, 'ComponentNames "Sxx" "Syy" "Szz" "Sxy" "Sxz" "Syz"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:27
if j==1; fprintf(fid, '%d %15.8f %15.8f %15.8f %15.8f %15.8f %15.8f\n',
i,Stress(j,1,i),Stress(j,2,i),Stress(j,3,i),Stress(j,4,i),Stress(j,5,i),Stres
s(j,6,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f %15.8f %15.8f %15.8f\n',
Stress(j,1,i),Stress(j,2,i),Stress(j,3,i),Stress(j,4,i),Stress(j,5,i),Stress(
j,6,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
fprintf(fid, 'Result "STAINS" "MECHANICAL"
1.0 Matrix
OnGaussPoints "GP_HEXAHEDRA_27"\n');
fprintf(fid, 'ComponentNames "Exx" "Eyy" "Ezz" "Exy" "Exz" "Eyz"\n');
fprintf(fid, 'Values \n');
for i=1:numelem
for j=1:27
if j==1; fprintf(fid, '%d %15.8f %15.8f %15.8f %15.8f %15.8f %15.8f\n',
i,Strain(j,1,i),Strain(j,2,i),Strain(j,3,i),Strain(j,4,i),Strain(j,5,i),Strai
n(j,6,i));
else
fprintf(fid, '%15.8f %15.8f %15.8f %15.8f %15.8f %15.8f\n',
Strain(j,1,i),Strain(j,2,i),Strain(j,3,i),Strain(j,4,i),Strain(j,5,i),Strain(
j,6,i));
end
end
if i==numelem;
fprintf(fid, 'End Values \n');end
end
% fprintf(fid, 'Result "STRESSES" "MECHANICAL"
2.0 Matrix
OnGaussPoints "GP_HEXAHEDRA_27"\n');
% fprintf(fid, 'ComponentNames "Sxx" "Syy" "Szz" "Sxy" "Sxz" "Syz"\n');
% fprintf(fid, 'Values \n');
% for i=1:numelem
% for j=1:27
% if j==1; fprintf(fid, '%d %15.8f %15.8f %15.8f %15.8f %15.8f %15.8f\n',
i,StressL(j,1,i),StressL(j,2,i),StressL(j,3,i),StressL(j,4,i),StressL(j,5,i),
StressL(j,6,i));
% else
% fprintf(fid, '%15.8f %15.8f %15.8f %15.8f %15.8f %15.8f\n',
StressL(j,1,i),StressL(j,2,i),StressL(j,3,i),StressL(j,4,i),StressL(j,5,i),St
ressL(j,6,i));
% end
% end
% if i==numelem;
fprintf(fid, 'End Values \n');end
% end
fprintf(fid, 'Result "disp" "disp"
1.0 Vector OnNodes
"GP_HEXAHEDRA_27"\n');
fprintf(fid, 'ComponentNames "Dx" "Dy" "Dz"\n');
fprintf(fid, 'Values \n');
for i=1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,D(i*3-2), D(i*3-1),D(i*3));
if i==size(nudo,1);
end
fclose(fid);
fprintf(fid, 'End Values \n');end
fid = fopen('salida.post.msh', 'w');
if fid == -1; error('no se puede abrir el archivo: %s', 'salida.post.msh');
end
fprintf(fid, 'MESH dimension 3 ElemType HEXAHEDRA Nnode 20\n');
fprintf(fid, 'Coordinates\n');
for i=1:1:size(nudo,1)
fprintf(fid, '%d %15.8f %15.8f %15.8f\n', i,nudo(i,1), nudo(i,2),
nudo(i,3));
if i==size(nudo,1);
fprintf(fid, 'End Coordinates \n');end
end
fprintf(fid, 'Elements\n');
for i=1:numelem
fprintf(fid, '%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d
%d\n', i,elements(i,1:21));
if i==numelem;
fprintf(fid, 'End Elements \n');end
end
fclose(fid);
ttim = timing('escritura',ttim); %Reporting time
ttim
toc
Download