m (Scipediacontent moved page Draft Content 843322741 to Cavalieri et al 2012a)
 
(5 intermediate revisions by the same user not shown)
Line 347: Line 347:
 
==5. Cómputo de los factores de peso. Proyecciones==
 
==5. Cómputo de los factores de peso. Proyecciones==
  
Para llevar a cabo las integraciones en la interface ''Γ''<sub>''c''</sub> , es necesario definir una superficie topológica sobre la cual realizar las aproximaciones. En este trabajo se aproxima la cara de un elemento ''k''  no mortar, ver  [[#fig0005|figura 1]] , con un elemento <math display="inline">\tilde{k}</math>  que pertenece a un plano '''''p'''''  definido por un vector normal '''''e'''''<sub>3</sub> , ver [[#fig0015|figura 3]] -a. Dicho vector normal se obtiene por el producto vectorial de las diagonales de la cara del elemento ''k  '' . La suma de todas las superficies <math display="inline">\tilde{k}</math>  representa la superficie de integración ''Γ''<sub>''c''</sub>  de la ecuación [[#eq0015|(3)]] . Una alternativa para la proyección de los nodos no-mortar y mortar en el plano '''''p'''''  es a través de una base global definida en <math display="inline">{\mathbb{R}}^3</math> . De esta manera, es posible utilizar el algoritmo de intersección lineal paramétrico Cyrus-Beck descrito en la referencia [[#bib0150|[30]]] . En este trabajo se propone otra alternativa que facilita el desarrollo de las ecuaciones y que consiste en la definición de una base local para cada elemento no mortar que define un plano o superficie de proyección '''''p''''' , tal como lo representa la [[#fig0015|figura 3]] -a. De esta forma, es posible utilizar un algoritmo de intersección de polígonos basado en reglas de avance y en la definición paramétrica de rectas en <math display="inline">{\mathbb{R}}^2</math> , ver por ejemplo [[#bib0160|[31]]] . Tomando una base <math display="inline">V=\lbrace {\overset{\textasciicaron}{\boldsymbol{e}}}_1,{\overset{\textasciicaron}{\boldsymbol{e}}}_2,{\overset{\textasciicaron}{\boldsymbol{e}}}_3\rbrace </math> , donde los versores <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_1</math>  y <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_3</math>  son calculados por medio de las diagonales para cada elemento no-mortar y el vector <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_2</math> , como <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_1\times {\overset{\textasciicaron}{\boldsymbol{e}}}_3</math> , ver [[#fig0015|figura 3]] -a, las proyecciones de las coordenadas de los nodos <math display="inline">\boldsymbol{x}_A^{\alpha }</math>  de un elemento mortar o no-mortar en '''''p'''''  pueden calcularse como
+
Para llevar a cabo las integraciones en la interface ''Γ''<sub>''c''</sub> , es necesario definir una superficie topológica sobre la cual realizar las aproximaciones. En este trabajo se aproxima la cara de un elemento ''k''  no mortar, ver  [[#fig0005|figura 1]] , con un elemento <math display="inline">\tilde{k}</math>  que pertenece a un plano '''''p'''''  definido por un vector normal '''''e'''''<sub>3</sub> , ver [[#fig0015|figura 3]] -a. Dicho vector normal se obtiene por el producto vectorial de las diagonales de la cara del elemento ''k  '' . La suma de todas las superficies <math display="inline">\tilde{k}</math>  representa la superficie de integración ''Γ''<sub>''c''</sub>  de la ecuación [[#eq0015|(3)]] . Una alternativa para la proyección de los nodos no-mortar y mortar en el plano '''''p'''''  es a través de una base global definida en <math display="inline">{\mathbb{R}}^3</math> . De esta manera, es posible utilizar el algoritmo de intersección lineal paramétrico Cyrus-Beck descrito en la referencia [[#bib0150|[30]]] . En este trabajo se propone otra alternativa que facilita el desarrollo de las ecuaciones y que consiste en la definición de una base local para cada elemento no mortar que define un plano o superficie de proyección '''''p''''' , tal como lo representa la [[#fig0015|figura 3]] -a. De esta forma, es posible utilizar un algoritmo de intersección de polígonos basado en reglas de avance y en la definición paramétrica de rectas en <math display="inline">{\mathbb{R}}^2</math> , ver por ejemplo [[#bib0160|[31]]] . Tomando una base <math display="inline">V=\lbrace {\check{\boldsymbol{e}}}_1,{\check{\boldsymbol{e}}}_2,{\check{\boldsymbol{e}}}_3\rbrace </math> , donde los versores <math display="inline">{\check{\boldsymbol{e}}}_1</math>  y <math display="inline">{\check{\boldsymbol{e}}}_3</math>  son calculados por medio de las diagonales para cada elemento no-mortar y el vector <math display="inline">{\check{\boldsymbol{e}}}_2</math> , como <math display="inline">{\check{\boldsymbol{e}}}_1\times {\check{\boldsymbol{e}}}_3</math> , ver [[#fig0015|figura 3]] -a, las proyecciones de las coordenadas de los nodos <math display="inline">\boldsymbol{x}_A^{\alpha }</math>  de un elemento mortar o no-mortar en '''''p'''''  pueden calcularse como
  
 
<span id='eq0090'></span>
 
<span id='eq0090'></span>
Line 356: Line 356:
 
|-
 
|-
 
| <math>\boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
 
| <math>\boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
{\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
+
{\check{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
{\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
+
{\check{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
  
 
\end{array}\right],</math>
 
\end{array}\right],</math>
Line 381: Line 381:
 
Figura 3.
 
Figura 3.
  
(a) Elemento no-mortar ''k'' , elemento mortar ''l'' , plano de proyección '''''p''''' , base <math display="inline">V=\lbrace {\overset{\textasciicaron}{\boldsymbol{e}}}_1,{\overset{\textasciicaron}{\boldsymbol{e}}}_2,{\overset{\textasciicaron}{\boldsymbol{e}}}_3\rbrace </math> ; (b) proyección de los elementos ''k''  y ''l''  en el plano '''''p''''' , (c); polígono <math display="inline">P</math>  formado con el algoritmo de intersección; (d) división de <math display="inline">P</math>  en triángulos.                   
+
(a) Elemento no-mortar ''k'' , elemento mortar ''l'' , plano de proyección '''''p''''' , base <math display="inline">V=\lbrace {\check{\boldsymbol{e}}}_1,{\check{\boldsymbol{e}}}_2,{\check{\boldsymbol{e}}}_3\rbrace </math> ; (b) proyección de los elementos ''k''  y ''l''  en el plano '''''p''''' , (c); polígono <math display="inline">P</math>  formado con el algoritmo de intersección; (d) división de <math display="inline">P</math>  en triángulos.                   
  
 
</span>
 
</span>
Line 418: Line 418:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\quad \boldsymbol{y}_I^P=</math><math>\sum_{A=1}^{3\overset{\textasciiacute}{o}4}N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\quad \boldsymbol{y}_A^{\alpha }.</math>
+
| <math>\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\quad \boldsymbol{y}_I^P=</math><math>\sum_{A=1}^{3\acute{o}4}N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\quad \boldsymbol{y}_A^{\alpha }.</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 20)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 20)
Line 515: Line 515:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\quad \boldsymbol{y}_I^P=</math><math>\sum_{A=1}^{3\overset{\textasciiacute}{o}4}N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })\quad \boldsymbol{y}_A^{\alpha }.</math>
+
| <math>\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\quad \boldsymbol{y}_I^P=</math><math>\sum_{A=1}^{3\acute{o}4}N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })\quad \boldsymbol{y}_A^{\alpha }.</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 26)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 26)
Line 541: Line 541:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\Delta {\xi }_{\beta }^{\alpha }={{\boldsymbol{\tau }}_{\beta }^{\alpha }}^T\cdot \left(\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\Delta \boldsymbol{y}_I^P-\right. </math><math>\left. \sum_{A=1}^{3\overset{\textasciiacute}{o}4}N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })\Delta \boldsymbol{y}_A^P\right),</math>
+
| <math>\Delta {\xi }_{\beta }^{\alpha }={{\boldsymbol{\tau }}_{\beta }^{\alpha }}^T\cdot \left(\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\Delta \boldsymbol{y}_I^P-\right. </math><math>\left. \sum_{A=1}^{3\acute{o}4}N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })\Delta \boldsymbol{y}_A^P\right),</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 28)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 28)
Line 568: Line 568:
 
| <math>\Delta N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })=</math><math>N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha }){{\boldsymbol{\tau }}_{\beta }^{\alpha }}^T\cdot \sum_{I=1}^3N_I^P(\boldsymbol{\xi })\Delta \boldsymbol{y}_I^P-</math><math></math>
 
| <math>\Delta N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })=</math><math>N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha }){{\boldsymbol{\tau }}_{\beta }^{\alpha }}^T\cdot \sum_{I=1}^3N_I^P(\boldsymbol{\xi })\Delta \boldsymbol{y}_I^P-</math><math></math>
 
