# Scalpels

Scalpels.ScalpelsModule

Module for performing Scalpels (Self-Correlation Analysis of Line Profiles for Extracting Low-amplitude Shifts) based on a CCF timeseries.

For algorithm information, see Collier-Cameron, Ford, Shahaf et al. 2020

Author: Eric Ford Date: September 2020

source
Scalpels.calc_basis_scores_scalpelsMethod

calc_basis_scores_scalpels(rvs, ccfs; σ_rvs, num_basis ) Compute the CCF basis functions and scores for a Scalpels reconstruction of CCFs Inputs:

• rvs: vector of estimated radial velocities
• ccfs: 2d array of CCFS of size (numvelocities, numspectra)

Optional Inputs:

• σ_rvs: vector of measurement uncertainties for estimated radial velocities (default: ones)
• num_basis: number of basis vectors to use for SVD reconstruction of CCFs
• sortbyresponce: set true to sort basis vectors by RV responce (default: true)

Output: (scores, basis): a NamedTuple

Notes:

• Currently Scalpels weights all velocity pixels equally and uses the σ_rvs to weight each observation.
• First element of output starts with RMS with zero basis vectors (i.e., the input RVs)
source
Scalpels.calc_clean_rvs_scores_basis_scalpelsMethod

calc_clean_rvs_scores_basis_scalpels(rvs, ccfs; σ_rvs, num_basis, sort_by_responce ) Computes cleaned rvs as well as the CCF basis functions and scores for a Scalpels reconstruction of CCFs Inputs:

• rvs: vector of estimated radial velocities
• ccfs: 2d array of CCFS of size (numvelocities, numspectra)

Optional Inputs:

• σ_rvs: vector of measurement uncertainties for estimated radial velocities (default: ones)
• num_basis: number of basis vectors to use for SVD reconstruction of CCFs
• sortbyresponce: set true to sort basis vectors by RV responce (default: true)

Output: (rvs, scores, basis): a NamedTuple

Notes:

• Currently Scalpels weights all velocity pixels equally and uses the σ_rvs to weight each observation.
• First element of output starts with RMS with zero basis vectors (i.e., the input RVs)
source
Scalpels.clean_rvs_scalpelsMethod

clean_rvs_scalpels(rvs, ccfs; σ_rvs, num_basis ) Inputs:

• rvs: vector of estimated radial velocities
• ccfs: 2d array of CCFS of size (numvelocities, numspectra)

Optional Inputs:

• σ_rvs: vector of measurement uncertainties for estimated radial velocities (default: ones)
• num_basis: number of basis vectors to use for SVD reconstruction of CCFs
• sortbyresponce: set true to sort basis vectors by RV responce (default: true)

Output: rvs_clean: vector of estimated RVs after cleaning by scalpels

Notes:

• Currently Scalpels weights all observations equally and doesn't use the σ_rvs.
• First element of output starts with RMS with zero basis vectors (i.e., the input RVs)
source
Scalpels.rms_clean_rvs_vs_num_basis_scalpelsMethod

rms_clean_rvs_vs_num_basis_scalpels(rvs, ccfs; σ_rvs, max_num_basis ) Compute RMS of estimated RVs after cleaning raw RVS with Scalpels algorithm (based on CCFs)

Inputs:

• rvs: vector of estimated radial velocities
• ccfs: 2d array of CCFS of size (numvelocities, numspectra)

Optional Inputs:

• σ_rvs: vector of measurement uncertainties for estimated radial velocities (default: ones)
• maxnumbasis: maximum number of basis vectors to use for SVD reconstruction of CCFs
• sortbyresponce: set true to sort basis vectors by RV responce (default: true)

Output: rms_scalpels: vector of RMS estimated RVs after cleaning by scalpels as a function of the number of basis vectors

Notes:

• Currently Scalpels weights all observations equally and doesn't use the σ_rvs.
• First element of output starts with RMS with zero basis vectors (i.e., the input RVs)
source