-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathTrixiAtmo.jl
More file actions
103 lines (81 loc) · 4.13 KB
/
TrixiAtmo.jl
File metadata and controls
103 lines (81 loc) · 4.13 KB
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
"""
TrixiAtmo
**TrixiAtmo.jl** is a simulation package for atmospheric models based on
[Trixi.jl](https://github.com/trixi-framework/Trixi.jl)
See also: [trixi-framework/TrixiAtmo.jl](https://github.com/trixi-framework/TrixiAtmo.jl)
"""
module TrixiAtmo
using Reexport: @reexport
using Trixi
using MuladdMacro: @muladd
using Printf: @sprintf
using Static: True, False
using StrideArrays: PtrArray
using StaticArrayInterface: static_size
using LinearAlgebra: Diagonal, I, cross, norm, dot, det, diagm
using Reexport: @reexport
using LoopVectorization: @turbo
using QuadGK: quadgk
using ForwardDiff: derivative
using HDF5: HDF5, h5open, attributes, create_dataset, datatype, dataspace
using Setfield
@reexport using StaticArrays: SVector, SMatrix
@reexport import Trixi: waterheight, varnames, cons2cons, cons2prim,
prim2cons, cons2entropy, entropy2cons, velocity,
max_abs_speeds, max_abs_speed_naive, max_abs_speed,
have_nonconservative_terms, boundary_condition_slip_wall,
energy_kinetic, energy_internal, energy_total, entropy, pressure,
flux, flux_ec, flux_chandrashekar, flux_wintermeyer_etal,
flux_fjordholm_etal, flux_nonconservative_wintermeyer_etal,
flux_nonconservative_fjordholm_etal, FluxLMARS, flux_shima_etal,
flux_ranocha, flux_kennedy_gruber, trixi_backend
using Trixi: ln_mean, stolarsky_mean, inv_ln_mean
# DGMulti Solvers
using StartUpDG: MeshData, RefElemData
include("auxiliary/auxiliary.jl")
include("equations/equations.jl")
include("meshes/meshes.jl")
include("semidiscretization/semidiscretization.jl")
include("solvers/solvers.jl")
include("callbacks_step/callbacks_step.jl")
include("callbacks_stage/callbacks_stage.jl")
export CompressibleMoistEulerEquations2D,
CompressibleRainyEulerEquations2D,
CovariantLinearAdvectionEquation2D, CovariantShallowWaterEquations2D,
ShallowWaterEquations3D, SplitCovariantShallowWaterEquations2D,
CompressibleEulerPotentialTemperatureEquations1D,
CompressibleEulerPotentialTemperatureEquations2D,
CompressibleEulerPotentialTemperatureEquations3D,
CompressibleEulerPotentialTemperatureEquationsWithGravity1D,
CompressibleEulerPotentialTemperatureEquationsWithGravity2D,
CompressibleEulerPotentialTemperatureEquationsWithGravity3D,
CompressibleEulerEnergyEquationsWithGravity2D,
CompressibleEulerEnergyEquationsWithGravity3D,
CompressibleEulerInternalEnergyEquationsWithGravity2D
export GlobalCartesianCoordinates, GlobalSphericalCoordinates
export NonlinearSolveDG
export flux_chandrashekar, FluxLMARS
export flux_nonconservative_zeros, flux_nonconservative_ec,
flux_nonconservative_surface_simplified, source_terms_geometric_coriolis,
source_terms_coriolis, source_terms_coriolis_lagrange_multiplier,
flux_tec, flux_etec, flux_nonconservative_souza_etal,
flux_nonconservative_artiano_etal,
flux_nonconservative_waruszewski_etal, flux_zero,
flux_ec_rain, flux_LMARS, flux_nonconservative_es, flux_conservative_es,
flux_conservative_etec, flux_nonconservative_etec
export source_terms_lagrange_multiplier, clean_solution_lagrange_multiplier!
export cons2prim_and_vorticity, contravariant2global
export P4estMeshCubedSphere2D, P4estMeshQuadIcosahedron2D, DGMultiMeshTriIcosahedron2D,
MetricTermsCrossProduct, MetricTermsInvariantCurl, MetricTermsCovariantSphere,
ChristoffelSymbolsAutodiff, ChristoffelSymbolsCollocationDerivative
export EARTH_RADIUS, EARTH_GRAVITATIONAL_ACCELERATION,
EARTH_ROTATION_RATE, SECONDS_PER_DAY
export transform_initial_condition
export initial_condition_gaussian, initial_condition_geostrophic_balance,
initial_condition_rossby_haurwitz, initial_condition_isolated_mountain,
initial_condition_unsteady_solid_body_rotation,
initial_condition_barotropic_instability
export bottom_topography_isolated_mountain, bottom_topography_unsteady_solid_body_rotation
export AtmosphereLayers, AtmosphereLayersRainyBubble
export examples_dir
end # module TrixiAtmo