From be47bdc0f429b6c96eaad024a559d75e183d82f2 Mon Sep 17 00:00:00 2001 From: monty Date: Sun, 21 Apr 2024 16:27:45 -0600 Subject: [PATCH] interpolate_neighborhood --- examples/condsim.pdf | Bin 38843 -> 30137 bytes examples/data.pdf | Bin 7622 -> 8478 bytes examples/example.jl | 70 +++++++++++++++-- examples/inversedistance.pdf | Bin 0 -> 23217 bytes examples/inversedistance_neighborhood.pdf | Bin 0 -> 24631 bytes examples/kriging.pdf | Bin 20437 -> 20661 bytes examples/kriging_neighborhood.pdf | Bin 0 -> 22460 bytes src/Kriging.jl | 91 ++++++++++++++++------ 8 files changed, 131 insertions(+), 30 deletions(-) create mode 100644 examples/inversedistance.pdf create mode 100644 examples/inversedistance_neighborhood.pdf create mode 100644 examples/kriging_neighborhood.pdf diff --git a/examples/condsim.pdf b/examples/condsim.pdf index 24a99ddedc5ff2a1efefd934bed2f717e89be21c..ad2f15597d30995f628ee7a8e80da5c3707c17cf 100644 GIT binary patch literal 30137 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 literal 38843 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 diff --git a/examples/data.pdf b/examples/data.pdf index a7ab5eadf8af6380ca8c87dae781388a64b40dda..7a1e8ba585bb9f9c0dad4c6c9bd0b24a9b979aa2 100644 GIT binary patch literal 8478 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 QC6P!bBb1bkH<}>+2RVmQ4FCWD literal 7622 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 diff --git a/examples/example.jl b/examples/example.jl index 86db861..95fc0f7 100644 --- a/examples/example.jl +++ b/examples/example.jl @@ -2,8 +2,10 @@ import Kriging import PyPlot import Random +cd(@__DIR__) + Random.seed!(0) -X = [3 7 1 5 9; 3 2 7 9 6] +X = Float64.([3 7 1 5 9; 3 2 7 9 6]) Z = exp.(randn(size(X, 2))) fig, ax = PyPlot.subplots() for i = 1:size(X, 2) @@ -15,6 +17,7 @@ ax.text([5.1], [5.1], "?", fontsize=16) ax.axis("scaled") ax.set_xlim(0, 10) ax.set_ylim(0, 10) +PyPlot.title("Data") display(fig); println() fig.savefig("data.pdf") PyPlot.close(fig) @@ -27,21 +30,45 @@ krigedfield = Array{Float64}(undef, length(xs), length(ys)) krigedfield[i, j] = Kriging.krige(permutedims([x y]), X, Z, covfun)[1] end -krigedfield2 = reshape(Kriging.krige(permutedims([xs ys]), X, Z, covfun), 100, 100) - fig, ax = PyPlot.subplots() -cax = ax.imshow(permutedims(krigedfield2), extent=[0, 10, 0, 10], origin="lower") +cax = ax.imshow(permutedims(krigedfield), extent=[0, 10, 0, 10], origin="lower") for i = 1:size(X, 2) ax.plot([X[1, i]], [X[2, i]], "r.", ms=10) end fig.colorbar(cax) +PyPlot.title("Kriging") display(fig); println() fig.savefig("kriging.pdf") PyPlot.close(fig) +x0mat = Array{Float64}(undef, 2, length(xs) * length(ys)) +global k = 1 +for (i, x) in enumerate(xs), (j, y) in enumerate(ys) + x0mat[1, k] = x + x0mat[2, k] = y + global k += 1 +end +@time z0 = Kriging.interpolate_neighborhood(x0mat, X, Z, covfun, 20; neighborsearch=50) +kriging_neighborhood_field = Array{Float64}(undef, length(xs), length(ys)) +global k = 1 +for (i, x) in enumerate(xs), (j, y) in enumerate(ys) + kriging_neighborhood_field[i, j] = z0[k] + global k += 1 +end +fig, ax = PyPlot.subplots() +cax = ax.imshow(permutedims(kriging_neighborhood_field), extent=[0, 10, 0, 10], origin="lower") +for i = 1:size(X, 2) + ax.plot([X[1, i]], [X[2, i]], "r.", ms=10) +end +fig.colorbar(cax) +PyPlot.title("Kriging neighborhood") +display(fig); println() +fig.savefig("kriging_neighborhood.pdf") +PyPlot.close(fig) + inversedistancefield = Array{Float64}(undef, length(xs), length(ys)) @time for (i, x) in enumerate(xs), (j, y) in enumerate(ys) - inversedistancefield[i, j] = Kriging.inversedistance(permutedims([x y]), X, Z, 2)[1] + inversedistancefield[i, j] = Kriging.inversedistance(permutedims([x y]), X, Z)[1] end fig, ax = PyPlot.subplots() @@ -50,6 +77,7 @@ for i = 1:size(X, 2) ax.plot([X[1, i]], [X[2, i]], "r.", ms=10) end fig.colorbar(cax) +PyPlot.title("Inverse distance") display(fig); println() fig.savefig("inversedistance.pdf") PyPlot.close(fig) @@ -61,12 +89,37 @@ for (i, x) in enumerate(xs), (j, y) in enumerate(ys) x0mat[2, k] = y global k += 1 end -@time z0 = Kriging.condsim(x0mat, X, Z, covfun, 20, length(Z); neighborsearch=50) +@time z0 = Kriging.interpolate_neighborhood(x0mat, X, Z, covfun, 20; neighborsearch=50, interpolate=Kriging.inversedistance, pow=2) +inversedistance_neighborhood_field = Array{Float64}(undef, length(xs), length(ys)) +global k = 1 +for (i, x) in enumerate(xs), (j, y) in enumerate(ys) + inversedistance_neighborhood_field[i, j] = z0[k] + global k += 1 +end +fig, ax = PyPlot.subplots() +cax = ax.imshow(permutedims(inversedistance_neighborhood_field), extent=[0, 10, 0, 10], origin="lower") +for i = 1:size(X, 2) + ax.plot([X[1, i]], [X[2, i]], "r.", ms=10) +end +fig.colorbar(cax) +PyPlot.title("Inverse distance neighborhood") +display(fig); println() +fig.savefig("inversedistance_neighborhood.pdf") +PyPlot.close(fig) + +x0mat = Array{Float64}(undef, 2, length(xs) * length(ys)) +global k = 1 +for (i, x) in enumerate(xs), (j, y) in enumerate(ys) + x0mat[1, k] = x + x0mat[2, k] = y + global k += 1 +end +@time z0 = Kriging.condsim(x0mat, X, Z, covfun, 20; neighborsearch=50) condsimfield = Array{Float64}(undef, length(xs), length(ys)) -k = 1 +global k = 1 for (i, x) in enumerate(xs), (j, y) in enumerate(ys) condsimfield[i, j] = z0[k] - k += 1 + global k += 1 end fig, ax = PyPlot.subplots() cax = ax.imshow(permutedims(condsimfield), extent=[0, 10, 0, 10], origin="lower") @@ -74,6 +127,7 @@ for i = 1:size(X, 2) ax.plot([X[1, i]], [X[2, i]], "r.", ms=10) end fig.colorbar(cax) +PyPlot.title("Conditional Gaussian simulation") display(fig); println() fig.savefig("condsim.pdf") PyPlot.close(fig) \ No newline at end of file diff --git a/examples/inversedistance.pdf b/examples/inversedistance.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6c3230c6c49ee77e93ac89dafd068e89f41df2a7 GIT binary patch literal 23217 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 literal 20437 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
EaHU>tiCqx~>JPlmears}$AsdN zc)M%!iOn8%ao1XoTi_L_-K!pAmb#9#Tt3JBF5Cw-yLyr-y*YAfEUM}(7k5`KITU2^Uw%S6iiFgQ zI2{O=N=+m)6NzE$jL%KE!2#@4CX;%))#Ew6^^rT7KIyc15H>ZM9YG0`+k2%(;2lAD>80cIauGj*eCW5Psk%yk3f+y}$)1I{nr J-r3t_`v<;*yQ2UA literal 0 HcmV?d00001 diff --git a/src/Kriging.jl b/src/Kriging.jl index efecda5..a14568f 100644 --- a/src/Kriging.jl +++ b/src/Kriging.jl @@ -130,7 +130,14 @@ function distsquared(a::AbstractArray, b::AbstractArray) return result end -function inversedistance(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, pow::Number; cutoff::Number=0) +function inversedistance(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, f::Function; pow::Number=2, cutoff::Number=0) + v = inversedistance(x0mat, X, Z, pow; cutoff=cutoff) + return v, [] +end + +function inversedistance(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, pow::Number=2; cutoff::Number=0) + @assert size(X, 2) == length(Z) "Number of data points ($(size(X, 2))) and observations ($(length(Z))) do not match!" + @assert size(x0mat, 1) == size(X, 1) "Dimensions of data points ($(size(x0mat, 1))) and observations ($(size(X, 1))) do not match!" iz = .!isnan.(Z) Xn = X[:,iz] result = Array{Float64}(undef, size(x0mat, 2)) @@ -163,6 +170,8 @@ Returns: - kriging estimates at `x0mat` """ function simplekrige(mu, x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, cov::Function) + @assert size(X, 2) == length(Z) "Number of data points ($(size(X, 2))) and observations ($(length(Z))) do not match!" + @assert size(x0mat, 1) == size(X, 1) "Dimensions of data points ($(size(x0mat, 1))) and observations ($(size(X, 1))) do not match!" result = fill(mu, size(x0mat, 2)) resultvariance = fill(cov(0), size(x0mat, 2)) covmat = getcovmat(X, cov) @@ -212,30 +221,33 @@ Returns: - variance estimates at `x0mat` """ function krigevariance(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, cov::Function; minwindow::Union{AbstractVector,Nothing}=nothing, maxwindow::Union{AbstractVector,Nothing}=nothing) - if size(X, 2) != length(Z) - error("Number of data points ($(size(X, 2))) and observations ($(length(Z))) do not match!") - end + @assert size(X, 2) == length(Z) "Number of data points ($(size(X, 2))) and observations ($(length(Z))) do not match!" + @assert size(x0mat, 1) == size(X, 1) "Dimensions of data points ($(size(x0mat, 1))) and observations ($(size(X, 1))) do not match!" + result = zeros(size(x0mat, 2)) + resultvariance = fill(cov(0), size(x0mat, 2)) if minwindow != nothing && maxwindow != nothing if length(minwindow) != size(X, 1) || length(maxwindow) != size(X, 1) - error("minwindow and maxwindow must have the same length as the number of dimensions of the data!") + @error("minwindow and maxwindow must have the same length as the number of dimensions of the data!") + result = fill(NaN, size(x0mat, 2)) + return result, resultvariance end if any(minwindow .> maxwindow) - error("minwindow must be less than or equal to maxwindow!") + @error("minwindow must be less than or equal to maxwindow!") + result = fill(NaN, size(x0mat, 2)) + return result, resultvariance end mask = vec(all(minwindow .< X .< maxwindow; dims=1)) X = X[:, mask] Z = Z[mask] end - result = zeros(size(x0mat, 2)) - resultvariance = fill(cov(0), size(x0mat, 2)) + covmat = getcovmat(X, cov) - bigmat = [covmat ones(size(X, 2)); ones(size(X, 2))' 0.] - ws = Array{Float64}(undef, size(x0mat, 2)) - bigvec = Array{Float64}(undef, size(X, 2) + 1) + bigmat = [covmat ones(size(X, 2)); permutedims(ones(size(X, 2))) 0.] + bigvec = Vector{Float64}(undef, size(X, 2) + 1) bigvec[end] = 1 bigmatpinv = LinearAlgebra.pinv(bigmat) - covvec = Array{Float64}(undef, size(X, 2)) - x = Array{Float64}(undef, size(X, 2) + 1) + covvec = Vector{Float64}(undef, size(X, 2)) + x = Vector{Float64}(undef, size(X, 2) + 1) for i = 1:size(x0mat, 2) bigvec[1:end-1] = getcovvec!(covvec, x0mat[:, i], X, cov) bigvec[end] = 1 @@ -263,22 +275,21 @@ Returns: - conditional estimates at `x0mat` """ -function condsim(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, cov::Function, numneighbors, numobsneighbors=length(Z); neighborsearch=min(1000, size(x0mat, 2))) - kdtree = NearestNeighbors.KDTree(x0mat) - nnindices, _ = NearestNeighbors.knn(kdtree, x0mat, neighborsearch, true) - obs_kdtree = NearestNeighbors.KDTree(convert.(Float64, X)) - nnindices_obs, _ = NearestNeighbors.knn(obs_kdtree, x0mat, numobsneighbors, true) - z0 = Array{Float64}(undef, size(x0mat, 2)) +function condsim(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, cov::Function, numneighbors, numobsneighbors=min(1000, size(X, 2)); neighborsearch=min(1000, size(x0mat, 2))) + @assert size(X, 2) == length(Z) "Number of data points ($(size(X, 2))) and observations ($(length(Z))) do not match!" + @assert size(x0mat, 1) == size(X, 1) "Dimensions of data points ($(size(x0mat, 1))) and observations ($(size(X, 1))) do not match!" + nnindices, nnindices_obs = kdtree_indices(x0mat, X; neighborsearch=neighborsearch, numobsneighbors=numobsneighbors) + z0 = Vector{Float64}(undef, size(x0mat, 2)) filledin = fill(false, size(x0mat, 2)) perm = Random.randperm(size(x0mat, 2)) - maxvar = 0. for i = 1:size(x0mat, 2) thisx0 = reshape(x0mat[:, perm[i]], size(x0mat, 1), 1) neighbors = nnindices[perm[i]] obs_neighbors = nnindices_obs[perm[i]] numfilled = sum(filledin[neighbors]) - bigX = Array{Float64}(undef, size(x0mat, 1), min(numneighbors, numfilled) + numobsneighbors) - bigZ = Array{Float64}(undef, min(numneighbors, numfilled) + numobsneighbors) + obs_size = min(numneighbors, numfilled) + numobsneighbors + bigX = Matrix{Float64}(undef, size(x0mat, 1), obs_size) + bigZ = Vector{Float64}(undef, obs_size) bigX[:, 1:numobsneighbors] = X[:, obs_neighbors] bigZ[1:numobsneighbors] = Z[obs_neighbors] bigXcount = numobsneighbors + 1 @@ -298,6 +309,42 @@ function condsim(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, co return z0 end +function interpolate_neighborhood(x0mat::AbstractMatrix, X::AbstractMatrix, Z::AbstractVector, cov::Function, numneighbors, numobsneighbors=min(1000, size(X, 2)); neighborsearch=min(1000, size(x0mat, 2)), interpolate=krigevariance, return_variance::Bool=false, kw...) + @assert size(X, 2) == length(Z) "Number of data points ($(size(X, 2))) and observations ($(length(Z))) do not match!" + @assert size(x0mat, 1) == size(X, 1) "Dimensions of data points ($(size(x0mat, 1))) and observations ($(size(X, 1))) do not match!" + _, nnindices_obs = kdtree_indices(x0mat, X; neighborsearch=neighborsearch, numobsneighbors=numobsneighbors) + z0 = Vector{Float64}(undef, size(x0mat, 2)) + if return_variance + var0 = Vector{Float64}(undef, size(x0mat, 2)) + end + for i = 1:size(x0mat, 2) + obs_neighbors = nnindices_obs[i] + mu, var = interpolate(reshape(x0mat[:, i], size(x0mat, 1), 1), X[:, obs_neighbors], Z[obs_neighbors], cov; kw...) + z0[i] = mu[1] + if return_variance + var0[i] = var[1] + end + end + if return_variance + return z0, var0 + else + return z0 + end +end + +function kdtree_indices(x0mat::AbstractMatrix{T}, X::AbstractMatrix=Matrix{T}(undef, 0, 0); neighborsearch=min(1000, size(x0mat, 2)), numobsneighbors=min(1000, size(X, 2))) where T <: Real + kdtree = NearestNeighbors.KDTree(x0mat) + nnindices, _ = NearestNeighbors.knn(kdtree, x0mat, neighborsearch, true) + if numobsneighbors > 0 && size(X, 2) > 0 + @assert size(x0mat, 1) == size(X, 1) "Dimensions of data points ($(size(x0mat, 1))) and observations ($(size(X, 1))) do not match!" + obs_kdtree = NearestNeighbors.KDTree(X) + nnindices_obs, _ = NearestNeighbors.knn(obs_kdtree, x0mat, numobsneighbors, true) + return nnindices, nnindices_obs + else + return nnindices, [] + end +end + """ Get spatial covariance matrix