|-
 
|-
|<math>\sum_{A=1}^{3\overset{\textasciiacute}{o}4}N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\Delta \boldsymbol{y}_A^P.</math>
+
|<math>\sum_{A=1}^{3\acute{o}4}N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\Delta \boldsymbol{y}_A^P.</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 30)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 30)
Line 670: Line 670:
 
|}
 
|}
  
donde <math display="inline">Y_{32,1}^P</math>  es la componente en la dirección <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_1</math>  del vector <math display="inline">y_3^P-y_2^P</math>  que pertenece a la base <math display="inline">V</math> , <math display="inline">Y_{32,2}^P</math>  es la segunda componente del mismo vector pero en la dirección <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_2</math> . En forma análoga se obtienen: <math display="inline">Y_{13,1}^P</math> , <math display="inline">Y_{13,2}^P</math> , <math display="inline">Y_{21,1}^P</math>  y <math display="inline">Y_{21,2}^P</math> .       
+
donde <math display="inline">Y_{32,1}^P</math>  es la componente en la dirección <math display="inline">{\check{\boldsymbol{e}}}_1</math>  del vector <math display="inline">y_3^P-y_2^P</math>  que pertenece a la base <math display="inline">V</math> , <math display="inline">Y_{32,2}^P</math>  es la segunda componente del mismo vector pero en la dirección <math display="inline">{\check{\boldsymbol{e}}}_2</math> . En forma análoga se obtienen: <math display="inline">Y_{13,1}^P</math> , <math display="inline">Y_{13,2}^P</math> , <math display="inline">Y_{21,1}^P</math>  y <math display="inline">Y_{21,2}^P</math> .       
  
 
Teniendo en cuenta la ecuación [[#eq0160|(32)]]  que relaciona los coordenadas de los nodos del triángulo ''P  ''  con las coordenadas del elemento no-mortar y mortar (<math display="inline">\Delta \boldsymbol{y}_I^P=\boldsymbol{D}_{IK}^P\Delta \overset{\mbox{ˆ}}{\boldsymbol{\Phi }}</math> ), la linealización del área resulta en la siguiente ecuación
 
Teniendo en cuenta la ecuación [[#eq0160|(32)]]  que relaciona los coordenadas de los nodos del triángulo ''P  ''  con las coordenadas del elemento no-mortar y mortar (<math display="inline">\Delta \boldsymbol{y}_I^P=\boldsymbol{D}_{IK}^P\Delta \overset{\mbox{ˆ}}{\boldsymbol{\Phi }}</math> ), la linealización del área resulta en la siguiente ecuación
Line 685: Line 685:
 
|}
 
|}
  
con <math display="inline">\boldsymbol{J}^P=1/(2A^P)\left[-\right. </math><math>\left. Y_{32,2}^P\quad \vert \quad Y_{32,1}^P\quad \vert \quad -\right. </math><math>\left. Y_{13,2}^P\quad \vert \quad Y_{13,2}^P\quad \vert \quad -\right. </math><math>\left. Y_{21,2}^P\quad \vert \quad Y_{21,1}^P\right]</math> .    
+
con <math display="inline">\boldsymbol{J}^P=1/(2A^P)\left[-\right. </math><math>\left. Y_{32,2}^P\quad \vert \quad Y_{32,1}^P\quad \vert \quad -\right. </math><math>\left. Y_{13,2}^P\quad \vert \quad Y_{13,2}^P\quad \vert \quad -\right. </math><math>\left. Y_{21,2}^P\quad \vert \quad Y_{21,1}^P\right]</math> .
  
 
===6.3. Factores de peso===
 
===6.3. Factores de peso===
Line 836: Line 836:
 
|}
 
|}
  
donde <math display="inline">{\tilde{\boldsymbol{V}}}_j</math>  corresponde a la matriz antisimétrica asociada al vector <math display="inline">\boldsymbol{v}_j</math> . Luego puede demostrarse que <math display="inline">\Delta \parallel \boldsymbol{n}_j\parallel =</math><math>\boldsymbol{n}_j/\parallel \boldsymbol{n}_j\parallel \Delta \boldsymbol{n}_j=</math><math>{\overset{\textasciicaron}{\boldsymbol{n}}}_jS\overset{\mbox{ˆ}}{W}</math> , con lo cual la variación del vector normal promedio es expresado de la siguiente manera
+
donde <math display="inline">{\tilde{\boldsymbol{V}}}_j</math>  corresponde a la matriz antisimétrica asociada al vector <math display="inline">\boldsymbol{v}_j</math> . Luego puede demostrarse que <math display="inline">\Delta \parallel \boldsymbol{n}_j\parallel =</math><math>\boldsymbol{n}_j/\parallel \boldsymbol{n}_j\parallel \Delta \boldsymbol{n}_j=</math><math>{\check{\boldsymbol{n}}}_jS\overset{\mbox{ˆ}}{W}</math> , con lo cual la variación del vector normal promedio es expresado de la siguiente manera
  
 
{| class="formulaSCP" style="width: 100%; text-align: center;"  
 
{| class="formulaSCP" style="width: 100%; text-align: center;"  
Line 1,180: Line 1,180:
 
|-
 
|-
 
| <math>\boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
 
| <math>\boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
{\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
+
{\check{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
{\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
+
{\check{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
  
 
\end{array}\right],</math>
 
\end{array}\right],</math>
Line 1,188: Line 1,188:
 
|}
 
|}
  
donde <math display="inline">\boldsymbol{x}_0^1</math>  es un punto que pertenece a un elemento no-mortar ''k  '' , por ejemplo, uno de sus vértices. De esta manera, las coordenadas nodales <math display="inline">\boldsymbol{y}_A^{\alpha }</math>  quedan definidas con dos componentes. Los versores <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_1</math>  y <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_2</math>  son calculados por medio de las diagonales para cada elemento no-mortar de la siguiente manera,
+
donde <math display="inline">\boldsymbol{x}_0^1</math>  es un punto que pertenece a un elemento no-mortar ''k  '' , por ejemplo, uno de sus vértices. De esta manera, las coordenadas nodales <math display="inline">\boldsymbol{y}_A^{\alpha }</math>  quedan definidas con dos componentes. Los versores <math display="inline">{\check{\boldsymbol{e}}}_1</math>  y <math display="inline">{\check{\boldsymbol{e}}}_2</math>  son calculados por medio de las diagonales para cada elemento no-mortar de la siguiente manera,
  
 
<span id='eq0260'></span>
 
<span id='eq0260'></span>
Line 1,196: Line 1,196:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>{\overset{\textasciicaron}{\boldsymbol{e}}}_1=\frac{\boldsymbol{x}_3^1-\boldsymbol{x}_1^1}{\left\|\boldsymbol{x}_3^1-\boldsymbol{x}_1^1\right\|},</math>
+
| <math>{\check{\boldsymbol{e}}}_1=\frac{\boldsymbol{x}_3^1-\boldsymbol{x}_1^1}{\left\|\boldsymbol{x}_3^1-\boldsymbol{x}_1^1\right\|},</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 52)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 52)
Line 1,209: Line 1,209:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>{\overset{\textasciicaron}{\boldsymbol{e}}}_2={\overset{\textasciicaron}{\boldsymbol{e}}}_3\times {\overset{\textasciicaron}{\boldsymbol{e}}}_1,</math>
+
| <math>{\check{\boldsymbol{e}}}_2={\check{\boldsymbol{e}}}_3\times {\check{\boldsymbol{e}}}_1,</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 53)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 53)
Line 1,222: Line 1,222:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>{\overset{\textasciicaron}{\boldsymbol{e}}}_3=\frac{\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1)\times (\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)}{\left\|\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1)\times (\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)\right\|},</math>
+
| <math>{\check{\boldsymbol{e}}}_3=\frac{\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1)\times (\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)}{\left\|\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1)\times (\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)\right\|},</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 54)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 54)
Line 1,236: Line 1,236:
 
|-
 
|-
 
| <math>\Delta \boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
 
