FINITE ELEMENTS - 50G to Prime
06-05-2014, 11:06 AM (This post was last modified: 06-05-2014 11:17 AM by VitorMT.)
Post: #1
 VitorMT Junior Member Posts: 2 Joined: Jun 2014
FINITE ELEMENTS - 50G to Prime
Hi everyone

I´m having some issues transfering my 50G programs to Prime, and i need some help to understand better how to program in this case.
It´s a program to help solving structures using Finite Elements method.

On 50G the program works on CHDIR>INFO>ENTER, so i dont know how to make it work on a Prime App.

Folder - FIN - With 2 files Assemb~1 and INFO

Filecodes

Assemb~1

« 1. 'N' STO
[[ 0. ]]
DO
[[ 0. ]] 1. COL+ N 1. + 'N' STO
UNTIL 'N==Œ+ß'
END 1. 'N' STO
DO DUP N 1. + 'N' STO
UNTIL 'N==Œ+ß'
END 1. 'N' STO
DO 1. ROW+ N 1. + 'N' STO
UNTIL 'N==Œ+ß'
END 1. 'N' STO
DO DUP N 1. + 'N' STO
UNTIL 'N==ELEM'
END
CASE 'EL1==M OR EL1==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+1.' NUM GET 'Y' STO LM '0.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H GET PUT LM '1.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 1. + GET PUT LM '2.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 2. + GET PUT LM '3.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS1' STO
END 'EL1==V OR EL1==P OR EL1==TT OR EL1==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+1.' NUM GET 'Y' STO LM '0.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H GET PUT LM '1.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 1. + GET PUT LM '2.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 2. + GET PUT LM '3.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 3. + GET PUT LM '4.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 4. + GET PUT LM '5.*ELEM+1.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR1 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS1' STO
END
END
CASE 'EL2==M OR EL2==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+2.' NUM GET 'Y' STO LM '0.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H GET PUT LM '1.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 1. + GET PUT LM '2.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 2. + GET PUT LM '3.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS2' STO
END 'EL2==V OR EL2==P OR EL2==TT OR EL2==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+2.' NUM GET 'Y' STO LM '0.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H GET PUT LM '1.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 1. + GET PUT LM '2.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 2. + GET PUT LM '3.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 3. + GET PUT LM '4.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 4. + GET PUT LM '5.*ELEM+2.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR2 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS2' STO
END
END
CASE 'EL3==M OR EL3==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+3.' NUM GET 'Y' STO LM '0.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H GET PUT LM '1.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 1. + GET PUT LM '2.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 2. + GET PUT LM '3.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS3' STO
END 'EL3==V OR EL3==P OR EL3==TT OR EL3==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+3.' NUM GET 'Y' STO LM '0.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H GET PUT LM '1.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 1. + GET PUT LM '2.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 2. + GET PUT LM '3.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 3. + GET PUT LM '4.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 4. + GET PUT LM '5.*ELEM+3.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR3 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS3' STO
END
END
CASE 'EL4==M OR EL4==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+4.' NUM GET 'Y' STO LM '0.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H GET PUT LM '1.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 1. + GET PUT LM '2.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 2. + GET PUT LM '3.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS4' STO
END 'EL4==V OR EL4==P OR EL4==TT OR EL4==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+4.' NUM GET 'Y' STO LM '0.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H GET PUT LM '1.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 1. + GET PUT LM '2.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 2. + GET PUT LM '3.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 3. + GET PUT LM '4.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 4. + GET PUT LM '5.*ELEM+4.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR4 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS4' STO
END
END
CASE 'EL5==M OR EL5==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+5.' NUM GET 'Y' STO LM '0.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H GET PUT LM '1.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 1. + GET PUT LM '2.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 2. + GET PUT LM '3.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS5' STO
END 'EL5==V OR EL5==P OR EL5==TT OR EL5==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+5.' NUM GET 'Y' STO LM '0.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H GET PUT LM '1.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 1. + GET PUT LM '2.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 2. + GET PUT LM '3.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 3. + GET PUT LM '4.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 4. + GET PUT LM '5.*ELEM+5.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR5 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS5' STO
END
END
CASE 'EL6==M OR EL6==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+6.' NUM GET 'Y' STO LM '0.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H GET PUT LM '1.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 1. + GET PUT LM '2.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 2. + GET PUT LM '3.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS6' STO
END 'EL6==V OR EL6==P OR EL6==TT OR EL6==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+6.' NUM GET 'Y' STO LM '0.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H GET PUT LM '1.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 1. + GET PUT LM '2.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 2. + GET PUT LM '3.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 3. + GET PUT LM '4.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 4. + GET PUT LM '5.*ELEM+6.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR6 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS6' STO
END
END
CASE 'EL7==M OR EL7==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+7.' NUM GET 'Y' STO LM '0.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H GET PUT LM '1.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 1. + GET PUT LM '2.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 2. + GET PUT LM '3.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS7' STO
END 'EL7==V OR EL7==P OR EL7==TT OR EL7==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+7.' NUM GET 'Y' STO LM '0.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H GET PUT LM '1.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 1. + GET PUT LM '2.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 2. + GET PUT LM '3.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 3. + GET PUT LM '4.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 4. + GET PUT LM '5.*ELEM+7.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR7 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS7' STO
END
END
CASE 'EL8==M OR EL8==B'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+8.' NUM GET 'Y' STO LM '0.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H GET PUT LM '1.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 1. + GET PUT LM '2.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 2. + GET PUT LM '3.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 3. + GET PUT W 1. + 'W' STO H 4. + 'H' STO
UNTIL 'W==4.'
END 'W' PURGE 'H' PURGE 'ASS8' STO
END 'EL8==V OR EL8==P OR EL8==TT OR EL8==TD'
THEN 0. 'W' STO 1. 'H' STO
DO LM 'W*ELEM+8.' NUM GET 'Y' STO LM '0.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H GET PUT LM '1.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 1. + GET PUT LM '2.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 2. + GET PUT LM '3.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 3. + GET PUT LM '4.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 4. + GET PUT LM '5.*ELEM+8.' NUM GET 'Z' STO
'(Y-1.)*(Œ+ß)+Z' NUM MR8 H 5. + GET PUT W 1. + 'W' STO H 6. + 'H' STO
UNTIL 'W==6.'
END 'W' PURGE 'H' PURGE 'ASS8' STO
END
END
CASE 'ELEM==1.'
THEN ASS1 'ASS' STO
END 'ELEM==2.'
THEN 'ASS1+ASS2' NUM 'ASS' STO
END 'ELEM==3.'
THEN 'ASS1+ASS2+ASS3' NUM 'ASS' STO
END 'ELEM==4.'
THEN 'ASS1+ASS2+ASS3+ASS4' NUM 'ASS' STO
END 'ELEM==5.'
THEN 'ASS1+ASS2+ASS3+ASS4+ASS5' NUM 'ASS' STO
END 'ELEM==6.'
THEN 'ASS1+ASS2+ASS3+ASS4+ASS5+ASS6' NUM 'ASS' STO
END 'ELEM==7.'
THEN 'ASS1+ASS2+ASS3+ASS4+ASS5+ASS6+ASS7' NUM 'ASS' STO
END 'ELEM==8.'
THEN 'ASS1+ASS2+ASS3+ASS4+ASS5+ASS6+ASS7+ASS8' NUM 'ASS' STO
END
END 'Z' PURGE 'Y' PURGE Œ ß + 'N' STO ASS
DO N COL- DROP N ROW- DROP N 1. - 'N' STO
UNTIL 'N==Œ'
END 'KŒŒ' STO ASS 1. 'N' STO
DO 1. COL- DROP 1. ROW- DROP N 1. + 'N' STO
UNTIL 'N==Œ+1.'
END 'Kßß' STO Œ ß + 'N' STO 1. 'S' STO ASS
DO N ROW- DROP N 1. - 'N' STO
UNTIL 'N==Œ'
END
DO 1. COL- DROP S 1. + 'S' STO
UNTIL 'S==Œ+1.'
END 'KŒß' STO KŒß TRN 'KßŒ' STO 'N' PURGE 'S' PURGE
»

