예제 #1
0
vs = [nh, tem, L, dt]
for i in range(3):
	vs[i] = cfd.safe_log10(vs[i])

vsminmax = [[-0.87, 6.89],
			[None, None],
			[None, None],
			[0, 20]]

### Plotting
plotter = TorchPlotter(cfd, plot_size=5, figformat=fformat, dpi=300)

###	Interpolation set up.
vsi = []
for i in range(4):
	vsi.append(cfd.interpolate(vs[i], 'nearest'))
	vsminmax[i][0] = (vs[i].min() if vsminmax[i][0] == None else vsminmax[i][0])
	vsminmax[i][1] = (vsi[i].max() if vsminmax[i][1] == None else vsminmax[i][1])

###	Image.
vs_types = ['nH', 'energy', 'lambda', 'dtcool']
grid = plotter.twobytwo(vs_types, vsi, vsminmax, hgspy.get_green_map(), detail="all")
for i in range(4):
	for axis in ['top','bottom','left','right']:
		grid[i].spines[axis].set_linewidth(0.5)
		grid.cbar_axes[i].spines[axis].set_linewidth(0.5)
grid.cbar_axes[0].set_xlabel(r"$\mathregular{log_{10}(n_H}$ / $\mathregular{cm^{-3})}$")
grid.cbar_axes[1].set_xlabel(r"$\mathregular{log_{10}(E}$ / $\mathregular{ergs.cm^{-3})}$")
grid.cbar_axes[2].set_xlabel(r"$\mathregular{log_{10}(\Lambda}$ / $\mathregular{ergs.s^{-1}.cm^{3})}$")
grid.cbar_axes[3].set_xlabel(r"$\mathregular{dt}$ / $\mathregular{yrs}$")
예제 #2
0
args = parser.parse_args()

input_dir = args.input_dir

if not input_dir.endswith('/'):
	input_dir += '/'
input_regex = input_dir + '*.txt'

time = []
radius = []

for inputfile in glob.iglob(input_regex):
	### Data set up.
	torchData = TorchCFD(inputfile, axial=True)
	den = torchData.get_var('den')
	deni = torchData.interpolate(den, 'nearest')

	### Find bubble radius.
	index = 0
	max_den = 0
	for i in range(11, torchData.nx):
		if deni[i,0] > max_den:
			index = i
			max_den = deni[i,0]
	time.append(t)
	radius.append(torchData.xi[0, index])

zipped = zip(time, radius)
zipped.sort()
time, radius = zip(*zipped)