Utility functions
StellarSpectraObservationFitting._trapzx2
— Method_trapzx2(x1, x2, y1, y2)
Twice the area under the line between (x1
, y1
) and (x2
, y2
). Used in trapezoidal integration
StellarSpectraObservationFitting._vander
— Method_vander(x, n)
Calculate the the Vandermonde matrix. See https://en.wikipedia.org/wiki/Vandermonde_matrix
StellarSpectraObservationFitting.banded_inds
— Methodbanded_inds(row, span, row_len)
Calculate the bounds of the filled indices for row row
of a banded matrix of span span
StellarSpectraObservationFitting.bounds_generator!
— Methodbounds_generator!(bounds, xs)
Getting the bounds of each element in xs
assuming that they fully span the domain
StellarSpectraObservationFitting.bounds_generator
— Methodbounds_generator!(xs)
Getting the bounds of each element in xs
assuming that they fully span the domain
StellarSpectraObservationFitting.clip_vector!
— Methodclip_vector!(vec; max=Inf, min=-Inf)
Set values in vec above max
to max
and below min
to min
StellarSpectraObservationFitting.copy_dict!
— Methodcopy_dict!(to, from)
Copy all entries in from
to to
StellarSpectraObservationFitting.est_∇
— Methodest_∇(f, inputs; dif=1e-7, ignore_0_inputs=false)
Estimate the gradient of f
at inputs
using finite differences.
StellarSpectraObservationFitting.find_modes
— Methodfind_modes(data; amount=3)
Return the indices of local maxima of a data array
StellarSpectraObservationFitting.flatten_ranges
— Methodflatten_ranges(ranges)
Returns a range from the largest first element of those in ranges
to the smallest last element of those in ranges
StellarSpectraObservationFitting.fwhm_2_σ
— Methodfwhm_2_σ(fwhm)
Convert full-width at half-maximum to σ
StellarSpectraObservationFitting.general_lst_sq
— Methodgeneral_lst_sq(dm, data, Σ)
Solve a weighted linear system of equations. See https://en.wikipedia.org/wiki/Generalizedleastsquares#Method_outline
StellarSpectraObservationFitting.general_lst_sq_f
— Methodgeneral_lst_sq_f(data, Σ, order; x=eachindex(data))
Get a polynomial of order order
fit to data
StellarSpectraObservationFitting.int2ind
— Methodint2ind(a, x)
Find the index where x
can be found in a
StellarSpectraObservationFitting.make_template
— Methodmake_template(matrix, σ²; default=1., use_mean=false, kwargs...)
Reduce matrix
to its median (or weighted mean) and clip the result
StellarSpectraObservationFitting.make_template
— Methodmake_template(matrix; use_mean=false, kwargs...)
Reduce matrix
to its median (or mean) and clip the result
StellarSpectraObservationFitting.multiple_append!
— Methodmultiple_append!(a, b...)
Generalized version of the Julia's append!() function
StellarSpectraObservationFitting.observation_night_inds
— Methodobservation_night_inds(times_in_days)
Find the indices for each observing night
StellarSpectraObservationFitting.ordinary_lst_sq
— Methodordinary_lst_sq(dm, data)
Solve a linear system of equations. See https://en.wikipedia.org/wiki/Ordinaryleastsquares#Matrix/vector_formulation
StellarSpectraObservationFitting.ordinary_lst_sq_f
— Methodordinary_lst_sq_f(data, order; x=eachindex(data))
Get a polynomial of order order
fit to data
StellarSpectraObservationFitting.oversamp_interp
— Methodoversamp_interp(lo_x, hi_x, x, y)
Interpolating by getting the average value of y
from lo_x
to hi_x
StellarSpectraObservationFitting.parse_args
— Methodparse_args(ind, type, default)
Retrieve ARGS[ind
] as type type
if it exists. Otherwise, return default
StellarSpectraObservationFitting.searchsortednearest
— Methodsearchsortednearest(a, x; lower=false)
Find the index of the value closest to x
in a
(which is a sorted vector)
StellarSpectraObservationFitting.self_cor
— Methodself_cor(a; set_diag=true)
Get the correlation matrix between the rows in a
StellarSpectraObservationFitting.trapz_small
— Methodtrapz_small(x, y)
Trapezoidal integration of y
over x
. Shamelessly modified from https://github.com/dextorious/NumericalIntegration.jl/blob/master/src/NumericalIntegration.jl. See https://en.wikipedia.org/wiki/Trapezoidal_rule
StellarSpectraObservationFitting.trapz_small
— Methodtrapz_small(lo_x, hi_x, x, y)
Trapezoidal integration of y
over x
from lo_x
to hi_x
. See https://en.wikipedia.org/wiki/Trapezoidal_rule
StellarSpectraObservationFitting.vector_zero
— Methodvector_zero(θ)
Get a zero version of θ
StellarSpectraObservationFitting.wavenumber_to_Å
— Methodwavenumber_to_Å(wn)
Convert wn
(in 1/cm) to wavelength (in Å)
StellarSpectraObservationFitting.weighted_mean
— Methodweighted_mean(x, σ²; default=0., kwargs...)
Calculates the weighted mean of x
given σ²
StellarSpectraObservationFitting.Å_to_wavenumber
— MethodÅ_to_wavenumber(λ)
Convert λ
(in Å) to wave number (in 1/cm)