miércoles, 26 de mayo de 2021

Convertidor de unidades

Un aparte importante de ser ingeniero petrolero es saber que tanto en oficina como en campo se utilizan diferentes unidades (Sistema internacional y sistema inglés) y en algunas ocasiones se utiliza una mezcla de ellas, por ello en esta ocasión traigo un programa convertidor de unidades de Presión, Volumen y temperatura. Con la finalidad de que las conozcas y te familiarices con ellas.  

def Unidades_de_Presion(Cambio):

try:

Unidad_Procedencia = float(input("Unidad de origen : \n1-. kPa\n2-. lb/pg2\n3-.kg/cm2\n4-. bar\n5-. atm\n"))

Unidad_Arrivo = float(input("Unidad de origen : \n1-. kPa\n2-. lb/pg2\n3-.kg/cm2\n4-. bar\n5-. atm\n"))

if Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("kPa => kPa")

Conversion = Cambio*(1)

print(Conversion,"kPa")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("kPa => lb/pg2")

Conversion = Cambio*(0.1450)

print(Conversion,"lb/pg2")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("kPa => kg/cm2")

Conversion = Cambio*(0.0102)

print(Conversion,"kg/cm2")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("kPa => bar")

Conversion = Cambio*(0.0100)

print(Conversion,"bar")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 5:

print("kPa => atm")

Conversion = Cambio*(0.0098)

print(Conversion,"atm")

elif Unidad_Procedencia == 2 and Unidad_Arrivo == 1:

print("lb/pg2 => kPa")

Conversion = Cambio*(6.8948)

print(Conversion,"kPa")

elif Unidad_Procedencia == 2 and Unidad_Arrivo == 2:

print("lb/pg2 => lb/pg2")

Conversion = Cambio*(1)

print(Conversion,"lb/pg2")

elif Unidad_Procedencia == 2 and Unidad_Arrivo == 3:

print("lb/pg2 => kg/cm2")

Conversion = Cambio*(0.0703)

print(Conversion,"kg/cm2")

elif Unidad_Procedencia == 2 and Unidad_Arrivo == 4:

print("lb/pg2 => bar")

Conversion = Cambio*(0.0689)

print(Conversion,"bar")

elif Unidad_Procedencia == 2 and Unidad_Arrivo == 5:

print("lb/pg2 => atm")

Conversion = Cambio*(0.0680)

print(Conversion,"atm")

elif Unidad_Procedencia == 3 and Unidad_Arrivo == 1:

print("kg/cm2 => kPa")

Conversion = Cambio*(98.0665)

print(Conversion,"kPa")

elif Unidad_Procedencia == 3 and Unidad_Arrivo == 2:

print("kg/cm2 => lb/pg2")

Conversion = Cambio*(14.2223)

print(Conversion,"lb/pg2")

elif Unidad_Procedencia == 3 and Unidad_Arrivo == 3:

print("kg/cm2 => kg/cm2")

Conversion = Cambio*(1)

print(Conversion,"kg/cm2")

elif Unidad_Procedencia == 3 and Unidad_Arrivo == 4:

print("kg/cm2 => bar")

Conversion = Cambio*(0.9806)

print(Conversion,"bar")

elif Unidad_Procedencia == 3 and Unidad_Arrivo == 5:

print("kg/cm2 => atm")

Conversion = Cambio*(0.9678)

print(Conversion,"atm")

elif Unidad_Procedencia == 4 and Unidad_Arrivo == 1:

print("bar => kPa")

Conversion = Cambio*(100)

print(Conversion,"kPa")

elif Unidad_Procedencia == 4 and Unidad_Arrivo == 2:

print("bar => lb/pg2")

Conversion = Cambio*(14.5030)

print(Conversion,"lb/pg2")

elif Unidad_Procedencia == 4 and Unidad_Arrivo == 3:

print("bar => kg/cm2")

Conversion = Cambio*(1.0197)

print(Conversion,"kg/cm2")

