C
C-------------------------------------------------CALC_CTES_INT_TENS2--MT000324_1
C     															     MT000324_1
C     SUBRUTINA CALC_CTES_INT_TENS2									 MT000324_1
C     
C     CALCULO DE LAS CONSTANTES DE INTEGRACION PARA EL CALCULO 
C     DE LAS TENSIONES DESDE UN PINT A UN ELEMENTO.
C	ELEMENTO LINEAL CONTINUO.
C     MATERIAL ISÓTROPO.
C
      SUBROUTINE CALC_CTES_INT_TENS2(PRB,PNT,MAT,ELT,NOD,Hi)
C
      IMPLICIT NONE
      INCLUDE '_param.for'
      INCLUDE '_struct.for'
C
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C     VARIABLES EXTERNAS
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C
C PNT : Punto interno
      RECORD /S_pntint/ PNT
C PRB : Variables globales del solido
      RECORD /S_problema/ PRB
C MAT : Material
      RECORD /S_material/ MAT
C ELT : Elemento
      RECORD /S_elemento/ ELT
C NOD() : Nodos del problema
      RECORD /S_nodo/ NOD(N_MAX_NOD)
C Hi(,): Matriz de las ctes de integracion en el calculo de tensiones              
C        Hi(1,*)=Hrr*  
C        Hi(2,*)=Hrz*  
C        Hi(3,*)=Hzr*  
C        Hi(4,*)=Hzz*  
C        Hi(5,*)=Hoo*  
	REAL*8 Hi(5,8)
C
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C     VARIABLES INTERNAS
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C                   
C I,J : Contadores
      INTEGER I
C Aab,Bab,Dab : Nucleos en el calculo de tensiones en el dominio
C		   Dab(1,1)=Drrr, Bab(1,1)=Brrr, Aab(1)=Arrr 
C		   Dab(2,1)=Drzr, Bab(2,1)=Brzr, Aab(2)=Arzr 
C		   Dab(3,1)=Dzrr, Bab(3,1)=Bzrr, Aab(3)=Azrr 
C		   Dab(4,1)=Dzzr, Bab(4,1)=Bzzr, Aab(4)=Azzr 
C		   Dab(5,1)=Door, Bab(5,1)=Boor, Aab(5)=Aoor 
C		   Dab(1,2)=Drrz, Bab(1,1)=Brrz
C		   Dab(2,2)=Drzz, Bab(2,1)=Brzz
C		   Dab(3,2)=Dzrz, Bab(3,1)=Bzrz
C		   Dab(4,2)=Dzzz, Bab(4,1)=Bzzz
C		   Dab(5,2)=Dooz, Bab(5,1)=Booz
      REAL*8 Aab(5),Bab(5,2),Dab(5,2)
C nd1,nd2 : Extremos del elemento
      INTEGER nd1,nd2
C Lk,Tk,N1,N2,Nmod : Longitud, angulo y normal del elmento
      REAL*8 Lk,Tk,N1,N2,Nmod                                       
C X(),So()
      REAL*8 X(2)
C X1,X2,Y1,Y2,Z1,Z2 : Coordenadas de los extremos del elto y del PNT
      REAL*8 X1,X2,Y1,Y2,Z1,Z2
C D1,D2 : Variables aux. para comprobar donde esta el PNT
      REAL*8 D1,D2
C FF() : FUNCIONES DE FORMA
      REAL*8 FF(2)                       
C TI : Tipo de integracion
      INTEGER TI
C TP : Tipo de problema
      INTEGER TP            
C ELTP : Tipo de elemento
      INTEGER ELTP
C
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C     VALORES INICIALES
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C                 
      TI=PRB.TI.TIP    
      TP=PRB.TP.TIP    
	ELTP=PRB.ELTP(ELT.TIP).TIP
C
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C     CALC. CONST. INTEGRACION
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C
C	COMPROBACION DEL TIPO DE ELEMENTO
C
      SELECT CASE(ELTP)
C
C       Elemento lineal continuo
C
        CASE(1)
C
		CONTINUE		
