def plotObjectives(vars_set, interval, objectives): ax = fun_lib.getAxes(vars_set) ax.plot(vars_set['time'], vars_set['brachial_pressure']/133.32, label='Brachial pressure mmHg') # ax.plot(vars_set['time'], vars_set['SV']*1e6, label='Stroke volume ml') ax.plot(vars_set['time'], vars_set['CO']/lpm2SI, label='CO') ax.plot(vars_set['time'], vars_set['HR']/bpm2SI, label='HR') pack = (objectives, vars_set['time'], ax, interval) fun_lib.plotObjectiveTarget(pack, 'BPs', 1/133.32) fun_lib.plotObjectiveTarget(pack, 'BPd', 1/133.32) fun_lib.plotObjectiveTarget(pack, 'CO', 1/lpm2SI) fun_lib.plotObjectiveTarget(pack, 'HR', 1/bpm2SI) total_costs = fun_lib.countTotalWeightedCost(objectives) ax.set_title('Tilt costs %.6f' % total_costs) ax.set_ylim([0, 140])
def plotObjectives(vars_set, interval, objectives): if '__plot_axes' in vars_set: ax = vars_set['__plot_axes'] else: fig = plt.figure() ax = fig.subplots() ax.plot(vars_set['time'], vars_set['brachial_pressure'] / 133.32, label='Brachial pressure mmHg') ax.plot(vars_set['time'], vars_set['CO'] * 1000 * 60, label='CO l/min') # bounds pack = (objectives, vars_set['time'], ax, interval) fun_lib.plotObjectiveTarget(pack, 'BPs', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'BPd', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'CO', 1000 * 60, fmt='r') total_costs = fun_lib.countTotalWeightedCost(objectives) ax.set_title('Baseline costs %.6f' % total_costs)
def plotObjectives(vars_set, interval, objectives): ax = fun_lib.getAxes(vars_set) ax.plot(vars_set['time'], vars_set['brachial_pressure'] / 133.32, label='Brachial pressure mmHg') # ax.plot(vars_set['time'], vars_set['V_LV']*1000*1000, label='V_LV ml') ax.plot(vars_set['time'], vars_set['CO'] / lpm2SI, label='CO') # ax.plot(vars_set['time'], vars_set['TEjection'], label='TEjection') # ax.plot(vars_set['time'], vars_set['TFilling'], label='TFilling') pack = (objectives, vars_set['time'], ax, interval) fun_lib.plotObjectiveTarget(pack, 'BPs', 1 / 133.32) # fun_lib.plotObjectiveTarget(pack, 'EDV', 1e6) fun_lib.plotObjectiveTarget(pack, 'ESV', 1e6) fun_lib.plotObjectiveTarget(pack, 'Ts', 1, verticalalignment='top') fun_lib.plotObjectiveTarget(pack, 'Td', 1) fun_lib.plotObjectiveTarget(pack, 'Ppa', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'Ppa_s', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'Ppa_d', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'Ppv', 1 / 133.32) fun_lib.plotObjectiveLimit(pack, 'CO', 1 / lpm2SI, 'lower') total_costs = fun_lib.countTotalWeightedCost(objectives) ax.set_title('Exercise costs %.6f' % total_costs) ax.set_ylim([0, 165])
def plotObjectives(vars_set, interval, objectives): if '__plot_axes' in vars_set: ax = vars_set['__plot_axes'] else: fig = plt.figure() ax = fig.subplots() ax.plot(vars_set['time'], vars_set['brachial_pressure'] / 133.32, label='Brachial pressure mmHg') ax.plot(vars_set['time'], vars_set['CO'] * 1000 * 60, label='CO l/min') ax.plot(vars_set['time'], vars_set['renal_capillary'] / 133.32, label='Capillary pressure') # ax.plot([vars_set['time'][interval[0]], vars_set['time'][interval[-1]]], [fun_lib.getObjectiveByName(objectives, 'EF').value*100]*2, label='EF') ax.plot([vars_set['time'][interval[0]], vars_set['time'][interval[-1]]], [fun_lib.getObjectiveByName(objectives, 'PWV').value * 1] * 2, label='PWV') # bounds pack = (objectives, vars_set['time'], ax, interval) fun_lib.plotObjectiveTarget(pack, 'BPs', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'BPd', 1 / 133.32) # fun_lib.plotObjectiveTarget(pack,'CO', 1000*60) fun_lib.plotObjectiveTarget(pack, 'BPk', 1 / 133.32) # fun_lib.plotObjectiveTarget(pack,'EF', 100) fun_lib.plotObjectiveTarget(pack, 'HR', 60, verticalalignment='top') # fun_lib.plotObjectiveTarget(pack,'Ppa', 1/133.32) fun_lib.plotObjectiveTarget(pack, 'Ppas', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'Ppad', 1 / 133.32) fun_lib.plotObjectiveTarget(pack, 'Ppv', 1 / 133.32) fun_lib.plotObjectiveLimit(pack, 'PWV', 1, 'lower', verticalalignment='top') total_costs = fun_lib.countTotalWeightedCost(objectives) ax.set_title('Baseline costs %.6f' % total_costs) ax.set_ylim([0, 140])