Está en la página 1de 17

INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE OCCIDENTE

ALGORITMOS Y PROGRAMACIÓN

PROYECTO “CALCULADORA QUÍMICA”

Profesor: Leobardo Ruiz

Equipo:
Karen Anahí Carreón Martínez

727077 Carlos Manuel Bugarin

García 730345 FECHA

02 de diciembre, 202

1
ÍNDICE

Portada ....................................................................................... 1

Índice............................................................................................ 2

Nombre del Proyecto ................................................................. 3

Definición del problema .............................................................3

Justificación ................................................................................3

Motivación ...................................................................................3

Objetivo .......................................................................................4

Requerimientos funcionales.......................................................4

Introducción .............................................................................. 4-5

Diagrama de Flujo .................................................................... 6-9

Implementación.........................................................................10-11

Codigo Fuente......................................................................... 11-14

Pruebas.................................................................................... 14-16

Conclusiones............................................................................ 16

Referencias............................................................................... 17

2
Nombre del proyecto: Calculadora esencial de Química general

Definición del problema


Cuando se cursa una asignatura de química general se requieren realizar
múltiples cálculos, estos muchas veces generan perdida de tiempo debido a la
demora de tener que estar consultando los datos en diversas fuentes, por lo que
nuestro objetivo con esta calculadora es el facilitar el calculo de 4 problemas
elementales que se presentan en la asignatura de química general, así como
disminuir el tiempo en que estos se realizan. Para que nuestro proyecto sea
posible se deben generar entradas manuales introducidas por el usuario, por
ejemplo para balancear una ecuación, el usuario deberá introducir el compuesto
químico, y posteriormente nuestro algoritmo podrá balancear la cantidad de
elementos del compuesto al leer datos de la tabla periódica, por lo que nuestra
salida seria nuestro elemento balanceado, y de la misma manera será para
nuestras tres opciones restantes, ( el cálculo de la masa molar, consultar la tabla
periódica y el cálculo de conversiones) funcionando todas con una entrada manual.

Justificación
El desarrollo de este proyecto principalmente es para ayudar a estudiantes que
cursan alguna asignatura relacionada con química general, para facilitar los
cálculos que constantemente se requieren a lo largo de la asignatura, tales
como el balanceo de ecuaciones, el calculo de la masa molar, consultar la tabla
periódica y el cálculo de conversiones.

Motivación

Nosotros al ser estudiante de ingeniería química ya cursamos la materia de


química general I y II, pero fue un tanto tedioso tener que buscar en distintos sitios
información para realizar los cálculos, por lo que motivados por la ley del mínimo
esfuerzo decidimos compilar en una calculadora cálculos importantes que se
realizan a lo largo de la asignatura con el objetivo de ahorrar tiempo, así como
facilitar el procedimiento de realizar los cálculos.

3
Objetivo
 Desarrollar de manera práctica todos los temas adquiridos en la clase de
algoritmos y programación.
 Desarrollar una calculadora que permita que las personas involucradas
en el área teórica o práctica de química general accedan a conceptos o
despejes químicos de manera rápida y eficaz.
 Obtener resultados que representen un apoyo a los estudiantes de
química general en los cálculos de un problema de dicha asignatura.
 Emplear librerías que ayuden al desarrollo del estudio de la química como
la tabla periódica.

Requerimientos funcionales

Para que nuestro algoritmo pueda funcionar de manera correcta, será necesario
el uso de la lectura de archivos, que en nuestro caso nuestro principal archivo
será la tabla periódica, para que una ves que los usuarios realicen una entrada,
esta pueda ser reconocida mediante la lectura de la tabla y posteriormente nos
pueda entregar un resultado satisfactorio y no un error.
Algunos de los requerimientos funciónales son:
-Ciclos for.
-Ciclos while.
-Lectura de archivos.
-Función if.
-Función else.
-Bibliotecas.
-Entradas manuales de usuario.

Introducción

En sus primeros días la calculadora simplemente realizaba cálculos sencillos


como sumas y restas, pero con el tiempo, la dependencia humana creció con
respecto al uso de estos dispositivos. A medida que se desarrollaba más y más
la ciencia como las matemáticas, la calculadora se volvía cada vez más con
una necesidad desesperada de encontrar algunas medidas que pudieran ayudar
a realizar estos cálculos.
4
Finalmente, en un invento revolucionario, el mundo vio su primera calculadora
científica de mano, que tenía la capacidad de realizar más que sumar o restar.
En la actualidad, las calculadoras están diseñadas de manera que puedan
manejar situaciones matemáticas tanto simples como complejas.

