Programacion en La Ingenieria Civil

January 14, 2019 | Author: Cesar Augusto Mamani | Category: Matrix (Mathematics), Equations, Scientific Method, Engineering, Programming Language
Share Embed Donate


Short Description

para ingenieria...

Description

Años atrás…

Años atrás…

La Ingeniería tenia procesos complicados y engorrosos propios del calculo de diseños que se solicitaban diariamente, diariamente, Aunque no faltaban nuevos métodos o nuevas herramientas que facilitaban esta labor en cierta medida, pero no fue hasta la invención de las computadoras que hubo un progreso sustancial gracias a que ellas podían realizar una mayor cantidad de cálculos en un menor tiempo,, despojando de las tareas mas difíciles a los ingenieros tiempo eliminando así la parte engorrosa y dejando tiempo para evocarnos en otras partes de la ingeniería como por ejemplo presentar mas de dos posibles proyectos proyectos o como probar mas estados de carga para una misma estructura. estr uctura. Entonces partiendo de esto la programación forma parte importante de nuestra nue stra carrera ya ya que con ella podemos realizar cálculos o labores de diseño casi inimaginables inimaginables que hace tiempo atrás no hubiésemos podido realizar re alizar,, es por ello que nace el software softw are aplicado a la ingeniería civil

Es parte también importante conocer la teoría que esta inmersa dentro de este software como parte de un buen manejo de estos programas ya que muchas veces en nuestros centros de estudios se empieza de la parte teórica, siendo nuestra responsabilidad responsabilid ad entenderla y aplicarla en nuestro campo

Pero muc muchas has veces veces los nuevos nuevos métodos métodos y tecnologías no van de la mano con la enseñanza que se nos brinda ya sea por diversos factores:  Por

El Tiempo, Los Recursos Y La Falta De Capacitación Etc.

dejando una desconexión entre lo que se nos enseña y lo que se aplica provocando que el estudiante investigue por cuenta propia, no encontrando respuestas en muchas de las ocasiones, siendo este un problema muy común entre los nuestros que no se corrige si no después de haber ganado cierta experiencia (derecho de piso). Podemos mencionar algunos ejemplos

EN EL CALCULO DE ESTRUCTURAS METODOS ITERATIVOS Métodos de Cross

Métodos de Kani

Métodos de Takabeya

Método De Elementos Finitos

Muchas veces no existe compatibilidad en los resultados generando dudas en los estudiantes que casi nunca son corregidas



PLANOS Dibujo manual



Dibujo asistido por computadora





Muchas veces no se mejora para una mayor productividad ya que se sigue teniendo el mismo concepto que en el dibujo manual.

ESTRUCTURAS SISMO RESISTENTES Tecnologías convencionales (Aporticadas y Sistema dual)

Nuevas tecnologías (aisladores y disipadores)

En este caso se aplican las nuevas tecnologías pero sin un estudio de respuesta ante la aplicación de la misma.











Ahora si tomamos el primer ejemplo y realizamos un ejercicio cualquiera y lo sometemos a ambos métodos. Teniendo en cuenta que en el cálculo manual nos valemos del método de Hardy cross Tenemos los siguientes resultados

CALCULO MANUAL POR CROSS

Y suponiendo que no tenemos dudas en el método de Hardy Cross



CALCULO POR EL PROGRAMA ETABS



Comparando ambos resultados FUERZAS CORTANTES CALCULADO POR

barra1

barra 2

barra 3

NI

NF

NI

NF

NI

NF

programa Etabs

656.58

656.58

-2173.28

3773.17

23.43.42

2343.42

Cross

656.25

656.25

-2200

3800

2343.75

2343.75

MOMENTOS FLECTORES CALCULADO POR programa Etabs Cross

barra1

barra2

barra3

NI

NF

NI

NF

NI

NF

4952.2

-230.11

417.53

-9096.16

-9047.95

9448.45

4949.97

-300

300

-9300

-9300

9449.98

Claramente podemos observar que no existe compatibilidad entre algunos de sus resultados. La pregunta que cae por su propio peso seria: •



¿ Por Que Los Resultados No Son Iguales Si Hablamos De La Misma Estructura ?

