function apply_rw(data::Vector{<:Array{Float64}},W::Vector{Matrix{Float64}},id::Union{String,Nothing}=nothing)
function apply_rw(data::Vector{<:Array{Float64}},W::Vector{Matrix{Float64}},vcfg::Union{Nothing,Vector{Int32}}=nothing,id::Union{String,Nothing}=nothing,fs::Bool=false)
function apply_rw(data::Array{Float64},W::Matrix{Float64},vcfg::Union{Nothing,Vector{Int32}}=nothing,id::String="A653",fs::Bool=false)
data_r=[data[k].*rw[k]fork=1:length(data)]
nc=size(W,2)
return(data_r,rw)
ifisnothing(vcfg)
else
vcfg=collect(1:nc)
rw1=[W[k][1,1:nc[k]]fork=1:length(W)]
end
rw2=[W[k][2,1:nc[k]]fork=1:length(W)]
rw=[rw1[k].*rw2[k]fork=1:length(W)]
rw1=W[1,1:nc]
data_r=[data[k].*rw[k]fork=1:length(data)]
rw=rw1
data_r=data.*rw[vcfg]
return(data_r,rw)
return(data_r,rw)
end
end
end
# rw with gaps
function apply_rw(data::Vector{<:Array{Float64}},W::Vector{Matrix{Float64}},vcfg::Vector{Vector{Int32}})
function apply_rw(data::Vector{<:Array{Float64}},W::Vector{Matrix{Float64}},vcfg::Union{Nothing,Vector{Int32}}=nothing,id::String="A653",fs::Bool=false)