You are on page 1of 34

Simulacin Computacional: Anlisis de

Esfuerzo aplicado a una placa con un agujero.


DESCRIPCIN DEL TUTORIAL
Este tutorial describe como pre procesar, correr y post procesar un
caso que involucra un anlisis de esfuerzo lineal-elstico en estado
estable en una placa rectangular con un agujero circular en su
centro. Las dimensiones de la placa son: 4m de longitud en todos
los lados y de radio R = 0.5m.

Dicha placa est sometida a una carga de esfuerzo a traccin


uniforme de 50kPa sobre las caras izquierda y derecha, como se
observa en la figura 1.
50KPa 50KPa

Figura1.Objetodeestudio
CONSIDERACIONES
Dos planos de simetra pueden ser identificados para este problema
y por lo tanto el dominio de la solucin solo necesita cubrir un
cuarto de la geometra, mostrada como el rea sombreada en la
imagen.
El problema puede ser aproximado como de 2 dimensiones debido
a que la carga es aplicada en el plano de la placa (los componentes
de esfuerzo actuando fuera de este plano se consideran
despreciables)
Existe una solucin analtica para cargas de una placa infinitamente
larga, con un agujero circular. La solucin para el esfuerzo normal
vertical al plano de simetra es:
PRE - PROCESAMIENTO

En este tutorial, tal como se mencion anteriormente se proceder


a analizar una placa con agujero sometida a esfuerzo de traccin en
las direcciones de X positivo y negativo, el solver utilizar ser el
solidDisplacementFoam.
CREACIN DEL CASO O DIRECTORIO

Para crear el caso o directorio objeto de estudio se necesitar


copiar el archivo plateHole dentro de la carpeta run ubicada en la
carpeta OpenFoam alojada en la carpeta personal (Ubuntu)

Figura2.

Figura3.
CREACIN DEL CASO O DIRECTORIO

Una vez se tenga el caso ya dentro de la carpeta run se dar inicio a


observar y modificar el contenido necesario de la carpeta plateHole para
adecuar el tutorial a las condiciones previamente establecidas, para esto
se necesitar , dentro del terminal colocar los siguientes comandos: run ->
ls -> cd plateHole -> ls -> mc
Este ultimo comando mc dar apertura al midnight commander que nos
facilitar la navegacin dentro de la carpeta (Figura 5)

Figura4.
CREACIN DEL CASO O DIRECTORIO

Figura5.
GENERACIN DE LA MALLA

El dominio consiste en cuatro bloques, de los cuales algunos tienen


puntas en forma de arco. La estructura de bloque para la parte de la
malla en el plano x-y se muestra en la figura 6. Como se ha dicho
anteriormente en otros tutoriales, en OpenFOAM todas las
geometras son generadas en 3 dimensiones, incluso en el caso es
un problema en 2 dimensiones, por lo que en este caso se le da una
dimensin en el eje z de 0.5m. Esto no afecta la solucin debido a
que la condicin de borde es especificada como un esfuerzo en
lugar de una fuerza, haciendo la solucin independiente del rea
transversal.
Figura6.
GENERACIN DE LA MALLA

En esta ocasin la malla ser genera con el blockMeshDict, el cual


