metric_dict = {} all_dict = {} front_commods = ['sourceout', 'enrichmentout', 'frmixerout', 'moxmixerout'] add = '-buffer0' # add = sys.argv[1] name = 'eg01-eg29-flatpower-d3ploy' + add for calc_method in calc_methods: output_file = name + '-' + calc_method + '.sqlite' all_dict['power'] = tester.supply_demand_dict_driving( output_file, demand_eq, 'power') metric_dict = tester.metrics(all_dict['power'], metric_dict, calc_method, 'power', True) for commod in front_commods: all_dict[commod] = tester.supply_demand_dict_nondriving( output_file, commod, True) metric_dict = tester.metrics(all_dict[commod], metric_dict, calc_method, commod, True) commod = 'lwrpu' all_dict[commod] = tester.supply_demand_dict_nond3ploy(output_file, commod) metric_dict = tester.metrics(all_dict[commod], metric_dict, calc_method, commod, True) commod = 'frpu' all_dict[commod] = tester.supply_demand_dict_nond3ploy(output_file, commod) metric_dict = tester.metrics(all_dict[commod], metric_dict, calc_method,
True, True, False, 1) front_commods = ['sourceout', 'enrichmentout'] back_commods = [ 'lwrstorageout', 'frstorageout', 'lwrout', 'frout', 'lwrreprocessingwaste', 'frreprocessingwaste', 'frtru', 'lwrtru' ] for commod in front_commods: all_dict[commod] = tester.supply_demand_dict_nondriving( output_file, commod, True) name = 'B2000-' + commod plotter.plot_demand_supply_agent(all_dict[commod], agent_entry_dict[commod], commod, name, True, True, False, 1) metric_dict = tester.metrics(all_dict[commod], metric_dict, calc_method, commod, True) for commod in back_commods: all_dict[commod] = tester.supply_demand_dict_nondriving( output_file, commod, False) name = 'B2000-' + commod plotter.plot_demand_supply_agent(all_dict[commod], agent_entry_dict[commod], commod, name, False, True, False, 1) metric_dict = tester.metrics(all_dict[commod], metric_dict, calc_method, commod, False) df = pd.DataFrame(metric_dict) df.to_csv('B2000-' + calc_method + '.csv')
name = 'scenario_1_input_' + calc_method input_file = name + '.json' output_file = name + '.sqlite' with open(input_file, 'w') as f: json.dump(scenario_1_input[calc_method], f) s = subprocess.check_output(['cyclus', '-o', output_file, input_file], universal_newlines=True, env=ENV) # Initialize dicts all_dict_fuel = {} all_dict_fuel = tester.supply_demand_dict_driving(output_file, demand_eq, 'fuel') plotter.plot_demand_supply( all_dict_fuel, 'fuel', name,True) metric_dict = tester.metrics(all_dict_fuel,metric_dict,calc_method,'fuel',True) df = pd.DataFrame(metric_dict) df.to_csv('scenario_1_output.csv') ########################################################################################## ######################################SCENARIO 2########################################## # scenario 2, source -> reactor (cycle time = 1, refuel time = 0) -> sink scenario_2_input = {} demand_eq = "1000*t" for calc_method in calc_methods: scenario_2_input[calc_method] = copy.deepcopy(scenario_template) scenario_2_input[calc_method]["simulation"].update({"facility": [{ "config": {"Source": {"outcommod": "fuel",
True, False, False) plotter.plot_demand_supply_agent( all_dict_spent_fuel, agent_entry_dict["spent_fuel"], "spent_fuel", name + " Spent Fuel", False, False, False, ) metric_dict = tester.metrics( all_dict_power, metric_dict, calc_method, "power", True) metric_dict = tester.metrics( all_dict_fuel, metric_dict, calc_method, "fuel", True) metric_dict = tester.metrics( all_dict_spent_fuel, metric_dict, calc_method, "spent_fuel", False ) df = pd.DataFrame(metric_dict) df.to_csv("scenario.csv")
all_dict_power = tester.supply_demand_dict_driving( output_file, demand_eq, 'power') all_dict_fuel = tester.supply_demand_dict_nondriving( output_file, 'fuel',True) all_dict_spentfuel = tester.supply_demand_dict_nondriving( output_file, 'spentfuel',False) # plots demand, supply, calculated demand, calculated supply for the scenario for each calc method plotter.plot_demand_supply(all_dict_power, 'power', name, True) name2 = "scenario_5_input_"+ calc_method +"_fuel" plotter.plot_demand_supply(all_dict_fuel, 'fuel', name2, True) name3 = "scenario_5_input_"+ calc_method +"_spentfuel" plotter.plot_demand_supply(all_dict_spentfuel, 'spentfuel', name3, False) metric_dict = tester.metrics(all_dict_power,metric_dict,calc_method,'power',True) metric_dict = tester.metrics(all_dict_fuel,metric_dict,calc_method,'fuel',True) metric_dict = tester.metrics(all_dict_spentfuel,metric_dict,calc_method,'spentfuel',False) df = pd.DataFrame(metric_dict) df.to_csv('scenario_5_output.csv') ######################################SCENARIO 6########################################## # scenario 6, source -> reactor (cycle time = 1, refuel time = 0) -> storage -> sink scenario_6_input = {} demand_eq = "1000*t" for calc_method in calc_methods: scenario_6_input[calc_method] = copy.deepcopy(scenario_template) scenario_6_input[calc_method]["simulation"].update({"facility": [
False, False, False) name5 = "scenario_7_input_" + calc_method + "_reactor2output" plotter.plot_demand_supply_agent( all_dict['reactor2output'], agent_entry_dict['reactor1output'], 'reactor2output', name5, False, False, False) metric_dict = tester.metrics( all_dict['power'], metric_dict, calc_method, 'power', True) metric_dict = tester.metrics( all_dict['sourceoutput'], metric_dict, calc_method, 'sourceoutput', True) metric_dict = tester.metrics( all_dict['reactor1output'], metric_dict, calc_method, 'reactor1output', False) metric_dict = tester.metrics(
env=ENV) # Initialize dicts all_dict = {} agent_entry_dict = {} all_dict['power'] = tester.supply_demand_dict_driving( output_file, demand_eq, 'power') all_dict['sourceoutput'] = tester.supply_demand_dict_nondriving( output_file, 'sourceoutput', True) agent_entry_dict['power'] = tester.get_agent_dict(output_file, ['reactor1', 'reactor2']) agent_entry_dict['sourceoutput'] = tester.get_agent_dict( output_file, ['source']) # plots demand, supply, calculated demand, calculated supply for the scenario for each calc method plotter.plot_demand_supply_agent(all_dict['power'], agent_entry_dict['power'], 'power', name, True) name2 = "scenario_7_input_" + calc_method + "_sourceoutput" plotter.plot_demand_supply_agent(all_dict['sourceoutput'], agent_entry_dict['sourceoutput'], 'sourceoutput', name2, True) metric_dict = tester.metrics(all_dict['power'], metric_dict, calc_method, 'power', True) metric_dict = tester.metrics(all_dict['sourceoutput'], metric_dict, calc_method, 'sourceoutput', True) df = pd.DataFrame(metric_dict) df.to_csv('scenario_7_output.csv')