C
C       Otros elementos (Error)
C
        CASE DEFAULT
          WRITE(F_W,08801) ELTP
          WRITE (*,08801) ELTP
          STOP
      END SELECT
C
C	COMPROBACION DEL TIPO DE MATERIAL
C
      SELECT CASE(MAT.TIP)
C
C       Material isotropo
C
        CASE(1)
C
		CONTINUE		
C
C       Otros materiales (Error)
C
        CASE DEFAULT
          WRITE(F_W,08803) MAT.TIP
          WRITE (*,08803) MAT.TIP
          STOP
      END SELECT
C
C     Nodos extremos
C
      nd1=ELT.NG(1)
      nd2=ELT.NG(2)         
C
C     Longitud del elemento
C
      Lk=   (NOD(nd2).XYZo(1)-NOD(nd1).XYZo(1))**2.d0
      Lk=Lk+(NOD(nd2).XYZo(2)-NOD(nd1).XYZo(2))**2.d0
      Lk=DSQRT(Lk)                        
C
C	Vector normal	 
C
      N1=(NOD(nd2).XYZo(2)-NOD(nd1).XYZo(2))
      N2=(NOD(nd1).XYZo(1)-NOD(nd2).XYZo(1))
      Nmod=DSQRT(N1*N1+N2*N2)
      N1=N1/Nmod
      N2=N2/Nmod
C
C	Angulo entre le ejes globales y los ejes locales del elemento
C
      CALL ANGULO(Tk,N1,N2)
C																			  
C	Coordenadas del nodo origen del elemento (globales)						  
C																			  
      x1=NOD(nd1).XYZo(1)
      x2=NOD(nd1).XYZo(2)
C																			  
C	Coordenadas del punto de integracion (globales)							  
C																			  
      y1=NOD(nd2).XYZo(1)
      y2=NOD(nd2).XYZo(2)
C																			  
C	Coordenadas del punto de integracion (globales)							  
C																			  
      z1=PNT.XYZ(1)
      z2=PNT.XYZ(2)
C																			  
C	COMPRUEBA QUE EL PUNTO NO PERTENECE AL ELEMENTO						  
C																			  
      IF(x1.EQ.y1) THEN
        IF(z1.EQ.x1) THEN
          d1=(2*z2-x2-y2)/(y2-x2)
          d2=d1
        ELSE
          d1=2
        END IF
      ELSE IF(x2.EQ.y2) THEN
        IF(z2.EQ.x2) THEN
          d1=(2*z1-x1-y1)/(y1-x1) 
          d2=d1
        ELSE
          d1=2
        END IF
      ELSE
        d1=(2*z1-x1-y1)/(y1-x1) 
        d2=(2*z2-x2-y2)/(y2-x2)
      END IF
C          
      IF(dabs(d1-d2).GT.TOL.OR.dabs(d1).GT.(1.d0+TOL)) THEN
	  CONTINUE
      ELSE
        WRITE(F_W,08804) PNT.NUM
        WRITE (*,08804) PNT.NUM
        STOP
      END IF
C          
C     CALCULO DE Hi
C
	SELECT CASE (TI)
C
C       Integracion numerica o mixta
C
        CASE (1,3)
C
		DO i = 1 , PRB.TI.NPG
C
C           Coordenadas correspondientes a los puntos de Gauss   
            X(1)=NOD(nd1).XYZo(1)*(1.d0-PRB.TI.S(i))/2.d0
     @          +NOD(nd2).XYZo(1)*(1.d0+PRB.TI.S(i))/2.d0
            X(2)=NOD(nd1).XYZo(2)*(1.d0-PRB.TI.S(i))/2.d0
     @          +NOD(nd2).XYZo(2)*(1.d0+PRB.TI.S(i))/2.d0
C
C		  Funciones de forma en los puntos de Gauss
            CALL FUNC_FORM(PRB.TI.S(i),FF,ELTP)
C
C           Valor de los nucleos en los puntos de Gauss 
		  CALL DER_SOL_FUND2(PNT.XYZ,X,MAT.PRP,Bab,Dab,
	@							    N1,N2,0,TP)	 				