se puede ubicar dentro de la carpeta system de nuestro caso.
Al dar apertura dicho archivo se podr observar las coordenadas y
comandos de cada uno de los puntos que darn forma a nuestra
malla de estudio, cabe destacar que este archivo no ser sometido
a ningn tipo de modificacin debido a la complejidad del mismo
que puede as sobresaturar este tutorial.
Hasta ahora, solo se haba especificado bordes rectos en las geometras de los
tutoriales anteriores, pero ac se necesita especificar bordes curvos. Estos son
especificados bajo el comando edges que es una lista de bordes no rectos. La
sintaxis de cada entrada de lista comienza con un tipo de curva, que pueden ser
arc, simpleSpline, polyLine etc. En este ejemplo todos los bordes son circulares
as que pueden ser especificados con el comando arc. Luego se deben escribir
los vrtices inciales y finales del arco y un punto vector por el cual el arco
circular debe pasar.
6 parches son definidos: uno para cada lado de la placa, uno para el agujero y
uno para los planos delantero y trasero. Los parches de izquierda e inferior son
ambos planos de simetra. Debido a que esta es una restriccin geomtrica,
est incluido en la definicin de la malla, ms que ser solo una especificacin
de las condiciones de borde de los campos. Por lo tanto estn definidas como
tales usando un plano de simetra especial symetryPlane como se muestra en
el blockMeshDict.
El parche frontAndBack representan el plano que es ignorado en un plano en 2
dimensiones. De nuevo esta es una restriccin geomtrica en la malla, usando
el comando empty como se muestra en el blockMeshDict.
El resto de los parches los tipos regulares de patch. Como la malla es generada
usando el comando blockMesh puede visualizarse en paraFoam.
GENERACIN DE LA MALLA

Figura7.
GENERACIN DE LA MALLA

Figura8. Figura9.
CONDICIONES INICIALES Y DE BORDE

Una vez que ya se haya generado la malla, el campo inicial con las
condiciones de borde debe ser configurado. Para un caso de anlisis de
esfuerzo sin esfuerzos trmicos, solo desplazamiento (D) debe ser
modificado el archivo de la ruta 0 -> D de la manera siguiente :

Los parches izquierdo e inferior deben ser ambos planos de simetra


(symetryPlane) debido a que son especificados como tales en la
descripcin de la malla en la carpeta constant/polymesh/boundary. De
igual manera el parche frontAndBack debe ser especificado como empty.

Los otros parches son condiciones de borde a traccin, modificado por un


tipo de borde especial a traccin (traction). Los parches superior y agujero
son de traccin cero as que la traccin de borde y la presin deben ser
modificadas a cero. Para el parche derecho la traccin debe ser de
(50000, 0 , 0) Pa y la presin debe ser 0 Pa.
CONDICIONES INICIALES Y DE BORDE

Figura11.

Figura10.
PROPIEDADES MECNICAS

Las propiedades fsicas para el caso son modificadas en el


diccionario mechanicalProperties en el directorio constant. Para
este problema necesitamos identificar las propiedades mecnicas
del acero dadas en la Tabla 1. En el diccionario de las propiedades
mecnicas, el usuario debe tambin modificar planeStress = yes.

Propiedad Unidades Comando Valor

Density Kg/m^3 rho 7854

Youngs modulus Pa E 2*10^11

Poissons ratio nu 0.3

Tabla1.
PROPIEDADES MECNICAS

Figura12.
PROPIEDADES TRMICAS

En este caso, no se quiere resolver para una ecuacin trmica. Por


lo tanto debe modificarse el comando thermalStress = no en el
diccionario thermalProperties.

CONTROL

Para este caso se modificar el diccionario controlDict. El tiempo de


arranque startTime es de 0seg. El paso de tiempo no es importante
ya que este caso es estado estable; en este caso es mejor modificar
el paso de tiempo deltaT a 1. El tiempo final endTime ser de 100.
El intervalo de nota writeInterval ser de 20.
PROPIEDADES TRMICAS CONTROL

Figura13. Figura14.
ESQUEMAS DE DISCRETIZACIN Y CONTROL LNEAL DEL
SOLVER
Debemos prestarle atencin al diccionario fvSchemes. En primer
lugar, el problema que se est analizando es estado estable as que
el usuario debe seleccionar SteadyState para las derivaciones de
tiempo en timeScheme. Esto esencialmente desactiva los trminos
de las derivaciones del tiempo. La mayora de los solvers, sobre
todo en dinmica de fluidos, trabajan tanto con problemas estado
estables como transitorios pero el solver solidDisplacementFoam si
lo hace, ya que el algoritmo base es el mismo para ambos tipos de
simulacin.

