# Path: brew/utilities/temperature.py
# def mash_infusion(
#     target_temp, initial_temp, grain_weight, water_volume, infusion_temp=212
# ):
#     """
#     Get Volume of water to infuse into mash to reach scheduled temperature
# 
#     All temperatures in F.
# 
#     http://howtobrew.com/book/section-3/the-methods-of-mashing/calculations-for-boiling-water-additions
# 
#     :param float target_temp: Mash Temperature to Achieve
#     :param float inital_temp: Mash Temperature
#     :param float grain_weight: Total weight of grain in mash (lbs)
#     :param float water_volume: Total volume of water in mash (qt)
#     :param float infusion_temp: Temperature of water to infuse
#     :return: The volume of water to add to the mash (qt)
#     :rtype: float
#     """
#     return (
#         (target_temp - initial_temp)
#         * (0.2 * grain_weight + water_volume)
#         / (infusion_temp - target_temp)
#     )
# 
# Path: brew/utilities/temperature.py
# def strike_temp(target_temp, initial_temp, liquor_to_grist_ratio=1.5):
#     """
#     Get Strike Water Temperature
# 
#     All temperatures in F.
# 
#     http://howtobrew.com/book/section-3/the-methods-of-mashing/calculations-for-boiling-water-additions
# 
#     :param float target_temp: Mash Temperature to Achieve
#     :param float initial_temp: Malt Temperature
#     :param float liquor_to_grist_ratio: The Liquor to Grist Ratio (qt:lbs)
#     :return: The strike water temperature
#     :rtype: float
#     """  # noqa
#     return (0.2 / liquor_to_grist_ratio) * (target_temp - initial_temp) + target_temp


from brew.utilities.temperature import mash_infusion
from brew.utilities.temperature import strike_temp
            water_volume, round(sk_temp, 1)
        )
    )  # noqa
    print("Your temperature should then reach {} degF".format(target_temp))
    print("Keep your temperature here for 20 minutes")

    initial_temp = sk_temp
    target_temp = 140
    infusion_temp = 210

    infusion_volume = mash_infusion(
        target_temp,
        initial_temp,
        grain_weight,
        water_volume,
        infusion_temp=infusion_temp,
    )

    print("")
    print(
        "Add {} qts of {} degF water".format(round(infusion_volume, 1), infusion_temp)
    )  # noqa
    print("Your temperature should then reach {} degF".format(target_temp))
    print("Keep your temperature here for 40 minutes")

    initial_temp = target_temp
    target_temp = 158
    infusion_temp = 210
    water_volume += infusion_volume


# Path: brew/utilities/temperature.py
# def mash_infusion(
#     target_temp, initial_temp, grain_weight, water_volume, infusion_temp=212
# ):
#     """
#     Get Volume of water to infuse into mash to reach scheduled temperature
# 
#     All temperatures in F.
# 
#     http://howtobrew.com/book/section-3/the-methods-of-mashing/calculations-for-boiling-water-additions
# 
#     :param float target_temp: Mash Temperature to Achieve
#     :param float inital_temp: Mash Temperature
#     :param float grain_weight: Total weight of grain in mash (lbs)
#     :param float water_volume: Total volume of water in mash (qt)
#     :param float infusion_temp: Temperature of water to infuse
#     :return: The volume of water to add to the mash (qt)
#     :rtype: float
#     """
#     return (
#         (target_temp - initial_temp)
#         * (0.2 * grain_weight + water_volume)
#         / (infusion_temp - target_temp)
#     )
# 
# Path: brew/utilities/temperature.py
# def strike_temp(target_temp, initial_temp, liquor_to_grist_ratio=1.5):
#     """
#     Get Strike Water Temperature
# 
#     All temperatures in F.
# 
#     http://howtobrew.com/book/section-3/the-methods-of-mashing/calculations-for-boiling-water-additions
# 
#     :param float target_temp: Mash Temperature to Achieve
#     :param float initial_temp: Malt Temperature
#     :param float liquor_to_grist_ratio: The Liquor to Grist Ratio (qt:lbs)
#     :return: The strike water temperature
#     :rtype: float
#     """  # noqa
#     return (0.2 / liquor_to_grist_ratio) * (target_temp - initial_temp) + target_temp


# Path: examples/enzymatic_rests.py
from brew.utilities.temperature import mash_infusion
from brew.utilities.temperature import strike_temp

            water_volume, round(sk_temp, 1)
        )
    )  # noqa
    print("Your temperature should then reach {} degF".format(target_temp))
    print("Keep your temperature here for 20 minutes")

    initial_temp = sk_temp
    target_temp = 140
    infusion_temp = 210

    infusion_volume = mash_infusion(
        target_temp,
        initial_temp,
        grain_weight,
        water_volume,
        infusion_temp=infusion_temp,
    )

    print("")
    print(
        "Add {} qts of {} degF water".format(round(infusion_volume, 1), infusion_temp)
    )  # noqa
    print("Your temperature should then reach {} degF".format(target_temp))
    print("Keep your temperature here for 40 minutes")

    initial_temp = target_temp
    target_temp = 158
    infusion_temp = 210
    water_volume += infusion_volume


    infusion_volume = mash_infusion(