Go to Top

Proceso iterativo

Proces1Una vez la estructura ha sido materializada (cada barra representa un sección determinada de un material determinado), podemos empezar el proceso de cálculo. Para ello disponemos de tres posibilidades:

  • Menú Calcular|Proceso iterativo
  • Tecla F5
  • Botón Run

Con cualquiera de ellos obtenemos la ventana que se muestra a la derecha de este texto. Esta ventana es como el tablero de mandos que nos va a permitir manipular el proceso iterativo de cálculo, pues no debemos olvidar que tratamos estructuras de comportamiento no lineal.

En esta ventana existen diferentes grupos de controles, encerrados en un rectángulo. Vamos a comentar cada uno de ellos:

Fuerzas desequilibradas

Se trata de valores informativos. Los da el propio programa y, evidentemente, el usuario no los puede manipular:

  • DpMax
    Nos informa del desequilibrio máximo (valor absoluto) que hay en un nudo, en cualquiera de los ejes X,Y,Z. En la imagen el valor es de 0,4 kg
  • DpTotal
    Nos informa de la suma de todos los desequilibrios (en valor absoluto) que hay en todos los nudos, en cualquiera de los ejes X,Y,Z. En la imagen el valor es de 3 kg
  • Nudo
    Nos informa cual es el nudo que ha generado el valor DpMax
  • Eje
    Nos informa en qué eje se ha generado el valor DpMax
  • DfMax
    Nos informa cual ha sido el desplazamiento máximo, en cualquiera de los ejes X,Y,Z, de los nudos de la estructura en la última iteración. En el caso de la imagen es cero, lo que significa que la estructura todavía no se ha desplazado, es decir no ha empezado el proceso iterativo.

A continuación hay una línea separadora i le siguen otros valores que a diferencia de los anteriores sí pueden ser modificados por el usuario

  • DefMax
    Éste es el valor máximo de desplazamiento en cada iteración, en cualquiera de los ejes X,Y,Z, que le vamos a permitir a la estructura. Se trata de un valor delicado, ya que si permitimos grandes desplazamientos a cada iteración, la estructura se acerca mas rápidamente a la posición de equilibrio, pero es más fácil de que el proceso se vuelva inestable, la estructura quede completamente deformada y jamás alcancemos el equilibrio. Por contra, si limitamos mucho este valor, el movimiento es muy lento, con lo que el proceso iterativo se hace muy largo, pero el peligro de deformación total de la estructura es mínimo.
    De forma empírica se aconseja empezar el proceso con un valor de 100 mm. Si la estructura es muy grande y los desplazamientos finales se intuyen también muy grandes, podemos optar por valores mayores de hasta 1000 mm.
    Si cuando nos acercamos al equilibrio, observamos que el proceso iterativo ha quedado estancado, podemos disminuir lentamente (con las flechas que hay al lado de la casilla) el valor de DefMax y observaremos un aumento más rápido de la convergencia.(Llamamos convergencia al proceso de encontrar el equilibrio por medio de iteraciones)
  • Precisión
    Un proceso iterativo tiende a encontrar el equilibrio. Pero siempre habrá que definir qué entendemos por equilibrio. Trabajando con valores numéricos con muchos decimales, un equilibrio perfecto es prácticamente imposible de alcanzar. Además de ser absurdo, ya que la realidad material de lo que estamos calculando está muy alejada de los métodos numéricos que estamos usando.
    WinTess3 usa por defecto el valor de 1 kg (10 N) como equilibrio aceptable. Es decir, si el valor absoluto de DpMax es igual o inferior a 1 kg, aceptaremos que la estructura está en equilibrio.
  • Num. Max. Iter.
    En todo proceso iterativo cabe la posibilidad que no haya convergencia. Por la razón que sea. Es pues interesante tener la posibilidad de detener este proceso en un momento determinado. El número de iteraciones está muy ligado con el método de cálculo. En estos momentos el único método de calculo operativo para un usuario normal es el Método matricial, por lo tanto las consideraciones que hagamos se refieren a este método.
    Por defecto aparece el valor de 100000 que es lo mismo que decir que no pare nunca hasta que encuentre el equilibrio. Sin embargo, habrá veces en las que nos interese detener el proceso en un momento determinado (un caso habitual es aquel en que solamente se desea que haga una iteración) para poder observar cual ha sido el desplazamiento y tomar decisiones a posteriori. Pero podríamos detener el proceso cada 5 iteraciones o algo parecido.

Matrix

En este recuadro se nos informa de ciertos valores relacionados con el método matricial:

  • NumInc
    Es el número total de incógnitas de la matriz de rigidez de la estructura. Un nudo libre típico de la malla genera tres incógnitas: desplazamientos X,Y,Z. En cambio un nudo extremo de una barra rígida genera seis incógnitas: desplazamientos X,Y,Z y rotaciones X,Y,Z.
  • Iamb
    Este valor, llamado ancho de banda, indica las relaciones entre de las incógnitas de los dos nudos de una barra. Así si los desplazamientos X,Y,Z del nudo i de una barra son los 135,136,137 y los desplazamientos X,Y,Z del nudo j de una barra son los 314,315,316, el ancho de banda de esta barra es de 316-135 = 181. Pues bien el ancho de banda máximo de todas las barras es el ancho de banda de la matriz de rigidez. Teniendo en cuenta que la numeración de las incógnitas (135, 136, …) se produce de acuerdo con la numeración de los nudos, se ve que esta numeración de nudos no es baladí. Cuando se genera una malla el programa numera automáticamente los nudos, pero luego, durante el proceso de modificación de la malla, la inclusión de elementos externos, tales como arcos, mástiles, etc., esta numeración puede resultar inadecuada.
    Para ello el programa dispone de un menú Nudos|Renumerar todos los nudos que reorganiza la numeración de nudos. En caso de duda es interesante ejecutar este menú y observar si el valor Iamb ha disminuido. Ello acelerará de forma clara el proceso iterativo de calculo.
  • NumTerm
    Es el número de términos de la matriz de rigidez. Se obtiene multiplicando NumInc por Iamb.
  • Size
    Es el tamaño en bytes de la matriz de rigidez. Como el cálculo se desarrolla con valores reales de doble precisión (8 bytes) el tamaño de la matriz es igual a NumTerm por ocho.