Ahora si consideramos que nuestro calculo manual es correcto, tendríamos que corregir los datos ingresados en el programa Etabs ya que son varios los datos de entrada y no sabemos como estos afectan a nuestros resultados

Investigando por cuenta propia sobre la teoría del método de elementos finos y realizando el mismo ejercicio por el este método mediante un calculo manual se llega a los siguientes resultados.



Método Matricial Manual:



Entonces ahora podemos ver que este resultado si tiene un mejor acercamiento con el método de Cross pero aun así sigue variando con respecto a los resultados del programa Etabs, por lo tanto la única forma de que esto suceda es que estemos obviando algún dato o no estemos eliminando alguna consideración que el programa lo hace por defecto





Es por ello que seguimos investigando sobre este programa y vemos que considera la aplicación de los brazos rígidos siendo este una variable que afecta a nuestros resultados.

Ahora hacemos la modificación en el programa para ver si estos resultados se acercan a los calculados manualmente por ambos métodos





Calculo por el Programa Etabs (Corregido) Eliminamos la aplicación de los brazos rígidos solo para el ejemplo ya que con lo investiga se demuestra que su aplicación es necesaria por que se apega a la realidad



Comparando ambos resultados FUERZAS CORTANTES CALCULADO POR

barra1

barra 2

barra 3

NI

NF

NI

NF

NI

NF

programa Etabs

656.58

656.58

-2200.05

3799.93

2343.42

2343.42

Cross

656.25

656.25

-2200

3800

2343.75

2343.75

MOMENTOS FLECTORES CALCULADO POR



barra1

barra2

barra3

NI

NF

NI

NF

NI

NF

programa Etabs

4952.2

-300.43

300.43

-9298.93

-9298.93

9448.45

Cross

4949.97

-300

300

-9300

-9300

9449.98

Ahora si existe una mejor aproximación aunque no del todo acertada, consideramos que es por otras posibles causas ya que el programa Etabs utiliza mas parámetros para poder obtener estos resultados mas realistas y además que este es un ejercicio puramente académico y no tiene mucha relación con la realidad.







Por ello consideramos importante saber como están programados muchos de los software que son utilizamos a diario ya que nos ayuda a entender su funcionamiento además que nos permite manipular libremente todos los parámetros que este nos pueda ofrecer Ahora sin dudas y sin temor alguno procederemos modelar este mismo problema en otros programas que se encuentran disponibles en otras plataformas como Android ,Windows y para calculadoras

Y con toda firmeza y confianza procederemos a evaluarlas ya que tenemos el conocimiento de la teoría que esta detrás de todo eso



Programa Frame Desing (para Android)



Programa Dovas (para Ti – nspire cas)



Programa Port (calculo manual para Ti-nspire cas)



Programa Two Frame( para windows)



Se puede observar que si comparamos los resultados si existe concordancia



FUERZAS CORTANTES CALCULADO POR

barra1

barra 2

barra 3

NI

NF

NI

NF

NI

NF

Etabs

656.58

656.58

-2200.05

3799.93

2343.42

2343.42

Frame desing

-656.40

-656.40

-2200.00

3800.00

-2343.60

-2343.60

Programa Dovas

656.39

656.39

2200.02

-3799.98

2343.61

2343.61

Programa Port

656.39

-656.39

2200.02

3799.98

2343.61

-2343.61

Programa Two Frame

656.39

656.39

2200.02

-3799.98

2343.61

2343.61

Calculo a Mano

656.39

656.39

2200.02

-3799.98

2343.61

2343.61

MOMENTOS FLECTORES CALCULADO POR

barra1

barra2

barra3

NI

NF

NI

NF

NI

NF

4952.2

-300.43

300.43

-9298.93

-9298.93

9448.45

Frame desing

4950.90

-300.20

-300.20

9299.60

9299.60

9449.30

Programa Dovas

4950.89

-300.21

-300.21

9299.58

9299.58

-9449.31

Programa Port

4950.89

300.21

-300.21

-9299.58

9299.58

Programa Two Frame

-4950.89

300.21

300.21

-9299.58

-9299.58

9449.31

Calculo a Mano

4950.89

-300.21

-300.21

9299.58

