Capstone Model 2-28 FINAL.stmx

Total

Count

Including Array Elements

Variables

148

148

Sectors

9

Stocks

21

21

Flows

46

46

Converters

81

81

Constants

46

46

Equations

81

81

Graphicals

6

6



Equation

Properties

Units

Documentation

Annotation

Top-Level Model:

Compost(t)

Compost(t - dt) + (Composting_Waste + Composting_Waste_D) * dt

INIT Compost = 0

Lbs

The quantity of food composted over the course of a year

Donated_Food(t)

Donated_Food(t - dt) + (Leftovers_to_Donation_D + Leftovers_to_Donation) * dt

INIT Donated_Food = 0

Lbs

The quantity of food that is donated outside of the JMU ecosystem over the course of a year.

D Hall Food recovery averages approximately 45 pounds per week.

"Ingredients_D-Hall"(t)

"Ingredients_D-Hall"(t - dt) + (Buying_Ingredients_D + Presemester_order_D - Cooking_D - Spoiling_Ingredients_D) * dt

INIT "Ingredients_D-Hall" = 1000

Lbs

Ingredients bought for cooking at D-Hall.

"Ingredients_E-Hall"(t)

"Ingredients_E-Hall"(t - dt) + (Buying_Ingredients + Presemester_order - Cooking - Spoiling_Ingredients) * dt

INIT "Ingredients_E-Hall" = 1000

Lbs

Ingredients bought for cooking at E-Hall.

Insecure_Students_Eating_from_Pantry(t)

Insecure_Students_Eating_from_Pantry(t - dt) + (Students_to_Pantry - Students_Fed_From_Pantry) * dt

INIT Insecure_Students_Eating_from_Pantry = 0
TRANSIT TIME = 1
CONTINUOUS
ACCEPT MULTIPLE BATCHES

People

Food insecure students that meet needs through the pantry.

CONVEYOR

Insecure_Students_Eating_in_Dining_Hall(t)

Insecure_Students_Eating_in_Dining_Hall(t - dt) + (Insecure_Students_to_Dining_Hall - Insecure_Students_Returning_from_Dining_Hall) * dt

INIT Insecure_Students_Eating_in_Dining_Hall = 0
TRANSIT TIME = 1
CONTINUOUS
ACCEPT MULTIPLE BATCHES

People

Food insecure students that meet needs through the dining halls

CONVEYOR

Insecure_Students_Eating_off_campus(t)

Insecure_Students_Eating_off_campus(t - dt) + (Students_to_Off_Campus - Insecure_Students_Returning_from_Off_Campus) * dt

INIT Insecure_Students_Eating_off_campus = 0
TRANSIT TIME = 1
CONTINUOUS
ACCEPT MULTIPLE BATCHES

People

Food insecure students that meet needs off campus.

CONVEYOR

"Leftover_Food_D-Hall"(t)

"Leftover_Food_D-Hall"(t - dt) + (Creating_Leftover_food_D - Reusing_food_D - Leftovers_to_Pantry_D - Leftovers_to_Donation_D - Leftovers_going_bad_D) * dt

INIT "Leftover_Food_D-Hall" = 500

Lbs

Leftover Food that is still human edible. D-Hall.

"Leftover_Food_E-Hall"(t)

"Leftover_Food_E-Hall"(t - dt) + (Creating_Leftover_food - Reusing_food - Leftovers_to_Pantry - Leftovers_to_Donation - Leftovers_going_bad) * dt

INIT "Leftover_Food_E-Hall" = 500

Lbs

Leftover Food that is still human edible. E-Hall.

Pantry_Stock_of_Food(t)

Pantry_Stock_of_Food(t - dt) + (Leftovers_to_Pantry + Incoming_Pantry_donations_from_Blue_Ridge_Food_Bank + Leftovers_to_Pantry_D - Students_pulling_from_pantry - Pantry_Spoiling) * dt

INIT Pantry_Stock_of_Food = 2000

Lbs

The Lbs. of food present within the JMU pantry.

Perceived_Food_Insecure_Students(t)

Perceived_Food_Insecure_Students(t - dt) + (Food_Insecurity_Initialization + Students_becoming_Food_insecure + Students_Still_Insecure - Students_to_Off_Campus - Students_to_Pantry - Insecure_Students_to_Dining_Hall) * dt

INIT Perceived_Food_Insecure_Students = 0

People

Students who are not consistently meeting needs. Defined as missing meals for non-personal reason more than three times a week.

"Potential_Waste_D-Hall"(t)

"Potential_Waste_D-Hall"(t - dt) + (Unrecoverable_Food_Wasted_D + Student_Wasting_Food_D + Spoiling_Ingredients_D + Leftovers_going_bad_D - Trashing_Waste_D - Composting_Waste_D) * dt

INIT "Potential_Waste_D-Hall" = 0

Lbs

Wasted food that is no longer fit for human consumption. D-Hall

"Potential_waste_E-Hall"(t)

"Potential_waste_E-Hall"(t - dt) + (Unrecoverable_Food_Wasted + Student_Wasting_Food + Spoiling_Ingredients + Leftovers_going_bad - Trashing_Waste - Composting_Waste) * dt

INIT "Potential_waste_E-Hall" = 0

Lbs

Wasted food that is no longer fit for human consumption. E-Hall

"Prepared_Food_D-Hall"(t)

"Prepared_Food_D-Hall"(t - dt) + (Cooking_D + Reusing_food_D - Consuming_food_D - Creating_Leftover_food_D - Unrecoverable_Food_Wasted_D) * dt

INIT "Prepared_Food_D-Hall" = 0

Lbs

Prepared Food Made at D-Hall.

"Prepared_Food_E-Hall"(t)

"Prepared_Food_E-Hall"(t - dt) + (Cooking + Reusing_food - Consuming_food_E - Creating_Leftover_food - Unrecoverable_Food_Wasted) * dt

INIT "Prepared_Food_E-Hall" = 0

Lbs

Prepared Food made at E-Hall

Returned_Insecure_Students(t)

Returned_Insecure_Students(t - dt) + (Students_Fed_From_Pantry + Insecure_Students_Returning_from_Off_Campus + Insecure_Students_Returning_from_Dining_Hall - Students_Leaving_Food_Insecurity - Students_Still_Insecure) * dt

