-
Notifications
You must be signed in to change notification settings - Fork 9
/
NeuralClosure.jl
37 lines (32 loc) · 895 Bytes
/
NeuralClosure.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
"""
Neural closure modelling tools.
"""
module NeuralClosure
using ComponentArrays: ComponentArray
using IncompressibleNavierStokes
using IncompressibleNavierStokes: Dimension, momentum!, apply_bc_u!, project!
using KernelAbstractions
using Lux
using NNlib
using Observables
using Random
using Tullio
using Zygote
# Must be loaded inside for Tullio to work correctly
using CUDA
include("closure.jl")
include("cnn.jl")
include("fno.jl")
include("training.jl")
include("filter.jl")
include("create_les_data.jl")
export smagorinsky_closure
export cnn, fno, FourierLayer
export train
export mean_squared_error, create_relerr_prior, create_relerr_post
export create_loss_prior, create_loss_post
export create_dataloader_prior, create_dataloader_post
export create_callback, create_les_data, create_io_arrays
export wrappedclosure
export FaceAverage, VolumeAverage, reconstruct, reconstruct!
end