VCS¶
-
class
turbustat.statistics.VCS(cube, header=None)[source]¶ Bases:
turbustat.statistics.base_statistic.BaseStatisticMixInThe VCS technique (Lazarian & Pogosyan, 2004).
- Parameters
- cubenumpy.ndarray or astropy.io.fits.PrimaryHDU or astropy.io.fits.ImageHDU or SpectralCube
Data cube.
- headerFITS header, optional
Corresponding FITS header.
- vel_unitsbool, optional
Convert frequencies to the spectral unit in the header.
Attributes Summary
Fitted break point.
1-sigma on the break point.
The 1D VCS spectrum.
Power spectrum slope(s).
1-sigma error on the power spectrum slope(s).
Methods Summary
compute_pspec([use_pyfftw, threads])Take the FFT of each spectrum in the velocity dimension and average.
fit_pspec([breaks, log_break, low_cut, …])Fit the 1D Power spectrum using a segmented linear model.
input_data_header(data, header[, need_copy])Check if the header is given separately from the data type.
load_beam([beam])Try loading the beam from the header or a given object.
load_results(pickle_file)Load in a saved pickle file.
plot_fit([save_name, xunit, color, symbol, …])Plot the VCS curve and the associated fit.
run([verbose, save_name, xunit, use_pyfftw, …])Run the entire computation.
save_results(output_name[, keep_data])Save the results of the SCF to avoid re-computing.
Attributes Documentation
-
brk¶ Fitted break point.
-
brk_err¶ 1-sigma on the break point.
-
data¶
-
distance¶
-
header¶
-
need_header_flag= True¶
-
no_data_flag= False¶
-
ps1D¶ The 1D VCS spectrum.
-
slope¶ Power spectrum slope(s).
-
slope_err¶ 1-sigma error on the power spectrum slope(s).
Methods Documentation
-
compute_pspec(use_pyfftw=False, threads=1, **pyfftw_kwargs)[source]¶ Take the FFT of each spectrum in the velocity dimension and average.
- Parameters
- use_pyfftwbool, optional
Enable to use pyfftw, if it is installed.
- threadsint, optional
Number of threads to use in FFT when using pyfftw.
- pyfftw_kwargsPassed to
rfft_to_fft. See here for a list of accepted kwargs.
-
fit_pspec(breaks=None, log_break=True, low_cut=None, high_cut=None, fit_verbose=False, bootstrap=False, **bootstrap_kwargs)[source]¶ Fit the 1D Power spectrum using a segmented linear model. Note that the current implementation allows for only 1 break point in the model. If the break point is estimated via a spline, the breaks are tested, starting from the largest, until the model finds a good fit.
- Parameters
- breaksfloat or None, optional
Guesses for the break points. If given as a list, the length of the list sets the number of break points to be fit. If a choice is outside of the allowed range from the data, Lm_Seg will raise an error. If None, a spline is used to estimate the breaks.
- log_breakbool, optional
Sets whether the provided break estimates are log-ed values.
- low_cut
Quantity, optional Lowest frequency to consider in the fit.
- high_cut
Quantity, optional Highest frequency to consider in the fit.
- fit_verbosebool, optional
Enables verbose mode in Lm_Seg.
- bootstrapbool, optional
Bootstrap using the model residuals to estimate the standard errors.
- bootstrap_kwargsdict, optional
Pass keyword arguments to
residual_bootstrap.
-
input_data_header(data, header, need_copy=False)¶ Check if the header is given separately from the data type.
-
load_beam(beam=None)¶ Try loading the beam from the header or a given object.
- Parameters
- beam
Beam, optional The beam.
- beam
-
static
load_results(pickle_file)¶ Load in a saved pickle file.
- Parameters
- pickle_filestr
Name of filename to load in.
- Returns
- selfSave statistic class
Statistic instance with saved results.
Examples
Load saved results. >>> stat = Statistic.load_results(“stat_saved.pkl”) # doctest: +SKIP
-
plot_fit(save_name=None, xunit=Unit('1 / pix'), color='r', symbol='o', fit_color='k', label=None, show_residual=True)[source]¶ Plot the VCS curve and the associated fit.
- Parameters
- save_namestr, optional
Save name for the figure. Enables saving the plot.
- xunit
Unit, optional Choose the angular unit to convert to when ang_units is enabled.
- color{str, RGB tuple}, optional
Color to plot the VCS curve.
- symbolstr, optional
Symbol to use for the data.
- fit_color{str, RGB tuple}, optional
Color of the 1D fit.
- labelstr, optional
Label to later be used in a legend.
- show_residualbool, optional
Plot the residuals for the 1D power-spectrum fit.
-
run(verbose=False, save_name=None, xunit=Unit('1 / pix'), use_pyfftw=False, threads=1, pyfftw_kwargs={}, **fit_kwargs)[source]¶ Run the entire computation.
- Parameters
- verbose: bool, optional
Enables plotting.
- save_namestr,optional
Save the figure when a file name is given.
- xunitu.Unit, optional
Choose the unit to convert the x-axis in the plot to.
- use_pyfftwbool, optional
Enable to use pyfftw, if it is installed.
- threadsint, optional
Number of threads to use in FFT when using pyfftw.
- pyfftw_kwargsPassed to
rfft_to_fft. See here for a list of accepted kwargs.- fit_kwargsPassed to
fit_pspec.
-
save_results(output_name, keep_data=False)¶ Save the results of the SCF to avoid re-computing. The pickled file will not include the data cube by default.
- Parameters
- output_namestr
Name of the outputted pickle file.
- keep_databool, optional
Save the data cube in the pickle file when enabled.