Skip to content

Commit

Permalink
allow range in makefilter
Browse files Browse the repository at this point in the history
  • Loading branch information
navidcy committed Jul 9, 2023
1 parent ef3901c commit 61be70b
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 7 deletions.
6 changes: 3 additions & 3 deletions docs/src/timestepping.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,12 @@ set_theme!(Theme(linewidth = 3, fontsize = 20))
```@example 1
using FourierFlows, CairoMakie
K = range(0, stop=1, length=100) # non-dimensional wavenumber k * dx / π
K = 0:0.01:1 # non-dimensional wavenumber k * dx / π
filter = FourierFlows.makefilter(collect(K))
filter = FourierFlows.makefilter(K)
fig = Figure()
ax = Axis(fig[1, 1], xlabel = "k dx / π", ylabel = "filter")
ax = Axis(fig[1, 1], xlabel = "k dx / π", ylabel = "filter", aspect=2.5, xticks=0:0.2:1)
lines!(ax, K, filter)
Expand Down
7 changes: 3 additions & 4 deletions src/domains.jl
Original file line number Diff line number Diff line change
Expand Up @@ -502,16 +502,15 @@ outer wavenumber `outerK` is `tol`, where `tol` is a small number, close to mach
decay = - log(tol) / (outerK - innerK)^order
```
"""
function makefilter(K::Array; order=4, innerK=2/3, outerK=1, tol=1e-15)
TK = typeof(K)
function makefilter(K; order=4, innerK=2/3, outerK=1, tol=1e-15)
K = Array(K)

decay = -log(tol) / (outerK - innerK)^order # decay rate for filtering function
decay = -log(tol) / (outerK - innerK)^order

filter = @. exp(- decay * (K - innerK)^order)
filter[K .< innerK] .= 1

return TK(filter)
return filter
end

function makefilter(g::OneDGrid; realvars=true, kwargs...)
Expand Down

0 comments on commit 61be70b

Please sign in to comment.