| <math>\Delta \boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
\Delta {\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)+{\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot \Delta \boldsymbol{x}_A^{\alpha }+{\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot \Delta \boldsymbol{x}_0^1\\
+
\Delta {\check{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)+{\check{\boldsymbol{e}}}_1\cdot \Delta \boldsymbol{x}_A^{\alpha }+{\check{\boldsymbol{e}}}_1\cdot \Delta \boldsymbol{x}_0^1\\
\Delta {\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)+{\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot \Delta \boldsymbol{x}_A^{\alpha }+{\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot \Delta \boldsymbol{x}_0^1\\
+
\Delta {\check{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)+{\check{\boldsymbol{e}}}_2\cdot \Delta \boldsymbol{x}_A^{\alpha }+{\check{\boldsymbol{e}}}_2\cdot \Delta \boldsymbol{x}_0^1\\
  
 
\end{array}\right]</math>
 
\end{array}\right]</math>
Line 1,270: Line 1,270:
 
==A.2. Variación de la normal==
 
==A.2. Variación de la normal==
  
La linealización de <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_1</math>  puede ser obtenida a partir de la ecuación [[#eq0260|(52)]]  como se muestra a continuación,
+
La linealización de <math display="inline">{\check{\boldsymbol{e}}}_1</math>  puede ser obtenida a partir de la ecuación [[#eq0260|(52)]]  como se muestra a continuación,
  
 
<span id='eq0280'></span>
 
<span id='eq0280'></span>
Line 1,278: Line 1,278:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\Delta {\overset{\textasciicaron}{\boldsymbol{e}}}_1=</math><math>\boldsymbol{\mbox{F}}(\Delta \boldsymbol{x}_3^1-\Delta \boldsymbol{x}_1^1),</math>
+
| <math>\Delta {\check{\boldsymbol{e}}}_1=</math><math>\boldsymbol{\mbox{F}}(\Delta \boldsymbol{x}_3^1-\Delta \boldsymbol{x}_1^1),</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 56)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 56)
Line 1,290: Line 1,290:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\boldsymbol{F}=\frac{\left(\boldsymbol{I}-{\overset{\textasciicaron}{\boldsymbol{e}}}_1\otimes {\overset{\textasciicaron}{\boldsymbol{e}}}_1\right)}{\parallel \boldsymbol{x}_3^1-\boldsymbol{x}_1^1\parallel }.</math>
+
| <math>\boldsymbol{F}=\frac{\left(\boldsymbol{I}-{\check{\boldsymbol{e}}}_1\otimes {\check{\boldsymbol{e}}}_1\right)}{\parallel \boldsymbol{x}_3^1-\boldsymbol{x}_1^1\parallel }.</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 57)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 57)
Line 1,316: Line 1,316:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\boldsymbol{A}=\frac{\left(\boldsymbol{I}-{\overset{\textasciicaron}{\boldsymbol{e}}}_3\otimes {\overset{\textasciicaron}{\boldsymbol{e}}}_3\right)}{\left[\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1)\times (\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)\right]}\tilde{\left(\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)}\quad \vert \quad </math>
+
| <math>\boldsymbol{A}=\frac{\left(\boldsymbol{I}-{\check{\boldsymbol{e}}}_3\otimes {\check{\boldsymbol{e}}}_3\right)}{\left[\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1)\times (\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)\right]}\tilde{\left(\boldsymbol{x}_4^1-\boldsymbol{x}_2^1\right)}\quad \vert \quad </math>
 
|-
 
|-
 
|<math>\tilde{\left(\boldsymbol{x}_1^1-\boldsymbol{x}_3^1\right)}\quad \vert \quad \tilde{\left(\boldsymbol{x}_2^1-\boldsymbol{x}_4^1\right)}\quad \vert \quad \tilde{\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1\right)},</math>
 
|<math>\tilde{\left(\boldsymbol{x}_1^1-\boldsymbol{x}_3^1\right)}\quad \vert \quad \tilde{\left(\boldsymbol{x}_2^1-\boldsymbol{x}_4^1\right)}\quad \vert \quad \tilde{\left(\boldsymbol{x}_3^1-\boldsymbol{x}_1^1\right)},</math>
Line 1,323: Line 1,323:
 
|}
 
|}
  
