You do not have permission to edit this page, for the following reason:

You are not allowed to execute the action you have requested.


You can view and copy the source of this page.

x
 
1
==Resumen==
2
3
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.
4
5
==Abstract==
6
7
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.
8
9
==Palabras clave==
10
11
Contacto ; Lagrangiano aumentado ; Algoritmo mortar ; Elementos finitos
12
13
==Keywords==
14
15
Contact ; Augmented Lagrangian ; Mortar ; Finite elements
16
17
==1. Introducción==
18
19
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 [[#bib0005|[1]]] , procesos de embutición [[#bib0010|[2]]] , fatiga por contacto [[#bib0015|[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''[[#bib0020|[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 [[#bib0025|[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 [[#bib0030|[6]]]  y no cumplen con la condición de Babuska-Brezzi [[#bib0035|[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  [[#bib0030|[6]]]  and [[#bib0040|[8]]] .      
20
21
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  [[#bib0045|[9]]] , [[#bib0050|[10]]]  and [[#bib0055|[11]]] . En el trabajo de Park y Felippa [[#bib0060|[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 [[#bib0065|[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 [[#bib0070|[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 [[#bib0075|[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.      
22
23
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 [[#bib0080|[16]]] , [[#bib0085|[17]]]  and [[#bib0025|[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 [[#bib0045|[9]]]  and [[#bib0090|[18]]] . Específicamente, el primer trabajo que ha utilizado el método mortar fue el propuesto por Bernardi et al. [[#bib0095|[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 [[#bib0100|[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 [[#bib0105|[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 ''C''<sup>1</sup>  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  [[#bib0110|[22]]] , [[#bib0115|[23]]]  and [[#bib0120|[24]]] .      
24
25
En este trabajo, siguiendo algunas de las ideas presentadas por Puso y Laursen [[#bib0100|[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 [[#bib0100|[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 [[#bib0125|[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.      
26
27
==2. Descripción del problema==
28
29
El movimiento de los cuerpos <math display="inline">B</math><sup>''α''</sup> , con ''α''  = 1, 2 se expresa por el mapeo <math display="inline">{\chi }^{\alpha }:{\Omega }^{\alpha }\times [0,T]\longrightarrow {\mathbb{R}}^3</math> , y la posición actual de las partículas materiales se calcula por '''x'''<sup>''α''</sup>  = ''χ''<sup>''α''</sup> (''X''<sup>''α''</sup> , ''t'' ). A diferencia de los métodos nodo-segmento, en el contacto tipo mortar la porción de frontera en contacto ''Γ''<sub>''c''</sub>  está dada por una intersección de las superficies <math display="inline">{\Gamma }_c^{\alpha }</math> , esto es <math display="inline">{\Gamma }_c={\Gamma }_c^1\cap {\Gamma }_c^2</math> , ver [[#fig0005|figura 1]] . La convención adoptada en este trabajo para la definición de las superficies mortar y no mortar es la siguiente: <math display="inline">{\Gamma }_c^1</math>  denota la superficie no-mortar o esclava, en tanto que <math display="inline">{\Gamma }_c^2</math>  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
30
31
{| class="formulaSCP" style="width: 100%; text-align: center;" 
32
|-
33
| 
34
{| style="text-align: center; margin:auto;" 
35
|-
36
| <math>\boldsymbol{x}^{\alpha }=\sum_{A=1}^{n^{\alpha }}N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })\boldsymbol{x}_A^{\alpha },</math>
37
|}
38
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 1)
39
|}
40
41
donde: <math display="inline">\boldsymbol{x}^{\alpha }\in {\Gamma }_c^{\alpha }\rightarrow {\mathbb{R}}^3</math> , <math display="inline">\boldsymbol{x}_A^{\alpha }\in {\Gamma }_c^{\alpha }\rightarrow {\mathbb{R}}^3</math> , ''n''<sup>''α''</sup>  es el número de nodos de la malla en <math display="inline">{\Gamma }_c^{\alpha }</math>  y <math display="inline">N_A^{\alpha }:{\Gamma }_c^{\alpha }\rightarrow \mathbb{R}</math>  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.
42
43
<span id='fig0005'></span>
44
45
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
46
|-
47
|
48
49
50
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr1.jpg|center|488px|Notación utilizada en el método mortar para los cuerpos en contacto.]]
51
52
53
|-
54
| <span style="text-align: center; font-size: 75%;">
55
56
Figura 1.
57
58
Notación utilizada en el método mortar para los cuerpos en contacto.
59
60
</span>
61
|}
62
63
El vector de coordenadas nodales en <math display="inline">{\mathbb{R}}^3</math>  para las superficies de contacto se define de la siguiente manera
64
65
<span id='eq0010'></span>
66
{| class="formulaSCP" style="width: 100%; text-align: center;" 
67
|-
68
| 
69
{| style="text-align: center; margin:auto;" 
70
|-
71
| <math>\boldsymbol{\Phi }=\left[\begin{array}{c}
72
\boldsymbol{x}_1^1\\
73
\boldsymbol{x}_2^1\\
74
\vdots \\
75
\boldsymbol{x}_n^1\\
76
\boldsymbol{x}_1^2\\
77
\boldsymbol{x}_2^2\\
78
\vdots \\
79
\boldsymbol{x}_n^2\\
80
81
\end{array}\right].</math>
82
|}
83
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 2)
84
|}
85
86
Notar que '''Φ'''  se ordena de forma tal que en las primeras componentes se encuentran las coordenadas de los nodos referidos a la frontera <math display="inline">{\Gamma }_c^1</math>  (no mortar) y luego las correspondientes a <math display="inline">{\Gamma }_c^2</math>  (mortar).      
87
88
==3. Trabajo virtual asociado al contacto==
89
90
Cuando los cuerpos <math display="inline">B</math><sup>1</sup>  y <math display="inline">B</math><sup>2</sup>  interactúan mecánicamente sobre la superficie de contacto, el trabajo virtual asociado al contacto queda definido por
91
92
<span id='eq0015'></span>
93
{| class="formulaSCP" style="width: 100%; text-align: center;" 
94
|-
95
| 
96
{| style="text-align: center; margin:auto;" 
97
|-
98
| <math>\delta {\Pi }^c=\sum_{\alpha =1}^2{\int }_{{\Gamma }_c^{\alpha }}\boldsymbol{t}^{\alpha }\cdot \delta \boldsymbol{x}^{\alpha }\quad d{\Gamma }_c^{\alpha }=</math><math>\delta \boldsymbol{\Phi }\cdot \boldsymbol{F},</math>
99
|}
100
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 3)
101
|}
102
103
donde '''''t'''''<sup>''α''</sup>  denota el vector tracción de Cauchy. Asumiendo que existe conservación de la cantidad de movimiento lineal en la interfase de contacto, <math display="inline">\boldsymbol{t}^1\quad d{\Gamma }_c^1=</math><math>-\boldsymbol{t}^2\quad d{\Gamma }_c^2</math> ; y que '''''x'''''<sup>1</sup>  − '''''x'''''<sup>2</sup>  ≈ 0, la ecuación [[#eq0015|(3)]]  puede ser escrita como
104
105
<span id='eq0020'></span>
106
{| class="formulaSCP" style="width: 100%; text-align: center;" 
107
|-
108
| 
109
{| style="text-align: center; margin:auto;" 
110
|-
111
| <math>\delta {\Pi }^c={\int }_{{\Gamma }_c^1}\boldsymbol{t}^1\cdot (\delta \boldsymbol{x}^1-</math><math>\delta \boldsymbol{x}^2)\quad d{\Gamma }_c^1=\delta \boldsymbol{\Phi }\cdot F.</math>
112
|}
113
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 4)
114
|}
115
116
Utilizando las siguientes parametrizaciones para las superficies de contacto y el vector tracción
117
118
{| class="formulaSCP" style="width: 100%; text-align: center;" 
119
|-
120
| 
121
{| style="text-align: center; margin:auto;" 
122
|-
123
| <math>\boldsymbol{x}^1=\sum_{B=1}^{n^1}N_B^1({\boldsymbol{\xi }}^1)\boldsymbol{x}_B^1,</math>
124
|-
125
|<math>\boldsymbol{x}^2=\sum_{C=1}^{n^2}N_C^2({\boldsymbol{\xi }}^2)\boldsymbol{x}_C^2,</math>
126
|-
127
|<math>\boldsymbol{t}=\sum_{A=1}^{n^1}N_A^1({\boldsymbol{\xi }}^1)\boldsymbol{t}_A,</math>
128
|}
129
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 5)
130
|}
131
132
junto con la ecuación [[#eq0020|(4)]] , el principio de los trabajos virtuales asociado al contacto se aproxima de la siguiente manera
133
134
<span id='eq0030'></span>
135
{| class="formulaSCP" style="width: 100%; text-align: center;" 
136
|-
137
| 
138
{| style="text-align: center; margin:auto;" 
139
|-
140
| <math>\delta {\Pi }^c=\sum_{A=1}^{n^1}\sum_{B=1}^{n^1}\boldsymbol{t}_A\cdot {\int }_{{\Gamma }_c^1}N_A^1({\boldsymbol{\xi }}^1)N_B^1({\boldsymbol{\xi }}^1)\quad d{\Gamma }_c^1\quad \delta \boldsymbol{x}_B^1-</math><math></math>
141
|-
142
|<math>\sum_{A=1}^{n^1}\sum_{C=1}^{n^2}\boldsymbol{t}_A\cdot {\int }_{{\Gamma }_c^1}N_A^1({\boldsymbol{\xi }}^1)N_C^2({\boldsymbol{\xi }}^2)\quad d{\Gamma }_c^1\quad \delta \boldsymbol{x}_C^2.</math>
143
|}
144
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 6)
145
|}
146
147
Luego, la ecuación [[#eq0030|(6)]]  puede ser escrita en forma más compacta
148
149
{| class="formulaSCP" style="width: 100%; text-align: center;" 
150
|-
151
| 
152
{| style="text-align: center; margin:auto;" 
153
|-
154
| <math>\delta {\Pi }^c=\sum_{A=1}^{n^1}\boldsymbol{t}_A\cdot \delta \boldsymbol{g}_A,</math>
155
|}
156
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 7)
157
|}
158
159
donde
160
161
{| class="formulaSCP" style="width: 100%; text-align: center;" 
162
|-
163
| 
164
{| style="text-align: center; margin:auto;" 
165
|-
166
| <math>\delta \boldsymbol{g}_A=\sum_{B=1}^{n^1}n_{AB}^1\quad \delta \boldsymbol{x}_B^1-</math><math>\sum_{C=1}^{n^2}n_{AC}^2\quad \delta \boldsymbol{x}_C^2,</math>
167
|}
168
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 8)
169
|}
170
171
denota la primera variación del huelgo o ''gap''  del nodo esclavo ''A'' , y
172
173
<span id='eq0045'></span>
174
{| class="formulaSCP" style="width: 100%; text-align: center;" 
175
|-
176
| 
177
{| style="text-align: center; margin:auto;" 
178
|-
179
| <math>n_{AB}^1={\int }_{{\Gamma }_c^1}N_A^1({\boldsymbol{\xi }}^1)N_B^1({\boldsymbol{\xi }}^1)\quad d{\Gamma }_c^1,</math>
180
|-
181
|<math>n_{AC}^2={\int }_{{\Gamma }_c^1}N_A^1({\boldsymbol{\xi }}^1)N_C^2({\boldsymbol{\xi }}^2)\quad d{\Gamma }_c^1,</math>
182
|}
183
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 9)
184
|}
185
186
son denominados factores de peso.      
187
188
Desarrollando las sumatorias y teniendo en cuenta la notación definida para el vector de coordenadas nodales '''Φ'''  dada por la ecuación [[#eq0010|(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
189
190
<span id='eq0050'></span>
191
{| class="formulaSCP" style="width: 100%; text-align: center;" 
192
|-
193
| 
194
{| style="text-align: center; margin:auto;" 
195
|-
196
| <math>\delta {\Pi }^c=\left[\begin{array}{c}
197
\delta \boldsymbol{x}_1^1\\
198
\delta \boldsymbol{x}_2^1\\
199
\delta \boldsymbol{x}_3^1\\
200
\delta \boldsymbol{x}_4^1\\
201
\delta \boldsymbol{x}_1^2\\
202
\delta \boldsymbol{x}_2^2\\
203
\delta \boldsymbol{x}_3^2\\
204
\delta \boldsymbol{x}_4^2\\
205
206
\end{array}\right]\cdot \left[\begin{array}{c}
207
\sum_{A=1}^{n^1}\boldsymbol{t}_A\quad n_{A1}^1\\
208
\sum_{A=1}^{n^1}\boldsymbol{t}_A\quad n_{A2}^1\\
209
\sum_{A=1}^{n^1}\boldsymbol{t}_A\quad n_{A3}^1\\
210
\sum_{A=1}^{n^1}\boldsymbol{t}_A\quad n_{A4}^1\\
211
\sum_{A=1}^{n^1}-\boldsymbol{t}_A\quad n_{A1}^2\\
212
\sum_{A=1}^{n^1}-\boldsymbol{t}_A\quad n_{A2}^2\\
213
\sum_{A=1}^{n^1}-\boldsymbol{t}_A\quad n_{A3}^2\\
214
\sum_{A=1}^{n^1}-\boldsymbol{t}_A\quad n_{A4}^2\\
215
216
\end{array}\right],</math>
217
|}
218
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 10)
219
|}
220
221
pudiendo extenderse de manera similar a otras topologías de elementos. De la ecuación [[#eq0050|(10)]]  se desprende que el vector de fuerzas internas del contacto para el caso de mallas formadas por elementos hexaedros es:
222
223
{| class="formulaSCP" style="width: 100%; text-align: center;" 
224
|-
225
| 
226
{| style="text-align: center; margin:auto;" 
227
|-
228
| <math>\boldsymbol{F}=\left[\begin{array}{c}
229
\boldsymbol{F}_1^1\\
230
\boldsymbol{F}_2^1\\
231
\boldsymbol{F}_3^1\\
232
\boldsymbol{F}_4^1\\
233
-\boldsymbol{F}_1^2\\
234
-\boldsymbol{F}_2^2\\
235
-\boldsymbol{F}_3^2\\
236
-\boldsymbol{F}_4^2\\
237
238
\end{array}\right]</math>
239
|}
240
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 11)
241
|}
242
243
con
244
245
<span id='eq0060'></span>
246
{| class="formulaSCP" style="width: 100%; text-align: center;" 
247
|-
248
| 
249
{| style="text-align: center; margin:auto;" 
250
|-
251
| <math>\boldsymbol{F}_B^{\alpha }=\sum_{A=1}^{n^1}\boldsymbol{t}_A\quad n_{AB}^{\alpha }.</math>
252
|}
253
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 12)
254
|}
255
256
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 [[#bib0130|[26]]] , [[#bib0135|[27]]] , [[#bib0140|[28]]]  and [[#bib0145|[29]]] . La formulación de contacto mostrada puede adaptarse fácilmente a un esquema de este tipo.      
257
258
==4. Regularización de las restricciones normales==
259
260
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 '''''t'''''<sub>''N''</sub>  y en otra tangencial '''''t'''''<sub>''T''</sub> . 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
261
262
<span id='eq0065'></span>
263
{| class="formulaSCP" style="width: 100%; text-align: center;" 
264
|-
265
| 
266
{| style="text-align: center; margin:auto;" 
267
|-
268
| <math>t_{N_A}\geq 0,\quad \quad g_A\leq 0,\quad \quad t_{N_A}g_A=</math><math>0,</math>
269
|}
270
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 13)
271
|}
272
273
expresadas aquí en forma discreta para cada nodo ''A''  no-mortar. Las ecuaciones  [[#eq0065|(13)]]  representan un proceso de contacto sin fricción, ya que no se ha tenido en cuenta la componente tangencial '''''t'''''<sub>''T''</sub> . La extensión del algoritmo mortar que aquí se presenta a problemas con fricción mediante un ''return mapping''  no resulta dificultosa  [[#bib0115|[23]]] , ya que solo se debe incluir la matriz de fricción que surge de considerar a '''''t'''''<sub>''T''</sub>  como función del desplazamiento tangencial. De esta forma, no hay necesidad de incluir variables adicionales.      
274
275
El huelgo ''g''<sub>''A''</sub>  de un nodo ''A''  no-mortar es: ''g''<sub>''A''</sub>  = '''''g'''''<sub>''A''</sub>  · '''''ν'''''<sub>''A''</sub> , donde '''''ν'''''<sub>''A''</sub>  es el vector normal promedio en un nodo no-mortar ''A''  tal como se muestra en la  [[#fig0010|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 [[#eq0065|(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
276
277
<span id='eq0070'></span>
278
{| class="formulaSCP" style="width: 100%; text-align: center;" 
279
|-
280
| 
281
{| style="text-align: center; margin:auto;" 
282
|-
283
| <math>t_{N_A}={\kappa }_A\quad \boldsymbol{g}_A\cdot {\boldsymbol{\nu }}_A,\quad \quad (sin\quad suma\quad en\quad \mbox{ A})</math>
284
|}
285
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 14)
286
|}
287
288
donde
289
290
<span id='eq0075'></span>
291
{| class="formulaSCP" style="width: 100%; text-align: center;" 
292
|-
293
| 
294
{| style="text-align: center; margin:auto;" 
295
|-
296
| <math>\boldsymbol{g}_A=\sum_{B=1}^{n^1}n_{AB}^1\quad \boldsymbol{x}_B^1-</math><math>\sum_{C=1}^{n^2}n_{AC}^2\quad \boldsymbol{x}_C^2,</math>
297
|}
298
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 15)
299
|}
300
301
y ''κ''<sub>''A''</sub>  es un factor definido como
302
303
<span id='eq0080'></span>
304
{| class="formulaSCP" style="width: 100%; text-align: center;" 
305
|-
306
| 
307
{| style="text-align: center; margin:auto;" 
308
|-
309
| <math>{\kappa }_A=\frac{\varepsilon }{{\sum }_Dn_{AD}^1},</math>
310
|}
311
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 16)
312
|}
313
314
siendo ''ɛ''  un coeficiente de penalidad propuesto por el usuario. En la ecuación  [[#eq0080|(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 10''Eh'' , 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 ( [[#eq0060|12]] ,[[#eq0070|14]] ), el vector de fuerzas internas resulta en
315
316
<span id='eq0085'></span>
317
{| class="formulaSCP" style="width: 100%; text-align: center;" 
318
|-
319
| 
320
{| style="text-align: center; margin:auto;" 
321
|-
322
| <math>\boldsymbol{F}_B^{\alpha }=\sum_{A=1}^{n^1}\quad {\kappa }_A\quad n_{AB}^{\alpha }\left({\boldsymbol{\nu }}_A\otimes {\boldsymbol{\nu }}_A\right)\boldsymbol{g}_A.</math>
323
|}
324
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 17)
325
|}
326
327
<span id='fig0010'></span>
328
329
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
330
|-
331
|
332
333
334
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr2.jpg|center|281px|Vector normal promedio νA definido por los elementos: (J−1), (J) y (J+1) en el ...]]
335
336
337
|-
338
| <span style="text-align: center; font-size: 75%;">
339
340
Figura 2.
341
342
Vector normal promedio '''''ν'''''<sub>''A''</sub>  definido por los elementos: (''J''  − 1), (''J'' ) y (''J''  + 1) en el nodo ''A'' .                  
343
344
</span>
345
|}
346
347
==5. Cómputo de los factores de peso. Proyecciones==
348
349
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
350
351
<span id='eq0090'></span>
352
{| class="formulaSCP" style="width: 100%; text-align: center;" 
353
|-
354
| 
355
{| style="text-align: center; margin:auto;" 
356
|-
357
| <math>\boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
358
{\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
359
{\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
360
361
\end{array}\right],</math>
362
|}
363
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 18)
364
|}
365
366
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. Así, las coordenadas <math display="inline">\boldsymbol{y}_A^{\alpha }</math>  de los nodos no-mortar y mortar quedan definidas con solo 2 componentes.
367
368
<span id='fig0015'></span>
369
370
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
371
|-
372
|
373
374
375
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr3.jpg|center|491px|(a) Elemento no-mortar k, elemento mortar l, plano de proyección p, base ...]]
376
377
378
|-
379
| <span style="text-align: center; font-size: 75%;">
380
381
Figura 3.
382
383
(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.                  
384
385
</span>
386
|}
387
388
===5.1. Algoritmo para el cálculo de los factores de peso===
389
390
En esta sección se describe el algoritmo utilizado para el cómputo de los factores de peso <math display="inline">n_{AB}^{\alpha }</math> .
391
* '''Para cada elemento no-mortar ''k''''' ,
392
* ''Formar el plano'''''''p'''''''con base  ''<math display="inline">V</math>''.''
393
* ''Proyectar las coordenadas de los nodos no-mortar  ''<math display="inline">\boldsymbol{x}_A^1\rightarrow {\mathbb{R}}^3</math>''en el plano'''''''p''''''', obteniendo los puntos:  ''<math display="inline">\boldsymbol{y}_A^1\rightarrow {\mathbb{R}}^2\in \tilde{k}</math>'', referido a  ''<math display="inline">V</math>'', ver figura''[[#fig0015|''3'']]''-b.''
394
* '''''Para cada elemento mortar''''''''''l''''' ,
395
* ''Proyectar las coordenadas de los nodos mortar  ''<math display="inline">\boldsymbol{x}_A^2\rightarrow {\mathbb{R}}^3</math>''en el plano'''''''p''''''', obteniendo los puntos:  ''<math display="inline">\boldsymbol{y}_A^2\rightarrow {\mathbb{R}}^2\in \tilde{l}</math>'', referido a  ''<math display="inline">V</math>''.''
396
* ''Utilizar el algoritmo de intersección para formar un polígono  ''<math display="inline">P=(\tilde{k}\cap \tilde{l})\subset \boldsymbol{p}</math>'', ver figura''[[#fig0015|''3'']]''-c'' .                                                  
397
* ''Ubicar el centro geométrico  ''<math display="inline">\boldsymbol{y}_P^C</math>''del polígono  ''<math display="inline">P</math> .                                                  
398
* ''Formar n''<sup>''P''</sup>''triángulos de vértices  ''<math display="inline">\boldsymbol{y}_I^P\in P</math>''y  ''<math display="inline">\boldsymbol{y}_P^C</math>'', ver figura''[[#fig0015|''3'']]''-d.''
399
* ''Cada triángulo P admite la siguiente parametrización:''
400
401
{| class="formulaSCP" style="width: 100%; text-align: center;" 
402
|-
403
| 
404
{| style="text-align: center; margin:auto;" 
405
|-
406
| <math>\boldsymbol{y}^P=\sum_{I=1}^3N_I^P(\boldsymbol{\xi })\quad \boldsymbol{y}_I^P,</math>
407
|}
408
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 19)
409
|}
410
411
''donde N''<sub>''I''</sub>''son las funciones de forma clásicas para un triángulo.''
412
* ''Utilizar los n''<sub>''g''</sub>''puntos de Gauss, conocidos para un triángulo lineal, y ubicarlos en cada triángulo P.''
413
* ''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  ''<math display="inline">{\boldsymbol{\xi }}_g^{\alpha }</math>''como''
414
415
{| class="formulaSCP" style="width: 100%; text-align: center;" 
416
|-
417
| 
418
{| style="text-align: center; margin:auto;" 
419
|-
420
| <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>
421
|}
422
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 20)
423
|}
424
425
''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).''
426
* ''Para cada triángulo P, calcular los factores de peso definidos de la siguiente manera:''
427
428
{| class="formulaSCP" style="width: 100%; text-align: center;" 
429
|-
430
| 
431
{| style="text-align: center; margin:auto;" 
432
|-
433
| <math>n_{AB}^{1,P}=2\quad A^P\quad \sum_{g=1}^{n_g}N_A^1({\boldsymbol{\xi }}_g^1)N_B^1({\boldsymbol{\xi }}_g^1),</math>
434
|-
435
|<math>n_{AC}^{2,P}=2\quad A^P\quad \sum_{g=1}^{n_g}N_A^1({\boldsymbol{\xi }}_g^1)N_C^2({\boldsymbol{\xi }}_g^2),</math>
436
|}
437
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 21)
438
|}
439
440
''donde A''<sup>''P''</sup>''es el área de cada triángulo P.''
441
* ''Finalmente sumar todas las contribuciones  ''<math display="inline">n_{AB}^{\alpha ,P}</math>''de cada triángulo'' ,
442
443
{| class="formulaSCP" style="width: 100%; text-align: center;" 
444
|-
445
| 
446
{| style="text-align: center; margin:auto;" 
447
|-
448
| <math>n_{AB}^1=n_{AB}^1+\sum_{p=1}^{n_p}n_{AB}^{1,P},</math>
449
|-
450
|<math>n_{AC}^1=n_{AC}^1+\sum_{p=1}^{n_p}n_{AC}^{1,P}.</math>
451
|}
452
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 22)
453
|}
454
455
==6. Matriz tangente==
456
457
La matriz tangente se obtiene a partir de la linealización del vector de fuerzas internas presentado en la ecuación [[#eq0085|(17)]] ,
458
459
<span id='eq0115'></span>
460
{| class="formulaSCP" style="width: 100%; text-align: center;" 
461
|-
462
| 
463
{| style="text-align: center; margin:auto;" 
464
|-
465
| <math>\Delta \boldsymbol{F}_B^{\alpha }=t_{N_A}{\boldsymbol{\nu }}_A\Delta n_{AB}^{\alpha }+</math><math>{\kappa }_An_{AB}^{\alpha }\left({\boldsymbol{\nu }}_A\otimes {\boldsymbol{\nu }}_A\right)\Delta \boldsymbol{g}_A</math>
466
|-
467
|<math>+{\kappa }_An_{AB}^{\alpha }\left(t_{N_A}\boldsymbol{I}+\right. </math><math>\left. {\boldsymbol{\nu }}_A\otimes \boldsymbol{g}_A\right)\Delta {\boldsymbol{\nu }}_A.</math>
468
|}
469
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 23)
470
|}
471
472
La linealización del huelgo '''''g'''''<sub>''A''</sub>  de la ecuación [[#eq0115|(23)]]  se obtiene utilizando las ecuaciones ([[#eq0045|9]] ,[[#eq0075|15]] ) y resulta en
473
474
<span id='eq0120'></span>
475
{| class="formulaSCP" style="width: 100%; text-align: center;" 
476
|-
477
| 
478
{| style="text-align: center; margin:auto;" 
479
|-
480
| <math>\Delta \boldsymbol{g}_A=\sum_{B=1}^{n^1}\left(n_{AB}^1\Delta \boldsymbol{x}_B^1+\right. </math><math>\left. \Delta n_{AB}^1\boldsymbol{x}_B^1\right)</math>
481
|-
482
|<math>-\sum_{C=1}^{n^2}\left(n_{AC}^2\Delta \boldsymbol{x}_C^2+\right. </math><math>\left. \Delta n_{AC}^2\boldsymbol{x}_C^2\right).</math>
483
|}
484
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 24)
485
|}
486
487
Luego, para la derivación de <math display="inline">n_{AB}^{\alpha }</math> , se requiere derivar los factores de peso de cada triángulo ''P  ''  (<math display="inline">n_{AB}^{\alpha ,P}</math> ), y ensamblar cada contribución en <math display="inline">n_{AB}^{\alpha }</math> . Utilizando la ecuación [[#eq0045|(9)]] , la linealización de los factores de peso <math display="inline">n_{AB}^{\alpha ,P}</math>  puede ser escrita de la siguiente manera
488
489
<span id='eq0125'></span>
490
{| class="formulaSCP" style="width: 100%; text-align: center;" 
491
|-
492
| 
493
{| style="text-align: center; margin:auto;" 
494
|-
495
| <math>\Delta n_{AB}^{\alpha ,P}=\Delta {\int }_{{\Gamma }_c^{\alpha }}N_A^1({\boldsymbol{\xi }}^1)N_B^{\alpha }({\boldsymbol{\xi }}^{\alpha })\quad d{\Gamma }_c^1</math>
496
|-
497
|<math>=\sum_{g=1}^{ng}\Delta N_A^1({\boldsymbol{\xi }}^1)N_B^{\alpha }({\boldsymbol{\xi }}^{\alpha })+</math><math></math>
498
|-
499
|<math>N_A^1({\boldsymbol{\xi }}^1)\Delta N_B^{\alpha }({\boldsymbol{\xi }}^{\alpha })w_gA^P+</math><math>n_{AB}^{\alpha ,p}\Delta A^P/A^P.</math>
500
|}
501
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 25)
502
|}
503
504
donde <math display="inline">w_g</math>  son los factores de peso. Para completar el desarrollo de la ecuación [[#eq0125|(25)]] , es necesario definir las linealizaciones de las funciones de forma <math display="inline">N_A^{\alpha }</math>  y la correspondiente al área de cada triángulo ''A''<sup>''P''</sup>  del polígono <math display="inline">P</math> .      
505
506
<span id='sec0040'></span>
507
===6.1. Funciones de forma===
508
509
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
510
511
<span id='eq0130'></span>
512
{| class="formulaSCP" style="width: 100%; text-align: center;" 
513
|-
514
| 
515
{| style="text-align: center; margin:auto;" 
516
|-
517
| <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>
518
|}
519
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 26)
520
|}
521
522
Tomando la derivada parcial de las funciones de forma en la dirección <math display="inline">{\xi }_{\beta }^{\alpha }</math> , con ''β''  = 1, 2,
523
524
<span id='eq0135'></span>
525
{| class="formulaSCP" style="width: 100%; text-align: center;" 
526
|-
527
| 
528
{| style="text-align: center; margin:auto;" 
529
|-
530
| <math>\Delta N_A^{\alpha }=\frac{\partial N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })}{\partial {\xi }_{\beta }^{\alpha }}\Delta {\xi }_{\beta }^{\alpha }=</math><math>N_{A,\beta }^{\alpha }\Delta {\boldsymbol{\xi }}_{\beta }^{\alpha },</math>
531
|}
532
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 27)
533
|}
534
535
y junto con la ecuación [[#eq0130|(26)]] , la variación de las coordenadas '''''ξ'''''<sup>''α''</sup>  para la superficie no-mortar o mortar en la dirección ''β''  se obtiene como
536
537
<span id='eq0140'></span>
538
{| class="formulaSCP" style="width: 100%; text-align: center;" 
539
|-
540
| 
541
{| style="text-align: center; margin:auto;" 
542
|-
543
| <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>
544
|}
545
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 28)
546
|}
547
548
donde
549
550
{| class="formulaSCP" style="width: 100%; text-align: center;" 
551
|-
552
| 
553
{| style="text-align: center; margin:auto;" 
554
|-
555
| <math>{{\boldsymbol{\tau }}_{\beta }^{\alpha }}^T={\left[\frac{\partial N_A^{\alpha }({\boldsymbol{\xi }}^{\alpha })}{\partial {\xi }_{\beta }^{\alpha }}\boldsymbol{y}_A^{\alpha }\right]}^{-1}.</math>
556
|}
557
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 29)
558
|}
559
560
Notar que para la obtención de los coeficientes <math display="inline">{{\boldsymbol{\tau }}_{\beta }^{\alpha }}^T</math> , 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 ([[#eq0135|27]] ,[[#eq0140|28]] ) la variación de la función de forma evaluada en los puntos de Gauss <math display="inline">{\boldsymbol{\xi }}_g^{\alpha }</math>  puede ser escrita como
561
562
<span id='eq0150'></span>
563
{| class="formulaSCP" style="width: 100%; text-align: center;" 
564
|-
565
| 
566
{| style="text-align: center; margin:auto;" 
567
|-
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>
569
|-
570
|<math>\sum_{A=1}^{3\overset{\textasciiacute}{o}4}N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\Delta \boldsymbol{y}_A^P.</math>
571
|}
572
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 30)
573
|}
574
575
La ecuación [[#eq0150|(30)]]  depende de las variaciones de las coordenadas de los nodos de cada triángulo ''P  '' , (<math display="inline">\boldsymbol{y}_I^P\in P</math> ), y también de las variaciones de las coordenadas nodales proyectadas de los elementos no-mortar y mortar, (<math display="inline">\boldsymbol{y}_A^P\in P</math> ). 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, <math display="inline">\boldsymbol{x}_A^{\alpha }\quad \in {\mathbb{R}}^3</math> , y ordenados según el vector '''''Φ'''''  descrito en la ecuación [[#eq0010|(2)]] .      
576
577
Se define <math display="inline">\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}</math>  al vector de coordenadas nodales de 2 componentes de los elementos <math display="inline">\tilde{k}</math>  y <math display="inline">\tilde{l}</math>  referido a la base <math display="inline">V</math> ,
578
579
{| class="formulaSCP" style="width: 100%; text-align: center;" 
580
|-
581
| 
582
{| style="text-align: center; margin:auto;" 
583
|-
584
| <math>\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}=\left[\begin{array}{c}
585
\boldsymbol{y}_1^1\\
586
\boldsymbol{y}_2^1\\
587
\boldsymbol{y}_3^1\\
588
\boldsymbol{y}_4^1\\
589
\boldsymbol{y}_1^2\\
590
\boldsymbol{y}_2^2\\
591
\boldsymbol{y}_3^2\\
592
\boldsymbol{y}_4^2\\
593
594
\end{array}\right],</math>
595
|}
596
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 31)
597
|}
598
599
en forma similar se procede para otras topologías de elementos.      
600
601
La matriz que relaciona las variaciones de las coordenadas de los nodos de cada triángulo del polígono <math display="inline">P</math>  con el vector de coordenadas nodales <math display="inline">\overset{\mbox{ˆ}}{\Phi }</math>  es denominada <math display="inline">\boldsymbol{D}_{IK}^P</math> . Lo expresado anteriormente resulta en la siguiente expresión genérica,
602
603
<span id='eq0160'></span>
604
{| class="formulaSCP" style="width: 100%; text-align: center;" 
605
|-
606
| 
607
{| style="text-align: center; margin:auto;" 
608
|-
609
| <math>\Delta \boldsymbol{y}_I^P=\boldsymbol{D}_{IK}^P\Delta {\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}}_{KL}=</math><math>\boldsymbol{D}_{IK}^{P1}\Delta \boldsymbol{y}_K^1+</math><math>\boldsymbol{D}_{IK}^{P2}\Delta \boldsymbol{y}_K^2,</math>
610
|}
611
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 32)
612
|}
613
614
donde la obtención de <math display="inline">\boldsymbol{D}_{IK}^P</math>  se detalla en el apéndice. Los vectores <math display="inline">\boldsymbol{y}_K^1</math>  y <math display="inline">\boldsymbol{y}_L^2</math>  denotan las coordenadas nodales de los elementos no-mortar y mortar, respectivamente, <math display="inline">\boldsymbol{D}_{IK}^{P1}</math>  y <math display="inline">\boldsymbol{D}_{IK}^{P2}</math>  son particiones de la matriz <math display="inline">\boldsymbol{D}_{IK}^P</math>  correspondientes a los lados no-mortar y mortar, respectivamente. Con la ecuación [[#eq0160|(32)]] , la linealización de las funciones de forma de la ecuación [[#eq0135|(27)]]  referida a las coordenadas de los nodos de los elementos no-mortar y mortar puede escribirse como
615
616
{| class="formulaSCP" style="width: 100%; text-align: center;" 
617
|-
618
| 
619
{| style="text-align: center; margin:auto;" 
620
|-
621
| <math>\Delta N_A^{\alpha }\left({\boldsymbol{\xi }}_g^{\alpha }\right)=</math><math>\boldsymbol{P}_A^{\alpha ,P}\left({\boldsymbol{\xi }}_g^{\alpha }\right)\cdot \Delta {\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}}_{KL},</math>
622
|}
623
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 33)
624
|}
625
626
donde
627
628
<span id='eq0170'></span>
629
{| class="formulaSCP" style="width: 100%; text-align: center;" 
630
|-
631
| 
632
{| style="text-align: center; margin:auto;" 
633
|-
634
| <math>\boldsymbol{P}_A^{1,P}({\boldsymbol{\xi }}_g^1)=N_{A,\beta }^1\quad \left[(N_I^P({\boldsymbol{\xi }}^1)\boldsymbol{D}_{IK}^{P1}-\right. </math><math>\left. N_K^1({\boldsymbol{\xi }}_g^1)){{\boldsymbol{\tau }}_{\beta }^1}^T\mid N_I^P({\boldsymbol{\xi }}^1)\boldsymbol{D}_{IL}^{P2}{{\boldsymbol{\tau }}_{\beta }^1}^T\right],</math>
635
|-
636
|<math>\boldsymbol{P}_C^{2,P}({\boldsymbol{\xi }}_g^2)=N_{C,\beta }^2\quad \left[N_I^P({\boldsymbol{\xi }}^1)\boldsymbol{D}_{IL}^{P1}{{\boldsymbol{\tau }}_{\beta }^2}^T\mid (N_I^P({\boldsymbol{\xi }}^1)\boldsymbol{D}_{IK}^{P2}-\right. </math><math>\left. N_K^2({\boldsymbol{\xi }}_g^2)){{\boldsymbol{\tau }}_{\beta }^2}^T\right].</math>
637
|}
638
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 34)
639
|}
640
641
===6.2. Área de los triángulos===
642
643
La variación del área de cada triángulo ''P  ''  que pertenece al polígono <math display="inline">P</math> , es también requerida para completar el desarrollo de la ecuación [[#eq0125|(25)]] . El área de un triángulo ''P''  puede ser calculada con el producto vectorial de sus lados, es decir,
644
645
{| class="formulaSCP" style="width: 100%; text-align: center;" 
646
|-
647
| 
648
{| style="text-align: center; margin:auto;" 
649
|-
650
| <math>A^P=\frac{1}{2}\left\|\left[\left(\boldsymbol{y}_3^P-\right. \right. \right. </math><math>\left. \left. \left. \boldsymbol{y}_1^P\right)\times \left(-\right. \right. \right. </math><math>\left. \left. \left. \boldsymbol{y}_2^P+\boldsymbol{y}_1^P\right)\right]\right\|.</math>
651
|}
652
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 35)
653
|}
654
655
Luego, teniendo en cuenta que cada triángulo pertenece al plano de proyección '''''p''''' , definido por la base <math display="inline">V</math> , la linealización de ''A''<sup>''P''</sup>  puede ser calculada de la siguiente manera
656
657
{| class="formulaSCP" style="width: 100%; text-align: center;" 
658
|-
659
| 
660
{| style="text-align: center; margin:auto;" 
661
|-
662
| <math>\Delta A^P=\frac{1}{2}\left[-Y_{32,2}^P\mid Y_{32,1}^P\mid -\right. </math><math>\left. Y_{13,2}^P\mid Y_{13,1}^P\mid -Y_{21,2}^P\mid Y_{21,1}^P\right]\cdot \left[\begin{array}{c}
663
\Delta \boldsymbol{y}_1^P\\
664
\Delta \boldsymbol{y}_2^P\\
665
\Delta \boldsymbol{y}_3^P\\
666
667
\end{array}\right],</math>
668
|}
669
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 36)
670
|}
671
672
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> .      
673
674
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
675
676
<span id='eq0185'></span>
677
{| class="formulaSCP" style="width: 100%; text-align: center;" 
678
|-
679
| 
680
{| style="text-align: center; margin:auto;" 
681
|-
682
| <math>\frac{\Delta A^P}{A^P}=\boldsymbol{J}^P\boldsymbol{D}_{KL}^P\Delta {\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}}_{KL},</math>
683
|}
684
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 37)
685
|}
686
687
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> .      
688
689
===6.3. Factores de peso===
690
691
La linealización de los factores de peso evaluados en <math display="inline">{\boldsymbol{\xi }}_g^{\alpha }</math>  puede ser calculada con las ecuaciones ([[#eq0125|25]] ,[[#eq0170|34]] ,[[#eq0185|37]] ) como sigue
692
693
<span id='eq0190'></span>
694
{| class="formulaSCP" style="width: 100%; text-align: center;" 
695
|-
696
| 
697
{| style="text-align: center; margin:auto;" 
698
|-
699
| <math>\Delta n_{AB}^{\alpha ,P}=\boldsymbol{P}_{AB}^{\alpha ,P}\cdot \Delta {\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}}_{KL},</math>
700
|}
701
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 38)
702
|}
703
704
con
705
706
<span id='eq0195'></span>
707
{| class="formulaSCP" style="width: 100%; text-align: center;" 
708
|-
709
| 
710
{| style="text-align: center; margin:auto;" 
711
|-
712
| <math>\boldsymbol{P}_{AB}^{\alpha ,P}=\sum_{g=1}^{n_g}N_B^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\quad \boldsymbol{P}_A^{1,P}({\boldsymbol{\xi }}_g^1)+</math><math></math>
713
|-
714
|<math>N_A^{\alpha }({\boldsymbol{\xi }}_g^{\alpha })\boldsymbol{P}_B^{\alpha ,p}({\boldsymbol{\xi }}_g^{\alpha })w_gA^P+</math><math>n_{AB}^{\alpha ,P}\boldsymbol{J}^P\boldsymbol{D}_{KL}^P.</math>
715
|}
716
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 39)
717
|}
718
719
===6.4. Huelgo===
720
721
La variación de la función huelgo '''''g'''''<sub>''A''</sub>  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 [[#eq0120|(24)]]  y las ecuaciones ([[#eq0190|38]] ,[[#eq0195|39]] ), la linealización de '''''g'''''<sub>''A''</sub>  para un triángulo ''P''  puede ser expresada como
722
723
{| class="formulaSCP" style="width: 100%; text-align: center;" 
724
|-
725
| 
726
{| style="text-align: center; margin:auto;" 
727
|-
728
| <math>\Delta \boldsymbol{g}_A^P=\left[\boldsymbol{N}_P+{\overline{\boldsymbol{N}}}_P\right]\Delta {\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}}_{KL},</math>
729
|}
730
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 40)
731
|}
732
733
con
734
735
{| class="formulaSCP" style="width: 100%; text-align: center;" 
736
|-
737
| 
738
{| style="text-align: center; margin:auto;" 
739
|-
740
| <math>\boldsymbol{N}_P=\left[n_{A1}^{1,P}\boldsymbol{I},\ldots n_{A4}^{1,P}\boldsymbol{I},n_{A1}^{2,P}\boldsymbol{I}\ldots n_{A4}^{2,P}\boldsymbol{I}\right],</math>
741
|-
742
|<math>{\overline{\boldsymbol{N}}}_P=\sum_{D=1}^4\left(\boldsymbol{x}_D^1\otimes \boldsymbol{P}_{AD}^{1,P}-\right. </math><math>\left. \boldsymbol{x}_D^2\otimes \boldsymbol{P}_{AD}^{2,P}\right).</math>
743
|}
744
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 41)
745
|}
746
747
===6.5. Vector normal promedio===
748
749
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á '''''ν'''''<sub>''A''</sub>  es calculado de la siguiente manera
750
751
<span id='eq0210'></span>
752
{| class="formulaSCP" style="width: 100%; text-align: center;" 
753
|-
754
| 
755
{| style="text-align: center; margin:auto;" 
756
|-
757
| <math>{\boldsymbol{\nu }}_A=\frac{{\sum }_j^{n_A}\boldsymbol{n}_j}{\parallel \boldsymbol{n}_j\parallel },</math>
758
|}
759
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 42)
760
|}
761
762
(ver [[#fig0010|fig. 2]] ), donde
763
764
<span id='eq0215'></span>
765
{| class="formulaSCP" style="width: 100%; text-align: center;" 
766
|-
767
| 
768
{| style="text-align: center; margin:auto;" 
769
|-
770
| <math>n_j=\frac{\boldsymbol{v}_j\times \boldsymbol{v}_j+1}{\left\|\boldsymbol{v}_j\times \boldsymbol{v}_j+1\right\|}\mbox{.}</math>
771
|}
772
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 43)
773
|}
774
775
Aquí '''''n'''''<sub>''j''</sub>  es el vector normal del elemento no-mortar ''j  '' , y los vectores <math display="inline">\boldsymbol{v}_j</math>  y <math display="inline">\boldsymbol{v}_{j+1}</math>  denotan la diferencia de las coordenadas nodales referidas al nodo ''A'' , esto es,
776
777
{| class="formulaSCP" style="width: 100%; text-align: center;" 
778
|-
779
| 
780
{| style="text-align: center; margin:auto;" 
781
|-
782
| <math>\begin{array}{c}
783
\boldsymbol{v}_{j+1}=\boldsymbol{x}_C^1-\boldsymbol{x}_A^2\\
784
\boldsymbol{v}_{j+1}=\boldsymbol{x}_B^1-\boldsymbol{x}_A^2
785
\end{array}</math>
786
|}
787
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 44)
788
|}
789
790
Véase en la [[#fig0010|figura 2]]  para una mejor interpretación.      
791
792
La linealización de la ecuación [[#eq0210|(42)]]  resulta en
793
794
{| class="formulaSCP" style="width: 100%; text-align: center;" 
795
|-
796
| 
797
{| style="text-align: center; margin:auto;" 
798
|-
799
| <math>\Delta {\boldsymbol{\nu }}_A=\frac{{\sum }_j^{n_A}\Delta \boldsymbol{n}_j(t)\parallel \boldsymbol{n}_j\parallel -{\sum }_j^{n_A}\boldsymbol{n}_j\Delta \parallel \boldsymbol{n}_j\parallel }{\parallel \boldsymbol{n}_j{\parallel }^2}.</math>
800
|}
801
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 45)
802
|}
803
804
Luego, la linealización del vector normal '''''n'''''<sub>''j''</sub>  se obtiene a través de la ecuación [[#eq0215|(43)]]  como
805
806
{| class="formulaSCP" style="width: 100%; text-align: center;" 
807
|-
808
| 
809
{| style="text-align: center; margin:auto;" 
810
|-
811
| <math>\Delta n_j=\frac{\left[I-n_j\otimes n_j\right]}{\left\|v_j\times v_{j+1}\right\|}\overset{\mbox{ˆ}}{\boldsymbol{W}}\Delta {\boldsymbol{\Phi }}_A=</math><math>\boldsymbol{S}\overset{\mbox{ˆ}}{\boldsymbol{W}}\Delta {\boldsymbol{\Phi }}_A</math>
812
|}
813
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 46)
814
|}
815
816
con '''Φ'''<sub>''A''</sub>  el vector de coordenadas '''''x'''''<sup>1</sup>  de los primeros nodos «vecinos» del nodo ''A''  y las matrices,
817
818
{| class="formulaSCP" style="width: 100%; text-align: center;" 
819
|-
820
| 
821
{| style="text-align: center; margin:auto;" 
822
|-
823
| <math>\boldsymbol{S}=\frac{\left[\boldsymbol{I}-\boldsymbol{n}_j\otimes \boldsymbol{n}_j\right]}{\parallel \boldsymbol{v}_j\times \boldsymbol{v}_{j+1}\parallel },</math>
824
|}
825
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 47)
826
|}
827
828
{| class="formulaSCP" style="width: 100%; text-align: center;" 
829
|-
830
| 
831
{| style="text-align: center; margin:auto;" 
832
|-
833
| <math>\overset{\mbox{ˆ}}{\boldsymbol{W}}=\left[{\tilde{\boldsymbol{V}}}_{j+1}\quad \vert \quad -\right. </math><math>\left. {\tilde{\boldsymbol{V}}}_j\quad \vert \quad -\right. </math><math>\left. {\tilde{\boldsymbol{V}}}_{j+1}\quad \vert \quad {\tilde{\boldsymbol{V}}}_j\right],</math>
834
|}
835
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 48)
836
|}
837
838
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
839
840
{| class="formulaSCP" style="width: 100%; text-align: center;" 
841
|-
842
| 
843
{| style="text-align: center; margin:auto;" 
844
|-
845
| <math>\Delta \boldsymbol{v}_A=\frac{1}{\left\|\boldsymbol{n}_j\right\|}[\boldsymbol{S}\overset{\mbox{ˆ}}{\boldsymbol{W}}-</math><math>\boldsymbol{v}_A\boldsymbol{n}_j\boldsymbol{S}\overset{\mbox{ˆ}}{\boldsymbol{W}}]\Delta {\boldsymbol{\Phi }}_A.</math>
846
|}
847
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 49)
848
|}
849
850
===6.6. Vector de coordenadas globales===
851
852
Hasta el momento, las ecuaciones han sido desarrollas teniendo en cuenta una base ortogonal local <math display="inline">V</math>  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 <math display="inline">\Delta \overset{\mbox{ˆ}}{\boldsymbol{\Phi }}</math>  debe referirse a otro vector ''Δ'''''Φ'''  donde cada componente sea la coordenada de un nodo no-mortar o mortar en <math display="inline">{\mathbb{R}}^3</math> . Para ello es necesario realizar algunas operaciones adicionales. Partiendo de la ecuación [[#eq0090|(18)]] , su linealización se calcula como
853
854
{| class="formulaSCP" style="width: 100%; text-align: center;" 
855
|-
856
| 
857
{| style="text-align: center; margin:auto;" 
858
|-
859
| <math>\Delta \boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
860
\Delta {\tilde{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)+{\tilde{\boldsymbol{e}}}_1\cdot \Delta \boldsymbol{x}_A^{\alpha }+{\tilde{\boldsymbol{e}}}_1\cdot \Delta \boldsymbol{x}_0^1\\
861
\Delta {\tilde{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)+{\tilde{\boldsymbol{e}}}_2\cdot \Delta \boldsymbol{x}_A^{\alpha }+{\tilde{\boldsymbol{e}}}_2\cdot \Delta \boldsymbol{x}_0^1\\
862
863
\end{array}\right]</math>
864
|-
865
|<math>=\boldsymbol{H}_A^{\alpha }\Delta {\boldsymbol{\Phi }}_{KL},</math>
866
|}
867
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 50)
868
|}
869
870
donde <math display="inline">\boldsymbol{H}_A^{\alpha }</math>  es una matriz que transforma las coordenadas nodales de la base <math display="inline">V</math>  a la base global definida en <math display="inline">{\mathbb{R}}^3</math> . El trabajo final consiste en multiplicar cada componente del vector <math display="inline">\Delta \overset{\mbox{ˆ}}{\boldsymbol{\Phi }}</math>  por la matriz <math display="inline">\boldsymbol{H}_A^{\alpha }</math>  para obtener las coordenadas nodales en <math display="inline">{\mathbb{R}}^3</math> . En el Apéndice se presenta el desarrollo para la obtención de la matriz <math display="inline">\boldsymbol{H}_A^{\alpha }</math> .      
871
872
==7. Ejemplos numéricos==
873
874
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 [[#bib0165|[32]]] . El algoritmo implementado en este software es del tipo nodo-segmento con multiplicadores de Lagrange [[#bib0170|[33]]] .      
875
876
===7.1. El test de la parcela para contacto. Ejemplo de validación.===
877
878
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 [[#bib0065|[13]]] . Este consiste en 2 bloques en contacto bajo la aplicación de una presión uniforme ''P''  = 5 MPa, ver [[#fig0020|figura 4]] . Las propiedades mecánicas se incluyen en la [[#fig0020|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.
879
880
<span id='fig0020'></span>
881
882
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
883
|-
884
|
885
886
887
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr4.jpg|center|244px|Test de la parcela. Condiciones de borde y propiedades mecánicas.]]
888
889
890
|-
891
| <span style="text-align: center; font-size: 75%;">
892
893
Figura 4.
894
895
Test de la parcela. Condiciones de borde y propiedades mecánicas.
896
897
</span>
898
|}
899
900
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  [[#fig0025|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 [[#fig0025|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 [[#fig0025|figura 5]] -b. Asimismo, la [[#fig0030|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.
901
902
<span id='fig0025'></span>
903
904
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
905
|-
906
|
907
908
909
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr5.jpg|center|527px|Test de la parcela. Comparación del campo de desplazamientos en la dirección Z ...]]
910
911
912
|-
913
| <span style="text-align: center; font-size: 75%;">
914
915
Figura 5.
916
917
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.                  
918
919
</span>
920
|}
921
922
<span id='fig0030'></span>
923
924
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
925
|-
926
|
927
928
929
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr6.jpg|center|348px|Distribución de presión en la interfase de contacto.]]
930
931
932
|-
933
| <span style="text-align: center; font-size: 75%;">
934
935
Figura 6.
936
937
Distribución de presión en la interfase de contacto.
938
939
</span>
940
|}
941
942
===7.2. El test de la parcela para contacto con diferentes topologías de mallas. Ejemplo de validación.===
943
944
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 [[#fig0035|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 [[#fig0035|figura 7]] . Las dimensiones de los cubos como sus propiedades mecánicas se muestran en la misma figura. La [[#fig0040|figura 8]]  muestra el campo de desplazamiento en la dirección ''Z''  y la  [[#fig0045|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.
945
946
<span id='fig0035'></span>
947
948
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
949
|-
950
|
951
952
953
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr7.jpg|center|263px|Distribución de presión en la interfase de contacto.]]
954
955
956
|-
957
| <span style="text-align: center; font-size: 75%;">
958
959
Figura 7.
960
961
Distribución de presión en la interfase de contacto.
962
963
</span>
964
|}
965
966
<span id='fig0040'></span>
967
968
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
969
|-
970
|
971
972
973
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr8.jpg|center|301px|Distribución de desplazamiento en la dirección Z.]]
974
975
976
|-
977
| <span style="text-align: center; font-size: 75%;">
978
979
Figura 8.
980
981
Distribución de desplazamiento en la dirección Z.
982
983
</span>
984
|}
985
986
<span id='fig0045'></span>
987
988
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
989
|-
990
|
991
992
993
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr9.jpg|center|301px|Campo de tensiones en la dirección Z.]]
994
995
996
|-
997
| <span style="text-align: center; font-size: 75%;">
998
999
Figura 9.
1000
1001
Campo de tensiones en la dirección Z.
1002
1003
</span>
1004
|}
1005
1006
===7.3. Contacto de Hertz. Ejemplo de validación===
1007
1008
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 [[#fig0050|figura 10]]  muestra la geometría de la mitad de 2 cilindros elásticos, cada uno de ellos de radio 8. La [[#fig0050|figura 10]]  muestra la malla utilizada junto con las condiciones de borde propuestas y las propiedades mecánicas del material. La [[#fig0055|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 [[#fig0060|figura 12]]  muestra el campo de tensiones en la dirección ''Z''  con continuidad y homogeneidad en la interfase de contacto. La  [[#fig0065|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 [[#bib0175|[35]]] , destacándose buena correlación entre ambos resultados.
1009
1010
<span id='fig0050'></span>
1011
1012
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1013
|-
1014
|
1015
1016
1017
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr10.jpg|center|284px|Contacto de Hertz. Condiciones de borde y propiedades mecánicas.]]
1018
1019
1020
|-
1021
| <span style="text-align: center; font-size: 75%;">
1022
1023
Figura 10.
1024
1025
Contacto de Hertz. Condiciones de borde y propiedades mecánicas.
1026
1027
</span>
1028
|}
1029
1030
<span id='fig0055'></span>
1031
1032
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1033
|-
1034
|
1035
1036
1037
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr11.jpg|center|301px|Contacto entre dos cilindros elásticos. Campo de desplazamientos.]]
1038
1039
1040
|-
1041
| <span style="text-align: center; font-size: 75%;">
1042
1043
Figura 11.
1044
1045
Contacto entre dos cilindros elásticos. Campo de desplazamientos.
1046
1047
</span>
1048
|}
1049
1050
<span id='fig0060'></span>
1051
1052
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1053
|-
1054
|
1055
1056
1057
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr12.jpg|center|301px|Contacto entre dos cilindros elásticos. Distribución de tensiones por nodo en la ...]]
1058
1059
1060
|-
1061
| <span style="text-align: center; font-size: 75%;">
1062
1063
Figura 12.
1064
1065
Contacto entre dos cilindros elásticos. Distribución de tensiones por nodo en la dirección '''''Y''''' .                  
1066
1067
</span>
1068
|}
1069
1070
<span id='fig0065'></span>
1071
1072
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1073
|-
1074
|
1075
1076
1077
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr13.jpg|center|313px|Contacto entre dos cilindros elásticos. Distribución de tensiones por elemento. ...]]
1078
1079
1080
|-
1081
| <span style="text-align: center; font-size: 75%;">
1082
1083
Figura 13.
1084
1085
Contacto entre dos cilindros elásticos. Distribución de tensiones por elemento. Comparación con solución analítica de Hertz.
1086
1087
</span>
1088
|}
1089
1090
===7.4. Ejemplo de aplicación. Contacto entre una válvula de motor de combustión interna y el asiento===
1091
1092
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.
1093
1094
En la [[#fig0070|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 [[#fig0075|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 [[#fig0075|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 [[#fig0075|figura 15]] -b. Para una comparación cuantitativa más precisa, en la [[#fig0080|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.
1095
1096
<span id='fig0070'></span>
1097
1098
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1099
|-
1100
|
1101
1102
1103
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr14.jpg|center|354px|Válvula de motor de combustión interna. Condiciones de borde y propiedades ...]]
1104
1105
1106
|-
1107
| <span style="text-align: center; font-size: 75%;">
1108
1109
Figura 14.
1110
1111
Válvula de motor de combustión interna. Condiciones de borde y propiedades mecánicas.
1112
1113
</span>
1114
|}
1115
1116
<span id='fig0075'></span>
1117
1118
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1119
|-
1120
|
1121
1122
1123
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr15.jpg|center|301px|Distribución de tensiones en la dirección Z en una válvula de motor de ...]]
1124
1125
1126
|-
1127
| <span style="text-align: center; font-size: 75%;">
1128
1129
Figura 15.
1130
1131
Distribución de tensiones en la dirección ''Z''  en una válvula de motor de combustión interna con una malla de hexahedros.                  
1132
1133
</span>
1134
|}
1135
1136
<span id='fig0080'></span>
1137
1138
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1139
|-
1140
|
1141
1142
1143
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr16.jpg|center|338px|Distribución de tensiones por elemento en la zona de contacto para el ejemplo de ...]]
1144
1145
1146
|-
1147
| <span style="text-align: center; font-size: 75%;">
1148
1149
Figura 16.
1150
1151
Distribución de tensiones por elemento en la zona de contacto para el ejemplo de la válvula de motor de combustión interna.
1152
1153
</span>
1154
|}
1155
1156
==8. Conclusiones==
1157
1158
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:
1159
* 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 [[#bib0060|[12]]] , Kim et al. [[#bib0070|[14]]]  o Zavarise y Lorenzis [[#bib0075|[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.                          
1160
* En este trabajo se propone una variante en la definición del factor de penalidad, ver ecuación [[#eq0080|(16)]] , la cual colabora notablemente a la convergencia de la solución.                          
1161
* 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 ([[#sec0040|6.1]] ).                          
1162
* Para el cómputo de la intersección de los elementos no mortar y mortar que forman el polígono de integración <math display="inline">P</math> , 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.                          
1163
* 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.
1164
1165
==Agradecimientos==
1166
1167
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.
1168
1169
==Apéndice A. ==
1170
1171
==A.1. Matriz de transformación <math display="inline">\boldsymbol{H}_A^{\alpha }</math>==
1172
1173
Las coordenadas nodales '''''x'''''<sup>''α''</sup>  definidas en una base global en <math display="inline">{\mathbb{R}}^3</math> , pueden ser referidas a una base local en <math display="inline">{\mathbb{R}}^2</math>  para cada elemento no mortar de la siguiente manera
1174
1175
<span id='eq0255'></span>
1176
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1177
|-
1178
| 
1179
{| style="text-align: center; margin:auto;" 
1180
|-
1181
| <math>\boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
1182
{\overset{\textasciicaron}{\boldsymbol{e}}}_1\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
1183
{\overset{\textasciicaron}{\boldsymbol{e}}}_2\cdot (\boldsymbol{x}_A^{\alpha }-\boldsymbol{x}_0^1)\\
1184
1185
\end{array}\right],</math>
1186
|}
1187
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 51)
1188
|}
1189
1190
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,
1191
1192
<span id='eq0260'></span>
1193
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1194
|-
1195
| 
1196
{| style="text-align: center; margin:auto;" 
1197
|-
1198
| <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>
1199
|}
1200
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 52)
1201
|}
1202
1203
y
1204
1205
<span id='eq0265'></span>
1206
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1207
|-
1208
| 
1209
{| style="text-align: center; margin:auto;" 
1210
|-
1211
| <math>{\overset{\textasciicaron}{\boldsymbol{e}}}_2={\overset{\textasciicaron}{\boldsymbol{e}}}_3\times {\overset{\textasciicaron}{\boldsymbol{e}}}_1,</math>
1212
|}
1213
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 53)
1214
|}
1215
1216
con
1217
1218
<span id='eq0270'></span>
1219
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1220
|-
1221
| 
1222
{| style="text-align: center; margin:auto;" 
1223
|-
1224
| <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>
1225
|}
1226
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 54)
1227
|}
1228
1229
ver [[#fig0085|figura 17]] . Derivando la ecuación [[#eq0255|(51)]]  se obtiene,
1230
1231
<span id='eq0275'></span>
1232
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1233
|-
1234
| 
1235
{| style="text-align: center; margin:auto;" 
1236
|-
1237
| <math>\Delta \boldsymbol{y}_A^{\alpha }=\left[\begin{array}{c}
1238
\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\\
1239
\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\\
1240
1241
\end{array}\right]</math>
1242
|-
1243
|<math>=\boldsymbol{H}_A^{\alpha }\Delta \boldsymbol{\Phi },</math>
1244
|}
1245
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 55)
1246
|}
1247
1248
donde ''Δ'''''''Φ'''''  es el vector variación de coordenadas generalizadas y <math display="inline">\boldsymbol{H}_A^{\alpha }</math>  una matriz que permite referir las componentes de <math display="inline">\Delta \boldsymbol{y}_A^{\alpha }</math>  (definidas en la base local <math display="inline">V</math> ), al vector ''Δ'''''''Φ'''''  referido a la base global en <math display="inline">{\mathbb{R}}^3</math> .
1249
1250
<span id='fig0085'></span>
1251
1252
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1253
|-
1254
|
1255
1256
1257
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr17.jpg|center|263px|Definición del plano de proyección.]]
1258
1259
1260
|-
1261
| <span style="text-align: center; font-size: 75%;">
1262
1263
Figura 17.
1264
1265
Definición del plano de proyección.
1266
1267
</span>
1268
|}
1269
1270
==A.2. Variación de la normal==
1271
1272
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,
1273
1274
<span id='eq0280'></span>
1275
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1276
|-
1277
| 
1278
{| style="text-align: center; margin:auto;" 
1279
|-
1280
| <math>\Delta {\overset{\textasciicaron}{\boldsymbol{e}}}_1=</math><math>\boldsymbol{\mbox{F}}(\Delta \boldsymbol{x}_3^1-\Delta \boldsymbol{x}_1^1),</math>
1281
|}
1282
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 56)
1283
|}
1284
1285
donde
1286
1287
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1288
|-
1289
| 
1290
{| style="text-align: center; margin:auto;" 
1291
|-
1292
| <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>
1293
|}
1294
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 57)
1295
|}
1296
1297
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 [[#eq0270|(54)]]  como
1298
1299
<span id='eq0290'></span>
1300
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1301
|-
1302
| 
1303
{| style="text-align: center; margin:auto;" 
1304
|-
1305
| <math>\Delta \boldsymbol{n}=\boldsymbol{A}\Delta \boldsymbol{\Phi },</math>
1306
|}
1307
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 58)
1308
|}
1309
1310
con '''''A'''''  definido de la siguiente manera,
1311
1312
<span id='eq0295'></span>
1313
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1314
|-
1315
| 
1316
{| style="text-align: center; margin:auto;" 
1317
|-
1318
| <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>
1319
|-
1320
|<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>
1321
|}
1322
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 59)
1323
|}
1324
1325
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)]] ,
1326
1327
<span id='eq0300'></span>
1328
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1329
|-
1330
| 
1331
{| style="text-align: center; margin:auto;" 
1332
|-
1333
| <math>\Delta {\tilde{\boldsymbol{e}}}_2=\tilde{\boldsymbol{n}}\Delta {\tilde{\boldsymbol{e}}}_1-</math><math>{\tilde{\boldsymbol{e}}}_1\Delta \boldsymbol{n},</math>
1334
|}
1335
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 60)
1336
|}
1337
1338
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
1339
1340
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1341
|-
1342
| 
1343
{| style="text-align: center; margin:auto;" 
1344
|-
1345
| <math>\boldsymbol{H}_A^{\alpha }=\left[\begin{array}{c}
1346
\boldsymbol{H}_I^{\alpha }\\
1347
\boldsymbol{H}_{II}^{\alpha }
1348
\end{array}\right],</math>
1349
|}
1350
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 61)
1351
|}
1352
1353
donde
1354
1355
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1356
|-
1357
| 
1358
{| style="text-align: center; margin:auto;" 
1359
|-
1360
| <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>
1361
|-
1362
|<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>
1363
|-
1364
|<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>
1365
|-
1366
|<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>
1367
|-
1368
|<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>
1369
|-
1370
|<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>
1371
|-
1372
|<math>-\tilde{\boldsymbol{n}}\boldsymbol{F})+{\overset{\textasciicaron}{\boldsymbol{e}}}_2^T({\delta }_{A3}-</math><math>1/n)\quad \quad \vert \quad \quad </math>
1373
|-
1374
|<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>
1375
|}
1376
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 62)
1377
|}
1378
1379
Las matrices '''''A'''''<sup>''I''</sup> , '''''A'''''<sup>''II''</sup> , '''''A'''''<sup>''III''</sup>  y '''''A'''''<sup>''IV''</sup>  corresponden a submatrices de '''''A'''''  de la ecuación [[#eq0295|(59)]]
1380
1381
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1382
|-
1383
| 
1384
{| style="text-align: center; margin:auto;" 
1385
|-
1386
| <math>\boldsymbol{A}=\left[\boldsymbol{A}^I\quad \boldsymbol{A}^{II}\quad \boldsymbol{A}^{III}\quad \boldsymbol{A}^{IV}\right].</math>
1387
|}
1388
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 63)
1389
|}
1390
1391
<span id='sec0120'></span>
1392
1393
==A.3. Intersección de dos rectas==
1394
1395
Para la utilización del algoritmo de intersección de superficies en el plano, se utilizará la ecuación de la recta definida en <math display="inline">{\mathbb{R}}^2</math>  y en forma paramétrica. Los segmentos <math display="inline">\overline{\boldsymbol{a}}\boldsymbol{b}</math>  y <math display="inline">\overline{\boldsymbol{c}}\boldsymbol{d}</math>  quedan definidos por la resta de los puntos los puntos: '''''a'''''  − '''''b'''''  y '''''c'''''  − '''''d''''' , respectivamente, ver [[#fig0090|figura 18]] .
1396
1397
<span id='fig0090'></span>
1398
1399
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1400
|-
1401
|
1402
1403
1404
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr18.jpg|center|177px|Intersección entre dos segmentos en el plano.]]
1405
1406
1407
|-
1408
| <span style="text-align: center; font-size: 75%;">
1409
1410
Figura 18.
1411
1412
Intersección entre dos segmentos en el plano.
1413
1414
</span>
1415
|}
1416
1417
El punto de intersección entre <math display="inline">\overline{\boldsymbol{a}}\boldsymbol{b}</math>  y <math display="inline">\overline{\boldsymbol{c}}\boldsymbol{d}</math>  queda expresado por,
1418
1419
<span id='eq0320'></span>
1420
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1421
|-
1422
| 
1423
{| style="text-align: center; margin:auto;" 
1424
|-
1425
| <math>\boldsymbol{Q}_{int}(s)=\boldsymbol{a}+s(\boldsymbol{b}-</math><math>\boldsymbol{a}),</math>
1426
|}
1427
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 64)
1428
|}
1429
1430
o bien por,
1431
1432
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1433
|-
1434
| 
1435
{| style="text-align: center; margin:auto;" 
1436
|-
1437
| <math>\boldsymbol{P}_{int}(t)=\boldsymbol{c}+t(\boldsymbol{d}-</math><math>\boldsymbol{c}),</math>
1438
|}
1439
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 65)
1440
|}
1441
1442
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 <math display="inline">\overline{\boldsymbol{a}}\boldsymbol{b}</math>  y <math display="inline">\overline{\boldsymbol{c}}\boldsymbol{d}</math> , queda definido por los valores de ''s''  y ''t''  que hacen que '''''Q'''''<sub>''int''</sub> (''s'' ) = '''''P'''''<sub>''int''</sub> (''t'' ). La solución de este sistema de ecuaciones permite obtener los parámetros buscados,
1443
1444
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1445
|-
1446
| 
1447
{| style="text-align: center; margin:auto;" 
1448
|-
1449
| <math>s=\left[a_x(d_y-c_y)+c_x(a_y-d_y)+d_x(c_y-a_y)\right]/D,</math>
1450
|-
1451
|<math>t=\left[a_x(c_y-b_y)+b_x(a_y-c_y)+c_x(b_y-a_y)\right]/D,</math>
1452
|-
1453
|<math>D=a_x(d_y-c_y)+b_x(c_y-d_y)+d_x(b_y-a_y)+c_x(a_y-b_y).</math>
1454
|}
1455
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 66)
1456
|}
1457
1458
Un tratamiento especial se requiere para el caso en que el denominador ''D''  sea igual a cero, ver por ejemplo  [[#bib0160|[32]]] .      
1459
1460
La linealización de la ecuación [[#eq0320|(64)]]  no presenta mayores dificultades, aunque es algo laboriosa. En forma genérica,
1461
1462
<span id='eq0335'></span>
1463
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1464
|-
1465
| 
1466
{| style="text-align: center; margin:auto;" 
1467
|-
1468
| <math>\Delta \boldsymbol{Q}_{int}=\overline{\overline{\boldsymbol{Q}}}\cdot \left[\begin{array}{c}
1469
\Delta \boldsymbol{a}\\
1470
\Delta \boldsymbol{b}\\
1471
\Delta \boldsymbol{c}\\
1472
\Delta \boldsymbol{d}\\
1473
1474
\end{array}\right],</math>
1475
|}
1476
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 67)
1477
|}
1478
1479
donde la matriz <math display="inline">\overline{\overline{\boldsymbol{Q}}}</math>  es función de la coordenadas de los puntos '''''a''''' , '''''b''''' , '''''c'''''  y '''''d''''' .
1480
1481
==A.4. La matriz <math display="inline">\boldsymbol{D}_{KL}^P</math>==
1482
1483
La definición de la matriz <math display="inline">\boldsymbol{D}_{KL}^P</math> , que relaciona la variación de las coordenadas de los nodos de cada triángulo del polígono <math display="inline">P</math>  con la variación del vector de coordenadas nodales <math display="inline">\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}</math> , puede ser escrita de la siguiente manera,
1484
1485
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1486
|-
1487
| 
1488
{| style="text-align: center; margin:auto;" 
1489
|-
1490
| <math>\Delta \boldsymbol{y}_I^P=\boldsymbol{D}_{IK}^P\Delta {\overset{\mbox{ˆ}}{\boldsymbol{\Phi }}}_{KL}.</math>
1491
|}
1492
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 68)
1493
|}
1494
1495
El centro geométrico del polígono <math display="inline">P</math>  queda definido por el punto,
1496
1497
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1498
|-
1499
| 
1500
{| style="text-align: center; margin:auto;" 
1501
|-
1502
| <math>\Delta \boldsymbol{y}_c^P=\frac{1}{n^P}\sum_{P=1}^{n^P}\Delta \boldsymbol{y}_I^P\quad \quad I=</math><math>1\ldots 3.</math>
1503
|}
1504
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 69)
1505
|}
1506
1507
donde <math display="inline">\Delta \boldsymbol{y}_I^P</math>  son las variaciones de los vértices de cada triángulo ''P'' , ver  [[#fig0095|figura 19]] .
1508
1509
<span id='fig0095'></span>
1510
1511
{| style="text-align: center; border: 1px solid #BBB; margin: 1em auto; max-width: 100%;" 
1512
|-
1513
|
1514
1515
1516
[[Image:draft_Content_843322741-1-s2.0-S0213131512000156-gr19.jpg|center|225px|Notación utilizada para los cuerpos en contacto.]]
1517
1518
1519
|-
1520
| <span style="text-align: center; font-size: 75%;">
1521
1522
Figura 19.
1523
1524
Notación utilizada para los cuerpos en contacto.
1525
1526
</span>
1527
|}
1528
1529
La matriz <math display="inline">\boldsymbol{D}_{KL}^P</math>  se define en función de cómo se produce la intersección entre los elementos no-mortar <math display="inline">\tilde{k}</math>  y mortar <math display="inline">\tilde{l}</math> . El caso más sencillo es cuando un nodo del triángulo ''P  ''  coincide con el vértice de un elemento <math display="inline">\tilde{k}</math>  o <math display="inline">\tilde{l}</math> , entonces
1530
1531
{| class="formulaSCP" style="width: 100%; text-align: center;" 
1532
|-
1533
| 
1534
{| style="text-align: center; margin:auto;" 
1535
|-
1536
| <math>\Delta \boldsymbol{y}_I^P=\Delta \boldsymbol{y}_i^{\alpha },</math>
1537
|}
1538
| style="width: 5px;text-align: right;white-space: nowrap;" | ( 70)
1539
|}
1540
1541
y la matriz <math display="inline">\boldsymbol{D}_{KL}^P</math> , estará formada por unos y ceros en las filas y columnas correspondientes al grado de libertad del vértice <math display="inline">\boldsymbol{y}_i^{\alpha }</math> . Este caso se detalla en la [[#fig0095|figura 19]] , donde el nodo <math display="inline">\boldsymbol{y}_2^P</math>  del triángulo ''P  '' , coincide con el nodo del elemento mortar <math display="inline">\boldsymbol{y}_2^2</math> . 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 <math display="inline">\overline{\boldsymbol{y}_3^2-\boldsymbol{y}_2^2}</math>  y <math display="inline">\overline{\boldsymbol{y}_4^1-\boldsymbol{y}_3^1}</math>  en el punto <math display="inline">\boldsymbol{y}_{int}^P</math>  de la [[#fig0095|figura 19]] . Utilizando la ecuación [[#eq0335|(67)]]  para intersección de segmentos; ver sección [[#sec0120|A.3]] ; la matriz <math display="inline">\boldsymbol{D}_{KL}^P</math>  se llenará con los valores correspondientes a la matriz <math display="inline">\overline{\overline{\boldsymbol{Q}}}</math>  en las filas y columnas definidas por los grados de libertad de los nodos, <math display="inline">\boldsymbol{y}_3^2</math> , <math display="inline">\boldsymbol{y}_2^2</math> , <math display="inline">\boldsymbol{y}_4^1</math>  y <math display="inline">\boldsymbol{y}_3^1</math> , de ''l''  y ''k''  respectivamente.      
1542
1543
==References==
1544
1545
<ol style='list-style-type: none;margin-left: 0px;'><li><span id='bib0005'></span>
1546
[[#bib0005|[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</li>
1547
<li><span id='bib0010'></span>
1548
[[#bib0010|[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</li>
1549
<li><span id='bib0015'></span>
1550
[[#bib0015|[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</li>
1551
<li><span id='bib0020'></span>
1552
[[#bib0020|[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</li>
1553
<li><span id='bib0025'></span>
1554
[[#bib0025|[5]]] P. Papadopoulos, R.L. Taylor, Technical Report UCB/ SEMM Report 90/18, University of California at Berkeley, (1990).</li>
1555
<li><span id='bib0030'></span>
1556
[[#bib0030|[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</li>
1557
<li><span id='bib0035'></span>
1558
[[#bib0035|[7]]] F. Brezzi, M. Fortin; Mixed and Hybrid Finite Element Methods; Springer Verlag, New York (1991)</li>
1559
<li><span id='bib0040'></span>
1560
[[#bib0040|[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</li>
1561
<li><span id='bib0045'></span>
1562
[[#bib0045|[9]]] B. Wohlmuth; Discretization Methods and Iterative Solvers Based on Domain Decomposition; Springer (2001)</li>
1563
<li><span id='bib0050'></span>
1564
[[#bib0050|[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</li>
1565
<li><span id='bib0055'></span>
1566
[[#bib0055|[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</li>
1567
<li><span id='bib0060'></span>
1568
[[#bib0060|[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</li>
1569
<li><span id='bib0065'></span>
1570
[[#bib0065|[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</li>
1571
<li><span id='bib0070'></span>
1572
[[#bib0070|[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</li>
1573
<li><span id='bib0075'></span>
1574
[[#bib0075|[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.</li>
1575
<li><span id='bib0080'></span>
1576
[[#bib0080|[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</li>
1577
<li><span id='bib0085'></span>
1578
[[#bib0085|[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</li>
1579
<li><span id='bib0090'></span>
1580
[[#bib0090|[18]]] F. Belgacem, Y. Maday; A spectral element methodology tuned to parallel implementations; Comput. Methods Appl. Mech. Engrg., 67 (1994), pp. 116–159</li>
1581
<li><span id='bib0095'></span>
1582
[[#bib0095|[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</li>
1583
<li><span id='bib0100'></span>
1584
[[#bib0100|[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</li>
1585
<li><span id='bib0105'></span>
1586
[[#bib0105|[21]]] M. Puso; A 3D mortar method for solid mechanics; Int. J. Numer. Meth. Engng., 59 (2004), pp. 315–336</li>
1587
<li><span id='bib0110'></span>
1588
[[#bib0110|[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</li>
1589
<li><span id='bib0115'></span>
1590
[[#bib0115|[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</li>
1591
<li><span id='bib0120'></span>
1592
[[#bib0120|[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</li>
1593
<li><span id='bib0125'></span>
1594
[[#bib0125|[25]]] Oofelie Object oriented finite elements led by interactive executor. Open engineering. S.A., 2010. http://www.oofelie.org .                                    </li>
1595
<li><span id='bib0130'></span>
1596
[[#bib0130|[26]]] V. Lens, A. Cardona, M. Géradin; Energy preserving time integration for constrained multibody systems; Multibody Syst. Dyn., 11 (2003), pp. 41–61</li>
1597
<li><span id='bib0135'></span>
1598
[[#bib0135|[27]]] V. Lens, A. Cardona; An energy preserving/decaying scheme for constrained nonlinear multibody systems; Multibody Syst. Dyn., 18 (2007), pp. 435–470</li>
1599
<li><span id='bib0140'></span>
1600
[[#bib0140|[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</li>
1601
<li><span id='bib0145'></span>
1602
[[#bib0145|[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</li>
1603
<li><span id='bib0150'></span>
1604
[[#bib0150|[30]]] J.D. Foley, A. Van Dam, S.K. Feiner, J.F. Hughes; Computer Graphics, Principles and Practice;  (second edition)Addison-Wesley, Reading (1997)</li>
1605
<li><span id='bib0160'></span>
1606
[[#bib0160|[31]]] J. O’Rourke; Computational geometry in C;  (2 edition)Cambridge University Press (1990) 1998</li>
1607
<li><span id='bib0165'></span>
1608
[[#bib0165|[32]]] SAMCEF. Mecano V13 user manual. Samtech S.A., 2007. http://www.samcef.com .                                    </li>
1609
<li><span id='bib0170'></span>
1610
[[#bib0170|[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</li>
1611
<li><span id='bib0175'></span>
1612
[[#bib0175|[34]]] K.L. Johnson; Contact Mechanics; Cambridge University Press (1987)</li>
1613
</ol>
1614

Return to Cavalieri et al 2012a.

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 35
Recommendations 0

Share this document

claim authorship

Are you one of the authors of this document?