elif Unidad_Procedencia == 4 and Unidad_Arrivo == 4:

print("bar => bar")

Conversion = Cambio*(0.9806)

print(Conversion,"bar")

elif Unidad_Procedencia == 4 and Unidad_Arrivo == 5:

print("bar => atm")

Conversion = Cambio*(0.9869)

print(Conversion,"atm")

elif Unidad_Procedencia == 5 and Unidad_Arrivo == 1:

print("atm => kPa")

Conversion = Cambio*(101.325)

print(Conversion,"kPa")

elif Unidad_Procedencia == 5 and Unidad_Arrivo == 2:

print("atm => lb/pg2")

Conversion = Cambio*(14.6959)

print(Conversion,"lb/pg2")

elif Unidad_Procedencia == 5 and Unidad_Arrivo == 3:

print("atm => kg/cm2")

Conversion = Cambio*(1.0333)

print(Conversion,"kg/cm2")

elif Unidad_Procedencia == 5 and Unidad_Arrivo == 4:

print("atm => bar")

Conversion = Cambio*(1.0133)

print(Conversion,"bar")

elif Unidad_Procedencia == 5 and Unidad_Arrivo == 5:

print("atm => atm")

Conversion = Cambio*(1)

print(Conversion,"atm")

else:

print("La conversión no está disponible, sólo se cuenta con las siguientes conversiones: \n1-. kPa\n2-. lb/pg2\n3-.kg/cm2\n4-. bar\n5-. atm\n")

except ValueError:

print("Ingesa Un número porfavor")

return

def Unidades_de_Volumen(Cambio):

try:

Unidad_Procedencia = float(input("Unidad de origen : \n1-. m^3\n2-. bl\n3-.lt\n4-. °F\n5-. ft^3\n"))

Unidad_Arrivo = float(input("Unidad de origen : \n1-. m^3\n2-. bl\n3-.lt\n4-. gal\n5-. ft^3\n"))

if Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("m^3 => m^3")

Conversion = Cambio*(1)

