2026. június 21., vasárnap

Vegyészetben elemzés

Kiszámolja az oldat koncentrációját 
-------------
import math

class KemiaiOldat:
    """Kémiai oldatokat reprezentáló osztály mérnöki számításokhoz."""
    
    def __init__(self, anyagmennyiseg_mol: float, terfogat_liter: float, savas_e: bool = True):
        self.mol = anyagmennyiseg_mol
        self.liter = terfogat_liter
        self.savas_e = savas_e
        
    def molaritas(self) -> float:
        """Kiszámolja az oldat koncentrációját (mol/dm^3)."""
        if self.liter <= 0:
            raise ValueError("A térfogatnak nagyobbnak kell lennie 0-nál!")
        return self.mol / self.liter
        
    def pH_ertek(self) -> float:
        """Becsült pH érték számítása erős savakra vagy bázisokra."""
        c = self.molaritas()
        if c <= 0:
            return 0.0
        
        # pH = -log10(c) erős sav esetén, pOH erős bázisnál
        ertek = -math.log10(c)
        
        if self.savas_e:
            return ertek
        else:
            return 14.0 - ertek

# Példa az objektum használatára:
# Készítsünk egy 0.1 mol/dm^3-es sósav (savas) oldatot
sosav = KemiaiOldat(anyagmennyiseg_mol=0.1, terfogat_liter=1.0, savas_e=True)

print(f"Koncentráció: {sosav.molaritas():.3f} mol/l")
print(f"Becsült pH: {sosav.pH_ertek():.2f}")
...............
Koncentráció: 0.100 mol/l
Becsült pH: 1.00

Nincsenek megjegyzések:

Megjegyzés küldése