´ bal de Universidad Nacional San Cristo Huamanga Facultad de Ingenier´ıa de Minas, Geolog´ıa y Civil ´ n Profesional de Escuela de Formacio Ingenier´ıa Civil
Tesis Para Optar el T´ıtulo de Ingeniero Civil ´ n para Aplicaciones del ”Interfaz de Programacio Sap2000 y Visual C# Fundamentado en MathCad”
Por: ´rrez Edmundo Canchari Gutie Dirigido Por: ´rez Ing. Cristian Castro Pe
Ayacucho - Marzo 2009
Presentaci´ on Esta tesis es presentada como parte de los requisitos para optar el t´ıtulo acad´emico de Ingeniero Civil, de la Universidad Nacional San Crist´obal de Huamanga, la misma contiene los resultados obtenidos en investigaciones llevadas a cabo en el periodo 2007-2009.
´rrez Edmundo Canchari Gutie http://cgedmundo.wordpress.com
[email protected] Escuela Profesional de Ingenier´ıa Civil ´ bal de Huamanga Universidad Nacional San Cristo Ayacucho, marzo del 2009
i
Dedicatoria Dedico esta Tesis a mis padres Juan y Emilia y a mis hermanos.
ii
Agradecimientos A la Universidad Nacional San Crist´obal de Huamanga y todos los Catedr´aticos de la Escuela Profesional de Ingenier´ıa Civil. A mis padres, por su apoyo constante en mi vida. A Carla Marilyn, por brindarme esta tranquilidad en mis momentos de desesperaci´on por culminar esta tesis. Mis agradecimientos a la empresa Computers and Structures, INC por liberar a disposici´on de los usuarios, de manera totalmente gratuita, la Interfaz de Programaci´on para Aplicaciones del programa Sap2000, a disposici´on de cualquier usuario interesado. Agradezco tambi´en a la empresa Microsoft por la distribuci´on gratuita del entorno de desarrollo integrado Microsoft Visual Studio 2009 Express Edition, sin la cual hubiera sido m´as tedioso todav´ıa el desarrollo del presente trabajo. A los usuarios de los foros de discusi´on http://foros.construaprende.com/, http://forum.4downloader.ir/ y la comunidad para la ingenier´ıa civil http://www.arivte.com/Comunidad/ A la comunidad de usuarios de LATEX, al grupo que mantiene la distribuci´on para el sistema operativo Windows y a los creadores del editor WinEdt 6.0, sin la cual hubiera sido casi imposible el cuidado y la presentaci´on impecable de la presente tesis.
iii
Resumen El objetivo principal de la presente Tesis es mostrar la utilidad de la Interfaz de Programaci´on para Aplicaciones de Sap2000 11.0.4 con la debida justificaci´on de los resultados obtenidos; entre los varios lenguajes de programaci´on desde la que puede ser integrada se ha elegido Microsoft Visual C#, por ser un lenguaje orientado a objetos y estar completamente integrado con la plataforma .NET, en el desarrollo del programa es utilizado el entorno de desarrollo integrado Microsoft Visual Studio 2009 Express Edition, en la que se encuentra un ambiente c´omodo para realizar aplicaciones en computadoras. Se justifica detalladamente los resultados de Sap2000 mediante el m´etodo de los elementos finitos desde MathCad 14, para estructuras que cumplan las condiciones para ser modelado como un s´olido axisim´etrico. La aplicaci´on pr´actica de la presente Tesis es el techo del Auditorio de la Facultad de Ciencias de la Educaci´on de la Universidad Nacional San Crist´obal de Huamanga. Es importante advertir al interesado que en la presente tesis no se desarrolla la formulaci´on del m´etodo de los elementos finitos, se presenta un resumen de lo necesario para su programaci´on; la teor´ıa se utiliza en un nivel superior, aplicando directamente al an´alisis de estructuras justificando los resultados de Sap2000 detalladamente, surgiendo as´ı, un complemento ideal en el proceso de aprendizaje del referido m´etodo.
iv
´Indice general Presentaci´ on
I
Dedicatoria
II
Agradecimientos
III
Resumen
IV
´Indice general
V
´Indice de figuras
XII
´Indice de cuadros
XV
I
Introducci´ on
1
1. Introducci´ on
2
1.1. Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2. Motivaci´on de la investigaci´on . . . . . . . . . . . . . . . . . . . . . .
2
1.3. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . .
3
1.4. Justificaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.5. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.5.1. Objetivos generales . . . . . . . . . . . . . . . . . . . . . . . .
4
1.5.2. Objetivos espec´ıficos . . . . . . . . . . . . . . . . . . . . . . .
4
1.6. Organizaci´on del estudio . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.7. Metodolog´ıa aplicada . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
v
II
Marco te´ orico
8
2. An´ alisis de estructuras con elementos finitos
9
2.1. M´etodo de los elementos finitos . . . . . . . . . . . . . . . . . . . . .
9
2.1.1. Perspectiva hist´orica . . . . . . . . . . . . . . . . . . . . . . .
9
2.1.2. Definici´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.3. Esquema de presentaci´on . . . . . . . . . . . . . . . . . . . . . 10 2.2. Modelamiento de elementos estructurales . . . . . . . . . . . . . . . . 11 2.2.1. Elementos adimensionales . . . . . . . . . . . . . . . . . . . . 11 2.2.2. Elementos unidimensionales . . . . . . . . . . . . . . . . . . . 11 2.2.3. Elementos bidimensionales
. . . . . . . . . . . . . . . . . . . 12
2.2.4. Elementos tridimensionales
. . . . . . . . . . . . . . . . . . . 13
2.3. S´olido axisim´etrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.3.1. Estructuras de simetr´ıa axial . . . . . . . . . . . . . . . . . . . 14 2.3.2. Modelo como s´olido axisim´etrico . . . . . . . . . . . . . . . . . 14 2.3.3. Campo de desplazamientos . . . . . . . . . . . . . . . . . . . . 14 2.3.4. Campo de deformaciones . . . . . . . . . . . . . . . . . . . . . 15 2.3.5. Campo de tensiones . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3.6. Ecuaci´on constitutiva . . . . . . . . . . . . . . . . . . . . . . . 16 2.3.7. Expresi´on del principio de la energ´ıa potencial m´ınima . . . . 16 2.4. Formulaci´on de elementos finitos . . . . . . . . . . . . . . . . . . . . . 17 2.4.1. Funciones de forma . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4.1.1. Elemento rectangular . . . . . . . . . . . . . . . . . . 17 2.4.2. Coordenadas . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.4.3. Matriz jacobiano . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.4.4. Matriz de rigidez . . . . . . . . . . . . . . . . . . . . . . . . . 19 3. Programaci´ on en C# con API Sap2000
21
3.1. Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.2. Microsoft Visual Studio . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3. Microsoft .NET framework . . . . . . . . . . . . . . . . . . . . . . . . 22
vi
3.4. El lenguaje de programaci´on Visual c#
. . . . . . . . . . . . . . . . 22
3.4.1. Clase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4.2. Espacio de nombre . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4.3. Tipos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4.4. M´etodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4.5. Objeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4.6. Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.5. Interfaz de programaci´on para aplicaciones de sap2000 . . . . . . . . 24 3.5.1. Instalaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.5.2. Utilidad ¿Para qu´e sirve? . . . . . . . . . . . . . . . . . . . . . 24 3.6. Procedimientos generales . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.6.1. Integrar interface de Sap2000 a Visual Studio . . . . . . . . . 26 3.6.2. Implementar interface de Sap2000 en un objeto . . . . . . . . 27 3.6.3. Accediendo al objeto que implementa la interface . . . . . . . 27 3.6.4. Inicializando un archivo nuevo . . . . . . . . . . . . . . . . . . 28 3.6.5. Apoderarse de un Archivo Existente
. . . . . . . . . . . . . . 28
3.6.6. Cerrando la Aplicaci´on . . . . . . . . . . . . . . . . . . . . . . 29 3.6.7. La funci´on m´agica . . . . . . . . . . . . . . . . . . . . . . . . 29
III
Materiales y m´ etodos
30
4. An´ alisis se S´ olidos Axisim´ etricos con FEM
31
4.1. Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.1.1. Sap2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.1.1.1. M´etodo de an´alisis . . . . . . . . . . . . . . . . . . . 32 4.1.1.2. M´etodo de elementos finitos . . . . . . . . . . . . . . 32 4.1.2. Estructuras de simetr´ıa axial . . . . . . . . . . . . . . . . . . . 33 4.1.2.1. Estructura a analizar . . . . . . . . . . . . . . . . . . 33 4.1.2.2. Modelo de la estructura . . . . . . . . . . . . . . . . 33 4.2. Implementaci´on de Funciones en MathCad Para el an´alisis de s´olidos axisim´etricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 vii
4.2.1. Pre-procesador . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2.1.1. Nudos . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.1.2. Elementos . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.1.3. Propiedades . . . . . . . . . . . . . . . . . . . . . . . 36 4.2.1.4. Soportes . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.1.5. Cargas . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.2. Procesador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.2.2.1. Funciones generales . . . . . . . . . . . . . . . . . . . 38 4.2.2.1.1.
Coordenadas de nudos . . . . . . . . . . . . 38
4.2.2.1.2.
Matriz de propiedades . . . . . . . . . . . . 38
4.2.2.1.3.
Grados de libertad . . . . . . . . . . . . . . 39
4.2.2.2. Funciones para obtener la matriz de rigidez del elemento . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.2.2.2.1.
Funciones de forma . . . . . . . . . . . . . . 40
4.2.2.2.2.
Coordenadas . . . . . . . . . . . . . . . . . 41
4.2.2.2.3.
Desplazamientos . . . . . . . . . . . . . . . 41
4.2.2.2.4.
Matriz Jacobiana . . . . . . . . . . . . . . . 41
4.2.2.2.5.
Matriz deformaci´on unitaria - Desplazamiento 42
4.2.2.2.6.
Matriz de rigidez del elemento . . . . . . . . 43
4.2.2.3. Funci´on matriz de rigidez ensamblado . . . . . . . . 45 4.2.2.4. Funci´on vector de fuerzas nodales equivalentes . . . . 46 4.2.2.5. Funci´on desplazamientos en nudos . . . . . . . . . . 47 4.2.2.5.1.
Comparaci´on de resultados con sap2000 . . 49
4.2.3. Post-procesador . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.2.3.1. Reacciones en los apoyos . . . . . . . . . . . . . . . . 49 4.2.3.1.1.
Comparaci´on de resultados con sap2000 . . 50
4.2.3.2. Tensiones . . . . . . . . . . . . . . . . . . . . . . . . 50 5. Desarrollo del Programa ”esaSAP” 5.1. Organizaci´on para el programa
52
. . . . . . . . . . . . . . . . . . . . . 52
5.2. Descripci´on de la clase SapApi-Asolid . . . . . . . . . . . . . . . . . . 54 viii
5.2.1. public void AbrirSap2000() . . . . . . . . . . . . . . . . . . . . 54 5.2.2. void Refrescar() . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5.2.3. public void Cerrar()
. . . . . . . . . . . . . . . . . . . . . . . 54
5.2.4. M´etodo DefinirPropiedad
. . . . . . . . . . . . . . . . . . . . 54
5.2.5. M´etodo ZUCS . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.2.6. public void DefinirCargas()
. . . . . . . . . . . . . . . . . . . 55
5.2.7. public void MasaEstructura() . . . . . . . . . . . . . . . . . . 55 5.2.8. M´etodo ConoCompleto . . . . . . . . . . . . . . . . . . . . . . 55 5.2.9. M´etodo ConoConAbertura . . . . . . . . . . . . . . . . . . . . 56 5.2.10. M´etodo AsignarCargas . . . . . . . . . . . . . . . . . . . . . . 56 5.2.11. M´etodo Rectangulo4Nodos . . . . . . . . . . . . . . . . . . . . 56 5.2.12. M´etodo AsignarSoportesEnBase . . . . . . . . . . . . . . . . . 56 5.2.13. M´etodo AsignarSoportesEnCentro . . . . . . . . . . . . . . . . 57 5.2.14. M´etodo Analizar . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.2.15. C´odigo fuente . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.3. Descripci´on del programa esaSAP . . . . . . . . . . . . . . . . . . . . 57 5.3.1. Generalidades . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.3.2. Opciones de an´alisis . . . . . . . . . . . . . . . . . . . . . . . 57 5.3.3. Controles utilizados . . . . . . . . . . . . . . . . . . . . . . . . 60 5.3.4. Espacio de nombre . . . . . . . . . . . . . . . . . . . . . . . . 60 5.3.5. La clase AsolidCono . . . . . . . . . . . . . . . . . . . . . . . 60 5.3.6. Descripci´on de m´etodos . . . . . . . . . . . . . . . . . . . . . 60 5.3.7. Descripci´on de eventos . . . . . . . . . . . . . . . . . . . . . . 61 5.3.8. C´odigo fuente . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
IV
Resultados
62
6. Caso de estudio a un proyecto local
63
6.1. Descripci´on del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . 63 6.2. Argumentos requeridos para el an´alisis . . . . . . . . . . . . . . . . . 63 6.2.1. Dimensiones de la estructura . . . . . . . . . . . . . . . . . . . 64 ix
6.2.2. Material utilizado . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.2.3. Cargas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6.2.4. Par´ametros para la funci´on de aceleraci´on pseudo espectral . . 64 6.3. Modelo de la estructura . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.4. An´alisis de la estructura . . . . . . . . . . . . . . . . . . . . . . . . . 66 6.4.1. Resultados obtenidos sin utilizar esaSAP . . . . . . . . . . . . 67 6.4.1.1. Desplazamientos . . . . . . . . . . . . . . . . . . . . 67 6.4.1.2. Tensiones . . . . . . . . . . . . . . . . . . . . . . . . 68 6.4.1.3. Fuerzas . . . . . . . . . . . . . . . . . . . . . . . . . 69 6.4.2. Resultados obtenidos utilizando esaSAP . . . . . . . . . . . . 69 6.4.2.1. Desplazamientos . . . . . . . . . . . . . . . . . . . . 71 6.4.2.1.1.
Desplazamientos en la direcci´on radial . . . 72
6.4.2.1.2.
Desplazamientos en la direcci´on axial . . . . 73
6.4.2.2. Tensiones . . . . . . . . . . . . . . . . . . . . . . . . 73 6.4.2.2.1.
Tensiones en la direcci´on radial . . . . . . . 74
6.4.2.2.2.
Tensiones en la direcci´on circunferencial . . 75
6.4.2.2.3.
Tensiones en la direcci´on axial . . . . . . . . 76
6.4.2.2.4.
Tensi´on tangencial . . . . . . . . . . . . . . 76
6.4.2.3. Fuerzas . . . . . . . . . . . . . . . . . . . . . . . . . 77 6.4.2.3.1.
Fuerzas radiales . . . . . . . . . . . . . . . . 78
6.4.2.3.2.
Fuerzas axiales . . . . . . . . . . . . . . . . 79
6.4.3. Comparaci´on de resultados . . . . . . . . . . . . . . . . . . . . 79 6.5. Obtenci´on de refuerzos . . . . . . . . . . . . . . . . . . . . . . . . . . 80 6.5.1. Dise˜ no por esfuerzo radial S11 . . . . . . . . . . . . . . . . . . 80 6.5.2. Dise˜ no por esfuerzo Axial S33 . . . . . . . . . . . . . . . . . . 82 6.6. Justificaci´on de los resultados . . . . . . . . . . . . . . . . . . . . . . 82
V
Conclusiones
84
7. Conclusiones y recomendaciones
85
7.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 x
7.1.1. De la metodolog´ıa . . . . . . . . . . . . . . . . . . . . . . . . . 85 7.1.2. De los resultados . . . . . . . . . . . . . . . . . . . . . . . . . 86 7.1.3. Aplicaciones utilizados . . . . . . . . . . . . . . . . . . . . . . 86 7.1.4. Lenguajes de programaci´on . . . . . . . . . . . . . . . . . . . 87 7.2. Recomendaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 7.3. Desarrollos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Bibliograf´ıa
89
VI
92
Anexos
A. C´ odigo fuente ”esaSAP”
93
A.1. C´odigo fuente clase SapApi-Asolid . . . . . . . . . . . . . . . . . . . . 93 A.2. C´odigo fuente ”esaSAP” . . . . . . . . . . . . . . . . . . . . . . . . . 99 B. Fotograf´ıas
106
C. Planos de la construcci´ on
109
xi
´Indice de figuras 2.1. P´ortico en el espacio, nudos y elementos . . . . . . . . . . . . . . . . 11 2.2. Muro de contenci´on, nudos y elementos . . . . . . . . . . . . . . . . . 12 2.3. Estructura general con simetr´ıa axial . . . . . . . . . . . . . . . . . . 13 2.4. Tensiones actuando sobre un elemento diferencial de un s´olido de revoluci´on con cargas de revoluci´on . . . . . . . . . . . . . . . . . . . 15 2.5. Sistema de coordenada cartesiana y normalizado . . . . . . . . . . . . 18 3.1. Ventana principal
. . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2. Referencia desde C# al API de Sap2000 11.0.4 . . . . . . . . . . . . . 26 3.3. Integrar API Sap2000 11.0.4 . . . . . . . . . . . . . . . . . . . . . . . 27 4.1. Vista en planta techo en forma de cono con abertura . . . . . . . . . 32 4.2. Vista en elevaci´on techo en forma de cono con abertura . . . . . . . . 33 4.3. Modelo de la secci´on caracter´ıstica de revoluci´on . . . . . . . . . . . . 34 4.4. Secci´on caracter´ıstica de revoluci´on . . . . . . . . . . . . . . . . . . . 34 4.5. Identificaci´on de nudos y elementos . . . . . . . . . . . . . . . . . . . 35 4.6. Funci´on para obtener coordenadas 4.7. Funci´on para obtener gdl
. . . . . . . . . . . . . . . . . . . 39
. . . . . . . . . . . . . . . . . . . . . . . . 40
4.8. Funci´on para obtener K . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.9. Funci´on para obtener F
. . . . . . . . . . . . . . . . . . . . . . . . . 46
4.10. Funci´on para obtener Km . . . . . . . . . . . . . . . . . . . . . . . . 48 4.11. Funci´on para obtener desplazamientos
. . . . . . . . . . . . . . . . . 48
4.12. Funci´on para ordenar desplazamientos . . . . . . . . . . . . . . . . . 48 4.13. Funci´on para ordenar reacciones
xii
. . . . . . . . . . . . . . . . . . . . 50
4.14. Funci´on desplazamientos de un elemento . . . . . . . . . . . . . . . . 51 5.1. Diagrama de Flujo general . . . . . . . . . . . . . . . . . . . . . . . . 53 5.2. Ventana principal de la aplicaci´on esaSAP . . . . . . . . . . . . . . . 58 5.3. Opciones de an´alisis esaSAP
. . . . . . . . . . . . . . . . . . . . . . 58
5.4. Secci´on de revoluci´on cono completo . . . . . . . . . . . . . . . . . . 59 5.5. Secci´on de revoluci´on cono con abertura . . . . . . . . . . . . . . . . 59 5.6. Argumentos generales para el an´alisis
. . . . . . . . . . . . . . . . . 59
6.1. Vista en planta del techo en forma de cono . . . . . . . . . . . . . . . 65 6.2. Vista en 3D del techo en forma de cono . . . . . . . . . . . . . . . . . 65 6.3. Secci´on de revoluci´on de la estructura . . . . . . . . . . . . . . . . . . 66 6.4. Modelo de la estructura como s´olido axisim´etrico . . . . . . . . . . . 66 6.5. Dimensiones de la Secci´on de Revoluci´on . . . . . . . . . . . . . . . . 70 6.6. Argumentos para esaSAP . . . . . . . . . . . . . . . . . . . . . . . . 71 6.7. Desplazamiento radial m´aximo en funci´on de la discretizaci´on . . . . 73 6.8. Desplazamiento axial m´aximo en funci´on de la discretizaci´on . . . . . 73 6.9. Tensi´on radial m´aximo en funci´on de la discretizaci´on
. . . . . . . . 75
6.10. Tensi´on circunferencial m´aximo en funci´on de la discretizaci´on . . . . 75 6.11. Tensi´on axial m´aximo en funci´on de la discretizaci´on . . . . . . . . . 76 6.12. Tensi´on tangencial m´aximo en funci´on de la discretizaci´on . . . . . . 76 6.13. Fuerza radial m´aximo en funci´on de la discretizaci´on . . . . . . . . . 78 6.14. Fuerza axial m´aximo en funci´on de la discretizaci´on . . . . . . . . . . 79 6.15. Esfuerzo radial m´aximo en la zona inferior de la estructura
. . . . . 80
6.16. Esfuerzo radial m´aximo en la zona zona intermedia y superior . . . . 81 6.17. Esfuerzo axial m´aximo en la zona inferior
. . . . . . . . . . . . . . . 82
6.18. Refuerzos obtenidos para la estructura . . . . . . . . . . . . . . . . . 83 B.1. Encofrado del techo del auditorio de la Facultad de Ciencias de la Educaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 B.2. Encofrado del techo del auditorio de la Facultad de Ciencias de la Educaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
xiii
B.3. Refuerzos del techo del auditorio de la Facultad de Ciencias de la educaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 B.4. Auditorio Facultad Ciencias de la Educaci´on U.N.S.C.H . . . . . . . . 108 B.5. Auditorio Facultad Ciencias de la Educaci´on U.N.S.C.H . . . . . . . . 108
xiv
´Indice de cuadros 3.1. Cuadro de elementos utilizados . . . . . . . . . . . . . . . . . . . . . 25 4.1. Identificaci´on de nudos . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.2. Identificaci´on de los elementos . . . . . . . . . . . . . . . . . . . . . . 36 4.3. Identificaci´on de soportes . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.4. Cargas en nudos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.5. Desplazamientos en los nudos . . . . . . . . . . . . . . . . . . . . . . 49 4.6. Reacciones en los soportes . . . . . . . . . . . . . . . . . . . . . . . . 50 6.1. Desplazamientos m´aximos en los nudos de la estructura sin utilizar la extensi´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 6.2. Tensiones m´aximos en elementos sin utilizar la extensi´on . . . . . . . 69 6.3. Fuerzas m´aximos en nudos de elementos sin utilizar la extensi´on . . . 70 6.4. Desplazamientos m´aximos en los nudos utilizando la extensi´on . . . . 72 6.5. Tensiones m´aximos en elementos utilizando la extensi´on . . . . . . . . 74 6.6. Fuerzas m´aximos en nudos de elementos utilizando la extensi´on . . . 78
xv
Parte I Introducci´ on
1
Cap´ıtulo 1 Introducci´ on 1.1.
Generalidades
Sap2000, programa desarrollado por la empresa Computers and Structures, Inc. destinado para el an´alisis y dise˜ no de estructuras, posee desde su versi´on 11.0.0 1 una Interfaz de Programaci´on para Aplicaciones (API - Application programming Interface) con la cual el interesado puede ampliar las capacidades del programa con finalidades particulares, para prop´ositos espec´ıficos. Siendo esta propiedad con que dispone el programa la base en la que se centra la presente tesis. En el presente trabajo se elaborar´a, personalizar´a y validar´a el uso de API SAP2000 desde MICROSOFT VISUAL C#, producto del trabajo de investigaci´on, donde se mostrar´a claramente las ventajas y las bondades de la Interfaz de ´ Programaci´on para Aplicaciones, el an´alisis estructural con el METODO DE LOS ELEMENTOS FINITOS y la programaci´on orientada a objetos. Asimismo, como elemento de trabajo y fundamentaci´on de los modelos num´ericos a utilizarse se emplear´a el MATHCAD como modelo de aprendizaje.
1.2.
Motivaci´ on de la investigaci´ on
Actualmente entender los fundamentos del M´etodo de los Elementos Finitos es muy importante en la vida profesional del Ingeniero Civil, ya que la gran mayor´ıa 1
En el desarrollo de la presente tesis se utiliza el programa Sap2000 11.0.4
2
de los programas, no solo en el a´rea de estructuras, est´an escritos bas´andose en este m´etodo. Por lo tanto, se ha llegado a un nivel tal que es imposible evitar la convivencia constante con estas aplicaciones, por lo que ofrece, por una parte las grandes facilidades para modelar situaciones reales y por otra, exige al usuario tener un conocimiento suficiente para el correcto uso de las aplicaciones. Con la finalidad de utilizar el programa Sap2000 de manera responsable se investiga el M´etodo de los Elementos Finitos para finalmente automatizar el an´alisis estructural mediante su Interface de Programaci´on para Aplicaciones. Es imposible programar en Sap2000 sin los conocimientos suficientes del M´etodo de los Elementos Finitos, cuanto mayor conocimiento se tenga del m´etodo de an´alisis en que se fundamenta, mejor ser´a la convivencia entre el usuario y el programa y como consecuencia natural con su Interface de Programaci´on para Aplicaciones.
1.3.
Planteamiento del problema
El principal inconveniente surge en utilizar aplicaciones para el An´alisis Estructural sin conocimiento suficiente de los m´etodos de an´alisis en que se fundamenta el programa; consciente de esta realidad, en la presente tesis se justifica el uso del M´etodo de los Elementos Finitos en el programa Sap2000, para luego automatizar el procedimiento mediante la Interfaz de Programaci´on para Aplicaciones. Los interesados en utilizar el programa Sap2000 para sus an´alisis, tendr´an en la presente tesis las bases justificadas para su adecuado uso.
1.4.
Justificaci´ on
Se hace uso de aplicaciones de muy alto nivel como son Sap2000 11.0.4, MathCad 14 y Microsoft Visual Studio 2009 Express Edition, adem´as de utilizar t´ecnicas y lenguajes de programaci´on actuales, lo que permite enlazar la Interfaz de Programaci´on para Aplicaciones que posee Sap2000 con el lenguaje de programaci´on Microsoft Visual C# para acceder al programa, con la finalidad de realizar una serie de extensiones para cada prop´osito. De igual manera se utiliza el M´etodo do los 3
Elementos Finitos para justificar los resultados, m´etodo num´erico que actualmente es el m´as id´oneo para el an´alisis de estructuras.
1.5. 1.5.1.
Objetivos Objetivos generales
Crear una aplicaci´on con la finalidad de automatizar el proceso de an´alisis en el programa Sap2000 mediante su Interfaz de Programaci´on para Aplicaciones. La aplicaci´on ser´a para automatizar el an´alisis de techos de edificaciones que tienen la forma de cono, para el an´alisis se modelar´a la estructura como un S´olido de revoluci´on.
1.5.2.
Objetivos espec´ıficos
Los objetivos espec´ıficos son los siguientes Utilizar el M´etodo de los Elementos Finitos en su formulaci´on para estructuras modeladas como S´olidos de Revoluci´on. Crear una plantilla mediante programaci´on en MathCad 14 para el an´alisis de cualquier estructura que pueda ser modelado como un S´olido de Revoluci´on mediante el M´etodo de los Elementos Finitos. Analizar una estructura que pueda ser modelada como S´olido de Revoluci´on en Sap2000 y en la plantilla creada de MathCad 14 y lograr que los resultados sean los mismos. Programar una aplicaci´on para automatizar el an´alisis estructural en Sap2000 desde el lenguaje de programaci´on Microsoft Visual c#
1.6.
Organizaci´ on del estudio
El hecho de tomar los resultados obtenidos de Sap2000 y modificarlo o ampliarlo convenientemente, lleva a la necesidad de tener un conocimiento adecuado de los 4
fundamentos te´oricos en que se basa el programa, s´olo as´ı se estar´a en la capacidad de entender el funcionamiento y ser capaz de interpretar correctamente los resultados obtenidos, por esta raz´on se investiga el M´etodo de los Elementos Finitos, con el prop´osito de justificar el an´alisis y crear una extensi´on para modelar y analizar estructuras que cumplen las condiciones para ser modeladas como s´olidos de revoluci´on. Por la misma naturaleza de c´alculo y convencido de que no existe mejor manera de aprender el M´etodo de los Elementos Finitos sino program´andolo y la necesidad de observar el proceso de c´alculo paso a paso conlleva a utilizar los medios adecuados para este fin, MathCad 14 es una herramienta ideal espec´ıficamente dise˜ nado para elaborar informes t´ecnicos detallados y ser´a aprovechado en esta oportunidad en el an´alisis de estructuras. Los resultados obtenidos mediante MathCad 14 para su validez deben de coincidir con los del Sap2000, ya que la formulaci´on del M´etodo de los Elementos Finitos, sea por el principio que fuere, llega a un resultado u ´nico. La igualdad de los resultados, los de MathCad 14 y Sap2000 11.0.4, en la presente tesis es la base que justifica el uso del M´etodo de los Elementos Finitos de manera apropiada, garantizando de esta manera los resultados que ofrece el programa Sap2000. Finalmente se crea una extensi´on para Sap2000 desde Microsoft Visual c# para el an´alisis de estructuras modeladas como S´olidos de Revoluci´on, cuya aplicaci´on pr´actica es el techo en forma de cono del auditorio de la Facultad de Ciencias de la Educaci´on de la Universidad Nacional San Crist´obal de Huamanga. Se consideran los siguientes cap´ıtulos: Cap´ıtulo 1: Generalidades sobre la tesis. Cap´ıtulo 2: An´alisis estructural con el m´etodo de los elementos finitos, modelamiento de elementos estructurales y un resumen de lo necesario para su programaci´on del m´etodo de los elementos finitos para el an´alisis de estructuras axisim´etricas. Cap´ıtulo 3: Los fundamentos para la programaci´on en Visual C# y la Interface 5
de Sap2000. Descripci´on de los procedimientos generales para interactuar con la Interfaz de Programaci´on para Aplicaciones de Sap2000 desde Microsoft Visual C#, para la edici´on de la aplicaci´on se utiliza el entorno de de desarrollo integrado Microsoft Visual Studio 2009 Express Edition. cap´ıtulo 4: Para entender el presente cap´ıtulo el interesado debe tener el conocimiento suficiente del m´etodo de los elementos finitos, ya que es utilizado directamente en la creaci´on de una plantilla en MathCad 14 con la finalidad de justificar los resultados de Sap2000 y obtener un procedimiento de an´alisis detallado. La plantilla es para analizar mediante el m´etodo de los elementos finitos de cualquier estructura que pueda ser modelado como un s´olido axisim´etrico. Cap´ıtulo 5: Desarrollo de una extensi´on para Sap2000 mediante su Interfaz de Programaci´on para Aplicaciones desde Microsoft Visual c#. La extensi´on tendr´a la capacidad de modelar y analizar mediante el M´etodo de los Elementos Finitos un tipo de estructura que cumple las condiciones para ser modelado como S´olido de Revoluci´on. Cap´ıtulo 6: Caso de estudio y aplicaci´on, discusi´on de resultados. Como aplicaci´on pr´actica se analiza el techo, en forma de cono, de la Aula Magna, de la Facultad de Ciencias de la Educaci´on en la Ciudad Universitaria(Universidad Nacional San Crist´obal de Huamanga - UNSCH). Cap´ıtulo 7: Conclusiones y recomendaciones.
1.7.
Metodolog´ıa aplicada
La investigaci´on es anal´ıtica. Consiste en investigar el M´etodo de los Elementos Finitos para estructuras que cumplen las condiciones para ser modeladas como S´olidos de Revoluci´on, luego realizar un programa en MathCad 14 con la finalidad de obtener un procedimiento de an´alisis detallado, los resultados obtenidos ser´an comparados con los que se obtiene del programa Sap2000 11.0.4 ; establecido los 6
fundamentos te´oricos suficientes se podr´a realizar extensiones mediante la Interface de Programaci´on para Aplicaciones que posee el programa.
7
Parte II Marco te´ orico
8
Cap´ıtulo 2 An´ alisis de estructuras con elementos finitos El presente cap´ıtulo trata sobre el modelamiento de los elementos estructurales mediante el M´etodo de los Elementos Finitos 1 ; bien se har´ıa al no tratar este cap´ıtulo, dedicando el trabajo completamente a interpretar las relaciones establecidas en los libros de la referencia y justificar los resultados obtenidos, en lugar de estar reproduciendo, lo que en cualquier libro que trate del tema se le puede encontrar y con mucho mayor detalle, pero cumpliendo los requisitos para una ”tesis” es necesario incluirlo.
2.1. 2.1.1.
M´ etodo de los elementos finitos Perspectiva hist´ orica
La referencia [6](P´aginas 01 al 05) narra de una manera extraordinaria, sus or´ıgenes, evoluci´on y el presente del m´etodo de los elementos finitos. Seg´ un los entendidos en el tema no es posible indicar con exactitud el momento en que se inicia el referido m´etodo2 . 1
Los referencias [1], [2], [3], [4], [5], etc tratan a detalle sobre el m´etodo para el an´alisis de
estructuras. 2 Referencia [5] p´ agina 03
9
2.1.2.
Definici´ on
La definici´on del m´etodo, para su veracidad se transcribe de los libros de la referencia. ANSYS-CivilFem(2003) el M´etodo de los Elementos Finitos, es uno de los procedimientos que existen para aproximar el comportamiento de una estructura con infinitos grados de libertad por el de otra, con aproximadamente las mismas propiedades f´ısicas y geom´etricas, pero con un n´ umero finito de grados de libertad, cuyas ecuaciones de equilibrio pueden expresarse por un sistema algebraico de ecuaciones simult´aneas con un n´ umero limitado de inc´ognitas3 . O.C Zienkiewicz - R.L. Taylor(1993) es objeto de este texto presentar un panorama del m´etodo de los elementos finitos como un procedimiento general de discretizaci´on de los problemas continuos planteadas por expresiones definidas matem´aticamente 4 .
2.1.3.
Esquema de presentaci´ on
En el presente trabajo se adopta el enfoque de la energ´ıa potencial 5 para la formulaci´on del m´etodo de los elementos finitos. Principio de la energ´ıa potencial m´ınima Para sistemas conservativos, de todos los campos de desplazamientos cinem´aticamente admisibles, aquellos que corresponden a condiciones de equilibrio extremizan la energ´ıa potencial total. Si la condici´on extrema es un m´ınimo, el estado de equilibrio es estable6 . 3
Referencia [7] p´ agina 03 Referencia [5] p´ agina 02 5 Los detalles del principio de la energ´ıa potencial para la formulaci´on del m´etodo de los elementos 4
finitos, se encuentran en las referencias [8](P´aginas 09 al 11), [6](P´aginas 19 al 26), [9](P´aginas 07 al 12) 6 Referencia [8] p´ agina 10
10
2.2.
Modelamiento de elementos estructurales
Debido a lo extenso del tema, se comenta brevemente los modelos7 para los elementos estructurales en un an´alisis mediante el m´etodo de los elementos finitos.
2.2.1.
Elementos adimensionales
Se consideran objetos adimensionales a los nudos. Mediante los nudos est´an conectados los elementos en una discretizaci´on para el an´alisis y representan los puntos, sobre la estructura, en las cuales se desea obtener los resultados requeridos figura(2.2 y 2.1).
2.2.2.
Elementos unidimensionales
El elemento unidimensional, la l´ınea 8 , es un objeto que sirve para modelar el comportamiento de los siguientes elementos estructurales: armaduras, vigas, columnas, cables, etc, y todo elemento estructural en la que la longitud es mucho mayor que las dimensiones que definen su secci´on transversal, figura(2.1).
Figura 2.1: P´ortico en el espacio, nudos y elementos 7
Los modelos estructurales para el an´alisis por elementos finitos en el programa Sap2000 se
encuentra en las referencias [10] y [11] 8 El m´etodo de los elementos finitos, detalladamente explicado para elementos estructurales que puedan ser modelados con una l´ınea tratan las referencias [2], [3], [8] por citar algunos
11
Inicialmente la tesis estaba orientado al an´alisis, la justificaci´on y la automatizaci´on para elementos estructurales unidimensionales en el programa Sap2000. En el proceso de desarrollo se demostr´o que la formulaci´on del m´etodo de los elementos finitos para este tipo de estructuras, finalmente termina siendo el m´etodo de la rigidez, adem´as de existir otros m´etodos con las cuales es posible obtener resultados exactos y en menor tiempo; limitando exageradamente el uso verdadero del referido m´etodo. Por esta raz´on no amerita la dedicaci´on exclusiva en la automatizaci´on de procesos de an´alisis en Sap2000 mediante su Interfaz de Programaci´on para Aplicaciones, en su lugar se ha optado por el an´alisis, la justificaci´on y la automatizaci´on para estructuras axisim´etricas.
2.2.3.
Elementos bidimensionales
Se utiliza para modelar elementos estructurales de superficie figura(2.2) y son9 :
Figura 2.2: Muro de contenci´on, nudos y elementos C´ ascaras(Shell) Las c´ascaras son utilizadas para modelar estructuras bidimensionales o tridimensionales, como el comportamiento tipo c´ascara de tanques, c´ upulas o b´ovedas; como el comportamiento tipo placa de las losas o como el comportamiento tipo membrana de los muros de corte. El plano Para modelar s´olidos bidimensionales, en el an´alisis del comportamiento 9
Esta secci´ on est´ a transcrito completamente de la referencia [10] P´aginas 248 al 252
12
de esfuerzos planos en estructuras planas y delgadas, o tambi´en para modelar el comportamiento de deformaciones planas en estructuras prism´aticas largas. S´ olido Axisim´ etrico Es usada para modelar s´olidos sim´etricos respecto a un eje10 , ´ los cuales est´an sujetos a cargas sim´etricas con respecto al mismo eje. Este es el tipo de estructura que se analizar´a en la presente tesis.
2.2.4.
Elementos tridimensionales
Para analizar estructuras utilizando modelos de s´olidos tridimensionales.
2.3.
S´ olido axisim´ etrico
Seguidamente se realiza el resumen del m´etodo de los elementos finitos para estructuras que cumplen las condiciones para ser modelo como un s´olido de revoluci´on figura(2.3). Se estudiar´a u ´nicamente el an´alisis de s´olidos con simetr´ıa axial sometidos a cargas de revoluci´on.
Figura 2.3: Estructura general con simetr´ıa axial Eugenio O˜ nate(1992) consideraremos s´olidos en los que su geometr´ıa y propiedades mec´anicas son independientes de la coordenada circunferencial θ figura(2.3). Aunque el comportamiento de dichos s´olidos es tridimensional, su estudio matem´atico es generalmente bidimensional ya que en la mayor´ıa de los 10
Para mayor detalle consultar las referencias [4], [12], [5], [13]
13
casos puede efectuarse utilizando variables que dependen de dos coordenadas cartesianas. Si las cargas exteriores son tambi´en de revoluci´on, el desplazamiento de un punto de una estructura considerada como un s´olido de revoluci´on tiene solo componentes en direcciones radial(υ) y axial(w)11 .
2.3.1.
Estructuras de simetr´ıa axial
Las estructuras de revoluci´on representan un alto porcentaje en las estructuras de uso com´ un en ingenier´ıa, entre ellos se puede mencionar: Los dep´ositos para agua, muros cil´ındricos, silos, techos de edificaciones especiales, etc.
2.3.2.
Modelo como s´ olido axisim´ etrico
La figura(2.3 a) muestra una estructura de revoluci´on general , debido a que la estructura tiene una completa simetr´ıa respecto al eje z del sistema de orientaci´on global, es posible modelar en el plano formado por su secci´on caracter´ıstica de revoluci´on figura(2.3 b); en el modelo, para obtener la estructura entera, ser´a necesario girar una vuelta entera, 360 grados sexagesimales al rededor del eje z. Sobre esta secci´on de revoluci´on se plantea el m´etodo de los elementos finitos asignando todas las condiciones a la que est´a sometido la estructura completa figura(2.3 c).
2.3.3.
Campo de desplazamientos
Para un s´olido que cumple las condiciones para ser modelado como un s´olido axisim´etrico, el movimiento de un punto, definido en la secci´on caracter´ıstica de revoluci´on, queda perfectamente definido por las componentes de los desplazamientos radial(υ) y axial(w) figura(2.3). u= 11
υ(r, z)
w(r, z)
Referencia [4] p´ agina 243
14
(2.1)
2.3.4.
Campo de deformaciones
El vector de deformaciones de un punto, tiene las cuatro componentes siguientes: r deformaci´on radial, z deformaci´on axial, θ deformaci´on circunferencial, rz deformaci´on tangencial.
r z = rz θ
2.3.5.
∂υ ∂r
∂w ∂z = ∂υ + ∂w ∂z ∂r
(2.2)
υ r
Campo de tensiones
Las tensiones no nulas se corresponden con las deformaciones no nulas, as´ı, el vector de tensiones se escribe como. T σ = σr σz τrz σθ
(2.3)
donde σr , σz , σθ , τrz son respectivamente, las tensiones radial, axial, circunferencial y tangencial. La figura(2.4) muestra el convenio de signos para los tensiones actuando sobre un elemento diferencial de un s´olido de revoluci´on.
Figura 2.4: Tensiones actuando sobre un elemento diferencial de un s´olido de revoluci´on con cargas de revoluci´on
15
2.3.6.
Ecuaci´ on constitutiva
La relaci´on entre tensiones y deformaciones, se deduce de la elasticidad tridimensional, en presciencia de tensiones y deformaciones iniciales se obtiene.
σ = D( − o ) + σ o
(2.4)
para materiales is´otropos, la matriz de propiedades del elemento est´a dado por la ecuaci´on(2.5), en la cual E es el m´odulo de elasticidad del material y ν es el coeficiente de poisson. 1 ν E(1 − ν) 1−ν D= (1 + ν)(1 − 2ν) 0 ν 1−ν
2.3.7.
ν 1−ν
0
ν 1−ν
1
0
ν 1−ν
0
1−2ν 2(1−ν)
ν 1−ν
0
0 1
(2.5)
Expresi´ on del principio de la energ´ıa potencial m´ınima
Considerando el volumen elemental12 mostrado en la figura(2.4) la energ´ıa potencial puede escribirse en la forma.
1 Π= 2
Z
2π
Z
T
Z
2π
Z
σ rdAdθ − 0
A
Z
T
2π
Z
u f rdAdθ − 0
A
0
uT T rdldθ − ΣuTi Pi (2.6)
L
Donde rdldθ es el ´area de la superficie elemental, y la carga puntual Pi representa una carga lineal distribuida al rededor de un c´ırculo, T es una carga distribuida en la superficie de la estructura y f es la fuerza del cuerpo; como se muestra en la figura(2.3 c) en la p´agina(13). Todas las variables en las integrales son independientes de θ, entonces la ecuaci´on(2.6) puede escribirse mediante la ecuaci´on(2.7). Z Z Z 1 T T T Π = 2π σ rdA − u f rdA − u T rdl − ΣuTi Pi 2 A A L 12
Seg´ un la referencia [8]
16
(2.7)
Se nota claramente de las ecuaciones(2.6 y 2.7), aunque el modelo analizado es un elemento plano figura(2.3 c), matem´aticamente se toma en cuenta la estructura completa en 3D.
2.4.
Formulaci´ on de elementos finitos
Se realiza una formulaci´on general del m´etodo de los elementos finitos para el an´alisis de estructuras, para iniciar es necesario dividir el dominio completo del modelo en an´alisis, con elementos para los cuales son conocidos sus funciones de interpolaci´on, este procedimiento es conocido en los libros especializados como tecnolog´ıa de elementos.
2.4.1.
Funciones de forma
Las funciones de forma son las que proporcionan las formas que puede adoptar localmente el campo inc´ognita. La elecci´on de las funciones de forma est´a condicionado no s´olo por la forma que toman los dominios locales o elementos finitos, tambi´en por el tipo de problema de campo que se intenta resolver, por ejemplo(por ejemplo: elasticidad, plasticidad, transferencia de calor, electromagnetismo) y por la manera de abordarlo(n´ umero de campos independientes)13 . 2.4.1.1.
Elemento rectangular
Con la finalidad de trabajar sobre un sub dominio com´ un en los elementos en que ser´a discretizado el dominio completo, se utiliza la formulaci´on izoparam´etrica, en este dominio normalizado figura(2.5), las funciones de interpolaci´on para un elemento cuadril´atero de cuatro nodos est´a dado por la ecuaci´on(2.8). 13
Referencia [6] p´ agina 35
17
1 N1 (ξ, η) = (1 − ξ)(1 − η) 4 1 N2 (ξ, η) = (1 + ξ)(1 − η) 4 1 N3 (ξ, η) = (1 + ξ)(1 + η) 4 1 N4 (ξ, η) = (1 − ξ)(1 + η) 4
(2.8)
Figura 2.5: Sistema de coordenada cartesiana y normalizado
2.4.2.
Coordenadas
Las coordenadas en el interior de cada elemento finito est´a dado por la ecuaci´on(2.9). r(ξ, η) = N1 (ξ, η)r1 + N2 (ξ, η)r2 + · · · + Nn (ξ, η)rn
(2.9)
z(ξ, η) = N1 (ξ, η)z1 + N2 (ξ, η)z2 + · · · + Nn (ξ, η)zn
2.4.3.
Matriz jacobiano
El cambio desde el sistema de referencia global al sistema normalizado est´a expresado por la matriz jacobiana ecuaci´on(2.10).
18
J(ξ, η) =
2.4.4.
∂r(ξ,η) ∂ξ ∂r(ξ,η) ∂η
∂z(ξ,η) ∂ξ
(2.10)
∂z(ξ,η) ∂η
Matriz de rigidez
La matriz de rigidez se obtiene desde la ecuaci´on(2.7), desarrollando para un elemento de ”n” nudos, el vector de desplazamientos para un elemento est´a ordenado convenientemente en la ecuaci´on(2.12) y el vector de funciones de forma ecuaci´on(2.11) es. N1 0 N2 0 Nn 0 ... N = 0 N1 0 N2 0 Nn υ 1 w1 υ2 q= w 2 . . . υn wn
(2.11)
(2.12)
La matriz deformaci´on unitaria desplazamiento.
∂N1 ∂r
0 B = ∂N1 ∂z N1 r
∂N2 ∂r
0 ∂N1 ∂z ∂N1 ∂r 0
0 ∂N2 ∂z ··· ∂N2 ∂r 0
0 ∂N2 ∂z N2 r
∂Nn ∂r
0 ∂Nn ∂z Nn r
0 ∂Nn ∂z ∂Nn ∂r 0
(2.13)
Las deformaciones est´a dado mediante = Bq, la matriz de rigidez en el sistema normalizado para una estructura de simetr´ıa axial est´a dado por la ecuaci´on(2.14), para obtener las expresiones de las cargas se procede de manera similar. Z
1
Z
1
B T DBrJdξdη
k=t −1
−1
Donde: 19
(2.14)
t: representa el a´ngulo de revoluci´on que gira cada elemento finito en que fue discretizado el plano de la secci´on caracter´ıstica de revoluci´on. B: es la matriz deformaci´on unitaria desplazamiento [8] o simplemente matriz de deformaci´on unitaria [4] ecuaci´on(2.13). D: matriz de propiedades del elemento, ecuaci´on(2.5) r: coordenada radial para cada punto del elemento finito, ecuaci´on(2.9). J: matriz jacobiano, ecuaci´on(2.10). La mejor manera de obtener la matriz de rigidez, es resolver la ecuaci´on(2.14) num´ericamente14 .
14
Los detalles se encuentra en los libros de la referencia [14], [15], [16], [17], [18]
20
Cap´ıtulo 3 Programaci´ on en C# con API Sap2000 3.1.
Generalidades
El presente cap´ıtulo describe los fundamentos del lenguaje de programaci´on Microsoft Visual c# 1 y su integraci´on e implementaci´on de la Interfaz de Programaci´on para Aplicaciones(API) de Sap2000 desde dicho lenguaje. La Interfaz de Programaci´on para Aplicaciones de Sap2000 se puede utilizar desde cualquier lenguaje de programaci´on que sea capaz de implementar una interface, entre estos lenguajes de programaci´on se tiene: Visual Basic para Aplicaciones(VBA), Visual Basic .net, Visual C++, Visual C#, Java, Intel Visual Fortran v9, etc. En la presente Tesis se programar´a desde el lenguaje de programaci´on Visual c# por ser un lenguaje orientado a objetos y estar completamente integrado con la plataforma .NET.
3.2.
Microsoft Visual Studio
Lo que Microsoft nos ofrece con Visual Studio 2009 Express Edition
es un
entorno de desarrollo de u ´ltima generaci´on, conjuntamente con el compilador de 1
Microsoft present´ o c# al p´ ublico en la Professional Developer’s Conference en Orlando, Flo-
rida, en el verano del 2000. [19], p´ agina 37
21
uno de los lenguajes de programaci´on m´as avanzados que existe en la actualidad C#2 . Las versiones Express son de distribuci´on gratuita. El desarrollo del programa para la tesis se realiza desde este editor.
3.3.
Microsoft .NET framework
Microsoft .NET es el conjunto de nuevas tecnolog´ıas en las que Microsoft a estado trabajando durante los u ´ltimos a˜ nos con el objetivo de obtener una plataforma sencilla y potente para distribuir el software en forma de servicios que puedan ser suministrados remotamente y que puedan comunicarse y combinarse unos con otros de manera totalmente independiente de la plataforma, lenguaje de programaci´on y ´ modelo de componentes con los que hayan sido desarrollados. Esta es la llamada plataforma .NET3 .
3.4.
El lenguaje de programaci´ on Visual c#
Seg´ un La Biblia C# combina las mejores ideas de lenguajes como C, C++ y Java con las mejoras de productividad de .NET Framework de Microsoft y brinda una experiencia de codificaci´on muy productiva tanto para los nuevos programadores como para los veteranos . . . Microsoft dise˜ no´ C# desde su base para aprovechar el nuevo entorno .NET Framework. Como C# forma parte de este nuevo mundo .NET deber´a comprender perfectamente lo que proporciona .NET Framework y de que manera aumenta su productividad4 . Los fundamentos de programaci´on en Visual C# se encuentran detalladamente escritos en los libros de la referencia, con fines de formalidad es necesario comprender las siguientes definiciones. 2
Referencia [20] p´ agina 05 Referencia [21] p´ agina 09 4 Reproducido completamente de la referencia [19] p´aginas 37 - 38 3
22
3.4.1.
Clase
Una clase es una colecci´on de c´odigo y de variables, las clases gestionan el estado en forma de variables que contienen, y comportamientos, en forma de los m´etodos que contienen. Sin embargo una clase es s´olo una plantilla desde donde se crean objetos. ([19] p´agina 192). Todo el c´odigo y los datos deben ser incluidos en una clase, no se puede definir una variable fuera de una clase y no se puede escribir ning´ un c´odigo que no est´e en una clase.
3.4.2.
Espacio de nombre
Todo programa en C# debe estar contenido en un espacio de nombre con la finalidad de evitar confusiones en la utilizaci´on de variables, que pueden tambi´en estar definidos con el mismo nombre en otras aplicaciones. C# permite agrupar clases en una colecci´on de clases llamada espacio de nombre. Los espacios de nombres tienen nombres y sirven de ayuda para organizar colecciones de clases en agrupaciones l´ogicas.
3.4.3.
Tipos de datos
C# permite trabajar con dos tipos de dato: de valor y de referencia. Los de valor contiene valores reales, los de referencia contienen referencias a valores valores almacenados en alg´ un lugar de la memoria.
3.4.4.
M´ etodo
Los m´etodos son bloques de instrucciones que devuelven alg´ un tipo de valor cuando se ejecutan( [19] p´agina 149).
3.4.5.
Objeto
C# es un lenguaje orientado a objetos, los objetos son instancias de una clase.
23
3.4.6.
Interface
Una interfaz de C# es un conjunto de firmas de m´etodos, propiedades, eventos o indizadores agrupadas con un nombre com´ un. Las interfaces funcionan como conjunto de funcionalidades definidas que pueden implementarse en una clase o estructura de c#( [19] p´agina 301)
3.5.
Interfaz de programaci´ on para aplicaciones de sap2000
Se ha definido lo que es una interface en la secci´on(3.4.6), para el desarrollo de la aplicaci´on se utiliza el editor Microsoft Visual Studio 9 Express Edition desde la cual se integra la interfaz de programaci´on para aplicaciones(API) de Sap2000 11.0.4. Desde este punto, con las ´ordenes adecuadas, todos los m´etodos que soporte la interfaz del programa Sap2000 11.0.4 est´an libres para Visual C# a disposici´on para ser utilizados como si de sus propias o´rdenes se tratase5 .
3.5.1.
Instalaci´ on
La interfaz de programaci´on para aplicaciones de Sap2000 se instala por defecto con cualquier distribuci´on de Sap2000 desde su versi´on 11.0.0.
3.5.2.
Utilidad ¿Para qu´ e sirve?
En el proceso de modelamiento para el an´alisis mediante el m´etodo de los elementos finitos el procedimiento es repetitivo para cada tipo de estructura; el grupo de programadores que mantiene Sap2000 conscientes de esta realidad liberan a disposici´on de los usuarios una interface de Sap2000 con la cual es posible automatizar procedimientos completos para cada prop´osito, desde cualquier lenguaje de programaci´on externo, dependiendo de las necesidades de cada usuario. 5
La documentaci´ on completa con ejemplos para cada orden se encuentra en su manual SAP2000
API Documentation[22]
24
Control
Propiedad
Valor
Form
name
frmDiagn´ostico
text
Sap2000Diagnostico
name
cmdOpensap2000
text
Abrir
name
cmdCapturesap2000
text
Capturar
name
cmdCloseSap2000
text
Cerrar
name
cmdEvaluarSap2000
text
Evaluar
Button
Button
Button
Button
Cuadro 3.1: Cuadro de elementos utilizados Si alguna vez se pens´o tener el control absoluto de Sap2000 ahora ya es posible, mediante la interface de programaci´on para aplicaciones se tiene un control total sobre el programa. Tener a disposici´on toda la capacidad de Sap2000 requiere una preparaci´on adecuada, tanto en el conocimiento del m´etodo de los elementos finitos y los modelos estructurales para su an´alisis.
3.6.
Procedimientos generales
Seguidamente se realiza una descripci´on general para integrar la Interfaz de Programaci´on para Aplicaciones[22] de Sap2000 v11.0.4 Educacional en el entorno de desarrollo integrado Microsoft Visual Studio 9 Express Edition, espec´ıficamente programando en el lenguaje Microsoft Visual c# 6 , para lo cual, se crea una aplicaci´on y los elementos que se usan se detalla en la cuadro(3.1). El formulario creado se muestra en la figura(3.1). 6
Los fundamentos de programaci´ on del lenguaje se encuentran en los libros de la referencia [20],
[23], [21], [19]
25
Figura 3.1: Ventana principal
Figura 3.2: Referencia desde C# al API de Sap2000 11.0.4
3.6.1.
Integrar interface de Sap2000 a Visual Studio
Desde la ventana Explorador de Soluciones, haciendo click derecho sobre el proyecto creado, elegir del menu emergente Agregar referencia... como muestra la figura(3.2). Luego, se muestra la ventana Agregar referencia, entre las opciones elegir la pesta˜ na etiquetada COM, entre los muchos componentes existentes en la lista elija Sap2000 como indica la figura(3.3). Agregando esta referencia, se le indica a Microsoft Visual c# que queremos trabajar con la Interface Sap2000.SapObject, en este punto Microsoft Visual Studio
26
Figura 3.3: Integrar API Sap2000 11.0.4 2009 Express Edition se encargar´a de integrar absolutamente todos su contenido de la Interface Sap2000.SapObject.
3.6.2.
Implementar interface de Sap2000 en un objeto
Para utilizar las o´rdenes de la interface se opta por implementar en un objeto desde el lenguaje de programaci´on Microsoft Visual c#, desde este punto es visible los m´etodos de la interface a trav´es del objeto. El siguiente programa muestra la manera de implementar la interface de Sap2000 en un objeto de Visual c#. 1 2 3 4
// Implementa l a i n t e r f a z de Sap2000 a un o b j e t o Sap2000 . SapObject SapObjeto ; // i n i c i a l i z a e l o b j e t o SapObjeto = new Sap2000 . SapObject ( ) ;
3.6.3.
Accediendo al objeto que implementa la interface
El objeto que contendr´a la interface de la aplicaci´on Sap2000 se debe declarar de modo que sea visible en todo el proyecto, mediante c´odigo deberemos referirnos a este objeto para todos los prop´ositos. Creado el objeto que contiene la aplicaci´on, el siguiente paso es proporcionarle un archivo Sap2000 correspondiente, puede ser inicializando un nuevo archivo o apoder´andose de uno existente. Se tratar´a ambas alternativas.
27
3.6.4.
Inicializando un archivo nuevo
Es posible desde Microsoft Visual c# inicializar el programa Sap2000, el siguiente programa inicializa un nuevo entorno en Sap2000 y dibuja un muro en su espacio modelo, asignando propiedades por defecto. 1 2 3 4 5 6 7 8 9 10 11
12 13 14
private void cmdOpenSap2000 Click ( object s e n d e r , EventArgs e ) { // d e c l a r a v a r i a b l e t i p o Sap2000 Sap2000 . SapObject SapObjeto ; long r e t ; // i n i c i a l i z a r l a v a r i a b l e d e l t i p o Sap2000 SapObjeto = new Sap2000 . SapObject ( ) ; // i n i c i a l i z a l a a p l i c a c i ´o n SapObjeto . A p p l i c a t i o n S t a r t ( Sap2000 . e U n i t s . kgf m C , true , ” Prueba ” ) ; // c r e a e i n i c i a l i z a e l e s p a c i o modelo de sap2000 r e t = SapObjeto . SapModel . I n i t i a l i z e N e w M o d e l ( Sap2000 . e U n i t s . kgf m C ) ; // d i b u j a una muro r e t = SapObjeto . SapModel . F i l e . NewWall ( 3 , 3 , 3 , 3 , true , ” prueba ” ) ; }
3.6.5.
Apoderarse de un Archivo Existente
Otra alternativa muy frecuente es cuando mediante c´odigo se quiere apoderar de un modelo Sap2000 existente y que est´e en ejecuci´on, a modo de prueba, el programa culmina mostrando un mensaje del tipo de unidades actual utilizado. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
private void cmdCaptureSap2000 Click ( object s e n d e r , EventArgs e ) { // debe e x i s t i r un a r c h i v o sap2000 e j e c u t ´a n d o s e a c t u a l m e n t e // d e c l a r a v a r i a b l e d e l t i p o Sap2000 Sap2000 . SapObject SapObjeto ; // i n i c i a l i z a l a v a r i a b l e d e l t i p o Sap2000 // e s t a a c c i ´ o n s e apodera autom´a ticamente de un a r c h i v o e x i s t e n t e SapObjeto = new Sap2000 . SapObject ( ) ; // a modo de comparaci´ on // muestra l a s u n i d a d e s de medida a c t u a l d e l e s p a c i o modelo Sap2000 . e U n i t s MyUnits ; MyUnits = SapObjeto . SapModel . G e t P r e s e n t U n i t s ( ) ; string a = ”La unidad de medida a c t u a l e s : ” + MyUnits . T o S t r i n g ( ) ; MessageBox . Show ( a , ” APISap2000 ” , MessageBoxButtons .OK) ; }
28
3.6.6.
Cerrando la Aplicaci´ on
Otro procedimiento habitual cuando se manipula programas desde aplicaciones externas, es cerrar el programa mediante c´odigo, para el objeto del tipo Sap2000 la forma correcta de terminar la aplicaci´on es con las o´rdenes adecuadas como se muestra. 1 2 3 4 5 6 7 8 9 10 11
private void c m d C l o s e s a p 2 0 0 0 C l i c k ( object s e n d e r , EventArgs e ) { // debe e x i s t i r un a r c h i v o sap2000 en e j e c u c i ´o n Sap2000 . SapObject SapObjeto = new Sap2000 . SapObject ( ) ; // c i e r r a l a a p l i c a c i ´ on SapObjeto . A p p l i c a t i o n E x i t ( f a l s e ) ; // d e j a s i n c o n t e n i d o a l e s p a c i o modelo SapObjeto . SapModel = null ; // d e j a s i n c o n t e n i d o a l o b j e t o c r e a d o SapObjeto = null ; }
3.6.7.
La funci´ on m´ agica
Finalmente, el programa debe ser capaz de decidir adecuadamente una u otra alternativa, seg´ un sea el caso, el programa siguiente cumple esta funci´on. 1 2 3 4
private void cmdEvaluarSap2000 Click ( object s e n d e r , EventArgs e ) { /∗ Este e s e l m´ o dulo m´a gico , e n c a r g a d o de a v e r i g u a r e l e s t a d o a c t u a l de Sap2000 en l a m´a quina ∗/
5
// c r e a y a s i g n a e l o b j e t o Sap2000 Sap2000 . SapObject SapObjeto = new Sap2000 . SapObject ( ) ; bool D i a n o s t i c o ; string mensaje ; // s i un a r c h i v o s e e j e c u t a e s t ´a v i s i b l e D i a n o s t i c o = SapObjeto . v i s i b l e ( ) ; i f ( Dianostico ) { // mensaje = ” e s t r u e : e s t ´a v i s i b l e en l a p a n t a l l a ” ; mensaje = ”No s e e j e c u t a Sap2000 ” ; } else { // mensaje = ” e s f a l s e : no e s t ´a v i s i b l e en l a p a n t a l l a ” ; mensaje = ” Se e j e c u t a Sap2000 ” ; } MessageBox . Show ( mensaje , ”API Sap2000 ” , MessageBoxButtons .OK) ;
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
}
29
Parte III Materiales y m´ etodos
30
Cap´ıtulo 4 An´ alisis se S´ olidos Axisim´ etricos con el m´ etodo de los elementos finitos 4.1.
Generalidades
El presenta cap´ıtulo trata sobre el an´alisis de estructuras mediante el M´etodo de los Elementos Finitos, en su formulaci´on para estructuras con total simetr´ıa respecto a un eje del sistema de referencia, los cuales pueden ser modelados en el plano de su secci´on caracter´ıstica de revoluci´on. Para entender el presente cap´ıtulo es necesario tener un conocimiento suficiente del m´etodo de los elementos finitos 1 , ya que los t´erminos utilizados y su programaci´on de una plantilla en MathCad 14 con la finalidad de justificar los resultados de Sap2000 se realiza directamente. Para la justificaci´on de los resultados de Sap2000 se aprovechar´a la capacidad de manipulaci´on simb´olica y num´erica del programa MathCad 14 2 . La teor´ıa ser´a explicado detalladamente junto a su programaci´on a 1
La teor´ıa del M´etodo de los Elementos Finitos se encuentra en cualquiera de los libros de la
referencia [8], [12], [5], [4], la historia de su evoluci´on narrada de una manera magn´ıfica se encuentra en la referencia [6] 2 mathcad 14 es un programa orientado para realizar informes t´ecnicos detallados, sus funciones y la manera de utilizarlo se encuentra en las referencias [24], [25], [26]
31
la vez que se desarrolla un ejemplo de aplicaci´on; por ser ´esta la manera natural de proceder en un documento de MathCad 14.
4.1.1.
Sap2000
Es un programa de c´omputo desarrollado por la compa˜ n´ıa Computers and Structures, Inc que puede ser aplicada en el an´alisis de estructuras de todo prop´osito. 4.1.1.1.
M´ etodo de an´ alisis
En en proceso de an´alisis de estructuras Sap2000 utiliza el m´etodo de los elementos finitos. 4.1.1.2.
M´ etodo de elementos finitos
El m´etodo de los elementos finitos es uno de los procedimientos que existen para aproximar el comportamiento de una estructura con infinitos grados de libertad por el de otra, con aproximadamente las mismas propiedades f´ısicas y geom´etricas, pero con un n´ umero finito de grados de libertad, cuyas ecuaciones de equilibrio puedes expresarse por un sistema algebraico de ecuaciones simult´aneas con un n´ umero limitado de inc´ognitas3
Figura 4.1: Vista en planta techo en forma de cono con abertura 3
Referencia [7] p´ agina 03).
32
4.1.2.
Estructuras de simetr´ıa axial
Las estructuras de revoluci´on representan un alto porcentaje en las estructuras de uso com´ un en ingenier´ıa, entre ellos se puede mencionar: Los dep´ositos para agua, torres de enfriamiento, muros cil´ındricos, silos, c´ upulas, vasijas de presi´on, techos de edificaciones especiales(referencia [4] p´agina 244), etc. 4.1.2.1.
Estructura a analizar
Para justificar los resultados de Sap2000 en la presente tesis se analizar´a un modelo alternativo del techo en forma de cono con abertura figuras.(4.1 y 4.2 ), del auditorio de la Facultad de Ciencia de la Educaci´on de la Universidad Nacional San Crist´obal de Huamanga, cuyo di´ametro de la base del cono es D1 = 16m, Altura H = 1.96m, di´ametro de la abertura D2 = 2m.
Figura 4.2: Vista en elevaci´on techo en forma de cono con abertura
4.1.2.2.
Modelo de la estructura
Es posible modelar la estructura con distintas formulaciones del M´etodo de los Elementos Finitos, una manera es considerando la formulaci´on como S´olido de Revoluci´on 4 debido a que la estructura es sim´etrico respecto al eje z del sistema de referencia figura(4.2), en la cual se elige una secci´on caracter´ıstica de revoluci´on tal como muestra la figura fig.(4.3 ), para esta secci´on ser´a necesario girar Arc = 360o grados sexagesimales para formar la estructura entera. definido la secci´on caracter´ıstica de revoluci´on se le asignar´a todas las condiciones a las que se encuentra sometido la estructura completa figura(4.4) y se analizar´a sobre esta secci´on plana. 4
El tema se encuentra en los libros de la referencia [8] cap´ıtulo 6, [4] cap´ıtulo 6, [5] cap´ıtulo 4,
[11] cap´ıtulo 12, [7] cap´ıtulo 7, [9] cap´ıtulo 5, [12] cap´ıtulo 6
33
4.2.
Implementaci´ on de Funciones en MathCad Para el an´ alisis de s´ olidos axisim´ etricos
Seguidamente se programar´a para el an´alisis de estructuras modeladas como S´olidos de Revoluci´on mediante el M´etodo de los Elementos Finitos 5 . Solamente se escriben las ecuaciones fundamentales necesarios para su programaci´on, las ecuaciones detalladamente desarrolladas, se puede encontrar en los libros de la referencia.
4.2.1.
Pre-procesador
El usuario es el encargado de ordenar adecuadamente los argumentos, luego de definir el sistema de referencia global debe iniciar discretizando el dominio completo 5
La receta del M´etodo de los Elementos Finitos para su programaci´on se encuentra en la refe-
rencia [6] en el cap´ıtulo 4, [9] cap´ıtulo 1, las referencias [16], [17],[15], [14] tratan exclusivamente de la programaci´ on del M´etodo de los Elementos Finitos
Figura 4.3: Modelo de la secci´on caracter´ıstica de revoluci´on
Figura 4.4: Secci´on caracter´ıstica de revoluci´on 34
con elementos rectangulares de cuatro nudos figura(4.5) y ordenar los argumentos de acuerdo a lo establecido para las coordenadas de los nudos en la p´agina(35), identificaci´on de elementos p´agina(35), asignaci´on de propiedades p´agina(36), soportes p´agina(37) y las cargas en la p´agina(37).
Figura 4.5: Identificaci´on de nudos y elementos
4.2.1.1.
Nudos
Identificar las coordenadas de todos los nudos en la estructura figura(4.5), las coordenadas deben ser establecidos en el sistema global, todos los nudos forman un arreglo num´erico con nombre NODE cuadro(4.1), cada fila identifica completamente un nudo y cada columna representa. columna 1: n´ umero identificador del nudo columna 2: coordenada radial columna 3: coordenada axial
4.2.1.2.
Elementos
Cada elemento debe quedar completamente identificado por sus cuatro nudos figura(4.5), todos los elementos est´an organizados en un arreglo num´erico de nombre MEMB cuadro(4.2), cada fila identifica plenamente a un elemento en el sistema, cada columna representa. 35
columna 1: n´ umero identificador del elemento columna 2: nudo global correspondiente al nudo local uno. columna 3: nudo global correspondiente al nudo local dos. columna 4: nudo global correspondiente al nudo local tres columna 5: nudo global correspondiente al nudo local cuatro.
4.2.1.3.
Propiedades
Para el an´alisis se considera que todos los elementos tienen las mismas propiedades, para los s´olidos de revoluci´on son requeridos. E = 2.1 · 109 , m´odulo de elasticidad del material en Kg/m2 ν = 0.3, coeficiente de poisson t = 2π, espesor del s´olido de revoluci´on, expresado en radianes Nudo
Coordenada radial(m)
Coordenada axial(m)
1
8.0
0
2
8.0
0.15
3
4.0
1.12
4
4.0
1.27
5
2.0
1.68
6
2.0
1.83
7
1.0
1.96
8
1.0
2.11
Cuadro 4.1: Identificaci´on de nudos Elemento nudo1
nudo2
nudo3
nudo4
1
3
1
2
4
2
5
3
4
6
3
7
5
6
8
Cuadro 4.2: Identificaci´on de los elementos 36
4.2.1.4.
Soportes
Es necesario especificar las condiciones de contorno, para especificar los apoyos de la estructura se estable un acuerdo: 0 para los grados de libertad libres de movimiento y 1 para los grados de libertad restringido. Los apoyos se organizan en un arreglo num´erico con nombre SUPP cuadro(4.3), donde. columna 1: n´ umero identificador del soporte. columna 2: n´ umero del nudo con soportes. columna 3: identificador del grado de libertad en la direcci´on radial, 0 si el grado de libertad es libre y 1 si est´a restringido. Columna 4: lo mismo que la columna tres, pero para la direcci´on axial.
Soporte
nudo ru ? zu ?
1
1
1
1
2
2
1
1
Cuadro 4.3: Identificaci´on de soportes
4.2.1.5.
Cargas
Es requerido las cargas equivalentes en los nudos de la estructura, debe estar organizado en un arreglo num´erico de nombre NLF cuadro(4.4), cada fila define cargas en un nudo y cada columna representa. columna 1: n´ umero identificador de la carga columna 2: n´ umero del nudo cargado columna 3: componente radial de la carga columna 4: componente axial de la carga
37
4.2.2.
Procesador
Con la finalidad de obtener el proceso de c´alculo detallado, se crean funciones en MathCad 14 [24] que hacen uso intensivo de los argumentos ordenados en la etapa de pre proceso p´agina(34). 4.2.2.1.
Funciones generales
Esta secci´on contiene las funciones generales que participan en todo el proceso. 4.2.2.1.1.
Coordenadas de nudos La funci´on RZ(m) figura(4.6) obtiene las
coordenadas de todos los nudos para el elemento m, es posible obtener cada una de las coordenadas, con ri (m) las coordenadas radiales y con zi (m) las coordenadas axiales, teniendo i = 1 . . . 4 Evaluando las funciones para el elemento m = 1 se obtiene su coordenadas radiales r1 (1) = 1, r2 (1) = 2, r3 (1) = 2, r4 (1) = 1 y sus coordenadas axiales z1 (1) = 1.96, z2 (1) = 1.68, z3 (1) = 1.83, z4 (1) = 2.11. 4.2.2.1.2.
Matriz de propiedades Seg´ un [8] la matriz de propiedades para
s´olidos de revoluci´on est´a representado mediante la ecuaci´on(4.1), donde E es el m´odulo de elasticidad del material y ν es el coeficiente de Poisson. Carga
Nudo Fr (Kgf )
Fz (Kgf )
1
8
0
-1570.00
2
6
0
-7873.00
3
4
0
-31415.00
4
2
0
-50265.00
Cuadro 4.4: Cargas en nudos
38
1 ν E(1 − ν) 1−ν D= (1 + ν)(1 − 2ν) 0 ν 1−ν
ν 1−ν
0
ν 1−ν
1
0
ν 1−ν
0
1−2ν 2(1−ν)
ν 1−ν
0
0 1
(4.1)
Evaluando las propiedades para los argumentos establecidos, se tiene:
0 1.212 2.879 1.212 1.212 2.827 0 1.212 D = 109 0 0 80.77 0 1.212 1.212 0 2.827
4.2.2.1.3.
Grados de libertad Otra de las funciones fundamentales y muy
general es GDL(m), que tiene por funci´on obtener los grados de libertad asociados a los nudos de cada elemento figura(4.7), la funci´on recibe como argumento un n´ umero identificador de cualquier elemento, luego establece los cuatro nudos desde la matriz M EM B y con esto los grados de libertad para cada nudo. Para un nudo
Figura 4.6: Funci´on para obtener coordenadas
39
n, el grado de libertad en la direcci´on radial es 2n − 1 y en la direcci´on axial 2n.
Figura 4.7: Funci´on para obtener gdl Evaluando la funci´on para el elemento m = 1 se obtiene los grados de libertad asociados a los nudos del elemento. Para dos grados de libertad por nudo en total se tienen 16 grados de libertad en toda la estructura.
GDL(1) = 13 14 9 10 11 12 15 16
4.2.2.2.
Funciones para obtener la matriz de rigidez del elemento
Las funciones siguientes son para obtener la matriz de rigidez de cualquier elemento. 4.2.2.2.1.
Funciones de forma Las funciones de forma 6 en el sistema norma-
lizado, para elementos cuadril´ateros de cuatro nodos est´a dado por. 6
seg´ un [2] p´ agina 142, [3] p´ agina 151, [1] p´agina 193, [6] p´agina 40, [8] p´agina 211, [17] p´agina
268, [4] p´ agina 219, [5] p´ agina 127
40
1 N1 (ξ, η) = (1 − ξ)(1 − η) 4 1 N2 (ξ, η) = (1 + ξ)(1 − η) 4 (4.2) 1 N3 (ξ, η) = (1 + ξ)(1 + η) 4 1 N4 (ξ, η) = (1 − ξ)(1 + η) 4 Las funciones Ni (ξ, η) con i = 1 . . . 4 dependen u ´nicamente de ξ y η que son las coordenadas normalizadas. 4.2.2.2.2.
Coordenadas Las coordenadas radial r y circunferencial z son ex-
presados [4] en funci´on de las ecuaciones(4.2) y las coordenadas de los nudos en el sistema global, mediante.
r(m, ξ, η) = N1 (ξ, η)r1 (m) + N2 (ξ, η)r2 (m) + N3 (ξ, η)r3 (m) + N4 (ξ, η)r4 (m)
(4.3)
z(m, ξ, η) = N1 (ξ, η)z1 (m) + N2 (ξ, η)z2 (m) + N3 (ξ, η)z3 (m) + N4 (ξ, η)z4 (m) 4.2.2.2.3.
Desplazamientos Los desplazamientos [8] en el interior del elemen-
to, son dependientes de las funciones de forma ecuaciones(4.2) y los desplazamientos de los nudos y est´a expresado mediante. µ = N1 q1 + N2 q3 + N3 q5 + N4 q7
(4.4)
υ = N1 q2 + N2 q4 + N3 q6 + N4 q8 4.2.2.2.4.
Matriz Jacobiana La matriz jacobiana ecuaci´on(4.5), que represen-
ta el cambio de coordenadas, depende de las derivadas parciales de las coordenadas globales expresadas en funci´on del sistema normalizado. No es necesario desarrollar las derivadas parciales de la funci´on jacobiano, se confiar´a todo el proceso matem´atico a MathCad 14 [26], limit´andonos a la formulaci´on matem´atica en su forma b´asica. De igual manera que en las anteriores funciones la funci´on J(m, ξ, η) depende del elemento y las coordenadas normalizadas.
41
J(m, ξ, η) =
4.2.2.2.5.
∂z(m,ξ,η) ∂ξ
∂r(m,ξ,η) ∂ξ
∂r(m,ξ,η) ∂η
(4.5)
∂z(m,ξ,η) ∂η
Matriz deformaci´ on unitaria - Desplazamiento Las deformacio-
nes unitarias [5] [4] para elementos estructurales modelados como s´olidos de revoluci´on, est´a dado por ecuaci´on(4.6), donde r es la deformaci´on normal en la direcci´on radial, z es la deformaci´on normal en la direcci´on axial, γrz deformaci´on tangencial en el plano rz y θ es la deformaci´on normal en la direcci´on circunferencial.
=
r z γrz θ
T
(4.6)
la relaci´on[5] entre las deformaciones unitarias y los desplazamientos u est´a dado mediante
=
∂µ ∂r
∂υ ∂z
∂µ ∂z
+
∂υ ∂r
µ r
T
(4.7)
La matriz deformaci´on unitaria - desplazamiento[8] o simplemente matriz deformaci´on unitaria[4] ecuaci´on(4.8) depende de la inversa de la matriz jacobiana y las derivadas parciales de los desplazamientos expresados en el sistema normalizado, para cada elemento en cada direcci´on.
∂z ∂Ni ∂η ∂ξ
∂z ∂Ni ∂ξ ∂η
− 0 ∂N ∂N ∂r ∂r 0 − ∂η ∂ξi + ∂ξ ∂ηi 1 B= |J| − ∂r ∂Ni + ∂r ∂Ni ∂z ∂Ni − ∂z ∂Ni ∂η ∂ξ ∂ξ ∂η ∂η ∂ξ ∂ξ ∂η Ni |J| 0 r
(4.8)
La matriz B(m, ξ, η) ecuaci´on(4.8), se divide en cuatro sub matrices correspondiente a los cuatro nudos con B1 (m, ξ, η) que se corresponde con el nudo uno, B2 (m, ξ, η) con el nudo dos, B3 (m, ξ, η) con el nudo tres y B4 (m, ξ, η) con el nudo cuatro. Las funciones siguientes se escriben como Bi que son iguales a Bi (m, ξ, η) con i = 1 . . . 4, por comodidad.
42
∂z(m,ξ,η) ∂N1 (ξ,η) ∂η ∂ξ
∂z(m,ξ,η) ∂N1 (ξ,η) ∂ξ ∂η
∂z(m,ξ,η) ∂N2 (ξ,η) ∂η ∂ξ
∂z(m,ξ,η) ∂N2 (ξ,η) ∂ξ ∂η
∂z(m,ξ,η) ∂N3 (ξ,η) ∂η ∂ξ
∂z(m,ξ,η) ∂N3 (ξ,η) ∂ξ ∂η
∂z(m,ξ,η) ∂N4 (ξ,η) ∂η ∂ξ
∂z(m,ξ,η) ∂N4 (ξ,η) ∂ξ ∂η
− 0 ∂r(m,ξ,η) ∂N1 (ξ,η) ∂r(m,ξ,η) ∂N1 (ξ,η) 0 − ∂η + ∂ξ ∂ξ ∂η B1 = − ∂r(m,ξ,η) ∂N1 (ξ,η) + ∂r(m,ξ,η) ∂N1 (ξ,η) ∂z(m,ξ,η) ∂N1 (ξ,η) − ∂z(m,ξ,η) ∂N1 (ξ,η) ∂η ∂ξ ∂ξ ∂η ∂η ∂ξ ∂ξ ∂η N1 (ξ,η) |J(m, ξ, η)| 0 r(m,ξ,η)
− 0 ∂r(m,ξ,η) ∂N2 (ξ,η) ∂r(m,ξ,η) ∂N2 (ξ,η) 0 − + ∂η ∂ξ ∂ξ ∂η B2 = − ∂r(m,ξ,η) ∂N2 (ξ,η) + ∂r(m,ξ,η) ∂N2 (ξ,η) ∂z(m,ξ,η) ∂N2 (ξ,η) − ∂z(m,ξ,η) ∂N2 (ξ,η) ∂η ∂ξ ∂ξ ∂η ∂η ∂ξ ∂ξ ∂η N2 (ξ,η) |J(m, ξ, η)| 0 r(m,ξ,η)
− 0 ∂r(m,ξ,η) ∂N3 (ξ,η) ∂r(m,ξ,η) ∂N3 (ξ,η) 0 − + ∂η ∂ξ ∂ξ ∂η B3 = − ∂r(m,ξ,η) ∂N3 (ξ,η) + ∂r(m,ξ,η) ∂N3 (ξ,η) ∂z(m,ξ,η) ∂N3 (ξ,η) − ∂z(m,ξ,η) ∂N3 (ξ,η) ∂η ∂ξ ∂ξ ∂η ∂η ∂ξ ∂ξ ∂η N3 (ξ,η) |J(m, ξ, η)| 0 r(m,ξ,η)
− 0 ∂N (ξ,η) ∂r(m,ξ,η) ∂N (ξ,η) ∂r(m,ξ,η) 4 4 + 0 − ∂η ∂ξ ∂ξ ∂η B4 = − ∂r(m,ξ,η) ∂N4 (ξ,η) + ∂r(m,ξ,η) ∂N4 (ξ,η) ∂z(m,ξ,η) ∂N4 (ξ,η) − ∂z(m,ξ,η) ∂N4 (ξ,η) ∂η ∂ξ ∂ξ ∂η ∂η ∂ξ ∂ξ ∂η N4 (ξ,η) |J(m, ξ, η)| 0 r(m,ξ,η) Expresando todas las submatrices en una sola, se obtiene la matriz de deformaci´on unitaria desplazamiento ecuaci´on(4.8) B(m, ξ, η)
h i 1 B(m, ξ, η) = B (m, ξ, η) B2 (m, ξ, η) B3 (m, ξ, η) B4 (m, ξ, η) |J(m, ξ, η)| 1 Donde, |J(m, ξ, η)| es el jacobiano, determinante de la matriz jacobiana ecuaci´on(4.5). 4.2.2.2.6.
Matriz de rigidez del elemento Haciendo uso de las expresiones
anteriores, la matriz de rigidez [4] puede escribirse como 43
Z
1
Z
1
k(m) = t −1
B(m, ξ, η)T DB(m, ξ, η)r(m, ξ, η)|J(m, ξ, η)|dξdη
(4.9)
−1
Evaluando en su forma expl´ıcita incluso MathCad 14 encuentra pesado a esta ecuaci´on, demorando mucho tiempo en encontrar la soluci´on, por esta raz´on se evaluar´a num´ericamente cada uno de los elementos mediante la cuadratura de Gauss[8], para lo cual se toma dos puntos por cada direcci´on sobre el dominio normalizado, los llamados puntos de Gauss, se eval´ ua la matriz k(m) para los cuatro puntos considerados, siendo la matriz de rigidez del elemento la sumatoria de las matrices parciales. Con la finalidad de evaluar num´ericamente la matriz de rigidez ecuaci´on(4.9), se define k1 (m, ξ, η) como.
k1 (m, ξ, η) = B(m, ξ, η)T DB(m, ξ, η)r(m, ξ, η)|J(m, ξ, η)| Los puntos de Gauss, ξξ en la direcci´on radial, ηη en la direcci´on axial y los pesos asociados a cada punto, ωr en la direcci´on radial y ωz en la direcci´on axial. Por comodidad se representan en vectores de cuatro elementos, bien no podr´ıa considerarse los pesos para cada direcci´on, ya que coincidentemente para un elemento cuadril´atero de cuatro nodos el factor peso es la unidad. 1 √ − 3 √1 ξξ = 3 √1 3 1 √ − 3
1 √ − 3 − √1 ηη = 3 √1 3 √1 3
1 1 ωr = 1 1
1 1 ωz = 1 1
Finalmente, la matriz de rigidez para un elemento m est´a dado por.
k(m) = t
4 X
k1 (m, ξξi , ηηi )
i=1
Evaluando la funci´on para el elemento m = 1 se obtiene el resultado siempre una matriz cuadrada y sim´etrica de orden 8. Se procede de la misma manera para todos los elementos. 44
0.218 0.128 0.518 Sim´ e trico 0.096 0.049 0.222 0.068 0.222 0.073 0.698 11 k(m) = 10 −0.151 0.073 −0.242 −0.161 0.319 −0.101 −0.242 −0.115 −0.704 0.204 0.722 −0.174 −0.115 −0.077 −0.017 0.095 0.051 0.166 −0.094 −0.503 −0.006 −0.289 0.070 0.298 0.069 0.499
4.2.2.3.
Funci´ on matriz de rigidez ensamblado
La funci´on K figura(4.8) es el encargado de ensamblar la matriz de rigidez de la estructura completa, esta funci´on hace uso de las funciones establecidas anteriormente, obtiene la matriz de rigidez para cada elemento con la funci´on k(m) y para ensamblarlo en la matriz general llama a la funci´on de los grados de libertad p´agina(39), esto simplifica enormemente el c´odigo, como puede ver la manera compacta de la funci´on K figura(4.8). La funci´on K devuelve siempre una matriz cuadrada de orden 2n, siendo n en n´ umero de nudos de la estructura. Para la estructura analizada se obtiene una matriz cuadrada y sim´etrica de orden igual a 16 y es.
3.849 1.948 11.256 Sim´ e trico −4.015 −2.303 4.237 −2.117 −11.298 2.473 11.357 k(m) = 1011 1.715 0.981 −1.880 −1.116 3.918 0.905 4.844 −1.159 −4.887 2.119 10.918 −1.582 −0.778 1.710 0.913 −3.865 −2.195 3.904 −0.736 −4.802 0.99 4.834 −2.068 −10.892 2.144 · · · .. .. .. .. .. .. .. .. . . . . . . . . 45
4.2.2.4.
Funci´ on vector de fuerzas nodales equivalentes
La funci´on F figura(4.9) ensambla las cargas en un vector columna, ordena de acuerdo a los grados de libertad desde el cuadro(4.4), este vector es de orden 2n, siendo n el n´ umero de nudos de la estructura discretizada. El vector de cargas nodales equivalentes para la estructura es:
F = 0 0 0 −5.027 ∗ 104 0 0 0 3.142 ∗ 104 0 · · ·
Figura 4.8: Funci´on para obtener K
Figura 4.9: Funci´on para obtener F
46
4.2.2.5.
Funci´ on desplazamientos en nudos
Teniendo el vector de fuerzas equivalentes F figura(4.9) y la matriz de rigidez K figura(4.8) ensamblado de la estructura, s´olo falta establecer las condiciones de contorno para obtener los desplazamientos en los nudos. La matriz de rigidez de la estructura entera ha sido ensamblado sin tener en cuenta los grados de libertad restringidos, en los nudos donde existe soporte es conocido los desplazamientos, generalmente cero, entonces, en la matriz K se debe modificar los grados de libertad para los cuales estos desplazamientos son conocidos, hay maneras de establecer estas modificaciones, en la presente se har´a uso del m´etodo de la penalizaci´on7 . La matriz as´ı obtenido es Km cuya funci´on se muestra en la figura(4.10). Para la estructura analizada, la matriz modificado resulta.
307
1 ∗ 10 1.948 −4.015 −2.117 km = 1.715 0.905 −1.582 −0.736 .. .
1 ∗ 10307 −2.303
1 ∗ 10307
−11.298
2.473
1 ∗ 10307
0.981
−1.880
−1.116
4.844
−1.159
−4.887
−0.778
1.710
0.913
−4.802 .. .
0.99 .. .
4.834 .. .
Sim´etrico 3.918 2.119 10.918 −3.865 −2.195 3.904 −2.068 −10.892 2.144 · · · .. .. .. .. . . . .
Teniendo la matriz Km como los coeficientes de las inc´ognitas y el vector F el t´ermino independientes del sistema de ecuaciones formado para cada grado de libertad, para obtener los desplazamientos solamente se debe resolver estas ecuaciones, MathCad 14 dispone de funciones que ayudan estos requerimientos. La funci´on Q figura(4.11) es para obtener los desplazamientos en los nudos, rref (), rows() y augment() son funciones de MathCad 14. Luego, para ordenar los resultados es necesario la funci´on Qo figura(4.12) en la que cada fila representa un 7
que consiste en reemplazar la diagonal principal de la matriz de rigidez ensamblado, corres-
pondiente al grado de libertad restringido, por un n´ umero muy grande, seg´ un [8]
47
nudo y las columnas son. columna 1: n´ umero del nudo columna 2: desplazamiento radial columna 3: desplazamiento axial Para la estructura analizada, los desplazamientos para cada grado de libertad en los nudos, en el sistema global, resulta cuadro(4.5), en cuyo cuadro la columna uno representa el n´ umero que identifica al nudo, la columna dos los desplazamientos en la direcci´on radial y la columna tres los desplazamientos en la direcci´on axial.
Figura 4.10: Funci´on para obtener Km
Figura 4.11: Funci´on para obtener desplazamientos
Figura 4.12: Funci´on para ordenar desplazamientos
48
4.2.2.5.1.
Comparaci´ on de resultados con sap2000 Los resultados mostra-
dos en el cuadro(4.5) son iguales a los obtenidos con un an´alisis mediante el programa Sap2000 11.0.4 Educacional para cada grado de libertad considerado. Para el an´alisis en Sap2000 11.0.4 8 se hizo uso del elemento Asdolid sin considerar los modos incompatibles, discretizando el dominio completo(la secci´on caracter´ıstica de revoluci´on) con elementos rectangulares de cuatro nudos, para las condiciones de carga no se considera el peso propio de los elementos.
4.2.3.
Post-procesador
4.2.3.1.
Reacciones en los apoyos
Las reacciones en los apoyos est´a dado por R = KQ−F , donde K es la matriz de rigidez de toda la estructura figura(4.8), Q son los desplazamientos figura(4.11) y F es el vector de cargas equivalencies figura(4.9). Luego queda ordenar las reacciones convenientemente figura(4.13). Donde cada columna representa. columna 1: n´ umero del nudo 8
Aparte de sus propios manuales para el usuario de sap2000, la referencia [10] es una excelente
gu´ıa
Nudo DespR(mm)
DesplZ(mm)
1
0
0
2
0
0
3
0
-0.085892
4
0.000304
-0.085525
5
-0.004013
-0.147983
6
-0.007705
-0.14764
7
-0.011621
-0.1714
8
-0.016531
-0.170593
Cuadro 4.5: Desplazamientos en los nudos
49
columna 2: reacci´on en la direcci´on radial columna 3: reacci´on en la direcci´on axial El resultado para la estructura analizada se muestra el el cuadro(4.6), donde: La columna uno representa el nudo con soporte, la columna dos representa la reacci´on en la direcci´on radial y la columna tres representa la reacci´on en la direcci´on axial. Nudo
Reacr (kgf ) Reacz (kgf )
1
-793195.4
-191928.93
2
745963.55
283031.93
Cuadro 4.6: Reacciones en los soportes
4.2.3.1.1.
Comparaci´ on de resultados con sap2000 Las reacciones en los
apoyos resultan iguales a los obtenidos con un an´alisis en Sap2000 11.0.0 Educacional, por tal raz´on no es necesario reproducir los resultados de Sap2000 11.0.0 en la presente tesis, ya que el cuadro(4.6) lo representa completamente. 4.2.3.2.
Tensiones
para obtener las tensiones en un punto interior del elemento m se requiere los desplazamientos en los nudos del elemento, la funci´on q(m) figura(4.14) obtiene los desplazamientos de los nudos de cualquier elemento.
Figura 4.13: Funci´on para ordenar reacciones
50
Figura 4.14: Funci´on desplazamientos de un elemento Las tensiones [8] para cualquier punto en el interior del elemento normalizado, est´a dado por σ(m, ξ, η) = DB(m, ξ, η)q(m). Las tensiones son evaluados en los Puntos de Gauss y luego extendidos a todo el elemento
51
Cap´ıtulo 5 Desarrollo del Programa ”esaSAP” En el presente cap´ıtulo se crea una Extensi´on para el An´alisis Autom´atico de S´olidos Axisim´etricos en Sap2000(esaSAP)
1
desde el lenguaje de programaci´on
Microsoft Visual c#. Se hace uso intensivo de la Interfaz de Programaci´on para Aplicaciones de Sap2000 para el an´alisis autom´atico de estructuras modeladas como S´olidos de Revoluci´on. El programa esaSAP dispones de opciones para ser extendido en el an´alisis de todas las estructuras de revoluci´on, en esta versi´on solamente se programar´a para automatizar el an´alisis en Sap2000 de techos de edificaciones en forma de cono, cualquier interesado puede copiar el c´odigo y aumentar las estructuras de revoluci´on que prefiere. El diagrama de flujo se muestra en la figura figura(5.1).
5.1.
Organizaci´ on para el programa
El procedimiento predefinido para el an´alisis mediante la Interfaz de Programaci´on para Aplicaciones de Sap2000 estar´a implementado en un Clase de C# de nombre SapApi-Asolid y conteniendo m´etodos para cada prop´osito con el fin de modelar y analizar autom´aticamente la estructura de revoluci´on. El diagrama de flujo general se muestra en la figura(5.1). 1
esaSAP son las iniciales de Extension Solid Axisymmetric Analysis
52
Figura 5.1: Diagrama de Flujo general 53
5.2.
Descripci´ on de la clase SapApi-Asolid
El objeto que implementa la Interfaz de Programaci´on para Aplicaciones de Sap2000 es declarado de modo que sea visible para todos los m´etodos de la clase. Los m´etodos creados en la clase SapApi-Asolid son los siguientes.
5.2.1.
public void AbrirSap2000()
Por ser p´ ublico es visible para todos los objetos que puedan crearse desde la clase SapApi-Asolid, el m´etodo es general e inicializa un archivo Sap2000 configurando el espacio modelo sin elementos. No devuelve ning´ un resultado ya que el tipo devuelto es void.
5.2.2.
void Refrescar()
M´etodo que sirve para actualizar el espacio modelo de Sap2000, este m´etodo no est´a visible desde los objetos que se crean a partir de la clase SapApi-Asolid, es llamado por los m´etodos internamente.
5.2.3.
public void Cerrar()
M´etodo p´ ublico cuya finalidad es destruir el objeto creado a partir de la clase SapApi-Asolid.
5.2.4.
public void DefinirPropiedad(double Pe,double e, double u)
Como su nombre indica es para definir la propiedad del elemento de revoluci´on de nombre MyAsolid, antes crea un material de nombre MyMaterial cuyas propiedades P e Peso espec´ıfico, e m´odulo de elasticidad y u coeficiente de Poisson es utilizado en el an´alisis mediante el M´etodo de los Elementos Finitos
54
5.2.5.
public void ZUCS(double Z, double Tp, double S, double U, double R, double Ti, double vT, double Tf )
Define la aceleraci´on pseudo espectral seg´ un el Reglamento Nacional de Edificaciones2 , requiere de argumentos: Z factor de zona, T p Periodo que define la plataforma del espectro para cada tipo de suelo, S Factor del suelo, U Factor de uso e importancia, R Coeficiente de reducci´on de solicitaciones s´ısmicas, T i el tiempo inicial, vT variaci´on del tiempo y T f es el tiempo final.
5.2.6.
public void DefinirCargas()
M´etodo para definir los tipos de cargas, tipos de an´alisis y combinaciones de carga, seg´ un el reglamento Nacional de Edificaciones[27].
5.2.7.
public void MasaEstructura()
Define las cargas que ser´an considerados para obtener la masa de la estructura[27] para el an´alisis por respuesta espectral.
5.2.8.
public string ConoCompleto(double R1, double Altura, double Espesor)
M´etodo que dibuja la secci´on caracter´ıstica de revoluci´on de un cono completo en el espacio modelo de Sap2000, requiere de argumentos R1 radio de la base del cono, Altura total del cono y Espesor del cono. El m´etodo devuelve el nombre del objeto a´rea que dibuja. 2
Referencia [27] Tomo 2
55
5.2.9.
public string ConoConAbertura(double R1,double R2, double Altura, double Espesor)
M´etodo que dibuja la secci´on caracter´ıstica de revoluci´on de un cono con abertura en el espacio modelo de Sap2000, requiere de argumentos R1 radio de la base del cono, R2 radio de la abertura del cono, Altura altura total del cono y Espesor del cono. El m´etodo devuelve el nombre del objeto a´rea que dibuja.
5.2.10.
public void AsignarCargas(string MyArea, double CargaMuerta, double CargaViva )
´ Este es el encargado de asignar las cargas a la secci´on caracter´ıstica de revoluci´on de la estructura modelada, requiere de argumentos M yArea que es el nombre del a´rea de la secci´on caracter´ıstica de revoluci´on, CargaM uerta es la carga muerta actuando sobre la superficie superior del cono en kgf /m2 , CargaV iva la sobrecarga en kgf /m2 .
5.2.11.
public void Rectangulos4Nodos(string MyArea, int NroDiv12,int NroDiv13)
Discretiza el dominio completo en subdominios rectangulares de cuatro nudos, requiere de argumento M yArea que es el nombre de la superficie de revoluci´on que se dibuj´o en el espacio modelo de Sap2000, N roDiv12 un n´ umero entero que indica el n´ umero de divisiones en la cara formado por los nudos locales uno y dos, N roDiv13 un n´ umero entero que indica el n´ umero de divisiones en la cara formado por los nudos locales uno y tres.
5.2.12.
public void AsignarSopotesEnBase(double R1, double Espesor, int NroDiv12)
Asigna los grados de libertad restringidos en los nudos considerados en el modelo, en la base de la estrctura, requiere como argumento R1 radio de la base del cono, 56
Espesor de la secci´on de revoluci´on, N roDiv12 y el n´ umero de divisiones.
5.2.13.
public void AsignarSoportesEnCentro(double R1, double Altura, double Espesor, int NroDiv12)
Asigna los grados de libertad restringidos en los nudos considerados en el modelo, requiere como argumento R1 radio de la base del cono, Espesor de la secci´on de revoluci´on, Altura de del cono, N roDiv12 y el n´ umero de divisiones. Este m´etodo s´olo act´ ua en modelos completos.
5.2.14.
public void Analizar(string NombreArchivo)
M´etodo que configura y ordena a sap2000 para iniciar con el a´nlisis del modelo creado, es necesario el nombre del archivo con extensi´on .SDB
5.2.15.
C´ odigo fuente
el c´odigo fuente de la clase SapApi-Asolid se muestra en el ”Anexo A”.
5.3. 5.3.1.
Descripci´ on del programa esaSAP Generalidades
El programa esaSAP est´a preparado para ser implementado con todas las estructuras que cumplen las condiciones para ser modeladas como s´olidos de revoluci´on, el interesado no tiene m´as que copiar el c´odigo y a˜ nadir las estructuras que prefiera automatizar el an´alisis en Sap2000.
5.3.2.
Opciones de an´ alisis
La ventana principal del programa esaSAP se muestra en la figura(5.2), para mostrar las opciones de an´alisis en la forma de la estructura, se elige desde el men´ u Herramientas/nuevo figura(5.3) y se encuentra con las siguientes opciones.
57
1. Cono Completo: para el an´alisis de un techo de edificaci´on en forma de cono sin abertura, su secci´on caracter´ıstica de revoluci´on sobre la cual se analiza figura(5.4). 2. Cono con Abertura: para el an´alisis de un techo de edificaci´on en forma de cono con abertura, su secci´on caracter´ıstica de revoluci´on sobre la cual se analiza figura(5.5). Los argumentos generales para el an´alisis, que son comunes para todas las formas de las estructuras se muestra en la figura(5.6)
Figura 5.2: Ventana principal de la aplicaci´on esaSAP
Figura 5.3: Opciones de an´alisis esaSAP
58
Figura 5.4: Secci´on de revoluci´on cono completo
Figura 5.5: Secci´on de revoluci´on cono con abertura
Figura 5.6: Argumentos generales para el an´alisis 59
5.3.3.
Controles utilizados
El programa est´a organizado en un Formulario Windows que es la base que contiene a todos los controles comunes al entorno Visual Estudio.
5.3.4.
Espacio de nombre
El espacio de nombre que contiene todo el c´odigo de la aplicaci´on es el que lo crea por defecto el entorno de desarrollo integrado, con nombre AsolidCono.
5.3.5.
La clase AsolidCono
Cuando se crea el formulario para la ventana principal de la aplicaci´on ´esta hereda de la clase form y adem´as contiene todos los m´etodos que se crean para el tratamiento adecuado del programa.
5.3.6.
Descripci´ on de m´ etodos
Los m´etodo creados en la clase AsolidCono cumplen las funciones siguientes. private static string Mensaje(int a) M´etodo que devuelve una cadena dependiendo del argumento que se le brinde. Son los diferentes mensajes que el programa muestra orientando al usuario, dependiendo de cada estado. private static void MostrarMensaje(string texto) Muestra el mensaje definido por el texto que se brinda de argumento. private bool VerificarArgumentos() M´etodo especializado en verificar la veracidad de los argumentos, si alg´ un dato est´a fuera de lo establecido muestra el mensaje y termina el programa. void Procedimiento() M´etodo para analizar la estructura, seg´ un elecci´on del usuario. Public AsolidCono() M´etodo creado autom´aticamente por el editor.
60
5.3.7.
Descripci´ on de eventos
Un evento es la respuesta del programa a cualquier solicitaci´on del usuario. Los eventos para el programa actual est´an basados al hacer Click sobre uno de los elementos de men´ u, cada opci´on del men´ u responder´a convenientemente a lo solicitado. Los eventos considerados en la aplicaci´on son las siguientes. analizarEnSap20001104ToolStripMenuItem Al hacer un Click sobre el men´ u Analizar en sap2000 11.0.4 el programa interact´ ua con Sap200. cerrarSap20001104ToolStripMenuItem Cierra Sap2000, en t´erminos de programaci´on deshecha el objeto que contiene a la aplicaci´on Sap2000. salirToolStripMenuItem Cierra la aplicaci´on AsolidCono. conoCompletoToolStripMenuItem Establece la opci´on de an´alisis para un cono completo. conoConAberturaToolStripMenuItem Establece las opciones de an´alisis para un cono con abertura
5.3.8.
C´ odigo fuente
El c´odigo fuente completo se muestra en el ”Anexo A”.
61
Parte IV Resultados
62
Cap´ıtulo 6 Caso de estudio a un proyecto local 6.1.
Descripci´ on del proyecto
La aplicaci´on pr´actica en la presente Tesis es en la obra ”Construcci´on e Implementaci´on del Pabell´on de Aulas, SS.HH y M´odulos Administrativos de la Facultad de Ciencias de la Educaci´on de la Universidad Nacional San Crist´obal de Huamanga”, en cuya construcci´on me desempe˜ n´e en el cargo de Asistente de Obra. En la Tesis se analiza espec´ıficamente el Techo de la Aula Magna, que est´a construido de concreto armado y tiene la forma de un cono, para su an´alisis mediante el M´etodo de los Elementos Finitos se modela la estructura como un S´olido de Revoluci´on debido a la total simetr´ıa respecto al eje Z tanto en las cargas actuantes como en la forma de la estructura. El an´alisis se realiza sobre un modelo de la secci´on caracter´ıstica de revoluci´on y se asignan todas las condiciones a la que est´a sometido la estructura entera.
6.2.
Argumentos requeridos para el an´ alisis
Los datos requeridos para el presente an´alisis est´an en base al Expediente T´ecnico de la obra.
63
6.2.1.
Dimensiones de la estructura
Los planos de planta, elevaci´on y corte del auditorio se adjunta en el Ap´endice B, las dimensiones de la secci´on caracter´ıstica de revoluci´on para el techo en forma de cono son: Radio de la base, 8m. Altura del techo, 2.25m Espesor de la secci´on de revoluci´on, 0.15m.
6.2.2.
Material utilizado
Es el concreto armado, para el an´alisis se considera material homog´eneo, con las siguientes propiedades. Peso espec´ıfico del concreto armado, 2400kgf /m3 Resistencia del concreto a la compresi´on, 210Kgf /cm2 M´odulo de poisson del material, 0.3
6.2.3.
Cargas
Seg´ un el Reglamento Nacional de Edificaciones[27] en la cual est´a basado el Expediente T´ecnico de la obra, las cargas que act´ uan sobre el techo son. Carga permanente, 200kgf /m2 carga viva, sobrecarga, 50kgf /m2
6.2.4.
Par´ ametros para la funci´ on de aceleraci´ on pseudo espectral
Para obtener la funci´on, es necesario los siguientes argumentos. Factor de zona(Z), 0.3 64
periodo que define la plataforma del espectro para cada tipo de suelo (T p), 0.6 Factor de suelo (S), 1.2 Factor de uso e importancia (U ), 1.3 Coeficiente de reducci´on de solicitaciones s´ısmicas (R), 8.0
6.3.
Modelo de la estructura
La estructura para su an´alisis mediante el m´etodo de los elementos finitos ser´a modelado como un s´olido axisim´etrico. Con la finalidad de documentar de manera detallada, la estructura en planta se muestra en la figura(6.1) y la elevaci´on muestra la figura(6.2).
Figura 6.1: Vista en planta del techo en forma de cono
Figura 6.2: Vista en 3D del techo en forma de cono Si se observa la figura(6.2) de la p´agina(65) se nota claramente que la estructura tiene una completa simetr´ıa respecto al eje z del sistema de orientaci´on global, 65
en la que el origen de las coordenadas est´a en el centro del plano formado por la base de la estructura. Las cargas definidas en la secci´on(6.2.3) que act´ uan en la direcci´on de la gravedad son tambi´en sim´etricos respecto al mismo eje, por lo tanto la estructura cumple las condiciones para ser modelado y analizado como un s´olido axisim´etrico. En este tipo de estructuras se analiza sobre sobre el plano formado por la secci´on caracter´ıstica de revoluci´on; en la estructura analizada la secci´on de revoluci´on muestra la figura(6.3), sobre esta secci´on se asigna todas las solicitaciones a la que est´a impuesto la estructura real figura(6.4). A esta secci´on ser´a necesario girar sobre el eje z 360 grados sexagesimales para obtener la estructura entera.
Figura 6.3: Secci´on de revoluci´on de la estructura
Figura 6.4: Modelo de la estructura como s´olido axisim´etrico
6.4.
An´ alisis de la estructura
Con la finalidad de mostrar la utilidad de la extensi´on creada, el an´alisis de esta estructura fue propuesto a varios Ingenieros que tuvieron el inter´es de colaborar en el desarrollo del presente trabajo, se les propuso dos alternativas. 66
1. Modelar y analizar la estructura en Sap2000 por sus propios medios. 2. Analizar la estructura con la extensi´on creada esaSAP Las combinaciones de las cargas se consideran de acuerdo al Reglamento Nacional de Edificaciones - E060 y el resumen de los resultados mostrados en los cuadros son los producidos por la envolvente.
6.4.1.
Resultados obtenidos sin utilizar esaSAP
Los resultados obtenidos para la estructura por parte de los Ingenieros model´andolo y analizando con sus propios procedimientos en Sap2000 se resume en las siguientes secciones. 6.4.1.1.
Desplazamientos
Los desplazamientos m´aximos obtenidos por cada uno de los Ingenieros se muestra en el cuadro(6.1), donde. #n Representa el n´ umero de elementos en que es discretizado la secci´on caracter´ıstica de revoluci´on. U1 Desplazamientos en la direcci´on radial, eje x en el modelo analizado en Sap2000. U2 Desplazamiento en la direcci´on circunferencial, como se espera no existe desplazamientos en esta direcci´on, debido a que las cargas act´ uan completamente en le plano formado por los ejes radial y axial. U3 Desplazamientos en la direcci´on axial, eje z en le modelo analizado en Sap2000. Debido a la geometr´ıa y las cargas, los desplazamientos en los nudos considerados de la estructura solamente existe en el plano que contiene a la secci´on de revoluci´on(Plano x-z) en Sap2000, donde eje x define la direcci´on radial y el eje z define la direcci´on axial y es tambi´en el eje de revoluci´on de la estructura.
67
Ing
Tiempo
#n
(minutos) Ing(1)
Ing(2)
Ing(3)
Ing(4)
Ing(5)
35
20
50
16
40
144
144
180
90
48
U1
U2
U3
(mm)
(mm)
(mm)
0.01822
0
0
-0.320927
0
-1.498442
0.017773
0
0
-0.321212
0
-1.500051
0.018319
0
0
-0.321201
0
-1.499782
0.016784
0
0
-0.321066
0
-1.497454
0.018565
0
0
-0.322285
0
-1.20125
Cuadro 6.1: Desplazamientos m´aximos en los nudos de la estructura sin utilizar la extensi´on 6.4.1.2.
Tensiones
Las tensiones m´aximos obtenidos por cada uno de los Ingenieros se muestra en el cuadro(6.2), donde. #n Representa el n´ umero de elementos en que es dividido, la estructura entera, para su an´alisis. S11 Tensi´on en la direcci´on radial para cada elemento, que coincide con el eje x del modelo analizado en Sap2000. S22 Tensi´on en la direcci´on circunferencial, perpendicular a la secci´on de revoluci´on. S33 Tensi´on en la direcci´on axial para cada elemento, que coincide con el eje z del modelo analizado en Sap2000. S12 Tensi´on tangencial actuando el el plano formado por el eje radial y el eje circunferencial en la direcci´on radial; o tensi´on tangencia actuando en el plano formado por los ejes axial y circunferencial en la direcci´on axial.
68
Ing
Tiempo
#n
(minutos) Ing(1)
35
S11
S22
S33
S12
(kgf /m2 )
(kgf /m2 )
(kgf /m2 )
(kgf /m2 )
56083.73
131617.9
37232.52
-94144.72
-108719.6
-83069.38
42378.14
131295.8
40209.00
-84471.42
-106275.1
-90422.93
58701.96
131414.2
38058.57
-271682.8
-94959.61
-109306.7
-85160.58
186629.8
49485.5
132702.8
34645.77
-262627.7
-90954.99
-105687.6
-72901.46
186131.6
14834.11
131693.8
42592.31
-294352.5
-40543.28
-100686.7
-91677.46
144 210088.2 -269019
Ing(2)
20
144 216953.4 -281035.7
Ing(3)
Ing(4)
Ing(5)
50
16
40
180 220095.1
90
48
Cuadro 6.2: Tensiones m´aximos en elementos sin utilizar la extensi´on 6.4.1.3.
Fuerzas
Las fuerzas m´aximos obtenidos por cada uno de los Ingenieros se muestra en el cuadro(6.3), donde. #n N´ umero de elementos en es fue discretizado el dominio completo para su an´alisis. F1 Fuerza en la direcci´on axial que coincide con el eje x en el modelo de Sap2000 actuando en cada elemento. F2 Fuerza en la direcci´on circunferencial. F3 Fuerza en la direcci´on axial actuando en cada elemento.
6.4.2.
Resultados obtenidos utilizando esaSAP
En esta secci´on, para el an´alisis se utilizar´a la extensi´on creada esaSAP con la finalidad de automatizar el procedimiento en Sap2000 11.0.4. Debido a que el tiempo de an´alisis se reduce en un 90 % al utilizar la extensi´on, en el modelamiento 69
Ing
Tiempo
#n
(minutos) Ing(1)
Ing(2)
Ing(3)
Ing(4)
Ing(5)
35
20
50
16
40
144
144
180
90
48
F1
F2
F3
(kgf )
(kgf )
(kgf )
297274.7
0
596933.2
-297274.7
0
-129686.1
400543.0
0
209366.7
-400543.0
0
-125272.2
299733.5
0
220332.5
-299733.5
0
-107680.2
281735.3
0
362330.2
-281735.3
0
-222215.0
462005.0
0
219600.0
-535626.0
0
-155037.9
Cuadro 6.3: Fuerzas m´aximos en nudos de elementos sin utilizar la extensi´on y el an´alisis de la estructura analizada, es posible obtener con facilidad resultados para distintas discretizaciones de la secci´on de revoluci´on de la estructura.
Figura 6.5: Dimensiones de la Secci´on de Revoluci´on La extensi´on esaSAP solamente crea el modelo de la estructura, es Sap2000 que realiza todo el proceso de an´alisis, con la diferencia que todo lo ejecuta de manera autom´atica, culminado el proceso de c´alculo, se puede consultar los resultados 70
requeridos desde el propio entorno de Sap2000. Los argumentos requeridos para el an´alisis son: Los argumentos de la geometr´ıa de la secci´on caracter´ıstica de revoluci´on de la estructura, como muestra la figura(6.5), en la cual es necesario indicar el n´ umero de elementos en que ser´a discretizado el dominio completo para su an´alisis en Sap2000 11.0.4 Las cargas a la que est´a sometido la estructura, el material utilizado con sus propiedades y los par´ametros para obtener la funci´on de aceleraci´on pseudo espectral de acuerdo al reglamento nacional de edificaciones, figura(6.6).
Figura 6.6: Argumentos para esaSAP
6.4.2.1.
Desplazamientos
Los desplazamientos obtenidos con la extensi´on esaSAP desde Sap2000 11.0.4 se muestra el cuadro(6.4) para distintas discretizaciones de la secci´on de revoluci´on de la estructura. #n
3x1 = 3
U1
U2
U3
(mm)
(mm)
(mm)
0
0
0
-0.195411
0
-1.324294
71
15x1 = 18
48x2 = 96
68x3 = 204
158x3 = 474
200x3 = 600
220x3 = 660
240x3 = 960
300x4 = 1200
330x4 = 1320
360x4 = 1440
0.016806
0
0
-0.320859
0
-1.506002
0.018549
0
0
-0.321098
0
-1.498727
0.017703
0
0
-0.321163
0
-1.499838
0.01789
0
0
-0.321417
0
-1.500502
0.018018
0
0
-0.321432
0
-1.500617
0.017977
0
0
-0.321441
0
-1.500621
0.017906
0
0
-0.321405
0
-1.500582
0.0179
0
0
-0.321439
0
-1.500667
0.017898
0
0
-0.321448
0
-1.500709
0.017899
0
0
-0.321454
0
-1.500702
Cuadro 6.4: Desplazamientos m´aximos en los nudos utilizando la extensi´on
6.4.2.1.1.
Desplazamientos en la direcci´ on radial De los resultados que se
muestra en el cuadro(6.4) se observa que la variaci´on de los desplazamientos m´aximos en la direcci´on radial converge r´apidamente, basta dividir el dominio completo con 204 elementos rectangulares de 4 nudos. Desde esta cantidad de elementos, los desplazamientos en la direcci´on radial en los nudos considerados de la estructura se mantiene constante cuando es analizado con discretizaciones mayores, la varia72
ci´on de los desplazamientos m´aximos en la direcci´on radial del sistema de referencia global se muestra en la figura(6.7). -0.15 3
253
503
753
1003
1253
-0.2
-0.25
-0.3
-0.35
Figura 6.7: Desplazamiento radial m´aximo en funci´on de la discretizaci´on
6.4.2.1.2.
Desplazamientos en la direcci´ on axial Los desplazamientos en
la direcci´on axial figura(6.8), se comporta de manera similar a los desplazamientos radiales. -1.3 3
253
503
753
1003
1253
-1.35
-1.4
-1.45
-1.5
-1.55
Figura 6.8: Desplazamiento axial m´aximo en funci´on de la discretizaci´on
6.4.2.2.
Tensiones
Las tensiones obtenidos con la extensi´on esaSAP desde Sap2000 11.0.4 se muestra el cuadro(6.5) para distintas discretizaciones de la secci´on de revoluci´on de la estructura. 73
#n
3x1 = 3
18x1 = 18
48x2 = 96
68x3 = 204
158x3 = 474
200x3 = 600
220x3 = 660
240x4 = 960
300x4 = 1200
330x4 = 1320
360x4 = 1440
S11
S22
S33
S12
(kgf /m2 )
(kgf /m2 )
(kgf /m2 )
(kgf /m2 )
27504.31
26624.36
168802.72
792.18
-126089.04
-30278.65
-33794.34
-30739.55
146712.92
15000.04
134216.86
31708.66
-257385.47
-35950.73
-89057.45
-79944
202451.16
39305.86
131613.64
38029.63
-269483.08
-82661.47
-105289.97
-85691.07
225465.29
60055.85
131326.33
38452.23
-276270.12
-95258.5
-109457.98
-85532.55
257272.71
67473.58
130894.12
42249.6
-288389.93
-95363.43
-108882.89
-88894.56
264519.35
69073.2
130825.27
42774.69
-290685.23
-95102.36
-108706.06
-87136.77
267207.38
69663.57
130800.39
42962.61
-290262.62
-94990.58
-108673.6
-86659.27
280668.26
82179.02
130805.69
44621.78
-287614.11
-99732.4
-109676.59
-86244.39
291102.73
84595.92
130746.7
44800.37
-289695.21
-99417.96
-109793.03
-85445.57
294012.49
85259.17
130732
44795.83
-288694.75
-99349.08
-109900.11
-85216
296546.48
85833
130719
44765.02
-289070.94
-99298.16
-110024.39
-85274.09
Cuadro 6.5: Tensiones m´aximos en elementos utilizando la extensi´on
6.4.2.2.1.
Tensiones en la direcci´ on radial De los resultados que se muestra
en el cuadro(6.5) se observa que la variaci´on de los tensiones m´aximos en la direc74
ci´on radial converge lentamente, es necesario dividir el dominio completo con 1200 elementos rectangulares de 4 nudos. Desde esta cantidad de elementos, las tensiones en la direcci´on radial en los elementos considerados de la estructura se mantiene constante cuando es analizado con discretizaciones mayores, la variaci´on de las tensiones m´aximas en la direcci´on radial del sistema de referencia local se muestra en la figura(6.9). 350000 300000 250000 200000 150000 100000 50000 0 0
255
510
765
1020
1275
Figura 6.9: Tensi´on radial m´aximo en funci´on de la discretizaci´on
6.4.2.2.2.
Tensiones en la direcci´ on circunferencial Para encontrar resul-
tados adecuados de las tensi´on circunferencial, es necesario la misma discretizaci´on en la obtenci´on de las tensiones radiales. La variaci´on de la tensi´on circunferencial en funci´on de la cantidad de elementos se muestra en la figura(6.10). 110000 100000 90000 80000 70000 60000 50000 40000 30000 20000 0
200
400
600
800
1000
1200
1400
Figura 6.10: Tensi´on circunferencial m´aximo en funci´on de la discretizaci´on 75
6.4.2.2.3.
Tensiones en la direcci´ on axial Para encontrar resultados ade-
cuados de las tensiones axiales, es necesario una discretizaci´on menor que para la obtenci´on de las tensiones radiales, para la estructura analizada basta con dividir en 600 elementos. La variaci´on de la tensi´on axial en funci´on de la cantidad de elementos se muestra en la figura(6.11). 180000 170000 160000 150000 140000 130000 120000 0
255
510
765
1020
1275
Figura 6.11: Tensi´on axial m´aximo en funci´on de la discretizaci´on
6.4.2.2.4.
Tensi´ on tangencial Para encontrar resultados adecuados de las ten-
siones tangenciales, es necesario una discretizaci´on menor que para la obtenci´on de las tensiones radiales, para la estructura analizada basta con dividir en 600 elementos. La variaci´on de la tensi´on tangencial en funci´on de la cantidad de elementos se muestra en la figura(6.12). 100000 90000 80000 70000 60000 50000 40000 30000 20000 0
200
400
600
800
1000
1200
1400
Figura 6.12: Tensi´on tangencial m´aximo en funci´on de la discretizaci´on 76
Evaluando la variaci´on de las tensiones: Se observa para las tensiones en la direcci´on radial en figura(6.9) de la p´agina(6.9), que la convergencia hasta el resultado aceptable est´a dado para discretizaciones mayores, tal es as´ı que a partir del an´alisis con 1200 elementos los resultados ya no tienen tanta variaci´on. Para la tensi´on circunferencial, sucede lo mismo que para las tensiones radiales, requiriendo discretizaciones muy finos para encontrar la soluci´on adecuada, figura(6.10) En cambio, las tensiones axiales convergen r´apidamente, como se muestra en la figura(6.11); cuando se analiza con 600 elementos finitos los resultados ya son adecuados. Lo mismo sucede con la tensi´on tangencial mostrada en la figura(6.12) 6.4.2.3.
Fuerzas
Las fuerzas obtenidos con la extensi´on esaSAP desde Sap2000 11.0.4 se muestra el cuadro(6.6) para distintas discretizaciones de la secci´on de revoluci´on de la estructura. #n
3x1 = 3
18x1 = 18
48x2 = 96
38x3 = 204
158x3 = 474
F1
F2
F3
(kgf )
(kgf )
(kgf )
430946.01
0
615217.56
-550145.06
0
-428229.97
357426.61
0
274920.88
-534720.09
0
-110349.95
388851.41
0
261715.37
-388851.41
0
-122229.15
300085.74
0
203011.83
-300085.74
0
-96529.17
298722.51
0
132854.26
-298722.51
0
-88593.28
77
200x3 = 600
220x3 = 660
240x4 = 960
300x4 = 1200
330x4 = 1320
360x4 = 1440
300454.29
0
123774.03
-300454.29
0
-90249.08
300329.81
0
120970.62
-300329.81
0
-90128.13
235455.16
0
107752.27
-235455.16
0
-71885.76
235937.79
0
100008.18
-235937.79
0
-73315.91
235562.95
0
98271.26
-235562.95
0
-73757.94
235056.07
0
96891.13
-235056.07
0
-74135.75
Cuadro 6.6: Fuerzas m´aximos en nudos de elementos utilizando la extensi´on
6.4.2.3.1.
Fuerzas radiales De los resultados que se muestra en el cuadro(6.6)
se observa que la variaci´on de los fuerzas m´aximas en la direcci´on radial converge lentamente, es necesario dividir el dominio completo con 1200 elementos rectangulares de 4 nudos. 450000 400000 350000 300000 250000 200000 3
203
403
603
803
1003
1203
1403
Figura 6.13: Fuerza radial m´aximo en funci´on de la discretizaci´on 78
Desde esta cantidad de elementos, las Fuerzas en la direcci´on radial en los nudos considerados de la estructura se mantiene constante cuando es analizado con discretizaciones mayores, la variaci´on de las fuerzas m´aximas en la direcci´on radial del sistema de referencia local se muestra en la figura(6.13). 6.4.2.3.2.
Fuerzas axiales Para encontrar resultados adecuados de las fuerzas
axiales, es necesario la misma discretizaci´on en la obtenci´on de las fuerzas radiales. La variaci´on de las fuerzas axiales en funci´on de la cantidad de elementos se muestra en la figura(6.14). 600000 500000 400000 300000 200000 100000 0 3
208
413
618
823
1028
1233
1438
Figura 6.14: Fuerza axial m´aximo en funci´on de la discretizaci´on
6.4.3.
Comparaci´ on de resultados
Comparando los resultados obtenidos por ambas alternativas propuesto en la secci´on(6.4) de la p´agina(66), se observa que: Los resultados obtenidos en la secci´on(6.4.1) de la p´agina(67) por parte de las personas que colaboraron en el an´alisis de la estructura, difiere mucho de los resultados esperados. Estos resultados fueron obtenidos por sus propios medios desde el Sap2000 11.0.4 En cambio, los resultados obtenidos por el mismo personal, utilizando la extensi´on creada ”esaSAP” mostrados desde la p´agina(69) s´ı son los adecuados,
79
en los gr´aficos de la secci´on(6.4.2) se muestra claramente la convergencia de los resultados. Adem´as, la extensi´on creada ”esaSAP” reduce el tiempo del modelamiento y an´alisis de manera considerable, por esta raz´on es posible probar de manera autom´atica el comportamiento de la estructura para distintas discretizaciones de la secci´on caracter´ıstica de revoluci´on, eligiendo la respuesta conveniente.
6.5.
Obtenci´ on de refuerzos
La obtenci´on de refuerzos para la estructura, es solamente con fines ilustrativos, ya que el principal objetivo de la tesis es crear una extensi´on para automatizar procedimientos de modelamiento y an´alisis de estructuras, la cual ya est´a satisfecha.
6.5.1.
Dise˜ no por esfuerzo radial S11
Figura 6.15: Esfuerzo radial m´aximo en la zona inferior de la estructura
80
Se considera dos zonas. Zona inferior del techo en forma de cono, en la cual se presentan los mayores esfuerzos debido a los efectos de borde(esfuerzos de tracci´on y momentos flectores no considerados) figura(6.15). Para el dise˜ no S11 = 296.546 Tmon 2 es la tensi´on m´axima, e = 0.15m es el espesor de la secci´on caracter´ıstica de revoluci´on de la estructura, b = 1.00m se considera una longitud de un metro con fines de simplificar el an´alisis, Fy = 4.2 Tcmon2 es el esfuerzo de fluencia del acero. La fuerza est´a dado mediante T = S11 ∗ e ∗ b la cual evaluando resulta T = 44.481T on, el acero en la secci´on analizada As =
T , 0.9Fy
evaluando As = 11.76cm2 ; el acero m´ınimo
est´a dado por Asmin = 0.0035 ∗ b ∗ h evaluando Asmin = 5.25cm2 , entonces se toma de refuerzo As . Usar refuerzo de
1 2
00
a cada 20cm dos capas (10 ∗ 1.267 = 12.67cm2 ).
Figura 6.16: Esfuerzo radial m´aximo en la zona zona intermedia y superior Zona intermedia y superior, en la cual los esfuerzos son de compresi´on pura, figu2 ra(6.16). La tensi´on m´axima es S11 = 57.643 Tmon 2 , el acero requerido As = 5.25cm ,
usar refuerzo de
1 2
00
a cada 20cm una capa (5 ∗ 1.267 = 6.335cm2 ).
81
6.5.2.
Dise˜ no por esfuerzo Axial S33
En la zona inferior de la estructura figura(6.17). La tensi´on m´axima es S33 = 2 114.645 Tmon 2 , el acero requerido As = 5.25cm , usar refuerzo de
1 2
00
a cada 30cm dos
capas (5 ∗ 1.267 = 6.335cm2 ).
Figura 6.17: Esfuerzo axial m´aximo en la zona inferior De igual manera, para la parte central y superior el acero obtenido es el m´ınimo, As = 5.25cm2 , se usar´a refuerzo de
1 2
00
a cada 30cm en una sola capa. La figura(6.18)
muestra la distribuci´on de los refuerzos en la estructura.
6.6.
Justificaci´ on de los resultados
En la presente tesis los resultados obtenidos mediante el programa Sap2000 11.0.4 se ha demostrado en el Cap´ıtulo 4 donde se presenta la justificaci´on de forma detallada, mediante una plantilla programado en MathCad 14 con el m´etodo de los elementos finitos; en la cual, luego de analizar la estructura de revoluci´on(estructura
82
de edificaci´on en forma de cono con abertura) se ha llegado a los mismos resultados obtenidos en un an´alisis con Sap2000. La extensi´on ”esaSAP” 1 adem´as de automatizar el modelamiento y an´alisis de techos de edificaciones especiales que tienen la forma del cono, est´a implementado tambi´en para automatizar los procedimientos de an´alisis de estructuras c´onicas con abertura.
Figura 6.18: Refuerzos obtenidos para la estructura
1
El nombre de la extensi´ on proviene de las iniciales de ”Extension Solid axisymmetric analysis”
83
Parte V Conclusiones
84
Cap´ıtulo 7 Conclusiones y recomendaciones 7.1. 7.1.1.
Conclusiones De la metodolog´ıa
Se justifica detalladamente los resultados del programa Sap2000 11.0.4. Con esta finalidad se program´o una plantilla mediante el M´etodo de los Elementos Finitos en MathCad 14 para el an´alisis de estructuras que cumplen las condiciones para ser modeladas como S´olidos de Revoluci´on, cuyos resultados obtenidos de un an´alisis efectuado en Sap2000 11.0.4 y la plantilla creada en MathCad 14 coinciden totalmente; ´este es la justificaci´on del uso apropiado que se tiene del programa sap2000 11.0.4. Con esta justificaci´on, fue posible automatizar el proceso de an´alisis mediante la Interface de Programaci´on para Aplicaciones de Sap2000 desde el lenguaje de programaci´on Microsoft Visual c#, para estructuras que cumplen las condiciones para ser modeladas como s´olidos axisim´etricos. En la extensi´on esaSAP v1.2.0 solamente est´a disponible estructuras de techos de edificaciones especiales que tienen la forma de cono ya sea completo o con abertura, m´as estructuras de revoluci´on se ir´a a˜ nadiendo en las pr´oximas versiones. En la presente tesis se ha logrado implementar un m´odulo para el an´alisis autom´atico en Sap2000 que por defecto no dispone de esta opci´on. 85
Se cumpli´o con todos los objetivos establecidos en el desarrollo de la presente tesis.
7.1.2.
De los resultados
Los resultados obtenidos mediante el M´etodo de los Elementos Finitos son aproximados, siendo el calculista el encargado de decidir sobre la respuesta adecuada, y para esto, se debe tener el conocimiento suficiente sobre la metodolog´ıa aplicada. Para encontrar la respuesta adecuada se procede refinando la malla de los elementos finitos iniciando con una divisi´on conservador, el procedimiento se repite hasta que entre los resultados de un an´alisis anterior y la actual la diferencia sea el que establezca, a su juicio, el calculista. En el an´alisis de estructuras modeladas como S´olidos de Revoluci´on el primer resultado en converger son los desplazamientos en los nudos considerados, requiriendo divisiones muy finos para encontrar una convergencia a nivel de esfuerzos.
7.1.3.
Aplicaciones utilizados
El desarrollo de la presente Tesis no hubiera sido posible sin el adecuado uso de las siguientes aplicaciones. MathCad 14 Programa especializado para la elaboraci´on de informes t´ecnicos detallados. El programa Mathcad en su versi´on 14 fue fundamental para el entendimiento adecuado del M´etodo de los Elementos Finitos, se aprovech´o de manera acertada para la documentaci´on de los procedimiento del an´alisis y la justificaci´on de resultados de Sap2000 11.0.4. Microsoft Visual Studio 2009 Express Edition Entorno de desarrollo integrado que hace f´acil y ameno la creaci´on de aplicaciones. Es desde este editor que se program´o esaSAP con el lenguaje de programaci´on Microsoft Visual c# 86
enlaz´andolo con la Interface de Programaci´on para Aplicaciones de Sap2000 para automatizar el procedimiento de an´alisis. Sap2000 11.0.4 Programa para el an´alisis y dise˜ no de estructuras, en la tesis no s´olo se utiliza Sap2000 en la manera com´ un; se justifica el resultado de an´alisis mediante el M´etodo de los elementos Finitos y se automatiza los procedimientos.
7.1.4.
Lenguajes de programaci´ on
En el desarrollo de la Tesis fue necesario utilizar los siguientes lenguajes de programaci´on. Microsoft Visual C# Lenguaje de programaci´on completamente orientado a objetos, desde el cual se integr´o la Interface de Programaci´on para Aplicaciones de Sap2000. MathCad 14 Programming Para el an´alisis mediante el M´etodo de los Elementos Finitos de estructuras modeladas como S´olidos de Revoluci´on con la finalidad de justificar los resultados de Sap2000. APISap2000 Si bien la Interface de Programaci´on para Aplicaciones no es un lenguaje de programaci´on propiamente dicho, sino un conjuntos de m´etodos, funciones, variables,etc contenidos bajo un nombre com´ un, su aplicaci´on fue decisivo para automatizar el proceso de an´alisis en Sap2000 desde aplicaciones externas.
7.2.
Recomendaciones
Para utilizar un programa computacional en el An´alisis de Estructuras es conveniente tener un conocimiento adecuado de las bases num´ericas que se fundamenta la aplicaci´on, s´olo as´ı se estar´a en la capacidad de interactuar correctamente con el programa.
87
7.3.
Desarrollos futuros
Con la presente Tesis los interesados en crear extensiones para Sap2000 desde cualquier lenguaje de programaci´on disponen de una documentaci´on detallada, adem´as la extensi´on creada esaSAP v1.2.0 cuenta con opciones para ser ampliada; el interesado no tiene m´as que a˜ nadir la estructura de revoluci´on de su preferencia. Es posible implementar a la plantilla creada en MathCad 14 para el an´alisis de estructuras con distintos elementos finitos y para todo prop´osito, con la finalidad de documentar los resultados y justificar el an´alisis de cualquier programa que se fundamente en el M´etodo de los Elementos Finitos.
88
Bibliograf´ıa [1] David V. Hutton. Fundamentals of Finite Element Analysis. McGraw-Hill, 2004. [2] G. R. Liu and S. S. Quek. The Finite Element Method, a Practical Course. Butterworth-Heinemann, 2003. [3] Singiresu R. Rao. The Finite Element Method in Engineering. Elsevier Science - Tecnology Books, 2004. [4] Eugenio O˜ nate Ib´an ˜ez de Navarra. C´alculo de Estrucuras por el M´etodo de Elementos Finitos. Centro Internacional de M´etodos Num´ericos en Ingenier´ıa - CIMNE, 1992. [5] O. C. Zienkiewicz R. L. taylor. El M´etodo de los Elementos Finitos en Ingenier´ıa, Formulaci´on B´asica y Problemas Lineales, volume 1. Centro Internacional de M´etodos Num´ericos en Ingenier´ıa - CIMNE, cuarta edition, 1993. [6] Francisco Beltr´an. Teor´ıa general del M´etodo de los Elementos Finitos. Departamento de Mec´anica Estructural y construcciones Industriales - ETS Ingenieros Industriales Madrid, notas de clase, curso doctorado 1998-99 edition, 1999. [7] Ansys-CivilFem. Introducci´on al M´etodo de los Elementos Finitos, 2003. [8] Tirupathi R. Chandrupatla ashok D. Belegundu. Introducci´on al estudio del Elemento Finito en Ingenier´ıa. Prentice Hall, 1999. [9] Jorge Eduardo Hurtado. Introducci´on al an´alisis estructural por elementos finitos. Universidad nacional de Colombia - Sede Manizales, 1992. 89
[10] Esteban Ortiz Bosmans. Modelamiento y An´alisis de Estructuras en Sap2000 v10. Empresa editorial MACRO E.I.R.L, 2006. [11] CSI Computers and Structures INC.
CSI Analysis Reference manual For
Sap2000, Etabs, and Safe, June 2008. [12] Robert D. Cook. Concepts and Applications of Finite Element Analysis. John Wiley - Sons Inc., 1995. [13] Jos´e Mar´ıa Fornons. El M´etodo de los Elementos Finitos en la Ingenier´ıa de Estructuras. Universidad Polit´ecnica de Barcelona, 1982. [14] Young W. Kwan and Huochoong Bang. The Finite Element Method Using MATLAB. CRC press LLC, 1997. [15] I. M. Smith and D. V. Griffiths. Programming The Finite Element method. Jhon Wiley - Sons Inc., 1988. [16] Santiago Muelas Medrano. Curso B´asico de Programaci´on del M´etodo de los Elementos Finitos, Julio 1999. [17] Peter I. Kattan. Matlab Guide to Finite Elements, An Interactive Approach. Springer, 2002. [18] Sergio Gallegos Cazares. An´alisis de S´olidos y Estructural mediante el M´etodo de los Elementos Finitos. Limusa, 2008. [19] Jason Beres Pierre Boutquin y Meeta gupta Jeff ferguson, Brian Patterson. La biblia de c#. Anaya Multimedia, 2003. [20] Francisco Chart´e Ojeda. Programaci´on, Microsoft Visual C# .NET. Anaya Multimedia, 2003. [21] Jos´e Antonio Gonz´alez Seco. Programando en c#. 2002. [22] Computers and Inc Structures. Sap2000 API Documentation, 2008.
90
[23] Fco. Javier Ceballos. El Lenguaje de Programaci´on C#. Alfaomega Ra-Ma, 2002. [24] Parametric Tecnology Corporation PTC. Manual de Usuario, mathcad 14.0.0. Parametric Tecnology Corporation PTC, 2007. [25] Metacontrol Ingenieros Ltda. mathsoft Capturing Imagination, 1998. [26] MathSoft. Mathcad Reference Manual. MathSoft, 2001. [27] Reglamento Nacional de Edificaciones. Institulo de la Construcci´on y Gerencia, 2006.
91
Parte VI Anexos
92
Ap´ endice A C´ odigo fuente ”esaSAP” A.1. 1 2 3 4 5 6 7 8 9
10 11 12 13
14 15
C´ odigo fuente clase SapApi-Asolid
class SapApi Asolid { // Implementa l a i n t e r f a z en un o b j e t o SAP2000 . SapObject SapObjeto = new SAP2000 . SapObject ( ) ; long r e t ; public void AbrirSap2000 ( ) { /∗ ∗ M´etodo para i n i c i a l i z a r SAP2000 y c r e a r un modelo nuevo en blanco ∗ e s t e m´etodo e s g e n e r a l ∗/ SapObjeto . A p p l i c a t i o n S t a r t ( SAP2000 . e U n i t s . kgf m C , true , ” ” ) ; r e t = SapObjeto . SapModel . I n i t i a l i z e N e w M o d e l ( SAP2000 . e U n i t s . kgf m C ) ; r e t = SapObjeto . SapModel . F i l e . NewBlank ( ) ; }
16 17 18 19 20 21 22
void R e f r e s c a r ( ) { // a c t u a l i z a e l e s p a c i o modelo de SAP2000 bool Window = f a l s e ; r e t = SapObjeto . SapModel . View . RefreshView ( 0 , r e f Window ) ; // r e t = SapObjeto . SapModel . View . RefreshWindow ( 0 ) ;
23 24
}
25 26 27 28 29 30 31 32
public void C e r r a r ( ) { // c i e r r a l a a p l i c a c i ´o n SapObjeto . A p p l i c a t i o n E x i t ( f a l s e ) ; SapObjeto . SapModel = null ; SapObjeto = null ; }
33
93
34 35 36 37 38 39 40 41 42 43 44 45 46 47
48 49
public void D e f i n i r P r o p i e d a d ( double Pe , double e , double u ) { /∗ M´etodo para d e f i n i r una p r o p i e d a d en 2D t i p o A s o l i d ∗ Argumentos : ∗ name : nombre para l a p r o p i e d a d ∗ Pe : p e s o e s p e c´ı f i d e l m a t e r i a l ∗ e : m´ o dulo de e l a s t i c i d a d d e l m a t e r i a l [ k g f /m2 ] ∗ u : c o e f i c i e n t e de p o i s s o n ∗ a : c o e f i c i e n t e de e x p a n s i ´o n t´e r m i c o ∗ Temp : ∗/ // c r e a e l m a t e r i a l SAP2000 . eMatType M a t e r i a l = SAP2000 . eMatType .MATERIAL CONCRETE; r e t = SapObjeto . SapModel . P r o p M a t e r i a l . S e t M a t e r i a l ( ” MyMaterial ” , M a t e r i a l , −1, ” ” , ” ” ) ; // p e s o e s p e c´ı f i c o d e l c o n c r e t o r e t = SapObjeto . SapModel . P r o p M a t e r i a l . SetWeightAndMass ( ” MyMaterial ” , 1 , Pe , 0 ) ;
50
// d e f i n e p r o p i e d a d e s para m a t e r i a l i s ´o t r o p o r e t = SapObjeto . SapModel . P r o p M a t e r i a l . S e t M P I s o t r o p i c ( ” MyMaterial ” , e , u , 9 . 9 0 0E−06 , 0 ) ; // d e f i n e p r o p i e d a d de s ´o l i d o a x i x y m´e t r i c o r e t = SapObjeto . SapModel . propArea . S e t A s o l i d ( ” MyAsolid ” , ” MyMaterial ” , 0 , 3 6 0 , true , ” G l o b a l ” , −1, ” ” , ” ” ) ;
51 52
53 54
55 56
}
57 58
59 60
61 62 63 64 65 66 67
public void ZUCS( double Z , double Tp , double S , double U, double R, double Ti , double vT , double Tf ) { /∗ M´etodo para d e f i n i r l a a c e l e r a c i ´o n pseudo e s p e c t r a l con e l r e g l a m e n t o peruano E030 ∗ Z : F a c t o r de zona ∗ Tp : A c e l e r a c i ´ o n fundamental d e l s u e l o ∗ S: ∗ C : F a c t o r de a m p l i f i c a c i ´o n s´ıs m i c a ∗ U: C a t e g o r´ıa d e d i f i c a c i o n e s ∗ R: ∗/
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
double C, n , Sao ; System . Array T ; System . Array Sa ; // n´ u mero de e l e m e n t o s d e l a r r e g l o n = ( Tf − Ti ) / vT + 1 ; // i n i c i a l i z a n d o l o s v e c t o r e s con n e l e m e n t o s T = new double [ ( int ) n ] ; Sa = new double [ ( int ) n ] ; // i n s e r t a e l e m e n t o s a l o s v e c t o r e s f o r ( int i = 0 ; i 2 . 5 ) { C = 2.5; }
94
// l a a c e l e r a c i ´o n pseudo e s p e c t r a l Sa [ a d i m e n s i o n a l ] Sao = Z ∗ U ∗ C ∗ S / R; Sa . SetValue ( Sao , i ) ; // aumenta e l tiempo Ti = Ti + vT ;
86 87 88 89 90
} // e x p o r t a a SAP2000 r e t = SapObjeto . SapModel . Func . FuncRS . S e t U s e r ( ”ZUCS” , T . Length , r e f T, r e f Sa , 0 . 0 5 ) ;
91 92 93
94 95
}
96 97 98 99 100 101 102 103
104
105
106
public void D e f i n i r C a r g a s ( ) { /∗ ∗ M´ o dulo g e n e r a l que d e f i n e c a r g a s ∗/ // 1 : Load patern , d e f i n e t i p o s de c a r g a s // r e t = SapObjeto . SapModel . LoadPatterns . Add( ” LIVE ” , SAP2000 . eLoadPatternType . LTYPE LIVE , 0 , t r u e ) ; r e t = SapObjeto . SapModel . LoadCases . Add( ”LIVE” , SAP2000 . eLoadcaseType . LTYPE LIVE , 0 , true ) ; // r e t = SapObjeto . SapModel . LoadPatterns . Add( ”DEAD” , SAP2000 . eLoadPatternType .LTYPE DEAD, 1 , t r u e ) ; r e t = SapObjeto . SapModel . LoadCases . Add( ”DEAD” , SAP2000 . eLoadcaseType .LTYPE DEAD, 1 , true ) ;
107 108
109 110
111
// 2 : Load c a s e s , d e f i n e c a s o s de a n ´a l i s i s , s ´o l o f a l t a por sismo // d e f i n e c a s o de c a r g a de e s p e c t r o de r e p u e s t a // r e t = SapObjeto . SapModel . LoadCases . ResponseSpectrum . SetCase ( ” QUAKE” ) ; r e t = SapObjeto . SapModel . A n a l y s i s C a s e s . ResponseSpectrum . SetCase ( ”QUAKE” ) ;
112 113 114 115 116
117 118
119 120
121 122
123 124 125
126
// p r o p i e d a d e s para e l c a s o de a n ´a l i s i s por r e s p u e s t a e s p e c t r a l System . Array MyLoadName , MyFunc , MySF, MyCSys , MyAng ; MyLoadName = new string [ 3 ] { ”U1” , ”U2” , ”U3” } ; //MyLoadName . SetValue ( ”U1” , 0 ) ; MyLoadName . SetValue ( ”U2” , 1 ) ; MyLoadName . SetValue ( ”U3” , 2 ) ; MyFunc = new string [ 3 ] { ”ZUCS” , ”ZUCS” , ”ZUCS” } ; //MyFunc . SetValue ( ”ZUCS” , 0 ) ; MyFunc . SetValue ( ”ZUCS” , 1 ) ; MyFunc . SetValue ( ”ZUCS” , 2 ) ; MyCSys = new string [ 3 ] { ” G l o b a l ” , ” G l o b a l ” , ” G l o b a l ” } ; //MyCSys . SetValue ( ” G l o b a l ” , 0 ) ; MyCSys . SetValue ( ” G l o b a l ” , 1 ) ; MyCSys . SetValue ( ” G l o b a l ” , 2 ) ; MySF = new double [ 3 ] { 9 . 8 1 , 9 . 8 1 , 6 . 5 4 } ; //MySF . SetValue ( 9 . 8 1 , 0 ) ; MySF . SetValue ( 9 . 8 1 , 1 ) ; MySF . SetValue ( 6 . 5 4 , 2) ; MyAng = new double [ 3 ] ; // d e f i n e e l c a s o de c a r g a por r e s p u e s t a e s p e c t r a l // r e t = SapObjeto . SapModel . LoadCases . ResponseSpectrum . SetLoads ( ”QUAKE” , 3 , r e f MyLoadName , r e f MyFunc , r e f MySF, r e f MyCSys , r e f MyAng) ; r e t = SapObjeto . SapModel . A n a l y s i s C a s e s . ResponseSpectrum . SetLoads ( ”QUAKE” , 3 , r e f MyLoadName , r e f MyFunc , r e f MySF, r e f MyCSys , r e f MyAng) ;
127
95
// 3 : c o m b i n a c i o n e s de c a r g a //SAP2000 . eCType TypeC = SAP2000 . eCType . LoadCase ; SAP2000 . eCType TypeC = SAP2000 . eCType . a c a s e ; // 1 . 5 (CM) +1.8(CV) r e t = SapObjeto . SapModel . RespCombo . Add( ” 1 . 5 (CM) +1.8(CV) ” , 0 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 5 (CM) +1.8(CV) ” , r e f TypeC , ”DEAD” , 1 . 5 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 5 (CM) +1.8(CV) ” , r e f TypeC , ”LIVE” , 1 . 8 ) ; // 1 . 2 5 (CM+CV+CS) r e t = SapObjeto . SapModel . RespCombo . Add( ” 1 . 2 5 (CM+CV+CS) ” , 0 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 2 5 (CM+CV+CS) ” , r e f TypeC , ”DEAD” , 1 . 2 5 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 2 5 (CM+CV+CS) ” , r e f TypeC , ”LIVE” , 1 . 2 5 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 2 5 (CM+CV+CS) ” , r e f TypeC , ”QUAKE” , 1 . 2 5 ) ; // 1 . 2 5 (CM+CV−CS) r e t = SapObjeto . SapModel . RespCombo . Add( ” 1 . 2 5 (CM+CV−CS) ” , 0 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 2 5 (CM+CV−CS) ” , r e f TypeC , ”DEAD” , 1 . 2 5 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 2 5 (CM+CV−CS) ” , r e f TypeC , ”LIVE” , 1 . 2 5 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 1 . 2 5 (CM+CV−CS) ” , r e f TypeC , ”QUAKE” , −1.25) ; // 0 . 9 (CM) +1.25(CS) r e t = SapObjeto . SapModel . RespCombo . Add( ” 0 . 9 (CM) +1.25(CS) ” , 0 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 0 . 9 (CM) +1.25(CS ) ” , r e f TypeC , ”DEAD” , 0 . 9 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 0 . 9 (CM) +1.25(CS ) ” , r e f TypeC , ”QUAKE” , 1 . 2 5 ) ; // 0 . 9 (CM) −1.25(CS) r e t = SapObjeto . SapModel . RespCombo . Add( ” 0 . 9 (CM) −1.25(CS) ” , 0 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 0 . 9 (CM) −1.25(CS ) ” , r e f TypeC , ”DEAD” , 0 . 9 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ” 0 . 9 (CM) −1.25(CS ) ” , r e f TypeC , ”QUAKE” , −1.25) ; //ENVOLVENTE //TypeC = SAP2000 . eCType . LoadCombo ; TypeC = SAP2000 . eCType . RCombo ; r e t = SapObjeto . SapModel . RespCombo . Add( ”ENVOLVENTE” , 1 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ”ENVOLVENTE” , r e f TypeC , ” 1 . 5 (CM) +1.8(CV) ” , 1 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ”ENVOLVENTE” , r e f TypeC , ” 1 . 2 5 (CM+CV+CS) ” , 1 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ”ENVOLVENTE” , r e f TypeC , ” 1 . 2 5 (CM+CV−CS) ” , 1 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ”ENVOLVENTE” , r e f TypeC , ” 0 . 9 (CM) +1.25(CS) ” , 1 ) ; r e t = SapObjeto . SapModel . RespCombo . S e t C a s e L i s t ( ”ENVOLVENTE” , r e f TypeC , ” 0 . 9 (CM) −1.25(CS) ” , 1 ) ;
128 129 130 131 132 133
134
135 136 137
138
139
140 141 142
143
144
145 146 147
148
149 150 151
152
153 154 155 156 157
158
159
160
161
162 163
}
164 165 166 167 168
public void MasaEstructura ( ) { /∗ C o n f i g u r a para l a s c o n s i d e r a c i o n e s de masa ∗/ System . Array MyLoadPat = new string [ 2 ] { ”DEAD” , ”LIVE” } ;
96
System . Array MySF = new double [ 2 ] { 1 , 0 . 2 5 } ; r e t = SapObjeto . SapModel . P r o p M a t e r i a l . SetMassSource ( 3 , 2 , r e f MyLoadPat , r e f MySF) ;
169 170
171 172
}
173 174
175 176
177 178 179
180 181 182
183 184 185
public string ConoCompleto ( double R1 , double Altura , double E s p e s o r ) { // Dibuja s e c c i ´ o n de r e v o l u c i ´o n c a r a c t e r´ı s t i c a de un cono completo System . Array x = new double [ 4 ] { R1 , 0 , 0 , R1 } ; System . Array y = new double [ 4 ] { 0 , 0 , 0 , 0 } ; System . Array z = new double [ 4 ] { 0 , Altura , A l t u r a + Espesor , Espesor } ; ˜ ¡rea // d i b u j a e l e m e n t o A string MyArea = ” ” ; r e t = SapObjeto . SapModel . AreaObj . AddByCoord ( 4 , r e f x , r e f y , r e f z , r e f MyArea , ” MyAsolid ” , ” ” , ” G l o b a l ” ) ; Refrescar () ; return MyArea ; }
186 187
188 189
190 191 192
193 194 195
196 197 198
public string ConoConAbertura ( double R1 , double R2 , double Altura , double E s p e s o r ) { // Dibuja s e c c i ´ o n de r e v o l u c i ´o n c a r a c t e r´ı s t i c a de un cono con abertura System . Array x = new double [ 4 ] { R1 , R2 , R2 , R1 } ; System . Array y = new double [ 4 ] { 0 , 0 , 0 , 0 } ; System . Array z = new double [ 4 ] { 0 , Altura , A l t u r a + Espesor , Espesor } ; ˜ ¡rea // d i b u j a e l e m e n t o A string MyArea = ” ” ; r e t = SapObjeto . SapModel . AreaObj . AddByCoord ( 4 , r e f x , r e f y , r e f z , r e f MyArea , ” MyAsolid ” , ” ” , ” G l o b a l ” ) ; Refrescar () ; return MyArea ; }
199 200
201 202 203 204
205
206 207
public void A s i g n a r C a r g a s ( string MyArea , double CargaMuerta , double CargaViva ) { // m´ o dulo para a s i g n a r c a r g a s de p r e s i ´o n a s u p e r f i c i e s . // c a r g a muerta r e t = SapObjeto . SapModel . AreaObj . S e t L o a d S u r f a c e P r e s s u r e ( MyArea , ”DEAD” , 3 , CargaMuerta , ” ” , true , SAP2000 . eItemType . Object ); r e t = SapObjeto . SapModel . AreaObj . S e t L o a d S u r f a c e P r e s s u r e ( MyArea , ”LIVE” , 3 , CargaViva , ” ” , true , SAP2000 . eItemType . Object ) ; Refrescar () ; }
208 209
210 211 212
public void Rectangulos4Nodos ( string MyArea , int NroDiv12 , int NroDiv13 ) { // M´etodo para d i b u j a r e l e m e n t o s r e c t a n g u l a r e s // mesh
97
int NumberAreas = 1 ; System . Array AreaName = new string [ 1 0 ] ; r e t = SapObjeto . SapModel . EditArea . D i v i d e ( MyArea , 1 , r e f NumberAreas , r e f AreaName , NroDiv12 , NroDiv13 , 2 , 2 , f a l s e , f a l s e , f a l s e , f a l s e , 0 , 0 , true , true , true , f a l s e ) ; Refrescar () ;
213 214 215
216 217
}
218 219
220
public void AsignarSopotesEnBase ( double R1 , double Espesor , int NroDiv12 ) {
221
double Xmax, Ymax, Zmax , Xmin , Ymin , Zmin ; // Asigna s o p o r t e s en l a b a s e System . Array Value = new bool [ 6 ] { true , f a l s e , true , f a l s e , false , false }; double a = (R1 / NroDiv12 ) / 2 ; Xmax = R1 + a ; Xmin = R1 − a ; Ymax = 0 ; Ymin = 0 ; Zmax = E s p e s o r ; Zmin = 0 ; r e t = SapObjeto . SapModel . S e l e c t O b j . CoordinateRange ( Xmin , Xmax, Ymin , Ymax, Zmin , Zmax , f a l s e , ” G l o b a l ” , f a l s e , true , f a l s e , false , false , false ) ; r e t = SapObjeto . SapModel . PointObj . S e t R e s t r a i n t ( ” A l l ” , r e f Value , SAP2000 . eItemType . S e l e c t e d O b j e c t s ) ; r e t = SapObjeto . SapModel . S e l e c t O b j . C l e a r S e l e c t i o n ( ) ; Refrescar () ;
222 223 224
225 226 227 228 229
230
231 232 233
}
234 235
236 237 238 239
240 241 242 243 244
245
246 247 248
public void A s i g n a r S o p o r t e s E n C e n t r o ( double R1 , double Altura , double Espesor , int NroDiv12 ) { double Xmax, Ymax, Zmax , Xmin , Ymin , Zmin ; // Asigna s o p o r t e s en l a b a s e System . Array Value = new bool [ 6 ] { true , f a l s e , f a l s e , f a l s e , false , false }; double a = (R1 / NroDiv12 ) / 2 ; Xmax = 0 + a ; Xmin = 0 − a ; Ymax = 0 ; Ymin = 0 ; Zmax = A l t u r a + E s p e s o r ; Zmin = A l t u r a ; r e t = SapObjeto . SapModel . S e l e c t O b j . CoordinateRange ( Xmin , Xmax, Ymin , Ymax, Zmin , Zmax , f a l s e , ” G l o b a l ” , f a l s e , true , f a l s e , false , false , false ) ; r e t = SapObjeto . SapModel . PointObj . S e t R e s t r a i n t ( ” A l l ” , r e f Value , SAP2000 . eItemType . S e l e c t e d O b j e c t s ) ; r e t = SapObjeto . SapModel . S e l e c t O b j . C l e a r S e l e c t i o n ( ) ; Refrescar () ; }
249 250 251 252 253 254
255 256 257
public void A n a l i z a r ( string NombreArchivo ) { // M´ o dulo para a n a l i z a r l a e s t r u c t u r a ˜ ¡lisis // g r a d o s de l i b e r t a d c o n s i d e r a d o s en e l a n A System . Array GDL = new bool [ 6 ] { true , f a l s e , true , f a l s e , true , false }; r e t = SapObjeto . SapModel . Analyze . SetActiveDOF ( r e f GDL) ; // c r e a un modelo de a n ´a l i s i s r e t = SapObjeto . SapModel . Analyze . C r e a t e A n a l y s i s M o d e l ( ) ;
98
// o p c i o n e s d e l s o l u c i o n a d o r de e c u a c i o n e s de SAP2000 // r e t = SapObjeto . SapModel . Analyze . S e t S o l v e r O p t i o n ( 1 , t r u e , ” DEAD” ) ; // Guarda modelo r e t = SapObjeto . SapModel . F i l e . Save ( ”D: \ \FEM APISAP PRUEBA\\ ” + NombreArchivo ) ; // a n ´ alisis r e t = SapObjeto . SapModel . Analyze . RunAnalysis ( ) ; // S a l i d a de r e s u l t a d o s r e t = SapObjeto . SapModel . R e s u l t s . Setup . DeselectAllCasesAndCombosForOutput ( ) ; r e t = SapObjeto . SapModel . R e s u l t s . Setup . S e t C a s e S e l e c t e d F o r O u t p u t ( ”DEAD” , true ) ;
258 259
260 261
262 263 264 265
266
}
267 268
}
A.2. 1 2 3 4 5 6 7 8
using using using using using using using using
C´ odigo fuente ”esaSAP” System ; System . C o l l e c t i o n s . G e n e r i c ; System . ComponentModel ; System . Data ; System . Drawing ; System . Linq ; System . Text ; System . Windows . Forms ;
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33 34 35
namespace AsolidCono { public p a r t i a l c l a s s AsolidCono : Form { // o b j e t o SAP2000 para toda l a c l a s e d e r i v a d a AsolidCono S a p A p i A s o l i d MySap ; // i n d i c a d o r para AbrirSAP2000 o c r e a r un modelo // i n t a = 0 ; // d i m e n s i o n e s d e l cono public s t a t i c double Altura , R1 , Espesor , R2 ; // d i v i s i ´ o n de l a s e c c i ´o n de r e v o l u c i ´o n ´ // p u b l i c s t a t i c d o u b l e V a r i a c i ´o n ; Este desaparece public s t a t i c int Nrodiv12 , Nrodiv13 ; // p r o p i e d a d de m a t e r i a l e s public s t a t i c double PesoEsp , Rconcreto , C o e f p o i s s o n ; // Coeftermico ; // c a r g a s public s t a t i c double Cargamuerta , Cargaviva ; // f u n c i ´ o n a c e l e r a c i ´o n pseudo e s p e c t r a l public s t a t i c double Z , Tp , S , U, R, vT , Tf ; // i n d i c a l a forma de l a e s t r u c t u r a /∗ 1 : cono completo ∗ 2 : cono con a b e r t u r a ∗ 3 : domo completo ∗ 4 : como con a b e r t u r a ∗ . . . . . y sigue ∗/
99
36
int FormaEstructura ;
37 38 39 40 41 42 43 44
public AsolidCono ( ) { InitializeComponent () ; // e s t r u c t u r a p r e d e t e r m i n a d a cono completo FormaEstructura = 1 ; txtR2 . Enabled = f a l s e ; }
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
private s t a t i c string Mensaje ( int a ) { switch ( a ) { case 1 : return ” A l t u r a d e l cono , i n d e f i n i d o ” ; case 2 : return ” Radio ( r 1 ) d e l cono , i n d e f i n i d o ” ; case 3 : return ” E s p e s o r d e l cono , i n d e f i n i d o ” ; case 4 : return ”N´ umero de Div1 −2, i n d e f i n i d o ” ; case 5 : return ”N´ umero de Div1 −3, i n d e f i n i d o ” ; case 6 : return ” E l i j a l a forma de e s t r u c t u r a ” ; // ya no e x i s t e v a r i a c i ´o n case 7 : return ” Peso E s p e c´ıf i c o , i n d e f i n i d o ” ; case 8 : return ” f ’ c , i n d e f i n i d o ” ; case 9 : return ” C o e f i c i e n t e de P o is s o n , i n d e f i n i d o ” ; case 1 0 : return ” Radio ( r 2 ) d e l cono , i n d e f i n i d o ” ; // a n ˜ adido radio 2 case 1 1 : return ” c a r g a muerta , i n d e f i n i d o ” ; case 1 2 : return ” c a r g a viva , i n d e f i n i d o ” ; case 1 3 : return ”Z , i n d e f i n i d o ” ; case 1 4 : return ”Tp , i n d e f i n i d o ” ; case 1 5 : return ”S , i n d e f i n i d o ” ; case 1 6 : return ”U, i n d e f i n i d o ” ; case 1 7 : return ”R, i n d e f i n i d o ” ; case 1 8 : return ”vT , i n d e f i n i d o ” ; case 1 9 : return ”Tf , i n d e f i n i d o ” ; case 2 0 : return ” . . . y s i g u e ” ; default : return ”Todo Bien ” ;
100
}
92 93
}
94 95 96 97
98
private s t a t i c void MostrarMensaje ( string t e x t o ) { MessageBox . Show ( t e x t o , ” AsolidCono ” , MessageBoxButtons .OK, MessageBoxIcon . I n f o r m a t i o n ) ; }
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
private bool V e r i f i c a r A r g u m e n t o s ( ) { // ordena argumentos y v e r i f i c a // D e f i n e e l cono // A l t u r a d e l cono i f ( t x t A l t u r a . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 ) ) ; return true ; } A l t u r a = double . Parse ( t x t A l t u r a . Text ) ; // Radio d e l cono i f ( txtR1 . Text == ” ” ) { MostrarMensaje ( Mensaje ( 2 ) ) ; return true ; } R1 = double . Parse ( txtR1 . Text ) ; // E s p e s o r d e l cono i f ( t x t E s p e s o r . Text == ” ” ) { MostrarMensaje ( Mensaje ( 3 ) ) ; return true ; } E s p e s o r = double . Parse ( t x t E s p e s o r . Text ) ; // D i v i s i o n e s d e l dominio // D i v i s i o n e s en 1−2 i f ( t x t N r o d i v 1 2 . Text == ” ” ) { MostrarMensaje ( Mensaje ( 4 ) ) ; return true ; } Nrodiv12 = int . Parse ( t x t N r o d i v 1 2 . Text ) ; // D i v i s i o n e s en 1−3 i f ( t x t N r o d i v 1 3 . Text == ” ” ) { MostrarMensaje ( Mensaje ( 5 ) ) ; return true ; } Nrodiv13 = int . Parse ( t x t N r o d i v 1 3 . Text ) ; // V a r i a c i ´ o n Li / Lf /∗ i f ( t x t V a r i a c i o n . Text == ” ” ) { MostrarMensaje ( Mensaje ( 6 ) ) ; return true ; } V a r i a c i o n = d o u b l e . Parse ( t x t V a r i a c i o n . Text ) ; ∗/ // P r o p i e d a d e s de l o s m a t e r i a l e s // Peso E s p e c´ı f i c o
101
149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206
i f ( t x t P e s o e s p e c i f i c o . Text == ” ” ) { MostrarMensaje ( Mensaje ( 7 ) ) ; return true ; } PesoEsp = double . Parse ( t x t P e s o e s p e c i f i c o . Text ) ; // R e s i s t e n c i a d e l c o n c r e t o i f ( t x t R e s i s C o n c r e t o . Text == ” ” ) { MostrarMensaje ( Mensaje ( 8 ) ) ; return true ; } Rc on cr et o = double . Parse ( t x t R e s i s C o n c r e t o . Text ) ; // C o e f i c i e n t e de P o i s s o n i f ( t x t C o e f p o i s s o n . Text == ” ” ) { MostrarMensaje ( Mensaje ( 9 ) ) ; return true ; } C o e f p o i s s o n = double . Parse ( t x t C o e f p o i s s o n . Text ) ; // C o e f i c i e n t e de e x p a n s i ´o n t´e r m i c o e r a // ahora e s e l r a d i o f i n a l , r 2 i f ( txtR2 . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 0 ) ) ; return true ; } R2 = double . Parse ( txtR2 . Text ) ; // c a r g a s // c a r g a muerta i f ( txtCargamuerta . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 1 ) ) ; return true ; } Cargamuerta = double . Parse ( txtCargamuerta . Text ) ; // Carga v i v a i f ( t x t C a r g a v i v a . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 2 ) ) ; return true ; } Cargaviva = double . Parse ( t x t C a r g a v i v a . Text ) ; // p u b l i c s t a t i c d o u b l e Z , Tp , S , U, R, vT , Tf ; // Funci´ o n a c e l e r a c i ´o n Pseudo e s p e c t r a l //Z i f ( txtZ . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 3 ) ) ; return true ; } Z = double . Parse ( txtZ . Text ) ; //Tp i f ( txtTp . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 4 ) ) ; return true ; }
102
Tp = double . Parse ( txtTp . Text ) ; //S i f ( t x t S . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 5 ) ) ; return true ; } S = double . Parse ( t x t S . Text ) ; //U i f ( txtU . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 6 ) ) ; return true ; } U = double . Parse ( txtU . Text ) ; //R i f ( txtR . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 7 ) ) ; return true ; } R = double . Parse ( txtR . Text ) ; //vT i f ( txtVt . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 8 ) ) ; return true ; } vT = double . Parse ( txtVt . Text ) ; // Tf i f ( t x t T f . Text == ” ” ) { MostrarMensaje ( Mensaje ( 1 9 ) ) ; return true ; } Tf = double . Parse ( t x t T f . Text ) ; // . . . . . . . s i g u e n m´as m e n s a j e s ( s ) return f a l s e ;
207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245
}
246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264
void P r o c e d i m i e n t o ( ) { // M´etodo para a n a l i z a r en SAP2000 // v e r i f i c a r argumentos i f ( VerificarArgumentos () ) { return ; } // s i t o d o s l o s argumentos son c o r r e c t o s s e e j e c u t a // c r e a o b j e t o MySAP2000 MySap = new S a p A p i A s o l i d ( ) ; // I n i c i a l i z a o c r e a nuevo modelo de , seg u ´n MySap . AbrirSap2000 ( ) ; // d e f i n e p r o p i e d a d d e l e l e m e n t o double ModE = 15E7 ∗ Math . S q r t ( Rc on cr et o ) ; MySap . D e f i n i r P r o p i e d a d ( PesoEsp , ModE, C o e f p o i s s o n ) ; // d e f i n e f u n c i ´ o n a c e l e r a c i ´o n pseudo e s p e c t r a l MySap . ZUCS( Z , Tp , S , U, R, 0 . 1 , vT , Tf ) ;
103
// d e f i n e c a r g a s , c a s o s de a n ´a l i s i s y c o m b i n a c i o n e s de c a r g a MySap . D e f i n i r C a r g a s ( ) ; // masa de l a e s t r u c t u r a MySap . MasaEstructura ( ) ; ˜ ¡rea // nombre d e l A string MyArea = ” ” ;
265 266 267 268 269 270 271
switch ( FormaEstructura ) { case 1 : //Cono completo // o b t i e n e nombre de l o s f r a m e s r e s u l t a d o de extrudar MyArea = MySap . ConoCompleto (R1 , Altura , E s p e s o r ) ; // a s i g n a c a r g a s MySap . A s i g n a r C a r g a s ( MyArea , Cargamuerta , Cargaviva ) ; // d e v u e l v e l o s nombres de l o s e l e m e n t o s c a r g a d o s MySap . Rectangulos4Nodos ( MyArea , Nrodiv12 , Nrodiv13 ) ; // s o p o s t e s en l a b a s e MySap . AsignarSopotesEnBase (R1 , Espesor , Nrodiv12 ) ; // s o p o r t e s en e l c e n t r o MySap . A s i g n a r S o p o r t e s E n C e n t r o (R1 , Altura , Espesor , Nrodiv12 ) ; // A n a l i z a r MySap . A n a l i z a r ( ” ConoCompleto . SDB” ) ; break ; case 2 : // cono con a b e r t u r a // o b t i e n e nombre de l o s f r a m e s r e s u l t a d o de extrudar MyArea = MySap . ConoConAbertura (R1 , R2 , Altura , Espesor ) ; // a s i g n a c a r g a s MySap . A s i g n a r C a r g a s ( MyArea , Cargamuerta , Cargaviva ) ; // d e v u e l v e l o s nombres de l o s e l e m e n t o s c a r g a d o s MySap . Rectangulos4Nodos ( MyArea , Nrodiv12 , Nrodiv13 ) ; // s o p o s t e s en l a b a s e MySap . AsignarSopotesEnBase (R1 , Espesor , Nrodiv12 ) ; // s o p o r t e s en e l c e n t r o //MySap . A s i g n a r S o p o r t e s E n C e n t r o (R1 , Altura , Espesor , Nrodiv12 ) ; // A n a l i z a r MySap . A n a l i z a r ( ” ConoConAbertura . SDB” ) ; break ; case 3 : //domo completo break ; case 4 : //domo con a b e r t u r a break ; }
272 273 274 275
276 277 278
279 280
281 282 283 284
285 286 287 288 289
290
291 292
293 294
295 296 297 298
299 300 301 302 303 304 305 306 307
}
308 309
310 311 312
private void a n a l i z a r E n S a p 2 0 0 0 1 1 0 4 T o o l S t r i p M e n u I t e m C l i c k ( object s e n d e r , EventArgs e ) { // c l i k en a n a l i z a r l a e s t r u c t u r a // a n t e s debe e l e g i r una o p c i ´o n
104
i f ( FormaEstructura == 0 ) { MostrarMensaje ( Mensaje ( 6 ) ) ; return ; }
313 314 315 316 317 318
Procedimiento ( ) ;
319
}
320 321
private void c e r r a r S a p 2 0 0 0 1 1 0 4 T o o l S t r i p M e n u I t e m C l i c k ( object s e n d e r , EventArgs e ) { // c l i k en c e r r a r sap2000 MySap . C e r r a r ( ) ; }
322
323 324 325 326 327
private void s a l i r T o o l S t r i p M e n u I t e m C l i c k ( object s e n d e r , EventArgs e ) { // s a l i r de l a a p l i c a c i ´o n this . Close ( ) ; }
328
329 330 331 332 333
private void conoCompletoToolStripMenuItem Click ( object s e n d e r , EventArgs e ) { // s e e l i g e cono completo FormaEstructura = 1 ; txtR2 . Enabled = f a l s e ;
334
335 336 337 338 339
}
340 341
private void conoConAberturaToolStripMenuItem Click ( object s e n d e r , EventArgs e ) { // s e e l i g e cono con a b e r t u r a FormaEstructura = 2 ; txtR2 . Enabled = true ;
342
343 344 345 346 347
}
348 349
}
350 351
}
105
Ap´ endice B Fotograf´ıas
Figura B.1: Encofrado del techo del auditorio de la Facultad de Ciencias de la Educaci´on
106
Figura B.2: Encofrado del techo del auditorio de la Facultad de Ciencias de la Educaci´on
Figura B.3: Refuerzos del techo del auditorio de la Facultad de Ciencias de la educaci´on
107
Figura B.4: Auditorio Facultad Ciencias de la Educaci´on U.N.S.C.H
Figura B.5: Auditorio Facultad Ciencias de la Educaci´on U.N.S.C.H
108
Ap´ endice C Planos de la construcci´ on L´amina L-01: Localizaci´on L´amina U-01: Ubicaci´on L´amina A-15: Arquitectura - Planta y Cortes. L´amina A-16: Arquitectura - Elevaciones.
109