9299.58

-9449.31

Etabs

 

9449.31

Durante todo este proceso de calculo y comprobación ganamos experiencia y convicción en el manejo de otros programas. Además que lo aprendido manualmente no tiene por que ser diferente a lo calculado por otros programas

Es por eso que saber el manejo de los programas mas avanzados para el análisis estructural es tan importante como saber el como están programados para entender su funcionamiento y no tener dudas al tomar nuestras propias consideraciones •

Por lo hablado anteriormente pudimos demostrar la importancia de los programas en ese aspecto. También no solo cumple para ello pues podemos demostrar que los programas son importante en la enseñanza tanto como para el docente como para el estudiante mismo, entonces vamos a demostrar como podríamos aplicar la programación a diferentes campos de la ingeniería civil. Empezaremos primero en los MÉTODOS NUMERICOS ya que esta es una herramienta básica para hacer nuestros cálculos y deberíamos optimizar la manera de calcular ya que en la universidad estos cálculos son de manera manual y esta bien por que nos enseñan a demostrar como es que funcionan estos métodos , pero una vez aprendido estos métodos no se comprueban para muchos casos y simplemente se dejan ahí y creo que jamás se vuelven a utilizar pero sabemos que eso es muy importante para la carrera, ahora existen muchos métodos delos cuales en este caso solo voy a hablar de 3 Entre los métodos para resolver sistemas de ecuaciones tenemos:  Gauss Jordan  Jacobi  Gauss Seidel

GAUSS JORDAN es un algoritmo del algebra lineal para determinar las soluciones de un sistema de ecuaciones lineales, encontrar matrices e inversas.

Trabajamos sobre la plataforma TI- NSPIRE en el lenguaje de programación TI BASIC Empezamos por generalizar el procedimiento para un sistema de “n” ecuaciones, al

parecer este paso parece complicado pero en realidad nos ayuda o nos permite ahorrar código al programar debido a que si solo lo hacemos para casos particulares tendríamos que hacer un programa distinto que funcione para cada caso, representando esto una tarea innecesaria. Una vez terminado esto procedemos a volcar al lenguaje de programación los pasos con el que se ejecuta este procedimiento estableciendo un nexo entre la parte matemática y el lenguaje de programación siendo esto una parte importante ya que requiere un pleno conocimiento de los comandos que el lenguaje requiere y siendo el programador el único que los entiende. Por otro lado hacemos que el programe nos arroje el procedimiento simulando un calculo manual para poder comprobar nuestros ejercicios, siendo estos los resultados:

JACOBI El método de Jacobi se basa en que existen matrices ortogonales P, tales que transforman a la matriz A en una matriz cuya diagonal principal está formada por los valores propios. Entonces como hicimos en primer método generalizamos el problema. Como podrán ver en este paso se tiene que tener conocimiento de las matemáticas que involucra cada método, de esta manera estamos ampliando y profundizando nuestros conocimientos sobre este tema.

Líneas de Comando que establecen las pautas para el correcto funcionamiento del programa

GAUSS SEIDEL Es un método iterativo, lo que significa que se parte de una aproximación inicial y se repite el proceso hasta llegar a una solución con un margen de error tan pequeño como se quiera. Buscamos la solución a un sistema de ecuaciones lineales, en notación matricial. Puede aplicarse a cualquier sistema de ecuaciones lineales que produzca una matriz (cuadrada, naturalmente pues para que exista solución única, el sistema debe tener tantas ecuaciones como incógnitas) de coeficientes con los elementos de su diagonal no-nulos, la convergencia del método solo se garantiza si la es diagonalmente dominante o si es simétrica y, a la vez, definida positiva.

Ahora los resultados de estos 3 métodos se comprobaran con el calculo manual para verificar que el programa tenga un correcto funcionamiento o de lo contrario seguir mejorándolo



Durante todo este proceso aprendimos sobre la manipulación de matrices, generalización de ecuaciones y métodos, también pudimos resolver sistemas de ecuaciones grandes cosa que manualmente seria muy trabajoso además que comprobamos en que casos son mas efectivos cada método y todo esto contribuye a tener un concepto mucho mas amplio sobre esta materia