Método de cálculo

Aunque el programa dispone de diversos métodos de cálculo, la mayoría de ellos solamente pueden usarse desde dentro del programa, en trabajos de investigación. De momento el único que está disponible es el método matricial comentado anteriormente. Sin embargo, como acabamos de decir, el programa dispone interiormente de otros métodos de cálculo (es posible que en un futuro a medio plazo estén disponibles).

  • Relajación dinámica
    Método iterativo muy popular en el cálculo no lineal basado en simular procesos de movimientos con aceleraciones y amortiguaciones de unas masas ficticias situadas en los nudos. (http://en.wikipedia.org/wiki/Dynamic_relaxation)
  • Relajación geométrica
    Método derivado del anterior, con un proceso de iteración más rápido pero con una convergencia más lenta, sobretodo para precisiones pequeñas.
  • Punto a punto
    Método lento pero didáctico en el que se va equilibrando la estructura nudo a nudo, liberando cada vez el nudo con mayor desequilibrio y equilibrándolo. (Es un método parecido al método de Cross en el caculo de pórticos)

Proceso iterativo

En este recuadro existen dos valores informativos:

  • Número de iteraciones
    Nos va indicando cuantas iteraciones llevamos realizadas. Cuando se pulsa el botón Empieza este valor vuelve a cero.
  • Tiempo
    Nos va indicando cuanto tiempo llevamos en el proceso iterativo. Este valor solamente se actualiza a cada nueva iteración. Cuando se pulsa el botón Empieza este valor vuelve a cero.

Además tenemos algunas casillas de verificación:

  • Actualiza gráficos
    Si la casilla está marcada, a cada iteración se redibuja la estructura en la ventana principal, de forma que podamos observar el proceso de desplazamiento.
  • Actualiza las cargas superficiales
    Si la casilla está marcada, a cada iteración se recalculan las acciones sobre la estructura, ya que ciertas acciones (viento, nieve, …) dependen de la forma de la estructura.
  • Actualiza presión interior
    Esta casilla solamente está operativa en los casos en que la presión interior no es cero. Si la casilla está marcada, a cada iteración se recalcula la presión interior, teniendo en cuenta el cambio de volumen interior. Este valor de presión interior actualizado aparece entre paréntesis a continuación de la presión interior inicial, que se muestra más abajo en el recuadro de Acciones .PresionActualTambién podemos ver los valores del volumen actual y del volumen inicial, es decir en el estado de equilibrio antes de aplicar las acciones externas, justo debajo de del texto de la casilla.
    VolumenInicial
    Puede ser que el valor de volumen inicial calculado por WinTess (desde el plano Z = 0 hasta la membrana) no sea el volumen inicial real. En este caso podremos escribir directamente en la casilla el valor del volumen inicial.
    Deberemos ir con mucho cuidado con este cambio ya que el resultado puede ser muy diferente.
    Se recomienda leer el texto del blog Las estructuras neumáticas y la presión interior.

Elementos triangulares

Se trata de una disyuntiva que solamente está operativa (de momento) para trabajos de investigación cuando se ejecuta el programa desde el código. Las opciones son:

  • Barras
    Se trata del método de cálculo en el cual las membranas superficiales se discretizan en forma de malla de barras. De momento es el único método operativo.
  • Elementos finitos
    Se trata del método de cálculo en el cual las membranas superficiales se discretizan en forma de triángulos y se analizan usando el método de los elementos finitos. No está disponible de momento. (Teniendo en cuenta el auge del uso de ETFE, es posible que próximamente esté disponible para todos los usuarios).

Acciones

Debajo del recuadro de los Elementos triangulares podemos ver las acciones que han sido aplicadas a la estructura que estamos analizando.

Botones

Finalmente nos encontramos con los tres botones que inician o detienen los procesos comentados hasta ahora:

  • Empieza
    La estructura vuelve al estado inicial y empieza el proceso iterativo otra vez.
  • Continúa
    Empieza el proceso iterativo no desde la forma inicial sino desde la forma que tenga la estructura en este momento.
  • Salir / Stop
    Este botón puede tener dos funciones según el texto que lleve. Cuando el proceso iterativo de cálculo está detenido el texto es Salir. Pulsando este botón se cierra la ventana de Cálculo de la estructura. Ahora bien si nos encontramos en pleno proceso iterativo, el texto del botón es Stop. Pulsándolo el proceso iterativo se detiene y podemos realizar cualquier operación. Después podremos empezar de nuevo el proceso, continuarlo o sencillamente salir y cerrar la ventana.