C
C           Incrementa la matriz Hi
            CALL Habi(Hi,PRB.TI.W(i),Aab,Bab,Dab,FF,Lk,X(1),Tk,TP)                  
C
		END DO
C
	  CASE DEFAULT
		WRITE(F_W,08802) TI
		WRITE (*,08802) TI
		STOP
	END SELECT
C
C     FIN DE LA RUTINA 
C        
      RETURN
C
C     FORMATOS DE ESCRITURA. 
C                  
08801 FORMAT(/,2x,'ERROR 08801 - CALC_CTES_INT_TENS2',/,
     @         '  Tipo de elemento (',i2,') no implementado.')
08802 FORMAT(/,2x,'ERROR 08802 - CALC_CTES_INT_TENS2',/,
     @         '  Tipo de integracion (',i2,') no implementada.')
08803 FORMAT(/,2x,'ERROR 08803 - CALC_CTES_INT_TENS2',/,
     @         '  Tipo de material (',i2,') no implementado.')
08804 FORMAT(/,2x,'ERROR 08804 - CALC_CTES_INT_TENS2',/,
     @         '  Punto ',i2,' pertenece al contorno del solido.')
C
       END
C<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">
	<head>
            <title>e-REdING. Biblioteca de la Escuela Superior de Ingenieros de Sevilla.</title>

                <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="description" content="Buscador de proyectos ETSI" />
<meta name="author" content="Daniel Callejo"/>
<meta name="author" content="Federico L&oacute;pez"/>
<meta name="author" content="Juli&aacute;n P&eacute;rez"/>
<meta name="author" content="Jos&eacute; Mar&iacute;a Vidal Vidal"/>
<base href="/bibing/proyectos/" /><link rel="shortcut icon" href="./favicon.ico" />
<link rel="stylesheet" href="./publico/css/estructura.css" type="text/css" />
<link rel="stylesheet" href="./publico/css/bootstrap.css" type="text/css" media="screen"/>
<link rel="stylesheet" href="./publico/css/enlaces-capas.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/pestanas.css" type="text/css"  /> 
<link rel="stylesheet" href="./publico/css/formularios.css" type="text/css" />
<link rel="stylesheet" href="./publico/css/lightbox.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/autocompleter.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/resultados.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/milista.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/explorador.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/ultimos.css" type="text/css"  />
<link rel="stylesheet" href="./publico/css/contactar.css" type="text/css"  />
<!-- <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" /> -->
<script src="./publico/javascript/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="./publico/javascript/bootstrap.js" type="text/javascript"></script>

<script src="./publico/javascript/mootools-1.2.4-core.js" type="text/javascript"></script>
<script src="./publico/javascript/mootools-1-1.2.4.2-more.js" type="text/javascript"></script>
<script src="./publico/javascript/targetbl.js" type="text/javascript"></script>
<script src="./publico/javascript/mensajes.js" type="text/javascript"></script>
<script src="./publico/javascript/form.js" type="text/javascript"></script>
<script src="./publico/javascript/autocompleter/Observer.js" type="text/javascript"></script>
<script src="./publico/javascript/autocompleter/Autocompleter.js" type="text/javascript"></script>
<script src="./publico/javascript/autocompleter/Autocompleter.Request.js" type="text/javascript"></script>
<script src="./publico/javascript/domready.js" type="text/javascript"></script>

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-8T1TSNC1QY"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'G-8T1TSNC1QY');
</script>



<script type="text/javascript">
function seleccionar_todo(){
   for (i=0;i<document.formulario_marcados.elements.length;i++)
      if(document.formulario_marcados.elements[i].type == "checkbox")
         document.formulario_marcados.elements[i].checked=1
}
function deseleccionar_todo(){
   for (i=0;i<document.formulario_marcados.elements.length;i++)
      if(document.formulario_marcados.elements[i].type == "checkbox")
         document.formulario_marcados.elements[i].checked=0
} 
</script>
	</head>
    <body style="min-width: 960px; background-color: #e2e2e2; height: 100%">	
		<a name="arriba"></a>