Todo esto se ve reflejado en nuestra curva de aprendizaje ganando mayor pendiente a medida que vamos adentrando a la programación



En GEOTECNIA

Para calcular el factor de seguridad contra deslizamientos en taludes de tierra Ahora también generalizamos el problema para subdividir el talud en “n” dovelas .

Pero sabemos que podríamos calcular las áreas mas eficientemente si no tendríamos que aproximar la curva de falla en partes rectas es por eso que consideramos este error de aproximación en el programa Entonces procedemos a elaborar el programa para obtener un paso a paso de los cálculos y así comprobarlos con el calculo manual obteniendo los siguientes resultado.

Se puede apreciar que el código fuente es lo bastante simple y que cualquiera puede entenderlo

En cuanto a este programa podemos decir que nos facilito para poder despejarnos de dudas con respecto a esta materia aparte de ello nos permito ver que tan aproximado seria si dividimos al talud en muchas dovelas ya que esto calculado a mano seria algo agotador .

• •



• •







En el DISEÑO DE VIGAS DE CONCRETO ARMADO Sabemos que esto es un proceso tedioso por que siempre estamos buscando la mejor opción lo que involucra estar probando varios tipos de soluciones para nuestro diseño pero que muchas veces se busca a lo mucho un par de alternativas debido a lo complicado del proceso de calculo. Entonces resulta esencial elaborar un programa que realice la parte del calculo y que este de acuerdo con nuestras propias normas Para ellos nos valemos de la teoría y de las normas vigentes ahora debido a que este programa fue elaborado para obtener los mismos resultado que el profesor exigía se tomo en cuenta hasta correcta aproximación de lo decimales. Debido a esto se tardaría mucho en elaborar dicho programa es por ello que se necesito de la ayuda de otras personas para la programación generando esto una consecuencia inevitable El programar es plasmar el conocimiento en una serie de pasos definidos y ordenado en un lenguaje de programación .pero también cada persona tiene su propia manera de entender las cosas por ende tendrá su propia manera de programar Debido a esto se tubo que sistematizar la implementación de cada algoritmo en un algoritmo mayor . Estableciendo un orden que cada programador debió seguir y así poder generar un programa mayor como es el de este caso.

Programa para el diseño de vigas de concreto armado



Haciendo la comprobación con el calculo manual





teniendo el programa a nuestra disposición no solo nos ayudo a pasar el curso que es lo q muchos esperan, si no que también pudimos probar muchos casos dando varias alternativas de solución a un mismo problema además de hacerlo con el mínimo esfuerzo permitiéndonos tener un concepto mas amplio del curso y ver que variables del problemas son las que mas afectan a los resultado ganándonos así nuestro propio criterio del por que de las cosas (siendo esto a veces muy difícil de conseguir)

Experiencia de programación El programar es enseñar desde lo mas básico y paso a paso un determinado proceso para obtener un resultado, es por eso que los programadores deben de saber todos los detalles y particularidades de un problema, en otras palabras tiene que tener una visión clara sobre el tema en el que vamos a programar

Un antiguo problema de resistencia de materiales

Deflexión de vigas Para encontrar la deflexión de una viga existen muchos métodos entre ellos tenemos: Método de la doble integración Método del Área de momentos Método de la viga conjugada En la mayoría de los métodos que dan solución a este problema se basan en encontrar los momentos flectores de la viga, pero como sabemos los momentos están en función de la carga aplicada. Pues ahora pensemos razonemos sobre las cargas en una viga







Podemos observar que las cargas son variadas son variadas y que cualquier cambio sobre ellas modifica la ecuación que describe su deflexión. Tratamos de generalizar este problema . Pero no se obtienen resultados generales para cualquier estado de carga Solo se generalizan los mas usados como son las fuerzas puntuales y las cargas distribuidas constantes en todo el eje de la viga

pero esto no satisface la necesidad de encontrar una solución generaliza ya que se desea poder someter a una estructura para diferentes casos de cargas Volviéndose una prioridad buscar algún otro método que pueda abordar este problema

• •

• • •

• •

