def sim_frame_beamAnimation(frame_args): data = simulation_db.read_json( run_dir.join(template_common.INPUT_BASE_NAME)) model = data.models.beamAnimation model.update(frame_args) beam_info = hellweg_dump_reader.beam_info(_dump_file(run_dir), frame_args.frameIndex) x, y = frame_args.reportType.split('-') values = [ hellweg_dump_reader.get_points(beam_info, x), hellweg_dump_reader.get_points(beam_info, y), ] model['x'] = x model['y'] = y # see issue #872 if not np.any(values): values = [[], []] return template_common.heatmap( values, model, { 'x_label': hellweg_dump_reader.get_label(x), 'y_label': hellweg_dump_reader.get_label(y), 'title': _report_title(frame_args.reportType, 'BeamReportType', beam_info), 'z_label': 'Number of Particles', 'summaryData': _summary_text(run_dir), })
def extract_particle_report(report, run_dir): x_field = 'z0' particle_info = hellweg_dump_reader.particle_info(_dump_file(run_dir), report.reportType, int(report.renderCount)) x = particle_info['z_values'] return { 'title': _enum_text('ParticleReportType', report.reportType), 'x_range': [np.min(x), np.max(x)], 'y_label': hellweg_dump_reader.get_label(report.reportType), 'x_label': hellweg_dump_reader.get_label(x_field), 'x_points': x, 'points': particle_info['y_values'], 'y_range': particle_info['y_range'], }
def sim_frame_particleAnimation(frame_args): x_field = 'z0' particle_info = hellweg_dump_reader.particle_info( _dump_file(run_dir), frame_args.reportType, int(frame_args.renderCount)) x = particle_info['z_values'] return { 'title': _enum_text('ParticleReportType', frame_args.reportType), 'x_range': [np.min(x), np.max(x)], 'y_label': hellweg_dump_reader.get_label(frame_args.reportType), 'x_label': hellweg_dump_reader.get_label(x_field), 'x_points': x, 'points': particle_info['y_values'], 'y_range': particle_info['y_range'], }
def extract_beam_report(report, run_dir, frame): data = simulation_db.read_json(run_dir.join(template_common.INPUT_BASE_NAME)) model = data.models.beamAnimation model.update(report) beam_info = hellweg_dump_reader.beam_info(_dump_file(run_dir), frame) x, y = report.reportType.split('-') values = [ hellweg_dump_reader.get_points(beam_info, x), hellweg_dump_reader.get_points(beam_info, y), ] model['x'] = x model['y'] = y return template_common.heatmap(values, model, { 'x_label': hellweg_dump_reader.get_label(x), 'y_label': hellweg_dump_reader.get_label(y), 'title': _report_title(report.reportType, 'BeamReportType', beam_info), 'z_label': 'Number of Particles', 'summaryData': _summary_text(run_dir), })
def extract_beam_histrogram(report, run_dir, frame): beam_info = hellweg_dump_reader.beam_info(_dump_file(run_dir), frame) points = hellweg_dump_reader.get_points(beam_info, report.reportType) hist, edges = np.histogram(points, template_common.histogram_bins(report.histogramBins)) return { 'title': _report_title(report.reportType, 'BeamHistogramReportType', beam_info), 'x_range': [edges[0], edges[-1]], 'y_label': 'Number of Particles', 'x_label': hellweg_dump_reader.get_label(report.reportType), 'points': hist.T.tolist(), }
def extract_beam_report(report, run_dir, frame): beam_info = hellweg_dump_reader.beam_info(_dump_file(run_dir), frame) x, y = report.reportType.split('-') data_list = [ hellweg_dump_reader.get_points(beam_info, x), hellweg_dump_reader.get_points(beam_info, y), ] hist, edges = numpy.histogramdd( data_list, template_common.histogram_bins(report.histogramBins)) return { 'x_range': [float(edges[0][0]), float(edges[0][-1]), len(hist)], 'y_range': [float(edges[1][0]), float(edges[1][-1]), len(hist[0])], 'x_label': hellweg_dump_reader.get_label(x), 'y_label': hellweg_dump_reader.get_label(y), 'title': _report_title(report.reportType, 'BeamReportType', beam_info), 'z_matrix': hist.T.tolist(), 'z_label': 'Number of Particles', 'summaryData': _summary_text(run_dir), }
def sim_frame_beamHistogramAnimation(frame_args): beam_info = hellweg_dump_reader.beam_info(_dump_file(run_dir)) points = hellweg_dump_reader.get_points(beam_info, frame_args.reportType) hist, edges = np.histogram( points, template_common.histogram_bins(frame_args.histogramBins)) return { 'title': _report_title(frame_args.reportType, 'BeamHistogramReportType', beam_info), 'x_range': [edges[0], edges[-1]], 'y_label': 'Number of Particles', 'x_label': hellweg_dump_reader.get_label(frame_args.reportType), 'points': hist.T.tolist(), }