print(Conversion,"m^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("m^3 => bl")

Conversion = Cambio*(6.28983)

print(Conversion,"bl")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("m^3 => lt")

Conversion = Cambio*(1000)

print(Conversion,"lt")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("m^3 => gal")

Conversion = Cambio*(264.173)

print(Conversion,"gal")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 5:

print("m^3 => ft^3")

Conversion = Cambio*(35.31333)

print(Conversion,"ft^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("bl => m^3")

Conversion = Cambio*(0.15899)

print(Conversion,"m^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("bl => bl")

Conversion = Cambio*(1)

print(Conversion,"bl")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("bl => lt")

Conversion = Cambio*(158.99)

print(Conversion,"lt")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("bl => gal")

Conversion = Cambio*(42)

print(Conversion,"gal")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 5:

print("bl => ft^3")

Conversion = Cambio*(5.61458)

print(Conversion,"ft^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("lt => m^3")

Conversion = Cambio/(1000)

print(Conversion,"m^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("lt => bl")

Conversion = Cambio/(158.99)

print(Conversion,"bl")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("lt => lt")

Conversion = Cambio*(1)

print(Conversion,"lt")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("lt => gal")

Conversion = Cambio*(0.2641)

print(Conversion,"gal")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 5:

print("lt => ft^3")

Conversion = Cambio/(28.3170)

print(Conversion,"ft^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("gal => m^3")

Conversion = Cambio/(264.173)

print(Conversion,"m^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("gal => bl")

Conversion = Cambio/(42)

print(Conversion,"bl")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("gal => lt")

Conversion = Cambio*(3.7854)

print(Conversion,"lt")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("gal => gal")

Conversion = Cambio*(1)

print(Conversion,"gal")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 5:

print("gal => ft^3")

Conversion = Cambio/(7.4805)

print(Conversion,"ft^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("ft^3 => m^3")

Conversion = Cambio/(35.3133)

print(Conversion,"m^3")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("ft^3 => bl")

Conversion = Cambio/(5.61458)

print(Conversion,"bl")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("ft^3 => lt")

Conversion = Cambio*(28.3170)

print(Conversion,"lt")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("ft^3 => gal")

Conversion = Cambio*(7.4805)

print(Conversion,"gal")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 5:

print("ft^3 => ft^3")

Conversion = Cambio*(1)

print(Conversion,"ft^3")

else:

print("La conversión no está disponible, sólo se cuenta con las siguientes conversiones: \n1-. kPa\n2-. lb/pg2\n3-.kg/cm2\n4-. bar\n5-. atm\n")

except ValueError:

print("Ingesa Un número por favor")

return

def Unidades_de_Temperatura(Cambio):

try:

Unidad_Procedencia = float(input("Unidad de origen : \n1-.°F\n2-.°C\n3-.°R\n4-.K\n"))

Unidad_Arrivo = float(input("Unidad de origen : \n1-.°F\n2-.°C\n3-.°R\n4-.K\n"))

if Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("°F => °F")

Conversion = Cambio*1

print(Conversion,"°F")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("°F => °C")

Conversion = (Cambio-32)/1.8

print(Conversion,"°C")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("°F => °R")

Conversion = Cambio+459.69

print(Conversion,"°R")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("°F => K")

Conversion = ((Cambio-32)/1.8)+273.16

print(Conversion,"K")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("°C => °F")

Conversion = 1.8(Cambio)+32

print(Conversion,"°F")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("°C => °C")

Conversion = Cambio*(1)

print(Conversion,"°C")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("°C => °R")

Conversion = 1.8(Cambio)+32+459.69

print(Conversion,"°R")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("°C => K")

Conversion = Cambio+273.16

print(Conversion,"K")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("°R => °F")

Conversion = Cambio-459.69

print(Conversion,"°F")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("°R => °C")

Conversion = ((Cambio-459.69)-32)/1.8

print(Conversion,"°C")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("°R => °R")

Conversion = Cambio*(1)

print(Conversion,"°R")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("°R => K")

Conversion = (((Cambio-459.69)-32)/1.8)+273.16

print(Conversion,"K")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 1:

print("K => °F")

Conversion = 1.8*(Cambio-273.16)+32

print(Conversion,"°F")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 2:

print("K => °C")

Conversion = Cambio-273.16

print(Conversion,"°C")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 3:

print("K => °R")

Conversion = (1.8*(Cambio-273.16)+32)+459.69

print(Conversion,"°R")

elif Unidad_Procedencia == 1 and Unidad_Arrivo == 4:

print("K => K")

Conversion = Cambio*(1)

print(Conversion,"K")

return 

except ValueError:

print("Ingesa Un número por favor")

return

try:

Cambio = float(input("Ingresa el valor :"))

Tipo_de_Unidad = int(input("Ingresa la undiad que deseas modificar : \n1-. Presión\n2-. Volumen\n3-.Temperatura\n"))

if Tipo_de_Unidad == 1:

START = Unidades_de_Presion(Cambio)

elif Tipo_de_Unidad == 2:

START = Unidades_de_Volumen(Cambio)

elif Tipo_de_Unidad == 3:

START = Unidades_de_Temperatura(Cambio)

else:

print("Opción no disponible")

except ValueError:

        print("Ingresa un número por favor")

miércoles, 19 de mayo de 2021

Gravedad API

 

Gravedad API

En esta ocasión hablare de la gravedad especifica °API, esta fue desarrollada por Instituto Americano del Petróleo, con la finalidad de medir la densidad relativa de los fluidos líquidos petroleros. La gravedad API está en un rango de 10° a 70° API y la fórmula para obtener los grados API es:

 API =141.5/GE -131.5

Densidad = float(input("¿Qué deseas convertir?\n1-. °API => Denisdad Relativa\n2-. Densidad Relativa => °API\n"))
def Revision(a):
try:
if a <= 0:
print("Valor ingresado no valido, el valor debe ser mayor a cero.")
quit()
else:
print("Ok")
except ValueError:
print("Valor ingresado no valido, ingresa un digito")
quit()
finally:
pass
return a
if Densidad == 1:
API = float(input("Ingresa los gradoa °API : "))
API = Revision(API)
Densidad_D = 141.5/(API+131.5)
Tipo = 0
if Densidad_D >= 1:
Tipo = "Extrapesado"
elif Densidad_D <= 1 and Densidad_D >= 0.92:
Tipo = "Pesado"
elif Densidad_D <= 0.92 and Densidad_D >= 0.87:
Tipo = "Mediano"
elif Densidad_D <= 0.87 and Densidad_D >= 0.83:
Tipo = "Ligero"
elif Densidad_D <= 0.83:
Tipo = "Superligero"
else:
print("No procede")
print("El resultado es : ",round(Densidad_D,4),Tipo)
elif Densidad == 2:
Densidad_D = float(input("Ingresa la densidad del aceite : "))
Densidad_D = Revision(Densidad_D)
API = (141.5/Densidad_D)-131.5
Tipo = 0
if API <= 10:
Tipo = "Extrapesado"
elif API <= 22.3 and API >= 10:
Tipo = "Pesado"
elif API <= 31.1 and API >= 22.3:
Tipo = "Mediano"
elif API <= 39 and API >= 31.1:
Tipo = "Ligero"
elif API >= 39:
Tipo = "Superligero"
else:
print("No procede")
print("El resultado es : ",round(API,4),Tipo)
else:
print("Esa opción no existe")

lunes, 10 de mayo de 2021

Leyes de los gases ideales

En esta ocasión hablare de los gases ideales. Un gas ideal es un fluido homogéneo de baja densidad y viscosidad, el gas no tiene volumen definido ni forma determinada, simplemente ocupa todo el espacio del recipiente que lo contiene. Las propiedades de un gas natural se pueden calcular directamente por mediciones de laboratorio o por pronósticos a partir de la composición química de este.

La teoría de los gases establece que un gas está formado por una gran cantidad de partículas llamadas moléculas. Un gas ideal tiene las siguientes propiedades.

1.    El volumen ocupado por las moléculas es insignificante en comparación con el volumen total ocupado por el gas.

2.    Las fuerzas de atracción y repulsión entre las moléculas y las paredes del contenedor en donde se aloja el gas son despreciables.

3.    Los choques entre las moléculas son perfectamente elásticas (no hay perdida de energía )

Ley de Boyle

Nos indica que a temperatura constante el volumen de un gas ideal es inversamente proporcional a la presión para una masa de gas definida.

P1V1=P2V2

Ley de Charles

Nos indica que a presión constante el volumen de un gas ideal es directamente proporcional a la temperatura para una masa de gas definida.

V1/T1 = V2/T2

Ley de Gay-Lussac

Nos indica que a volumen constante la presión de un gas ideal es directamente proporcional a la temperatura para una masa de gas definida.

P1/T1 = P2/T2

Ley de Avogadro

Nos indica que a temperatura y presión constante el volumen de un gas ideal es directamente proporcional a la cantidad de partículas (n) para una masa de gas definida.

V1/n1 = V2/n2


Como se puede apreciar estas leyes son sencillas y para reafirmar el tema es bueno programarlo, en está ocasión programe las leyes de los gases ideales, se que no estoy considerando las unidades de las diferentes variables, eso lo abordaremos más adelante. El código tiene la misma estructura que el código anterior por lo que sí comprendiste el anterior este será mas fácil.

# Ley de Boyle a Temperatura constante P1V1 = P2V2


def BOYLE():

print("Has seleccionado la Ley de Boyle\nLa cual nos indica que a temperatura constante el volumen de un gas ideal es inversamente proporcional a la presión para una masa de gas definida")

print("\nEntonces cuando: \nLa presión aumenta el volumen disminuye y cuando la presión disminuye el volumen aumenta")

print("\nVariables disponibles :\n\n1) Presión 1\n2) Volumen 1\n3) Presión 2\n4) Volumen 2")

try:

Opcion1 = int(input("\nIngresa la varibale de interes :"))

if Opcion1 == 1:

print("\nHas seleccionado la opción 1, la obtención de la presión 1")

Volumen1 = float(input("\nIngresa el volumen 1 : "))

Presion2 = float(input("Ingresa la presión 2 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# P1V1 = P2V2 => P1 = P2V2/V1

Presion1 = (Presion2*Volumen2)/Volumen1

print("\nLa presión 1 es : ",Presion1,"psi")

if Opcion1 == 2:

print("Has seleccionado la opción 2, la obtención del volumen 1")

Presion1 = float(input("Ingresa la presión 1 : "))

Presion2 = float(input("Ingresa la presión 2 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# P1V1 = P2V2 => V1 = P2V2/P1

Volumen1 = (Presion2*Volumen2)/Presion1

print("El volumen 1 es : ",Volumen1,"ft3")

elif Opcion1 == 3:

print("Has seleccionado la opción 3, la obtención de la presión 2")

Presion1 = float(input("Ingresa la presión 1 : "))

Volumen1 = float(input("Ingresa el volumen 1 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# P1V1 = P2V2 => P2 = V1P1/V2 

Presion2 = (Volumen1*Presion1)/Volumen2

print("La presión 2 es : ",Presion2,"psi")

elif Opcion1 == 4:

print("Has seleccionado la opción 4, la obtención del volumen 2")

Presion1 = float(input("Ingresa la presión 1 : "))

Volumen1 = float(input("Ingresa el volumen 1 : "))

Presion2 = float(input("Ingresa la presión 2 : "))

# P1V1 = P2V2 => P2 = V1P1/V2

Volumen2 = (Volumen1*Presion1)/Presion2

print("El volumen 2 es : ",Volumen2,"ft3")

else:

print("Opción no disponible")

Inicio2 = BOYLE()

except ValueError:

print("Revisa los datos de entrada")

Inicio2 = BOYLE()

except ZeroDivisionError:

print("No se puede dividir entre cero")

Inicio2 = BOYLE()

finally:

pass

return

# Ley de Charles a Presión constante V1/T1 = V2/T2

def CHARLES():

print("Has seleccionado la Ley de Charles\nLa cual nos indica que a presión constante el volumen de un gas ideal es directamente proporcional a la temperatura para una masa de gas definida")

print("\nEntonces cuando: \nEl volumen aumenta la temperatura aumenta y cuando el volumen disminuye la temperatura disminuye")

print("\nVariables disponibles :\n\n1) Temperatura 1\n2) Volumen 1\n3) Temperatura 2\n4) Volumen 2")

try:

Opcion1 = int(input("\nIngresa la varibale de interes :"))

if Opcion1 == 1:

print("\nHas seleccionado la opción 1, la obtención de la Temperatura 1")

Volumen1 = float(input("\nIngresa el volumen 1 : "))

Temperatura2 = float(input("Ingresa la temperatura 2 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# V1/T1 = V2/T2 => T1 = V1T2/V2

Temperatura1 = (Temperatura2*Volumen1)/Volumen2

print("\nLa temperatura 1 es : ",Temperatura1,"F")

if Opcion1 == 2:

print("Has seleccionado la opción 2, la obtención del volumen 1")

Temperatura1 = float(input("Ingresa la temperatura 1 : "))

Temperatura2 = float(input("Ingresa la temperatura 2 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# V1/T1 = V2/T2 => V1 = V2T1/T2

Volumen1 = (Temperatura1*Volumen2)/Temperatura2

print("El volumen 1 es : ",Volumen1,"ft3")

elif Opcion1 == 3:

print("Has seleccionado la opción 3, la obtención de la Temperatura 2")

Temperatura1 = float(input("Ingresa la temperatura 1 : "))

Volumen1 = float(input("Ingresa el volumen 1 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# V1/T1 = V2/T2 => T2 = V2T1/V1

Temperatura2 = (Volumen2*Temperatura1)/Volumen1

print("La temperatura 2 es : ",Temperatura2,"F")

elif Opcion1 == 4:

print("Has seleccionado la opción 4, la obtención del volumen 2")

Temperatura1 = float(input("Ingresa la temperatura 1 : "))

Volumen1 = float(input("Ingresa el volumen 1 : "))

Temperatura2 = float(input("Ingresa la temperatura 2 : "))

# V1/T1 = V2/T2 => V2 = V1T2/T1

Volumen2 = (Volumen1*Temperatura2)/Temperatura1

print("El volumen 2 es : ",Volumen2,"ft3")

else:

print("Opción no disponible")

Inicio2 = CHARLES()

except ValueError:

print("Revisa los datos de entrada")

Inicio2 = CHARLES()

except ZeroDivisionError:

print("No se puede dividir entre cero")

Inicio2 = CHARLES()

finally:

pass

return

# Ley de Lussac a Volumen constante P1/T1 = P2/T2

def LUSSAC():

print("\nHas seleccionado la Ley de Gay-Lussac\nLa cual nos indica que a volumen constante la presión de un gas ideal es directamente proporcional a la temperatura para una masa de gas definida")

print("\nEntonces cuando: \nLa presión aumenta la temperatura aumenta y cuando la presión disminuye la temperatura disminuye")

print("\nVariables disponibles :\n\n1) Presión 1\n2) Temperatura 1\n3) Presión 2\n4) Temperatura 2\n")

try:

Opcion1 = int(input("\nIngresa la varibale de interes : "))

if Opcion1 == 1:

print("\n\nHas seleccionado la opción 1, la obtención de la presión 1")

Temperatura1 = float(input("\nIngresa el temperatura 1 : "))

Presion2 = float(input("Ingresa la presión 2 : "))

Temperatura2 = float(input("Ingresa el temperatura 2 : "))

# P1/T1 = P2/T2 => P1 = P2T1/T2

Presion1 = (Presion2*Temperatura1)/Temperatura2

print("\nLa presión 1 es : ",Presion1,"psi")

if Opcion1 == 2:

print("\n\nHas seleccionado la opción 2, la obtención de la temperatura 1")

Presion1 = float(input("\nIngresa la presión 1 : "))

Presion2 = float(input("Ingresa la presión 2 : "))

Temperatura2 = float(input("Ingresa el Temperatura2 2 : "))

# P1/T1 = P2/T2 => T1 = T2P1/P2

Temperatura1 = (Presion1*Temperatura2)/Presion2

print("\n\nLa temperatura 1 es : ",Temperatura1,"F")

elif Opcion1 == 3:

print("\nHas seleccionado la opción 3, la obtención de la presión 2")

Presion1 = float(input("\n\nIngresa la presión 1 : "))

Temperatura1 = float(input("Ingresa el temperatura 1 : "))

Temperatura2 = float(input("Ingresa el temperatura 2 : "))

# V1/T1 = V2/T2 => T2 = V2T1/V1

Presion2 = (Temperatura2*Presion1)/Temperatura1

print("\n\nLa presión 2 es : ",Presion2,"psi")

elif Opcion1 == 4:

print("\n\nHas seleccionado la opción 4, la obtención de la temperatura 2")

Presion1 = float(input("\nIngresa la presión 1 : "))

Temperatura1 = float(input("Ingresa el temperatura 1 : "))

Presion2 = float(input("Ingresa la presión 2 : "))

# V1/T1 = V2/T2 => T2 = T1P2/P1

Temperatura2 = (Temperatura1*Presion2)/Presion1

print("\n\nLa temperatura 2 es : ",Temperatura2,"F")

else:

print("Opción no disponible")

Inicio2 = LUSSAC()

except ValueError:

print("Revisa los datos de entrada")

Inicio2 = LUSSAC()

except ZeroDivisionError:

print("No se puede dividir entre cero")

Inicio2 = LUSSAC()

finally:

pass

return

# Ley de Avogadro a Temperatura y Presión constante V1/n1 = V2/n2

def AVOGADRO():

print("\nHas seleccionado la Ley de Avogadro\nLa cual nos indica que a temperatura y presión constante el volumen de un gas ideal es directamente proporcional a la cantidad de partículas (n) para una masa de gas definida")

print("\nEntonces cuando: \nEl volumen aumenta la cantidad de partículas aumenta y cuando el volumen disminuye la cantidad de partículas disminuye")

print("\nVariables disponibles :\n\n1) Volumen 1\n2) n 1\n3) Volumen 2\n4) n 2\n")

try:

Opcion1 = int(input("\nIngresa la varibale de interes : "))

if Opcion1 == 1:

print("\n\nHas seleccionado la opción 1, la obtención de la Volumen 1")

n1 = float(input("\nIngresa n 1 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

n2 = float(input("Ingresa n 2 : "))

# V1/n1 = V2/n2 => V1 = V2n1/n2

Volumen1 = (Volumen2*n1)/n2

print("\nEl volumen 1 es : ",Volumen1 ,"ft3")

if Opcion1 == 2:

print("\n\nHas seleccionado la opción 2, la obtención de n 1")

Volumen1 = float(input("\nIngresa la volumen 1 : "))

Volumen2 = float(input("Ingresa la volumen 2 : "))

n2 = float(input("Ingresa n2 2 : "))

# V1/n1 = V2/n2 => n1 = V1n2/V2

n1 = (Volumen1*n2)/Volumen2

print("\n\nEl n 1 es : ",n1)

elif Opcion1 == 3:

print("\nHas seleccionado la opción 3, la obtención del volumen 2")

Volumen1 = float(input("\n\nIngresa el volumen 1 : "))

n1 = float(input("Ingresa n 1 : "))

n2 = float(input("Ingresa n 2 : "))

# V1/n1 = V2/n2 => V2 = v1n2/n1

Volumen2 = (Volumen1*n2)/n1

print("\n\nEl volumen 2 es : ",Volumen2,"ft3")

elif Opcion1 == 4:

print("\n\nHas seleccionado la opción 4, la obtención de n 2")

Volumen1 = float(input("\nIngresa el volumen 1 : "))

n1 = float(input("Ingresa n 1 : "))

Volumen2 = float(input("Ingresa el volumen 2 : "))

# V1/n1 = V2/n2 => n2 = V2n1/V1

n2 = (n1*Volumen2)/Volumen1

print("\n\nEl n 2 es : ",n2)

else:

print("Opción no disponible")

Inicio2 = AVOGADRO()

except ValueError:

print("Revisa los datos de entrada")

Inicio2 = AVOGADRO()

except ZeroDivisionError:

print("No se puede dividir entre cero")

Inicio2 = AVOGADRO()

finally:

pass

return

def Leyes():

print("Hola, hoy calcularemos algunas leyes de los gases ideales")

print("Para ello necesitaremos datos simples cómo lo es Presión, Temperatura y Volumen")

print("\nLas opciones son las siguientes :\n1) Ley de Boyle\n2) Ley de Charles\n3) Ley de Gay-Lussac\n4) Ley de Avogadro")

Opciones = int(input("Ingresa la opción deseada : "))

if Opciones == 1:

Inicio = BOYLE()

elif Opciones == 2:

Inicio = CHARLES()

elif Opciones == 3:

Inicio = LUSSAC()

elif Opciones == 4:

Inicio = AVOGADRO()

else:

print("Opción no disponible")

Inicio = Leyes()

return

Inicio = Leyes()