--------------------------------------------------------------------------------
INFO

« "INF. INICIAIS" { "Œ:" "ß:" { "ELEM:" "NÚMERO DE ELEMENTOS " } { "E1:"
"TIPO DO ELEM. 1 (M,B,V,P,TT,TD)" } { "E2:" "TIPO DO ELEM. 2
(M,B,V,P,TT,TD)" } { "E3:" "TIPO DO ELEM. 3 (M,B,V,P,TT,TD)" } { "E4:" "TIPO
DO ELEM. 4 (M,B,V,P,TT,TD)" } { "E5:" "TIPO DO ELEM. 5 (M,B,V,P,TT,TD)" } {
"E6:" "TIPO DO ELEM. 6 (M,B,V,P,TT,TD)" } { "E7:" "TIPO DO ELEM. 7
(M,B,V,P,TT,TD)" } { "E8:" "TIPO DO ELEM. 8 (M,B,V,P,TT,TD)" } } { 3. 0. } {
} { 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. } INFORM
IF
THEN
ELSE
END OBJ DROP 'EL8' STO 'EL7' STO 'EL6' STO 'EL5' STO 'EL4' STO 'EL3' STO
'EL2' STO 'EL1' STO 'ELEM' STO 'ß' STO 'Œ' STO 1. 'M' STO 2. 'B' STO 3. 'V' STO
4. 'P' STO 5. 'TT' STO 6. 'TD' STO
CASE 'EL1==M'
THEN
« "MOLA(1)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K1' STO 2. GET NUM '•1' STO 'COS(•1)' NUM 'M1'
STO 'SIN(•1)' NUM 'N1' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M1^2.' NUM PUTI 'N1*M1' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N1^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K1 *
» EVAL 'MR1' STO 'M1' PURGE 'N1' PURGE '•1' PURGE 'K1' PURGE
END 'EL1==B'
THEN
« "BARRA(1)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E1' STO DUP 2. GET NUM 'A1' STO DUP 3. GET NUM
'L1' STO 4. GET NUM '•1' STO 'COS(•1)' NUM 'M1' STO 'SIN(•1)' NUM 'N1' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M1^2.' NUM PUTI 'N1*M1' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N1^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A1 E1 * L1 / *
» EVAL 'MR1' STO 'N1' PURGE 'M1' PURGE '•1' PURGE 'E1' PURGE 'A1' PURGE
'L1' PURGE
END 'EL1==V'
THEN
« "VIGA(1)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E1' STO DUP 2. GET NUM 'I1' STO DUP 3. GET NUM
'L1' STO 4. GET NUM '•1' STO '12.*E1*I1/L1^3.' NUM 'ø1' STO '6.*E1*I1/L1^2.'
NUM '–1' STO '2.*E1*I1/L1' NUM '—1' STO 'COS(•1)' NUM 'M1' STO 'SIN(•1)'
NUM 'N1' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø1*N1^2.' NUM PUTI '-ø1*M1*N1' NUM PUTI '-–1*N1'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø1*M1^2.' NUM PUTI '–1*M1' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—1' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—1' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR1' STO 'M1' PURGE 'N1' PURGE '•1' PURGE 'E1' PURGE 'I1' PURGE
'L1' PURGE
END 'EL1==P'
THEN
« "PÓRTICO(1)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E1' STO DUP 2. GET NUM 'I1' STO DUP 3. GET NUM
'L1' STO DUP 4. GET NUM 'A1' STO 5. GET NUM '•1' STO '12.*E1*I1/L1^3.' NUM
'ø1' STO '6.*E1*I1/L1^2.' NUM '–1' STO '2.*E1*I1/L1' NUM '—1' STO 'A1*E1/L1'
NUM 'ß1' STO 'SIN(•1)' NUM 'N1' STO 'COS(•1)' NUM 'M1' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø1*N1^2.+ß1*M1^2.' NUM PUTI '(ß1-ø1)*M1*N1' NUM
PUTI '-–1*N1' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø1*M1^2.+ß1*N1^2.' NUM PUTI
'–1*M1' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—1' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—1' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—1' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—1' NUM PUT
» EVAL 'MR1' STO 'M1' PURGE 'N1' PURGE '•1' PURGE 'E1' PURGE 'I1' PURGE
'L1' PURGE 'A1' PURGE
END 'EL1==TT OR EL1==TD'
THEN
« "TRIANGULO(1)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X11' STO DUP 2. GET NUM 'Y11' STO DUP 3. GET NUM
'X21' STO DUP 4. GET NUM 'Y21' STO DUP 5. GET NUM 'X31' STO DUP 6. GET NUM
'Y31' STO DUP 7. GET NUM 'E1' STO DUP 8. GET NUM 't1' STO 9. GET NUM 'v1'
STO '(X11*Y21+Y11*X31+X21*Y31-Y21*X31-Y11*X21-X11*Y31)/2.' NUM 'A1' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y21-Y31' NUM PUT 3. 'Y31-Y11' NUM PUT 5.
'Y11-Y21' NUM PUT 8. 'X31-X21' NUM PUT 10. 'X11-X31' NUM PUT 12. 'X21-X11'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A1)' NUM * 'B1' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL1==TT'
THEN 1. 1. PUT 2. 'v1' NUM PUT 4. 'v1' NUM PUT 5. 1. PUT 9.
'(1.-v1)/2.' NUM PUT 'E1/(1.-v1^2.)' NUM * 'D1' STO
END 'EL1==TD'
THEN 1. '1.-v1' NUM PUT 2. 'v1' NUM PUT 4. 'v1' NUM PUT 5. '1.-v1'
NUM PUT 9. '.5-v1' NUM PUT 'E1/((1.+v1)*(1.-2.*v1))' NUM * 'D1' STO
END
END B1 TRN D1 * B1 * t1 * A1 *
» EVAL 'MR1' STO 'X11' PURGE 'Y11' PURGE 'X21' PURGE 'Y21' PURGE 'X31'
PURGE 'Y31' PURGE 'E1' PURGE 't1' PURGE 'v1' PURGE
END
END
CASE 'EL2==M'
THEN
« "MOLA(2)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K2' STO 2. GET NUM '•2' STO 'COS(•2)' NUM 'M2'
STO 'SIN(•2)' NUM 'N2' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M2^2.' NUM PUTI 'N2*M2' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N2^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K2 *
» EVAL 'MR2' STO 'M2' PURGE 'N2' PURGE '•2' PURGE 'K2' PURGE
END 'EL2==B'
THEN
« "BARRA(2)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E2' STO DUP 2. GET NUM 'A2' STO DUP 3. GET NUM
'L2' STO 4. GET NUM '•2' STO 'COS(•2)' NUM 'M2' STO 'SIN(•2)' NUM 'N2' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M2^2.' NUM PUTI 'N2*M2' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N2^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A2 E2 * L2 / *
» EVAL 'MR2' STO 'N2' PURGE 'M2' PURGE '•2' PURGE 'E2' PURGE 'A2' PURGE
'L2' PURGE
END 'EL2==V'
THEN
« "VIGA(2)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E2' STO DUP 2. GET NUM 'I2' STO DUP 3. GET NUM
'L2' STO 4. GET NUM '•2' STO '12.*E2*I2/L2^3.' NUM 'ø2' STO '6.*E2*I2/L2^2.'
NUM '–2' STO '2.*E2*I2/L2' NUM '—2' STO 'COS(•2)' NUM 'M2' STO 'SIN(•2)'
NUM 'N2' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø2*N2^2.' NUM PUTI '-ø2*M2*N2' NUM PUTI '-–2*N2'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø2*M2^2.' NUM PUTI '–2*M2' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—2' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—2' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR2' STO 'M2' PURGE 'N2' PURGE '•2' PURGE 'E2' PURGE 'I2' PURGE
'L2' PURGE
END 'EL2==P'
THEN
« "PÓRTICO(2)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E2' STO DUP 2. GET NUM 'I2' STO DUP 3. GET NUM
'L2' STO DUP 4. GET NUM 'A2' STO 5. GET NUM '•2' STO '12.*E2*I2/L2^3.' NUM
'ø2' STO '6.*E2*I2/L2^2.' NUM '–2' STO '2.*E2*I2/L2' NUM '—2' STO 'A2*E2/L2'
NUM 'ß2' STO 'SIN(•2)' NUM 'N2' STO 'COS(•2)' NUM 'M2' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø2*N2^2.+ß2*M2^2.' NUM PUTI '(ß2-ø2)*M2*N2' NUM
PUTI '-–2*N2' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø2*M2^2.+ß2*N2^2.' NUM PUTI
'–2*M2' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—2' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—2' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—2' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—2' NUM PUT
» EVAL 'MR2' STO 'M2' PURGE 'N2' PURGE '•2' PURGE 'E2' PURGE 'I2' PURGE
'L2' PURGE 'A2' PURGE
END 'EL2==TT OR EL2==TD'
THEN
« "TRIANGULO(2)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X12' STO DUP 2. GET NUM 'Y12' STO DUP 3. GET NUM
'X22' STO DUP 4. GET NUM 'Y22' STO DUP 5. GET NUM 'X32' STO DUP 6. GET NUM
'Y32' STO DUP 7. GET NUM 'E2' STO DUP 8. GET NUM 't2' STO 9. GET NUM 'v2'
STO '(X12*Y22+Y12*X32+X22*Y32-Y22*X32-Y12*X22-X12*Y32)/2.' NUM 'A2' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y22-Y32' NUM PUT 3. 'Y32-Y12' NUM PUT 5.
'Y12-Y22' NUM PUT 8. 'X32-X22' NUM PUT 10. 'X12-X32' NUM PUT 12. 'X22-X12'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A2)' NUM * 'B2' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL2==TT'
THEN 1. 1. PUT 2. 'v2' NUM PUT 4. 'v2' NUM PUT 5. 1. PUT 9.
'(1.-v2)/2.' NUM PUT 'E2/(1.-v2^2.)' NUM * 'D2' STO
END 'EL2==TD'
THEN 1. '1.-v2' NUM PUT 2. 'v2' NUM PUT 4. 'v2' NUM PUT 5. '1.-v2'
NUM PUT 9. '.5-v2' NUM PUT 'E2/((1.+v2)*(1.-2.*v2))' NUM * 'D2' STO
END
END B2 TRN D2 * B2 * t2 * A2 *
» EVAL 'MR2' STO 'X12' PURGE 'Y12' PURGE 'X22' PURGE 'Y22' PURGE 'X32'
PURGE 'Y32' PURGE 'E2' PURGE 't2' PURGE 'v2' PURGE
END
END
CASE 'EL3==M'
THEN
« "MOLA(3)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K3' STO 2. GET NUM '•3' STO 'COS(•3)' NUM 'M3'
STO 'SIN(•3)' NUM 'N3' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M3^2.' NUM PUTI 'N3*M3' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N3^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K3 *
» EVAL 'MR3' STO 'M3' PURGE 'N3' PURGE '•3' PURGE 'K3' PURGE
END 'EL3==B'
THEN
« "BARRA(3)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E3' STO DUP 2. GET NUM 'A3' STO DUP 3. GET NUM
'L3' STO 4. GET NUM '•3' STO 'COS(•3)' NUM 'M3' STO 'SIN(•3)' NUM 'N3' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M3^2.' NUM PUTI 'N3*M3' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N3^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A3 E3 * L3 / *
» EVAL 'MR3' STO 'N3' PURGE 'M3' PURGE '•3' PURGE 'E3' PURGE 'A3' PURGE
'L3' PURGE
END 'EL3==V'
THEN
« "VIGA(3)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E3' STO DUP 2. GET NUM 'I3' STO DUP 3. GET NUM
'L3' STO 4. GET NUM '•3' STO '12.*E3*I3/L3^3.' NUM 'ø3' STO '6.*E3*I3/L3^2.'
NUM '–3' STO '2.*E3*I3/L3' NUM '—3' STO 'COS(•3)' NUM 'M3' STO 'SIN(•3)'
NUM 'N3' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø3*N3^2.' NUM PUTI '-ø3*M3*N3' NUM PUTI '-–3*N3'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø3*M3^2.' NUM PUTI '–3*M3' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—3' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—3' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR3' STO 'M3' PURGE 'N3' PURGE '•3' PURGE 'E3' PURGE 'I3' PURGE
'L3' PURGE
END 'EL3==P'
THEN
« "PÓRTICO(3)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E3' STO DUP 2. GET NUM 'I3' STO DUP 3. GET NUM
'L3' STO DUP 4. GET NUM 'A3' STO 5. GET NUM '•3' STO '12.*E3*I3/L3^3.' NUM
'ø3' STO '6.*E3*I3/L3^2.' NUM '–3' STO '2.*E3*I3/L3' NUM '—3' STO 'A3*E3/L3'
NUM 'ß3' STO 'SIN(•3)' NUM 'N3' STO 'COS(•3)' NUM 'M3' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø3*N3^2.+ß3*M3^2.' NUM PUTI '(ß3-ø3)*M3*N3' NUM
PUTI '-–3*N3' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø3*M3^2.+ß3*N3^2.' NUM PUTI
'–3*M3' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—3' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—3' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—3' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—3' NUM PUT
» EVAL 'MR3' STO 'M3' PURGE 'N3' PURGE '•3' PURGE 'E3' PURGE 'I3' PURGE
'L3' PURGE 'A3' PURGE
END 'EL3==TT OR EL3==TD'
THEN
« "TRIANGULO(3)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X13' STO DUP 2. GET NUM 'Y13' STO DUP 3. GET NUM
'X23' STO DUP 4. GET NUM 'Y23' STO DUP 5. GET NUM 'X33' STO DUP 6. GET NUM
'Y33' STO DUP 7. GET NUM 'E3' STO DUP 8. GET NUM 't3' STO 9. GET NUM 'v3'
STO '(X13*Y23+Y13*X33+X23*Y33-Y23*X33-Y13*X23-X13*Y33)/2.' NUM 'A3' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y23-Y33' NUM PUT 3. 'Y33-Y13' NUM PUT 5.
'Y13-Y23' NUM PUT 8. 'X33-X23' NUM PUT 10. 'X13-X33' NUM PUT 12. 'X23-X13'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A3)' NUM * 'B3' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL3==TT'
THEN 1. 1. PUT 2. 'v3' NUM PUT 4. 'v3' NUM PUT 5. 1. PUT 9.
'(1.-v3)/2.' NUM PUT 'E3/(1.-v3^2.)' NUM * 'D3' STO
END 'EL3==TD'
THEN 1. '1.-v3' NUM PUT 2. 'v3' NUM PUT 4. 'v3' NUM PUT 5. '1.-v3'
NUM PUT 9. '.5-v3' NUM PUT 'E3/((1.+v3)*(1.-2.*v3))' NUM * 'D3' STO
END
END B3 TRN D3 * B3 * t3 * A3 *
» EVAL 'MR3' STO 'X13' PURGE 'Y13' PURGE 'X23' PURGE 'Y23' PURGE 'X33'
PURGE 'Y33' PURGE 'E3' PURGE 't3' PURGE 'v3' PURGE
END
END
CASE 'EL4==M'
THEN
« "MOLA(4)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K4' STO 2. GET NUM '•4' STO 'COS(•4)' NUM 'M4'
STO 'SIN(•4)' NUM 'N4' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M4^2.' NUM PUTI 'N4*M4' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N4^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K4 *
» EVAL 'MR4' STO 'M4' PURGE 'N4' PURGE '•4' PURGE 'K4' PURGE
END 'EL4==B'
THEN
« "BARRA(4)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E4' STO DUP 2. GET NUM 'A4' STO DUP 3. GET NUM
'L4' STO 4. GET NUM '•4' STO 'COS(•4)' NUM 'M4' STO 'SIN(•4)' NUM 'N4' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M4^2.' NUM PUTI 'N4*M4' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N4^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A4 E4 * L4 / *
» EVAL 'MR4' STO 'N4' PURGE 'M4' PURGE '•4' PURGE 'E4' PURGE 'A4' PURGE
'L4' PURGE
END 'EL4==V'
THEN
« "VIGA(4)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E4' STO DUP 2. GET NUM 'I4' STO DUP 3. GET NUM
'L4' STO 4. GET NUM '•4' STO '12.*E4*I4/L4^3.' NUM 'ø4' STO '6.*E4*I4/L4^2.'
NUM '–4' STO '2.*E4*I4/L4' NUM '—4' STO 'COS(•4)' NUM 'M4' STO 'SIN(•4)'
NUM 'N4' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø4*N4^2.' NUM PUTI '-ø4*M4*N4' NUM PUTI '-–4*N4'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø4*M4^2.' NUM PUTI '–4*M4' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—4' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—4' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR4' STO 'M4' PURGE 'N4' PURGE '•4' PURGE 'E4' PURGE 'I4' PURGE
'L4' PURGE
END 'EL4==P'
THEN
« "PÓRTICO(4)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E4' STO DUP 2. GET NUM 'I4' STO DUP 3. GET NUM
'L4' STO DUP 4. GET NUM 'A4' STO 5. GET NUM '•4' STO '12.*E4*I4/L4^3.' NUM
'ø4' STO '6.*E4*I4/L4^2.' NUM '–4' STO '2.*E4*I4/L4' NUM '—4' STO 'A4*E4/L4'
NUM 'ß4' STO 'SIN(•4)' NUM 'N4' STO 'COS(•4)' NUM 'M4' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø4*N4^2.+ß4*M4^2.' NUM PUTI '(ß4-ø4)*M4*N4' NUM
PUTI '-–4*N4' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø4*M4^2.+ß4*N4^2.' NUM PUTI
'–4*M4' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—4' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—4' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—4' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—4' NUM PUT
» EVAL 'MR4' STO 'M4' PURGE 'N4' PURGE '•4' PURGE 'E4' PURGE 'I4' PURGE
'L4' PURGE 'A4' PURGE
END 'EL4==TT OR EL4==TD'
THEN
« "TRIANGULO(4)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X14' STO DUP 2. GET NUM 'Y14' STO DUP 3. GET NUM
'X24' STO DUP 4. GET NUM 'Y24' STO DUP 5. GET NUM 'X34' STO DUP 6. GET NUM
'Y34' STO DUP 7. GET NUM 'E4' STO DUP 8. GET NUM 't4' STO 9. GET NUM 'v4'
STO '(X14*Y24+Y14*X34+X24*Y34-Y24*X34-Y14*X24-X14*Y34)/2.' NUM 'A4' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y24-Y34' NUM PUT 3. 'Y34-Y14' NUM PUT 5.
'Y14-Y24' NUM PUT 8. 'X34-X24' NUM PUT 10. 'X14-X34' NUM PUT 12. 'X24-X14'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A4)' NUM * 'B4' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL4==TT'
THEN 1. 1. PUT 2. 'v4' NUM PUT 4. 'v4' NUM PUT 5. 1. PUT 9.
'(1.-v4)/2.' NUM PUT 'E4/(1.-v4^2.)' NUM * 'D4' STO
END 'EL4==TD'
THEN 1. '1.-v4' NUM PUT 2. 'v4' NUM PUT 4. 'v4' NUM PUT 5. '1.-v4'
NUM PUT 9. '.5-v4' NUM PUT 'E4/((1.+v4)*(1.-2.*v4))' NUM * 'D4' STO
END
END B4 TRN D4 * B4 * t4 * A4 *
» EVAL 'MR4' STO 'X14' PURGE 'Y14' PURGE 'X24' PURGE 'Y24' PURGE 'X34'
PURGE 'Y34' PURGE 'E4' PURGE 't4' PURGE 'v4' PURGE
END
END
CASE 'EL5==M'
THEN
« "MOLA(5)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K5' STO 2. GET NUM '•5' STO 'COS(•5)' NUM 'M5'
STO 'SIN(•5)' NUM 'N5' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M5^2.' NUM PUTI 'N5*M5' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N5^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K5 *
» EVAL 'MR5' STO 'M5' PURGE 'N5' PURGE '•5' PURGE 'K5' PURGE
END 'EL5==B'
THEN
« "BARRA(5)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E5' STO DUP 2. GET NUM 'A5' STO DUP 3. GET NUM
'L5' STO 4. GET NUM '•5' STO 'COS(•5)' NUM 'M5' STO 'SIN(•5)' NUM 'N5' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M5^2.' NUM PUTI 'N5*M5' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N5^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A5 E5 * L5 / *
» EVAL 'MR5' STO 'N5' PURGE 'M5' PURGE '•5' PURGE 'E5' PURGE 'A5' PURGE
'L5' PURGE
END 'EL5==V'
THEN
« "VIGA(5)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E5' STO DUP 2. GET NUM 'I5' STO DUP 3. GET NUM
'L5' STO 4. GET NUM '•5' STO '12.*E5*I5/L5^3.' NUM 'ø5' STO '6.*E5*I5/L5^2.'
NUM '–5' STO '2.*E5*I5/L5' NUM '—5' STO 'COS(•5)' NUM 'M5' STO 'SIN(•5)'
NUM 'N5' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø5*N5^2.' NUM PUTI '-ø5*M5*N5' NUM PUTI '-–5*N5'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø5*M5^2.' NUM PUTI '–5*M5' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—5' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—5' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR5' STO 'M5' PURGE 'N5' PURGE '•5' PURGE 'E5' PURGE 'I5' PURGE
'L5' PURGE
END 'EL5==P'
THEN
« "PÓRTICO(5)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E5' STO DUP 2. GET NUM 'I5' STO DUP 3. GET NUM
'L5' STO DUP 4. GET NUM 'A5' STO 5. GET NUM '•5' STO '12.*E5*I5/L5^3.' NUM
'ø5' STO '6.*E5*I5/L5^2.' NUM '–5' STO '2.*E5*I5/L5' NUM '—5' STO 'A5*E5/L5'
NUM 'ß5' STO 'SIN(•5)' NUM 'N5' STO 'COS(•5)' NUM 'M5' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø5*N5^2.+ß5*M5^2.' NUM PUTI '(ß5-ø5)*M5*N5' NUM
PUTI '-–5*N5' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø5*M5^2.+ß5*N5^2.' NUM PUTI
'–5*M5' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—5' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—5' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—5' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—5' NUM PUT
» EVAL 'MR5' STO 'M5' PURGE 'N5' PURGE '•5' PURGE 'E5' PURGE 'I5' PURGE
'L5' PURGE 'A5' PURGE
END 'EL5==TT OR EL5==TD'
THEN
« "TRIANGULO(5)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X15' STO DUP 2. GET NUM 'Y15' STO DUP 3. GET NUM
'X25' STO DUP 4. GET NUM 'Y25' STO DUP 5. GET NUM 'X35' STO DUP 6. GET NUM
'Y35' STO DUP 7. GET NUM 'E5' STO DUP 8. GET NUM 't5' STO 9. GET NUM 'v5'
STO '(X15*Y25+Y15*X35+X25*Y35-Y25*X35-Y15*X25-X15*Y35)/2.' NUM 'A5' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y25-Y35' NUM PUT 3. 'Y35-Y15' NUM PUT 5.
'Y15-Y25' NUM PUT 8. 'X35-X25' NUM PUT 10. 'X15-X35' NUM PUT 12. 'X25-X15'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A5)' NUM * 'B5' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL5==TT'
THEN 1. 1. PUT 2. 'v5' NUM PUT 4. 'v5' NUM PUT 5. 1. PUT 9.
'(1.-v5)/2.' NUM PUT 'E5/(1.-v5^2.)' NUM * 'D5' STO
END 'EL5==TD'
THEN 1. '1.-v5' NUM PUT 2. 'v5' NUM PUT 4. 'v5' NUM PUT 5. '1.-v5'
NUM PUT 9. '.5-v5' NUM PUT 'E5/((1.+v5)*(1.-2.*v5))' NUM * 'D5' STO
END
END B5 TRN D5 * B5 * t5 * A5 *
» EVAL 'MR5' STO 'X15' PURGE 'Y15' PURGE 'X25' PURGE 'Y25' PURGE 'X35'
PURGE 'Y35' PURGE 'E5' PURGE 't5' PURGE 'v5' PURGE
END
END
CASE 'EL6==M'
THEN
« "MOLA(6)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K6' STO 2. GET NUM '•6' STO 'COS(•6)' NUM 'M6'
STO 'SIN(•6)' NUM 'N6' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M6^2.' NUM PUTI 'N6*M6' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N6^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K6 *
» EVAL 'MR6' STO 'M6' PURGE 'N6' PURGE '•6' PURGE 'K6' PURGE
END 'EL6==B'
THEN
« "BARRA(6)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E6' STO DUP 2. GET NUM 'A6' STO DUP 3. GET NUM
'L6' STO 4. GET NUM '•6' STO 'COS(•6)' NUM 'M6' STO 'SIN(•6)' NUM 'N6' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M6^2.' NUM PUTI 'N6*M6' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N6^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A6 E6 * L6 / *
» EVAL 'MR6' STO 'N6' PURGE 'M6' PURGE '•6' PURGE 'E6' PURGE 'A6' PURGE
'L6' PURGE
END 'EL6==V'
THEN
« "VIGA(6)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E6' STO DUP 2. GET NUM 'I6' STO DUP 3. GET NUM
'L6' STO 4. GET NUM '•6' STO '12.*E6*I6/L6^3.' NUM 'ø6' STO '6.*E6*I6/L6^2.'
NUM '–6' STO '2.*E6*I6/L6' NUM '—6' STO 'COS(•6)' NUM 'M6' STO 'SIN(•6)'
NUM 'N6' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø6*N6^2.' NUM PUTI '-ø6*M6*N6' NUM PUTI '-–6*N6'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø6*M6^2.' NUM PUTI '–6*M6' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—6' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—6' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR6' STO 'M6' PURGE 'N6' PURGE '•6' PURGE 'E6' PURGE 'I6' PURGE
'L6' PURGE
END 'EL6==P'
THEN
« "PÓRTICO(6)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E6' STO DUP 2. GET NUM 'I6' STO DUP 3. GET NUM
'L6' STO DUP 4. GET NUM 'A6' STO 5. GET NUM '•6' STO '12.*E6*I6/L6^3.' NUM
'ø6' STO '6.*E6*I6/L6^2.' NUM '–6' STO '2.*E6*I6/L6' NUM '—6' STO 'A6*E6/L6'
NUM 'ß6' STO 'SIN(•6)' NUM 'N6' STO 'COS(•6)' NUM 'M6' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø6*N6^2.+ß6*M6^2.' NUM PUTI '(ß6-ø6)*M6*N6' NUM
PUTI '-–6*N6' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø6*M6^2.+ß6*N6^2.' NUM PUTI
'–6*M6' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—6' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—6' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—6' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—6' NUM PUT
» EVAL 'MR6' STO 'M6' PURGE 'N6' PURGE '•6' PURGE 'E6' PURGE 'I6' PURGE
'L6' PURGE 'A6' PURGE
END 'EL6==TT OR EL6==TD'
THEN
« "TRIANGULO(6)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X16' STO DUP 2. GET NUM 'Y16' STO DUP 3. GET NUM
'X26' STO DUP 4. GET NUM 'Y26' STO DUP 5. GET NUM 'X36' STO DUP 6. GET NUM
'Y36' STO DUP 7. GET NUM 'E6' STO DUP 8. GET NUM 't6' STO 9. GET NUM 'v6'
STO '(X16*Y26+Y16*X36+X26*Y36-Y26*X36-Y16*X26-X16*Y36)/2.' NUM 'A6' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y26-Y36' NUM PUT 3. 'Y36-Y16' NUM PUT 5.
'Y16-Y26' NUM PUT 8. 'X36-X26' NUM PUT 10. 'X16-X36' NUM PUT 12. 'X26-X16'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A6)' NUM * 'B6' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL6==TT'
THEN 1. 1. PUT 2. 'v6' NUM PUT 4. 'v6' NUM PUT 5. 1. PUT 9.
'(1.-v6)/2.' NUM PUT 'E6/(1.-v6^2.)' NUM * 'D6' STO
END 'EL6==TD'
THEN 1. '1.-v6' NUM PUT 2. 'v6' NUM PUT 4. 'v6' NUM PUT 5. '1.-v6'
NUM PUT 9. '.5-v6' NUM PUT 'E6/((1.+v6)*(1.-2.*v6))' NUM * 'D6' STO
END
END B6 TRN D6 * B6 * t6 * A6 *
» EVAL 'MR6' STO 'X16' PURGE 'Y16' PURGE 'X26' PURGE 'Y26' PURGE 'X36'
PURGE 'Y36' PURGE 'E6' PURGE 't6' PURGE 'v6' PURGE
END
END
CASE 'EL7==M'
THEN
« "MOLA(7)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K7' STO 2. GET NUM '•7' STO 'COS(•7)' NUM 'M7'
STO 'SIN(•7)' NUM 'N7' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M7^2.' NUM PUTI 'N7*M7' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N7^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K7 *
» EVAL 'MR7' STO 'M7' PURGE 'N7' PURGE '•7' PURGE 'K7' PURGE
END 'EL7==B'
THEN
« "BARRA(7)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E7' STO DUP 2. GET NUM 'A7' STO DUP 3. GET NUM
'L7' STO 4. GET NUM '•7' STO 'COS(•7)' NUM 'M7' STO 'SIN(•7)' NUM 'N7' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M7^2.' NUM PUTI 'N7*M7' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N7^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A7 E7 * L7 / *
» EVAL 'MR7' STO 'N7' PURGE 'M7' PURGE '•7' PURGE 'E7' PURGE 'A7' PURGE
'L7' PURGE
END 'EL7==V'
THEN
« "VIGA(7)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E7' STO DUP 2. GET NUM 'I7' STO DUP 3. GET NUM
'L7' STO 4. GET NUM '•7' STO '12.*E7*I7/L7^3.' NUM 'ø7' STO '6.*E7*I7/L7^2.'
NUM '–7' STO '2.*E7*I7/L7' NUM '—7' STO 'COS(•7)' NUM 'M7' STO 'SIN(•7)'
NUM 'N7' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø7*N7^2.' NUM PUTI '-ø7*M7*N7' NUM PUTI '-–7*N7'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø7*M7^2.' NUM PUTI '–7*M7' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—7' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—7' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR7' STO 'M7' PURGE 'N7' PURGE '•7' PURGE 'E7' PURGE 'I7' PURGE
'L7' PURGE
END 'EL7==P'
THEN
« "PÓRTICO(7)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E7' STO DUP 2. GET NUM 'I7' STO DUP 3. GET NUM
'L7' STO DUP 4. GET NUM 'A7' STO 5. GET NUM '•7' STO '12.*E7*I7/L7^3.' NUM
'ø7' STO '6.*E7*I7/L7^2.' NUM '–7' STO '2.*E7*I7/L7' NUM '—7' STO 'A7*E7/L7'
NUM 'ß7' STO 'SIN(•7)' NUM 'N7' STO 'COS(•7)' NUM 'M7' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø7*N7^2.+ß7*M7^2.' NUM PUTI '(ß7-ø7)*M7*N7' NUM
PUTI '-–7*N7' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø7*M7^2.+ß7*N7^2.' NUM PUTI
'–7*M7' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—7' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—7' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—7' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—7' NUM PUT
» EVAL 'MR7' STO 'M7' PURGE 'N7' PURGE '•7' PURGE 'E7' PURGE 'I7' PURGE
'L7' PURGE 'A7' PURGE
END 'EL7==TT OR EL7==TD'
THEN
« "TRIANGULO(7)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X17' STO DUP 2. GET NUM 'Y17' STO DUP 3. GET NUM
'X27' STO DUP 4. GET NUM 'Y27' STO DUP 5. GET NUM 'X37' STO DUP 6. GET NUM
'Y37' STO DUP 7. GET NUM 'E7' STO DUP 8. GET NUM 't7' STO 9. GET NUM 'v7'
STO '(X17*Y27+Y17*X37+X27*Y37-Y27*X37-Y17*X27-X17*Y37)/2.' NUM 'A7' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y27-Y37' NUM PUT 3. 'Y37-Y17' NUM PUT 5.
'Y17-Y27' NUM PUT 8. 'X37-X27' NUM PUT 10. 'X17-X37' NUM PUT 12. 'X27-X17'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A7)' NUM * 'B7' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL7==TT'
THEN 1. 1. PUT 2. 'v7' NUM PUT 4. 'v7' NUM PUT 5. 1. PUT 9.
'(1.-v7)/2.' NUM PUT 'E7/(1.-v7^2.)' NUM * 'D7' STO
END 'EL7==TD'
THEN 1. '1.-v7' NUM PUT 2. 'v7' NUM PUT 4. 'v7' NUM PUT 5. '1.-v7'
NUM PUT 9. '.5-v7' NUM PUT 'E7/((1.+v7)*(1.-2.*v7))' NUM * 'D7' STO
END
END B7 TRN D7 * B7 * t7 * A7 *
» EVAL 'MR7' STO 'X17' PURGE 'Y17' PURGE 'X27' PURGE 'Y27' PURGE 'X37'
PURGE 'Y37' PURGE 'E7' PURGE 't7' PURGE 'v7' PURGE
END
END
CASE 'EL8==M'
THEN
« "MOLA(8)" { "K:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'K8' STO 2. GET NUM '•8' STO 'COS(•8)' NUM 'M8'
STO 'SIN(•8)' NUM 'N8' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M8^2.' NUM PUTI 'N8*M8' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N8^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT K8 *
» EVAL 'MR8' STO 'M8' PURGE 'N8' PURGE '•8' PURGE 'K8' PURGE
END 'EL8==B'
THEN
« "BARRA(8)" { "E:" "A:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E8' STO DUP 2. GET NUM 'A8' STO DUP 3. GET NUM
'L8' STO 4. GET NUM '•8' STO 'COS(•8)' NUM 'M8' STO 'SIN(•8)' NUM 'N8' STO
[[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]
[ 0. 0. 0. 0. ]] 1. 'M8^2.' NUM PUTI 'N8*M8' NUM PUT DUP 1. GET NEG 3. SWAP
PUT DUP 2. GET NEG 4. SWAP PUT DUP 2. GET 5. SWAP PUTI 'N8^2.' NUM PUT DUP 5.
GET NEG 7. SWAP PUT DUP 6. GET NEG 8. SWAP PUT DUP 3. GET 9. SWAP PUT DUP 4.
GET 10. SWAP PUT DUP 1. GET 11. SWAP PUT DUP 2. GET 12. SWAP PUT DUP 7. GET 13.
SWAP PUT DUP 8. GET 14. SWAP PUT DUP 5. GET 15. SWAP PUT DUP 6. GET 16. SWAP
PUT A8 E8 * L8 / *
» EVAL 'MR8' STO 'N8' PURGE 'M8' PURGE '•8' PURGE 'E8' PURGE 'A8' PURGE
'L8' PURGE
END 'EL8==V'
THEN
« "VIGA(8)" { "E:" "I:" "L:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E8' STO DUP 2. GET NUM 'I8' STO DUP 3. GET NUM
'L8' STO 4. GET NUM '•8' STO '12.*E8*I8/L8^3.' NUM 'ø8' STO '6.*E8*I8/L8^2.'
NUM '–8' STO '2.*E8*I8/L8' NUM '—8' STO 'COS(•8)' NUM 'M8' STO 'SIN(•8)'
NUM 'N8' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø8*N8^2.' NUM PUTI '-ø8*M8*N8' NUM PUTI '-–8*N8'
NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT DUP 3. GET 6.
SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø8*M8^2.' NUM PUTI '–8*M8' NUM PUT DUP 7.
GET NEG 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET 12. SWAP PUT DUP 3.
GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—8' NUM PUT DUP 3. GET NEG 16.
SWAP PUT DUP 9. GET NEG 17. SWAP PUTI '—8' NUM PUT DUP 4. GET 19. SWAP PUT DUP
5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET 22. SWAP PUT DUP 2. GET
23. SWAP PUT DUP 16. GET 24. SWAP PUT DUP 20. GET 25. SWAP PUT DUP 11. GET 26.
SWAP PUT DUP 17. GET 27. SWAP PUT DUP 7. GET 28. SWAP PUT DUP 8. GET 29. SWAP
PUT DUP 27. GET 30. SWAP PUT DUP 13. GET 31. SWAP PUT DUP 14. GET 32. SWAP PUT
DUP 18. GET 33. SWAP PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35. SWAP PUT DUP
15. GET 36. SWAP PUT
» EVAL 'MR8' STO 'M8' PURGE 'N8' PURGE '•8' PURGE 'E8' PURGE 'I8' PURGE
'L8' PURGE
END 'EL8==P'
THEN
« "PÓRTICO(8)" { "E:" "I:" "L:" "A:" "•:" } { 2. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'E8' STO DUP 2. GET NUM 'I8' STO DUP 3. GET NUM
'L8' STO DUP 4. GET NUM 'A8' STO 5. GET NUM '•8' STO '12.*E8*I8/L8^3.' NUM
'ø8' STO '6.*E8*I8/L8^2.' NUM '–8' STO '2.*E8*I8/L8' NUM '—8' STO 'A8*E8/L8'
NUM 'ß8' STO 'SIN(•8)' NUM 'N8' STO 'COS(•8)' NUM 'M8' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'ø8*N8^2.+ß8*M8^2.' NUM PUTI '(ß8-ø8)*M8*N8' NUM
PUTI '-–8*N8' NUM PUT DUP 1. GET NEG 4. SWAP PUT DUP 2. GET NEG 5. SWAP PUT
DUP 3. GET 6. SWAP PUT DUP 2. GET 7. SWAP PUTI 'ø8*M8^2.+ß8*N8^2.' NUM PUTI
'–8*M8' NUM PUT DUP 5. GET 10. SWAP PUT DUP 8. GET NEG 11. SWAP PUT DUP 9. GET
12. SWAP PUT DUP 3. GET 13. SWAP PUT DUP 9. GET 14. SWAP PUTI '2.*—8' NUM PUT
DUP 3. GET NEG 16. SWAP PUT DUP 14. GET NEG 17. SWAP PUTI '—8' NUM PUT DUP 4.
GET 19. SWAP PUT DUP 5. GET 20. SWAP PUT DUP 16. GET 21. SWAP PUT DUP 1. GET
22. SWAP PUT DUP 2. GET 23. SWAP PUT DUP 21. GET 24. SWAP PUT DUP 5. GET 25.
SWAP PUT DUP 11. GET 26. SWAP PUT DUP 17. GET 27. SWAP PUT DUP 2. GET 28. SWAP
PUT DUP 8. GET 29. SWAP PUT DUP 27. GET 30. SWAP PUT DUP 3. GET 31. SWAP PUT
DUP 9. GET 32. SWAP PUTI '—8' NUM PUT DUP 16. GET 34. SWAP PUT DUP 17. GET 35.
SWAP PUTI '2.*—8' NUM PUT
» EVAL 'MR8' STO 'M8' PURGE 'N8' PURGE '•8' PURGE 'E8' PURGE 'I8' PURGE
'L8' PURGE 'A8' PURGE
END 'EL8==TT OR EL8==TD'
THEN
« "TRIANGULO(8)" { "X1:" "Y1:" "X2:" "Y2:" "X3:" "Y3:" "E:" "t:" "v:" } {
3. 0. } { } { } INFORM
IF
THEN
ELSE
END DUP 1. GET NUM 'X18' STO DUP 2. GET NUM 'Y18' STO DUP 3. GET NUM
'X28' STO DUP 4. GET NUM 'Y28' STO DUP 5. GET NUM 'X38' STO DUP 6. GET NUM
'Y38' STO DUP 7. GET NUM 'E8' STO DUP 8. GET NUM 't8' STO 9. GET NUM 'v8'
STO '(X18*Y28+Y18*X38+X28*Y38-Y28*X38-Y18*X28-X18*Y38)/2.' NUM 'A8' STO
[[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]
[ 0. 0. 0. 0. 0. 0. ]] 1. 'Y28-Y38' NUM PUT 3. 'Y38-Y18' NUM PUT 5.
'Y18-Y28' NUM PUT 8. 'X38-X28' NUM PUT 10. 'X18-X38' NUM PUT 12. 'X28-X18'
NUM PUT DUP 1. GET 14. SWAP PUT DUP 3. GET 16. SWAP PUT DUP 5. GET 18. SWAP
PUT DUP 8. GET 13. SWAP PUT DUP 10. GET 15. SWAP PUT DUP 12. GET 17. SWAP PUT
'1./(2.*A8)' NUM * 'B8' STO
[[ 0. 0. 0. ]
[ 0. 0. 0. ]
[ 0. 0. 0. ]]
CASE 'EL8==TT'
THEN 1. 1. PUT 2. 'v8' NUM PUT 4. 'v8' NUM PUT 5. 1. PUT 9.
'(1.-v8)/2.' NUM PUT 'E8/(1.-v8^2.)' NUM * 'D8' STO
END 'EL8==TD'
THEN 1. '1.-v8' NUM PUT 2. 'v8' NUM PUT 4. 'v8' NUM PUT 5. '1.-v8'
NUM PUT 9. '.5-v8' NUM PUT 'E8/((1.+v8)*(1.-2.*v8))' NUM * 'D8' STO
END
END B8 TRN D8 * B8 * t8 * A8 *
» EVAL 'MR8' STO 'X18' PURGE 'Y18' PURGE 'X28' PURGE 'Y28' PURGE 'X38'
PURGE 'Y38' PURGE 'E8' PURGE 't8' PURGE 'v8' PURGE
END
END
»

I´m new to "prime",have just bought it. So i really appreciate any help to make the code work.

Thank you!

06-05-2014, 12:02 PM
Post: #2
 HP67 Senior Member Posts: 638 Joined: Dec 2013
RE: FINITE ELEMENTS - 50G to Prime
The Prime can't run RPL so code from the 50g cannot be made to work on the Prime without a complete rewrite. Since the Prime isn't a stack machine you wouldn't even want to convert the code, because how you take advantage of the RPL VM on a 50g doesn't make any sense on the Prime. You need to completely rewrite the code.

It ain't OVER 'till it's 2 PICK
06-05-2014, 05:46 PM
Post: #3
 VitorMT Junior Member Posts: 2 Joined: Jun 2014
RE: FINITE ELEMENTS - 50G to Prime
Ty for the quick response HP67, well, I can´t understand why HP didn´t do a conversion path for these files, I hope there's a good reason, but it is very frustrating to realize that they do not make their systems compatible between each other, or an easiest way to make the transition, a lot of people depends on these old programs and just want to use a better calc(no offenses to HP50G, i love it, but the prime touch screen is perfect to work with matrix systems). I will learn more about my HPprime and try to create a new code.

And ty again for the response. Cheers.
06-05-2014, 06:00 PM
Post: #4
 eried Senior Member Posts: 742 Joined: Dec 2013
RE: FINITE ELEMENTS - 50G to Prime
The Prime isn't a 50g successor, it is said that is a successor of the 'defunct' 39gII.

RPL was nice as hacky lang but prime language is nice and fast. Related with your issue, you will have to find an alternative way, maybe a popup menu or drawing custom buttons for your app.

My website: erwin.ried.cl
06-05-2014, 06:01 PM
Post: #5
 HP67 Senior Member Posts: 638 Joined: Dec 2013
RE: FINITE ELEMENTS - 50G to Prime
(06-05-2014 05:46 PM)VitorMT Wrote:  Ty for the quick response HP67, well, I can´t understand why HP didn´t do a conversion path for these files, I hope there's a good reason, but it is very frustrating to realize that they do not make their systems compatible between each other, or an easiest way to make the transition, a lot of people depends on these old programs and just want to use a better calc(no offenses to HP50G, i love it, but the prime touch screen is perfect to work with matrix systems).

As you must know, RPL is an ingenious and very powerful system but it's more than most people can tolerate when it comes to writing code when people seem too lazy and resistant to even give RPN a serious look. With RAM so cheap nowadays it's going to be hard to justify to continue spending money on new RPL devices. Many of us fear the 50g will be the last one and have bought a few to keep around.

You found the right place because several of the Prime developers participate in this forum. I'm sure they, along with some of the power users, can answer any questions you have on how to get the most out of your Prime. So, welcome to the forums.

It ain't OVER 'till it's 2 PICK
 « Next Oldest | Next Newest »

User(s) browsing this thread: 1 Guest(s)