Los avances tecnológicos y las facilidades que aportan los nuevos aparatos
electrónicos aportan, cada vez más, nuevas vías de progreso en la industria
química, aunque también es cierto que, por el momento, no desbancan a los
materiales básicos que un laboratorio químico debe tener en sus mesas y
armarios. Sofisticados medidores digitales y balanzas de precisión conviven con
probetas de vidrio y pipetas, imprescindibles para manipular los elementos. Pero
es necesario seguir persistiendo en métodos que ayuden a facilitar, algunas
cosas en el área matemática de la química y para ello se implementan
diversos algoritmos en diversos lenguajes como Python.

Python que es un interpretador de instrucciones muy eficiente y de acceso libre


y fácil de aprender. Python, en conjunto con sus librerías (NumPy, SciPy, FiPy),
proporciona una herramienta perfecta que facilita el aprendizaje y desarrollo de
la intuición necesarias para la resolución de estos problemas de forma libre y
gratuita.

Diagramas de flujo
5
6
7
8
9
Implementación
En las implementaciones agregamos la biblioteca ChemPy es un paquete de
Python diseñado principalmente para resolver y abordar problemas en Química
física, analítica e inorgánica. Es un conjunto de herramientas gratuito de código
abierto de Python para aplicaciones de química, ingeniería química y ciencia de
materiales.

Algunas de sus aplicaciones:

Equilibrio de la estequiometria de una reacción química

from chempy import balance_stoichiometry # Main reaction in NASA's booster rockets:

reac, prod = balance_stoichiometry({'NH4ClO4', 'Al'}, {'Al2O3', 'HCl', 'H2O', 'N2'}) from


pprint import pprint
pprint(reac)

{'Al': 10, 'NH4ClO4': 6} pprint(prod)

{'Al2O3': 5, 'H2O': 9, 'HCl': 6, 'N2': 3}


from chempy import mass_fractions
for fractions in map(mass_fractions, [reac, prod]):

... pprint({k: '{0:.3g} wt%'.format(v*100) for k, v in fractions.items()}) ...


{'Al': '27.7 wt%', 'NH4ClO4': '72.3 wt%'}
{'Al2O3': '52.3 wt%', 'H2O': '16.6 wt%', 'HCl': '22.4 wt%', 'N2': '8.62 wt%'}

Reacciones de equilibrio

from chempy import Equilibrium


from sympy import symbols
K1, K2, Kw = symbols('K1 K2 Kw')
e1 = Equilibrium({'MnO4-': 1, 'H+': 8, 'e-': 5}, {'Mn+2': 1, 'H2O': 4}, K1) e2 =
Equilibrium({'O2': 1, 'H2O': 2, 'e-': 4}, {'OH-': 4}, K2)

coeff = Equilibrium.eliminate([e1, e2], 'e-')

coeff [4, -5]

redox = e1*coeff[0] + e2*coeff[1]

10
print(redox)
20 OH- + 32 H+ + 4 MnO4- = 26 H2O + 4 Mn+2 + 5 O2; K1**4/K2**5

autoprot = Equilibrium({'H2O': 1}, {'H+': 1, 'OH-': 1}, Kw) n = redox.cancel(autoprot)


n

20
redox2 = redox + n*autoprot print(redox2)

12 H+ + 4 MnO4- = 4 Mn+2 + 5 O2 + 6 H2O; K1**4*Kw**20/K2**5

Código Fuente:

11
12
13
Pruebas:

Prueba1: Fallo en el código debido a la falta de referencia en la ruta

14
Prueba 2: Calculo de la masa molar del dióxido de carbono

Prueba 3 Consulta de algún elemento de la tabla periódica, para conocer el


nombre del elemento, sus valencias y su masa atómica

15
Prueba 4: Conversión de grados Celsius a grados Fahrenheit

Conclusiones
Por medio de este proyecto se logro concretar lo realizado en la clase y con esto
desarrollar la aplicación en base a las necesidades para ingenieros y con mejorar
la eficiencia de resolver problemas. Además identificamos la importancia de las
bibliotecas para completar nuestros algoritmos y su gran utilidad.

16
Referencias
-M.E. Mónica Olivares Robles Gil , Ingeniería y
progrmación_(2021)https://blogs.unitec.mx/vida-universitaria/para-que-sirve-la-
programacion/

-Francisco J, Isaías.Python en la ingeniería química,


(2013)https://www.cacheme.org/python-ingenieria-quimica/

-ChemPy Learn
Tutorials-https://learntutorials.net/es/python/topic/10625/chempy- --paquete-
de-python

17

También podría gustarte