本文整理汇总了Python中pycbc.workflow.plotting.PlotExecutable类的典型用法代码示例。如果您正苦于以下问题:Python PlotExecutable类的具体用法?Python PlotExecutable怎么用?Python PlotExecutable使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了PlotExecutable类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: make_inference_corner_plot
def make_inference_corner_plot(workflow, mcmc_file, output_dir, config_file,
name="mcmc_corner", analysis_seg=None, tags=None):
""" Sets up the corner plot of the posteriors in the workflow.
Parameters
----------
workflow: pycbc.workflow.Workflow
The core workflow instance we are populating
mcmc_file: pycbc.workflow.File
The file with MCMC samples.
output_dir: str
The directory to store result plots and files.
config_file: str
The path to the inference configuration file that has a
[variable_args] section.
name: str
The name in the [executables] section of the configuration file
to use.
analysis_segs: {None, glue.segments.Segment}
The segment this job encompasses. If None then use the total analysis
time from the workflow.
tags: {None, optional}
Tags to add to the minifollowups executables.
Returns
-------
pycbc.workflow.FileList
A list of result and output files.
"""
# default values
tags = [] if tags is None else tags
analysis_seg = workflow.analysis_time \
if analysis_seg is None else analysis_seg
# read config file to get variables that vary
cp = WorkflowConfigParser([config_file])
variable_args = cp.options("variable_args")
# add derived mass parameters if mass1 and mass2 in variable_args
if "mass1" in variable_args and "mass2" in variable_args:
variable_args += ["mchirp", "eta"]
# make the directory that will contain the output files
makedir(output_dir)
# make a node for plotting the posterior as a corner plot
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=output_dir, universe="local",
tags=tags).create_node()
# add command line options
node.add_input_opt("--input-file", mcmc_file)
node.new_output_file_opt(analysis_seg, ".png", "--output-file")
# add node to workflow
workflow += node
return node.output_files
示例2: make_trigger_timeseries
def make_trigger_timeseries(workflow,
singles,
ifo_times,
out_dir,
special_tids,
exclude=None,
require=None,
tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = 'plot_trigger_timeseries'
secs = requirestr(workflow.cp.get_subsections(name), require)
secs = excludestr(secs, exclude)
files = FileList([])
for tag in secs:
node = PlotExecutable(
workflow.cp,
name,
ifos=workflow.ifos,
out_dir=out_dir,
tags=[tag] + tags).create_node()
node.add_multiifo_input_list_opt('--single-trigger-files', singles)
node.add_opt('--times', ifo_times)
node.new_output_file_opt(workflow.analysis_time, '.png',
'--output-file')
if special_tids is not None:
node.add_opt('--special-trigger-ids', special_tids)
workflow += node
files += node.output_files
return files
示例3: make_inference_inj_plots
def make_inference_inj_plots(workflow, inference_files, output_dir,
parameters, name="inference_recovery",
analysis_seg=None, tags=None):
""" Sets up the recovered versus injected parameter plot in the workflow.
Parameters
----------
workflow: pycbc.workflow.Workflow
The core workflow instance we are populating
inference_files: pycbc.workflow.FileList
The files with posterior samples.
output_dir: str
The directory to store result plots and files.
parameters : list
A ``list`` of parameters. Each parameter gets its own plot.
name: str
The name in the [executables] section of the configuration file
to use.
analysis_segs: {None, ligo.segments.Segment}
The segment this job encompasses. If None then use the total analysis
time from the workflow.
tags: {None, optional}
Tags to add to the inference executables.
Returns
-------
pycbc.workflow.FileList
A list of result and output files.
"""
# default values
tags = [] if tags is None else tags
analysis_seg = workflow.analysis_time \
if analysis_seg is None else analysis_seg
output_files = FileList([])
# make the directory that will contain the output files
makedir(output_dir)
# add command line options
for (ii, param) in enumerate(parameters):
plot_exe = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=output_dir,
tags=tags+['param{}'.format(ii)])
node = plot_exe.create_node()
node.add_input_list_opt("--input-file", inference_files)
node.new_output_file_opt(analysis_seg, ".png", "--output-file")
node.add_opt("--parameters", param)
workflow += node
output_files += node.output_files
return output_files
示例4: make_inference_acceptance_rate_plot
def make_inference_acceptance_rate_plot(workflow, mcmc_file, output_dir,
name="mcmc_rate", analysis_seg=None, tags=None):
""" Sets up the acceptance rate plot in the workflow.
Parameters
----------
workflow: pycbc.workflow.Workflow
The core workflow instance we are populating
mcmc_file: pycbc.workflow.File
The file with MCMC samples.
output_dir: str
The directory to store result plots and files.
name: str
The name in the [executables] section of the configuration file
to use.
analysis_segs: {None, glue.segments.Segment}
The segment this job encompasses. If None then use the total analysis
time from the workflow.
tags: {None, optional}
Tags to add to the minifollowups executables.
Returns
-------
pycbc.workflow.FileList
A list of result and output files.
"""
# default values
tags = [] if tags is None else tags
analysis_seg = workflow.analysis_time \
if analysis_seg is None else analysis_seg
# make the directory that will contain the output files
makedir(output_dir)
# make a node for plotting the acceptance rate
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=output_dir, tags=tags).create_node()
# add command line options
node.add_input_opt("--input-file", mcmc_file)
node.new_output_file_opt(analysis_seg, ".png", "--output-file")
# add node to workflow
workflow += node
return node.output_files
示例5: make_inj_info
def make_inj_info(workflow, injection_file, injection_index, num, out_dir, tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = "page_injinfo"
files = FileList([])
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos, out_dir=out_dir, tags=tags).create_node()
node.add_input_opt("--injection-file", injection_file)
node.add_opt("--injection-index", str(injection_index))
node.add_opt("--n-nearest", str(num))
node.new_output_file_opt(workflow.analysis_time, ".html", "--output-file")
workflow += node
files += node.output_files
return files
示例6: make_inference_samples_plot
def make_inference_samples_plot(
workflow, inference_file, output_dir, parameters=None,
name="inference_samples", analysis_seg=None, tags=None):
# default values
tags = [] if tags is None else tags
analysis_seg = workflow.analysis_time \
if analysis_seg is None else analysis_seg
# make the directory that will contain the output files
makedir(output_dir)
# make a node for plotting the posterior as a corner plot
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=output_dir, universe="local",
tags=tags).create_node()
# add command line options
node.add_input_opt("--input-file", inference_file)
node.new_output_file_opt(analysis_seg, ".png", "--output-file")
node.add_opt("--parameters", " ".join(parameters))
# add node to workflow
workflow += node
return node.output_files
示例7: make_inference_corner_plot
def make_inference_corner_plot(workflow, inference_file, output_dir,
variable_args=None,
name="inference_posterior", analysis_seg=None, tags=None):
""" Sets up the corner plot of the posteriors in the workflow.
Parameters
----------
workflow: pycbc.workflow.Workflow
The core workflow instance we are populating
inference_file: pycbc.workflow.File
The file with posterior samples.
output_dir: str
The directory to store result plots and files.
config_file: str
The path to the inference configuration file that has a
[variable_args] section.
variable_args : list
A list of parameters to use instead of [variable_args].
name: str
The name in the [executables] section of the configuration file
to use.
analysis_segs: {None, glue.segments.Segment}
The segment this job encompasses. If None then use the total analysis
time from the workflow.
tags: {None, optional}
Tags to add to the minifollowups executables.
Returns
-------
pycbc.workflow.FileList
A list of result and output files.
"""
# default values
tags = [] if tags is None else tags
analysis_seg = workflow.analysis_time \
if analysis_seg is None else analysis_seg
# make the directory that will contain the output files
makedir(output_dir)
# make a node for plotting the posterior as a corner plot
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=output_dir, universe="local",
tags=tags).create_node()
# add command line options
node.add_input_opt("--input-file", inference_file)
node.new_output_file_opt(analysis_seg, ".png", "--output-file")
node.add_opt("--variable-args", " ".join(variable_args))
# add node to workflow
workflow += node
return node.output_files
示例8: make_trigger_timeseries
def make_trigger_timeseries(workflow, singles, coinc, num, out_dir,
exclude=None, require=None, tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = 'plot_trigger_timeseries'
secs = requirestr(workflow.cp.get_subsections(name), require)
secs = excludestr(secs, exclude)
files = FileList([])
for tag in secs:
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=out_dir, tags=[tag] + tags).create_node()
node.add_input_list_opt('--single-trigger-files', singles)
node.add_input_opt('--statmap-file', coinc)
node.add_opt('--n-loudest', str(num))
node.new_output_file_opt(workflow.analysis_time, '.png', '--output-file')
workflow += node
files += node.output_files
return files
示例9: make_inference_prior_plot
def make_inference_prior_plot(workflow, config_file, output_dir,
sections=None, name="inference_prior",
analysis_seg=None, tags=None):
""" Sets up the corner plot of the priors in the workflow.
Parameters
----------
workflow: pycbc.workflow.Workflow
The core workflow instance we are populating
config_file: pycbc.workflow.File
The WorkflowConfigParser parasable inference configuration file..
output_dir: str
The directory to store result plots and files.
sections : list
A list of subsections to use.
name: str
The name in the [executables] section of the configuration file
to use.
analysis_segs: {None, ligo.segments.Segment}
The segment this job encompasses. If None then use the total analysis
time from the workflow.
tags: {None, optional}
Tags to add to the inference executables.
Returns
-------
pycbc.workflow.FileList
A list of result and output files.
"""
# default values
tags = [] if tags is None else tags
analysis_seg = workflow.analysis_time \
if analysis_seg is None else analysis_seg
# make the directory that will contain the output files
makedir(output_dir)
# make a node for plotting the posterior as a corner plot
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=output_dir, universe="local",
tags=tags).create_node()
# add command line options
node.add_input_opt("--config-file", config_file)
node.new_output_file_opt(analysis_seg, ".png", "--output-file")
if sections is not None:
node.add_opt("--sections", " ".join(sections))
# add node to workflow
workflow += node
return node.output_files
示例10: make_singles_timefreq
def make_singles_timefreq(workflow, single, bank_file, start, end, out_dir,
veto_file=None, tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = 'plot_singles_timefreq'
node = PlotExecutable(workflow.cp, name, ifos=[single.ifo],
out_dir=out_dir, tags=tags).create_node()
node.add_input_opt('--trig-file', single)
node.add_input_opt('--bank-file', bank_file)
node.add_opt('--gps-start-time', int(start))
node.add_opt('--gps-end-time', int(end))
if veto_file:
node.add_input_opt('--veto-file', veto_file)
node.add_opt('--detector', single.ifo)
node.new_output_file_opt(workflow.analysis_time, '.png', '--output-file')
workflow += node
return node.output_files
示例11: make_sngl_ifo
def make_sngl_ifo(workflow, sngl_file, bank_file, num, out_dir, ifo,
veto_file=None, veto_segment_name=None, tags=None):
"""Setup a job to create sngl detector sngl ifo html summary snippet.
"""
tags = [] if tags is None else tags
makedir(out_dir)
name = 'page_snglinfo'
files = FileList([])
node = PlotExecutable(workflow.cp, name, ifos=[ifo],
out_dir=out_dir, tags=tags).create_node()
node.add_input_opt('--single-trigger-file', sngl_file)
node.add_input_opt('--bank-file', bank_file)
if veto_file is not None:
assert(veto_segment_name is not None)
node.add_input_opt('--veto-file', veto_file)
node.add_opt('--veto-segment-name', veto_segment_name)
node.add_opt('--n-loudest', str(num))
node.add_opt('--instrument', ifo)
node.new_output_file_opt(workflow.analysis_time, '.html', '--output-file')
workflow += node
files += node.output_files
return files
示例12: make_coinc_info
def make_coinc_info(workflow, singles, bank, coinc, num, out_dir, tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = 'page_coincinfo'
files = FileList([])
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=out_dir, tags=tags).create_node()
node.add_input_list_opt('--single-trigger-files', singles)
node.add_input_opt('--statmap-file', coinc)
node.add_input_opt('--bank-file', bank)
node.add_opt('--n-loudest', str(num))
node.new_output_file_opt(workflow.analysis_time, '.html', '--output-file')
workflow += node
files += node.output_files
return files
示例13: make_plot_waveform_plot
def make_plot_waveform_plot(workflow, params, out_dir, ifos, exclude=None,
require=None, tags=None):
""" Add plot_waveform jobs to the workflow.
"""
tags = [] if tags is None else tags
makedir(out_dir)
name = 'single_template_plot'
secs = requirestr(workflow.cp.get_subsections(name), require)
secs = excludestr(secs, exclude)
files = FileList([])
for tag in secs:
node = PlotExecutable(workflow.cp, 'plot_waveform', ifos=ifos,
out_dir=out_dir, tags=[tag] + tags).create_node()
node.add_opt('--mass1', "%.6f" % params['mass1'])
node.add_opt('--mass2', "%.6f" % params['mass2'])
node.add_opt('--spin1z',"%.6f" % params['spin1z'])
node.add_opt('--spin2z',"%.6f" % params['spin2z'])
if params.has_key('u_vals'):
# Precessing options
node.add_opt('--spin1x',"%.6f" % params['spin1x'])
node.add_opt('--spin2x',"%.6f" % params['spin2x'])
node.add_opt('--spin1y',"%.6f" % params['spin1y'])
node.add_opt('--spin2y',"%.6f" % params['spin2y'])
node.add_opt('--inclination',"%.6f" % params['inclination'])
node.add_opt('--u-val', "%.6f" % params['u_vals'])
node.new_output_file_opt(workflow.analysis_time, '.png',
'--output-file')
workflow += node
files += node.output_files
return files
示例14: make_coinc_info
def make_coinc_info(workflow, singles, bank, coinc, out_dir,
n_loudest=None, trig_id=None, file_substring=None,
tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = 'page_coincinfo'
files = FileList([])
node = PlotExecutable(workflow.cp, name, ifos=workflow.ifos,
out_dir=out_dir, tags=tags).create_node()
node.add_input_list_opt('--single-trigger-files', singles)
node.add_input_opt('--statmap-file', coinc)
node.add_input_opt('--bank-file', bank)
if n_loudest is not None:
node.add_opt('--n-loudest', str(n_loudest))
if trig_id is not None:
node.add_opt('--trigger-id', str(trig_id))
if file_substring is not None:
node.add_opt('--statmap-file-subspace-name', file_substring)
node.new_output_file_opt(workflow.analysis_time, '.html', '--output-file')
workflow += node
files += node.output_files
return files
示例15: make_single_template_plots
def make_single_template_plots(workflow, segs, seg_name, coinc, bank, num, out_dir,
exclude=None, require=None, tags=None):
tags = [] if tags is None else tags
makedir(out_dir)
name = 'single_template_plot'
secs = requirestr(workflow.cp.get_subsections(name), require)
secs = excludestr(secs, exclude)
files = FileList([])
for tag in secs:
for ifo in workflow.ifos:
# Reanalyze the time around the trigger in each detector
node = PlotExecutable(workflow.cp, 'single_template', ifos=[ifo],
out_dir=out_dir, tags=[tag] + tags).create_node()
node.add_input_opt('--statmap-file', coinc)
node.add_opt('--n-loudest', str(num))
node.add_input_opt('--inspiral-segments', segs[ifo])
node.add_opt('--segment-name', seg_name)
node.add_input_opt('--bank-file', bank)
node.new_output_file_opt(workflow.analysis_time, '.hdf', '--output-file')
data = node.output_files[0]
workflow += node
# Make the plot for this trigger and detector
node = PlotExecutable(workflow.cp, name, ifos=[ifo],
out_dir=out_dir, tags=[tag] + tags).create_node()
node.add_input_opt('--single-template-file', data)
node.new_output_file_opt(workflow.analysis_time, '.png', '--output-file')
workflow += node
files += node.output_files
return files