%%HP: T(1)A(D)F(.);
DIR
  dime
    
      DO
"  DIMENSIONAMENTO DE

       VIGAS T

   Geraldo Leonel

"
1 DISP .1 WAIT 3
FIX 1 'S.' STO
"DADOS INICIAIS" {
{ "FCK="
"FCK EM MPA" 0 } {
"ACO="
"ACO CA 50 OU CA 60"
0 } { "MD="
"MOM. MD+ OU MD- EM MOD.M.MN"
0 } { "BF="
"LARGURA DA MESA EM M"
0 } { "BW="
"LARGURA DA ALMA EM M"
0 } { "HF="
"ALTURA DA MESA EM M"
0 } { "H="
"ALTURA DA VIGA EM M"
0 } { "COMPR="
"COMPRESSAO SUP.1 OU INF.2"
0 } } { 2 8 } { } {
} INFORM DROP { fck
ACO Md bf bw hf h
Cp } STO CLLCD
        IF ACO 50
==
        THEN 4.07
'yd' STO
        ELSE 4.47
'yd' STO
        END .95 h *
'd' STO "d=" d STR
+ " m" + 1 DISP 0
WAIT
" d=.95*h  fcd=fck/1.5
   CA 50yd=4.07
   CA 60yd=4.47
  Kmd=Md/(b*d*fcd)
   x=Kx*d  z=Kz*d"
1 DISP 0 WAIT CLEAR
"d arredondado ?" d
STR INPUT OBJ 'd'
STO fck 1.5 / 'fcd'
STO
        IF Cp 1 ==
        THEN bf
'bf' STO
        ELSE bw
'bf' STO
        END d 2 ^
fcd * bf * INV Md *
'Kmd' STO "Kmd="
Kmd STR + CLLCD 1
DISP 0 WAIT CLEAR
"ENTRE COM O VALOR DE
Kmd NA TAB. PARAB.RET."
1 DISP 0 WAIT CLEAR
"TABELA PARAB. RETANG."
{ { "KX=" } { "KZ="
} { "sd=" } {
"c="
"VALOR TABELADO VEZES MIL"
} { "s="
"VALOR TABELADO VEZES MIL"
} } { 2 5 } { } { }
INFORM DROP { kx kz
sd C S } STO CLLCD
kx d * 'X' STO kz d
* 'Z' STO
        IF bf bw ==
        THEN h 'hf'
STO
        END
        IF X hf 
        THEN
"VIGA T NO REAL"
MSGBOX 1 'V' STO
        ELSE
"  VIGA T REAL"
MSGBOX 2 'V' STO
        END DOM
        IF V 1 ==
        THEN
          IF S. 2
==
          THEN
"ARMAD. DUPLA"
MSGBOX AD.
          ELSE
"ARMAD. SIMPLES"
MSGBOX AS.
          END
        ELSE VTR
        END dig
LCD 0 WAIT "OPCAO"
{ "NOVO MOMENTO ?"
} CLLCD 1 CHOOSE
      UNTIL 0 ==
      END { w Rst2
c As Rst1 Ralma
Rcaba Cp Md2 Md1
sd S C V kz kx
Kmd fcd yd h hf bw
bf ACO fck S. X Rcc
As Z Md Kz d K GG
FYK M2 M1 FD sd
Malma Maba Kx }
PURGE STD CLEAR
    
  calc
    DIR
      CST {
CALCULO. }
      CALCULO.
         CLLCD
"  DIMENSIONAMENTO DE

       VIGAS T

   Geraldo Leonel

"
1 DISP .1 WAIT :0:
dime EVAL
        
    END
  FAD
     "FADIGA" { {
"FADIGA="
"INCLUIR FADIGA SIM1 NAO2"
0 } { "M.MAX="
"M.MAX ( > MODULO ) C/ SINAL"
0 } { "M.MIN="
"M.MIN ( < MODULO ) C/ SINAL"
0 } { "COEF.="
"COEFIC. P/ CALCULO DE K"
0 } } { 1 4 } { } {
} INFORM DROP { FD
M1 M2 w } STO ACO
10 * 'FYK' STO
      IF FD 1 ==
      THEN M1 M2 *
