def _iterate_visualization(axes, owflop, history): axes['convergence'].clear() vis.draw_convergence(axes['convergence'], history) axes['step_size'].clear() vis.draw_step_size(axes['step_size'], history) axes['layout'].clear() vis.site_setup(axes['layout']) vis.connect_layouts(axes['layout'], history.layout) vis.draw_turbines(axes['layout'], history.isel(iteration=0).layout, owflop.rotor_radius_adim) vis.draw_turbines(axes['layout'], history.isel(iteration=-1).layout, owflop.rotor_radius_adim, minimal_proximity=owflop.minimal_proximity, inside=owflop.inside) vis.draw_boundaries(axes['layout'], owflop.boundaries) _plt.pause(0.1)
history[(kind, turbines)].layout.sel(iteration=0), o.rotor_radius_adim, turbine_color='#87f') vis.draw_turbines( axp[kind], history[(kind, turbines)].layout.isel( iteration=history[(kind, turbines)].objective.argmin()), o.rotor_radius_adim, o.minimal_proximity, turbine_color='#f56') vis.connect_layouts(axp[kind], history[(kind, turbines)].layout) axp[kind].set_xlim([-1.02, 1]) axp[kind].set_ylim([-1.02, .47]) axp[kind].set_title(kind) axs[kind] = fig.add_subplot(gs[2, k], sharey=shareys) vis.draw_step_size(axs[kind], history[(kind, turbines)]) axs[kind].set_xlim([-2.5, 17.5]) axs[kind].set_ylim([.02, 50]) axs[kind].set_xticks([0, 5, 10, 15]) axc[kind] = fig.add_subplot(gs[1, k], sharex=axs[kind], sharey=shareyc) plt.setp(axc[kind].get_xticklabels(), visible=False) vis.draw_convergence(axc[kind], history[(kind, turbines)]) axc[kind].set_xlim([-2.5, 17.5]) # axc[kind].set_ylim([1.5, 5]) axc[kind].set_xticks([0, 5, 10, 15]) axc[kind].set_xlabel('') if kind == 'soft': shareyc = axc[kind] shareyp = axp[kind] shareys = axs[kind] else:
vis.draw_turbines(axp[pg[0]], history[pg[0]].layout.sel(iteration=0), o.rotor_radius_adim, turbine_color='#87f') vis.draw_turbines( axp[pg[0]], history[pg[0]].layout.isel( iteration=history[pg[0]].objective.argmin()), o.rotor_radius_adim, o.minimal_proximity, turbine_color='#f56' ) vis.connect_layouts(axp[pg[0]], history[pg[0]].layout) axp[pg[0]].set_xlim([-np.sqrt(.5)-.1, np.sqrt(.5)+.1]) axp[pg[0]].set_ylim([-np.sqrt(.5)-.2, np.sqrt(.5)+.1]) axp[pg[0]].set_title(pg[1]) axs[pg[0]] = fig.add_subplot(gs[4, k], sharey=shareys) vis.draw_step_size(axs[pg[0]], history[pg[0]]) axs[pg[0]].set_xlim([-2.5, 22.5]) axs[pg[0]].set_ylim([.004, 14]) axs[pg[0]].set_xticks([0, 5, 10, 15, 20]) axc[pg[0]] = fig.add_subplot(gs[3, k], sharex=axs[pg[0]], sharey=shareyc) plt.setp(axc[pg[0]].get_xticklabels(), visible=False) vis.draw_convergence(axc[pg[0]], history[pg[0]]) axc[pg[0]].set_xlim([-2.5, 22.5]) axc[pg[0]].set_ylim([1.5, 5]) axc[pg[0]].set_xticks([0, 5, 10, 15, 20]) axc[pg[0]].set_xlabel('') if pg[0] == 'M': shareyc = axc[pg[0]] shareyp = axp[pg[0]] shareys = axs[pg[0]] else:
vis.site_setup(axp[n], os[n].minimal_proximity) vis.draw_boundaries(axp[n], os[n].boundaries) vis.draw_turbines(axp[n], histories[n].layout.sel(iteration=0), os[n].rotor_radius_adim, turbine_color='#87f') vis.draw_turbines( axp[n], histories[n].layout.isel(iteration=histories[n].objective.argmin()), os[n].rotor_radius_adim, os[n].minimal_proximity, turbine_color='#f56') vis.connect_layouts(axp[n], histories[n].layout) axp[n].set_title(f"{n} turbines") axs[n] = fig.add_subplot(gs[2, k], sharey=shareys) vis.draw_step_size(axs[n], histories[n]) axs[n].set_xlim([-2.5, 32.5]) axs[n].set_ylim([.009, 15]) axs[n].set_xticks([0, 5, 10, 15, 20, 25, 30]) axc[n] = fig.add_subplot(gs[1, k], sharex=axs[n], sharey=shareyc) plt.setp(axc[n].get_xticklabels(), visible=False) vis.draw_convergence(axc[n], histories[n]) axc[n].set_xlim([-2.5, 32.5]) axc[n].set_ylim([19, 32.5]) axc[n].set_xticks([0, 5, 10, 15, 20, 25, 30]) axc[n].set_xlabel('') if n == 36: shareyc = axc[n] shareyp = axp[n] shareys = axs[n] else: