VETTONES

Características del lenguaje de programación propio.

Para sacar un máximo de aprovechamiento de las posibilidades del programa,
la entrada de datos debe hecerse mediante archivos de texto con las ordenes
necesarias para definir el modelo o realizar los cálculos deseados.

El programa dispone de un lenguaje de programación semejante al 'basic'.
De forma resumida sus características son:
  • Definir variables y matrices.
  • Funciones matemáticas (sin(), cos(),exp(),...)
  • Ordenes para asignar a variables valores de datos o resultados del modelo.
  • Bucles FOR-NEXT.
  • Sentencias condicionales IF-ENDIF.
  • Funciones definidas por el usuario, orden DEFFUN-ENDFUN.
  • En el siguiente ejemplo se crea mediante un bucle FOR nudos formando un arco de círculo:

    FOR,I=1,NA,1
       //ángulo con la horizontal
       SET,A=45.0 + 90.0 / ( NA-1 ) * ( I-1 )
       // cálcula las coordenadas
       SET,X= +RADIO * COS( A )
       SET,Y= +RADIO *SIN( A )
       //crea el nudo
       N,I, X,Y
    NEXT

    En el siguiente ejemplo se define una función que calcula la ordenada de una parábola,
    y luego se usa esa función para crear nudos:

    DEFFUN,PARABOLA,D|Z,D|L,D|F,D|X
       SET,S=-L+X
       SET,Z=F*(1-((S/L)^2))
    ENDFUN

    FOR,I=0,NA,1
       SET,X=LA/NA*I
       CALLFUN,PARABOLA,Z,(LP/2.0),(FLECHA),(X)
       N,I+1, X,0.0,Z
    NEXT

    Ejemplo en que se definen las valores en un sistema de unidades diferente,
    según el valor de una variable:

    //acero (t/m2)
    IF,DINA,0
       MP,1,2.1e7,0.3
       DECLARASET,DENS=7.85
    ENDIF

    //acero (N/m2)
    IF,DINA,1
       MP,1,2.1e11,0.3
       DECLARASET,DENS=7850
    ENDIF

    En el siguiente ejemplo una vez calculada una viga mediante cálculo lineal, se calcula
    las curvaturas de la sección fisurada, y se modifica las características mecánicas
    de acuerdo con las curvaturas obtenidas.

    //bucle para las barras
    FOR,I=1,N,1
       // asigna al vector 'E' los esfuerzos en el elemento
       SETEE,E,I
       //axil en medio de la barra
       SET,Y=(-E[0]+E[3])/2.0
       //momento en medio de la barra
       SET,M=(E[2]-E[5])/2.0
       //cálculo de las curvaturas
       //para la sección de hormigón activa (previamente definida)
       VSETCUR,A,C,D, Y,M,0.0
       //inercia fisurada
       SET,J=M/C/E
       //area fisurada
       SET,K=Y/A/E
       //nuevas características mecánicas
       R,I, K, 0.0, J , B*H*2.5
    NEXT