# -*- coding: UTF-8 -*-
from __future__ import division
from __future__ import unicode_literals


def Cvdopus(Q, q, gamma, Cf,category=0, P=0.25):

    """
    Концентрация взвешенных веществ в очищенной сточной воде,
    разрешенной к сбросу в водный объект;
    Q, q - расход воды соответственно в реке и сточных водах, м3/с;
    gamma - коэффициент смешения;
    Сf - концентрация вещества в воде водотока, г/м3;
    P - разрешенное санитарными нормами увеличение содержания взвешенных
    веществ в воде водного объекта в контрольном створе:
    - не более 0.25 мг/дм3 для водоемов хозяйственно - питьевого и
    рыбохозяйственного назначения 1 категории;
    - не более 0.75 мг/дм3 для водоемов культурно-бытового и
    рыбохозяйственного назначения 2 категории;
    Если category=0, то P=0.25, иначе P=0.75;
    """

    if category:
        P = 0.75

    result = P * ((gamma * Q) / q + 1) + Cf
    text = "C[sub]в. доп[/sub]  = P · ((γ · Q) / q + 1) + C[sub]ф[/sub] = \
{} · (({:.3g} · {}) / {} + 1) + {} = {:.5g} мг/дм[sup]3[/sup]".format(P, gamma, Q, q, Cf, result)
    return (result, text)


def vzv_pur_eff(Cvst, Cvdop):

    """ Необходимая степень очистки сточных вод от взвешенных веществ """

    result = (Cvst- Cvdop) / Cvst * 100
    text = "Z = (C[sub]взв.ст[/sub] - C[sub]взв.доп[/sub]) / C[sub]взв.ст[/sub]·100%  = \
({0}-{1:.5g}) / {1:.5g}·100% = {2:.5g}%".format(Cvst, Cvdop, result)
    return (result, text)