Entonces escudriñamos mas sobre esta teoría y nos damos cuenta que podemos expresar las cargas mediante el uso de unas funciones generalizadas como por ejemplo: Función rampa que representa una carga triangular o trapezoidal en una viga Función escalón unitario que representa una carga distribuida constante en el eje de toda la viga Función impulso unitario que representa un fuerza puntual Función doblete que representa un momento puntual















Ahora ya podemos expresar las cargas mediante un función compacta evitando tener que expresarlas mediante nuestro propio razonamiento Pero aun así el problema sigue siendo muy complicado aun ya que son muchas las funciones que podrían describir la carga de una viga Es por eso que se sigue buscando nuevas alternativas de solución para la representación de las cargas en un viga nos topamos con las función de macaulay en que utiliza la simbología de los corchetes angulares

esto no es mas que un manera de expresar las funciones mencionadas anteriormente pero que simplifican su implementación al programa gracias a estas funciones se pudo elaborar un programa que sea capas de arrojar los momentos flectores a los que esta sometida una viga generalizando así de esta manera el problema de las vigas



• • • •

Ahora llegamos al caso en donde las vigas ya no son isostáticas si no Hiperestáticas y que también existen una variedad de métodos para este tipo de problemas como es el caso de: Primer y segundo teorema de castigliano Método de la deflexión Método de las fuerzas

Pero nos damos cuenta que estos métodos también necesita de los momentos flectores de la viga pero con la modificación que algunas cargar están expresadas en forma de variables por ende realizamos una modificación al programa original para que pueda reconocer las cargas que son variables en magnitud(no en posición) • •

• •



• • • • • •

Entonces ahora si podemos dar solución a los casos en donde la viga es hiperestática con la condición que el grado de hiperestaticidad no sea muy elevado por que volvería muy engorroso la parte del calculo ya que genera varias ecuaciones y muchas veces esto puede marear al alumno Pero ahora nos damos con la sorpresa de que las estructuras en la ingeniería tienes un numero alto de hiperestaticidad, entonces esto va en contra de lo mencionado anteriormente

teniendo así que volver a buscar un meto mucho mas eficiente para estos casos . es así como llegamos a los métodos de iteraciones sucesivas siendo los siguientes: El método de Hardy Cross El método de kani El método de takabeya



• • •



Estos método muchas veces son muy difíciles de implementar en un programa por que tienen consideraciones distintas cuando las estructura tiene desplazamientos laterales Esto molesta un poco a la hora de generalizar el problema teniendo así que buscar otro método que pueda generalizar esto topándonos con el método matricial que es la base de el método de elementos finitos usado muy frecuentemente en la actualidad por los programas de análisis estructural ya que en el se pueden modelar distintos casos de cargas, diferentes materiales, además que se pueden usa para materiales que no están en el rango elástico







Entonces vemos como un sencillo problema de resistencia de materiales se volvió tan amplio que se tardo mas de 4 ciclos en poder entenderlo debido a que siempre se trata de modelar una estructura los mas real posible, aparte se necesito profundizar en el análisis matemático y sobre ecuaciones diferenciales además de las funciones generalizadas pero en este caso solo se conoció una parte de ella debido a que existen muchos mas parámetros y idealizaciones que modelan mejor la estructura teniendo de esta manera que profundizar mucho mas en el tema A pesar de ello nos pudimos dar cuenta que todo tiene una secuencia y un fundamento









CONCLUSIONES Demostramos que la programación es muy importante en la carrera de ingeniera civil así mismo como para otras carrera de ingeniería por que nos permite simular problemas difíciles además que ayuda en las tareas repetitivas. También pudimos observar que contribuye al aprendizaje del alumno por que se exploro mucho mas de lo aplicado en clases contribuyendo de esta manera a un mayor entendimiento de los problemas. Por otra parte creemos que seria de gran ayuda para los docentes por que permite explicar los procedimientos mas eficientemente paso a paso para que el alumno pueda comprenderlos rápidamente siendo este un punto de vital importancia por que permitiría abarcar otros temas al que no se podría llegar sin la ayuda de la programación. Y por ultimo consideramos que al estar siempre familiarizado con la programación ayuda aun mejor manejo de los programas complejos que pudiesen existir . Ya que siempre se necesita estar actualizado pero sin perdernos en el camino

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF