예제 #1
0
print('\nFinished interpolating mesh data for bij in {:.4f} s'.format(t1 - t0))


"""
Plotting
"""
figdir = case.resultPaths[time] + 'RotationInvariance/' + estimator_name
os.makedirs(figdir, exist_ok=True)
# rgb_b2ry_train_mesh = ndimage.rotate(rgb_bary_train_mesh, 90)
rgb_bary_pred_test_mesh = ndimage.rotate(rgb_bary_pred_test_mesh, 90)
rgb_bary_pred_train_mesh = ndimage.rotate(rgb_bary_pred_train_mesh, 90)
xlabel, ylabel = ('$\bm{S}^2$', r'$y$ [m]')
geometry = np.genfromtxt(caseDir + '/' + rans_case_name + '/'  + "geometry.csv", delimiter=",")[:, :2]
figname = 'barycentric_predtest_rot_{0}_{1}_{2}'.format(rot_x, rot_y, rot_z)
bary_map = BaseFigure((None,), (None,), name=figname, xlabel=xlabel,
                      ylabel=ylabel, save=save_fig, show=show,
                      figdir=case.resultPaths[time],
                      figheight_multiplier=0.7)
path = Path(geometry)
patch = PathPatch(path, linewidth=0., facecolor=bary_map.gray)
# patch is considered "a single artist" so have to make copy to use more than once
patches = []
for _ in range(14):
    patches.append(copy(patch))

patches = iter(patches)
extent_test = (ccx_test.min(), ccx_test.max(), ccy_test.min(), ccy_test.max())
extent_train = (ccx_train.min(), ccx_train.max(), ccy_train.min(), ccy_train.max())
bary_map.initializeFigure()
bary_map.axes.imshow(rgb_bary_pred_test_mesh, origin='upper', aspect='equal', extent=extent_test)
bary_map.axes.set_xlabel(bary_map.xlabel)
예제 #2
0
    precursor_alm_rans[i] = precursor_alm[i] + rans[i]

# SOWFA bij injected RANS, 0 for LES cases
rans_bij = (0, 671, 0, 1308, 0, 0, 0, 0)
t_tot = np.empty(len(xlabel))
for i in range(len(xlabel)):
    t_tot[i] = precursor_alm_rans[i] + rans_bij[i]

# x locations
ind = np.arange(len(xlabel))
# Width of bars
width = 0.25
plot = BaseFigure([], [],
                  'CPUhour',
                  figdir='/media/yluan/',
                  show=False,
                  save=True,
                  ylabel='CPU hour',
                  xlabel='')
plot.initializeFigure()
p0 = plot.axes.bar(ind, precursor, width, zorder=10)
p1 = plot.axes.bar(ind, alm, width, bottom=precursor, zorder=10)
p2 = plot.axes.bar(ind, rans, width, bottom=precursor_alm, zorder=10)
p3 = plot.axes.bar(ind, rans_bij, width, bottom=precursor_alm_rans, zorder=10)
plt.xticks(ind, xlabel, rotation='20')
plt.legend((p0[0], p1[0], p2[0], p3[0]),
           bar_comp,
           shadow=False,
           fancybox=False)
# plt.show()
plot.finalizeFigure(show_xylabel=(False, True), xyscale=('bla', 'bla'))
    # xTri, yTri = np.ma.array(xTri, mask, dtype = bool), np.ma.array(yTri, mask)

    c3 = xyTri[:, 1] / yTriLim[1]
    c1 = xyTri[:, 0] - 0.5 * c3
    c2 = 1 - c1 - c3

    rgbVals_example = np.vstack((c1, c2, c3)).T
    # rgbValsNew = np.empty((c1.shape[0], 3))
    # Each 2nd dim is an RGB array of the 2D grid
    rgbValsNew_example = (rgbVals_example + c_offset) ** c_exp

    baryMap3D = griddata(xyTri, rgbValsNew_example, (xTri, yTri))
    baryMap3D[np.isnan(baryMap3D)] = 1
    baryMap3D = ndimage.rotate(baryMap3D, 90)

    baryMapExample = BaseFigure((None,), (None,), name = baryexample_name, figdir = case.result_path,
                                show = show, save = save)
    baryMapExample.initializeFigure()
    baryMapExample.axes[0].imshow(baryMap3D, origin = 'upper', aspect = 'equal', extent = (xTriLim[0], xTriLim[1],
                                                                                           yTriLim[0], yTriLim[1]))
    baryMapExample.axes[0].annotate(r'$\textbf{x}_{2c}$', (xTriLim[0], yTriLim[0]), (xTriLim[0] - 0.1, yTriLim[0]))
    baryMapExample.axes[0].annotate(r'$\textbf{x}_{3c}$', (np.mean(xTriLim), yTriLim[1]))
    baryMapExample.axes[0].annotate(r'$\textbf{x}_{1c}$', (xTriLim[1], yTriLim[0]))
    # baryMapExample.axes[0].get_yaxis().set_visible(False)
    # baryMapExample.axes[0].get_xaxis().set_visible(False)
    # baryMapExample.axes[0].set_axis_off()
    baryMapExample.axes[0].axis('off')
    plt.tight_layout()
    plt.savefig(case.result_path + baryexample_name + '.' + ext, dpi = dpi)
    if save:
        print('\n{0} saved at {1}'.format(baryexample_name, case.result_path))