EXPORT Np,m,Pin,Pfi; EXPORT Bo,Bg,Boi,Bgi,Bw; EXPORT Rp,Rs,Rsi; EXPORT Sw,Cw,Cf,Swi,We,Wp; EXPORT Giny,Bginy,Winy,Bwiny; EXPORT Bt,Bti; EXPORT Eo,Eg,Efw,eW; EXPORT DDI,SDI,WDI,EDI; EXPORT a,f,h,t,rw,ro,Θ; EXPORT Npdt,Wpdt,Qo,Qg,Qw,Wi; EXPORT PRQ_230() BEGIN //DECLARACION DE VARIABLES LOCALES LOCAL OP1,OP2,OP3; //INICIALIZACION DE LA APLICACIÓN “Solve” STARTAPP("Solve"); 0▶E1; 0▶E2; 0▶E3; 0▶E4; 0▶E5; 0▶E6; 0▶E7; 0▶E8; 0▶E9; 0▶E0; //LIMPIADO DE PANTALLA INICIAL PRINT(); //ALGORITMO DEL MENU PRINCIPAL //LAS OPCIONES 3 Y 4 AUN NO ESTAN DISPOINBLES CHOOSE(OP1, "Reservorios 1", "B.M. general", "Indices de empuje", "B.M. lineal", "Intrusion de agua"); CASE //ALGORITMO DEL MENU SECUNDARIO "B.M. GENERAL" IF OP1==1 THEN INPUT({{A,{"Monofasico","Bifasico"},{15,30,1}}, {B,{"Subsaturado","Saturado","Con capa de gas"},{50,30,1}}, {C,0,{85,10,1}}, {D,0,{25,10,2}}, {E,0,{50,10,2}}, {F,0,{75,10,2}}}, "Balance de materia", {"Reser", "", "", "EntAgu", "VolIny", "ExpAgu"}, {"Tipo de reservorio", "Tipo de reservorio", "Tipo de reservorio constante", "Entrada neta de neta", "Volumenes de inyeccion", "Expansion de agua connata mas reduccion de volumen poroso"}, {1,1,0,0,0,0}, {A,B,C,D,E,F}); STARTAPP("Solve"); IF A==1 THEN CASE IF B==1 OR B==2 THEN "Np*Bo"▶E3; IFTE(C==1,"Np*Bo"▶E3,"Np*(Bo+Bg*(Rp-Rs)"▶E3); END; IF B==3 THEN "Np*(Bo+Bg*(Rp-Rs))"▶E3; END; END; IFTE(D==1,"(We-Wp*Bw)"▶E4,"0"▶E4); IFTE(E==1,"Giny*Bginy+Winy*Bwiny"▶E5,"0"▶E5); CASE IF B==1 OR B==2 THEN "(Bo-Boi)"▶E6; IFTE(C==1,"(Bo-Boi)"▶E6,"(Bo-Boi)+Bg*(Rsi-Rs)"▶E6); END; IF B==3 THEN "(Bo-Boi)+Bg*(Rsi-Rs)"▶E6; END; END; IFTE(B==1 OR B==2,"0"▶E7,"m*Boi*(Bg/Bgi-1)"▶E7); IF F==1 THEN IFTE(B==1 OR B==2,"(Boi*(Sw*Cw+Cf)*(Pin-Pfi)/(1- Swi))"▶E8,"(Boi*(1+m)*(Sw*Cw+Cf)*(Pin-Pfi)/(1-Swi))"▶E8); ELSE "0"▶E8; END; "N"▶E1; E1=(E3-E4-E5)/(E6+E7+E8)▶E1; "N=(Np*(Bo+Bg*(Rp-Rs))-(We-Wp*Bw)-(Giny*Bginy+Winy*Bwiny))/((Bo-Boi)+Bg*(Rsi- Rs)+m*Boi*(Bg/Bgi-1)+(Boi*(1+m)*(Sw*Cw+Cf)*(Pin-Pfi)/(1-Swi)))"▶E2; ELSE CASE IF B==1 OR B==2 THEN "Np*Bt"▶E3; IFTE(C==1,"Np*Bt"▶E3,"(Np*(Bt+Bg*(Rp-Rsi))"▶E3); END; IF B==3 THEN "(Np*(Bt+Bg*(Rp-Rsi))"▶E3; END; END; IFTE(D==1,"(We-Wp*Bw)"▶E4,"0"▶E4); IFTE(E==1,"Giny*Bginy+Winy*Bwiny"▶E5,"0"▶E5); "(Bt-Bti)"▶E6; IFTE(B==3,"m*Bti*(Bg/Bgi-1)"▶E7,"0"▶E7); IF F==1 THEN IFTE(B==1 OR B==2,"(Bti*(Sw*Cw+Cf)*(Pin-Pfi)/(1- Swi))"▶E8,"(Bti*(1+m)*(Sw*Cw+Cf)*(Pin-Pfi)/(1-Swi))"▶E8); ELSE "0"▶E8; END; "N"▶E1; E1=(E3-E4+E5)/(E6+E7+E8)▶E1; "N=(Np*(Bt+Bg*(Rp-Rsi))-(We-Wp*Bw)-(Giny*Bginy+Winy*Bwiny))/((Bt- Bti)+m*Bti*(Bg/Bgi-1)+(Bti*(1+m)*(Sw*Cw+Cf)*(Pin-Pfi)/(1-Swi)))"▶E2; END; END; //ALGORITMO DEL MENU SECUNDARIO "INDICES DE EMPUJE" IF OP1==2 THEN STARTAPP("Solve"); "A=(Np*(Bt+(Rp-Rsi)*Bg))"▶E1; "DDI=N*(Bt-Bti)/A"▶E2; "SDI=(N*m*Bti*(Bg/Bgi-1)/A"▶E3; "WDI=(We-Wp*Bw)/A"▶E4; "EDI=(N*Bti*(1+m)*((Cw*Swi+Cf)/(1-Swi))*(Pin-Pfi))/A"▶E5; END; //ALGORITMO DEL MENU SECUNDARIO "B.M. LINEAL" IF OP1==3 THEN PRINT("EN CONSTRUCCION"); END; //ALGORITMO DEL MENU SECUNDARIO "INTRUSION DE AGUA" IF OP1==3 THEN PRINT("EN CONSTRUCCION"); END; END; END; //FINAL ALGORITMO