INIT Returned_Insecure_Students = 0

People

The food insecure students as they return from dining.

Secure_Students_Eating_in_Dining_Hall(t)

Secure_Students_Eating_in_Dining_Hall(t - dt) + (Secure_going_to_dining_hall - Secure_returning_from_Dining_Halls) * dt

INIT Secure_Students_Eating_in_Dining_Hall = 0
TRANSIT TIME = 1
CONTINUOUS
ACCEPT MULTIPLE BATCHES

People

Food secure students meeting needs through the dining halls.

CONVEYOR

Secure_Students_Eating_off_campus(t)

Secure_Students_Eating_off_campus(t - dt) + (Secure_going_off_campus - Secure_Returning_from_off_campus) * dt

INIT Secure_Students_Eating_off_campus = 0
TRANSIT TIME = 1
CONTINUOUS
ACCEPT MULTIPLE BATCHES

People

Food secure students meeting needs off campus.

CONVEYOR

Student_Population(t)

Student_Population(t - dt) + ( - Food_Insecurity_Initialization - Food_Security_Initialization) * dt

INIT Student_Population = Initial_Student_Population

People

The initial student population at JMU.

NON-NEGATIVE

Students_consistently_meeting_needs(t)

Students_consistently_meeting_needs(t - dt) + (Food_Security_Initialization + Students_Leaving_Food_Insecurity + Secure_returning_from_Dining_Halls + Secure_Returning_from_off_campus - Students_becoming_Food_insecure - Secure_going_off_campus - Secure_going_to_dining_hall) * dt

INIT Students_consistently_meeting_needs = 0

People

Students not recognized as food insecure.

Trash(t)

Trash(t - dt) + (Trashing_Waste_D + Trashing_Waste) * dt

INIT Trash = 0

Lbs

The quantity of food trashed over the course of a year.

Buying_Ingredients

PULSE(Aramark_Perceived_Demand*Ingredient_Buffer, Days_Supplying_for, Days_Supplying_for)

Lbs/Day

The Ingredients Bought be E-Hall

UNIFLOW

Buying_Ingredients_D

PULSE(Aramark_Perceived_Demand_D*Ingredient_Buffer, Days_Supplying_for_D, Days_Supplying_for_D)

Lbs/Day

The ingredients bought by D-Hall.

UNIFLOW

Composting_Waste

"Ratio_of_Compost/Trash"*"Potential_waste_E-Hall"

Lbs/Day

Waste being composted.

UNIFLOW

Composting_Waste_D

"Ratio_of_Compost/Trash"*"Potential_Waste_D-Hall"

Lbs/Day

Waste from D-Hall that is sent to compost.

UNIFLOW

Consuming_food_D

("Students_going_to_D-Hall")*Food_consumed_per_student_per_day*Effect_on_Prepared_Food_on_Student_Consumption_D

Lbs/Day

Food being consumed at D-Hall

UNIFLOW

Consuming_food_E

("Students_going_to_E-Hall")*Food_consumed_per_student_per_day*Effect_on_Prepared_Food_on_Student_Consumption

Lbs/Day

Flow of food being consumed at E-Hall

UNIFLOW

Cooking

(Aramark_Perceived_Demand/Days_Supplying_for)*Cooked_Food_Buffer

Lbs/Day

Flow of food being cooked at E-Hall

UNIFLOW

Cooking_D

(Aramark_Perceived_Demand_D/Days_Supplying_for_D)*Cooked_Food_Buffer

Lbs/Day

Flow of food being cooked at D-Hall

UNIFLOW

Creating_Leftover_food

IF "Prepared_Food_E-Hall"*Per_day -(Consuming_food_E+Unrecoverable_Food_Wasted)<=0 THEN 0 ELSE "Prepared_Food_E-Hall"*Per_day -(Consuming_food_E+Unrecoverable_Food_Wasted)

Lbs/Day

Food that is pulled from service and is still safe to consume.

UNIFLOW

Creating_Leftover_food_D

IF "Prepared_Food_D-Hall"*Per_day -(Consuming_food_D+Unrecoverable_Food_Wasted_D)<=0 THEN 0 ELSE "Prepared_Food_D-Hall"*Per_day -(Consuming_food_D+Unrecoverable_Food_Wasted_D)

Lbs/Day

Food that is pulled from service and is still safe to consume.

UNIFLOW

Food_Insecurity_Initialization

Student_Population*Initial_Proportion_Food_Insecure

OUTFLOW PRIORITY: 1

People/Days

Dumps fraction of initial students who are food insecure.

UNIFLOW

Food_Security_Initialization

Student_Population* (1-Initial_Proportion_Food_Insecure)

OUTFLOW PRIORITY: 2

People/Days

Dumps fraction of initial students that are food secure

UNIFLOW

Incoming_Pantry_donations_from_Blue_Ridge_Food_Bank

PULSE(1000, Days_Between_Each_donation_shipment, Days_Between_Each_donation_shipment)

Lbs/Day

The food that is specifically bought from Blue Ridge Food Bank for the JMU pantry

UNIFLOW

Insecure_Students_Returning_from_Dining_Hall

CONVEYOR OUTFLOW

People/Days

Food insecure students returning from a meal at the Dining Hall

Insecure_Students_Returning_from_Off_Campus

CONVEYOR OUTFLOW

People/Days

Food Insecure Students returning from a meal off campus

Insecure_Students_to_Dining_Hall

(Perceived_Food_Insecure_Students*Daily_Dining_Hall_Demand_Insecure)+Students_fed_with_punch_bundles

People/Days

Food Insecure students going to eat at a Dining Hall

UNIFLOW

Leftovers_going_bad

"Leftover_Food_E-Hall"*Leftover_Spoilage_Rate

Lbs/Day

Leftovers converted to waste.

UNIFLOW

Leftovers_going_bad_D

"Leftover_Food_D-Hall"*Leftover_Spoilage_Rate

Lbs/Day

Leftovers converted to waste.

UNIFLOW

Leftovers_to_Donation

PULSE( ("Leftover_Food_E-Hall"*Outside_Donation_Rate), Days_between_Donations, Days_between_Donations)

Lbs/Day

Flow of Leftover food to outside donation.

UNIFLOW

Leftovers_to_Donation_D

