GroupedCoefficients
GroupedTransforms.GroupedCoefficientsComplex
— TypeGroupedCoefficientsComplex
A struct to hold complex coefficients belonging to indices in a grouped index set
\[ \mathcal{I}_{\pmb{N}}(U) = \left\{ \pmb{k} \in \Z^d : \mathrm{supp} \pmb{k} \in U, \pmb{k}_{\mathrm{supp} \pmb{k}} \in [- \frac{N_{\mathrm{supp} \pmb{k} }}{2}, \frac{N_{ \mathrm{supp} \pmb{k} }}{2} - 1 ) \right\}.\]
Fields
setting::Vector{NamedTuple{(:u, :mode, :bandwidths, :bases),Tuple{Vector{Int},Module,Vector{Int},Vector{String}}}}
- uniquely describes the setting such as the bandlimits $N_{\pmb u}$, see alsoget_setting(system::String,d::Int,ds::Int,N::Vector{Int},basis_vect::Vector{String})::Vector{NamedTuple{(:u, :mode, :bandwidths, :bases),Tuple{Vector{Int},Module,Vector{Int},Vector{String}}}}
andget_setting(system::String,U::Vector{Vector{Int}},N::Vector{Int},basis_vect::Vector{String})::Vector{NamedTuple{(:u, :mode, :bandwidths, :bases),Tuple{Vector{Int},Module,Vector{Int},Vector{String}}}}
data::Union{Vector{ComplexF64},Nothing}
- the vector of coefficients
Constructor
GroupedCoefficientsComplex( setting, data = nothing )
Additional Constructor
GroupedCoefficients( setting, data = nothing )
GroupedTransforms.GroupedCoefficientsReal
— TypeGroupedCoefficientsReal
A struct to hold real valued coefficients belonging to indices in a grouped index set
\[ \mathcal{I}_{\pmb{N}}(U) = \left\{ \pmb{k} \in \Z^d : \mathrm{supp} \pmb{k} \in U, \pmb{k}_{\mathrm{supp} \pmb{k}} \in [0, N_{\mathrm{supp} \pmb{k} } - 1 ] \right\}.\]
Fields
setting::Vector{NamedTuple{(:u, :mode, :bandwidths, :bases),Tuple{Vector{Int},Module,Vector{Int},Vector{String}}}}
- uniquely describes the setting such as the bandlimits $N_{\pmb u}$, see alsoget_setting(system::String,d::Int,ds::Int,N::Vector{Int},basis_vect::Vector{String})::Vector{NamedTuple{(:u, :mode, :bandwidths, :bases),Tuple{Vector{Int},Module,Vector{Int},Vector{String}}}}
andget_setting(system::String,U::Vector{Vector{Int}},N::Vector{Int},basis_vect::Vector{String})::Vector{NamedTuple{(:u, :mode, :bandwidths, :bases),Tuple{Vector{Int},Module,Vector{Int},Vector{String}}}}
data::Union{Vector{Float64},Nothing}
- the vector of coefficients
Constructor
GroupedCoefficientsReal( setting, data = nothing )
Additional Constructor
GroupedCoefficients( setting, data = nothing )
Base.:*
— Method*( z::Number, fhat::GroupedCoefficients )::GroupedCoefficients
This function defines the multiplication of a number with a GroupedCoefficients object.
Base.:+
— Method+( z::Number, fhat::GroupedCoefficients )::GroupedCoefficients
This function defines the addition of two GroupedCoefficients objects.
Base.:-
— Method-( z::Number, fhat::GroupedCoefficients )::GroupedCoefficients
This function defines the subtraction of two GroupedCoefficients objects.
Base.getindex
— Methodfhat::GroupedCoefficients[idx::Int]
This function overloads getindex of GroupedCoefficients such that you can do fhat[1]
to obtain the basis coefficient determined by idx
.
Base.getindex
— Methodfhat::GroupedCoefficients[u::Vector{Int}]
This function overloads getindex of GroupedCoefficients such that you can do fhat[[1,3]]
to obtain the basis coefficients of the corresponding ANOVA term defined by u
.
Base.setindex!
— Methodfhat::GroupedCoefficients[idx::Int] = z::Number
This function overloads setindex of GroupedCoefficients such that you can do fhat[1] = 3
to set the basis coefficient determined by idx
.
Base.setindex!
— Methodfhat::GroupedCoefficients[u::Vector{Int}] = fhatu::Union{Vector{ComplexF64},Vector{Float64}}
This function overloads setindex of GroupedCoefficients such that you can do fhat[[1,3]] = [1 2 3]
to set the basis coefficients of the corresponding ANOVA term defined by u
.
Base.vec
— Methodvec( fhat::GroupedCoefficients )::Vector{<:Number}
This function returns the vector of the basis coefficients of fhat. This is useful for working with lsqr
or similar.
GroupedTransforms.variances
— Methodmatrix of variances between two basis functions, needed for wavelet basis, since they are not orthonormal