'GG' STO
        IF GG 0 >
        THEN 1 M2
M1 / - FYK * w /
'K' STO
        ELSE 1 M2
M1 2 * / - FYK * w
/ 'K' STO
        END
      ELSE 1 'K'
STO
"  SEM FADIGA !"
MSGBOX
      END CLLCD
    
  DOM
    
      CASE C 0 == S
10 == AND
        THEN
" RETA LIM. DOM. 1 e 2"
A.
        END C 0 < C
-3.5 > AND S 10 ==
AND
        THEN
"   DOMNIO 2"
MSGBOX
        END C 0 > C
10 < AND S 10 ==
AND
        THEN
"   DOMNIO 1"
MSGBOX
        END C 10 ==
S 10 == AND
        THEN
"    RETA a" MSGBOX
        END C -3.5
> C -2 < AND S 0 <
S -2 > AND AND
        THEN
"   DOMNIO 5"
MSGBOX
        END C -2 ==
S -2 == AND
        THEN
"    RETA b" MSGBOX
        END S 10 ==
C -3.5 == AND
        THEN
" RETA LIM. DOM. 2 e 3"
A.
        END S 10 <
S yd > AND C -3.5
== AND
        THEN
"   DOMNIO 3"
MSGBOX
        END S yd
== C -3.5 == AND
        THEN
" RETA LIM. DOM. 3 e 4"
A.
        END S yd <
S 0 > AND C -3.5 ==
AND
        THEN
"   DOMNIO 4"
MSGBOX 2 'S.' STO
        END S 0 ==
C -3.5 == AND
        THEN
"RETA LIM. DOM. 4 e 4a
ou 4a e 5  verificar"
A. 2 'S.' STO
        END
" DOMNIO INEXISTENTE
 consulte o diagrama
e refaa os clculos !"
A. dig LCD 0 WAIT
      END CLEAR
    
  AS.
     sd d * kz *
INV 10000 * Md *
'As' STO FAD K As *
'As' STO Md Z /
'Rcc' STO
"     Rcc=Rst=Md/z"
1 DISP 0 WAIT
"DIAGR. TENSAO-DEFORM."
"x=" X STR + "m" +
"K*As=" As STR +
"cm" + "Rcc=" Rcc
STR + "MN" + "z="
Z STR + "m" +
"Rst=" Rcc STR +
"MN" + 5 LIST
CLLCD 0 CHOOSE
CLEAR barra
    
  VTR
    
"Rst1=.85*fcd*hf(bf-bw)
Rcaba=Rst1  Ralma=Rst2
  Maba=Rcaba*(d-hf/2)
     Md=Md-Maba
  Kmd=Md/(bw*d*fcd)
     Rst2=Md/z
As=(Rst1+Rst2)1E4/sd"
1 DISP 0 WAIT CLLCD
bf bw - hf * fcd *
.85 * 'Rcaba' STO d
hf 2 / - 'c' STO c
Rcaba * 'Maba' STO
Md Maba - 'Malma'
STO fcd d 2 ^ * bw
* INV Malma * 'Kmd'
STO "Kmd=" Kmd STR
+ 1 DISP 0 WAIT
CLEAR
"ENTRE C/ Kmd NA TABE-
LA RETANGULAR"
1 DISP 0 WAIT
"TABELA RETANGULAR"
{ { "KX=" } { "KZ="
} { "SD=" } {
"C="
"VALOR TABELADO VEZES MIL"
} { "S="
"VALOR TABELADO VEZES MIL"
} } { 2 5 } { } { }
INFORM DROP CLLCD {
Kx Kz sd C S } STO
DOM Kx d * 'X' STO
Kz d * 'Z' STO
Malma Z / 'Ralma'
STO Rcaba Ralma +
10000 * sd / 'As'
STO FAD K As * 'As'
STO "As=" As STR +
" cm" + 1 DISP 0
WAIT barra
"DIAGR. TENSAO-DEFORM."
"x=" X STR + "m" +
"Rcaba=" Rcaba STR
+ "MN" + "c=" c
STR + "m" +
"Rst1=" Rcaba STR
+ "MN" + "Maba="
Maba STR + "mMN" +
"Ralma=" Ralma STR
+ "MN" + "z=" Z
STR + "m" +
"Rst2=" Ralma STR
+ "MN" + "Malma="
Malma STR + "mMN"
+ 9 LIST 0 CLLCD
CHOOSE CLEAR
    
  AD.
    
      IF ACO 50 ==
      THEN { .462
.808 434.8 .257
-3.5 4.07 -420.1 }
{ kx kz sd Kmd C S
sd } STO
      ELSE { .462
.808 515.2 .257
-3.5 4.47 -493.7 }
{ kx kz sd Kmd C S
sd } STO
      END
