From 604c7c9929825285aa3eab282e455c00024ca7e1 Mon Sep 17 00:00:00 2001 From: James Rising Date: Sat, 30 Jul 2016 17:26:10 -0400 Subject: [PATCH] start of brewery component --- src/Brewery.jl | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/Brewery.jl diff --git a/src/Brewery.jl b/src/Brewery.jl new file mode 100644 index 00000000..4033b02f --- /dev/null +++ b/src/Brewery.jl @@ -0,0 +1,28 @@ +# The Brewery Component +# This is how we make beer + +using Mimi + +@defcomp Brewery begin + region = Index() + + production = Parameter(index=[region, time], unit="liter") + + hopsdemand = Variable(index=[region, time], unit="MT") + waterdemand = Variable(index=[region, time], unit="1000 m^3") +end + +function run_timestep(c::Brewery, tt::Int64) + v, p, d = getvpd(c) + + v.hopsdemand[:, tt] = .07 * p.production[:, tt] + v.waterdemand[:, tt] = 2 * p.production[:, tt] / 1e6 +end + +function initbrewer(m::Model) + brewery = addcomponent(m, Brewery) + + production = readtable("../data/county-info.csv")[:, :LandArea_sqmi] + + brewery[:production] = repeat(convert(Vector{Float64}, dropna(production)), outer=[1, numsteps]) +end