(PULSE( ("Leftover_Food_D-Hall"*Outside_Donation_Rate), Days_between_Donations, Days_between_Donations))*Dhall_Donation_Switch

Lbs/Day

Leftovers that are donated outside of the JMU system.

UNIFLOW

Leftovers_to_Pantry

"Leftover_Food_E-Hall"*Hall_to_Pantry_Donation_Rate*"E-Hall_to_Pantry_Donation_Switch"

Lbs/Day

Leftovers that are sent to the JMU Pantry

UNIFLOW

Leftovers_to_Pantry_D

"Leftover_Food_D-Hall"*Hall_to_Pantry_Donation_Rate* "D-Hall_to_Pantry_Donation_Switch"

Lbs/Day

Leftovers that are sent to the JMU Pantry.

UNIFLOW

Pantry_Spoiling

MAX(Pantry_Stock_of_Food//Days_to_Spoil, 0)

Lbs/day

Food spoiling from the JMU pantry

UNIFLOW

Presemester_order

PULSE(100000, 0, 220)

Lbs/Day

Pounds of food ordered right before a new semester starts.

UNIFLOW

Presemester_order_D

PULSE(100000, 0, 220)

Lbs/Day

The food D-Hall orders right before the new semester starts.

UNIFLOW

Reusing_food

"Leftover_Food_E-Hall"*Food_reutilization_rate

Lbs/Day

Flow of food being reused.

UNIFLOW

Reusing_food_D

"Leftover_Food_D-Hall"*Food_reutilization_rate

Lbs/Day

Leftovers that are reutilized at D-Hall

UNIFLOW

Secure_going_off_campus

Students_consistently_meeting_needs*Proportion_of_Secure_Students_eating_off_campus

People/Days

Food secure students moving to eat off campus.

UNIFLOW

Secure_going_to_dining_hall

Daily_Demand_Secure*Students_consistently_meeting_needs

People/Days

Food secure students moving to eat on campus.

UNIFLOW

Secure_returning_from_Dining_Halls

CONVEYOR OUTFLOW

People/Days

Food Secure students returning from a meal at the dining halls.

Secure_Returning_from_off_campus

CONVEYOR OUTFLOW

People/Days

Food Secure Students returning from a meal off campus.

Spoiling_Ingredients

"Ingredients_E-Hall"*Proportion_of_Ingredients_spoiling

Lbs/Day

Ingredients that spoil before they are used.

UNIFLOW

Spoiling_Ingredients_D

"Ingredients_D-Hall"*Proportion_of_Ingredients_spoiling

Lbs/Day

Ingredients that spoil before they are used.

UNIFLOW

Student_Wasting_Food

"Students_going_to_E-Hall"*Lbs_of_food_per_plate_trashed

Lbs/Day

Food that is wasted by students.

UNIFLOW

Student_Wasting_Food_D

"Students_going_to_D-Hall"*Lbs_of_food_per_plate_trashed

Lbs/Day

Food that is wasted by students.

UNIFLOW

Students_becoming_Food_insecure

Students_consistently_meeting_needs*Percentage_of_Students_becoming_food_insecure_per_day

People/Days

The natural flux of students between food security and food insecurity based on variable conditions outside of this model.

Students_Fed_From_Pantry

CONVEYOR OUTFLOW

People/Days

Food Insecure students returning from a meal at the JMU Pantry.

Students_Leaving_Food_Insecurity

Returned_Insecure_Students*(1-Proportion_Still_Insecure_Post_meal)+Students_Fed_From_Pantry*0.01

People/Days

Students that upon returning from a certain meal cross the invisible threshold into food security.

UNIFLOW

Students_pulling_from_pantry

MAX(Amount_students_pull_each_day*Insecure_Students_Eating_from_Pantry, 0)

Lbs/day

IF(Pantry_Stock_of_Food > Amount_students_pull_each_day*Insecure_Students_Eating_from_Pantry)
THEN (Insecure_Students_Eating_from_Pantry*Amount_students_pull_each_day )
ELSE 0

UNIFLOW

Students_Still_Insecure

Returned_Insecure_Students*Proportion_Still_Insecure_Post_meal

People/Days

Returned food insecure students that are still food insecure after the meal.

UNIFLOW

Students_to_Off_Campus

Perceived_Food_Insecure_Students*Proportion_of_Insecure_Students_eating_off_campus

People/Days

Food Insecure Students going to eat off campus

UNIFLOW

Students_to_Pantry

Perceived_Food_Insecure_Students*Proportion_of_Students_eating_from_pantry*Proportion_of_Students_willing_to_eat_from_pantry*Effect_of_Pantry_Stock_on_Students_Eating_from_Pantry

People/Days

Food Insecure students going to eat at the JMU Pantry

UNIFLOW

Trashing_Waste

(1-"Ratio_of_Compost/Trash")*"Potential_waste_E-Hall"

Lbs/Day

Waste being trashed.

UNIFLOW

Trashing_Waste_D

(1-"Ratio_of_Compost/Trash")*"Potential_Waste_D-Hall"

Lbs/Day

Waste that is sent to trash.

UNIFLOW

Unrecoverable_Food_Wasted

"Prepared_Food_E-Hall"*Proportion_of_food_wasted

Lbs/Day

Leftover food that is not safe for consumption

UNIFLOW

Unrecoverable_Food_Wasted_D

"Prepared_Food_D-Hall"*Proportion_of_food_wasted

Lbs/Day

Leftover food that is not safe for consumption

UNIFLOW

"2021_Revenue_gained_From_Dining"

32000000

Dollars

https://www.breezejmu.org/business/jmu-dining-hikes-meal-plan-prices-as-sales-fall-18-million/article_0c377ba8-9007-11eb-b707-9ff7e4a8a59f.html

Amount_students_pull_each_day

1

Lbs/People/Day

The pounds of food each student collects on average when visiting the pantry.

Aramark_Perceived_Demand

("Students_going_to_E-Hall")*Food_consumed_per_student_per_day*Days_Supplying_for

Lbs

The perceived demand for food at E-Hall

Aramark_Perceived_Demand_D

("Students_going_to_D-Hall")*Food_consumed_per_student_per_day*Days_Supplying_for_D

Lbs

The perceived demand for D-Hall food

Average_Meal_plan_cost_per_year

5000

Dollars/People

Average cost of the JMU meal plans per year, taken from the per semester cost on JMUs website

Cooked_Food_Buffer

1.2

Dimensionless

The buffer of extra food prepared ontop of the projected demand to ensure the halls don't run out of food.

Cost_of_Composting_Per_pound

45/2000

$/lbs

JMU contracts it's composting through Black Bear Composting, which charges 45$ per ton of food waste collected.

Cost_to_Compost_Waste

Compost*Cost_of_Composting_Per_pound

$

Total $ amount JMU pays to have their waste composted

Current_Cost_vs_Initial

(Average_Meal_plan_cost_per_year-Initial_Cost_of_Meal_Plan_per_year)/Initial_Cost_of_Meal_Plan_per_year

Dimensionless

The current cost of a meal plan per year compared to the original.

"D-Hall_/_E-Hall_split"

0.65

Dimensionless

The Split in Demand between D and E hall

"D-Hall_to_Pantry_Donation_Switch"

0

Dimensionless

Switch for enabling donation from D-Hall to the JMU Pantry

Daily_Demand_Secure

(Demand_Curve_over_year/2)*Proportion_of_students_with_meal_plan

Dimensionless/Days

The proportion of food secure students going to the dining hall each day.

Daily_Dining_Hall_Demand_Insecure

(Demand_Curve_over_year/2)*Proportion_of_students_with_meal_plan

Dimensionless/Days

Days_between_Donations

7

Days

Once every week leftover food is collected from e-hall and sent to Salvation Army.

Days_Between_Each_donation_shipment

7

Days

How often the pantry is buying from Blue Ridge Food Bank.

Days_Supplying_for

7

Days

The days that each order of ingredients is supplying for.

Days_Supplying_for_D

7

Days

The days that each order of ingredients is supplying for.

Days_to_Spoil

21

Days

Days taken for food to spoil in the pantry on average.

Default_proportion_of_students_eating_from_pantry

0.04

Dimensionless/Day

The proportion of students eating from the pantry by default.

Default_Proportion_of_Students_willing_to_eat_from_pantry

0.5

Dimensionless

The Default proportion of students that are willing to accept aid from the JMU pantry.

Demand_Curve_over_year

GRAPH(TIME) Points: (0.0, 0.000), (1.0, 0.000), (2.0, 0.000), (3.0, 0.000), (4.0, 0.000), (5.0, 0.000), (6.0, 0.000), (7.0, 0.000), (8.0, 0.000), (9.0, 0.000), (10.0, 0.000), (11.0, 0.000), (12.0, 0.000), (13.0, 0.000), (14.0, 0.000), (15.0, 0.000), (16.0, 0.000), (17.0, 0.100), (18.0, 2.000), (19.0, 2.000), (20.0, 2.000), (21.0, 1.900), (22.0, 1.900), (23.0, 1.900), (24.0, 1.900), (25.0, 1.800), (26.0, 1.800), (27.0, 1.800), (28.0, 1.700), (29.0, 1.700), (30.0, 1.000), (31.0, 1.600), (32.0, 1.600), (33.0, 1.500), (34.0, 1.400), (35.0, 1.300), (36.0, 1.200), (37.0, 1.100), (38.0, 1.000), (39.0, 1.000), (40.0, 0.900), (41.0, 1.000), (42.0, 1.000), (43.0, 1.000), (44.0, 1.000), (45.0, 1.000), (46.0, 1.000), (47.0, 1.000), (48.0, 1.000), (49.0, 1.000), (50.0, 0.900), (51.0, 1.000), (52.0, 1.000), (53.0, 1.000), (54.0, 1.000), (55.0, 1.000), (56.0, 1.000), (57.0, 2.000), (58.0, 0.800), (59.0, 1.000), (60.0, 1.000), (61.0, 1.000), (62.0, 1.000), (63.0, 1.000), (64.0, 1.000), (65.0, 1.000), (66.0, 1.200), (67.0, 1.000), (68.0, 1.000), (69.0, 1.000), (70.0, 1.000), (71.0, 1.000), (72.0, 1.000), (73.0, 1.000), (74.0, 0.900), (75.0, 0.500), (76.0, 0.200), (77.0, 0.200), (78.0, 0.200), (79.0, 0.200), (80.0, 0.200), (81.0, 0.500), (82.0, 0.900), (83.0, 1.000), (84.0, 1.000), (85.0, 1.000), (86.0, 1.000), (87.0, 1.000), (88.0, 1.000), (89.0, 1.000), (90.0, 1.000), (91.0, 1.200), (92.0, 1.000), (93.0, 1.000), (94.0, 2.000), (95.0, 1.000), (96.0, 1.000), (97.0, 1.000), (98.0, 1.000), (99.0, 0.800), (100.0, 1.000), (101.0, 1.000), (102.0, 2.000), (103.0, 1.000), (104.0, 1.000), (105.0, 1.000), (106.0, 1.000), (107.0, 0.600), (108.0, 1.000), (109.0, 1.000), (110.0, 1.000), (111.0, 0.800), (112.0, 1.000), (113.0, 1.000), (114.0, 1.000), (115.0, 1.000), (116.0, 0.900), (117.0, 1.000), (118.0, 1.000), (119.0, 2.000), (120.0, 1.000), (121.0, 1.000), (122.0, 1.000), (123.0, 1.000), (124.0, 1.000), (125.0, 0.600), (126.0, 1.000), (127.0, 1.000), (128.0, 0.900), (129.0, 0.900), (130.0, 0.800), (131.0, 0.700), (132.0, 0.500), (133.0, 0.200), (134.0, 0.200), (135.0, 0.200), (136.0, 0.200), (137.0, 0.200), (138.0, 0.200), (139.0, 0.200), (140.0, 0.200), (141.0, 0.200), (142.0, 0.200), (143.0, 0.200), (144.0, 0.200), (145.0, 0.200), (146.0, 0.200), (147.0, 0.200), (148.0, 0.200), (149.0, 0.200), (150.0, 0.200), (151.0, 0.200), (152.0, 0.200), (153.0, 0.200), (154.0, 0.200), (155.0, 0.200), (156.0, 0.200), (157.0, 0.200), (158.0, 0.200), (159.0, 0.200), (160.0, 0.200), (161.0, 0.200), (162.0, 0.200), (163.0, 0.200), (164.0, 0.200), (165.0, 0.200), (166.0, 0.200), (167.0, 0.200), (168.0, 0.200), (169.0, 0.200), (170.0, 0.200), (171.0, 0.200), (172.0, 0.200), (173.0, 0.200), (174.0, 0.200), (175.0, 0.200), (176.0, 0.200), (177.0, 0.200), (178.0, 0.200), (179.0, 0.200), (180.0, 0.200), (181.0, 0.200), (182.0, 0.200), (183.0, 0.200), (184.0, 0.200), (185.0, 0.200), (186.0, 0.200), (187.0, 0.200), (188.0, 0.200), (189.0, 0.200), (190.0, 0.200), (191.0, 0.200), (192.0, 0.200), (193.0, 0.200), (194.0, 0.200), (195.0, 0.200), (196.0, 0.200), (197.0, 0.200), (198.0, 0.200), (199.0, 0.200), (200.0, 0.200), (201.0, 0.200), (202.0, 0.200), (203.0, 0.200), (204.0, 0.200), (205.0, 0.200), (206.0, 0.200), (207.0, 0.200), (208.0, 0.200), (209.0, 0.200), (210.0, 0.200), (211.0, 0.200), (212.0, 0.200), (213.0, 0.200), (214.0, 0.200), (215.0, 0.200), (216.0, 0.200), (217.0, 0.200), (218.0, 0.200), (219.0, 0.200), (220.0, 0.200), (221.0, 0.200), (222.0, 0.200), (223.0, 0.200), (224.0, 0.200), (225.0, 0.200), (226.0, 0.200), (227.0, 0.600), (228.0, 0.700), (229.0, 0.800), (230.0, 0.900), (231.0, 0.900), (232.0, 1.000), (233.0, 1.400), (234.0, 1.500), (235.0, 1.600), (236.0, 2.000), (237.0, 2.000), (238.0, 2.000), (239.0, 1.900), (240.0, 1.900), (241.0, 1.900), (242.0, 1.800), (243.0, 1.800), (244.0, 1.700), (245.0, 1.700), (246.0, 1.600), (247.0, 1.600), (248.0, 1.500), (249.0, 1.500), (250.0, 1.400), (251.0, 1.400), (252.0, 1.300), (253.0, 1.300), (254.0, 1.200), (255.0, 1.200), (256.0, 1.100), (257.0, 1.100), (258.0, 2.000), (259.0, 1.000), (260.0, 1.000), (261.0, 1.000), (262.0, 1.000), (263.0, 1.000), (264.0, 1.000), (265.0, 1.000), (266.0, 2.000), (267.0, 1.000), (268.0, 1.000), (269.0, 1.000), (270.0, 1.000), (271.0, 1.000), (272.0, 1.000), (273.0, 1.000), (274.0, 1.000), (275.0, 1.000), (276.0, 1.000), (277.0, 1.000), (278.0, 1.000), (279.0, 1.000), (280.0, 1.000), (281.0, 1.000), (282.0, 1.000), (283.0, 1.000), (284.0, 1.000), (285.0, 1.000), (286.0, 1.000), (287.0, 1.000), (288.0, 1.000), (289.0, 1.000), (290.0, 1.000), (291.0, 1.000), (292.0, 1.000), (293.0, 1.000), (294.0, 1.000), (295.0, 1.000), (296.0, 1.000), (297.0, 1.000), (298.0, 2.000), (299.0, 1.000), (300.0, 1.000), (301.0, 1.000), (302.0, 1.000), (303.0, 1.000), (304.0, 1.000), (305.0, 1.000), (306.0, 1.000), (307.0, 1.000), (308.0, 1.000), (309.0, 1.000), (310.0, 1.000), (311.0, 1.000), (312.0, 1.000), (313.0, 1.000), (314.0, 1.000), (315.0, 1.000), (316.0, 1.000), (317.0, 1.000), (318.0, 1.000), (319.0, 1.000), (320.0, 0.400), (321.0, 1.000), (322.0, 2.000), (323.0, 1.000), (324.0, 1.000), (325.0, 1.000), (326.0, 1.000), (327.0, 0.000), (328.0, 0.000), (329.0, 0.000), (330.0, 0.000), (331.0, 0.000), (332.0, 0.000), (333.0, 0.000), (334.0, 0.000), (335.0, 0.000), (336.0, 1.000), (337.0, 1.000), (338.0, 1.000), (339.0, 2.000), (340.0, 1.000), (341.0, 1.000), (342.0, 1.500), (343.0, 0.900), (344.0, 0.900), (345.0, 0.700), (346.0, 0.600), (347.0, 0.500), (348.0, 0.300), (349.0, 0.000), (350.0, 0.000), (351.0, 0.000), (352.0, 0.000), (353.0, 0.000), (354.0, 0.000), (355.0, 0.000), (356.0, 0.000), (357.0, 0.000), (358.0, 0.000), (359.0, 0.000), (360.0, 0.000), (361.0, 0.000), (362.0, 0.000), (363.0, 0.000), (364.0, 0.000), (365.0, 0.000)

Dimensionless/Days

A 0 - 2 multiplier on demand based on the break schedule. Another layer is added on to this curve to give variance in demand over random days to account for sports events, specialty dinners in the dining halls, and weather changing demand.

Demand_Error

ABS(("Prepared_Food_E-Hall"*Per_day-Consuming_food_E)//"Prepared_Food_E-Hall")

Dimensionless/Days

Error between the amount of food supplied vs. demanded.

Dhall_Donation_Switch

0

Dimensionless

Switch for donating food from D-Hall to outside the JMU system

"E-Hall_to_Pantry_Donation_Switch"

0

Dimensionless

Switch to toggle sending leftover food from E-Hall to the JMU Pantry.

Effect_of_cost_on_proportion_of_students_with_meal_plan

GRAPH(Current_Cost_vs_Initial) Points: (-1.000, 1.2464), (-0.800, 1.1754), (-0.600, 1.1576), (-0.400, 1.1043), (-0.200, 1.0723), (0.000, 1.0012), (0.200, 0.9443), (0.400, 0.8412), (0.600, 0.7701), (0.800, 0.5675), (1.000, 0.5000)

Dimensionless

The effect of the cost of a meal plan on the number of students that buy one.

Effect_of_Pantry_Stock_on_Students_Eating_from_Pantry

GRAPH(Pantry_Stock_of_Food/Expected_Stock_of_Food) Points: (0.000, 0.000), (0.200, 0.01895), (0.400, 0.06512), (0.600, 0.1748), (0.800, 0.4014), (1.000, 0.750), (1.200, 1.099), (1.400, 1.325), (1.600, 1.435), (1.800, 1.481), (2.000, 1.500)

Dimensionless

Effect of the stock of food on how many students eat from the pantry. High food stocks attract more students to eat from the pantry.

Effect_of_Students_with_meal_plan_on_food_insecurity

((Initial_Proportion_with_meal_plan-Proportion_of_students_with_meal_plan)/Initial_Proportion_with_meal_plan)*10

Dimensionless/Days

The effect of the proportion of students with a meal plan on the average student food insecurity.

Effect_on_Prepared_Food_on_Student_Consumption

GRAPH(Ratio_of_available_food_to_Ideal) Points: (0.000, 0.000), (0.200, 0.001955), (0.400, 0.01035), (0.600, 0.04632), (0.800, 0.1808), (1.000, 0.500), (1.200, 0.8192), (1.400, 0.9537), (1.600, 0.9896), (1.800, 0.998), (2.000, 1.000)

Dimensionless

The effect of the amount of prepared food available on the amount of food consumed by students.

Effect_on_Prepared_Food_on_Student_Consumption_D

GRAPH(Ratio_of_available_food_to_Ideal_D) Points: (0.000, 0.000), (0.200, 0.001955), (0.400, 0.01035), (0.600, 0.04632), (0.800, 0.1808), (1.000, 0.500), (1.200, 0.8192), (1.400, 0.9537), (1.600, 0.9896), (1.800, 0.998), (2.000, 1.000)

Dimensionless

The effect of the amount of prepared food available on the amount of food consumed by students.

Expected_Stock_of_Food

700

Lbs

The expected Lbs. of food that should be in the pantry for optimal functioning. Above the limit does not impede operations.

Food_consumed_per_student_per_day

2

Lbs/(People*Days)

Average Lbs. of food that each student consumes when going to the dining halls.

Food_reutilization_rate

0.3*(1+Food_Reutilization_Rate_Switch*0.5)

Dimensionless/Day

Proportion of leftover food that can be reutilized for another meal.

Food_Reutilization_Rate_Switch

0

Dimensionless/Days

Switch to begin increased reutilization of leftover food.

Hall_to_Pantry_Donation_Rate

0.5

Dimensionless/Days

Proportion of left

"Ideal_quantity_of_food_D-Hall"

Food_consumed_per_student_per_day*("Students_going_to_D-Hall")/Per_day

Lbs

The ideal quantity of food at D-Hall to meet demand.

"Ideal_quantity_of_food_E-Hall"

Food_consumed_per_student_per_day*("Students_going_to_E-Hall")/Per_day

Lbs

The ideal quantity of food at E-Hall to meet demand

Ingredient_Buffer

1.2

Dimensionless

A buffer of ingredients to ensure the kitchen does not run out.

Initial_Cost_of_Meal_Plan_per_year

5000

Dollars/People

Initial Cost of a meal plan per year per student, extrapolated from the prices of each meal plan

Initial_Proportion_Food_Insecure

0.385

Dimensionless/Day

The initial percentage of students that are food insecure while on campus. Obtained from a JMU pantry survey.

Initial_Proportion_with_meal_plan

0.38

Dimensionless

All Freshman are required to have a meal plan. ~30% of student body therefore must have a meal plan.

2021 revenue for dining was 32 million. Generously assuming that the full revenue comes from meal plans, and the cost of meal plans averages around 2000 per semester, only ~8000 students bought a meal plan that year.

With 21000 students at JMU that year, that gives a proportion of 0.38.

https://www.breezejmu.org/business/jmu-dining-hikes-meal-plan-prices-as-sales-fall-18-million/article_0c377ba8-9007-11eb-b707-9ff7e4a8a59f.html

Initial_Student_Population

22758

People

The initial JMU student population.

KNOWN_Existing_Food_Insecurity

38.9

Dimensionless

# from 2019 JMU pantry report.

KNOWN_Yearly_Compost_Value

GRAPH(TIME) Points: (0.0, 320000), (1.43137254902, 320000), (2.86274509804, 320000), (4.29411764706, 320000), (5.72549019608, 320000), (7.1568627451, 320000), (8.58823529412, 320000), (10.0196078431, 320000), (11.4509803922, 320000), (12.8823529412, 320000), (14.3137254902, 320000), (15.7450980392, 320000), (17.1764705882, 320000), (18.6078431373, 320000), (20.0392156863, 320000), (21.4705882353, 320000), (22.9019607843, 320000), (24.3333333333, 320000), (25.7647058824, 320000), (27.1960784314, 320000), (28.6274509804, 320000), (30.0588235294, 320000), (31.4901960784, 320000), (32.9215686275, 320000), (34.3529411765, 320000), (35.7843137255, 320000), (37.2156862745, 320000), (38.6470588235, 320000), (40.0784313725, 320000), (41.5098039216, 320000), (42.9411764706, 320000), (44.3725490196, 320000), (45.8039215686, 320000), (47.2352941176, 320000), (48.6666666667, 320000), (50.0980392157, 320000), (51.5294117647, 320000), (52.9607843137, 320000), (54.3921568627, 320000), (55.8235294118, 320000), (57.2549019608, 320000), (58.6862745098, 320000), (60.1176470588, 320000), (61.5490196078, 320000), (62.9803921569, 320000), (64.4117647059, 320000), (65.8431372549, 320000), (67.2745098039, 320000), (68.7058823529, 320000), (70.137254902, 320000), (71.568627451, 320000), (73.0, 320000), (74.431372549, 320000), (75.862745098, 320000), (77.2941176471, 320000), (78.7254901961, 320000), (80.1568627451, 320000), (81.5882352941, 320000), (83.0196078431, 320000), (84.4509803922, 320000), (85.8823529412, 320000), (87.3137254902, 320000), (88.7450980392, 320000), (90.1764705882, 320000), (91.6078431373, 320000), (93.0392156863, 320000), (94.4705882353, 320000), (95.9019607843, 320000), (97.3333333333, 320000), (98.7647058824, 320000), (100.196078431, 320000), (101.62745098, 320000), (103.058823529, 320000), (104.490196078, 320000), (105.921568627, 320000), (107.352941176, 320000), (108.784313725, 320000), (110.215686275, 320000), (111.647058824, 320000), (113.078431373, 320000), (114.509803922, 320000), (115.941176471, 320000), (117.37254902, 320000), (118.803921569, 320000), (120.235294118, 320000), (121.666666667, 320000), (123.098039216, 320000), (124.529411765, 320000), (125.960784314, 320000), (127.392156863, 320000), (128.823529412, 320000), (130.254901961, 320000), (131.68627451, 320000), (133.117647059, 320000), (134.549019608, 320000), (135.980392157, 320000), (137.411764706, 320000), (138.843137255, 320000), (140.274509804, 320000), (141.705882353, 320000), (143.137254902, 320000), (144.568627451, 320000), (146.0, 320000), (147.431372549, 320000), (148.862745098, 320000), (150.294117647, 320000), (151.725490196, 320000), (153.156862745, 320000), (154.588235294, 320000), (156.019607843, 320000), (157.450980392, 320000), (158.882352941, 320000), (160.31372549, 320000), (161.745098039, 320000), (163.176470588, 320000), (164.607843137, 320000), (166.039215686, 320000), (167.470588235, 320000), (168.901960784, 320000), (170.333333333, 320000), (171.764705882, 320000), (173.196078431, 320000), (174.62745098, 320000), (176.058823529, 320000), (177.490196078, 320000), (178.921568627, 320000), (180.352941176, 320000), (181.784313725, 320000), (183.215686275, 320000), (184.647058824, 320000), (186.078431373, 320000), (187.509803922, 320000), (188.941176471, 320000), (190.37254902, 320000), (191.803921569, 320000), (193.235294118, 320000), (194.666666667, 320000), (196.098039216, 320000), (197.529411765, 320000), (198.960784314, 320000), (200.392156863, 320000), (201.823529412, 320000), (203.254901961, 320000), (204.68627451, 320000), (206.117647059, 320000), (207.549019608, 320000), (208.980392157, 320000), (210.411764706, 320000), (211.843137255, 320000), (213.274509804, 320000), (214.705882353, 320000), (216.137254902, 320000), (217.568627451, 320000), (219.0, 320000), (220.431372549, 320000), (221.862745098, 320000), (223.294117647, 320000), (224.725490196, 320000), (226.156862745, 320000), (227.588235294, 320000), (229.019607843, 320000), (230.450980392, 320000), (231.882352941, 320000), (233.31372549, 320000), (234.745098039, 320000), (236.176470588, 320000), (237.607843137, 320000), (239.039215686, 320000), (240.470588235, 320000), (241.901960784, 320000), (243.333333333, 320000), (244.764705882, 320000), (246.196078431, 320000), (247.62745098, 320000), (249.058823529, 320000), (250.490196078, 320000), (251.921568627, 320000), (253.352941176, 320000), (254.784313725, 320000), (256.215686275, 320000), (257.647058824, 320000), (259.078431373, 320000), (260.509803922, 320000), (261.941176471, 320000), (263.37254902, 320000), (264.803921569, 320000), (266.235294118, 320000), (267.666666667, 320000), (269.098039216, 320000), (270.529411765, 320000), (271.960784314, 320000), (273.392156863, 320000), (274.823529412, 320000), (276.254901961, 320000), (277.68627451, 320000), (279.117647059, 320000), (280.549019608, 320000), (281.980392157, 320000), (283.411764706, 320000), (284.843137255, 320000), (286.274509804, 320000), (287.705882353, 320000), (289.137254902, 320000), (290.568627451, 320000), (292.0, 320000), (293.431372549, 320000), (294.862745098, 320000), (296.294117647, 320000), (297.725490196, 320000), (299.156862745, 320000), (300.588235294, 320000), (302.019607843, 320000), (303.450980392, 320000), (304.882352941, 320000), (306.31372549, 320000), (307.745098039, 320000), (309.176470588, 320000), (310.607843137, 320000), (312.039215686, 320000), (313.470588235, 320000), (314.901960784, 320000), (316.333333333, 320000), (317.764705882, 320000), (319.196078431, 320000), (320.62745098, 320000), (322.058823529, 320000), (323.490196078, 320000), (324.921568627, 320000), (326.352941176, 320000), (327.784313725, 320000), (329.215686275, 320000), (330.647058824, 320000), (332.078431373, 320000), (333.509803922, 320000), (334.941176471, 320000), (336.37254902, 320000), (337.803921569, 320000), (339.235294118, 320000), (340.666666667, 320000), (342.098039216, 320000), (343.529411765, 320000), (344.960784314, 320000), (346.392156863, 320000), (347.823529412, 320000), (349.254901961, 320000), (350.68627451, 320000), (352.117647059, 320000), (353.549019608, 320000), (354.980392157, 320000), (356.411764706, 320000), (357.843137255, 320000), (359.274509804, 320000), (360.705882353, 320000), (362.137254902, 320000), (363.568627451, 320000), (365.0, 320000)

Lbs

159.96 tons of food waste composted,
# from Aramark

Lbs_of_food_per_plate_trashed

0.22

Lbs/(People*Days)

From Aramark wipe out waste event, each student produces ~0.22 pounds of food waste

Leftover_Spoilage_Rate

0.1

Dimensionless/Days

Proportion of Leftover food that goes bad before reused, or donated.

Lump_Insecure_Students

Insecure_Students_Eating_from_Pantry + Insecure_Students_Eating_in_Dining_Hall + Insecure_Students_Eating_off_campus + Perceived_Food_Insecure_Students + Returned_Insecure_Students

People

The lump sum of all food insecure students throughout the model

SUMMING CONVERTER

Lump_Secure_Students

Secure_Students_Eating_in_Dining_Hall + Secure_Students_Eating_off_campus + Students_consistently_meeting_needs

People

The lump sum of all food secure students throughout the model

SUMMING CONVERTER

Max_Punch_Donations_per_student_per_day

2

Punches/People

The maximum number of punches each student can donate per day.

Net_Flow_Prepared_Food

Prepared_Food_Inflows-Prepared_Food_Outflows

Lbs/day

The Net Flow of prepared food per day.

Number_of_Punches_Donated

Initial_Student_Population*Proportion_of_students_with_meal_plan*Max_Punch_Donations_per_student_per_day*Punch_Donation_Program_Utilization_Rate

Punches

The total number of punches donated.

Outside_Donation_Rate

0.002

Dimensionless

Proportion of leftover food that is donated outside the JMU system

Pantry_Awareness_Campaign

1

Dimensionless

Switch for an awareness campaign for the JMU Pantry

Pantry_Destigmatization_Campaign

1

Dimensionless

Switch for a campaign to destigmatize the pantry.

Per_day

1

Dimensionless/Days

1 day.

Percentage_of_Students_becoming_food_insecure_per_day

0.0001*Effect_of_Students_with_meal_plan_on_food_insecurity

Dimensionless/Days

The percentage of students that become food insecure each day because of outside factors.

Prepared_Food_Inflows

Cooking + Cooking_D + Reusing_food + Reusing_food_D

Lbs/day

Sum of all inflows for prepared food

SUMMING CONVERTER

Prepared_Food_Outflows

Consuming_food_D + Consuming_food_E + Creating_Leftover_food + Creating_Leftover_food_D + Unrecoverable_Food_Wasted + Unrecoverable_Food_Wasted_D

Lbs/day

Sum of all outflows for prepared food

SUMMING CONVERTER

Proportion_Food_Insecure

(Lump_Insecure_Students*(Proportion_of_Food_Insecure_Students_that_are_still_food_secure_over_breaks) // (Lump_Insecure_Students+Lump_Secure_Students))*100

Dimensionless

The proportion of students that are food insecure at any given time.

Proportion_of_Aware_Students_Willing_to_Use_Program

0.5

Dimensionless

The fraction of students that know about the program and are willing to use it. Speculated

Proportion_of_Food_Insecure_Students_that_are_still_food_secure_over_breaks

IF Demand_Curve_over_year < 0.4 THEN 0.6 ELSE 1

Dimensionless

The proportion of students that are food insecure at home as well as on campus.

Proportion_of_food_wasted

0.05

Dimensionless/Day

The proportion of prepared food that is wasted.

Proportion_of_Ingredients_spoiling

0.005

Dimensionless/Day

Proportion of Ingredients that spoil before being used because of kitchen inefficiencies

Proportion_of_Insecure_Students_eating_off_campus

(1-Daily_Dining_Hall_Demand_Insecure-Proportion_of_Students_eating_from_pantry)*0.1

Dimensionless/Day

The proportion of food insecure students that meet their needs off campus

Proportion_of_Secure_Students_eating_off_campus

1-Daily_Demand_Secure

Dimensionless/Days

The proportion of food secure students that are eating off campus

Proportion_of_Students_Aware_of_Program

0.01

Dimensionless

The fraction of students that are aware of the program. Speculated.

Proportion_of_Students_eating_from_pantry

Default_proportion_of_students_eating_from_pantry*Pantry_Awareness_Campaign

Dimensionless/Day

How many students on average eat from the pantry

Proportion_of_Students_willing_to_eat_from_pantry

Default_Proportion_of_Students_willing_to_eat_from_pantry*Pantry_Destigmatization_Campaign

Dimensionless

The proportion of students that are willing to eat from the JMU pantry

Proportion_of_students_with_meal_plan

Initial_Proportion_with_meal_plan*Effect_of_cost_on_proportion_of_students_with_meal_plan

Dimensionless

The proportion of students that buy a meal plan.

Proportion_Still_Insecure_Post_meal

0.9999

Dimensionless/Days

The proportion of food insecure students that are still food insecure after a meal.

Punch_Donation_Program_Utilization_Rate

Proportion_of_Students_Aware_of_Program*Proportion_of_Aware_Students_Willing_to_Use_Program

Dimensionless

Combined percentage of how the punch donation program is utilized.

Punch_Donation_Switch

1

Dimensionless

Switch to turn on/off the Punch donation program. On by default as the program is currently running.

Punches_per_bundle

10

Punches/People*Days

The number of punches in each punch bundle given to students.

Ratio_of_available_food_to_Ideal

"Prepared_Food_E-Hall"//"Ideal_quantity_of_food_E-Hall"

Dimensionless

How much food is available compared to how much is needed.

Ratio_of_available_food_to_Ideal_D

"Prepared_Food_D-Hall"//"Ideal_quantity_of_food_D-Hall"

Dimensionless

How much food is available compared to how much is needed.

"Ratio_of_Compost/Trash"

0.5

Dimensionless/Days

Ratio of Waste that is trashed vs. collected for composting.

Simulated_Revenue_from_Meal_Plans

Initial_Student_Population*Proportion_of_students_with_meal_plan*Average_Meal_plan_cost_per_year

Dollars

The Revenue JMU should make from meal plans.

Students_fed_with_punch_bundles

(Number_of_Punches_Donated/Punches_per_bundle)*Punch_Donation_Switch

People/Days

Number of students that are fed from the punch bundles .

"Students_going_to_D-Hall"

Students_in_Dining_Hall*"D-Hall_/_E-Hall_split"

People

# of students eating at D-Hall

"Students_going_to_E-Hall"

Students_in_Dining_Hall*(1-"D-Hall_/_E-Hall_split")

People

# of students eating at E-Hall

Students_in_Dining_Hall

Insecure_Students_Eating_in_Dining_Hall+Secure_Students_Eating_in_Dining_Hall

People

# of students eating at both dining halls

Total_Donation_per_week

Leftovers_to_Donation + Leftovers_to_Donation_D

Lbs/day

The total donations of food outside of the JMU system every week.

SUMMING CONVERTER



Run Specs

Start Time

0

Stop Time

365

DT

1/64

Fractional DT

True

Save Interval

0.015625

Sim Duration

1.5

Time Units

Days

Pause Interval

0

Integration Method

Euler

Keep all variable results

True

Run By

Run

Calculate loop dominance information

True

Exhaustive Search Threshold

1000



Custom Unit

Aliases

Equation

Dimensionless

dmnl
unitless

1

kilowatt hours per day

kWh/day

kilowatts

kilowatt

kW