"As=(Rst1+Rst2)1E4/sd
  As=(Rst2E4)/sd
  Md1=Kmd*bw*d*fcd
Md2=Md-Md1  Rst2=Md2/c
   Rst1=Rcc=Md1/z"
1 DISP 0 WAIT CLEAR
fcd d 2 ^ * bw *
Kmd * 'Md1' STO Md
Md1 - 'Md2' STO kx
d * 'X' STO kz d *
'Z' STO Md1 kz d *
/ 'Rst1' STO h d -
2 NEG * h + 'c' STO
c INV Md2 * 'Rst2'
STO Rst1 Rst2 +
10000 * sd / 'As'
STO FAD K As * 'As'
STO "As=" As STR +
" cm" + CLLCD 1
DISP 0 WAIT barra
Rst2 10000 * sd /
-1 * 'As' STO
"As=" As STR +
" cm" + CLLCD 1
DISP 0 WAIT As
'As' STO barra
"DIAGR. TENSAO-DEFORM."
"kx=" kx STR +
"kz=" kz STR +
"sd=" sd STR +
"c=" C STR +
"s=" S STR +
"sd=" sd STR +
"Rst1=" Rst1 STR +
"MN" + "z=" Z STR
+ "m" + "Rcc=" Rst1
STR + "MN" +
"Rst2=" Rst2 STR +
"MN" + "c=" c STR
+ "m" + "x=" X STR
+ "m" + 12 LIST 0
CLLCD CHOOSE CLEAR
    
  barra
     STD
"QUANTIDADE E BITOLA"
As .32 / CEIL STR
" _6,3mm" + As .5
/ CEIL STR
" _8mm" + As .8 /
CEIL STR " _10mm"
+ As 1.25 / CEIL
STR " _12,5mm" +
As 2 / CEIL STR
" _16mm" + As 3.15
/ CEIL STR
" _20mm" + As 4.91
/ CEIL STR
" _25mm" + 7 LIST
0 CLLCD CHOOSE
CLEAR 3 FIX
    
  dig
GROB 86 40 0000000000000000030E830000000000000C10040880000000000000041077EE8300000000000004100108020000000000000C10070EA100000000000000000000006D6BD6BD6BD6BDFFFFFF302000000000000B00020E10000000000000C80002EF00EFFFFFFFFFFFFF000E950020000000000C080083620020000000000308007A11002000000000E0080E06800020000000081008E183C0002000000006000C106260002000000081008B0812300020000000600078060A100020000008100E08810E00002000000700E10860070000200000C00C1008108200002000003083000E0043000020000C0070008900A200002000030E000068005200002000C0E10008180822000020003C1000060804120000200E83000081080A0200002081700000600805020000206E00000810088402000028F10000060008420200002E10000081000821020000A300000070000890020000EFFFFFFFFFFFFF4002000000000000100008200200002000000000000810020000E6BBD6BD7BD6BDFFF300000000000000000000000000A300000000000C10000000B200000000000410000000A200000000000410000000F300000000000C10000000
  A.
     CLLCD 3 DISP
0 WAIT CLLCD
    
END