el operador <math display="inline">\tilde{\left(\bullet \right)}</math>  aplicado a un vector '''''u'''''  retorna la matriz antisimétrica <math display="inline">\tilde{\boldsymbol{u}}</math>  tal que <math display="inline">\boldsymbol{u}\times \boldsymbol{v}=</math><math>\tilde{\boldsymbol{u}}\boldsymbol{v}</math> , para cualquier vector arbitrario <math display="inline">\boldsymbol{v}</math> . Por último, resta calcular la variación del versor <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_2</math> , obtenido a partir de la ecuación [[#eq0265|(53)]] ,
+
el operador <math display="inline">\tilde{\left(\bullet \right)}</math>  aplicado a un vector '''''u'''''  retorna la matriz antisimétrica <math display="inline">\tilde{\boldsymbol{u}}</math>  tal que <math display="inline">\boldsymbol{u}\times \boldsymbol{v}=</math><math>\tilde{\boldsymbol{u}}\boldsymbol{v}</math> , para cualquier vector arbitrario <math display="inline">\boldsymbol{v}</math> . Por último, resta calcular la variación del versor <math display="inline">{\check{\boldsymbol{e}}}_2</math> , obtenido a partir de la ecuación [[#eq0265|(53)]] ,
  
 
<span id='eq0300'></span>
 
<span id='eq0300'></span>
Line 1,336: Line 1,336:
 
|}
 
|}
  
donde <math display="inline">\tilde{\boldsymbol{n}}</math>  y <math display="inline">{\tilde{\boldsymbol{e}}}_1</math>  son los operadores rotacionales antisimétricos asociados al vector normal '''''n'''''  y a <math display="inline">{\overset{\textasciicaron}{\boldsymbol{e}}}_1</math> , respectivamente. Reemplazando por las ecuaciones ([[#eq0280|56]] ,[[#eq0290|58]] ,[[#eq0300|60]] ) en la ecuación [[#eq0275|(55)]] , obtenemos la matriz <math display="inline">\boldsymbol{H}_A^{\alpha }</math>  definida como
+
donde <math display="inline">\tilde{\boldsymbol{n}}</math>  y <math display="inline">{\tilde{\boldsymbol{e}}}_1</math>  son los operadores rotacionales antisimétricos asociados al vector normal '''''n'''''  y a <math display="inline">{\check{\boldsymbol{e}}}_1</math> , respectivamente. Reemplazando por las ecuaciones ([[#eq0280|56]] ,[[#eq0290|58]] ,[[#eq0300|60]] ) en la ecuación [[#eq0275|(55)]] , obtenemos la matriz <math display="inline">\boldsymbol{H}_A^{\alpha }</math>  definida como
  
 
{| class="formulaSCP" style="width: 100%; text-align: center;"  
 
{| class="formulaSCP" style="width: 100%; text-align: center;"  
Line 1,358: Line 1,358:
 
{| style="text-align: center; margin:auto;"  
 
{| style="text-align: center; margin:auto;"  
 
|-
 
|-
| <math>\boldsymbol{H}_I^{\alpha }=-(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T\boldsymbol{F}+{\overset{\textasciicaron}{\boldsymbol{e}}}_1^T({\delta }_{A1}-</math><math>1/n)\quad \quad \vert \quad \quad </math>
+
| <math>\boldsymbol{H}_I^{\alpha }=-(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T\boldsymbol{F}+{\check{\boldsymbol{e}}}_1^T({\delta }_{A1}-</math><math>1/n)\quad \quad \vert \quad \quad </math>
 
|-
 
|-
|<math>{\overset{\textasciicaron}{\boldsymbol{e}}}_1^T({\delta }_{A2}-</math><math>1/n)(\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0)^T\boldsymbol{F}+</math><math></math>
+
|<math>{\check{\boldsymbol{e}}}_1^T({\delta }_{A2}-</math><math>1/n)(\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0)^T\boldsymbol{F}+</math><math></math>
 
|-
 
|-
|<math>{\overset{\textasciicaron}{\boldsymbol{e}}}_1^T({\delta }_{A3}-</math><math>1/n)\quad \quad \vert \quad \quad {\overset{\textasciicaron}{\boldsymbol{e}}}_1^T({\delta }_{A4}-</math><math>1/n),</math>
+
|<math>{\check{\boldsymbol{e}}}_1^T({\delta }_{A3}-</math><math>1/n)\quad \quad \vert \quad \quad {\check{\boldsymbol{e}}}_1^T({\delta }_{A4}-</math><math>1/n),</math>
 
|-
 
|-
 
|<math>\boldsymbol{H}_{II}^{\alpha }=-(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T({\tilde{\boldsymbol{e}}}_1+\boldsymbol{A}^I+</math><math>\tilde{\boldsymbol{n}}\boldsymbol{F})+</math>
 
|<math>\boldsymbol{H}_{II}^{\alpha }=-(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T({\tilde{\boldsymbol{e}}}_1+\boldsymbol{A}^I+</math><math>\tilde{\boldsymbol{n}}\boldsymbol{F})+</math>
 
|-
 
|-
|<math>{\overset{\textasciicaron}{\boldsymbol{e}}}_2^T({\delta }_{A1}-</math><math>1/n)\quad \quad \vert \quad \quad -(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T{\tilde{\boldsymbol{e}}}_1\boldsymbol{A}^{II}+</math><math></math>
+
|<math>{\check{\boldsymbol{e}}}_2^T({\delta }_{A1}-</math><math>1/n)\quad \quad \vert \quad \quad -(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T{\tilde{\boldsymbol{e}}}_1\boldsymbol{A}^{II}+</math><math></math>
 
|-
 
|-
|<math>{\overset{\textasciicaron}{\boldsymbol{e}}}_2^T({\delta }_{A2}-</math><math>1/n)\quad \quad \vert \quad \quad -(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T({\tilde{\boldsymbol{e}}}_1\boldsymbol{A}^{III}</math>
+
|<math>{\check{\boldsymbol{e}}}_2^T({\delta }_{A2}-</math><math>1/n)\quad \quad \vert \quad \quad -(\boldsymbol{x}_A^{\alpha }-</math><math>\boldsymbol{x}_0)^T({\tilde{\boldsymbol{e}}}_1\boldsymbol{A}^{III}</math>
 
|-
 
|-
|<math>-\tilde{\boldsymbol{n}}\boldsymbol{F})+{\overset{\textasciicaron}{\boldsymbol{e}}}_2^T({\delta }_{A3}-</math><math>1/n)\quad \quad \vert \quad \quad </math>
+
|<math>-\tilde{\boldsymbol{n}}\boldsymbol{F})+{\check{\boldsymbol{e}}}_2^T({\delta }_{A3}-</math><math>1/n)\quad \quad \vert \quad \quad </math>
 
|-
 
|-
|<math>-(\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0)^T{\tilde{\boldsymbol{e}}}_1\boldsymbol{A}^{IV}+</math><math>{\overset{\textasciicaron}{\boldsymbol{e}}}_2^T.</math>
+
|<math>-(\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0)^T{\tilde{\boldsymbol{e}}}_1\boldsymbol{A}^{IV}+</math><math>{\check{\boldsymbol{e}}}_2^T.</math>
 
|}
 
|}
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 62)
 
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 62)

Latest revision as of 10:35, 18 April 2017

Resumen

En este trabajo se propone un algoritmo mortar para el estudio del contacto mecánico en problemas de elasticidad tridimensional. La superficie de proyección utilizada para la integración de las ecuaciones se define a través de una base local cartesiana en cada elemento de contacto, de esta forma se facilita la implementación del algoritmo y la linealización de las ecuaciones. Se proponen ejemplos donde se demuestra que el algoritmo satisface los test de la parcela. Finalmente se utiliza el algoritmo en un caso de interés industrial, el contacto de una válvula de motor de combustión interna con su asiento.

Abstract

In this paper we propose a mortar algorithm for the study of contact mechanics in three dimensional elasticity problems. The projection surface used for integrating the equations is selected through a local cartesiana base defined in each contact element. In this way, some difficulties in the algorithm implementation as well as in the linearization of the equations are avoided. The proposed examples show that the algorithm satisfies the patch tests. Finally, we use the algorithm in an industrial application, the contact of an internal combustion engine valve with its seat.

Palabras clave

Contacto ; Lagrangiano aumentado ; Algoritmo mortar ; Elementos finitos

Keywords

Contact ; Augmented Lagrangian ; Mortar ; Finite elements

1. Introducción

La simulación de componentes mecánicos y procesos que involucran el contacto entre cuerpos tiene gran aplicación en diferentes áreas de la ingeniería, pudiendo citarse el diseño de engranajes [1] , procesos de embutición [2] , fatiga por contacto [3] , entre otras. Para la descripción del desplazamiento relativo entre 2 cuerpos en contacto mediante el Método de los Elementos Finitos (MEF), una técnica ampliamente difundida es la del nodo-segmento, en la cual a un nodo de un cuerpo, denominado esclavo , se asocia una zona de un segmento o superficie del otro cuerpo denominado master[4] . El principal inconveniente de la estrategia nodo-segmento es que no garantiza que una superficie transmita una presión de contacto uniforme a la otra superficie; en otras palabras, esta estrategia no supera los denominados tests de la parcela de contacto [5] . Las aproximaciones del tipo nodo-segmento con doble pasada verifican los tests de la parcela, pero pueden bloquearse debido a las sobre restricciones introducidas en la formulación; adicionalmente, con superficies de contacto no suaves, generan saltos de la presión cuando los nodos esclavos se deslizan entre segmentos adyacentes [6] y no cumplen con la condición de Babuska-Brezzi [7] causando un mal condicionamiento de las matrices y pobre tasa de convergencia, típicas manifestaciones de la sobre-restricción. A pesar de ello, estos métodos son a menudo elegidos en problemas bidimensionales y en ciertas configuraciones de mallas tridimensionales con elementos de bajo orden, para analizar problemas de contacto entre cuerpos flexibles por su capacidad de verificar el test de la parcela. Sin embargo, no pueden superar los tests de la parcela para elementos de orden superior [6]  and [8] .

Otra aproximación es la de los métodos segmento-segmento que relacionan el segmento de un cuerpo (segmento master ) con algún segmento del otro cuerpo (segmento esclavo ). La mayoría de los métodos segmento-segmento utilizan algún tipo de superficie de contacto intermedia, o proyección de superficies e integran el trabajo virtual de contacto usando una cuadratura numérica con alguna interpolación en la presión. Estos métodos fueron aplicados inicialmente a interfases de contacto planas para ejemplos 2D y luego ampliados a mallas 3D [9] , [10]  and [11] . En el trabajo de Park y Felippa [12] se propone una formulación con una superficie de contacto intermedia entre los cuerpos de contacto determinada por un conjunto de ecuaciones auxiliares tal que se satisfaga el equilibrio en dicha superficie. La ventaja de este método es que evita la integración de los campos de multiplicadores de Lagrange, pero tiene como inconveniente la complejidad para ser extendido a problemas 3D. Chen y Hisada [13] desarrollaron una modificación a un esquema del tipo nodo segmento el cual es capaz de superar los test de la parcela de contacto. En este caso, la contribución del contacto al trabajo virtual se integra en las superficies de contacto a través de la presión de contacto nodal. Como desventaja, la matriz de rigidez tangente no es simétrica. Kim et al. desarrollaron una nueva estrategia para problemas de contacto bidimensionales dentro del rango de las deformaciones infinitesimales [14] . Este algoritmo utiliza elementos finitos de variables nodales. La idea es transformar los problemas de contacto nodo-superficie en problemas de contacto nodo-nodo. Para el caso de realizar una extensión a problemas tridimensionales, es necesario proponer un algoritmo robusto de búsqueda de segmentos como así también desarrollar elementos poligonales de variables nodales para que pueda ser tratado en cualquier superficie arbitraria. La formulación es capaz de superar los test de la parcela, sin embargo, no se han reportado hasta el momento extensiones a geometrías tridimensionales y en el rango de grandes deformaciones. Más recientemente, Zavarise y Lorenzis [15] , propusieron un algoritmo nodo segmento con una regularización del tipo penalidad capaz de superar los test de la parcela. Sin embargo, al igual que en el caso anterior, no se reportaron casos de problemas tridimensionales.

Las diferentes aproximaciones propuestas de métodos segmento-segmento difieren generalmente en la forma de interpolar la presión de contacto y en la manera en que se efectúa la proyección entre los elementos. Los primeros trabajos desarrollados utilizaron el método de penalidad como regularización del problema variacional y con aplicaciones solo a problemas bidimensionales [16] , [17]  and [5] . El método superficie-superficie tipo mortar fue originalmente propuesto como un método de descomposición de dominios y utilizado para resolver problemas de elementos finitos con discretizaciones no conformes [9]  and [18] . Específicamente, el primer trabajo que ha utilizado el método mortar fue el propuesto por Bernardi et al. [19] , donde se muestra la estabilidad del método en relación a las condiciones de Babuska-Brezzi. En el trabajo de Puso y Laursen [20] , se presenta una versión del método mortar aplicado al contacto mecánico y utilizado en problemas 3D con grandes deformaciones. La proyección de las superficies de los elementos en contacto se realiza sobre una superficie plana; en cambio, en la propuesta de Puso [21] , la proyección se lleva a cabo sobre una malla intermedia suave definida por un parche con funciones de forma de Hermite que garantiza continuidad C1 solo cuando la malla es regular. El método mortar ha continuado su desarrollo extendiéndolo a aplicaciones con fricción o en problemas de auto-contacto [22] , [23]  and [24] .

En este trabajo, siguiendo algunas de las ideas presentadas por Puso y Laursen [20] , se propone un algoritmo de contacto tipo mortar con un esquema de penalidad aplicable a problemas tridimensionales en donde, a diferencia de la propuesta de Puso y Laursen [20] , la superficie topológica de proyección de los elementos se caracteriza mediante una base local cartesiana definida para cada elemento no-mortar en contacto. Esta característica simplifica el tratamiento algebraico de las ecuaciones y la implementación computacional. El algoritmo fue implementado en el código de elementos finitos Oofelie [25] . Los ejemplos numéricos propuestos muestran que el algoritmo supera los tests de la parcela con resultados de tensiones muy regulares para mallas arbitrarias. En todos los casos las simulaciones fueron llevadas a cabo asumiendo un modelo mecánico elástico lineal, sin consideración de efectos dinámicos ni procesos de fricción entre los cuerpos en contacto.

2. Descripción del problema

El movimiento de los cuerpos α , con α  = 1, 2 se expresa por el mapeo , y la posición actual de las partículas materiales se calcula por xα  = χα (Xα , t ). A diferencia de los métodos nodo-segmento, en el contacto tipo mortar la porción de frontera en contacto Γc está dada por una intersección de las superficies , esto es , ver figura 1 . La convención adoptada en este trabajo para la definición de las superficies mortar y no mortar es la siguiente: denota la superficie no-mortar o esclava, en tanto que es la superficie mortar o master . La estrategia utilizada para discretizar el dominio es por medio del MEF, de esta forma, la malla de la superficie de contacto puede ser parametrizada como

( 1)

donde: , , nα es el número de nodos de la malla en y son las clásicas funciones de forma, bilineales en caso de utilizar mallas con hexaedros, o lineales para el caso de mallas formadas por tetraedros.


Notación utilizada en el método mortar para los cuerpos en contacto.


Figura 1.

Notación utilizada en el método mortar para los cuerpos en contacto.

El vector de coordenadas nodales en para las superficies de contacto se define de la siguiente manera

( 2)

Notar que Φ se ordena de forma tal que en las primeras componentes se encuentran las coordenadas de los nodos referidos a la frontera (no mortar) y luego las correspondientes a (mortar).

3. Trabajo virtual asociado al contacto

Cuando los cuerpos 1 y 2 interactúan mecánicamente sobre la superficie de contacto, el trabajo virtual asociado al contacto queda definido por

( 3)

donde tα denota el vector tracción de Cauchy. Asumiendo que existe conservación de la cantidad de movimiento lineal en la interfase de contacto,  ; y que x1  − x2  ≈ 0, la ecuación (3) puede ser escrita como

( 4)

Utilizando las siguientes parametrizaciones para las superficies de contacto y el vector tracción

( 5)

junto con la ecuación (4) , el principio de los trabajos virtuales asociado al contacto se aproxima de la siguiente manera

( 6)

Luego, la ecuación (6) puede ser escrita en forma más compacta

( 7)

donde

( 8)

denota la primera variación del huelgo o gap del nodo esclavo A , y

( 9)

son denominados factores de peso.

Desarrollando las sumatorias y teniendo en cuenta la notación definida para el vector de coordenadas nodales Φ dada por la ecuación (2) , la variación de la energía potencial elástica debida al contacto en el caso de que los elementos de la malla sean hexaedros lineales tiene la siguiente expresión matricial

( 10)

pudiendo extenderse de manera similar a otras topologías de elementos. De la ecuación (10) se desprende que el vector de fuerzas internas del contacto para el caso de mallas formadas por elementos hexaedros es:

( 11)

con

( 12)

Los desarrollos que se presentaron hasta aquí no tienen en cuenta efectos dinámicos, tales como el impacto. Para su consideración es necesario realizar los cálculos detallados a cada paso de tiempo. Se requiere utilizar un algoritmo de integración temporal apropiado, resultando aconsejable el empleo de un algoritmo de integración que garantice la conservación o disipación de energía [26] , [27] , [28]  and [29] . La formulación de contacto mostrada puede adaptarse fácilmente a un esquema de este tipo.

4. Regularización de las restricciones normales

El requerimiento físico de impenetrabilidad e interacción de compresión entre los cuerpos es impuesto por medio de una restricción de contacto normal. El vector tracción de Cauchy t puede ser divido en una componente normal tN y en otra tangencial tT . Luego, con las expresiones discretas del trabajo virtual, la restricción del contacto normal puede establecerse con las condiciones de Karush-Kuhn-Tucker (KKT) como

( 13)

expresadas aquí en forma discreta para cada nodo A no-mortar. Las ecuaciones (13) representan un proceso de contacto sin fricción, ya que no se ha tenido en cuenta la componente tangencial tT . La extensión del algoritmo mortar que aquí se presenta a problemas con fricción mediante un return mapping no resulta dificultosa [23] , ya que solo se debe incluir la matriz de fricción que surge de considerar a tT como función del desplazamiento tangencial. De esta forma, no hay necesidad de incluir variables adicionales.

El huelgo gA de un nodo A no-mortar es: gA  = gA  · νA , donde νA es el vector normal promedio en un nodo no-mortar A tal como se muestra en la figura 2 . El promediado de las normales concurrentes a un nodo es una operación relativamente sencilla de implementar y aporta resultados satisfactorios como lo demuestran a continuación los ejemplos numéricos propuestos. Para asegurar el cumplimiento de las condiciones de KKT dadas en la ecuación (13) , se ha seleccionado una regularización por medio del método de penalidad. De esta forma, la tracción normal en el nodo A tiene la siguiente expresión

( 14)

donde

( 15)

y κA es un factor definido como

( 16)

siendo ɛ un coeficiente de penalidad propuesto por el usuario. En la ecuación (16) , el coeficiente de penalidad ɛ se debe ajustar a valores típicos de rigidez de los cuerpos en contacto (un valor apropiado está en el orden de 10Eh , siendo E el módulo de elasticidad y h el tamaño de malla). Esta característica es fundamental para lograr una buena tasa de convergencia. Luego, con las expresiones de las ecuaciones ( 12 ,14 ), el vector de fuerzas internas resulta en

( 17)


Vector normal promedio νA definido por los elementos: (J−1), (J) y (J+1) en el ...


Figura 2.

Vector normal promedio νA definido por los elementos: (J  − 1), (J ) y (J  + 1) en el nodo A .

5. Cómputo de los factores de peso. Proyecciones

Para llevar a cabo las integraciones en la interface Γc , es necesario definir una superficie topológica sobre la cual realizar las aproximaciones. En este trabajo se aproxima la cara de un elemento k no mortar, ver figura 1 , con un elemento que pertenece a un plano p definido por un vector normal e3 , ver figura 3 -a. Dicho vector normal se obtiene por el producto vectorial de las diagonales de la cara del elemento k   . La suma de todas las superficies representa la superficie de integración Γc de la ecuación (3) . Una alternativa para la proyección de los nodos no-mortar y mortar en el plano p es a través de una base global definida en . De esta manera, es posible utilizar el algoritmo de intersección lineal paramétrico Cyrus-Beck descrito en la referencia [30] . En este trabajo se propone otra alternativa que facilita el desarrollo de las ecuaciones y que consiste en la definición de una base local para cada elemento no mortar que define un plano o superficie de proyección p , tal como lo representa la figura 3 -a. De esta forma, es posible utilizar un algoritmo de intersección de polígonos basado en reglas de avance y en la definición paramétrica de rectas en , ver por ejemplo [31] . Tomando una base , donde los versores y son calculados por medio de las diagonales para cada elemento no-mortar y el vector , como , ver figura 3 -a, las proyecciones de las coordenadas de los nodos de un elemento mortar o no-mortar en p pueden calcularse como

( 18)

donde es un punto que pertenece a un elemento no-mortar k   , por ejemplo, uno de sus vértices. Así, las coordenadas de los nodos no-mortar y mortar quedan definidas con solo 2 componentes.


(a) Elemento no-mortar k, elemento mortar l, plano de proyección p, base ...


Figura 3.

(a) Elemento no-mortar k , elemento mortar l , plano de proyección p , base  ; (b) proyección de los elementos k y l en el plano p , (c); polígono formado con el algoritmo de intersección; (d) división de en triángulos.

5.1. Algoritmo para el cálculo de los factores de peso

En esta sección se describe el algoritmo utilizado para el cómputo de los factores de peso .

  • Para cada elemento no-mortar k ,
  • Formar el plano''p''con base  .
  • Proyectar las coordenadas de los nodos no-mortar  en el plano''p'', obteniendo los puntos:  , referido a  , ver figura3-b.
  • Para cada elemento mortar'''''l ,
  • Proyectar las coordenadas de los nodos mortar  en el plano''p'', obteniendo los puntos:  , referido a  .
  • Utilizar el algoritmo de intersección para formar un polígono  , ver figura3-c .
  • Ubicar el centro geométrico  del polígono   .
  • Formar nPtriángulos de vértices  y  , ver figura3-d.
  • Cada triángulo P admite la siguiente parametrización:
( 19)

donde NIson las funciones de forma clásicas para un triángulo.

  • Utilizar los ngpuntos de Gauss, conocidos para un triángulo lineal, y ubicarlos en cada triángulo P.
  • Para establecer una relación entre los puntos de Gauss de un triángulo P de un elemento no-mortar k o mortar l, es necesario calcular las coordenadas locales paramétricas  como
( 20)

El sistema de ecuaciones algebraicas es resuelto por medio de un esquema de Newton-Raphson si los elementos k o l son cuadrangulares, o en forma directa si son triangulares. (En este último caso el sistema es lineal).

  • Para cada triángulo P, calcular los factores de peso definidos de la siguiente manera:
( 21)

donde APes el área de cada triángulo P.

  • Finalmente sumar todas las contribuciones  de cada triángulo ,
( 22)

6. Matriz tangente

La matriz tangente se obtiene a partir de la linealización del vector de fuerzas internas presentado en la ecuación (17) ,

( 23)

La linealización del huelgo gA de la ecuación (23) se obtiene utilizando las ecuaciones (9 ,15 ) y resulta en

( 24)

Luego, para la derivación de , se requiere derivar los factores de peso de cada triángulo P   ( ), y ensamblar cada contribución en . Utilizando la ecuación (9) , la linealización de los factores de peso puede ser escrita de la siguiente manera

( 25)

donde son los factores de peso. Para completar el desarrollo de la ecuación (25) , es necesario definir las linealizaciones de las funciones de forma y la correspondiente al área de cada triángulo AP del polígono .

6.1. Funciones de forma

La coordenada local de los puntos de Gauss de un triángulo P y un elemento no mortar o mortar son establecidas por la siguiente relación

( 26)

Tomando la derivada parcial de las funciones de forma en la dirección , con β  = 1, 2,

( 27)

y junto con la ecuación (26) , la variación de las coordenadas ξα para la superficie no-mortar o mortar en la dirección β se obtiene como

( 28)

donde

( 29)

Notar que para la obtención de los coeficientes , simplemente hay que invertir un sistema de 2 × 2. Con la elección de una base local como aquí se propone, se evita una definición de una base covariante que complica el desarrollo de las ecuaciones. Por lo tanto, con las ecuaciones (27 ,28 ) la variación de la función de forma evaluada en los puntos de Gauss puede ser escrita como

( 30)

La ecuación (30) depende de las variaciones de las coordenadas de los nodos de cada triángulo P   , ( ), y también de las variaciones de las coordenadas nodales proyectadas de los elementos no-mortar y mortar, ( ). Sin embargo, para derivar la matriz tangente es necesario transformar las ecuaciones para que sean expresadas solo en términos de las coordenadas de los nodos de los elementos no-mortar y mortar, , y ordenados según el vector Φ descrito en la ecuación (2) .

Se define al vector de coordenadas nodales de 2 componentes de los elementos y referido a la base ,

( 31)

en forma similar se procede para otras topologías de elementos.

La matriz que relaciona las variaciones de las coordenadas de los nodos de cada triángulo del polígono con el vector de coordenadas nodales es denominada . Lo expresado anteriormente resulta en la siguiente expresión genérica,

( 32)

donde la obtención de se detalla en el apéndice. Los vectores y denotan las coordenadas nodales de los elementos no-mortar y mortar, respectivamente, y son particiones de la matriz correspondientes a los lados no-mortar y mortar, respectivamente. Con la ecuación (32) , la linealización de las funciones de forma de la ecuación (27) referida a las coordenadas de los nodos de los elementos no-mortar y mortar puede escribirse como

( 33)

donde

( 34)

6.2. Área de los triángulos

La variación del área de cada triángulo P   que pertenece al polígono , es también requerida para completar el desarrollo de la ecuación (25) . El área de un triángulo P puede ser calculada con el producto vectorial de sus lados, es decir,

( 35)

Luego, teniendo en cuenta que cada triángulo pertenece al plano de proyección p , definido por la base , la linealización de AP puede ser calculada de la siguiente manera

( 36)

donde es la componente en la dirección del vector que pertenece a la base , es la segunda componente del mismo vector pero en la dirección . En forma análoga se obtienen: , , y .

Teniendo en cuenta la ecuación (32) que relaciona los coordenadas de los nodos del triángulo P   con las coordenadas del elemento no-mortar y mortar ( ), la linealización del área resulta en la siguiente ecuación

( 37)

con .

6.3. Factores de peso

La linealización de los factores de peso evaluados en puede ser calculada con las ecuaciones (25 ,34 ,37 ) como sigue

( 38)

con

( 39)

6.4. Huelgo

La variación de la función huelgo gA se linealiza en cada triángulo y luego se suman todas las contribuciones en forma completamente análoga a lo descrito para los factores de peso. Por medio de la ecuación (24) y las ecuaciones (38 ,39 ), la linealización de gA para un triángulo P puede ser expresada como

( 40)

con

( 41)

6.5. Vector normal promedio

La linealización del vector normal promedio para cada nodo de un vértice A de un determinado grupo de elementos no mortar, al que se denominará νA es calculado de la siguiente manera

( 42)

(ver fig. 2 ), donde

( 43)

Aquí nj es el vector normal del elemento no-mortar j   , y los vectores y denotan la diferencia de las coordenadas nodales referidas al nodo A , esto es,

( 44)

Véase en la figura 2 para una mejor interpretación.

La linealización de la ecuación (42) resulta en

( 45)

Luego, la linealización del vector normal nj se obtiene a través de la ecuación (43) como

( 46)

con ΦA el vector de coordenadas x1 de los primeros nodos «vecinos» del nodo A y las matrices,

( 47)
( 48)

donde corresponde a la matriz antisimétrica asociada al vector . Luego puede demostrarse que , con lo cual la variación del vector normal promedio es expresado de la siguiente manera

( 49)

6.6. Vector de coordenadas globales

Hasta el momento, las ecuaciones han sido desarrollas teniendo en cuenta una base ortogonal local definida por las diagonales de un elemento no-mortar. Esto permitió desarrollar las expresiones con vectores cuyas coordenadas nodales son de 2 componentes. Sin embargo, para que el desarrollo esté completo, el vector de coordenadas nodales debe referirse a otro vector ΔΦ donde cada componente sea la coordenada de un nodo no-mortar o mortar en . Para ello es necesario realizar algunas operaciones adicionales. Partiendo de la ecuación (18) , su linealización se calcula como

( 50)

donde es una matriz que transforma las coordenadas nodales de la base a la base global definida en . El trabajo final consiste en multiplicar cada componente del vector por la matriz para obtener las coordenadas nodales en . En el Apéndice se presenta el desarrollo para la obtención de la matriz .

7. Ejemplos numéricos

Las soluciones obtenidas con el método mortar en los ejemplos presentados en este trabajo se comparan con soluciones analíticas, de referencia y con las del programa de elementos finitos SAMCEF [32] . El algoritmo implementado en este software es del tipo nodo-segmento con multiplicadores de Lagrange [33] .

7.1. El test de la parcela para contacto. Ejemplo de validación.

Para comprobar la validez del algoritmo desarrollado, se evalúa su capacidad de superar el test de la parcela con un caso propuesto por Chen y Hisada [13] . Este consiste en 2 bloques en contacto bajo la aplicación de una presión uniforme P  = 5 MPa, ver figura 4 . Las propiedades mecánicas se incluyen en la figura 4 junto con las condiciones de borde, las cuales garantizan un estado plano de deformación. La geometría se discretiza con hexaedros lineales de 8 nodos.


Test de la parcela. Condiciones de borde y propiedades mecánicas.


Figura 4.

Test de la parcela. Condiciones de borde y propiedades mecánicas.

La presión obtenida en ambos lados de la interfase de contacto será igual a la carga exterior aplicada P , si esta se transmite correctamente. Asimismo, el campo de desplazamientos debe mostrar una distribución uniforme. En la figura 5 se compara el campo de desplazamiento obtenido con un esquema del tipo nodo-segmento y con el algoritmo mortar desarrollado en este trabajo. Como puede observarse en la figura 5 -a, la distribución de desplazamientos del esquema nodo-segmento no mantiene una distribución uniforme en todo el dominio. En cambio, el método mortar genera una distribución continua, ver figura 5 -b. Asimismo, la figura 6 muestra una distribución de tensiones uniforme en la interfase de contacto e igual a la presión exterior aplicada cuando se utiliza el método mortar, mientras que con el esquema nodo-segmento se aprecian oscilaciones en la tensión.


Test de la parcela. Comparación del campo de desplazamientos en la dirección Z ...


Figura 5.

Test de la parcela. Comparación del campo de desplazamientos en la dirección Z entre el método nodo-segmento y el método mortar propuesto en este trabajo.


Distribución de presión en la interfase de contacto.


Figura 6.

Distribución de presión en la interfase de contacto.

7.2. El test de la parcela para contacto con diferentes topologías de mallas. Ejemplo de validación.

El objetivo final del ejemplo que aquí se propone es análogo al del caso anterior, esto es, evaluar la capacidad del algoritmo en superar el test de la parcela. La diferencia radica en que las mallas tienen elementos de diferentes topologías, ver figura 7 . El cubo superior está formado por elementos hexaedros en tanto que el cubo inferior por elementos tetraedros, cuyas dimensiones son: 10 mm y 15 mm, respectivamente. El cubo superior tiene aplicada una presión de 100 MPa y está en contacto con el otro cubo. Este último tiene aplicada una presión de 100 MPa en su cara superior, fuera de la región de contacto con el cubo superior, tal como lo muestra la figura 7 . Las dimensiones de los cubos como sus propiedades mecánicas se muestran en la misma figura. La figura 8 muestra el campo de desplazamiento en la dirección Z y la figura 9 el campo de tensiones. En esta figura se puede apreciar que el valor de la tensión en ambos cubos es exactamente igual a la presión aplicada, con lo cual, el algoritmo propuesto supera este test de la parcela.


Distribución de presión en la interfase de contacto.


Figura 7.

Distribución de presión en la interfase de contacto.


Distribución de desplazamiento en la dirección Z.


Figura 8.

Distribución de desplazamiento en la dirección Z.


Campo de tensiones en la dirección Z.


Figura 9.

Campo de tensiones en la dirección Z.

7.3. Contacto de Hertz. Ejemplo de validación

Se propone un ejemplo de Hertz para validar el método mortar con una solución analítica de 2 cilindros en contacto. Para este caso, ambas interfaces de contacto son curvas. La figura 10 muestra la geometría de la mitad de 2 cilindros elásticos, cada uno de ellos de radio 8. La figura 10 muestra la malla utilizada junto con las condiciones de borde propuestas y las propiedades mecánicas del material. La figura 11 muestra el campo de desplazamientos obtenido con el método mortar, donde además es posible apreciar la superficie que se encuentra en contacto. La figura 12 muestra el campo de tensiones en la dirección Z con continuidad y homogeneidad en la interfase de contacto. La figura 13 muestra la comparación de los resultados obtenidos por medio del método mortar y la solución analítica de Hertz provista en [35] , destacándose buena correlación entre ambos resultados.


Contacto de Hertz. Condiciones de borde y propiedades mecánicas.


Figura 10.

Contacto de Hertz. Condiciones de borde y propiedades mecánicas.


Contacto entre dos cilindros elásticos. Campo de desplazamientos.


Figura 11.

Contacto entre dos cilindros elásticos. Campo de desplazamientos.


Contacto entre dos cilindros elásticos. Distribución de tensiones por nodo en la ...


Figura 12.

Contacto entre dos cilindros elásticos. Distribución de tensiones por nodo en la dirección Y .


Contacto entre dos cilindros elásticos. Distribución de tensiones por elemento. ...


Figura 13.

Contacto entre dos cilindros elásticos. Distribución de tensiones por elemento. Comparación con solución analítica de Hertz.

7.4. Ejemplo de aplicación. Contacto entre una válvula de motor de combustión interna y el asiento

El siguiente ejemplo corresponde al estudio del contacto entre una válvula de motor de combustión interna con su asiento. Este es un caso de interés industrial el cual presenta dificultades por tener superficies en contacto pequeñas y con doble curvatura.

En la figura 14 se detalla la geometría, condiciones de borde y propiedades mecánicas utilizadas para el modelo de válvula propuesto. La malla empleada está formada por elementos hexaédricos trilineales. La figura 15 -a muestra una comparación entre los resultados de tensiones obtenidos con el método mortar y con el esquema nodo-segmento. Los resultados que se muestran en la figura 15 -a, obtenida con un esquema nodo-segmento, evidencia una concentración de tensiones en la zona de contacto con el asiento, en tanto que con el método mortar existe una distribución mucho más regular, acorde a lo esperado, ver figura 15 -b. Para una comparación cuantitativa más precisa, en la figura 16 se ha graficado la distribución de tensiones en los elementos de contacto de la válvula. En ella se puede apreciar una variación cíclica de la tensión cuando se utiliza el esquema nodo-segmento, mientras que con el mortar existe una oscilación de amplitud mucho menor.


Válvula de motor de combustión interna. Condiciones de borde y propiedades ...


Figura 14.

Válvula de motor de combustión interna. Condiciones de borde y propiedades mecánicas.


Distribución de tensiones en la dirección Z en una válvula de motor de ...


Figura 15.

Distribución de tensiones en la dirección Z en una válvula de motor de combustión interna con una malla de hexahedros.


Distribución de tensiones por elemento en la zona de contacto para el ejemplo de ...


Figura 16.

Distribución de tensiones por elemento en la zona de contacto para el ejemplo de la válvula de motor de combustión interna.

8. Conclusiones

En este trabajo se desarrolló un algoritmo de contacto tipo mortar. Los ejemplos presentados fueron contrastados con soluciones de referencia, especialmente el del test de la parcela y el de los cilindros de Hertz, mostrando en ambos casos buena correlación con las soluciones referenciadas. Como se pudo observar en los ejemplos propuestos, el esquema del tipo nodo segmento es incapaz de calcular con precisión el campo de tensiones en la zona de contacto; sin embargo, con el método mortar propuesto aquí, los resultados han sido notablemente mejores. Las principales contribuciones del trabajo se detallan a continuación:

  • El algoritmo de contacto que aquí se propone puede ser utilizado en casos tridimensionales con mallas completamente arbitrarias superando efectivamente el test de la parcela. Otras propuestas de algoritmos segmento-segmento, como por ejemplo Park y Felipa [12] , Kim et al. [14] o Zavarise y Lorenzis [15] , si bien también pasan el test de la parcela para contacto, presentan dificultades para su extensión a problemas tridimensionales. En dichos trabajos no se encuentran ejemplos 3D.
  • En este trabajo se propone una variante en la definición del factor de penalidad, ver ecuación (16) , la cual colabora notablemente a la convergencia de la solución.
  • A través de la metodología presentada, los coeficientes utilizados para el cálculo de las variaciones de las funciones de forma quedan definidos de manera expresa, ver sección (6.1 ).
  • Para el cómputo de la intersección de los elementos no mortar y mortar que forman el polígono de integración , se propone la utilización de un algoritmo de intersección de polígonos definidos en un plano referido a una base cartesiana local. De esta forma se facilita el proceso de linealización de las ecuaciones y la implementación computacional.
  • Se analizó un caso de aplicación industrial: una válvula de motor de combustión interna, mediante el cual se muestra que el algoritmo propuesto produce un campo de tensiones suave en la zona de contacto comparado con la aproximación nodo-segmento. Esto resulta de interés para extender el método a estudios de tribología u otros que requieren partir de una aproximación adecuada a las tensiones de contacto.

Agradecimientos

Este trabajo ha recibido financiamiento de la Agencia Nacional de Promoción Científica y Tecnológica (ANPCyT) y el Consejo Nacional de Investigaciones Científicas y Técnicas(CONICET) de la República Argentina.

Apéndice A. 

A.1. Matriz de transformación A.1. Matriz de transformación H A α {\textstyle {\boldsymbol {H}} {A}^{\alpha }}

Las coordenadas nodales xα definidas en una base global en , pueden ser referidas a una base local en para cada elemento no mortar de la siguiente manera

( 51)

donde es un punto que pertenece a un elemento no-mortar k   , por ejemplo, uno de sus vértices. De esta manera, las coordenadas nodales quedan definidas con dos componentes. Los versores y son calculados por medio de las diagonales para cada elemento no-mortar de la siguiente manera,

( 52)

y

( 53)

con

( 54)

ver figura 17 . Derivando la ecuación (51) se obtiene,

( 55)

donde Δ''Φ es el vector variación de coordenadas generalizadas y una matriz que permite referir las componentes de (definidas en la base local ), al vector Δ''Φ referido a la base global en .


Definición del plano de proyección.


Figura 17.

Definición del plano de proyección.

A.2. Variación de la normal

La linealización de puede ser obtenida a partir de la ecuación (52) como se muestra a continuación,

( 56)

donde

( 57)

La primera variación del vector normal al plano de proyección p se obtiene por medio de la linealización de la ecuación (54) como

( 58)

con A definido de la siguiente manera,

( 59)

el operador aplicado a un vector u retorna la matriz antisimétrica tal que , para cualquier vector arbitrario . Por último, resta calcular la variación del versor , obtenido a partir de la ecuación (53) ,

( 60)

donde y son los operadores rotacionales antisimétricos asociados al vector normal n y a , respectivamente. Reemplazando por las ecuaciones (56 ,58 ,60 ) en la ecuación (55) , obtenemos la matriz definida como

( 61)

donde

( 62)

Las matrices AI , AII , AIII y AIV corresponden a submatrices de A de la ecuación (59)

( 63)

A.3. Intersección de dos rectas

Para la utilización del algoritmo de intersección de superficies en el plano, se utilizará la ecuación de la recta definida en y en forma paramétrica. Los segmentos y quedan definidos por la resta de los puntos los puntos: a  − b y c  − d , respectivamente, ver figura 18 .


Intersección entre dos segmentos en el plano.


Figura 18.

Intersección entre dos segmentos en el plano.

El punto de intersección entre y queda expresado por,

( 64)

o bien por,

( 65)

donde s y t son escalares que varían entre cero y uno y son denominados parámetros   de la recta paramétrica. Un punto de intersección entre los segmentos y , queda definido por los valores de s y t que hacen que Qint (s ) = Pint (t ). La solución de este sistema de ecuaciones permite obtener los parámetros buscados,

( 66)

Un tratamiento especial se requiere para el caso en que el denominador D sea igual a cero, ver por ejemplo [32] .

La linealización de la ecuación (64) no presenta mayores dificultades, aunque es algo laboriosa. En forma genérica,

( 67)

donde la matriz es función de la coordenadas de los puntos a , b , c y d .

A.4. La matriz A.4. La matriz D K L P {\textstyle {\boldsymbol {D}} {KL}^{P}}

La definición de la matriz , que relaciona la variación de las coordenadas de los nodos de cada triángulo del polígono con la variación del vector de coordenadas nodales , puede ser escrita de la siguiente manera,

( 68)

El centro geométrico del polígono queda definido por el punto,

( 69)

donde son las variaciones de los vértices de cada triángulo P , ver figura 19 .


Notación utilizada para los cuerpos en contacto.


Figura 19.

Notación utilizada para los cuerpos en contacto.

La matriz se define en función de cómo se produce la intersección entre los elementos no-mortar y mortar . El caso más sencillo es cuando un nodo del triángulo P   coincide con el vértice de un elemento o , entonces

( 70)

y la matriz , estará formada por unos y ceros en las filas y columnas correspondientes al grado de libertad del vértice . Este caso se detalla en la figura 19 , donde el nodo del triángulo P   , coincide con el nodo del elemento mortar . Una situación más compleja se presenta cuando existe intersección entro dos lados de los segmentos k y l que definen un nodo del triángulo P   . Tal es el caso de la intersección entre los segmentos y en el punto de la figura 19 . Utilizando la ecuación (67) para intersección de segmentos; ver sección A.3 ; la matriz se llenará con los valores correspondientes a la matriz en las filas y columnas definidas por los grados de libertad de los nodos, , , y , de l y k respectivamente.

References

  1. [1] P. Gamez-Montero, F. Zárate, M. Sánchez, R. Castilla, E. Codina; El problema del contacto en bombas de engranajes de perfil troncoidal; Rev. Int. Mét. Num. Cál. Dis. Ing., 21 (2005), pp. 213–229
  2. [2] F. Flores; Un algoritmo de contacto para el análisis explícito de procesos de embutición; Rev. Int. Mét. Num. Cál. Dis. Ing., 16 (2000), pp. 421–432
  3. [3] J.J. Madge, S.B. Leen, I.R. McColl, P.H. Shipway; Contact-evolution based prediction of fretting fatigue life: Effect of slip amplitude; Wear, 262 (2007), pp. 1159–1170
  4. [4] H. Parisch; A consistent tangent stiffness matrix for three-dimensional non-linear contact analysis; Int. J. Numer. Meth. Engng., 28 (1989), pp. 1803–1812
  5. [5] P. Papadopoulos, R.L. Taylor, Technical Report UCB/ SEMM Report 90/18, University of California at Berkeley, (1990).
  6. [6] N. El-Abbasi, K.J. Bathe; Stability and patch test performance of contact discretizations and a new solution algorithm; Comput. Struct., 79 (2001), pp. 1473–1486
  7. [7] F. Brezzi, M. Fortin; Mixed and Hybrid Finite Element Methods; Springer Verlag, New York (1991)
  8. [8] M.C. Oliveira, J.L. Alves, L.F. Menezes; Algorithms and strategies for treatment of large deformation frictional contact in the numerical simulation of deep drawing process; Arch. Comput. Methods Eng., 15 (2008), pp. 113–162
  9. [9] B. Wohlmuth; Discretization Methods and Iterative Solvers Based on Domain Decomposition; Springer (2001)
  10. [10] C.R. Dohrmann, S.W. Key, M.W. Heinstein; Methods for connecting dissimilar three-dimensional finite element meshes; Int. J. Numer. Meth. Engng., 47 (2000), pp. 1057–1080
  11. [11] C. Kim, R.D. Lazarov, J.E. Pasciak, P.S. Vassilevski; Multiplier spaces for the mortar finite element method in three dimensions; SIAM J. Num. Anal., 38 (2001), pp. 519–538
  12. [12] K.C. Park, C.A. Felippa; A simple algortihm for localized construction of non-matching structural interfaces; Int. J. Numer. Meth. Engng., 53 (2002), pp. 2117–2142
  13. [13] X. Chen, T. Hisada; Development of a finite element contact analysis algorithm to pass the patch test; JSME International Journal Series A, 49 (2006), pp. 483–490
  14. [14] J.H. Kim, J.H. Lim, J.H. Lee, S. Im; A new computational approach to contact mechanics using variable-node finite elements; Int. J. Numer. Meth. Engng., 73 (2008), pp. 1966–1988
  15. [15] G. Zavarise, L. De Lorenzis, A modified node-to-segment algorithm passing the contact patch test, Int. J. Numer. Meth. Engng. 79 (2009) 374–416.
  16. [16] P. Papadopoulos, R.L. Taylor; A mixed formulation for the finite element solution of contact problems; Comput. Methods Appl. Mech. Engrg., 50 (1992), pp. 163–180
  17. [17] J.C. Simo, P. Wriggers, R.L. Taylor; A perturbed Lagrangian formulation for the finite element solution of contact problems; Comput. Methods Appl. Math., 50 (1985), pp. 163–180
  18. [18] F. Belgacem, Y. Maday; A spectral element methodology tuned to parallel implementations; Comput. Methods Appl. Mech. Engrg., 67 (1994), pp. 116–159
  19. [19] C. Bernardi, Y. Maday, A.T. Patera; A mortar-finite element formulation for frictional contact problems; Int. J. Numer. Meth. Engng., 48 (2000), pp. 1525–1547
  20. [20] M. Puso, T. Laursen; A mortar segment-to-segment contact method for large deformation solid mechanics; Comput. Methods Appl. Mech. Engrg., 193 (2004), pp. 601–629
  21. [21] M. Puso; A 3D mortar method for solid mechanics; Int. J. Numer. Meth. Engng., 59 (2004), pp. 315–336
  22. [22] M. Puso, T.A. Laursen, J. Solberg; A segment to segment mortar method for quadratic elements and large deformations; Comput. Methods Appl. Mech. Engrg., 197 (2008), pp. 555–566
  23. [23] K.A. Fischer, P. Wriggers; Mortar based frictional contact formulation for higher order interpolations using the moving friction cone; Comput. Methods Appl. Mech. Engng., 195 (2006), pp. 5020–5036
  24. [24] B. Yang, T.A. Laursen; A large deformation mortar formulation of self contact with finite sliding; Comput. Methods Appl. Mech. Engrg., 197 (2008), pp. 756–772
  25. [25] Oofelie Object oriented finite elements led by interactive executor. Open engineering. S.A., 2010. http://www.oofelie.org .
  26. [26] V. Lens, A. Cardona, M. Géradin; Energy preserving time integration for constrained multibody systems; Multibody Syst. Dyn., 11 (2003), pp. 41–61
  27. [27] V. Lens, A. Cardona; An energy preserving/decaying scheme for constrained nonlinear multibody systems; Multibody Syst. Dyn., 18 (2007), pp. 435–470
  28. [28] P. Betsch, P. Steinmann; Conservation properties of a time FE method. Part I: Time stepping schemes for N-body problems; Int. J. Numer. Meth. Engng., 49 (2000), pp. 599–638
  29. [29] P. Betsch, P. Steinmann; Conservation properties of a time FE method. Part II: Time stepping schemes for non-linear elastodynamics; Int. J. Numer. Meth. Engng., 50 (2001), pp. 1931–1955
  30. [30] J.D. Foley, A. Van Dam, S.K. Feiner, J.F. Hughes; Computer Graphics, Principles and Practice; (second edition)Addison-Wesley, Reading (1997)
  31. [31] J. O’Rourke; Computational geometry in C; (2 edition)Cambridge University Press (1990) 1998
  32. [32] SAMCEF. Mecano V13 user manual. Samtech S.A., 2007. http://www.samcef.com .
  33. [33] P. Alart, A. Curnier; A mixed formulation for frictional contact problems prone to Newton like solution methods; Comput. Methods Appl. Mech. Engrg., 92 (1991), pp. 353–375
  34. [34] K.L. Johnson; Contact Mechanics; Cambridge University Press (1987)
Back to Top

Document information

Published on 01/06/12
Accepted on 03/06/11
Submitted on 19/02/11

Volume 28, Issue 2, 2012
DOI: 10.1016/j.rimni.2012.03.001
Licence: Other

Document Score

0

Times cited: 2
Views 32
Recommendations 0

Share this document

claim authorship

Are you one of the authors of this document?