El usuario deber abrir el diccionario fvSchemes en el


directorio system y asegurarse que el mtodo leastSquares est
seleccionado para el esquema de discretizacin del gradiente
grad(U) en el sub-diccionario gradSchemes.
ESQUEMAS DE DISCRETIZACIN Y CONTROL LNEAL DEL
SOLVER

Figura15.
ESQUEMAS DE DISCRETIZACIN Y CONTROL LINEAL DEL
SOLVER
El diccionario fvSolution del directorio system controla las
ecuaciones lineales y algoritmos usados en la solucin. El usuario
debe mirar primero el sub-diccionario solver y revisar que la opcin
de solver para D es GAMG. La tolerancia tolerance del solver debe
ser modificada a 10-6 para este problema. La tolerancia relativa del
solver, denotada por relTol, modifica la reduccin requerida en los
residuos entre cada iteracin debido a que muchos trminos en
cada ecuacin son explcitos y son actualizados como parte de un
procedimiento iterativo segregado. Por lo tanto un valor razonable
para la tolerancia relativa es de 0.01, o posiblemente un poco ms
alta, se puede decir 0.1, o en algunos casos incluso 0.9 (como es en
este caso)
ESQUEMAS DE DISCRETIZACIN Y CONTROL LINEAL DEL
SOLVER
El diccionario fvSolution contiene un sub-directorio llamado
stressAnalysis que contiene algunos parmetros de control
especficos para el solver aplicado. Primero hay un comando
nCorrectors que especifica el numero de lazos o bucles (loops)
externos alrededor del sistema de ecuaciones completo, incluyendo
las condiciones de borde a traccin. Ya que el problema es estado
estable, se est realizando una serie de iteraciones a travs de la
solucin convergente con el time step (salto de tiempo) actuando
como un contador de iteracin. Por lo tanto se puede modificar
nCorrectors a 1.

El comando D especifica una tolerancia convergente para el


lazo de iteracin externo, establece un nivel de residuo inicial por
debajo del cual cesar la resolucin. Debe ser modificada a la
tolerancia del solver deseada especificada anteriormente como de
10-6 para este problema.
ESQUEMAS DE DISCRETIZACIN Y CONTROL LINEAL DEL
SOLVER

Figura16.
CORRIENDO EL CASO
Una vez terminadas las modificaciones , el usuario debe correr el
caso, para esto debe salir del midnight commander con la tecla F10
y luego una vez alojado en el terminal se procede a teclear
solidDisplacementFoam para que l/ella pueda mirar luego la
informacin de convergencia en el archivo logartmico y as correr el
solver objeto de estudio.

Figura17.
POST PROCESAMIENTO
El solver solidDisplacementFoam emite un campo de esfuerzos
como un campo simtrico a tensin sigma. Para post-procesar
campos escalares individuales de los componentes , etc., pueden
ser generados corriendo la utilidad de post procesamiento
postProcess, en esta caso en sigma, para esto es neceario colocar
en el terminal: postProcess -func components(sigma)

Los componentes nombrados sigmaxx, sigmaxy etc. Son


escritos a directorios de tiempo del caso. Los esfuerzos pueden ser
vistos en la herramienta paraView tecleando en el terminal
paraFoam.
POST PROCESAMIENTO

Figura18.

Figura19.
RESULTADOS VISUALES

Figura20.
RESULTADOS VISUALES

Con la funcin PlotOverLine del paraView se puede observar el


comportamiento de los diferentes esfuerzos en la direccin de una
lnea que puede mover a su entera disposicin el usuario o bien a lo
largo de un eje (X, Y o Z)
RESULTADOS VISUALES

Figura21.Alolargodeunadiagonalquevadelaesquinasuperiorizquierdaalainferiorderecha
RESULTADOS VISUALES

Figura22.AlolargodelejeX
RESULTADOS VISUALES

Figura23.AlolargodelejeY
MUCHAS GRACIAS
POR SU ATENCIN

You might also like