<div>
<div id="header">
    <table id="Tabla_01" height="105" border="0" cellpadding="0" cellspacing="0">
    <tr>
        <td>
            <img src="./publico/imagenes/cabecera/banner_new2_01.jpg" width="3" height="105" alt="">
        </td>
        <td>
            <img src="./publico/imagenes/cabecera/banner_new2_02.jpg" width="100" height="105" alt="">
        </td>
        <td width="100%" align="right"  style="min-width: 613px; background-repeat: no-repeat; background-position: top right; font-size: medium; font-weight: bold; color: white;">
            <table width="100%" height="105" border="0">
                <tr>
                    <td style=" vertical-align: top; width: 547px">
                        <!-- <a style="text-decoration: none" href="./"><img src="./publico/imagenes/cabecera/banner_new2_03.jpg"alt=""></a> -->
                        <a style="text-decoration: none" href="/bibing/proyectos/"><img src="./publico/imagenes/cabecera/banner_new2_03.jpg"alt=""></a>
                     </td>
                     <td  background="./publico/imagenes/cabecera/banner_new2_04.jpg" style="background-repeat: no-repeat; background-color: #c6d4e8;"><br><br><br>
                         &nbsp;
                        </td>
                    </tr>
             </table>
        </td>
    </tr>
    <tr style="border-top: 1px solid #ffffff;">
        <td colspan="3" id="menu_sup" style="font-size: small; text-align: right; background-color: #9c1f2f; vertical-align: bottom">
             
					<a href="/bibing/proyectos/" class="enlace " style=" color: #ffffff">Inicio&nbsp;&nbsp;|</a>
					<a href="/bibing/proyectos/acerca/" style=" color: #ffffff" class="enlace ">&nbsp;&nbsp;Acerca de&nbsp;&nbsp;|</a>
					
					<a href="/bibing/proyectos/contactar/" style=" color: #ffffff" class="enlace ">&nbsp;&nbsp;Contactar&nbsp;&nbsp;</a>
			 <!--       <a href="/bibing/proyectos/ayuda/" style=" color: #ffffff" class="enlace  ">&nbsp;&nbsp;Ayuda&nbsp;&nbsp;|</a> -->
					<!-- <form id="idioma" class=""  method="post" action="">
					<div class="inline" style="color: white">
					<input type="submit" class="tipo_letra " style=" color: #ffffff"name="idioma" value="Castellanossss" />&nbsp;&nbsp;
					</div>	
					</form> -->
			        </td>

    </tr>
    </table>
</div>
<br><br>
<div class="colmask rightmenu">
<div class="panel panel-default" style="margin:20px">
            <div class="panel-heading"><h4>ANÁLISIS DEL PROBLEMA TERMOELÁSTICO DE CONTACTO MEDIANTE EL MÉTODO DE LOS ELEMENTOS DE CONTORNO CON MALLAS CONFORMES Y NO CONFORMES</h4><h5 style="color:grey"><span class="glyphicon glyphicon-user""></span> : <b>MORALES SIERRA, DIÓGENES</b><br><span class="glyphicon glyphicon-book""></span>  :<b> Ingenier&iacute;a Industrial</b></h5></div><div class="panel-body"><div class="contenido_proyecto"><div class="titulo2_explorador">Contenido del proyecto:</div><div class="ruta"><a href="abreproy/4093">Directorio ra&iacute;z</a>&nbsp;&nbsp;>&nbsp;&nbsp;<a href="abreproy/4093/direccion/RUTINAS%252F">RUTINAS</a>&nbsp;&nbsp;>&nbsp;&nbsp;<a href="abreproy/4093/direccion/RUTINAS%252F17-2-1-1-Ctns2.for%252F">17-2-1-1-Ctns2.for</a></div><div class="listing"></div></div></div></div>
</div>
</div>

        
	</body>
 
 
<!-- Inicio Google Analytics -->
<!--
	<script type="text/javascript">
		var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
		document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
	</script>
	
	<script type="text/javascript">
		try {
		var pageTracker = _gat._getTracker("UA-7789620-1");
		pageTracker._trackPageview();
	} 
		catch(err) {}
	</script>
-->
<!-- Fin Google Analytics -->

</html>

