UNIVERSIDAD SIMÓN BOLÍVAR COORDINACIÓN DE INGENIERÍA ELÉCTRICA MODELACIÓN MULTIESTRATIFICADA DEL SUBSUELO MEDIANTE MEDICIONES DE RESISTIVIDAD APARENTE POR HUMBERTO BELOUCHE ARENAS INFORME FINAL DE PASANTÍA PRESENTADO ANTE LA ILUSTRE UNIVERSIDAD SIMÓN BOLÍVAR COMO REQUISITO PARCIAL PARA OPTAR AL TÍTULO DE INGENIERO ELECTRICISTA Sartenejas, Octubre 2006 UNIVERSIDAD SIMÓN BOLÍVAR COORDINACIÓN DE INGENIERÍA ELÉCTRICA MODELACIÓN MULTIESTRATIFICADA DEL SUBSUELO MEDIANTE MEDICIONES DE RESISTIVIDAD APARENTE POR HUMBERTO BELOUCHE ARENAS TUTOR ACADÉMICO: PROF. JOSÉ MANUEL ALLER TUTOR INDUSTRIAL: ING. ELMEL PULGAR INFORME FINAL DE PASANTÍA PRESENTADO ANTE LA ILUSTRE UNIVERSIDAD SIMÓN BOLÍVAR COMO REQUISITO PARCIAL PARA OPTAR AL TÍTULO DE INGENIERO ELECTRICISTA Sartenejas, Octubre 2006 MODELACIÓN MULTIESTRATIFICADA DEL SUBSUELO MEDIANTE MEDICIONES DE RESISTIVIDAD APARENTE POR HUMBERTO BELOUCHE ARENAS RESUMEN La estratificación del subsuelo generalmente es múltiple, cada uno con su correspondiente resistividad y espesor propio. En este trabajo se ha propuesto un método capaz de modelar el subsuelo multiestratificadamente mediante mediciones de resistividad aparente realizadas por diferentes métodos (Wenner, Schlumberger, Schlumberger Modificado, Polo-Polo, Polo-Dipolo, Dipolo-Dipolo). Adicionalmente se desarrollo un algoritmo genético que estima automáticamente el vector de arranque. La modelación de los parámetros electromagnéticos del terreno esta basada en las ecuaciones de Maxwell y las funciones de Bessel, lo que reduce el problema a la solución de la ecuación de Laplace en coordenadas cilíndricas para excitaciones constantes en el tiempo, para resolver el método propuesto es necesario el uso de métodos iterativos. Se utilizó en método de las imágenes de Maxwell, la metodología planteada por Sunde, Takahashi y por Aller, para realizar las comparaciones pertinentes. El resultado de este trabajo es el desarrollo de un algoritmo que determina los parámetros del subsuelo modelando multiestratificadamente el mismo, mediante mediciones de resistividad aparente realizadas por diferentes métodos de medición, con la posibilidad de determinar automáticamente el vector de arranque. iv DEDICATORIA Al esfuerzo, dedicación y perseverancia que está dentro de todos los seres humanos, a la fuerza de cambiar el destino del mundo que esta en nosotros mismos. A estas virtudes dedico este humilde trabajo. v AGRADECIMIENTOS Madre, por tu amor desinteresado, tu esfuerzo constante e imbatible, tus ganas de ofrecerme algo mejor, por todo y por nada, por ser mi apoyo, mi mentora, mi madre, gracias. Hermanas, por estar allí aun cuando yo no estaba, por apoyarme cuando más lo necesitaba, por llevarme a cuestas cuando la vida me golpeaba, simplemente, gracias. Padre, gracias por estar allí, por ofrecerme tú ayuda, tú mano amiga, tus sabios concejos, tus bellas palabras de aliento, gracias. Miriam, gracias, tus palabras siempre me llevaron hasta el infinito y mas allá, donde siempre necesitaba llegar, tú complementaste mi vida, la llenaste de felicidad y amor, por eso y mucho más, gracias. Profesor José Manuel Aller, gracias por ofrecerme su conocimiento y amistad sincera y desinteresada, por apoyarme y aconsejarme, por mostrarme el camino del saber, Gracias. A mis amigos y panas, gracias por estar, por apoyarme y soportarme, por las experiencias vividas, gracias. vi A mis compañeros de Inelectra, Armando Maduro, Eduardo Gillezeau, Roberto Trujillo, Elmel Pulgar, por todo su apoyo y ayuda. vii ÍNDICE GENERAL RESUMEN………........................................................................................................... IV DEDICATORIA……. ....................................................................................................... V AGRADECIMIENTOS.................................................................................................... VI ÍNDICE GENERAL....................................................................................................... VIII ÍNDICE DE FIGURAS ..................................................................................................... X ÍNDICE DE TABLAS..................................................................................................... XII LISTA DE SÍMBOLOS Y ABREVIATURAS ................................................................ XIII CAPITULO I: INTRODUCCIÓN .......................................................................................1 CAPITULO 2: DESCRIPCIÓN DE LA EMPRESA...........................................................4 2.1 INTRODUCCIÓN ....................................................................................................4 2.2 MISIÓN ...................................................................................................................4 2.3 VISIÓN....................................................................................................................5 2.4 ESTRUCTURA ORGANIZATIVA DE LA EMPRESA ...............................................5 2.4.1 ORGANIGRAMA ..............................................................................................6 2.4.2 DEPARTAMENTO DE INGENIERÍA ELÉCTRICA.........................................10 2.4.3 POLÍTICAS, RESPONSABILIDADES Y OBJETIVOS....................................10 2.4.4 RESPONSABILIDADES.................................................................................12 2.4.4.1 RESPONSABILIDADES EN LA DIVISIÓN DE INGENIERÍA ..................12 2.4.4.2 RESPONSABILIDADES EN LOS PROYECTOS.....................................12 2.4.5 ORGANIZACIÓN DE LOS PROYECTOS ......................................................13 2.4.5.1 SISTEMAS DE CALIDAD. .......................................................................15 2.4.6 SISTEMAS COMPUTARIZADOS ..................................................................16 CAPITULO 3: FORMULACIÓN MATEMÁTICA ............................................................18 3.1 INTRODUCCIÓN ..................................................................................................18 3.2 ECUACIONES DE MAXWELL ..............................................................................18 3.3 ANÁLISIS DE LAS ECUACIONES DE MAXWELL CON EXCITACIÓN CONSTANTE EN EL TIEMPO ....................................................................................21 3.4 FUNCIONES DE BESSEL ....................................................................................29 CAPITULO 4: MODELACIÓN DEL SUBSUELO ..........................................................31 4.1 INTRODUCCIÓN ..................................................................................................31 4.2 PARÁMETROS DEL SUBSUELO .........................................................................31 4.3 MEDICIÓN DE LA RESISTIVIDAD........................................................................32 viii 4.4 MÉTODOS DE MEDICIÓN DE RESISTIVIDADES APARENTES .........................33 4.5 MEDICIÓN DE LA RESISTIVIDAD EN UN SUELO UNIFORME ...........................40 4.6 MEDICIÓN DE LA RESISTIVIDAD EN UN SUELO BIESTRATIFICADO ..............45 4.7 MEDICIÓN DE LA RESISTIVIDAD EN UN SUELO MULTIESTRATIFICADO .......51 CAPITULO 5: PROBLEMA DIRECTO ..........................................................................60 5.1 INTRODUCCIÓN ..................................................................................................60 5.2 CALCULO DE LA RESISTIVIDAD APARENTE ....................................................61 CAPITULO 6: PROBLEMA INVERSO ..........................................................................73 6.1 INTRODUCCIÓN ..................................................................................................73 6.2 CALCULO DE LOS PARÁMETROS DEL SUBSUELO..........................................73 6.3 ALGORITMO GENÉTICO .....................................................................................75 6.4 ESTIMACIÓN PARAMÉTRICA DE LOS MODELOS.............................................77 CONCLUSIONES Y RECOMENDACIONES .................................................................91 BIBLIOGRAFIA…… ......................................................................................................93 APENDICE A………… ...................................................................................................97 APENDICE B……….. ..................................................................................................122 APENDICE C………….. ...............................................................................................170 ix ÍNDICE DE FIGURAS FIGURA (2.1): ORGANIGRAMA GENERAL DE LA EMPRESA....................................... 7 FIGURA (2.2): ORGANIGRAMA DE VICEPRESIDENCIA DE OPERACIONES.............. 8 FIGURA (2.3): ORGANIGRAMA GENERAL DE PROYECTOS....................................... 9 FIGURA (2.4): SISTEMAS COMPUTARIZADOS DEL DEPARTAMENTO DE ELECTRICIDAD. .................................................................................................... 17 FIGURA (3.1): LÍNEAS EQUIPOTENCIALES.................¡ERROR! MARCADOR NO DEFINIDO. FIGURA (4.1): CONFIGURACIÓN INTERELECTRÓDICA DE WENNER. .................... 35 FIGURA (4.2): CONFIGURACIÓN INTERELECTRÓDICA DE SCHLUMBERGER. ...... 36 FIGURA (4.3): CONFIGURACIÓN INTERELECTRODICA DE SCHLUMBERGER MODIFICADO. ....................................................................................................... 37 FIGURA (4.4): CONFIGURACIÓN INTERELECTRODICA DE DIPOLO-DIPOLO......... 38 FIGURA (4.5): CONFIGURACIÓN INTERELECTRODICA DE POLO-DIPOLO. ........... 38 FIGURA (4.6): CONFIGURACIÓN INTERELECTRODICA DE POLO-POLO. ............... 39 FIGURA (4.7): MODELO DEL TERRENO MONOESTRATIFICADO. ............................ 40 FIGURA (4.8): MODELO DE INYECCIÓN DE CORRIENTE EN UN TERRENO MONOESTRATIFICADO. ...................................................................................... 41 FIGURA (4.9): MÉTODO DE WENNER PARA LA MEDICIÓN DE RESISTIVIDAD. ...... 43 FIGURA (4.10): MODELO DE TERRENO BIESTRATIFICADO CON INYECCIÓN DE CORRIENTE EN LA PRIMERA CAPA.................................................................... 46 FIGURA (4.11): MODELO MULTIESTRATIFICADO DEL SUBSUELO. ........................ 52 FIGURA (5.1): MODELO ESQUEMATIZADO DEL MÉTODO DIRECTO....................... 60 FIGURA (5.2): GRÁFICO DE RESISTIVIDAD APARENTE DEL MODELO TERRENO 1. ............................................................................................................................ 62 FIGURA (5.3): GRÁFICO DE RESISTIVIDAD APARENTE DEL MODELO TERRENO 2. ............................................................................................................................ 63 FIGURA (5.4): GRÁFICO DE RESISTIVIDAD APARENTE DEL MODELO TERRENO 3. ............................................................................................................................ 64 FIGURA (5.5): TERRENO A. ......................................................................................... 66 FIGURA (5.6): TERRENO B. ......................................................................................... 66 x FIGURA (5.7): TERRENO C. ......................................................................................... 66 FIGURA (5.8): TERRENO D. ......................................................................................... 66 FIGURA (5.9): RESISTIVIDADES APARENTES DE LOS MODELOS DE TERRENOS ESTUDIADOS POR TAKAHASHI Y ALLER. ..................................... 67 FIGURA (5.10): RESISTIVIDAD APARENTE DE MODELOS DE TERRENOS (BAJO ALTO) OBTENIDA POR TAKAHASHI. ................................................................... 68 FIGURA (5.11): RESISTIVIDAD APARENTE DE MODELOS DE TERRENOS (BAJO ALTO) OBTENIDA POR ALLER............................................................................. 68 FIGURA (5.12): TERRENO A. ....................................................................................... 69 FIGURA (5.13): TERRENO B. ....................................................................................... 69 FIGURA (5.14): TERRENO C. ....................................................................................... 69 FIGURA (5.15): TERRENO D. ....................................................................................... 69 FIGURA (5.16): RESISTIVIDADES APARENTES DE LOS MODELOS DE TERRENOS (ALTO BAJO) ESTUDIADOS POR TAKAHASHI Y ALLER................ 70 FIGURA (5.17): RESISTIVIDAD APARENTE DE MODELOS DE TERRENOS (ALTO BAJO) OBTENIDA POR TAKAHASHI. ................................................................... 71 FIGURA (5.18): RESISTIVIDAD APARENTE DE MODELOS DE TERRENOS (ALTO BAJO) OBTENIDA POR ALLER............................................................................. 71 FIGURA (5.19): ESQUEMA DEL ALGORITMO GENÉTICO DESARROLLADO. .......... 76 FIGURA (5.20): RESISTIVIDAD APARENTE DE REPKOF#3....................................... 78 FIGURA (5.21): REPORTE DE RESULTADOS DE LAS SIMULACIONES DE REPKOF#3 CON EL PROGRAMA MODESTIM..................................................... 80 FIGURA (5.22): RESISTIVIDAD APARENTE DE SINOVENSA..................................... 81 FIGURA (5.23): RESISTIVIDAD APARENTE DE SINOVENSA..................................... 83 FIGURA (5.24): RESISTIVIDAD APARENTE DE TERMOBARRANCAS (NO-SE)........ 84 FIGURA (5.25): REPORTE DE RESULTADOS DE LAS SIMULACIONES DE TERMOBARRANCAS CON EL PROGRAMA MODESTIM. ................................... 86 FIGURA (5.26): RESISTIVIDAD APARENTE DE TERMOBARRANCAS (NE-SO)........ 87 FIGURA (5.27): REPORTE DE RESULTADOS DE LAS SIMULACIONES DE TERMOBARRANCAS CON EL PROGRAMA MODESTIM. ................................... 89 xi ÍNDICE DE TABLAS TABLA (I): RESULTADOS DE RESISTIVIDAD APARENTE DE MODELO DE TERRENO 1............................................................................................................. 62 TABLA (II): RESULTADOS DE RESISTIVIDAD APARENTE DE MODELO DE TERRENO 2............................................................................................................. 63 TABLA (III): RESULTADOS DE RESISTIVIDAD APARENTE DE MODELO DE TERRENO 3............................................................................................................. 64 TABLA (IV): MODELOS DE TERRENO (BAJO ALTO) DE TAKAHASHI ALLER. .......... 65 TABLA (V): RESISTIVIDADES APARENTES DE LOS MODELOS DE TERRENO ESTUDIADOS POR TAKAHASHI ALLER. ............................................................... 66 TABLA (VI): MODELOS DE TERRENO (ALTO BAJO) DE TAKAHASHI ALLER. TABLA (VII): RESISTIVIDADES APARENTES DE LOS MODELOS DE TERRENO ESTUDIADOS POR TAKAHASHI ALLER. ............................................................... 70 TABLA (VIII): MEDICIONES DE RESISTIVIDADES APARENTES DE REPKOF#3. ..... 77 TABLA (IX): RESULTADO DE LAS SIMULACIONES DE REPKOF#3. ......................... 79 TABLA (X): RESULTADO DE LAS SIMULACIONES DE SINOVENSA. ........................ 81 TABLA (XI): RESULTADO DE LAS SIMULACIONES DE SINOVENSA. ....................... 82 TABLA (XII): RESULTADO DE LAS SIMULACIONES DE TERMOBARRANCAS (NO-SE). .................................................................................................................. 84 TABLA (XIII): RESULTADO DE LAS SIMULACIONES DE TERMOBARRANCAS (NO-SE). .................................................................................................................. 85 TABLA (XIV): RESULTADO DE LAS SIMULACIONES DE TERMOBARRANCAS (NE-SO). .................................................................................................................. 87 TABLA (XV): RESULTADO DE LAS SIMULACIONES DE TERMOBARRANCAS (NE-SO). .................................................................................................................. 88 xii LISTA DE SÍMBOLOS Y ABREVIATURAS A Potencial magnético vectorial. Ax,Ay,Az Coordenadas cartesianas del potencial magnético vectorial. Ao(m),A1(m) Funciones indeterminadas en la variable auxiliar m. ai Separación de los electrodos en la medida i. B Densidad de campo magnético. B1(m),B2(m) Funciones indeterminadas en la variable auxiliar m. D Vector desplazamiento eléctrico. ds Diferencial de superficie. dv Diferencial de volumen. E Intensidad de campo eléctrico. FK Matriz auxiliar para el calculo de las funciones F12...p Función de Sommerfeld para el cálculo de resistividad. fj(m) Función indeterminada en la variable auxiliar m. g(x) Vector gradiente del vector f de errores. gj(m) Función indeterminada en la variable auxiliar m. H Intensidad de campo magnético. H(x) Matriz Hessiana, matriz Hessiana aproximada. hj Profundidad del estrato j. I Corriente eléctrica. Iiny Corriente eléctrica inyectada en un diferencial de volumen. J Densidad de corriente eléctrica. Js Densidad de corriente eléctrica superficial. Jo(x), J1(x) Funciones de Bessel de primera especie de orden 0 y 1. k Coeficiente de reflexión. xiii k123….p Coeficiente de reflexión para la evaluación de la resistividad m Variable auxiliar de integración. mmax Valor numérico máximo de la variable de integración Vector normal a la superficie. p Numero de estratos horizontales del terreno. q Carga eléctrica. Función indeterminada en la variable auxiliar m. R Radio en coordenadas esféricas. r Radio de un electrodo, distancia. Vector unitario radial. s Profundidad a la que se inyecta la corriente I. V Tensión, diferencia de potencial. x Variables de estado, conjunto de parámetros del terreno. Ym Función de Bessel de segunda especie de orden m. α Paso óptimo unidimensional en la dirección del mínimo. δI Dipolo de corriente diferencial. Δx Vector de corrección de las variables de estado. ε Permitividad. εο Permitividad del vacío. εr Permitividad relativa. Φ Potencial escalar. Φm Potencial escalar eléctrico. Φe Potencial escalar magnético. λ Variable compleja de integración. μ Permeabilidad magnética. ω Pulsación de una magnitud senoidal. ρ Resistividad, densidad de carga eléctrica, carga eléctrica. xiv ρa Resistividad aparente. ρmedida Resistividad medida. ρcalculada Resistividad calculada. σ Conductividad eléctrica. ∆ Gradiente de una función escalar. ∇. Divergencia de un vector. ∇x Rotacional de un vector. ∇2 Laplaciano escalar o vectorial. (x, y, z) Sistema de coordenadas cartesianas. (r, z, ψ) Sistema de coordenadas cilíndricas. (R, θ, ψ) Sistema de coordenadas esféricas. xv CAPITULO I: INTRODUCCIÓN La modelación de los parámetros electromagnéticos del terreno a partir de mediciones de la resistividad aparente es un problema cuya formulación tradicional incluye las ecuaciones de Maxwell y las funciones de Bessel, su resolución ha sido planteada por diferentes autores a lo largo de la historia e involucra el uso de métodos iterativos. En general todos los terrenos son multiestratificados y estos pueden ser modelados considerando diferentes estratos o capas (1,2,3,……,n), cada uno con su correspondiente resistividad y espesor propio, la gran variabilidad que presenta la resistividad hace necesario la medición de este parámetros directamente en el subsuelo, utilizando alguno de los métodos de medición de resistividad desarrollados a lo largo de la historia, de la utilización de estos métodos de medición surge un concepto que hoy manejamos, la resistividad aparente, la cual no es mas que un valor de resistividad asociada a espaciamientos interelectródicos dependiendo del método de medición utilizado. La modelación de los parámetros electromagnéticos del subsuelo es un problema complejo de ingeniería, el cual es difícil de comprender y de estudiar, por tal motivo la modelación multiestratificada del subsuelo mediante el conocimiento de la resistividad aparente es un problema de elevada complejidad, la estructura matemática planteada por Maxwell está desarrollada en una sola dirección, es por esta razón que la 1 modelación multiestratificada necesita de método iterativos para obtener la solución de los problemas planteados. En este trabajo se desarrolla un método capaz de modelar el subsuelo multiestratificadamente mediante mediciones de resistividad aparente realizadas por diferentes métodos, también se desarrollo un algoritmo genético que estima automáticamente el vector de arranque. La modelación de los parámetros electromagnéticos del terreno esta basada en las ecuaciones de Maxwell y las funciones de Bessel, lo que reduce el problema a la solución de la ecuación de Laplace en coordenadas cilíndricas para excitaciones constantes en el tiempo, para resolver el método propuesto es necesario el uso de métodos iterativos. En el capitulo dos de este trabajo, se expone un breve descripción de la empresa Inelectra, S.A.C.A., donde se desarrollo este trabajo. En el capitulo tres de este trabajo, se presenta la formulación matemática utilizada para el desarrollo de este trabajo, que permite el análisis de los problemas antes planteados. En el capitulo cuatro de este trabajo, se plantea la modelación del subsuelo en múltiples estratos, así como los diferentes métodos de medición utilizados para la determinación de la resistividad aparente. 2 En el capitulo cinco se calculan las resistividades aparentes mediante el método directo, presentándose tres programas diseñados para simular las mediciones de resistividad aparente mediante los diferentes métodos de medición. En el capitulo seis se realiza en calculo de los parámetros del subsuelo y la estimación paramétrica, presentándose tres ejemplos de calculo. Finalmente se presentan las conclusiones y recomendaciones del trabajo realizado, en las que se exponen las ventajas de los métodos propuestos y las sugerencias para futuros desarrollos. 3 CAPITULO 2: DESCRIPCIÓN DE LA EMPRESA 2.1 INTRODUCCIÓN INELECTRA S.A.C.A. es una empresa de Ingeniería y Gerencia Integral de Proyectos, fundada en 1968, su sede principal se encuentra ubicada en el estado Miranda en el Municipio Baruta, Avenida Circunvalación del Sol, Urbanización Santa Paula, también cuenta con otras dos sedes en Caracas, ubicadas en La Urbina, Edificio INECOM Piso 2 y Edificio EGOSUM. Además esta empresa cuenta con sucursales en otras regiones del país como Puerto La Cruz, Anaco, Maracaibo así como en el extranjero ubicadas en Argentina, Colombia y México. Su función principal está dedicada al estudio y elaboración de proyectos, asesoramiento y/o prestación de servicios profesionales en el área de ingeniería, procura y construcción de plantas industriales. Como empresa privada, es propiedad del personal profesional que labora en ella, cuyo objetivo es prestar servicios profesionales multidisciplinarios de ingeniería a distintos sectores industriales de Venezuela y el exterior. 2.2 MISIÓN Prestar servicios profesionales multidisciplinarios, realizar proyectos y obras integrales de ingeniería con calidad en forma ética y responsable, para los distintos sectores industriales en Venezuela y el exterior, así como otras actividades conexas con dichos servicios. 4 Para ello INELECTRA, S.A.C.A. se identifica con las necesidades de sus clientes para satisfacerlas de manera eficaz y eficiente, logrando niveles de rentabilidad que le aseguren su supervivencia, su crecimiento y contribuyendo al desarrollo tecnológico y económico de la unidad donde opera, todo esto es cuadrado dentro de la política de excelencia de la Corporación. Como parte de su filosofía, la corporación está fuertemente orientada al desarrollo y bienestar de su recurso humano, y promueve la participación de su personal en los beneficios de su gestión empresarial. 2.3 VISIÓN Ser vista como la primera empresa venezolana de servicios de ingeniería, procura y construcción, que fije los estándares de la industria con la capacidad de producir dividendos, crecimiento, moral y productividad del empleado, profesionalismo, seguridad, preservación del medio ambiente, integridad personal, aplicación de nuevas tecnologías, místicas corporativa, cumplimiento con regulaciones, relaciones con la comunidad y ética del negocio. 2.4 ESTRUCTURA ORGANIZATIVA DE LA EMPRESA La organización de INELECTRA es de tipo matricial. Por una parte, para cada trabajo se asigna un gerente y se crea un grupo integrado por personal de los diferentes departamentos, quienes en lo referente al proyecto dependen de la organización 5 creada. Este tipo de estructura le permite al encargado del proyecto una supervisión directa sobre el personal para garantizar una mejor coordinación. Por otra parte, existe una organización departamental dividida en disciplinas o especialidades dentro de la cual se supervisan los trabajos desarrollados por el personal asignado al proyecto, controlando que se cumplan las normas técnicas de la empresa, con la finalidad de asegurar la calidad y productividad en la ejecución del proyecto. 2.4.1 ORGANIGRAMA Debido a la organización tipo matricial, existen dos tipos de organigramas: el organigrama General y el organigrama de Proyectos. • Organigrama General: La empresa está organizada por divisiones, Centros de Operaciones, Departamentos Técnicos y Administrativos, Centro de Ejecución. (Ver figuras 2.1 y 2.2) 6 7 Figura (2.1): Organigrama General de la Empresa. INEPETROL FINANZAS OPERACIONES TELECOMUNICACIONES CORPORATIVA PLANIFICACIÓN RECURSOS HUMANOS LEGAL INDUSTRIALES RELACIONES JUNTA DE ADMINISTRACIÓN CONSEJO CONSULTIVO PRESIDENCIA OPERACIONES DIVISIÓN DE PROCURA DIVISIÓN COMERCIAL DPTO. INFORMÁTICA DIVISIÓN DE INGENIERÍA DIVISIÓN DE PROYECTOS DIVISIÓN DE CONSTRUCCIÓN DPTO. GESTIÓN DE CALIDAD Y TECNOLÓGICA Figura (2.2): Organigrama de Vicepresidencia de Operaciones. • Organigrama de Proyecto: Cada proyecto tiene su propia organización temporal creada para la duración del mismo. Generalmente sufre modificaciones a lo largo del avance del proyecto. Comprende funciones técnicas y a veces del tipo administrativo específicas para el proyecto. (Ver figura 1.3) 8 DIVISIÓN DE INGENIERÍA DPTO. DE INGENIERÍA ELÉCTRICA DPTO. DE TRASPORTE DPTO. DE PROCESOS SECCIÓN DE EQUIPOS Y PROTECCIONES SECCIÓN DE DPTO. DE CANALIZACIONES AUTOMATIZACIÓN Y CONTROL SECCIÓN DE ILUMINACIÓN Y SERVICIOS DE SISTEMAS ESPECIALES DPTO. DE DISEÑO MECÁNICO DPTO DE INGENIERÍA CIVIL DPTO. DE INGENIERÍA MECÁNICA Figura (2.3): Organigrama General de Proyectos. 9 2.4.2 DEPARTAMENTO DE INGENIERÍA ELÉCTRICA El departamento de ingeniería eléctrica, con la búsqueda de mejorar la calidad, excelencia y productividad, se ha planteado la meta de automatizar los cálculos de los diferentes sistemas que desarrolla, entre los cuales se encuentra el diseño del software para calcular la ampacidad de los conductores dispuestos en bancadas y directamente enterrados el cual estará incorporado al Sistema de Diseño Eléctrico (SDE), el sistema de control de materiales (SISMA), etc. 2.4.3 POLÍTICAS, RESPONSABILIDADES Y OBJETIVOS En el departamento se tiene la convicción de que el trabajo en la empresa es un trabajo en equipo, por la tanto la interacción entre las personas que conforman en el departamento es vital para el buen desenvolvimiento de su labor. Las actividades que se desarrollan en el Departamento, en los proyectos son: • Criterios de Diseños. • Diagramas Unifilares. • Esquemáticos de control. • Diagramas Trifilares. • Diagramas de Conexionado. • Planos de Clasificación de Área. • Planos de Disposición de Equipos. • Planos de Canalizaciones. 10 • Planos de Iluminación y Servicios. • Planos de Protección Catódica. • Planos de Puesta a Tierra y Protección contra Descargas Atmosféricas. • Detección de Incendio y Gases. • Cableado. El DIE cuenta además con excelentes herramientas computacionales, que les facilitan el trabajo en equipo ayudando así, a ahorrar tiempo y dinero en horas/hombre. Dentro de una gama de variados programas desarrollados internamente, se destacan: • SDE (Sistema de Diseño Eléctrico). 1. Lista de Cargas. 2. Lista de Cables. 3. Dimensionamiento de alimentadores (en etapa de implementación) 4. Flujo de Carga (en etapa de implementación) 5. Cálculo de niveles de cortocircuito (en etapa de implementación) • Sisma. (Sistema de materiales) • Tierra/ Terram. (Estudio de potenciales en mallas de tierra) • Iluminación. 11 2.4.4 RESPONSABILIDADES 2.4.4.1 RESPONSABILIDADES EN LA DIVISIÓN DE INGENIERÍA • Normalización de procedimientos y documentos. • Centralizar la información técnica. • Evaluación de software especializado. • Administración del recurso humano. • Elaboración de cursos para adiestramiento. • Soporte a las revisiones técnicas. • Apoyo técnico y seguimiento a los proyectos. • Elaboración de ofertas. • Lecciones aprendidas. • Resultados de gestión de los proyectos. • Soporte a las unidades de negocios. 2.4.4.2 RESPONSABILIDADES EN LOS PROYECTOS. • Desarrollo de los sistemas eléctricos. • Organización de los proyectos. Tipos de ingeniería. Tipos de contrato. 12 Tapas en los proyectos. Organización del proyecto. Organización de la disciplina. 2.4.5 ORGANIZACIÓN DE LOS PROYECTOS Los proyectos se organizan y/o se clasifican de acuerdo a los siguientes puntos: • Tipos de Ingeniería: 1. Conceptual. 2. Básica. 3. Detalles. 4. Campo. • Tipos de Contrato: 1. Por Alcance: Ingeniería. (I) Ingeniería y Procura. (IP) Ingeniería, Procura y Construcción. (IPC) 2. Por Relación con el Cliente: Directa. Subcontrato. 13 • Consorcio. Por Manejo: 1. Precio Fijo. 2. Horas-Hombres. (HH) 3. Suma Global.(SG) • Etapas de los Proyectos: 1. Oferta. 2. Asignación. 3. Reunión de Arranque. 4. Criterios de Diseño. 5. Revisión de los criterios de diseño. 6. Emisiones Originales. 7. Emisión para Licitación. 8. Emisión para Construcción. 9. Procura. 10. Construcción/Instalación. 11. Emisión como construido. 14 12. Pruebas. 13. Operación. 14. Entrega/Cierre. • Organización de la Disciplina. 1. Co-Líder. 2. Líder de Área/Sistema. 3. Especialistas. 4. Diseñadores (Ingenieros, Técnicos y Proyectistas) 5. Operadores CAD. 2.4.5.1 SISTEMAS DE CALIDAD. El Departamento de Ingeniería Eléctrica (DIE) se rige por una Política de Calidad, pensada y orientada hacia la satisfacción del cliente y hacia el desarrollo de la empresa, y del departamento (como ente interno de la misma). Aquí, se presenta un extracto de los puntos más importantes de ésta política de trabajo: • Proveer servicios, proyectos e instalaciones que cumplan con los requerimientos acordados en una forma que amerite la satisfacción de nuestros clientes. 15 • Entender profundamente las exigencias del trabajo que se nos asigne. Conocer los requerimientos para hacer nuestro trabajo bien la primera vez y cumplir con esas exigencias y requerimientos todo el tiempo. • Entender profundamente nuestros procesos de trabajo y esforzarnos para mejorarlos continuamente, eliminando todo desperdicio de tiempo, recursos o costos. Finalmente, INELECTRA S.A.C.A., específicamente, el Departamento de Electricidad se rige en sus proyectos, además de los respectivos Códigos Eléctricos (CEN, ANSI, NEMA, IEEE, etc.), por las Normas de Calidad: COVENIN-ISO 9000, COVENIN-ISO 9001, COVENIN-ISO 9004-2. 2.4.6 SISTEMAS COMPUTARIZADOS Se muestra el diagrama de las interrelaciones entre los distintos programas de computación que utiliza el Departamento, se muestra esquematizadamente la relación e interacción entre ellos. 16 AMPCALC lista de cables Cálculo de % ocupación de cables canalizaciones Asignación de MANEJADOR carretes GRAFICO CALA Cálculo de Iluminación TERRAM Cálculo de Resistencia y Voltajes SISMA SCIM Cómputo de detalle planos y sistemas. Lista de materiales Requisiciones, balance y seguimiento de material. SDE Lista de Cargas Canalizaciones Iluminación y T/C Protec. Catódica Detalles Puesta a Tierra Unifilares, comunicaciones Detección y alarma ENLACE AUTOMATICO MANUAL FUTURO Figura (2.4): Sistemas Computarizados del Departamento de Electricidad. 17 CAPITULO 3: FORMULACIÓN MATEMÁTICA 3.1 INTRODUCCIÓN El comportamiento de los fenómenos electromagnéticos que se originan en el subsuelo posee una fundamentación en la teoría electromagnética clásica. La inyección de corriente en un medio físico genera un campo eléctrico y magnético que depende de las condiciones del medio donde se genera, así como de la fuente que los género. Como padre del electromagnetismo Maxwell expuso un conjunto de ecuaciones que determinan el comportamiento de los fenómenos electromagnéticos, gracias a esto, podemos calcular el potencial eléctrico y la densidad de corriente debidas a una excitación. 3.2 ECUACIONES DE MAXWELL Las ecuaciones de Maxwell, son las ecuaciones que describen los fenómenos electromagnéticos. La gran contribución de James Clark Maxwell fue reunir en estas ecuaciones largos años de resultados experimentales, debidos a Coulomb, Gauss, Ampere, Faraday y otros, introduciendo los conceptos de campo y corriente de desplazamiento, y unificando los campos eléctricos y magnéticos en un solo concepto: el campo electromagnético [1, 22]. 18 La formulación moderna de las ecuaciones de Maxwell es debida a Oliver Heaviside y Josiah Willard Gibbs, quienes en 1884 reformularon las ecuaciones originales de Maxwell en un sistema abreviado utilizando una notación vectorial. El estudio del electromagnetismo produce una de las más importantes aplicaciones de análisis vectorial. Tomando en consideración el punto de vista moderno, un campo electromagnético es dominado por 5 vectores E, B, D, H, y J. estos vectores satisfacen las siguientes ecuaciones diferenciales. ∇ xE=- ∂B ⎫ ⎬ Ley de Faraday ∂t ⎭ (3.1) ∇ xH=J+ ∂D ⎫ ⎬ Ley de Ampere ∂t ⎭ (3.2) ∇ . B = 0 }Ley de Gauss (3.3) ∇ . D = ρ }Ley de Gauss (3.4) En un medio isotrópico homogéneo tenemos las siguientes relaciones adicionales, que son conocidas, como relaciones constitutivas que ligan el comportamiento de los campos en diferentes medios materiales. 19 D=ε E (3.5) B=μH (3.6) J=σ E (3.7) A través de las relaciones constitutivas la densidad de campo eléctrico se relaciona con el campo eléctrico, la intensidad de campo magnético con el campo magnético y la densidad de corriente con el campo eléctrico. A continuación, se presenta el significado de cada símbolo y su unidad de medida en el Sistema Internacional: E = Campo eléctrico, voltios por metro. H = Campo magnético, amperios por metro. D = Densidad de campo eléctrico, culombio por metro cuadrado. B = Densidad de campo magnético, tesla (weber por metro cuadrado). J = densidad de corriente, amperios por metro cuadrado. ρ = Densidad de carga eléctrica, culombio por metro cúbico. σ = Permitividad dieléctrica del medio. μ = Permeabilidad magnética del medio, 1/ohm-m. 20 Si consideramos que las corrientes y densidades de corrientes son conocidas, estamos definiendo a la densidad de corriente una variable independiente, la cual, al considerar que es variable en el tiempo, hace que el campo eléctrico y el magnético sean independientes uno del otro. Con lo que tenemos: ∇ xE=0 (3.8) ∇ .D = ρ (3.9) ∇.J=0 (3.10) ∇ xH=J (3.11) ∇ .B = 0 (3.12) 3.3 ANÁLISIS DE LAS ECUACIONES DE MAXWELL CON EXCITACIÓN CONSTANTE EN EL TIEMPO Como el rotor del campo eléctrico es nulo ( ∇ x E = 0 ) y el rotor del campo magnético también es nulo ( ∇ x H = J, J = 0 ), podemos representar el campo eléctrico y el campo magnético, mediante el gradiente de una función escalar Φ, donde Φ se define como la función potencial eléctrico y magnético respectivamente. 21 ∇ xE=0 ⇔ E = - ∇ φe (3.13) ∇ xB=J ⇔ B = - ∇ φm (3.14) De las ecuaciones (3.9) y (3.12) podemos observar que los potenciales satisfacen las siguientes ecuaciones: ∇ 2 φe = - ρ ε (3.15) y ∇ 2 φm = 0 (3.16) El potencial eléctrico satisface la ecuación de Poisson, y el campo magnético satisface la ecuación de Laplace. Sin embargo, si en un punto del espacio la densidad ρ es cero, el potencial eléctrico satisface la ecuación de Laplace. ∇ 2 φe = 0 (3.17) Ahora ambos campos, eléctrico y magnético satisfacen la ecuación de Laplace, y la solución de estas ecuaciones se reduce a la solución de una ecuación sujeta a condiciones de contorno. Si el medio es uniforme, isotrópico e infinito, el potencial producido por un carga puntual en el espacio tiene simetría esférica, con lo que el potencial es función de la 22 23 24 En caso que el medio no sea uniforme, el potencial eléctrico no depende exclusivamente de la distancia ¨r¨ entre la inyección de corriente y el punto de interés, sin embargo, la ecuación (3.17) mantiene su valides. Para el caso de las coordenadas cartesianas la solución de Laplace se plantea de la siguiente forma: ∂ 2φ ∂ 2φ ∂ 2φ ∇ φe (x, y, z) = 2 + 2 + 2 = 0 ∂x ∂y ∂z 2 (3.23) Esta ecuación se resuelve por el método de separación de variables, quedando como sigue: φe (x, y, z) = X(x).Y(y).Z(z) (3.24) La solución de la sustitución de la ecuación (3.24) en la ecuación (3.23) en coordenadas cartesianas es de la forma: d2 X + (m12 + m 22 )X = 0 2 dx (3.25) 25 d2 Y - m12 Y = 0 dy 2 (3.26) d2 Z - m 22 Z = 0 dz 2 (3.27) Las soluciones generales de estas ecuaciones son: X(x) = A x e i m2 +m2 x 1 2 + Bxe -i m2 +m2 x 1 2 (3.28) Y(y) = A y em1 y + B y e -m1 y (3.29) Z(z) = A z em2 z + B z e -m2 z (3.30) En coordenadas cilíndricas la solución de la ecuación de Laplace se representa como: ∇ 2 φe (r, z,ψ) = ∂ 2φ ∂ 2φ ∂ 2φ =0 + + ∂r 2 ∂z 2 ∂ψ 2 (3.31) Resolviendo la ecuación (3.31) por el método de separación de variables: φe (r, z,ψ) = R(r) . Z(z) . Ψ(ψ) (3.32) 26 La solución de la sustitución de la ecuación (3.32) en la ecuación (3.31) en coordenadas cilíndricas es de la forma: m 22 d2R 1 dR 2 + + (m1 + 2 ) = 0 r dr 2 r dr (3.33) d2 Z - m12 Z = 0 dz 2 (3.34) d2Ψ - m 22 Ψ = 0 dψ 2 (3.35) La ecuación (3.33) es conocida como la ecuación de Bessel, esta ecuación es una combinación lineal de funciones de Bessel Jo (Br), y las funciones de Neumann Nn(Br). Las soluciones generales de estas ecuaciones son: R(r) = A r Jm2 (m1r) + Br J−m2 (m1r) (3.36) Z(z) = A z em1 z + B z e -m1 z (3.37) Ψ(ψ) = A ψ em2 ψ + Bψe -m2 ψ (3.38) Considerando la modelación multiestratificada horizontal del subsuelo, el potencial eléctrico producido por la inyección de una corriente ¨I¨ en un medio uniforme es independiente de la coordenada azimutal ψ en un sistema de coordenadas cilíndricas, 27 donde la coordenada Z es normal a las capas horizontales del modelo del subsuelo, debido a esta simplificación en las ecuaciones resulta realmente conveniente la representación en coordenadas esféricas del comportamiento del potencial y el campo eléctrico en un sistema multiestratificado horizontalmente. Considerando la simplificación de la coordenada azimutal ψ, la solución general de la ecuación de potencial eléctrico es: φe (r, z) = R(r). Z(z) = [Ar Jo (mr)+ Br Yo (mr)].[A z emz + Bz e−mz ] (3.39) Donde: A y B son funciones indeterminadas. De la ecuación (3.39) podemos observar que la función de Bessel de clase II de orden cero tiende a (-∞) cuando el argumento tiende a cero. Tomando en consideración lo anterior, en los problemas físicos es usual asignar a Br el valor de cero, con lo que el potencial se hace finito en el punto de inyección de corriente (r=0). De esta forma el potencial puede ser representado por: φe (r, z) = R(r). Z(z) = [Jo (mr)].[A(m)emz + B(m)e−mz ] 28 (3.40) Podemos observar que si la variable muda (m) toma cualquier valor, la ecuación (3.40) es una solución de la ecuación de Laplace, es decir la ecuación (3.40) representa una familia de funciones ortogonales, el potencial vendrá dado por la superposición de todas soluciones y el cálculo de los coeficientes indeterminados satisfaciendo las condiciones de contorno. De esta forma podemos expresar el potencial eléctrico como: φe (r, z) = ∫ [A(m)emz + B(m)e−mz ] .Jo (mr) dm ∞ 0 (3.41) 3.4 FUNCIONES DE BESSEL Las funciones de Bessel son conocidas como las funciones cilíndricas, estas son ampliamente utilizadas en la mecánica gravitatoria, pero también se aplican a otros casos como la propagación de las ondas electromagnéticas, el cual es de nuestra competencia. La resolución de la ecuación de Laplace en coordenadas cilíndricas implica el uso de las ecuaciones de Bessel como se mencionó en la sección (3.3). La ecuación de Bessel puede expresarse como una ecuación diferencial lineal. d2 y dy x +x + (x 2 - n 2 ).y = 0 2 dx dx 2 (3.42) 29 Donde n es un constante. La ecuación (3.42) es una ecuación diferencial lineal de segundo orden, la cual tiene dos soluciones linealmente independientes. La solución general de esta ecuación es: y = C1 Jn (x) + C 2 Yn (x) (3.43) Donde: C1 y C2 son constante arbitrarias. Jn(x) es función de Bessel de clase I de orden cero. Yn(x) es la fusión de Bessel de clase II de orden cero. Estas funciones han sido ampliamente tabuladas y registrados sus resultados por diferentes autores, como es el caso de Pipes & Harvill [22]. 30 CAPITULO 4: MODELACIÓN DEL SUBSUELO 4.1 INTRODUCCIÓN El estudio de los fenómenos electromagnéticos en el suelo requiere de la determinación de la resistividad, permitividad, permeabilidad y la rigidez dieléctrica del suelo. Estos parámetros dependen de múltiples variables, como es el caso de la humedad, composición química, temperatura, entre otros, por esta razón el estudio de estos fenómenos requiere de gran esfuerzo. 4.2 PARÁMETROS DEL SUBSUELO Es bien conocido que el subsuelo generalmente no es uniforme, por el contrario está estructurado por diferentes capas (estratos), lo que hace más complejo el estudio de los fenómenos electromagnéticos y la determinación de los parámetros del suelo. Sólo la permeabilidad del suelo puede ser considerada como uniforme, debido a que sin la presencia de materiales magnéticos en el suelo, el valor de esta es igual a la del vacío. La permitividad varía en rangos de 1 a 80 veces la permeabilidad del vacío, dependiendo de la naturaleza de los materiales presentes en el terreno y de la humedad presente en el. La permitividad es de gran importancia en los problemas relacionados con altas frecuencias, por otra parte, la resistividad de suelo generalmente varía entre 1 y 10000 ohm-metros dependiendo de la composición del terreno, es de suma importancia en todos los problemas que implican al subsuelo como conductor de 31 retorno, como es el caso de los sistemas de puesta a tierra, las interferencias electromagnéticas, la corrosión galvánica y las protecciones contra descargas atmosféricas [1, 24]. 4.3 MEDICIÓN DE LA RESISTIVIDAD. La gran variabilidad que presenta la resistividad hace necesario la medición de esta directamente en los terrenos en estudio, por medio de las mediciones de resistividad se construyen modelos de capas de terreno mediante los cuales se determinan los materiales presentes en el suelo [1]. La técnica más utilizada en la medición de la resistividad directamente sobre el suelo consiste en la inyección de corriente en la superficie del terreno en estudio por medio de un par de electrodos y la medición de la tensión por otro par de electrodos, la configuración de estos electrodos es diferente, dependiendo de la técnica utilizada, distintos autores han realizado diferente aportes en relación a las técnicas de medición de resistividad, en la sección siguiente trataremos las diferentes técnicas existentes. Las técnicas son semejantes entre si, es importante que las dimensiones de los electrodos utilizados en las mediciones sean pequeñas en relación a la separación interelectródica utilizada. Cabe considerar, que en la medida que la separación interelectródica aumenta las condiciones del terreno cambian, por esta razón la resistividad medida depende de esta separación, en estos casos se define la 32 resistividad aparente, con la cual, por medio de la estimación paramétrica se realizan los modelos del suelo, formados por capas o estratos con diferentes espesores. 4.4 MÉTODOS DE MEDICIÓN DE RESISTIVIDADES APARENTES Existen diferentes técnicas de medición de resistividad aparente, en este estudio se consideraron sólo los 6 métodos más importantes de medición de resistividades aparentes: 1. Wenner. 2. Schlumberger. 3. Schlumberger Modificado. 4. Dipolo-Dipolo. 5. Polo-Dipolo. 6. Polo-Polo. Todos los métodos están basados en la inyección de corriente por un par de electrodos y la medición de la tensión por otro par de electrodos como mencionamos en la sección anterior. La diferencia radica en la configuración electrónica propuesta para cada método. En todos los métodos, el cálculo de la resistividad aparente fue realizado a través de la ecuación: 33 ρ = 2.π .K( ΔV ) I (4.1) Donde: La constante K es resultado de la configuración interelectródica y es la diferencia radical entre ellos. ΔV es la diferencia de potencial. I es la corriente de inyección Cada uno de los métodos mencionados tiene una configuración diferente de los electrodos en la realización de la medición. A continuación mostramos las diferentes configuraciones interelectródicas y el valor de la constante K para caso en particular. Wenner. En la configuración de Wenner los electrodos externos (1, 4) son los que inyectan la corriente en el terreno, mientras que los electrodos internos (2, 3) son los que realizan la medición de la tensión. El espaciamiento interelectródico es constante entre todos los electrodos, es decir, la distancias entre los electrodos (1, 2), (2, 3) y (3, 4) es la misma. La profundidad a la cual se entierran los electrodos no debe ser mayor que 1/20 de la separación interelectródica “a”. 34 Figura (4.1): Configuración Interelectródica de Wenner. K =a (4.2) El método de Wenner consiste, en aumentar progresivamente la separación interelectrodica “a”, manteniendo un punto central, en la medida que se aumenta la separación entre los electrodos, mayor es la profundidad de interacción del subsuelo, además, al aumentar esta distancia, la medida se hace mas representativa y confiable. Schlumberger. En la configuración de Schlumberger al igual que la de Wenner, los electrodos externos (1, 4) son los que inyectan la corriente en el terreno, mientras que los electrodos internos (2, 3) son los que realizan la medición de la tensión. El espaciamiento interelectródico varía, la distancia entre los electrodos (1, 2) y (3, 4) es igual, mientras que la distancia de los electrodos internos (2, 3) es diferente y constante en toda la trayectoria de medición. 35 Figura (4.2): Configuración Interelectródica de Schlumberger. a.b + b 2 K= 2.a (4.3) El método de Schlumberger consiste, en separar progresivamente los electrodos de inyección de corriente (1, 4), manteniendo constante la distancia entre los electrodos que miden la diferencia de potencial y el punto central de medición. Cuando las distancia entre los electrodos que inyectan corriente es muy grande, es conveniente aumentar la distancia entre los electrodos que miden la diferencia de potencial, se debería mantener la norma que (1, 4)> 5 (2, 3). Schlumberger Modificado. En la configuración de Schlumberger Modificado al igual que la de Wenner y Schlumberger, los electrodos externos (1, 4) son los que inyectan la corriente en el terreno, mientras que los electrodos internos (2, 3) son los que realizan la medición de la tensión. El espaciamiento interelectrodico varia entre todas las distancias de los 36 electrodos, las distancias entre los electrodos (1, 2) y (2 ,3) es constante durante toda la trayectoria de medición, mientras que la distancia entre los electrodos (3, 4) va variando. Figura (4.3): Configuración Interelectrodica de Schlumberger Modificado. K= a.c.(b + c).(a + b) a.b.(a + b) + c.b.(b + c) (4.4) El método de Schlumberger modificado consiste en separar progresivamente la distancia interelectrodica (3, 4) mientras se mantiene fijos los demás electrodos. Dipolo-Dipolo. En esta configuración se inyecta corriente por un par de electrodos y se mide tensión por otro par, formando así un doble dipolo, (uno de tensión y otro de corriente) tal como muestra la figura (4), para este caso los espaciamientos interelectrodico son diferentes, generalmente las mediciones se realizan para valores de (n>>1). 37 Figura (4.4): Configuración Interelectrodica de Dipolo-Dipolo. K= n.(n + 1).(n + 2) 2 (4.5) Este método consiste en separar gradualmente el centro de los dos dipolos, manteniendo las distancias “a” y “b” constantes, con la finalidad de ir aumentando progresivamente la profundidad de interacción del subsuelo. Polo-Dipolo. En esta configuración se inyecta corriente por un par de electrodos y se mide tensión por otro par, uno de los electrodos de inyección de corriente se coloca a gran distancia, como muestra la figura (5), generalmente las mediciones se realizan para valores de (n>>1). Figura (4.5): Configuración Interelectrodica de Polo-Dipolo. 38 K = a − n − (n + 1) (4.6) Teóricamente la distancia entre los electrodos de inyección de corriente debe ser infinita, ya que esto no es posible lograrlo se debe garantizar que la distancia de los electrodos que inyectan la corriente sea considerablemente mayor que la distancia entre los electrodos que miden la diferencia de potencial. Se debe ir aumentando progresivamente la distancia “n”, con la finalidad que la influencia del electrodo “a” sea lo menor posible. Polo-Polo. En esta configuración se inyecta corriente por un par de electrodos y se mide tensión por otro par, un electrodo de inyección de corriente se coloca a gran distancia, al igual que un electrodo de medición de tensión, como muestra la figura (4.6). Figura (4.6): Configuración Interelectrodica de Polo-Polo. K =a 39 (4.7) Este método consiste en aumentar gradualmente tanto la distancia entre los electrodos de inyección de corriente, como la distancia entre los electrodos de medición de diferencia de potencial, con la finalidad de aumentar la profundidad de interacción del subsuelo. 4.5 MEDICIÓN DE LA RESISTIVIDAD EN UN SUELO UNIFORME En la medición de la resistividad aparente lo más sencillo es considerar que el suelo es uniforme, es decir, que posee una sola capa de terreno con su resistividad propia ρ y un espesor infinito. En la figura (4.7) podemos observar el modelo del suelo monoestratificado. ρ aire=∞ aire ρ tierra Figura (4.7): Modelo del Terreno Monoestratificado. El potencial eléctrico producto de una inyección de corriente en la superficie del terreno, se obtiene considerando que la inyección de corriente es puntual en la interfaz aire-tierra y que se distribuye en el interior del terreno con una simetría esférica. En la 40 figura (4.8) se muestra el modelo de inyección de corriente en el terreno monoestratificado. I aire x tierra ρ aire=∞ ρ J(x) Figura (4.8): Modelo de Inyección de Corriente en un Terreno Monoestratificado. Del modelo presentado en la figura (4.8) podemos calcular la densidad de corriente J(x) mediante la ecuación (4.8). J(x) = I 2.π.x 2 [A/m ] 2 (4.8) De la ecuación (4.8) y las relaciones constitutivas podemos obtener la siguiente expresión: 41 E(x) = I.ρ 2.π.x 2 [V/m ] 2 (4.9) Ahora, para calcular el potencial en un punto específico del terreno, tenemos que calcular la integral de línea del campo eléctrico, desde el punto de interés, hasta el interior de la tierra ubicado en el infinito. ∞ ΔX = V(x) − V(∞ ) = V(x) = ∫ E(x).dx = x ρI 2.π.x [V ] (4.10) En la ecuación (4.10), debemos garantizar que el potencial en el infinito sea cero, por tal motivo, debemos colocar el retorno de la corriente en un punto bástate alejado para garantizar el cumplimiento de esta condición. Una de las limitaciones de este método, es precisamente garantizar el potencial nulo en el infinito, debido a que representa la utilización de un alimentador de gran longitud. En la sección anterior, se mencionaron varios de los modelos alternos que facilitan esta condición. Cabe destacar, que nos centraremos en el método propuesto por Wenner para la demostración y modelación presentada en este libro. 42 Figura (4.9): Método de Wenner para la medición de resistividad. Al utilizar el método de Wenner para la determinación del potencial en el terreno monoestratificado, como se ilustra en la figura (4.9), podemos observar que el potencial en el punto 2 es producto de las corrientes inyectadas en los puntos 1 y 4, podemos observar que el signo de la corriente es diferente entre estos puntos, debido a que en uno de ellos esta entrando y en el otro esta saliendo, dando como resultado la siguiente expresión: V2-1 = I.ρ 1 ( ) 2.π a V2-4 = − V2 = (4.11) I.ρ 1 ( ) 2.π 2.a (4.12) I.ρ 1 1 ( − ) 2.π a 2.a (4.13) 43 Considerando el potencial en el punto 3, este también es producto de las corrientes inyectadas en 1 y 4, dando como resultado: I.ρ 1 ( ) 2.π 2.a (4.14) I.ρ 1 ( ) 2.π a (4.15) I.ρ 1 1 ( − ) 2.π 2.a a (4.16) V3-1 = V3-4 = − V3 = Ahora calcularemos la diferencia de potencial entre los puntos 2 y 3. V23 = V2 - V3 = I.ρ 1 1 1 1 I.ρ ( − − + )= 2.π a 2.a 2.a a 2.π.a (4.17) Lo que realmente nos interesa es la resistividad, para obtenerla despejamos de la ecuación anterior. ρ = 2.π.a. V23 [Ω.m] I (4.18) La ecuación (4.18), representa la resistividad en un punto cuando se inyecta una corriente I entre los electrodos 1 y 4, y se mide una diferencia de potencial entre los 44 electrodos 2 y 3, manteniendo un espaciamiento interelectródico en un terreno monoestratificado [1]. Para el cálculo del potencial en un terreno monoestratificado la resistividad es constante y el espesor infinito, con el método de Wenner se puede definir un concepto denominado resistividad aparente, el cual es la resistividad medida en un punto específico con un espaciamiento interelectródico determinado. Podemos observar en la ecuación (4.18), que la resistividad aparente es inversamente proporcional a la separación interelectródica, esto es debido a que en un terreno monoestratificado, como lo mencionamos anteriormente, la resistividad propia del terreno es contaste. La resistividad aparente nos permite calcular la resistividad propia de cada capa del terreno y su espesor correspondiente [1]. 4.6 MEDICIÓN DE LA RESISTIVIDAD EN UN SUELO BIESTRATIFICADO El modelo del terreno biestratificado horizontalmente, está formado por dos capas de terreno con sus respectivos valores de resistividad propia ρ1 y ρ2, con un espesor de la primera cada d1 y el de la segunda capa d2 es infinito, y profundidad h. Podemos observar en la figura (4.10) que existen 3 zonas de resistividad homogénea, el aire donde la resistividad es infinita, la primera capa y la segunda capa con sus correspondientes resistividades y espesores. La inyección de corriente es a una profundidad s dentro de la primera capa. 45 z=0 h z s ρ1 Ф0 r Ф1 d1 I Ф2 d2=∞ ρ2 Figura (4.10): Modelo de Terreno Biestratificado con Inyección de Corriente en la Primera Capa. En suelos biestratificados horizontalmente, el cálculo de las resistividades se complica, debido a que la simetría esférica al inyectar la corriente desaparece. Sin embargo, se mantiene una simetría cilíndrica, que nos permite obtener el campo eléctrico, considerando las condiciones de contorno en las superficies de discontinuidad, podemos obtener la solución de los coeficientes indeterminados y con estos la solución general del campo eléctrico. 46 Como se presentó en el Capitulo 4, la solución general del problema está determinado por la sumatoria infinita de funciones ortogonales multiplicadas por funciones de Bessel de orden cero tomando en consideración las condiciones de contorno [1]. Para cada estrato la solución general viene determinada por las ecuaciones siguientes: ρ1.I ∞ φ0 (z,r) = A 0 (m).e −mz J0 (mr)dm ; ∀ z > 0 ∫ 4.π 0 φ1 (z,r) = ( (4.19) ) ρ1.I ∞ -m z + s e + A 1 (m).e −mz + B1 (m) e mz J0 (mr)dm ; ∀ - d ≤ z ≤ 0 4.π ∫0 ρ1.I ∞ φ 2 (z,r) = B 2 (m) e mz J0 (mr)dm ; ∀ z ≤ -d ∫ 4.π 0 (4.20) (4.21) Los potenciales en los planos de contorno deben ser iguales, calculados mediante la ecuación de un estrato superior o por la del estrato inferior. Las condiciones de contorno para el problema son: φ 0 (z = 0, r) = φ1 (z = 0, r) (4.22) φ1 (z = −d, r) = φ 2 (z = −d, r) (4.23) 47 Además, las densidades de corriente normal a cada una de las superficies son constantes: J0 z (z = 0, r) = 1 ∂φ0 (0, r) 1 ∂φ1 (0, r) = J1z (z = 0, r) = ρ0 ρ1 ∂z ∂z (4.24) J1z (z = -d, r) = 1 ∂φ1 (-d, r) 1 ∂φ 2 (-d, r) = J 2z (z = -d, r) = ρ1 ρ2 ∂z ∂z (4.25) Ahora, considerando las condiciones de contorno y las ecuaciones de potencial, se obtiene un sistema de ecuaciones lineales, cuyas incógnitas son las funciones indeterminadas. ∞ [ A 0 (m) = 2e ¨ −ms + 2∑ k n e −m(2hn + s) + e −m(2hn −s) ] (4.26) n =1 ∞ [ A 1(m) = ∑ k n e −m(2hn +s) + e −m(2hn −s) ] (4.27) n=1 B1(m) = e ¨ − ms ∞ ∞ [ ] (4.28) [ ] (4.29) + ∑ k n e −m(2hn +s) + e −m(2hn −s) n=1 B 2 (m) = ∑ k n (k + 1) e −m(2hn +s) + e −m(2hn −s) n=1 48 Donde k viene dada por la expresión: k= ρ 2 − ρ1 ρ 2 + ρ1 (4.30) Una vez obtenidas las funciones indeterminadas, se sustituyen en la solución general y se realiza la integración. φ0 (z,r) = ρ1.I 4.π ⎧⎪ ∞ ⎡ 1 1 1 n k + + ⎢ ⎨ 2 ∑ 2 n =1 ⎢⎣ r 2 + (2hn + s + z)2 r 2 + (2hn − s + z)2 ⎪⎩ r + (s + z) 1 1 ⎧ ⎫ + + ..... ⎪ 2 ⎪ 2 r 2 + (s − z)2 ⎪ r + (s + z) ⎪ ⎪ 1 1 ⎤ ⎪⎪ ⎡ ρ1.I ⎪ ..... + + φ1 (z,r) = ⎨ ⎥⎬ ⎢ 2 ∞ 4.π ⎪ r + (2hn + s + z)2 r 2 + (2hn − s + z)2 n⎢ ⎥⎪ k ⎪..... + ∑ ⎥⎪ ⎢ 1 1 n =1 + ⎪ ⎥⎪ ⎢..... + 2 r + (2hn + s − z)2 r 2 + (2hn − s − z)2 ⎦⎥ ⎪⎭ ⎪⎩ ⎣⎢ φ 2 (z,r) = ρ1.I 4.π ⎧⎪ ∞ ⎡ 1 1 n + ⎨∑ k (k + 1)⎢ 2 ⎢⎣ r + (2hn + s − z)2 r 2 + (2hn − s − z)2 ⎪⎩n=0 ⎤ ⎫⎪ ⎥⎬ ⎥⎦ ⎪⎭ ⎤ ⎫⎪ ⎥⎬ ⎥⎦ ⎪⎭ (4.31) (4.32) (4.33) Ahora consideremos el cálculo del potencial en la superficie, como la inyección de corriente es en la superficie, la coordenada z es cero al igual que la profundidad s. 49 ρ .I φ1 (z = 0, r) = 1 2.π ⎧⎪1 ∞ ⎡ kn ⎨ + 2∑ ⎢ 2 2 n =1 ⎢ r + (2hn) ⎪⎩ r ⎣ ⎤ ⎫⎪ ⎥⎬ ⎥⎦ ⎪⎭ (4.34) A partir de esta ecuación, podemos aplicar el método de Wenner para obtener las resistividades en función de los espaciamientos interelectródicos, realizando un procedimiento igual al utilizado en el caso monoestratificado, generando la siguiente ecuación: V23 De ⎧ ⎪ ∞ ρ .I ⎪ = 1 ⎨1 + 4 ∑ k n 2.π ⎪ n =1 ⎪⎩ esta ecuación, ⎡ ⎢ 1 1 ⎢ − ⎢ 2hn 2 2hn 2 ) 4+( ) ⎢ 1+ ( a a ⎣ podemos definir la ⎤ ⎥ ⎥ ⎥ ⎥ ⎦ ⎫ ⎪ ⎪ ⎬ ⎪ ⎪⎭ (4.35) resistividad aparente para terrenos biestratificados en capas horizontales como [1]: ⎧ ⎪ ∞ ⎪ ρ a (ρ1, ρ 2 , h, a) = ρ1 ⎨1 + 4 ∑ k n n =1 ⎪ ⎪⎩ ⎡ ⎢ 1 1 ⎢ − ⎢ 2hn 2 2hn 2 ) 4+( ) ⎢ 1+ ( a a ⎣ 50 ⎤ ⎥ ⎥ ⎥ ⎥ ⎦ ⎫ ⎪ ⎪ ⎬ ⎪ ⎪⎭ (4.36) 4.7 MEDICIÓN DE LA RESISTIVIDAD EN UN SUELO MULTIESTRATIFICADO Para el caso de la multiestratificación del subsuelo, se resuelve la solución general del problema para cada capa. Se plantea la hipótesis que a medida que la coordenada z aumenta positiva o negativamente, el potencial tiende a cero, esto anula dos funciones indeterminadas, además se establecen las condiciones de contorno, dos por cada interfaz con variación de resistividad. De esta forma se tiene que para un terreno con p capas, se tienen 2p condiciones de contorno, al considerar el aire como un medio se tienen (p+1) zonas para el cálculo de potenciales e igual número de soluciones generales, cada una con dos condiciones de contorno. En resumen, para un terreno con p capas, se tiene 2(p+1) funciones indeterminadas, 2p condiciones de contorno y dos condiciones para garantizar que el potencial en el infinito sea nulo. La dificultad está, en obtener las 2(p+1) funciones indeterminadas, de las 2p condiciones de contorno y de las dos condiciones que satisfacen que el potencial en el infinito sea cero, introducirlas en la solución general e integrar las soluciones generales de cada medio para cada valor de la variable muda m. 51 z=0 h1 z I Ф0 s r Ф1 d1 ρ2 Ф2 d2 ρ3 Ф3 d3 ρ1 h2 h3 hp-1 ρp Фp dp Figura (4.11): Modelo Multiestratificado del subsuelo. En la figura (4.11) se muestra la representación esquemática del modelo de multiestratificación horizontal del subsuelo mediante una inyección de corriente en la primera capa. Las soluciones generales de los potenciales para este modelo son: φ0 (z,r) = ρ1 I ∞ f0 (m)e −mz J0 (mr)dm ; ∀ z > 0. 4π ∫0 52 (4.37) φ1 (z,r) = ρ 1 I ∞ -m z + s [e + f1 (m)e −mz + g1 (m)e mz ]J0 (mr)dm ; ∀ 0 ≥ z ≥ - h1. ∫ 4π 0 (4.38) ρ1 I ∞ φ 2 (z,r) = [f 2 (m)e −mz + g 2 (m)e mz ]J0 (mr)dm ; ∀ - h1 ≥ z ≥ - h 2 . ∫ 4π 0 (4.39) ρ1 I ∞ [f 3 (m)e −mz + g3 (m)e mz ]J0 (mr)dm ; ∀ - h 2 ≥ z ≥ - h 3 . 4π ∫0 (4.40) φ3 (z,r) = …….. …….. …….. ρ1 I ∞ φp−1 (z,r) = [fp-1 (m)e −mz + gp-1 (m)e mz ]J0 (mr)dm ; ∀ - h p-2 ≥ z ≥ - h p-1. ∫ 4π 0 φp (z,r) = ρ1 I ∞ gp-1 (m)e mz J0 (mr)dm ; ∀ - h p-1 ≥ z ≥ - h p . ∫ 4π 0 (4.41) (4.42) Las condiciones de contorno para los potenciales son: φp (-hp ,r) = φp+1 (-hp , r) ; ∀ p = 1, 2, 3, ......., p − 1. Para las densidades de corriente las condiciones de contorno son: 53 (4.43) 1 ∂φp ( −h p , r) 1 ∂φp +1 ( −h p , r) = ; ∀ p = 1,2,3,.... ., p − 1. ρp ∂z ρ p +1 ∂z (4.44) Aller [1] ha obtenido de forma exacta y precisa los potenciales de los diferentes planos, aplicando las condiciones de contorno para al plano k=0 se obtiene: ⎡ f (m) ⎤ f1 (m) − g1 (m) = −1 ⇒ [1 − 1]⎢ 1 ⎥ = −1 ⎣g1 (m)⎦ (4.45) De igual forma, aplicando las condiciones de contorno para al plano k=1 obtuvo: 1 1 + ⎡ f1 (m) ⎤ ρ1 ρ 2 ⎢g (m)⎥ = 2 ⎣ 1 ⎦ ρ1 ⎡ 1 ⎢ 2mh1 ⎣k 1e k 1e −2mh1 ⎤ ⎡ f 2 (m) ⎤ ⎡0⎤ ⎥⎢ ⎥−⎢ ⎥ 1 ⎦ ⎣g 2 (m)⎦ ⎣1⎦ (4.46) Y para cualquier plano k. ⎡ fk (m) ⎤ ⎡ fk +1 (m) ⎤ ⎢g (m)⎥ = E k ⎢g (m)⎥ ; ∀ k = 2, 3, 4, ....., p − 1. ⎣ k ⎦ ⎣ k +1 ⎦ Donde: 54 (4.47) 1 Ek = 1+ k k ⎡ 1 ⎢ 2mhk ⎣k k e k k e −2mhk ⎤ ⎥ 1 ⎦ (4.48) 1 1 − ρ ρ k +1 ; ∀ k = 1, 2, 3, ....., p − 1. Kk = k 1 1 + ρ k ρ k +1 (4.49) Por medio de la sustitución de la ecuación (4.47) en la ecuación (4.46), se calculan las funciones indeterminadas f1(m) y g1(m) en función de gp(m). ⎡ p −1 ⎤ ⎡ f1 (m) ⎤ ⎢ ⎡0⎤ ⎡0⎤ ⎡0⎤ ⎥ ⎡0⎤ ⎢g (m)⎥ = ⎢ k =1 E k ⎥ ⎢ 1⎥ gp (m) − ⎢ 1⎥ = P ⎢ 1⎥ gp (m) − ⎢ 1⎥ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ 1 ⎦ ⎢ ⎦⎥ ⎣ Π (4.50) Mediante las ecuaciones (4.45) y (4.50) se despeja la función indeterminada gp(m): ⎡ ⎡0⎤ ⎤ gp (m) = - 2⎢[1 − 1] P ⎢ ⎥ ⎥ ⎣ 1⎦ ⎦ ⎣ −1 = 2 P22 (m) − P12 (m) (4.51) Donde: P22(m) y P12(m) son las funciones correspondientes a los elementos de la segunda columna de la matriz P. Ahora se determina el valor de las funciones indeterminadas 55 reemplazando la ecuación (4.50) en el valor de la función gp(m) obtenido en la ecuación (4.51). ⎡P12 (m) ⎤ ⎡0⎤ ⎡ f1 (m) ⎤ 2 ⎢g (m)⎥ = P (m) − P (m) ⎢P (m)⎥ − ⎢ 1⎥ ⎦ ⎣ ⎦ ⎦ ⎣ 22 ⎣ 1 22 12 (4.52) Sustituyen la ecuación (4.52) en la ecuación (4.38), obtenemos el potencial en un punto de la superficie de terreno. ∞ ρ I P (m) + P12 (m) φ1(0,r) = 1 ∫ 22 J0 (mr)dm 2π 0 P22 (m) − P12 (m) (4.53) Aller demostró, que para un valor de m=mmax, tal que el valor de 2mmaxh1 sea tan grande que exceda el argumento máximo de la función exponencial, la ecuación (4.53) se puede expresar como: φ1 (0, r) = ρ1 I ⎡ ⎢ 2π ⎣⎢ mmax ∫ 0 ∞ ⎤ P22 (m) + P12 (m) J0 (mr)dm + ∫ J0 (mr)dm⎥ P22 (m) − P12 (m) mmax ⎦⎥ (4.54) Por medio de la integral de Lipschitz, podemos resolver el segundo término encerrado en el corchete, y simplificar la ecuación (4.54). 56 ρ I ⎡1 φ1 (0,r) = 1 ⎢ + 2π ⎣⎢ r mmax ∫ 0 ⎤ P22 (m) + P12 (m) J0 (mr)dm⎥ P22 (m) − P12 (m) ⎦⎥ (4.55) Esta ecuación nos permite calcular de forma efectiva y precisa los potenciales en terrenos multiestratificados, podemos observar que en la medida que mmax tienda al infinito, la solución será mas exacta. De igual forma Sunde [24] ha obtenido los potenciales en los terrenos de forma exacta. φ1(0, r) = ρ1 I ∞ F123....p J0 (mr)dm 2π ∫0 (4.56) Donde: F123...p (m) = k 123...p = 1 − k 123...p e −2mh1 (4.57) 1 + k 123...p e −2mh1 ρ1 − ρ 2F23...p (m) (4.58) ρ1 + ρ 2F23...p (m) F23...p (m) = 1 − k 23...p e −2m(h2 −h1 ) (4.59) 1 + k 23...p e −2m(h2 −h1 ) 57 k 23...p = ρ 2 − ρ 3F3...p (m) (4.60) ρ 2 + ρ 3F3...p (m) ……. ……. ……. F(p-1)p (m) = k (p-1)p = 1 − k (p-1)p e −2m(hp -1−hp-2 ) (4.61) 1 + k (p-1)p e −2m(hp -1−hp-2 ) ρ p-1 − ρ p (4.62) ρ p-1 + ρ p La resistividad aparente definida por la metodología de medición de Wenner, puede ser calculada para el modelo de multiestratificación del subsuelo, por los aportes de Sunde [24]. ∞ ⎡ ⎤ k 123...p e −2mh1 ρ a = ρ1 ⎢1 − 4a ∫ (J0 (m.a) − J0 (2.m.a))dm ⎥ − 2mh1 ⎢⎣ ⎥⎦ 0 1 + k 123...p e (4.63) Mediante los aportes realizados por Aller [1]. mmax ⎡ ⎤ P12 (m) ρ a = ρ1 ⎢1 + 4a ∫ (J0 (m.a) − J0 (2.m.a))dm ⎥ P22 (m) − P12 (m) 0 ⎣⎢ ⎦⎥ 58 (4.64) Al realizar una comparación entre las ecuaciones (4.63) y (4.64), observamos que la ecuación (4.63) requiere de una integración numérica hasta el infinito, mientras que la ecuación (4.64) está acotada por un valor finito mmax. Ambas soluciones generan soluciones prácticamente iguales, sin embargo, la ecuación (4.64) requiere un menor esfuerzo de cálculo. 59 CAPITULO 5: PROBLEMA DIRECTO 5.1 INTRODUCCIÓN La metodología matemática desarrollada por Maxwell para el estudio de los fenómenos electromagnéticos está elaborada en una sola dirección, es decir, se deben conocer ciertos parámetros para lograr el cálculo de los potenciales del terreno, como se ha discutido en las secciones anteriores, debido a la gran variabilidad de la resistividad, es necesario medirla directamente en el subsuelo, con lo que obtenemos la resistividad aparente, sin embargo, lo que realmente deseamos conocer es el modelo del subsuelo. Sólo a partir de este modelo compuesto de resistividades propias, número de capas y espaciamientos interelectródicos, podemos conocer la resistividad aparente que obtendremos al realizar las mediciones, esto es lo que se conoce como el método directo, las ecuaciones matemáticas están desarrolladas en esta dirección de cálculo. Numero de Capas Numero de Mediciones Espaciamientos Interelectrodicos ρ1 ρ2 . . . ρn d1 d2 . . . dn-1 Modelación Multiestratificada ρa=2*π*g*(ΔV/I) ρa (RESISTIVIDADES APARENTES) Figura (5.1): Modelo esquematizado del método directo. 60 5.2 CALCULO DE LA RESISTIVIDAD APARENTE Siguiendo el esquema planteado por Aller [1], se realizaron 3 rutinas de programación: • RESIS 1: Para el cálculo de resistividades aparentes en terreno biestratificados según la metodología de las imágenes de Maxwell. • RESIS 2: Para el cálculo de las resistividades aparentes en terrenos multiestratificados según la metodología de Sunde y Takahashi. • RESIS 3: Para el cálculo de las resistividades aparentes en terrenos multiestratificados según la metodología de Aller. Se realizaron varios ejemplos comparativos, de terrenos biestratificados para verificar la exactitud de los algoritmos desarrollados, utilizando como punto de comparación el algoritmo RESIS 1. 61 Tabla (I): Resultados de Resistividad Aparente de Modelo de Terreno 1. Modelo de Terreno 1 100 Ω.mts ρ1 = 500 Ω.mts ρ2 = Espesor = Espaciamientos Interelectrodicos (mts) RESIS 1 3 mts RESIS 2 ρa (Ω.mts) ρa (Ω.mts) 1 2 3 5 10 20 50 100 101,869999 111,823591 129,434044 172,284772 260,822106 357,876770 451,630237 483,963478 Tiempo de Calculo 0,120173 s 102,022904 111,850431 129,442716 172,286725 260,822305 357,876797 451,630052 483,963547 RESIS 3 Error % ρa (Ω.mts) Error % -0,152905 -0,026840 -0,008672 -0,001953 -0,000199 -0,000027 0,000185 -0,000069 101,961430 111,838690 129,438820 172,285800 260,822350 357,876640 451,620210 483,848320 -0,091431 -0,015099 -0,004776 -0,001028 -0,000244 0,000130 0,010027 0,115158 2,453528 s 1,09157 s Resistividad Aparente Vs. Espaciamientos Interelectrodicos Resistivid ad Ap aren te 1000 100 1 10 100 Espaciamiento Interelectrodico Figura (5.2): Gráfico de Resistividad Aparente del Modelo Terreno 1. 62 Tabla (II): Resultados de Resistividad Aparente de Modelo de Terreno 2. Modelo de Terreno 2 500 Ω.mts ρ1 = 100 Ω.mts ρ2 = Espesor = Espaciamientos Interelectrodicos (mts) RESIS 1 5 mts RESIS 2 ρa (Ω.mts) ρa (Ω.mts) 1 2 3 5 10 20 50 100 498,211742 487,186707 463,341702 389,038198 219,199408 119,687208 101,803879 100,426789 Tiempo de Calculo 0,130187 s 498,214795 487,187030 463,341835 389,038236 219,199408 119,687260 101,804074 100,426568 RESIS 3 Error % ρa (Ω.mts) Error % -0,003053 -0,000323 -0,000133 -0,000038 0,000000 -0,000052 -0,000195 0,000221 498,213420 487,186820 463,341770 389,038270 219,199400 119,687050 101,804390 100,544580 -0,001678 -0,000113 -0,000068 -0,000072 0,000008 0,000158 -0,000511 -0,117791 1,882707 s 0,941354 s Resistividad Aparente Vs. Espaciamientos Interelectrodicos Resistividad Aparente 1000 100 1 10 100 Espaciamiento Interelectrodico Figura (5.3): Gráfico de Resistividad Aparente del Modelo Terreno 2. 63 Tabla (III): Resultados de Resistividad Aparente de Modelo de Terreno 3. Modelo de Terreno 3 30 Ω.mts ρ1 = 600 Ω.mts ρ2 = Espesor = 2 mts Espaciamientos Interelectrodicos (mts) ρa (Ω.mts) ρa (Ω.mts) Error % ρa (Ω.mts) Error % 1 2 3 5 10 32,463446 33,658584 43,062835 43,418821 58,209721 58,355347 89,995823 90,035974 158,602359 158,608043 -1,195138 -0,355986 -0,145626 -0,040151 -0,005684 33,274374 43,283414 58,295817 90,018479 158,605664 -0,810928 -0,220579 -0,086096 -0,022656 -0,003305 20 258,355712 258,356433 -0,000721 258,355900 -0,000188 50 414,698587 414,698886 -0,000299 414,676507 0,022080 100 511,868876 511,868791 0,000085 511,773234 0,095642 Tiempo de Calculo RESIS 1 0.140202 s RESIS 2 RESIS 3 2.95448 s 1.942794 s Resistividad Aparente Vs. Espaciamientos Interelectrodicos Resistividad Aparente 1000 100 10 1 10 100 Espaciamiento Interelectrodico Figura (5.4): Gráfico de Resistividad Aparente del Modelo Terreno 3. 64 Al comparar con los resultados obtenidos de los tres modelos desarrollados, podemos decir, que el método de las imágenes de Maxwell es el más exacto en simulaciones biestratificadas, de igual forma, al considerar el tiempo de cálculo en las simulaciones biestratificadas, el método de las imágenes de Maxwell es mejor, pero sabemos que la complejidad que se introduce al utilizar la metodología de las imágenes de Maxwell para realizar simulaciones multietratificadas, hace que este método sea descartado, debido al esfuerzo de cálculo que involucra. Por otra parte, se realizaron ejemplos de terrenos multiestratificados, los ejemplos seleccionados son los mismos utilizados por Takahashi y por Aller para realizar sus verificaciones. Tabla (IV): Modelos de Terreno (bajo alto) de Takahashi Aller. Modelo de Terreno ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) A B C D 10 10 10 10 100 100 100 100 10 10 10 65 ρ4 (Ω.mts) ρ5 (Ω.mts) 100 100 10 ρ1=10 Ω.mts ρ2=100 Ω.mts d1=5 mts ρ1=100 Ω.mts d1=5 mts ρ2=10 Ω.mts d2=10 mts d1=5 mts ρ1=10 Ω.mts d1=5 mts ρ2=100 Ω.mts d2=10 mts ρ2=100 Ω.mts d2=10 mts ρ3=10 Ω.mts d3=20 mts ρ3=10 Ω.mts d3=20 mts ρ4=100 Ω.mts d4=∞ ρ4=100 Ω.mts d4=40 mts ρ5=10 Ω.mts d5=∞ ρ1=10 Ω.mts d2=∞ ρ3=100 Ω.mts d3=∞ Figura (5.5): Figura (5.6): Terreno A. Terreno B. Figura (5.7): Terreno C. Figura (5.8): Terreno D. Tabla (V): Resistividades Aparentes de los Modelos de Terreno Estudiados por Espaciamientos Interelectrodicos (mts) Takahashi Aller. RESIS 2 RESIS 3 RESIS 2 RESIS 3 RESIS 2 RESIS 3 RESIS 2 RESIS 3 1 10,322505 10,241491 10,001797 10,034161 10,953607 10,792205 9,782937 9,810991 2 10,486540 10,453549 10,387664 10,385465 11,034677 10,883561 10,103665 10,170674 3 11,202500 11,186732 11,115234 11,113777 11,592967 11,469872 10,944017 11,011111 5 13,815217 13,810173 13,578651 13,578343 13,872716 13,789577 13,560853 13,583620 10 22,531305 22,530502 20,970379 20,970344 21,196197 21,161577 21,090013 21,087958 20 37,421673 37,421571 29,116649 29,116646 30,065901 30,056747 29,922127 29,921686 50 63,026737 63,026659 25,031224 25,031202 33,355382 33,354502 31,706858 31,706793 100 80,894141 80,891219 14,456491 14,453571 39,075330 39,072305 30,188828 30,185910 Tiempo de Calculo 1,65237 s 1,72247 s 2,72391 s 2,08299 s 2,78400 s 2,09301 s 3,58515 s 2,13306 s Modelo de Terrenos Takahashi Aller A B C 66 D Resistividad Aparente Resistividad Aparente Vs. Espaciamientos Interelectrodicos 100 A B C D 10 1 10 100 Espaciamientos Interelectrodicos Figura (5.9): Resistividades Aparentes de los Modelos de Terrenos Estudiados por Takahashi y Aller. 67 Figura (5.10): Resistividad Aparente de Modelos de Terrenos (bajo alto) Obtenida por Takahashi. Figura (5.11): Resistividad Aparente de Modelos de Terrenos (bajo alto) Obtenida por Aller. 68 Tabla (VI): Modelos de Terreno (alto bajo) de Takahashi Aller. Modelo de Terreno ρ1 (Ω.mts) 100 100 100 100 A B C D ρ1=100 Ω.mts ρ2=10 Ω.mts ρ2 (Ω.mts) d1=5 mts ρ3 (Ω.mts) 10 10 10 10 ρ4 (Ω.mts) 100 100 100 ρ5(Ω.mts) 10 10 100 ρ1=100 Ω.mts d1=5 mts ρ1=100 Ω.mts d1=5 mts ρ1=100 Ω.mts d1=5 mts ρ2=10 Ω.mts d2=10 mts ρ2=10 Ω.mts d2=10 mts ρ2=10 Ω.mts d2=10 mts ρ3=100 Ω.mts d3=20 mts ρ3=100 Ω.mts d3=20 mts ρ4=10 Ω.mts d4=∞ ρ4=10 Ω.mts d4=40 mts ρ5=100 Ω.mts d5=∞ d2=∞ ρ3=100 Ω.mts d3=∞ Figura (5.12): Terreno A. Figura (5.13): Terreno B. Figura (5.14): Terreno C. Figura (5.15): Terreno D. 69 Tabla (VII): Resistividades Aparentes de los Modelos de Terreno Estudiados por Espaciamientos Interelectrodicos (mts) Takahashi Aller. RESIS 2 RESIS 3 RESIS 2 RESIS 3 RESIS 2 RESIS 3 RESIS 2 RESIS 3 1 99,56818 99,56786 100,1341 99,99760 99,29834 99,37623 100,4628 100,35074 2 96,904671 96,904623 97,221698 97,136930 96,879658 96,913975 97,836965 97,676623 3 91,160956 91,160941 91,429814 91,375943 91,263714 91,267992 92,040796 91,875514 5 73,390455 73,390464 73,919382 73,894961 73,833467 73,831322 74,389879 74,252956 10 33,867273 33,867273 36,693986 36,688323 36,478679 36,478354 36,775175 36,691307 20 12,860352 12,860300 23,875266 23,874338 22,453685 22,453599 22,675576 22,640424 50 10,187001 10,187126 42,098762 42,098851 29,848027 29,848236 31,476778 31,471441 100 10,044035 10,072930 61,716580 61,745462 25,177151 25,206044 33,278540 33,306482 Tiempo de Calculo 2,02290 s 1,78256 s 2,84409 s 1,88270 s 3,34481 s 2,01289 s 4,13594 s 2,12305 s Modelo de Terrenos Takahashi Aller A B C D Resistividad Aparente Resistividad Aparente Vs. Espaciamientos Interelectrodicos 1000 A B 100 C D 10 1 10 100 Espaciamientos Interelectrodicos Figura (5.16): Resistividades Aparentes de los Modelos de Terrenos (alto bajo) Estudiados por Takahashi y Aller. 70 Figura (5.17): Resistividad Aparente de Modelos de Terrenos (alto bajo) Obtenida por Takahashi. Figura (5.18): Resistividad Aparente de Modelos de Terrenos (alto bajo) Obtenida por Aller. 71 Ahora, al considerar el método propuesto por Sunde Takahashi y compararlo con el método propuesto por Aller, podemos concluir que la diferencia en tiempo de ejecución es considerable y proporcional a los estratos simulados, las diferencias en los resultados son pequeñas, menores al 0.1%, lo cual es despreciable. La metodología propuesta por Aller es exacta, rápida y precisa. 72 CAPITULO 6: PROBLEMA INVERSO 6.1 INTRODUCCIÓN En este caso se quiere determinar el modelo del terreno. Para este fin es necesario utilizar de herramientas de estimación paramétrica, que determinen el modelo del subsuelo a partir de la resistividad aparente y los espaciamientos interelectródicos. El cálculo de los parámetros de subsuelo no puede ser realizado por la solución de un sistema de ecuaciones, es necesario optar por métodos más avanzados de estimación de estado. En la estimación de estados se utilizan técnicas de optimización no lineal que permiten obtener los parámetros de un sistema definido por un número de medidas independientes, superiores al número de parámetros que es preciso identificar [1]. 6.2 CALCULO DE LOS PARÁMETROS DEL SUBSUELO La estimación paramétrica busca que las variables de estado coincidan aproximadamente con el modelo real del terreno, ya que si esto se logra no existirán diferencias considerables entre los valores medidos en el terreno de resistividades aparentes y los valores calculados mediante los modelos desarrollados por Aller [1]. Para realizar esta comparación es necesario tener una medida del grado de similitud entre los valores medidos y los calculados, esto se logra mediante la sumatoria de los errores cuadráticos, entre los valores de las mediciones de resistividad aparente obtenidas en campo y los valores calculados mediante el modelo [1]. 73 Aller [1] plantea que el cuadrado de las diferencias entre los valores medidos y los calculados elimina la influencia del signo en la diferencia y evita la posibilidad de compensación de errores por defecto con errores por exceso. Además al dividir el error entre la resistividad aparente medida se obtiene una función de costos normalizada que depende de los errores relativos. Podemos expresar matemáticamente el problema planteado anteriormente mediante la siguiente expresión: ⎡ρ (k ) − ρ calculadas (k i ) ⎤ Ψ = ∑ ⎢ medidas i ⎥ ρ medidas (k i ) i=1 ⎣ ⎦ n 2 (6.1) Donde: ρmedidas(ai) es la i-enésima resistividad aparente medida en campo. ρcalculadas(ai) es la i-enésima resistividad aparente calculada por medio del modelo. ki es el resultado de la configuración interelectródica producto del método de medición utilizado en la i-aba medida. i es el número correspondiente para cada uno de las medidas realizadas. n es el número de medidas en total. 74 Lo que se busca es minimizar la ecuación (6.1) esto se logra resolviendo el problema de los mínimos cuadrados. El algoritmo utilizado para realiza la minimización es el de Gauss-Newton, este método de optimización aproxima la función ψ en series de Taylor hasta los términos correspondientes a la segunda derivada. Al expandir la función de costos es posible calcularlas derivadas parciales de la función ψ con respecto a cada uno de los paramentos que definen el modelo del subsuelo e igualar estas derivadas a cero. La solución de este sistema de ecuaciones indica la dirección en la cual deben cambiar el conjunto de variables de estado para reducir el valor de la función de costos. El paso definitivo de incremento en los parámetros debe ser evaluado mediante una optimización unidimensional [1]. 6.3 ALGORITMO GENÉTICO Los algoritmos genéticos han cobrado gran popularidad en los últimos años, son una técnica de búsqueda basada en la teoría de la evolución de Darwin, estos algoritmos hacen evolucionar una población de individuos sometiéndola a acciones aleatorias semejantes a las que actúan en la evolución biológica (mutaciones y recombinación genética), así como también, a una selección de acuerdo con algún criterio, en función del cual se decide cuáles son los individuos más adaptados, que sobreviven, y cuáles los menos aptos, que son descartados. Por medio de la técnica de algoritmo genético se desarrollo un método para estimar automáticamente el vector de arranque de la modelación multiestratificada del 75 subsuelo. Se determina la población el inicial al azar, se evalúa la calidad de esta población, el factor de calidad fue determinado de forma experimental, de cumplirse la condición de calidad, la población es cruzada y mutada, de donde se escogen los mejores seres (hijos), este procedimiento podría seguir tanto como fuese posible, pero cabe destacar, que el objetivo es determinar un vector de arranque lo suficientemente bueno para garantizar la convergencia de modelo. Numero de generaciones Algoritmo Genético Creación al azar de n padres Cumple con la condición de calidad Evaluación de la calidad de los genes de los padres no si Selección de los mejores padres Combinación y Mutación de los padres (Creación de los hijos) Evaluación de la calidad de los genes de los hijos Selección de los mejores hijos Vector de Arranque Figura (5.19): Esquema del Algoritmo Genético Desarrollado. 76 6.4 ESTIMACIÓN PARAMÉTRICA DE LOS MODELOS Se seleccionaron 3 ejemplos, el ejemplo #1 fue tomado de los casos simulados por Aller en su investigación, el cual es una medición de resistividad publicada por Del Alamo [13] proyecto de la subestación REPKOF#3, el segundo ejemplo, fue tomado del SINOVENSA realizado por INELECTRA, S.A.C.A. y el tercer y último ejemplo, son mediciones de resistividad realizadas por nuestro equipo, para el proyecto TERMOBARRANCAS realizado por INELECTRA, S.A.C.A. Ejemplo #1: Subestación REPKOF#3. Tabla (VIII): Mediciones de Resistividades Aparentes de REPKOF#3. Espaciamientos Interelectródicos (mts) Resistividades Aparentes (Ω.mts) 1 2 5 10 20 50 100 150 200 250 486,5 473,7 438,7 389,5 314,4 186 96,22 57,9 38,26 26,97 77 Resistividad Aperente Vs. Espaciamientos interelectrodicos Resistividades Aperentes 1000 100 10 1 10 100 Espaciamientos Interelectrodicos Figura (5.20): Resistividad Aparente de REPKOF#3. 78 1000 Tabla (IX): Resultado de las Simulaciones de REPKOF#3. MODELO DE LA SIMULACIÓN RESULTADOS DE LA SIMULACIÓN BIESTRATIFICADO TRIESTRATIFICADO TETRAESTRATIFICADO PENTAESTRATIFICADO 79 ρ1 (Ω.mts) ρ2 (Ω.mts) d1(mts) 386,860420 ψ 0,305731 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) d1(mts) d2(mts) 464,396820 ψ 0,123892 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) ρ4 (Ω.mts) d1(mts) d2(mts) d3(mts) 481,879670 ψ 0,000785 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) ρ4 (Ω.mts) ρ5(Ω.mts) d1(mts) d2(mts) d3(mts) d4(mts) 487,729480 ψ 0,000673 29,957883 41,364221 180,442470 26,758820 12,391934 62,282314 333,385310 110,232430 15,238815 4,628846 22,627583 79,291089 404,340730 221,887710 71,346508 10,134365 2,497563 10,483006 33,177798 96,528744 Figura (5.21): Reporte de Resultados de las Simulaciones de REPKOF#3 con el Programa MODESTIM. 80 Ejemplo #2: Proyecto SINOVENSA. Tabla (X): Resultado de las Simulaciones de SINOVENSA. Espaciamientos Interelectródicos (mts) Resistividades Aparentes (Ω.mts) 1 3 5 10 15 20 69,12 45,24 28,59 17,59 16,02 15,08 Resistividad Aparente Vs. Espaciamiento Interelectrodico Resistividad Aparente 100,00 10,00 1 10 Espaciamiento Interelectrodico Figura (5.22): Resistividad Aparente de SINOVENSA. 81 100 Tabla (XI): Resultado de las Simulaciones de SINOVENSA. MODELO DE LA SIMULACIÓN RESULTADOS DE LA SIMULACIÓN BIESTRATIFICADO TRIESTRATIFICADO ρ1 (Ω.mts) ρ2 (Ω.mts) d1(mts) 2,2305268 Iteración Tiempo (s) ψ 11 732,40625 0,0017274 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) d1(mts) d2(mts) 98,253696 Iteración Tiempo (s) ψ TETRAESTRATIFICADO PENTAESTRATIFICADO 82 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) ρ4 (Ω.mts) d1(mts) d2(mts) d3(mts) 70,82271 15,164572 27,116489 10,440162 1,2976087 6,9341706 9 949,32812 0,1188131 72,853254 63,334245 15,716613 3,0678525 1,0318921 1,304874 35,174184 Iteración Tiempo (s) ψ 21 1298,1562 0,0000315 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) ρ4 (Ω.mts) ρ5(Ω.mts) d1(mts) d2(mts) d3(mts) d4(mts) 69,461004 40,724746 Iteración Tiempo (s) ψ 13 520,5 0,1987287 61,968983 10,004873 77,410468 0,9368436 2,1011765 7,5522353 0,4249552 Figura (5.23): Resistividad Aparente de SINOVENSA. 83 Ejemplo #3: Proyecto TERMOBARRANCAS. Trayectoria (NO-SE). Tabla (XII): Resultado de las Simulaciones de TERMOBARRANCAS (NO-SE). Espaciamientos Resistividades Interelectródicos Aparentes (mts) (Ω.mts) 1 2 3 4 5 7 10 15 788,140 1199,480 1720,092 1964,384 2188,580 2338,672 2216,840 1648,500 Espaciamineto Interelectrodico vs. Resistividad Aparente Resistividad Aparente 10000 1000 100 1 10 Espaciamiento Interelectrodico Figura (5.24): Resistividad Aparente de TERMOBARRANCAS (NO-SE). 84 100 Tabla (XIII): Resultado de las Simulaciones de TERMOBARRANCAS (NO-SE). MODELO DE LA SIMULACIÓN RESULTADOS DE LA SIMULACIÓN BIESTRATIFICADO TRIESTRATIFICADO TETRAESTRATIFICADO ρ1 (Ω.mts) ρ2 (Ω.mts) d1(mts) 2172,585700 ψ 0,197762 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) d1(mts) d2(mts) 674,624960 0,022304 4214,838900 326,054270 1,192992 5,042522 ψ 0,090074 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) ρ4 (Ω.mts) d1(mts) d2(mts) d3(mts) 758,868310 ψ 85 24,045477 2411,234900 3039,694800 1338,054500 1,133871 6,576768 0,000209 0,195276 Figura (5.25): Reporte de Resultados de las Simulaciones de TERMOBARRANCAS con el Programa MODESTIM. 86 Trayectoria (NE-SO) Tabla (XIV): Resultado de las Simulaciones de TERMOBARRANCAS (NE-SO). Espaciamientos Resistividades Interelectródicos Aparentes (mts) (Ω.mts) 1 2 3 4 5 7 10 15 948,280 1318,800 1718,208 1969,408 2213,700 2360,652 2116,360 1450,680 Espaciamineto Interelectrodico vs. Resistividad Aparente Resistividad Aparente 10000 1000 100 1 10 Espaciamiento Interelectrodico Figura (5.26): Resistividad Aparente de TERMOBARRANCAS (NE-SO). 87 100 Tabla (XV): Resultado de las Simulaciones de TERMOBARRANCAS (NE-SO). MODELO DE LA SIMULACIÓN RESULTADOS DE LA SIMULACIÓN BIESTRATIFICADO TRIESTRATIFICADO TETRAESTRATIFICADO ρ1 (Ω.mts) ρ2 (Ω.mts) d1(mts) 1959,697800 ψ 0,244271 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) d1(mts) d2(mts) 703,275610 0,395240 2786,617700 0,000005 0.9731353 10,251600 ψ 0,074377 ρ1 (Ω.mts) ρ2 (Ω.mts) ρ3 (Ω.mts) ρ4 (Ω.mts) d1(mts) d2(mts) d3(mts) 662,345660 ψ 88 512,519360 1133,263900 6131,766300 41,925709 0,536120 1,501357 3,030196 0,240384 Figura (5.27): Reporte de Resultados de las Simulaciones de TERMOBARRANCAS con el Programa MODESTIM. Podemos observar como los terrenos son generalmente multiestratificados, los ejemplos anteriores son prueba de esto, aunque en ciertos casos la modelación biestratificada se acerca al modelo real, existe una modelación multiestratificada que es más semejante a la realidad del terreno que se estudie. Es claro que la multiestratificación del terreno genera una complejidad mayor al momento de analizar las redes de puesta a tierra, pero esta complejidad adicional se traduce en un análisis más exacto y real, incrementando la confiabilidad y seguridad del diseño. 89 Los resultados de las simulaciones dependen del punto de arranque o vector de arranque que se utilice, cuando el punto de arranque genera un error mayor que el estimado en el algoritmo, este regresa al punto inicial de introducción del vector de arranque, esto facilita las simulaciones a realizar, ya que le permite al usuario tener conocimiento de la calidad del vector de arranque que introduce, además existe la posibilidad de comenzar la simulación sin introducir el vector de arranque, el algoritmo cuenta con un algoritmo interno basado en la técnica de algoritmo genético, que estima el vector de arranque, aunque esta es un ventaja, esta opción aumenta considerablemente el tiempo de ejecución de la simulación. 90 CONCLUSIONES Y RECOMENDACIONES Este trabajo presenta una herramienta amigable, general, sistemática y de gran importancia, basada en la leyes de Maxwell, las investigaciones de Sunde y de Aller, que permite modelar de forma multiestratificadamente el subsuelo. Se desarrolló un algoritmo genético que determina el vector de arranque automáticamente, esto permite que usuarios con poca experiencia puedan utilizar la herramienta eficazmente. La herramienta se diseño para modelar el subsuelo por medio de mediciones realizadas por diferentes métodos de medición de resistividad aparente (Wenner, Schlumberger, Schlumberger Modificado, Polo-Polo, Polo-Dipolo, Dipolo-Dipolo), esto que genera una gran versatilidad, permitiendo tener en una sola herramienta la posibilidad de modelar el terreno según el método deseado. Las herramientas disponibles en la actualidad están diseñadas para la modelación de un solo método de medición, sin considerar que solo modelan el terreno, como máximo, de forma bistratificada. 91 Se ha contrastado esta herramienta con algoritmos convencionales para la modelación de subsuelos biestratificados, así como mediante ensayos y resultados de modelos desarrollados por Sunde y Aller, comprobando que el método es preciso y confiable. El desarrollo de este trabajo se presenta como el primer paso para el análisis del comportamiento en régimen permanente y transitorio del sistema de puesta a tierra en terrenos multiestratificados. Se recomienda la continuación de este trabajo, con la finalidad de contar con una herramienta capaz de analizar multiestratificadamente los sistemas de puesta a tierra en régimen permanente y transitorio. Pueden incorporarse diferentes metodologías para la estimación del vector de arranque, en las cuales el tiempo de ejecución sea menor, con lo que aumentaría la eficiencia de la herramienta. 92 BIBLIOGRAFIA [1] ALLER, JOSE MANUEL. “Diseño de sistemas complejos de puesta a tierra en terrenos con estratos múltiples y con consideraciones de su comportamiento en régimen transitorio” Universidad Politécnica de Madrid, Escuela técnica superior para ingenieros industriales, Madrid 1993. [2] ANSI/IEEE Std. 80-1986 “IEEE Guide for Safety in AC Subestation Grounding” Wiley Interscience 1986. [3] BRONSHTEIN I., SEMENDIAEV K. “ Manual de Matemáticas para Ingenieros y Estudiantes” Editorial MIR - MOSCU. 3a. Edición 1977. [4] DAWALIBI F., BARBEITO N. “Measurements and Computations of the Performance of Grounding Systems Buried in Multilayer Soils” IEEE 91 WM 037-2 PWRD. 1991 New York Winter Meeting. [5] DAWALIBI F., BLATTNER C. “Earth Resistivity Measurement Interpretation Techniques”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-103, No. 2, February 1984, pp. 374-382. [6] DAWALIBI F., BOUCHARD M., MUKHEDKAR D. “Survey on Power System Grounding Design Practices”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-99, No. 4, Jul/Aug 1980, pp. 1396-1405. [7] DAWALIBI F., MUKHEDKAR D. “Optimun Design of Substation Grounding in a Two Layer Earth Structure. Part I: Analytical Study”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-94, No. 2, Mar/Apr. 1975, pp. 252-261. [8] DAWALIBI F., MUKHEDKAR D. “Optimun Design of Substation Grounding in a Two Layer Earth Structure. Part II: Comparison Between Theoretical and Experimental Results”. 93 IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-94, No. 2, Mar/Apr. 1975, pp. 262-266. [9] DAWALIBI F., MUKHEDKAR D. “Optimun Design of Substation Grounding in a Two Layer Earth Structure. Part III: Study of Grounding Grids Performance and New Electrodes Configuration”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-94, No. 2, Mar/Apr. 1975, pp. 267-272. [10] DAWALIBI F., MUKHEDKAR D. “Transferred Earth Potential in Power Systems”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS- 97, No. 1, Jan/Feb. 1978, pp. 90-101. [11] DAWALIBI F., MUKHEDKAR D. “Parametric Analysis of Grounding Grids”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-98, No. 5, Sep/Oct. 1979, pp. 1659-1668. [12] DEL ALAMO, J.L., “Estimación Optima de los Parámetros definitorios de un Terreno Multiestratificados para la Puesta a Tierra de un Sistema Eléctrico”. Ed. Depto de Ingeniería Eléctrica ETSII. Universidad de Valladolid. España. Jul. 1992. [13] DEL ALAMO, J.L. “A Comparison among Eight Different Techniques to achieve an Optimum Parameters in Two-Layered Earth.” IEEE Winter Meeting, 93 WM 079 - 4 PWRD. Columbus 1993. [14] MELIOPOULOS A. “Power System Grounding and Transient”. Marcel Dekker, Inc. 1988. [15] MELIOPOULOS A.P.S., DUNLAP J. “Investigation of Grounding Related Problems in AC/DC Converter Stations”. IEEE Transactions on Power Delivery, Vol. PWRD-3, No. 2, April 1988, pp.558-567. [16] MELIOPOULOS A., MOHARAM M. “Transient Analysis of Grounding Systems”. 94 IEEE Transactions on Power Apparatus and Systems, Vol. PAS- 102, No. 2, Feb.1983, pp.389-399. [17] MELIOPOULOS A., PAPALEXOPOULOS A., WEBB R., BLATTNER C. “Estimation of Soil Parameters from Driven Rod Measurements”. IEEE Transactions on Power Apparatus and Systems, Vol. PAS-103, No. 9, Sep. 1984, pp.2579-2587. [18] MELIOPOULOS A., PAPALEXOPOULOS A. “Interpretation of Soil Resistivity Measurements: Experience with the Model SOMIP”. IEEE Transactions on Power Delivery, Vol. PWRD-1, No. 4, Oct. 1986, pp.142-151. [19] MELIOPOULOS A., WEBB R., JOY E. “Analysis of Grounding Systems”. IEEE, Transactions on Power Apparatus and Systems, Vol. PAS-100, No. 3, Mar. 1981, pp. 1039-1048. [20] PAPALEXOPOULOS A., MELIOPOULOS A. “Frequency Dependent Characteristics of Grounding Systems”. IEEE Transactions on Power Delivery, Vol. PWRD-2, No. 4, Oct.1987, pp.1073-1081. [21] PETIAU, G. “La Théorie des Fonctions de Bessel”. Centre National de la Recherche Scientifique. Paris 1955. [22] PIPES L., HARVILL L. “Applied Mathematics for Engineers and Physicist” Third Edition. Mc. Graw - Hill, Inc. 1970 [23] STEFANESCO S., SCHLUMBERGER C. & M. “Sur la Distribution Electrique Potentielle Autour d’une Prise de Terre Ponctuelle dans un Terrain a Couches Horizontales Homogenes et Isotropes”. Journal de Physique et Radium, Vol. 1, Serie VII, No. 4, 1930, pp. 132-140. [24] SUNDE, E.D. “Earth Conduction Effects in Transmission Systems”. Dover Publications, Inc., New York 1968. [25] TAKAHASHI, T., KAWASE,T. “Analysis of Apparent Resistivity in a Multi-Layer Earth Structure”. 95 IEEE Transactions on Power Delivery. Vol. PWRD-5, No. 2, April 1990. pp. 604-612. [26] TAKAHASHI, T., KAWASE,T. “Calculation of Earth Resistance for a Deep-Driven Rod in a Multi-Layer Earth Structure”. IEEE Transactions on Power Delivery. Vol. PWRD-6, No. 2, April 1991. pp. 608-614. 96 APENDICE A MANUAL DEL SOFTWARE MODESTIM 97 1. Índice 1. ÍNDICE …………………………………………………………………….98 2. INTRODUCCIÓN...............................................................................98 3. OBJETIVO. .......................................................................................99 4. CONOCIENDO MODESTIM. ..........................................................100 4.1. ¿QUÉ ES MODESTIM? ..................................................................100 4.2. ¿DÓNDE ENCONTRAR MODESTIM?...........................................100 4.3. ¿CÓMO INSTALAR MODESTIM? ................................................100 4.4. MÉTODOS DE MEDICIÓN DE RESISTIVIDAD APARENTE.........101 4.5. DATOS DE ENTRADA. ..................................................................102 4.6. REPORTE DE SALIDA...................................................................103 4.7. MANEJO DE LA HERRAMIENTA..................................................103 4.8. CRITERIO DE EVALUACIÓN.........................................................119 4.9. MENSAJES DE ERROR.................................................................120 4.10. ¿QUÉ ES SCILAB? .....................................................................120 4.11. ¿DÓNDE ENCONTRAR SCILAB?..............................................120 5. REFERENCIAS...............................................................................120 2. Introducción La modelación de los parámetros electromagnéticos del terreno a partir de mediciones de la resistividad aparente es un problema cuya formulación tradicional incluye las ecuaciones de Maxwell y las funciones de Bessel, su resolución ha sido planteada por diferentes autores a lo largo de la historia e involucra el uso de métodos iterativos. 98 En general los terrenos son multiestratificados y estos pueden ser modelados considerando diferentes estratos o capas (1,2,3,……,n), cada uno con su correspondiente resistividad y espesor propio. Inelectra S.A.C.A posee una herramienta computacional llamada RSTV1 que permite modelar el subsuelo en dos (2) estratos, a partir de las mediciones de resistividades aparentes realizadas por el método de Wenner. El Departamento de Ingeniería Eléctrica (D.I.E) de Inelectra, S.A.C.A., ha desarrollado un programa llamado MODESTIM, que permite modelar el subsuelo con múltiples estratos, mediante mediciones de resistividad aparente realizadas con los siguientes métodos: • Wenner. Schlumberger. Schlumberger Modificado. Dipolo-Dipolo. Polo-Dipolo. Polo-Polo. El uso de este programa permitirá al D.I.E. entre otras cosas: Seleccionar el número de estratos del modelo que mas se ajuste a cada terreno en particular. Optimizar la selección de los elementos del sistema de puesta a tierra del proyecto e implicará una eventual disminución en los costos de inversión del proyecto. Identificar el estrato y la distancia más conveniente para la instalación de las jabalinas del sistema de puesta a tierra. 3. Objetivo. El objetivo de este manual es presentar al usuario una guía para el manejo del programa con un conjunto de pasos que le permitirán: • Familiarizarse con la interfaz gráfica del programa. • Identificar la manera de ingresar los datos de entrada. • Identificar la manera de generar los reportes de salida. • Identificar el significado de los errores que puede arrojar el programa y la acciona tomar en cada caso. Adicionalmente, este manual sugiere un criterio para la selección del número de estratos a utilizar en la modelación del terreno en estudio. 99 4. Conociendo MODESTIM. 4.1. ¿Qué es MODESTIM? MODESTIM es una herramienta computacional desarrollada por el Departamento de Ingeniería Eléctrica de Inelectra, S.A.C.A., destinada a la modelación multiestratificada del subsuelo mediante mediciones de resistividad aparente realizadas por diferentes métodos (Wenner, Schlumberger, Schlumberger Modificado, Dipolo-Dipolo, Dipolo-Polo. Polo-Polo). Este software está realizado bajo el ambiente de SCILAB 4.0 (Mayo 11 2006), el cual es un programa intérprete desarrollado por el INRIA (Institut Nationale de Recherche en Informatique et en Automatique) y el ENPC (Ecole Nationale des Ponts et Chaussées) de Francia. Es similar a MATLAB y otros programas de cálculo numérico, cabe destacar, que SCILAB es un programa de licencia libre (open source). Mediante los valores de resistividad aparentes y los espaciamientos interelectrodicos propios del método de medición utilizado para realizar dichas mediciones, el programa MODESTIM, modela en (n) número de capas o estratos el terreno en estudio, para iniciar la simulación MODESTIM necesita la introducción de un vector de arranque, este vector de arranque puede ser introducido por el usuario o estimado por MODESTIM mediante un Algoritmo Genético (AG), está en la potestad del usuario, la forma en que desea realizar la simulación, una vez introducido el vector de arranque, MODESTIM estima en modelo del subsuelo mediante la técnica de Gauss-Newton (GN), dando como resultado, la calidad de la modelación realizada y el modelo del subsuelo (resistividades y espesores propios), cabe destacar que MODESTIM no tiene restricciones, puede ser utilizado por múltiples usuarios. 4.2. ¿Dónde encontrar MODESTIM? MODESTIM esta disponible en la ineweb (DIRECCIÓN) del departamento de ingeniería eléctrica y en los archivos del D.I.E. 4.3. ¿Cómo instalar MODESTIM? MODESTIM requiere la instalación previa de Scilab 4.0 en el ordenador, una vez que el usuario ha instalado Scilab 4.0, el procedimiento para la ejecución se MODESTIM se explica con detalle la sección 4.7 Manejo de la Herramienta y en al Tutorial de MODESTIM, este tutorial plantea explicar de una forma fácil y sencilla, la metodología de uso, la introducción de variables y el manejo de la herramienta, se recomienda ampliamente a los usuarios en proceso de aprendizaje la utilización del tutorial. El tutorial esta disponible en la ineweb (DIRRECCIÓN) 100 Los requerimientos mínimos de instalación de MODESTIM son los siguientes: - Se requiere aproximadamente 75Mb de espacio en discos duros para descomprimir el fichero e instalar la aplicación. Microsoft Windows 95 ó 98. 256 RAM de memoria. Procesador Pentium III 4.4. Métodos de Medición de Resistividad Aparente. MODESTIM esta diseñado para realizar la modelación mediante 6 métodos diversos de medición de resistividades aparentes: 1. Wenner. 2. Schlumberger. 3. Schlumberger Modificado. 4. Dipolo-Dipolo. 5. Polo-Dipolo. 6. Polo-Polo. En todos los métodos el cálculo de la resistividad aparente es realizado a través de la ecuación: ⎛ ΔV ⎞ ρ = 2 *π *K * ⎜ ⎟ ⎝ I ⎠ Donde la constante K es una variable que depende de la configuración de los electrodos, con sus respectivos espaciamientos interelectrodicos. Dependiendo del método de medición elegido, los datos de entrada se ven modificados, el usuario debe tener en cuenta esto para la modelación. Cada uno de los métodos mencionados tiene una configuración diferente de los electrodos en la realización de la medición. A continuación Mostramos las diferentes configuraciones interelectrodicas y el valor de la constante K. 101 a*b + b2 K= 2*a K=a K= n * (n + 1) * (n + 2) 2 K= a* c(b + c)*(a + b) a*b(a + b) + c *b(b + c) K = a − n − (n + 1) K=a 4.5. Datos de Entrada. Los datos de entrada al programa son un conjunto de: • Las resistividades aparentes medidas. • El número de mediciones realizadas. 102 • • • El número de capas que se desea modelar. El método de medición utilizado. El conjunto de espaciamientos interelectrodicos asociados al método de medición utilizado, los cuales varían en relación al método de medición utilizado. 4.6. Reporte de Salida. Los datos de salida del programa siempre serán los mismos independientemente del método de medición utilizado, estos son: • El numero de capas de la modelación. • El modelo del subsuelo, el cual esta compuesto por: Resistividades propias del estrato. Espesores propios de cada estrato. • El error de estimación (sumatoria de errores ponderados cuadráticos Ψ). 4.7. Manejo de la Herramienta. Una vez que el usuario cuenta con los datos de las mediciones realizadas, es decir: • Método de medición utilizado. • Resistividades aparentes. • Espaciamientos interelectrodicos. El usuario debe inicializar la aplicación de MODESTIM. Pasos de inicialización: 1. En la ineweb, debe dirigirse al vecindario de División de Ingeniería - Electricidad. 103 2. En la pagina del Departamento de Ingeniería Eléctrica se dirige a (DIRRECCIÓN) 104 105 3. En la carpeta MODESTIM esta la aplicación Modestim14.sci, el usuario debe hacer doble clic en ella. 106 4. Luego se desplega el código fuente de la aplicación, ahora el usuario debe hacer click sobre EXECUTE y luego sobre LOAD INTO SCILAB. 107 Ahora el usuario está en la capacidad de comenzar la simulación del terreno en estudio, a continuación se plantea de forma gráfica los pasos para realizar la modelación: 1. Introduce el nombre del proyecto. 2. Elige el método de medición utilizado. 108 3. Introduce el número de mediciones realizadas en campo. 4. Pulsa Introducir los datos. 109 5. Introduce el número de capas o estratos que desea modelar. 110 6. Introducir los espaciamientos interelectrodicos asociados al método de medición utilizado y las resistividades aparentes obtenidas en campo. 111 7. Pulsar Gráfico para obtener la gráfica de las Resistividades Aparentes vs. Los Espaciamientos Interelectrodicos. 112 8. Elegir el método en que desea que se introduzca el vector de arranque, manualmente (introducido por el usuario) o que MODESTIM lo estime mediante un algoritmo genético automáticamente. 113 8.1. Si la elección fue manualmente debe introducir las resistividades y espesores propios de arranque. 114 8.2. Muestra las iteraciones del programa. 115 8.3. Luego de finalizada la iteración se muestran los resultados. 116 9. Si la elección fue automático se muestra el contador del algoritmo genético, mientras se esta estimando el vector de arranque. 117 9.1. El vector de arranque fue estimado, MODESTIM da la opción al usuario de modificar el vector de arranque. 118 9.2. Luego de finalizada la iteración se muestran los resultados. 4.8. Criterio de Evaluación. El criterio propuesto plantea que el usuario debe realizar una modelación en varios estratos o capas del terreno en estudio, es decir, se debe simular en (2, 3, 4,……n estratos), tantos como se puedan modelar, luego de realizadas las modelaciones el usuario debe realizar una comparación del error (Ψ) que se generó de cada una de las modelaciones, este error (Ψ) es la sumatoria de los errores ponderados cuadráticos, es decir, es el valor con el cual se verifica la calidad de los resultados de la modelación realizada (es un factor que indica si el terreno en estudio es de 2, 3 o n estratos), mientras mas cercano a cero (0) sea este valor, la modelación es mas parecida al terreno en estudio, por tal motivo se plantea que el usuario escoja los resultados que generaron el menor error (Ψ). Se debe tener presente que el número de estratos a modelar esta sujeto al número y la calidad de las mediciones realizadas en campo. 119 4.9. Mensajes de Error. - Imposible abrir el archivo: Este mensaje indica que la imagen que muestra la configuración interelectrodica del método utilizado no puede abrirse, para solucionarlo debe cerrar Scilab 4.0, ir al directorio de MODESTIM y hacer doble clic sobre Modestim14. - FALTAN 4.10. Ventajas de SCILAB. Desde el punto de vista del usuario, SCILAB presenta algunas ventajas tales como: • Disponibilidad de la última versión vía Internet. • El programa puede ser utilizado, copiado y distribuido en forma legal. • Los resultados obtenidos pueden ser divulgados sin restricción. • Se tiene acceso al código fuente. • La certeza de estar participando de una comunidad cuyo principal objetivo es la Difusión irrestricta del conocimiento. 4.11. ¿Dónde encontrar SCILAB? SCILAB esta disponible en forma gratuita en el sitio Web oficial de SCILAB: http://scilabsoft.inria.fr. Documentación referente a SCILAB puede ser encontrada y bajada desde el mismo sitio Web de SCILAB, así como muchas otras obras y colaboraciones disponibles en Internet. Normalmente, todos los materiales pueden ser utilizados sin costo, solamente se deben mantener los créditos y referencias correspondientes para los autores. 5. Referencias • ALLER, J.M. “Análisis del Comportamiento Electromagnético Permanente y Transitorio de Redes de Puesta a Tierra en Medios Multiestratificados”. Universidad Simón Bolívar. Departamento de Conversión y Trasporte de Energía. Sartenejas 1992. 120 • SUNDE, E.D. “Herat Conduction Effects in Transmission System”. Dover Publications, Inc. New York 1968. • “IEEE Guide for Safety in AC Substation Grounding”. Institute Of Electrical and Electronics Engineers Inc. New York 2000. 121 APENDICE B CODIGO FUENTE DEL SOFTWARE MODESTIM 122 //********************************************* //*********** MODESTIM 3 //********************************************* //**** PROGRAMA PARA LA ESTIMACION MULTIESTRATIFICADA DE LOS ***** //******* PARAMETROS DEL SUBSUELO MEDIANTE MEDICIONES DE ******** //*** RESISTIVIDADES APARENTES UTILIZANfor EL METOfor DE WENNER ** //******************* MÉTOfor DE J.M.ALLER *********************** //***************** HUMBERTO BELOUCHE ARENAS ********************* //******************* 20 de Marzo del 2006 *********************** //**************************************************************** clear clc lines(0); //****************************************************************** //************************** GFUN ****************************** //****************************************************************** function [gfunn]=gfun(z) for i=1:ncap resis(i)=x0(i) end for j=1:ncap-1 espcap(j)=x0(i+j) end for i=1:ncap-1 ck(i)=(resis(i+1)-resis(i))/(resis(i+1)+resis(i)) end w=0 for i=1:ncap-1 w=w+espcap(i) prof(i)=w end eerror=0.00001 raux=z a=rs0/raux b=rs(1)/raux summ=simps(a,b,30,fun) res=summ i=1 e=1 ad=b*prof(1)*2 while eerror<e&i<100&ad<10 a=rs(i)/raux b=rs(i+1)/raux i=i+1 summaux=summ+simps(a,b,30,fun) resant=res res=(summ+summaux)*0.5 summ=summaux e=abs((res-resant)/res) end gfunn=res endfunction //*************************************************************** 123 //*********************** FUN ********************************* //*************************************************************** function [funn]=fun(m) if m*raux>80 then funn=0; else px(1)=0; px(2)=1; paux(1)=0; paux(2)=1; for i=(ncap-1):-1:1 acom=2*m*prof(i); if acom<=15 then px(1)=paux(1)+paux(2)*ck(i)*exp(-acom); px(2)=paux(1)*ck(i)*exp(acom)+paux(2); paux(1)=px(1); paux(2)=px(2); else end end gp=-2/(px(1)-px(2)); funn=px(1)*gp*1-1; funn=funn+px(2)*gp-1*1; xd=m*z; funn=funn*besselj(0,xd)/2; end endfunction //**************************************************************** //************************** GRADFI *************************** //**************************************************************** function [gfi,a]=gradfi(n,nmed) x0=x0' for i=1:nmed for j=1:n a(i,j)=0; end end ncap=(n+1)/2 for i=1:ncap dx(i)=0.0001*x0(i) end for i=ncap+1:n dx(i) = 0.001*x0(i) end for i=1:n xi(i)=x0(i)+dx(i) xd(i)=x0(i)-dx(i) end for i=1:nmed roac(i)=0 for j=1:n roaci(j)=0 roacd(j)=0 droac(i,j)=0 end end for j=1:nmed 124 ax=espa(j) area1=gfun(ax) area2=gfun(2*ax) area=area1-area2 areaa=x0(1)*(1+2*ax*area) roac(j)=areaa for i=1:n x0(i)=xi(i) area1=gfun(ax) area2=gfun(2*ax) area=area1-area2 areaa=x0(1)*(1+2*ax*area) roaci(i)=areaa x0(i)=x0(i)-dx(i) end for i=1:n x0(i)=xd(i) area1=gfun(ax) area2=gfun(2*ax) are=area1-area2 areaa=x0(1)*(1+2*ax*area) roacd(i)=areaa x0(i)=x0(i)+dx(i) end for i=1:n droac(j,i)=roaci(i)-roacd(i) droac(j,i)=droac(j,i)/(2*dx(i)) roaci(i)=0 roacd(i)=0 end end for i=1:n gfi(i)=0. end for i=1:nmed aux=(resamed(i)-roac(i))/(resamed(i)*resamed(i)) for j=1:n gfi(j)=gfi(j)-2*aux*droac(i,j) a(i,j)=-droac(i,j)/resamed(i) end end endfunction //**************************************************************** //************************** CALCFI *************************** //**************************************************************** function [fi]=calcfi(n,nmed) ncp=(n+1)/2 for i=1:ncap p(i)=x0(i) end j=1 for i=ncap+1:n hx(j)=x0(i) j=j+1 end for k=1:nmed 125 ax=epa(k) area1=gfun(ax) area2=gfun(2*ax) area=area1-area2 area=x0(1)*(1+2*ax*area) roac(k)=area end fi=0 for i=1:nmed aux=(resamed(i)-roac(i))/resamed(i) aux=aux*aux fi=fi+aux end endfunction //**************************************************************** //************************** PSINV **************************** //**************************************************************** function X=psinv(A,tol) if type(A)==1 then if A==[] then X=[],return,end [U,S,V] = svd(A,"e"); S = diag(S) if argn(2) < 2 tol = max(size(A)) * S(1) * %eps; end r=size(find(S>tol),'*') if r == 0 then X = zeros(A'); else X = V(:,1:r)* diag(ones(r,1)./S(1:r)) *U(:,1:r)'; end else [t,n]=typename();n=stripblanks(n(find(t==type(A)))) fuun='%'+n+'_pinv' if exists(fuun)==1 then if argn(2)==1 then execstr('X='+fuun+'(A)') else execstr('X='+fuun+'(A,tol)') end else error('pinv not defined for type ""'+n+'"" .'+'Check argument or define function '+fuun) end end endfunction //**************************************************************** //************************** PRUEBA *************************** //**************************************************************** function [amin]=prueba(n,nmed) x0=x0' mx(1)=-1 mx(2)=-0.5 mx(3)=0. mx(4)=0.5 mx(5)=1 x1=0. 126 x2=0. x3=0. aa=0. bb=0. cc=0. fia=1000. fib=1000. fic=1000. amin=1. for i=1:n for j=1:5 sigma1(i,j)=mx(j)*sigma(i) m(i,j)=x0(i)+sigma1(i,j) end end for j=1:5 for i=1:n xa(i)=x0(i) x0(i)=m(i,j) end cal=calcfi(n,nmed) for i=1:n x0(i)=xa(i) end fi1(j)=cal end a=fi1(3) b=0.166667*fi1(1)-1.33333*fi1(2)+1.33333*fi1(4)-0.166667*fi1(5) c=-0.166667*fi1(1)+2.66667*fi1(2)-5*fi1(3)+2.6667*fi1(4)-0.166667*fi1(5) d=-0.666667*fi1(1)+1.33333*fi1(2)-1.33333*fi1(4)+0.666667*fi1(5) e=0.666667*fi1(1)-2.66667*fi1(2)+4*fi1(3)-2.66667*fi1(4)+0.666667*fi1(5) c=2*c d=3*d e=4*e q=(d**3)/(27.*e**3)-d*c/(6.*e**2)+b/(2.*e) p=(3.*e*c-d**2)/(9.*e**2) dis=((q**2)+(p**3)) r=sqrt(abs(p)) if (q<0) then r=-1.*r else end if (p<0) then if (dis<=0) then am=(q/(r**3)) amau= acos(am)/3. am1=cos(amau) am2=cos(1.0472-(acos(am)/3.)) am3=cos(1.0472+(acos(am)/3.)) y1=-2*r*am1 y2=2*r*am2 y3=2*r*am3 x1=y1-(d/(3.*e)) x2=y2-(d/(3.*e)) x3=y3-(d/(3.*e)) aa=c+2*d*x1+3*e*x1*x1 127 bb=c+2*d*x2+3*e*x2*x2 cc=c+2*d*x3+3*e*x3*x3 else am=(q/(r**3)) amau=log(am+sqrt((am*am)-1))/3. am1=cosh(amau) y1=-2*r*am1 x1=y1-(d/(3.*e)) aa=c+2*d*x1+3*e*x1*x1 end else end if (p>0) then am=(q/(r**3)) amau=log(am+sqrt((am*am)+1))/3. am1=sinh(amau) y1=-2*r*am1 x1=y1-(d/(3.*e)) aa=c+2*d*x1+3*e*x1*x1 else end if (aa>0.) then amin=x1 else end if ((x2~=0.)&(x3~=0.)) then if (aa>0.) then for i=1:n xc(i)=x0(i)+x1*sigma(i) end for i=1:n xb=x0 x0=xc end cala=calcfi(n,nmed) for i=1:n x0=xb end fia=abs(cala) else end for i=1:n xc(i)=x0(i)+x2*sigma(i) end for i=1:n xb=x0 x0=xc end calb=calcfi(n,nmed) for i=1:n x0(i)=xb(i) end fib=abs(calb) else end if (cc>0.) then 128 for i=1:n xc(i)=x0(i)+x3*sigma(i) end for i=1:n xb(i)=x0(i) x0(i)=xc(i) end calc=calcfi(n,nmed) for i=1:n x0(i)=xb(i) end fic=abs(calc) else end if ((fia<fib)&(fia<fic)) then amin=x1 else end if ((fib<fia)&(fib<fic)) then amin=x2 else end if ((fic<fia)&(fic<fib)) then amin=x3 else end if (amin<-1.) then amin=-1 else if(amin>1) then amin=1 else end end endfunction //***************************************************************** //************************* SIMPS ******************************* //***************************************************************** function [simpss]=simps(a,b,n,fun) twoh=(b-a)/n h=twoh/2 summend=0 summmid=0 summend=fun(a) summmid=fun(a+h) aux1=summend for k=2:n x=a+(k-1)*twoh summend=summend+fun(x) summmid=summmid+fun(x+h) end simpss=(2*summend+4*summmid-aux1+fun(b))*h/3 endfunction //***************************************************************** //************************ READPPM ****************************** //***************************************************************** 129 stacksize(5000000) function [m,head]=readppm(fil) head=[] lignecourante=[] m=[] [u,err]=mopen(fil,'rb') if err<>0 then error('IMPOSIBLE ABRIR EL ARCHIVO'+fil),end head=getimgline(u) h=head if h~='P'+string([1 2 3 4 5 6]) then error('ERROR') end ftyp=evstr(part(h,2)) c='#'; while c=='#', lignecourante=getimgline(u) head=[head;lignecourante]; c=part(lignecourante,1) end; execstr('sz=['+lignecourante+']') if and(ftyp<>[1 4]) then execstr('nc='+getimgline(u)) else nc=2 end; if or(ftyp==[3 6]) then nv=3*sz(1)*sz(2), m=uint8(0);m(3*sz(1),sz(2))=uint8(0); else nv=sz(1)*sz(2), m=uint8(0);m(sz(1),sz(2))=uint8(0); end l=1 if or(ftyp==[1 2 3]) then mclose(u) u=file('open',fil,'old') w=read(u,size(head,1),1,'(a)'); select ftyp case 1 then step=35*500; case 2 then step=17*1000; case 3 then step=15*1000; end nr=int(nv/step) errcatch(62,'continue','nomessage') for k=1:nr m(l:l+step-1)=uint8(read(u,1,step)) if iserror(62)<>0 then errcatch(-1);errclear(-1) pause error('ERROR') end l=l+step end if nr*step<nv then r=nv-nr*step m(l:nv)=uint8(read(u,1,nv-l+1)) 130 if iserror(62)<>0 then errcatch(-1);errclear(-1) pause error('ERROR') end l=l+r end errcatch(-1) file('close',u) else if ftyp<>4 then step=10000 nr=ceil(nv/step) for k=1:nr tmp=mget(step,'uc',u);nt=size(tmp,'*') if tmp==[] then pause,end m(l:l+nt-1)=uint8(tmp);l=l+nt end else error('ERROR') step=1000 nr=ceil(nv/(8*step)) f=uint8(2.^(0:7)) for k=1:nr tmp=uint8(mget(step,'uc',u)); if tmp==[] then pause,end tmp=matrix([tmp&f(1); (tmp&f(2)); (tmp&f(3)); (tmp&f(4)); (tmp&f(5)); (tmp&f(6)); (tmp&f(7)); (tmp&f(8))],1,-1); tmp(find(tmp>uint8(1)))=uint8(1) nt=size(tmp,'*') m(l:l+nt-1)=tmp l=l+nt; end m(find(m>uint8(1)))=uint8(1) end mclose(u) end endfunction //***************************************************************** //************************* GETIMGLINE ************************** //***************************************************************** function l=getimgline(u) h=[] while %t c=mget(1,'uc',u) if c==10 then break,end h=[h c] end l=ascii(h) endfunction 131 //***************************************************************** //************************ IMAGEVIEW **************************** //***************************************************************** function imageview(RGB,m) [M,N]=size(m) xset('colormap',RGB) xsetech([-0.16 -0.16 1.32 1.32]) xset('wdim',M,N) Matplot(m','020') endfunction //***************************************************************** //************************* PPM2SCI ***************************** //***************************************************************** function [RGB,m]=ppm2sci(m,flag) [nr,nc]=size(m); if flag=='p' then k=1:3:nr; C=double(m(k,:))+double(m(k+1,:))*256+double(m(k+2,:))*(256^2); cs=sort(C);k2=find(cs(2:$)<>cs(1:$-1)); rgb=cs([k2(1) k2+1]);cs=[];rgb=rgb(:) R=modulo(rgb,256); w=(rgb-R)/256;G=modulo(w,256);B=(w-G)/256;w=[] RGB=[R G B]/256;R=[];G=[];B=[]; m=zeros(nr/3,nc); for l=1:size(rgb,'*') m(find(C==rgb(l)))=l end else m=double(m)+1 RGB=graycolormap(max(m)+1) end endfunction //****************************************************************** //************************** RAICES ****************************** //****************************************************************** for i=2:1000 aa=4*i-1; rs(i)=1; rs(i)=rs(i)+(2/(%pi*aa)^2); rs(i)=rs(i)-(62/(3*(%pi*aa)^4)); rs(i)=rs(i)+(15116/(15*(%pi*aa)^6)); rs(i)=rs(i)-(12554474/(105*(%pi*aa)^8)); rs(i)=rs(i)+(8368654292/(315*(%pi*aa)^10)); rs(i)=rs(i)*%pi*aa/4; end rs0=0; rs(1)=2.4048; //**************************************************************** //************************ INTERFAZ GRAFICA ********************** //**************************************************************** list_item = ["Wenner" "Schlumberger" "Schlumberger Modificado" "Dipolo-Dipolo" "Polo-Dipolo" "PoloPolo" ]; e1=1;l1 =0; initial=strcat(list_item,'|'); 132 met=0; f = figure("Position",[0 0 990 680],... "BackgroundColor",[0.9 0.9 0.9],... "Unit", "pixel"); //cuadro principal de 800x300 en las coordenasdas (2,2) m=uimenu(f,'label', 'MENU'); m1=uimenu(m,'label', 'SALIR DE SCILAB', 'callback', "exit"); fr1= uicontrol(f, "Position" , [5 565 180 70],... "Style" , "frame",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [15 655 140 20],... "Style" , "text",... "String" , "Bienvenido",... "fontsize" , 25,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e1 = uicontrol(f, "Position" , [10 585 170 25],... "Style" , "edit",... "String" , "0+000 (N-S)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); t2 = uicontrol(f, "Position" , [45 622 103 20],... "Style" , "text",... "String" , "Proyección",... "FontWeight", "bold",... "fontsize" , 16,... "BackgroundColor",[0.9 0.9 0.9]); l1 = uicontrol(f, "Position" , [220 490 170 150],... "Style" , "listbox",... "String" , initial,... "BackgroundColor",[1 1 1]); t3 = uicontrol(f, "Position" , [235 650 145 20],... "Style" , "text",... "String" , "Método Utilizado",... "FontWeight", "bold",... "fontsize" , 18,... "BackgroundColor",[0.9 0.9 0.9]); fr2= uicontrol(f, "Position" , [5 470 200 70],... "Style" , "frame",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [15 535 180 20],... "Style" , "text",... "String" , "Numero de Mediciones ",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); 133 t5 = uicontrol(f, "Position" , [20 515 160 20],... "Style" , "text",... "String" , "Realizadas (nmed)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e2 = uicontrol(f, "Position" , [80 485 30 25],... "Style" , "edit",... "String" , "5",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); t6 = uicontrol(f, "Position" , [210 460 180 15],... "Style" , "text",... "String" , "Pulsa (Ingresar los Datos)" ,... "fontsize" , 10,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [210 445 180 15],... "Style" , "text",... "String" , "para actualizar tu nombre" ,... "fontsize" , 10,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t8 = uicontrol(f, "Position" , [210 430 180 15],... "Style" , "text",... "String" , "el numero de mediciones y" ,... "fontsize" , 10,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t9 = uicontrol(f, "Position" , [210 415 180 15],... "Style" , "text",... "String" , "el método utilizado." ,... "fontsize" , 10,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); b1 = uicontrol(f, "Position" , [25 420 140 25],... "Style" , "pushbutton",... "String" , "Ingresar los Datos",... "FontWeight", "bold",... "fontsize" , 14,... "callback" , ",return"); t10 = uicontrol(f, "Position" , [440 610 420 20],... "Style" , "text",... "String" , "PROGRAMA PARA LA ESTIMACION MULTIESTRATIFICADA DE LOS" ,... "fontsize" , 13,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t11 = uicontrol(f, "Position" , [440 590 420 20],... 134 "Style" , "text",... "String" , "PARAMETROS DEL SUBSUELO MEDIANTE MEDICIONES DE" ,... "fontsize" , 13,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t12 = uicontrol(f, "Position" , [440 570 425 20],... "Style" , "text",... "String" , "RESISTIVIDADES APARENTES UTILIZANDO DIFERENTES METODOS" ,... "fontsize" , 13,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t13 = uicontrol(f, "Position" , [440 550 420 20],... "Style" , "text",... "String" , "HUMBERTO BELOUCHE ARENAS 2006" ,... "fontsize" , 13,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t14 = uicontrol(f, "Position" , [400 635 500 45],... "Style" , "text",... "String" , "INELECTRA-USB" ,... "fontsize" , 50,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); halt nombre=(get(e1,"string")); nmed=(get(e2,"string")); met=(get(l1,"value")); tt1 = uicontrol(f, "Position" , [10 585 170 25],... "Style" , "text",... "String" , nombre,... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); tt2 = uicontrol(f, "Position" , [80 485 30 25],... "Style" , "text",... "String" , nmed,... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); tt1 = uicontrol(f, "Position" , [10 420 170 25],... "Style" , "text",... "String" , "Actualizado",... "FontWeight", "bold",... "fontsize" , 16,... "BackgroundColor",[1 0.7 0]); nmed=evstr(nmed); met=evstr(met); disp(nombre,nmed,met); 135 //*************************** //*************************** fr3= uicontrol(f, "Position" , [15 300 250 80],... "Style" , "frame",... "BackgroundColor",[0.9 0.9 0.9]); t15 = uicontrol(f, "Position" , [30 370 220 20],... "Style" , "text",... "String" , "Ingresa el Numero de Capas",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e3 = uicontrol(f, "Position" , [60 310 60 25],... "Style" , "edit",... "String" , "3",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); t16 = uicontrol(f, "Position" , [30 350 220 20],... "Style" , "text",... "fontsize" , 16,... "String" , "que Desea Modelar (ncap)",... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); b2= uicontrol(f, "Position" , [125 310 80 25],... "Style" , "pushbutton",... "String" , "Continuar",... "FontWeight", "bold",... "callback" , "return"); halt ncap=get(e3,"string"); ncap=evstr(ncap); ncapstr=mtlb_num2str(ncap); t16 = uicontrol(f, "Position" , [10 390 170 30],... "Style" , "text",... "fontsize" , 16,... "String" , "Capas Simuladas: "+ncapstr,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); //**************************************************************** //************************ EJECUTABLE ************************* //**************************************************************** time=timer(); fi1=5; //sigo=1; //while sigo==1 136 k=0; //**************************************************************** //************************ METODOS DE ************************* //************************** MEDICION **************************** //***************************** DE ******************************* //****************** RESISITIVIDAD APARENTE ********************** //**************************************************************** if met==1 then //wenner //********************************************************************************** //********************************** WENNER **************************************** //********************************************************************************** t111 = uicontrol(f, "Position" , [0 0 300 390],... "Style" , "text",... "String" , "",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [120 350 180 20],... "Style" , "text",... "String" , "WENNER",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t2 = uicontrol(f, "Position" , [120 330 180 20],... "Style" , "text",... "String" , "Introduzca los Datos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t3 = uicontrol(f, "Position" , [35 315 140 20],... "Style" , "text",... "String" , "Espaciamiento",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [20 295 160 20],... "Style" , "text",... "String" , "Interelectrodico(m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t5 = uicontrol(f, "Position" , [13 275 160 20],... "Style" , "text",... "String" , "(a)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t6 = uicontrol(f, "Position" , [240 300 140 20],... 137 "Style" , "text",... "String" , "Resistividades",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [225 280 160 20],... "Style" , "text",... "String" , "Aparentes (ohm.m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0 ; for i=1:nmed; e1(i) = uicontrol(f, "Position" , [60 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e2(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "edit",... "String" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,espa(i)=get(e1(i),''string''),resamed(i)=get(e2(i),''string'')"); halt; espa(i)=get(e1(i),"string"); resamed(i)=get(e2(i),"string"); b2(i) = uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); e1(i) = uicontrol(f, "Position" , [60 (250-k) 60 20],... "Style" , "text",... "string" , espa(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e2(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "text",... "String" , resamed(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22; 138 end for i=1:nmed; espa(i)=get(e1(i),"string"); resamed(i)=get(e2(i),"string"); end; espa=evstr(espa); resamed=evstr(resamed); b3= uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Graficar",... "FontWeight", "bold",... "callback" , "xend,return"); halt b4= uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "text",... "String" , "Graficado",... "FontWeight", "bold"); plot2d1("oll",espa,resamed); xtitle("Resistividad Aparente vs. Espaciamientos Interelectrodicos","Espaciamientos Interelctrodicos","Resistividades Aparentes"); xgrid(); n=2*ncap-1; //********************************************************************************** //********************************************************************************** //********************************************************************************** else end if met==2 then //schlumberger //********************************************************************************* //********** SCHLUMBERGER ********************************************************* //********************************************************************************* t111 = uicontrol(f, "Position" , [0 0 300 390],... "Style" , "text",... "String" , "",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [120 350 180 20],... "Style" , "text",... "String" , "SCHLUMBERGER",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t2 = uicontrol(f, "Position" , [120 330 180 20],... "Style" , "text",... "String" , "Introduzca los Datos",... "fontsize" , 16,... 139 "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t3 = uicontrol(f, "Position" , [25 315 140 20],... "Style" , "text",... "String" , "Espaciamientos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [10 295 160 20],... "Style" , "text",... "String" , "Interelectrodicos (m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t5 = uicontrol(f, "Position" , [18 275 60 20],... "Style" , "text",... "String" , "(a)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t6 = uicontrol(f, "Position" , [96 275 60 20],... "Style" , "text",... "String" , "(b)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [240 300 140 20],... "Style" , "text",... "String" , "Resistividades",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t8 = uicontrol(f, "Position" , [225 280 160 20],... "Style" , "text",... "String" , "Aparentes (ohm.m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; for i=1:nmed; e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e2(i) = uicontrol(f, "Position" , [95 (250-k) 60 20],... "Style" , "edit",... 140 "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e3(i) = uicontrol(f, "Position" , [265 (250-k) 80 20],... "Style" , "edit",... "String" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,espaa(i)=get(e1(i),''string''),espab(i)=get(e2(i)),resamed(i)=get(e3(i),''string'')"); halt espaa(i)=get(e1(i),"string"); espab(i)=get(e2(i),"string"); resamed(i)=get(e3(i),"string"); b2(i) = uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "text",... "string" , espaa(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e2(i) = uicontrol(f, "Position" , [95 (250-k) 60 20],... "Style" , "text",... "string" , espab(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e3(i) = uicontrol(f, "Position" , [265 (250-k) 80 20],... "Style" , "text",... "String" , resamed(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22 end for i=1:nmed; espaa(i)=get(e1(i),"string"); espab(i)=get(e2(i),"string"); resamed(i)=get(e3(i),"string"); end; espaa=evstr(espaa); espab=evstr(espab); 141 resamed=evstr(resamed); b3= uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Graficar",... "FontWeight", "bold",... "callback" , "xend,return"); halt b4= uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "text",... "String" , "Graficado",... "FontWeight", "bold"); for i=1:nmed; espa(i)=((espaa(i)*espab(i))+(espab(i)*espab(i))/(2*espaa(i))); end; plot2d1("oll",espa,resamed); xtitle("Resistividad Aparente vs. Espaciamientos Interelectrodicos","Espaciamientos Interelctrodicos","Resistividades Aparentes"); xgrid(); n=2*ncap-1; //********************************************************************************* //********************************************************************************* //********************************************************************************* else end if met==3 then //schlumberger modificado //************************************************************************** //********** SCHLUMBERGER MODIFICADO *************************************** //************************************************************************** t111 = uicontrol(f, "Position" , [0 0 300 390],... "Style" , "text",... "String" , "",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [115 350 280 20],... "Style" , "text",... "String" , "SCHLUMBERGER MODIFICADO",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t2 = uicontrol(f, "Position" , [150 330 180 20],... "Style" , "text",... "String" , "Introduzca los Datos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t3 = uicontrol(f, "Position" , [60 315 140 20],... 142 "Style" , "text",... "String" , "Espaciamientos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [45 295 160 20],... "Style" , "text",... "String" , "Interelectrodicos (m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t5 = uicontrol(f, "Position" , [18 275 60 20],... "Style" , "text",... "String" , "(a)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t6 = uicontrol(f, "Position" , [86 275 60 20],... "Style" , "text",... "String" , "(b)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [154 275 60 20],... "Style" , "text",... "String" , "(c)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t8 = uicontrol(f, "Position" , [270 300 140 20],... "Style" , "text",... "String" , "Resistividades",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t9 = uicontrol(f, "Position" , [255 280 160 20],... "Style" , "text",... "String" , "Aparentes (ohm.m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; for i=1:nmed; e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); 143 e2(i) = uicontrol(f, "Position" , [85 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e3(i) = uicontrol(f, "Position" , [154 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e4(i) = uicontrol(f, "Position" , [296 (250-k) 80 20],... "Style" , "edit",... "String" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [215 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,espaa(i)=get(e1(i),''string''),espab(i)=get(e2(i),''string''),espac(i)=get(e3(i),''string''),resamed(i)=get(e 4(i),''string'')"); halt espaa(i)=get(e1(i),"string"); espab(i)=get(e2(i),"string"); espac(i)=get(e3(i),"string"); resamed(i)=get(e4(i),"string"); b2(i) = uicontrol(f, "Position" , [215 (250-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "text",... "string" , espaa(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e2(i) = uicontrol(f, "Position" , [85 (250-k) 60 20],... "Style" , "text",... "string" , espab(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e3(i) = uicontrol(f, "Position" , [154 (250-k) 60 20],... "Style" , "text",... "string" , espac(i),... "fontsize" , 14,... 144 "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e4(i) = uicontrol(f, "Position" , [296 (250-k) 80 20],... "Style" , "text",... "String" , resamed(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22 end for i=1:nmed; espaa(i)=get(e1(i),"string"); espab(i)=get(e2(i),"string"); espac(i)=get(e3(i),"string"); resamed(i)=get(e4(i),"string"); end; espaa=evstr(espaa); espab=evstr(espab); espac=evstr(espac); resamed=evstr(resamed); b3= uicontrol(f, "Position" , [215 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Graficar",... "FontWeight", "bold",... "callback" , "xend,return"); halt b4= uicontrol(f, "Position" , [215 (250-k) 80 20],... "Style" , "text",... "String" , "Graficado",... "FontWeight", "bold"); for i=1:nmed; espa(i)=(1/espaa(i))-(1/(espab(i)+espac(i)))-(1/(espaa(i)+espab(i)))+(1/espac(i)); espa(i)=1/espa(i); end plot2d1("oll",espa,resamed); xtitle("Resistividad Aparente vs. Espaciamientos Interelectrodicos","Espaciamientos Interelctrodicos","Resistividades Aparentes"); xgrid(); n=2*ncap-1; //************************************************************************** //************************************************************************** //************************************************************************** else end if met==4 then //dipolo-dipolo //************************************************************************** //********** DIPOLO - DIPOLO *********************************************** //************************************************************************** 145 t111 = uicontrol(f, "Position" , [0 0 300 390],... "Style" , "text",... "String" , "",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [120 350 180 20],... "Style" , "text",... "String" , "DIPOLO-DIPOLO",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t2 = uicontrol(f, "Position" , [120 330 180 20],... "Style" , "text",... "String" , "Introduzca los Datos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t3 = uicontrol(f, "Position" , [25 315 140 20],... "Style" , "text",... "String" , "Espaciamientos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [10 295 160 20],... "Style" , "text",... "String" , "Interelectrodicos (m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t5 = uicontrol(f, "Position" , [18 275 60 20],... "Style" , "text",... "String" , "(a)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t6 = uicontrol(f, "Position" , [96 275 60 20],... "Style" , "text",... "String" , "(N)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [240 300 140 20],... "Style" , "text",... "String" , "Resistividades",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); 146 t8 = uicontrol(f, "Position" , [225 280 160 20],... "Style" , "text",... "String" , "Aparentes (ohm.m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; for i=1:nmed; e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e2(i) = uicontrol(f, "Position" , [95 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e3(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "edit",... "String" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,espaa(i)=get(e1(i),''string''),na(i)=get(e2(i),''string''),resamed(i)=get(e3(i),''string'')"); halt espaa(i)=get(e1(i),"string"); na(i)=get(e2(i),"string"); resamed(i)=get(e3(i),"string"); b2(i) = uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "text",... "string" , espa(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e2(i) = uicontrol(f, "Position" , [95 (250-k) 60 20],... "Style" , "text",... "string" , na(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); 147 e3(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "text",... "String" , resamed(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22 end for i=1:nmed; espaa(i)=get(e1(i),"string"); na(i)=get(e2(i),"string"); resamed(i)=get(e3(i),"string"); end; espaa=evstr(espaa); na=evstr(na); resamed=evstr(resamed); b3= uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Graficar",... "FontWeight", "bold",... "callback" , "xend,return"); halt b4= uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "text",... "String" , "Graficado",... "FontWeight", "bold"); for i=1:nmed; espa(i)=(na(i)*(na(i)+1)*(na(i)+2)*espaa(i))/2; end plot2d1("oll",espa,resamed); xtitle("Resistividad Aparente vs. Espaciamientos Interelectrodicos","Espaciamientos Interelctrodicos","Resistividades Aparentes"); xgrid(); n=2*ncap-1; //************************************************************************** //************************************************************************** //************************************************************************** else end if met==5 then //polo-dipolo //************************************************************************** //********** POLO - DIPOLO ************************************************* //************************************************************************** t111 = uicontrol(f, "Position" , [0 0 300 390],... "Style" , "text",... "String" , "",... "fontsize" , 18,... 148 "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [120 350 180 20],... "Style" , "text",... "String" , "POLO-DIPOLO",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t2 = uicontrol(f, "Position" , [120 330 180 20],... "Style" , "text",... "String" , "Introduzca los Datos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t3 = uicontrol(f, "Position" , [25 315 140 20],... "Style" , "text",... "String" , "Espaciamientos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [10 295 160 20],... "Style" , "text",... "String" , "Interelectrodicos (m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t5 = uicontrol(f, "Position" , [18 275 60 20],... "Style" , "text",... "String" , "(a)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t6 = uicontrol(f, "Position" , [96 275 60 20],... "Style" , "text",... "String" , "(N)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [240 300 140 20],... "Style" , "text",... "String" , "Resistividades",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t8 = uicontrol(f, "Position" , [225 280 160 20],... "Style" , "text",... "String" , "Aparentes (ohm.m)",... 149 "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; for i=1:nmed; e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e2(i) = uicontrol(f, "Position" , [95 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); e3(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "edit",... "String" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,espaa(i)=get(e1(i),''string''),na(i)=get(e2(i),''string''),resamed(i)=get(e3(i),''string'')"); halt espaa(i)=get(e1(i),"string"); na(i)=get(e2(i),"string"); resamed(i)=get(e3(i),"string"); b2(i) = uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); e1(i) = uicontrol(f, "Position" , [15 (250-k) 60 20],... "Style" , "text",... "string" , espaa(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e2(i) = uicontrol(f, "Position" , [95 (250-k) 60 20],... "Style" , "text",... "string" , na(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e3(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "text",... 150 "String" , resamed(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22 end for i=1:nmed; espaa(i)=get(e1(i),"string"); na(i)=get(e2(i),"string"); resamed(i)=get(e3(i),"string"); end; espaa=evstr(espaa); na=evstr(na); resamed=evstr(resamed); b3= uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Graficar",... "FontWeight", "bold",... "callback" , "xend,return"); halt b4= uicontrol(f, "Position" , [175 (250-k) 80 20],... "Style" , "text",... "String" , "Graficado",... "FontWeight", "bold"); for i=1:nmed; espa(i)=na(i)*(na(i)+1)*espaa(i); end ; plot2d1("oll",espa,resamed); xtitle("Resistividad Aparente vs. Espaciamientos Interelectrodicos","Espaciamientos Interelctrodicos","Resistividades Aparentes"); xgrid(); n=2*ncap-1; //************************************************************************** //************************************************************************** //************************************************************************** else end if met==6 then //polo-polo //********************************************************************************** //********************************** POLO POLO ************************************* //********************************************************************************** t111 = uicontrol(f, "Position" , [0 0 300 390],... "Style" , "text",... "String" , "",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1 = uicontrol(f, "Position" , [120 350 180 20],... "Style" , "text",... 151 "String" , "POLO-POLO",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t2 = uicontrol(f, "Position" , [120 330 180 20],... "Style" , "text",... "String" , "Introduzca los Datos",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t3 = uicontrol(f, "Position" , [35 315 140 20],... "Style" , "text",... "String" , "Espaciamiento",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t4 = uicontrol(f, "Position" , [20 295 160 20],... "Style" , "text",... "String" , "Interelectrodico(m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t5 = uicontrol(f, "Position" , [13 275 160 20],... "Style" , "text",... "String" , "(a)",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t6 = uicontrol(f, "Position" , [240 300 140 20],... "Style" , "text",... "String" , "Resistividades",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t7 = uicontrol(f, "Position" , [225 280 160 20],... "Style" , "text",... "String" , "Aparentes (ohm.m)",... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; for i=1:nmed; e1(i) = uicontrol(f, "Position" , [60 (250-k) 60 20],... "Style" , "edit",... "string" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); 152 e2(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "edit",... "String" , ["1"],... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,espa(i)=get(e1(i),''string''),resamed(i)=get(e2(i),''string'')"); halt espa(i)=get(e1(i),"string"); resamed(i)=get(e2(i),"string"); b2(i) = uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); e1(i) = uicontrol(f, "Position" , [60 (250-k) 60 20],... "Style" , "text",... "string" , espa(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); e2(i) = uicontrol(f, "Position" , [260 (250-k) 80 20],... "Style" , "text",... "String" , resamed(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22 end for i=1:nmed; espa(i)=get(e1(i),"string"); resamed(i)=get(e2(i),"string"); end; espa=evstr(espa); resamed=evstr(resamed); b3= uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "pushbutton",... "String" , "Graficar",... "FontWeight", "bold",... "callback" , "xend,return"); halt b4= uicontrol(f, "Position" , [150 (250-k) 80 20],... "Style" , "text",... "String" , "Graficado",... "FontWeight", "bold"); plot2d1("oll",espa,resamed); 153 xtitle("Resistividad Aparente vs. Espaciamientos Interelectrodicos","Espaciamientos Interelctrodicos","Resistividades Aparentes"); xgrid(); n=2*ncap-1; //********************************************************************************** //********************************************************************************** //********************************************************************************** else end //********************************************************************************** //********************************************************************************** //********************************************************************************** fr4= uicontrol(f, "Position" , [400 470 510 80],... "Style" , "frame",... "BackgroundColor",[1 0.7 0]); t8 = uicontrol(f, "Position" , [410 510 490 30],... "Style" , "text",... "String" , "DESEA INTRODUCIR EL VECTOR DE ARRANQUE MANUALMENTE O",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); t9 = uicontrol(f, "Position" , [410 485 490 30],... "Style" , "text",... "String" , "AUTOMATICAMENTE POR MEDIO DEL ALGORITMO GENETICO?",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); list_itemm = ["Manualmente" "Automaticamente" ]; l2 =0; inita=strcat(list_itemm,'|'); l2 = uicontrol(f, "Position" , [520 400 120 55],... "Style" , "listbox",... "String" , inita,... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [660 430 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return"); halt dec=(get(l2,"value")); b1(i) = uicontrol(f, "Position" , [660 430 80 20],... "Style" , "text",... "String" , "Actualizado",... "FontWeight", "bold"); //********************************************************************************** //********************************************************************************** //********************************************************************************** t4= uicontrol(f, "Position" , [410 0 600 470],... 154 "Style" , "text",... "BackgroundColor",[0.9 0.9 0.9]); if (dec==2) then //inicio de AG fr4= uicontrol(f, "Position" , [400 470 510 80],... "Style" , "frame",... "BackgroundColor",[1 0.7 0]); t8 = uicontrol(f, "Position" , [410 480 490 50],... "Style" , "text",... "String" , "EL ALGORITMO GENETICO SE ESTA EJECUTANDO",... "fontsize" , 19,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //*********************** ALGORITMO GENETICO ********************* //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** kag=1; mantener=1; npad=100; presc=0.07; while mantener==1 ;//selección de buenos padres //********************************************* //*********** CONTADOR DE ITERACIONES ********* //********************************************* kagstr=mtlb_num2str(kag) ; b1(i) = uicontrol(f, "Position" , [580 430 190 25],... "Style" , "text",... "String" , "AG-ITERACION "+kagstr,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); //******************************************** padres=grand(n,npad,'unf',1,1000); for i=ncap+1:n; padres(i,:)=grand(1,npad,'unf',1,100); end; for ii=1:npad ;//evaluacion de los padres x0=padres(:,ii); //****************************************************************** for i=1:ncap ; resis(i)=x0(i); end; 155 for i=1:n-ncap; espcap(i)=x0(ncap+i); end; for i=1:ncap-1; ck(i)=(resis(i+1)-resis(i))/(resis(i+1)+resis(i)); end ; w=0; for i=1:ncap-1; w=w+espcap(i); prof(i)=w; end; //****************************************************************** //************************ EJECUTABLE *************************** //****************************************************************** for u=1:length(espa); ax=espa(u); area1(u)=gfun(ax); area2(u)=gfun(2*ax); area(u)=area1(u)-area2(u); areaa(u,1)=resis(1)*(1+2*ax*area(u,1)); end; //****************************************************************** resacal(:,ii)=areaa(:,1); end; //end de padres for j=1:ii; for i=1:nmed; fi(i,j)=((resamed(i,1)-resacal(i,j))/resamed(i,1))**2; //evaluación de la calidad de los genes del los padres end; end; for j=1:ii; fisuma(j)=sum(fi(:,j)); //evaluación de la calidad total del padres if (fisuma(j)<=presc) then; mantener=2; else; end; end; kag=kag+1; [minn,possp]=mini(fisuma(:,1)); buenpadre=padres(:,possp); if (kag>50); presc=0.1; else; end; if (kag>70); presc=0.2; else; end; if (kag>90); presc=0.3; else; end; if (kag>110); presc=0.4; else; end; if (kag>130); 156 presc=0.5; else; end; end ;//end de while mantener [minn1,poss1]=mini(fisuma(:,1)); for i=1:nmed; [minn(i),poss(i)]=mini(fi(i,:)); //selección del mejor gen i A(:,i)=padres(:,poss(i)) ; //selección de los mejores padres con gen i end; if (n<nmed) then; for i=1:n; A(i,nmed+1)=padres(i,poss(i)); //mutación de los padres con mejores genes end; else; for i=1:nmed; A(i,nmed+1)=padres(i,poss(i)); //mutación de los padres con mejores genes end; end; A(:,nmed+2)=padres(:,poss1); //selección del mejor de todos los padres for j=1:n-ncap; for i=1:ncap; for k=1:nmed+2; R(i,k)=A(i,k); E(j,k)=A(ncap+j,k); end; end; end; u=1; for i=1:nmed+2; for j=1:nmed+2; hijos(:,u)=[R(:,i);E(:,j)]; u=u+1; end; end; for iu=1:(nmed+2)*(nmed+2); // evaluación de hijos x0=hijos(:,iu); //****************************************************************** for i=1:ncap ; resis(i)=x0(i); end; for i=1:n-ncap; espcap(i)=x0(ncap+i); end; for i=1:ncap-1; ck(i)=(resis(i+1)-resis(i))/(resis(i+1)+resis(i)); end ; w=0; for i=1:ncap-1; w=w+espcap(i); prof(i)=w; end; //****************************************************************** //************************ EJECUTABLE *************************** //****************************************************************** for u=1:length(espa); 157 ax=espa(u); area1(u)=gfun(ax); area2(u)=gfun(2*ax); area(u)=area1(u)-area2(u); areaa(u,1)=resis(1)*(1+2*ax*area(u,1)); end; //****************************************************************** resacal(:,iu)=areaa(:,1); end ; // end de hijos for iu=1:(nmed+2)*(nmed+2); for i=1:nmed; fii(i,iu)=((resamed(i,1)-resacal(i,iu))/resamed(i,1))**2; //evaluación de los genes de familia mutada 1 end; end; for iu=1:(nmed+2)*(nmed+2); fiisuma(iu)=sum(fii(:,iu)) ;//evaluacion total de los individuos de familia mutada 1 end; [minn,possh]=mini(fiisuma(:,1)); buenhijo=hijos(:,possh); if (fisuma(possp,1)<fiisuma(possh,1)) then; x0=buenpadre; else; x0=buenhijo; end; if (buenhijo(:,:)==0) then; x0=buenpadre; end; //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** //****************************************************************** va=x0; fiva=calcfi(n,nmed); //calculo del fi del vector de arranque estimado fr5= uicontrol(f, "Position" , [400 470 510 80],... "Style" , "frame",... "BackgroundColor",[1 0.7 0]); t9 = uicontrol(f, "Position" , [410 500 490 20],... "Style" , "text",... "String" , "EL VECTOR DE ARRANQUE FUE ESTIMADO",... "fontsize" , 23,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); t11 = uicontrol(f, "Position" , [470 395 270 20],... "Style" , "text",... "String" , "Vector de Arranque Estimado",... 158 "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; x0str=mtlb_num2str(x0); for i=1:ncap; istr=mtlb_num2str(i) ; t131 = uicontrol(f, "Position" , [510 (360-k) 100 20],... "Style" , "text",... "String" , "Restividad "+istr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "text",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=k+22; end for i=ncap+1:n; istr=mtlb_num2str(i); t131 = uicontrol(f, "Position" , [510 (360-k) 100 20],... "Style" , "text",... "String" , "Espesor "+istr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "text",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=k+22; end fivastr=mtlb_num2str(fiva) t2(i) = uicontrol(f, "Position" , [550 (360-k) 130 20],... "Style" , "text",... "string" , "ERROR= "+fivastr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1(i) = uicontrol(f, "Position" , [830 360 150 20],... "Style" , "text",... "string" , "Desea Modificar",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1(i) = uicontrol(f, "Position" , [829 340 160 20],... "Style" , "text",... "string" , "El Vector de Arranque?",... "fontsize" , 14,... "FontWeight", "bold",... 159 "BackgroundColor",[0.9 0.9 0.9]); list_itemmm = ["SI" "NO" ]; l3 =0; initam=strcat(list_itemmm,'|'); l3 = uicontrol(f, "Position" , [829 280 50 55],... "Style" , "listbox",... "String" , initam,... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [890 300 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return"); halt decc=(get(l3,"value")); b1(i) = uicontrol(f, "Position" , [890 300 80 20],... "Style" , "text",... "String" , "Actualizado",... "FontWeight", "bold"); t1(i) = uicontrol(f, "Position" , [828 0 200 400],... "Style" , "text",... "string" , "",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); if (decc==1) then //moficar el vector de arranque estimado k=0; for i=1:ncap; istr=mtlb_num2str(i) e1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "edit",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,x0str(i)=get(e1(i),''string'')"); halt x0str(i)=get(e1(i),"string") b1(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "text",... "String" , "Actualizado",... "FontWeight", "bold"); t1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "text",... "string" , x0str(i),... "fontsize" , 14,... 160 "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22; end for i=ncap+1:n; istr=mtlb_num2str(i); e1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "edit",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,x0str(i)=get(e1(i),''string'')"); halt x0str(i)=get(e1(i),"string") b1(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "text",... "String" , "Actualizado",... "FontWeight", "bold"); t1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "text",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22; end t11 = uicontrol(f, "Position" , [460 395 390 20],... "Style" , "text",... "String" , "Vector de Arranque Modificado",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); x0=evstr(x0str); //vector de arranque estimado modificado fiva=calcfi(n,nmed); fivastr=mtlb_num2str(fiva); t2 = uicontrol(f, "Position" , [550 (360-k) 230 20],... "Style" , "text",... "string" , "ERROR= "+fivastr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); else x0=evstr(x0str) //vector de arranque estimado no modificado end else //**introduce el vector de arranque manualmente sigue=1; x0=zeros(n,1); while (sigue==1) 161 t11 = uicontrol(f, "Position" , [530 395 270 20],... "Style" , "text",... "String" , "Vector de Arranque",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; x0str=mtlb_num2str(x0); for i=1:ncap; istr=mtlb_num2str(i) t131 = uicontrol(f, "Position" , [510 (360-k) 100 20],... "Style" , "text",... "String" , "Restividad "+istr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "edit",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,x0str(i)=get(e1(i),''string'')"); halt x0str(i)=get(e1(i),"string"); b2(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); t1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "text",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22; end for i=ncap+1:n; istr=mtlb_num2str(i-ncap); t131 = uicontrol(f, "Position" , [510 (360-k) 100 20],... "Style" , "text",... "String" , "Espesor "+istr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "edit",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... 162 "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... "callback" , "return,x0str(i)=get(e1(i),''string'')"); halt x0str(i)=get(e1(i),"string"); b2(i) = uicontrol(f, "Position" , [710 (360-k) 80 20],... "Style" , "Text",... "String" , "Actualizado",... "FontWeight", "bold"); t1(i) = uicontrol(f, "Position" , [610 (360-k) 100 20],... "Style" , "text",... "string" , x0str(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); k=k+22; end x0=evstr(x0str); fiva=calcfi(n,nmed);//calculo del fi del vector de arranque introducido manualmente fivastr=mtlb_num2str(fiva); t2 = uicontrol(f, "Position" , [580 (350-k) 170 30],... "Style" , "text",... "string" , "ERROR= "+fivastr,... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1(i) = uicontrol(f, "Position" , [830 360 150 20],... "Style" , "text",... "string" , "Desea Modificar",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t1(i) = uicontrol(f, "Position" , [829 340 160 20],... "Style" , "text",... "string" , "El Vector de Arranque?",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); list_itemmm = ["SI" "NO" ]; l4 =0; initam=strcat(list_itemmm,'|'); l4 = uicontrol(f, "Position" , [829 280 50 55],... "Style" , "listbox",... "String" , initam,... "BackgroundColor",[1 1 1]); b1(i) = uicontrol(f, "Position" , [890 300 80 20],... "Style" , "pushbutton",... "String" , "Actualizar",... "FontWeight", "bold",... 163 "callback" , "return"); halt sigue=(get(l4,"value")); b1(i) = uicontrol(f, "Position" , [890 300 80 20],... "Style" , "text",... "String" , "Actualizado",... "FontWeight", "bold"); fr5= uicontrol(f, "Position" , [400 470 510 80],... "Style" , "frame",... "BackgroundColor",[1 0.7 0]); t11 = uicontrol(f, "Position" , [410 510 490 25],... "Style" , "text",... "String" , "EL PROGRAMA ESTA EJECUTANDOSE",... "fontsize" , 26,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); t10 = uicontrol(f, "Position" , [520 480 300 20],... "Style" , "text",... "String" , "POR FAVOR, ESPERE",... "fontsize" , 25,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); end // end de while sigue t1(i) = uicontrol(f, "Position" , [828 0 200 400],... "Style" , "text",... "string" , "",... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); end // fin de introduccion vector de arranque //********************** fin de introducir y modificar el vector de arranque introducido manualmente fr5= uicontrol(f, "Position" , [400 470 510 80],... "Style" , "frame",... "BackgroundColor",[1 0.7 0]); t11 = uicontrol(f, "Position" , [410 510 490 25],... "Style" , "text",... "String" , "EL PROGRAMA ESTA EJECUTANDOSE",... "fontsize" , 26,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); t10 = uicontrol(f, "Position" , [520 480 300 20],... "Style" , "text",... "String" , "POR FAVOR, ESPERE",... "fontsize" , 25,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); va=x0; //vector de arranque total kgn=1; terminar=1; while terminar==1; //comando para mantenerhasta que se cumpaln las condiciones //********************************************* 164 //*********** CONTADOR DE ITERACIONES ********* //********************************************* kgnstr=mtlb_num2str(kgn) ; b1 = uicontrol(f, "Position" , [580 430 190 25],... "Style" , "text",... "String" , "GN-ITERACION "+kgnstr,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); //******************************************** for i=1:n; gfi(i)=0; sigma(i)=0; end; epsilon=0.0000001; [gfi,a]=gradfi(n,nmed); fi=calcfi(n,nmed); for i=1:n; for j=1:n; h(i,j)=0; end ; end ; for i=1:n; for j=1:n; for l=1:nmed; h(i,j)=h(i,j)+2*a(l,i)*a(l,j); end ; end ; end ; hh=psinv(h); for i=1:n; sigma(i)=0; for j=1:n; sigma(i)=sigma(i)-hh(i,j)*gfi(j); end ; end ; amin=prueba(n,nmed); aux=0; for i=1:n; u(i)=2.5; end ; for i=1:n; c(i)=amin*sigma(i); d(i)=x0(i)*.5; if (abs(c(i))>d(i)) then; u(i)=d(i)*c(i)/(abs(c(i))*sigma(i)); else; end ; end ; for i=1:n; if (abs(u(i))<abs(amin)) then; amin=u(i); else ; end ; 165 end ; fivie=calcfi(n,nmed); final=1; for i=1:n; xf(i)=x0(i); end ; while final==1; for i=1:n; c(i)=amin*sigma(i); end ; for i=1:n; x0(i)=xf(i)+c(i); end ; finue=calcfi(n,nmed); if ((finue>fivie)&(abs(amin)>1.e-9)) then; amin=amin*0.5; else; final=2; end ; end ; for i=1:n; aux=aux+(c(i)*c(i))/(x0(i)*x0(i)); end ; aux=sqrt(aux); kgn=kgn+1; if(fi<fi1) then; aux1=aux; kp1=kgn; fi1=fi; for i=1:n; xcm(i)=x0(i); end ; else; end ; //******* t11 = uicontrol(f, "Position" , [470 395 360 20],... "Style" , "text",... "String" , "Vector de Arranque",... "fontsize" , 18,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); km=0; x0strr=mtlb_num2str(x0); for i=1:ncap; istr=mtlb_num2str(i) t131 = uicontrol(f, "Position" , [510 (360-km) 100 20],... "Style" , "text",... "String" , "Restividad "+istr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e1(i) = uicontrol(f, "Position" , [610 (360-km) 100 20],... "Style" , "text",... "string" , x0strr(i),... "fontsize" , 14,... "FontWeight", "bold",... 166 "BackgroundColor",[1 0.7 0]); km=km+22; end for i=ncap+1:n; istr=mtlb_num2str(i-ncap); t131 = uicontrol(f, "Position" , [510 (360-km) 100 20],... "Style" , "text",... "String" , "Espesor "+istr,... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); e1(i) = uicontrol(f, "Position" , [610 (360-km) 100 20],... "Style" , "text",... "string" , x0strr(i),... "fontsize" , 14,... "FontWeight", "bold",... "BackgroundColor",[1 0.7 0]); km=km+22; end fiva=calcfi(n,nmed);//calculo del fi del vector de arranque introducido manualmente fivastr=mtlb_num2str(fiva); t2 = uicontrol(f, "Position" , [550 (350-km) 220 30],... "Style" , "text",... "string" , "ERROR= "+fivastr,... "fontsize" , 16,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); //******* if (kgn>100)|(abs(aux)<epsilon)|(abs(amin)<1e-9) then; fi=calcfi(n,nmed); terminar=2; else; end; end; time=timer(); vr=x0; fivr=calcfi(n,nmed); //calculo del vector estimado por Gauss-Newton //******************* ncapstr=mtlb_num2str(ncap); nmedstr=mtlb_num2str(nmed); //vastr=mtlb_num2str(va); //vmstr=mtlb_num2str(vm); //vrstr=mtlb_num2str(vr); x0str=mtlb_num2str(x0); fivrstr=mtlb_num2str(fivr); //resacalstr=mtlb_num2str(resacal); //****************** fr5= uicontrol(f, "Position" , [400 470 510 80],... "Style" , "frame",... "BackgroundColor",[1 0.7 0]); t11 = uicontrol(f, "Position" , [410 480 490 60],... "Style" , "text",... "String" , "RESULTADOS",... "fontsize" , 40,... "FontWeight", "bold",... 167 "BackgroundColor",[1 0.7 0]); t4= uicontrol(f, "Position" , [400 0 600 470],... "Style" , "text",... "BackgroundColor",[0.9 0.9 0.9]); t10 = uicontrol(f, "Position" , [410 435 490 20],... "Style" , "text",... "String" , "NUMERO DE CAPAS: "+ncapstr,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t11 = uicontrol(f, "Position" , [410 405 490 20],... "Style" , "text",... "String" , "PROYECCIÓN: "+nombre,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t12 = uicontrol(f, "Position" , [410 375 490 20],... "Style" , "text",... "String" , "MODELO DEL SUBSUELO",... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=0; for i=1:ncap; t13 = uicontrol(f, "Position" , [670 (355-k) 120 20],... "Style" , "text",... "String" , x0str(i),... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); istr=mtlb_num2str(i) t131 = uicontrol(f, "Position" , [510 (355-k) 150 20],... "Style" , "text",... "String" , "Restividad "+istr,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=k+20; end for i=ncap+1:n t13 = uicontrol(f, "Position" , [670 (355-k) 120 20],... "Style" , "text",... "String" , x0str(i),... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); istr=mtlb_num2str(i-ncap) ; t131 = uicontrol(f, "Position" , [510 (355-k) 150 20],... "Style" , "text",... "String" , "Espesor "+istr,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); k=k+20; end t14 = uicontrol(f, "Position" , [420 (340-k) 490 20],... 168 "Style" , "text",... "String" , "SUMATORIA DE ERROR (FI) ",... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); t14 = uicontrol(f, "Position" , [410 (320-k) 490 20],... "Style" , "text",... "String" , fivrstr,... "fontsize" , 20,... "FontWeight", "bold",... "BackgroundColor",[0.9 0.9 0.9]); //numero_de_capas=ncap; //modelo_del_subsuelo=x0; //sumatori_de_error_ponderado_cuadratico=fi; //iteraciones=k; //tiempo=time; //vector_de_arranque=va; //resistividades_aparentes_calculadas=areaa; //print('datos.xls',numero_de_capas,modelo_del_subsuelo,sumatori_de_error_ponderado_cuadratico,itera ciones,tiempo,vector_de_arranque,resistividades_aparentes_calculadas) 169 APENDICE C ESQUEMAS DE ALGORITMOS UTILIZADOS 170 Interfaz Grafica Lectura de los datos: •Vector de arranque: •Resistividades. •Espesores. •Medidas Realizadas. •Espaciamientos Realizados •N° de Capas, N° de Medidas Desea Introducir los datos o que sean leídos de un archivo Llamado del Archivo .xls K=0 Calculo de los Valores de X K=K+1 Evaluacion del Jacobiano (A) FIN no si g(xK)=2*AT*f H(XK)=2*AT*A ¿Desea seguir iterando? XK+1=XK+ α* ΔXK ΔXK=-H-1*g Obtención de α que min Ψ(X+ α* ΔX) Busqueda Lineal si Estimador de Parámetros ¿|ΔX|<ε ó K>Kmax ó α<1*e-4? no Figura (C1): Esquema de estimador de parámetros 171 Algoritmo Genético Determina el Vector de Arranque Estimador Parametrico Basado en el Método de Gauss Newton Modificado Modelación Multiestratificada del Subsuelo Mediante Mediciones de Resistividad Aparentes Realizadas por el Método de Wenner Modelo del Subsuelo •Numero de Estratos •Resistividades de los n estratos •Espesores de los n-1 estratos Figura (C2): Esquema general 172