def METHOD_NAME(mvisc):
    """Viscosity calculation for water
    International Association for the Properties of Water and Steam (2008).
        IAPWS R12-08, "Release on the IAPWS Formulation 2008 for the Viscosity
        of Ordinary Water Substance, URL: http://iapws.org/relguide/visc.pdf
    """
    H0 = {0: 1.67752, 1: 2.20462, 2: 0.6366564, 3: -0.241605}
    H1 = {
        (0, 0): 5.20094e-1,
        (1, 0): 8.50895e-2,
        (2, 0): -1.08374,
        (3, 0): -2.89555e-1,
        (4, 0): 0.0,
        (5, 0): 0.0,
        (0, 1): 2.22531e-1,
        (1, 1): 9.99115e-1,
        (2, 1): 1.88797,
        (3, 1): 1.26613,
        (4, 1): 0.0,
        (5, 1): 1.20573e-1,
        (0, 2): -2.81378e-1,
        (1, 2): -9.06851e-1,
        (2, 2): -7.72479e-1,
        (3, 2): -4.89837e-1,
        (4, 2): -2.57040e-1,
        (5, 2): 0.0,
        (0, 3): 1.61913e-1,
        (1, 3): 2.57399e-1,
        (2, 3): 0.0,
        (3, 3): 0.0,
        (4, 3): 0.0,
        (5, 3): 0.0,
        (0, 4): -3.25372e-2,
        (1, 4): 0.0,
        (2, 4): 0.0,
        (3, 4): 6.98452e-2,
        (4, 4): 0.0,
        (5, 4): 0.0,
        (0, 5): 0.0,
        (1, 5): 0.0,
        (2, 5): 0.0,
        (3, 5): 0.0,
        (4, 5): 8.72102e-3,
        (5, 5): 0.0,
        (0, 6): 0.0,
        (1, 6): 0.0,
        (2, 6): 0.0,
        (3, 6): -4.35673e-3,
        (4, 6): 0.0,
        (5, 6): -5.93264e-4,
    }
    return (
        1e2
        * pyo.sqrt(1.0 / mvisc.tau)
        / sum(H0val * mvisc.tau**i for i, H0val in H0.items())
        * pyo.exp(
            mvisc.delta
            * sum(
                (mvisc.tau - 1) ** i
                * sum(H1[i, j] * (mvisc.delta - 1) ** j for j in range(0, 7))
                for i in range(0, 6)
            )
        )
    )