gitextract_rqfc0vw8/ ├── .buildkite/ │ ├── docs-pipeline.yml │ └── pipeline.yml ├── .codecov.yml ├── .dev/ │ ├── .gitignore │ ├── Project.toml │ ├── clima_formatter_default_image.jl │ ├── clima_formatter_image.jl │ ├── clima_formatter_options.jl │ ├── climaformat.jl │ ├── hooks/ │ │ ├── pre-commit │ │ └── pre-commit.sysimage │ ├── precompile.jl │ └── systemimage/ │ └── climate_machine_image.jl ├── .github/ │ ├── issue_template.md │ ├── pull_request_template.md │ └── workflows/ │ ├── CompatHelper.yml │ ├── Coverage.yaml │ ├── DocCleanup.yml │ ├── Documenter.yaml │ ├── JuliaFormatter.yml │ ├── Linux-UnitTests.yml │ ├── OS-UnitTests.yml │ ├── PR-Comment.yml │ └── doc_build_common_error_messages.md ├── .gitignore ├── LICENSE.md ├── Manifest.toml ├── Project.toml ├── README.md ├── bors.toml ├── docs/ │ ├── Manifest.toml │ ├── Project.toml │ ├── bibliography.bib │ ├── clean_build_folder.jl │ ├── list_of_apis.jl │ ├── list_of_dev_docs.jl │ ├── list_of_getting_started_docs.jl │ ├── list_of_how_to_guides.jl │ ├── list_of_theory_docs.jl │ ├── list_of_tutorials.jl │ ├── make.jl │ ├── pages_helper.jl │ ├── plothelpers.jl │ └── src/ │ ├── APIs/ │ │ ├── Arrays/ │ │ │ └── Arrays.md │ │ ├── Atmos/ │ │ │ └── AtmosModel.md │ │ ├── BalanceLaws/ │ │ │ ├── BalanceLaws.md │ │ │ └── Problems.md │ │ ├── Common/ │ │ │ ├── CartesianDomains.md │ │ │ ├── CartesianFields.md │ │ │ ├── Orientations.md │ │ │ ├── Spectra.md │ │ │ ├── TurbulenceClosures.md │ │ │ └── TurbulenceConvection.md │ │ ├── Diagnostics/ │ │ │ ├── Diagnostics.md │ │ │ ├── DiagnosticsMachine.md │ │ │ ├── StateCheck.md │ │ │ └── StdDiagnostics.md │ │ ├── Driver/ │ │ │ ├── Checkpoint.md │ │ │ └── index.md │ │ ├── InputOutput/ │ │ │ └── index.md │ │ ├── Land/ │ │ │ ├── LandModel.md │ │ │ ├── RadiativeEnergyFlux.md │ │ │ ├── Runoff.md │ │ │ ├── SoilHeatParameterizations.md │ │ │ ├── SoilWaterParameterizations.md │ │ │ └── SurfaceFlow.md │ │ ├── Numerics/ │ │ │ ├── DGMethods/ │ │ │ │ ├── Courant.md │ │ │ │ ├── DGMethods.md │ │ │ │ ├── FVReconstructions.md │ │ │ │ └── NumericalFluxes.md │ │ │ ├── Meshes/ │ │ │ │ └── Mesh.md │ │ │ ├── ODESolvers/ │ │ │ │ └── ODESolvers.md │ │ │ └── SystemSolvers/ │ │ │ └── SystemSolvers.md │ │ ├── Ocean/ │ │ │ └── Ocean.md │ │ ├── Utilities/ │ │ │ ├── SingleStackUtils.md │ │ │ ├── TicToc.md │ │ │ └── VariableTemplates.md │ │ └── index.md │ ├── Contributing.md │ ├── DevDocs/ │ │ ├── AcceptableUnicode.md │ │ ├── CodeStyle.md │ │ ├── DiagnosticVariableList.md │ │ ├── ModelOutput.md │ │ ├── ModelVariableList.md │ │ └── SystemImage.md │ ├── GettingStarted/ │ │ ├── Atmos.md │ │ ├── Installation.md │ │ ├── RunningClimateMachine.md │ │ └── Terminology.md │ ├── HowToGuides/ │ │ ├── Atmos/ │ │ │ ├── AtmosReferenceState.md │ │ │ ├── MoistureAndPrecip.md │ │ │ ├── MoistureModelChoices.md │ │ │ └── PrecipitationModelChoices.md │ │ ├── BalanceLaws/ │ │ │ └── how_to_make_a_balance_law.md │ │ ├── Diagnostics/ │ │ │ └── UsingDiagnostics.md │ │ ├── Land/ │ │ │ └── index.md │ │ ├── Numerics/ │ │ │ ├── Meshes/ │ │ │ │ └── index.md │ │ │ ├── ODESolvers/ │ │ │ │ └── Timestepping.md │ │ │ └── SystemSolvers/ │ │ │ └── IterativeSolvers.md │ │ └── Ocean/ │ │ └── index.md │ ├── References.md │ ├── Theory/ │ │ ├── Atmos/ │ │ │ ├── AtmosModel.md │ │ │ ├── EDMFEquations.md │ │ │ ├── EDMF_plots.md │ │ │ ├── Microphysics_0M.md │ │ │ ├── Microphysics_1M.md │ │ │ └── Model/ │ │ │ └── tracers.md │ │ └── Common/ │ │ └── Turbulence.md │ └── index.md ├── experiments/ │ ├── AtmosGCM/ │ │ ├── GCMDriver/ │ │ │ ├── GCMDriver.jl │ │ │ ├── baroclinicwave_problem.jl │ │ │ ├── gcm_base_states.jl │ │ │ ├── gcm_bcs.jl │ │ │ ├── gcm_moisture_profiles.jl │ │ │ ├── gcm_perturbations.jl │ │ │ ├── gcm_sources.jl │ │ │ └── heldsuarez_problem.jl │ │ ├── heldsuarez.jl │ │ ├── moist_baroclinic_wave_bulksfcflux.jl │ │ └── nonhydrostatic_gravity_wave.jl │ ├── AtmosLES/ │ │ ├── Artifacts.toml │ │ ├── bomex_les.jl │ │ ├── bomex_model.jl │ │ ├── bomex_single_stack.jl │ │ ├── cfsite_hadgem2-a_07_amip.jl │ │ ├── convective_bl_les.jl │ │ ├── convective_bl_model.jl │ │ ├── dycoms.jl │ │ ├── ekman_layer_model.jl │ │ ├── rising_bubble_bryan.jl │ │ ├── rising_bubble_theta_formulation.jl │ │ ├── schar_scalar_advection.jl │ │ ├── squall_line.jl │ │ ├── stable_bl_les.jl │ │ ├── stable_bl_model.jl │ │ ├── surfacebubble.jl │ │ └── taylor_green.jl │ ├── OceanBoxGCM/ │ │ ├── homogeneous_box.jl │ │ ├── ocean_gyre.jl │ │ └── simple_box.jl │ ├── OceanSplitExplicit/ │ │ └── simple_box.jl │ └── TestCase/ │ ├── baroclinic_wave.jl │ ├── baroclinic_wave_fvm.jl │ ├── isothermal_zonal_flow.jl │ ├── risingbubble.jl │ ├── risingbubble_fvm.jl │ ├── solid_body_rotation.jl │ ├── solid_body_rotation_fvm.jl │ └── solid_body_rotation_mountain.jl ├── src/ │ ├── Arrays/ │ │ ├── CMBuffers.jl │ │ └── MPIStateArrays.jl │ ├── Atmos/ │ │ ├── Model/ │ │ │ ├── AtmosModel.jl │ │ │ ├── atmos_tendencies.jl │ │ │ ├── bc_energy.jl │ │ │ ├── bc_initstate.jl │ │ │ ├── bc_moisture.jl │ │ │ ├── bc_momentum.jl │ │ │ ├── bc_precipitation.jl │ │ │ ├── bc_tracer.jl │ │ │ ├── boundaryconditions.jl │ │ │ ├── courant.jl │ │ │ ├── declare_prognostic_vars.jl │ │ │ ├── energy.jl │ │ │ ├── filters.jl │ │ │ ├── get_prognostic_vars.jl │ │ │ ├── linear.jl │ │ │ ├── linear_atmos_tendencies.jl │ │ │ ├── linear_tendencies.jl │ │ │ ├── lsforcing.jl │ │ │ ├── moisture.jl │ │ │ ├── multiphysics_types.jl │ │ │ ├── precipitation.jl │ │ │ ├── problem.jl │ │ │ ├── prog_prim_conversion.jl │ │ │ ├── projections.jl │ │ │ ├── radiation.jl │ │ │ ├── reconstructions.jl │ │ │ ├── ref_state.jl │ │ │ ├── tendencies_energy.jl │ │ │ ├── tendencies_mass.jl │ │ │ ├── tendencies_moisture.jl │ │ │ ├── tendencies_momentum.jl │ │ │ ├── tendencies_precipitation.jl │ │ │ ├── tendencies_tracers.jl │ │ │ ├── thermo_states.jl │ │ │ ├── thermo_states_anelastic.jl │ │ │ └── tracers.jl │ │ ├── Parameterizations/ │ │ │ ├── GravityWaves/ │ │ │ │ └── README.md │ │ │ ├── README.md │ │ │ └── Radiation/ │ │ │ └── README.md │ │ └── TemperatureProfiles/ │ │ └── TemperatureProfiles.jl │ ├── BalanceLaws/ │ │ ├── BalanceLaws.jl │ │ ├── Problems.jl │ │ ├── boundaryconditions.jl │ │ ├── interface.jl │ │ ├── kernels.jl │ │ ├── prog_prim_conversion.jl │ │ ├── show_tendencies.jl │ │ ├── state_types.jl │ │ ├── sum_tendencies.jl │ │ ├── tendency_types.jl │ │ └── vars_wrappers.jl │ ├── ClimateMachine.jl │ ├── Common/ │ │ ├── CartesianDomains/ │ │ │ ├── CartesianDomains.jl │ │ │ └── rectangular_domain.jl │ │ ├── CartesianFields/ │ │ │ ├── CartesianFields.jl │ │ │ ├── rectangular_element.jl │ │ │ └── rectangular_spectral_element_fields.jl │ │ ├── Orientations/ │ │ │ └── Orientations.jl │ │ ├── Spectra/ │ │ │ ├── Spectra.jl │ │ │ ├── power_spectrum_gcm.jl │ │ │ ├── power_spectrum_les.jl │ │ │ └── spherical_helper.jl │ │ ├── SurfaceFluxes/ │ │ │ └── README.md │ │ ├── TurbulenceClosures/ │ │ │ └── TurbulenceClosures.jl │ │ └── TurbulenceConvection/ │ │ ├── TurbulenceConvection.jl │ │ ├── boundary_conditions.jl │ │ └── source.jl │ ├── Diagnostics/ │ │ ├── Debug/ │ │ │ └── StateCheck.jl │ │ ├── Diagnostics.jl │ │ ├── DiagnosticsMachine/ │ │ │ ├── DiagnosticsMachine.jl │ │ │ ├── atmos_diagnostic_funs.jl │ │ │ ├── group_gen.jl │ │ │ ├── groups.jl │ │ │ ├── horizontal_average.jl │ │ │ ├── onetime.jl │ │ │ ├── pointwise.jl │ │ │ └── variables.jl │ │ ├── StdDiagnostics/ │ │ │ ├── StdDiagnostics.jl │ │ │ ├── atmos_gcm_default.jl │ │ │ ├── atmos_gcm_diagnostic_vars.jl │ │ │ ├── atmos_les_default.jl │ │ │ └── atmos_les_diagnostic_vars.jl │ │ ├── atmos_common.jl │ │ ├── atmos_gcm_default.jl │ │ ├── atmos_gcm_spectra.jl │ │ ├── atmos_les_core.jl │ │ ├── atmos_les_default.jl │ │ ├── atmos_les_default_perturbations.jl │ │ ├── atmos_les_spectra.jl │ │ ├── atmos_mass_energy_loss.jl │ │ ├── atmos_refstate_perturbations.jl │ │ ├── atmos_turbulence_stats.jl │ │ ├── diagnostic_fields.jl │ │ ├── dump_aux.jl │ │ ├── dump_init.jl │ │ ├── dump_state.jl │ │ ├── dump_tendencies.jl │ │ ├── groups.jl │ │ ├── helpers.jl │ │ ├── thermo.jl │ │ ├── variables.jl │ │ └── vorticity_balancelaw.jl │ ├── Driver/ │ │ ├── Callbacks/ │ │ │ └── Callbacks.jl │ │ ├── Checkpoint/ │ │ │ └── Checkpoint.jl │ │ ├── ConfigTypes/ │ │ │ └── ConfigTypes.jl │ │ ├── Driver.jl │ │ ├── SolverTypes/ │ │ │ ├── ExplicitSolverType.jl │ │ │ ├── HEVISolverType.jl │ │ │ ├── IMEXSolverType.jl │ │ │ ├── ImplicitSolverType.jl │ │ │ ├── MISSolverType.jl │ │ │ ├── MultirateSolverType.jl │ │ │ ├── SolverTypes.jl │ │ │ └── SplitExplicitSolverType.jl │ │ ├── diagnostics_configs.jl │ │ ├── driver_configs.jl │ │ ├── solver_config_wrappers.jl │ │ └── solver_configs.jl │ ├── InputOutput/ │ │ ├── VTK/ │ │ │ ├── VTK.jl │ │ │ ├── fieldwriter.jl │ │ │ ├── writemesh.jl │ │ │ ├── writepvtu.jl │ │ │ └── writevtk.jl │ │ └── Writers/ │ │ ├── Writers.jl │ │ └── netcdf_writer.jl │ ├── LICENSE │ ├── Land/ │ │ └── Model/ │ │ ├── LandModel.jl │ │ ├── RadiativeEnergyFlux.jl │ │ ├── Runoff.jl │ │ ├── SoilHeatParameterizations.jl │ │ ├── SoilWaterParameterizations.jl │ │ ├── SurfaceFlow.jl │ │ ├── land_bc.jl │ │ ├── land_tendencies.jl │ │ ├── prog_types.jl │ │ ├── prognostic_vars.jl │ │ ├── soil_bc.jl │ │ ├── soil_heat.jl │ │ ├── soil_model.jl │ │ ├── soil_water.jl │ │ └── source.jl │ ├── Numerics/ │ │ ├── DGMethods/ │ │ │ ├── Courant.jl │ │ │ ├── DGFVModel.jl │ │ │ ├── DGFVModel_kernels.jl │ │ │ ├── DGMethods.jl │ │ │ ├── DGModel.jl │ │ │ ├── DGModel_kernels.jl │ │ │ ├── ESDGModel.jl │ │ │ ├── ESDGModel_kernels.jl │ │ │ ├── FVReconstructions.jl │ │ │ ├── NumericalFluxes.jl │ │ │ ├── SpaceDiscretization.jl │ │ │ ├── create_states.jl │ │ │ ├── custom_filter.jl │ │ │ └── remainder.jl │ │ ├── Mesh/ │ │ │ ├── BrickMesh.jl │ │ │ ├── DSS.jl │ │ │ ├── Elements.jl │ │ │ ├── Filters.jl │ │ │ ├── GeometricFactors.jl │ │ │ ├── Geometry.jl │ │ │ ├── Grids.jl │ │ │ ├── Interpolation.jl │ │ │ ├── Mesh.jl │ │ │ ├── Metrics.jl │ │ │ └── Topologies.jl │ │ ├── ODESolvers/ │ │ │ ├── AdditiveRungeKuttaMethod.jl │ │ │ ├── BackwardEulerSolvers.jl │ │ │ ├── DifferentialEquations.jl │ │ │ ├── GenericCallbacks.jl │ │ │ ├── LowStorageRungeKutta3NMethod.jl │ │ │ ├── LowStorageRungeKuttaMethod.jl │ │ │ ├── MultirateInfinitesimalGARKDecoupledImplicit.jl │ │ │ ├── MultirateInfinitesimalGARKExplicit.jl │ │ │ ├── MultirateInfinitesimalStepMethod.jl │ │ │ ├── MultirateRungeKuttaMethod.jl │ │ │ ├── ODESolvers.jl │ │ │ ├── SplitExplicitMethod.jl │ │ │ └── StrongStabilityPreservingRungeKuttaMethod.jl │ │ └── SystemSolvers/ │ │ ├── SystemSolvers.jl │ │ ├── batched_generalized_minimal_residual_solver.jl │ │ ├── columnwise_lu_solver.jl │ │ ├── conjugate_gradient_solver.jl │ │ ├── generalized_conjugate_residual_solver.jl │ │ ├── generalized_minimal_residual_solver.jl │ │ ├── jacobian_free_newton_krylov_solver.jl │ │ └── preconditioners.jl │ ├── Ocean/ │ │ ├── HydrostaticBoussinesq/ │ │ │ ├── Courant.jl │ │ │ ├── HydrostaticBoussinesq.jl │ │ │ ├── LinearHBModel.jl │ │ │ ├── bc_temperature.jl │ │ │ ├── bc_velocity.jl │ │ │ └── hydrostatic_boussinesq_model.jl │ │ ├── JLD2Writer.jl │ │ ├── Ocean.jl │ │ ├── OceanBC.jl │ │ ├── OceanProblems/ │ │ │ ├── OceanProblems.jl │ │ │ ├── homogeneous_box.jl │ │ │ ├── initial_value_problem.jl │ │ │ ├── ocean_gyre.jl │ │ │ ├── shallow_water_initial_states.jl │ │ │ └── simple_box_problem.jl │ │ ├── README.md │ │ ├── ShallowWater/ │ │ │ ├── ShallowWaterModel.jl │ │ │ └── bc_velocity.jl │ │ ├── SplitExplicit/ │ │ │ ├── Communication.jl │ │ │ ├── HydrostaticBoussinesqCoupling.jl │ │ │ ├── ShallowWaterCoupling.jl │ │ │ ├── SplitExplicitModel.jl │ │ │ └── VerticalIntegralModel.jl │ │ ├── SplitExplicit01/ │ │ │ ├── BarotropicModel.jl │ │ │ ├── Communication.jl │ │ │ ├── Continuity3dModel.jl │ │ │ ├── IVDCModel.jl │ │ │ ├── OceanBoundaryConditions.jl │ │ │ ├── OceanModel.jl │ │ │ ├── SplitExplicitLSRK2nMethod.jl │ │ │ ├── SplitExplicitLSRK3nMethod.jl │ │ │ ├── SplitExplicitModel.jl │ │ │ └── VerticalIntegralModel.jl │ │ └── SuperModels.jl │ └── Utilities/ │ ├── SingleStackUtils/ │ │ ├── SingleStackUtils.jl │ │ └── single_stack_diagnostics.jl │ ├── TicToc/ │ │ └── TicToc.jl │ └── VariableTemplates/ │ ├── VariableTemplates.jl │ ├── flattened_tup_chain.jl │ └── var_names.jl ├── test/ │ ├── Arrays/ │ │ ├── basics.jl │ │ ├── broadcasting.jl │ │ ├── mpi_comm.jl │ │ ├── reductions.jl │ │ ├── runtests.jl │ │ └── varsindex.jl │ ├── Atmos/ │ │ ├── EDMF/ │ │ │ ├── Artifacts.toml │ │ │ ├── bomex_edmf.jl │ │ │ ├── closures/ │ │ │ │ ├── entr_detr.jl │ │ │ │ ├── mixing_length.jl │ │ │ │ ├── pressure.jl │ │ │ │ ├── surface_functions.jl │ │ │ │ └── turbulence_functions.jl │ │ │ ├── compute_mse.jl │ │ │ ├── edmf_kernels.jl │ │ │ ├── edmf_model.jl │ │ │ ├── ekman_layer.jl │ │ │ ├── helper_funcs/ │ │ │ │ ├── diagnose_environment.jl │ │ │ │ ├── diagnostics_configuration.jl │ │ │ │ ├── lamb_smooth_minimum.jl │ │ │ │ ├── nondimensional_exchange_functions.jl │ │ │ │ ├── save_subdomain_temperature.jl │ │ │ │ ├── subdomain_statistics.jl │ │ │ │ ├── subdomain_thermo_states.jl │ │ │ │ └── utility_funcs.jl │ │ │ ├── report_mse_bomex.jl │ │ │ ├── report_mse_sbl_anelastic.jl │ │ │ ├── report_mse_sbl_coupled_edmf_an1d.jl │ │ │ ├── report_mse_sbl_edmf.jl │ │ │ ├── report_mse_sbl_ss_implicit.jl │ │ │ ├── stable_bl_anelastic1d.jl │ │ │ ├── stable_bl_coupled_edmf_an1d.jl │ │ │ ├── stable_bl_edmf.jl │ │ │ ├── stable_bl_edmf_fvm.jl │ │ │ ├── stable_bl_single_stack_implicit.jl │ │ │ └── variable_map.jl │ │ ├── Model/ │ │ │ ├── Artifacts.toml │ │ │ ├── discrete_hydrostatic_balance.jl │ │ │ ├── get_atmos_ref_states.jl │ │ │ ├── ref_state.jl │ │ │ └── runtests.jl │ │ ├── Parameterizations/ │ │ │ └── Microphysics/ │ │ │ ├── KM_ice.jl │ │ │ ├── KM_saturation_adjustment.jl │ │ │ ├── KM_warm_rain.jl │ │ │ └── KinematicModel.jl │ │ ├── prog_prim_conversion/ │ │ │ └── runtests.jl │ │ └── runtests.jl │ ├── BalanceLaws/ │ │ └── runtests.jl │ ├── Common/ │ │ ├── CartesianDomains/ │ │ │ └── runtests.jl │ │ ├── CartesianFields/ │ │ │ └── runtests.jl │ │ ├── Spectra/ │ │ │ ├── gcm_standalone_visual_test.jl │ │ │ ├── runtests.jl │ │ │ └── spherical_helper_test.jl │ │ └── runtests.jl │ ├── Diagnostics/ │ │ ├── Debug/ │ │ │ ├── test_statecheck.jl │ │ │ └── test_statecheck_refvals.jl │ │ ├── diagnostic_fields_test.jl │ │ ├── dm_tests.jl │ │ ├── runtests.jl │ │ ├── sin_init.jl │ │ └── sin_test.jl │ ├── Driver/ │ │ ├── cr_unit_tests.jl │ │ ├── gcm_driver_test.jl │ │ ├── les_driver_test.jl │ │ ├── mms3.jl │ │ └── runtests.jl │ ├── InputOutput/ │ │ ├── VTK/ │ │ │ └── runtests.jl │ │ ├── Writers/ │ │ │ └── runtests.jl │ │ └── runtests.jl │ ├── Land/ │ │ ├── Model/ │ │ │ ├── Artifacts.toml │ │ │ ├── freeze_thaw_alone.jl │ │ │ ├── haverkamp_test.jl │ │ │ ├── heat_analytic_unit_test.jl │ │ │ ├── prescribed_twice.jl │ │ │ ├── runtests.jl │ │ │ ├── soil_heterogeneity.jl │ │ │ ├── test_bc.jl │ │ │ ├── test_bc_3d.jl │ │ │ ├── test_heat_parameterizations.jl │ │ │ ├── test_overland_flow_analytic.jl │ │ │ ├── test_overland_flow_vcatchment.jl │ │ │ ├── test_physical_bc.jl │ │ │ ├── test_radiative_energy_flux_functions.jl │ │ │ └── test_water_parameterizations.jl │ │ └── runtests.jl │ ├── Numerics/ │ │ ├── DGMethods/ │ │ │ ├── Euler/ │ │ │ │ ├── acousticwave_1d_imex.jl │ │ │ │ ├── acousticwave_mrigark.jl │ │ │ │ ├── acousticwave_variable_degree.jl │ │ │ │ ├── fvm_balance.jl │ │ │ │ ├── fvm_isentropicvortex.jl │ │ │ │ ├── isentropicvortex.jl │ │ │ │ ├── isentropicvortex_imex.jl │ │ │ │ ├── isentropicvortex_lmars.jl │ │ │ │ ├── isentropicvortex_mrigark.jl │ │ │ │ ├── isentropicvortex_mrigark_implicit.jl │ │ │ │ ├── isentropicvortex_multirate.jl │ │ │ │ └── isentropicvortex_setup.jl │ │ │ ├── advection_diffusion/ │ │ │ │ ├── advection_diffusion_model.jl │ │ │ │ ├── advection_diffusion_model_1dimex_bgmres.jl │ │ │ │ ├── advection_diffusion_model_1dimex_bjfnks.jl │ │ │ │ ├── advection_sphere.jl │ │ │ │ ├── diffusion_hyperdiffusion_sphere.jl │ │ │ │ ├── direction_splitting_advection_diffusion.jl │ │ │ │ ├── fvm_advection.jl │ │ │ │ ├── fvm_advection_diffusion.jl │ │ │ │ ├── fvm_advection_diffusion_model_1dimex_bjfnks.jl │ │ │ │ ├── fvm_advection_diffusion_periodic.jl │ │ │ │ ├── fvm_advection_sphere.jl │ │ │ │ ├── fvm_swirl.jl │ │ │ │ ├── hyperdiffusion_bc.jl │ │ │ │ ├── hyperdiffusion_model.jl │ │ │ │ ├── periodic_3D_hyperdiffusion.jl │ │ │ │ ├── pseudo1D_advection_diffusion.jl │ │ │ │ ├── pseudo1D_advection_diffusion_1dimex.jl │ │ │ │ ├── pseudo1D_advection_diffusion_mrigark_implicit.jl │ │ │ │ ├── pseudo1D_heat_eqn.jl │ │ │ │ └── variable_degree_advection_diffusion.jl │ │ │ ├── compressible_Navier_Stokes/ │ │ │ │ ├── density_current_model.jl │ │ │ │ ├── mms_bc_atmos.jl │ │ │ │ ├── mms_bc_dgmodel.jl │ │ │ │ ├── mms_model.jl │ │ │ │ ├── mms_solution.jl │ │ │ │ └── mms_solution_generated.jl │ │ │ ├── compressible_navier_stokes_equations/ │ │ │ │ ├── plotting/ │ │ │ │ │ ├── bigfileofstuff.jl │ │ │ │ │ ├── plot_output.jl │ │ │ │ │ └── vizinanigans.jl │ │ │ │ ├── shared_source/ │ │ │ │ │ ├── FluidBC.jl │ │ │ │ │ ├── ScalarFields.jl │ │ │ │ │ ├── VectorFields.jl │ │ │ │ │ ├── abstractions.jl │ │ │ │ │ ├── boilerplate.jl │ │ │ │ │ ├── callbacks.jl │ │ │ │ │ ├── domains.jl │ │ │ │ │ └── grids.jl │ │ │ │ ├── sphere/ │ │ │ │ │ ├── sphere_helper_functions.jl │ │ │ │ │ ├── test_heat_equation.jl │ │ │ │ │ ├── test_hydrostatic_balance.jl │ │ │ │ │ └── test_sphere.jl │ │ │ │ ├── three_dimensional/ │ │ │ │ │ ├── ThreeDimensionalCompressibleNavierStokesEquations.jl │ │ │ │ │ ├── bc_momentum.jl │ │ │ │ │ ├── bc_temperature.jl │ │ │ │ │ ├── config_sphere.jl │ │ │ │ │ ├── refvals_bickley_jet.jl │ │ │ │ │ ├── refvals_buoyancy.jl │ │ │ │ │ ├── run_bickley_jet.jl │ │ │ │ │ ├── run_box.jl │ │ │ │ │ ├── run_taylor_green_vortex.jl │ │ │ │ │ ├── test_bickley_jet.jl │ │ │ │ │ └── test_buoyancy.jl │ │ │ │ └── two_dimensional/ │ │ │ │ ├── TwoDimensionalCompressibleNavierStokesEquations.jl │ │ │ │ ├── bc_momentum.jl │ │ │ │ ├── bc_tracer.jl │ │ │ │ ├── refvals_bickley_jet.jl │ │ │ │ ├── run_bickley_jet.jl │ │ │ │ └── test_bickley_jet.jl │ │ │ ├── conservation/ │ │ │ │ └── sphere.jl │ │ │ ├── courant.jl │ │ │ ├── custom_filter.jl │ │ │ ├── fv_reconstruction_test.jl │ │ │ ├── grad_test.jl │ │ │ ├── grad_test_sphere.jl │ │ │ ├── horizontal_integral_test.jl │ │ │ ├── integral_test.jl │ │ │ ├── integral_test_sphere.jl │ │ │ ├── remainder_model.jl │ │ │ └── vars_test.jl │ │ ├── ESDGMethods/ │ │ │ ├── DryAtmos/ │ │ │ │ ├── DryAtmos.jl │ │ │ │ ├── baroclinic_wave.jl │ │ │ │ ├── linear.jl │ │ │ │ ├── run_tests.jl │ │ │ │ └── run_tests_mpo.jl │ │ │ └── diagnostics.jl │ │ ├── Mesh/ │ │ │ ├── BrickMesh.jl │ │ │ ├── DSS.jl │ │ │ ├── DSS_mpi.jl │ │ │ ├── Elements.jl │ │ │ ├── Geometry.jl │ │ │ ├── Grids.jl │ │ │ ├── Metrics.jl │ │ │ ├── filter.jl │ │ │ ├── filter_TMAR.jl │ │ │ ├── grid_integral.jl │ │ │ ├── interpolation.jl │ │ │ ├── min_node_distance.jl │ │ │ ├── mpi_centroid.jl │ │ │ ├── mpi_connect.jl │ │ │ ├── mpi_connect_1d.jl │ │ │ ├── mpi_connect_ell.jl │ │ │ ├── mpi_connect_sphere.jl │ │ │ ├── mpi_connect_stacked.jl │ │ │ ├── mpi_connect_stacked_3d.jl │ │ │ ├── mpi_connectfull.jl │ │ │ ├── mpi_getpartition.jl │ │ │ ├── mpi_partition.jl │ │ │ ├── mpi_sortcolumns.jl │ │ │ └── topology.jl │ │ ├── ODESolvers/ │ │ │ ├── callbacks.jl │ │ │ ├── ode_tests_basic.jl │ │ │ ├── ode_tests_common.jl │ │ │ ├── ode_tests_convergence.jl │ │ │ └── runtests.jl │ │ ├── SystemSolvers/ │ │ │ ├── bandedsystem.jl │ │ │ ├── bgmres.jl │ │ │ ├── cg.jl │ │ │ ├── columnwiselu.jl │ │ │ ├── iterativesolvers.jl │ │ │ ├── poisson.jl │ │ │ └── runtests.jl │ │ └── runtests.jl │ ├── Ocean/ │ │ ├── HydrostaticBoussinesq/ │ │ │ ├── test_3D_spindown.jl │ │ │ ├── test_initial_value_problem.jl │ │ │ ├── test_ocean_gyre_long.jl │ │ │ ├── test_ocean_gyre_short.jl │ │ │ ├── test_windstress_long.jl │ │ │ └── test_windstress_short.jl │ │ ├── HydrostaticBoussinesqModel/ │ │ │ └── test_hydrostatic_boussinesq_model.jl │ │ ├── OceanProblems/ │ │ │ └── test_initial_value_problem.jl │ │ ├── ShallowWater/ │ │ │ ├── GyreDriver.jl │ │ │ └── test_2D_spindown.jl │ │ ├── SplitExplicit/ │ │ │ ├── hydrostatic_spindown.jl │ │ │ ├── simple_box_2dt.jl │ │ │ ├── simple_box_ivd.jl │ │ │ ├── simple_box_rk3.jl │ │ │ ├── simple_dbl_gyre.jl │ │ │ ├── split_explicit.jl │ │ │ ├── test_coriolis.jl │ │ │ ├── test_restart.jl │ │ │ ├── test_simple_box.jl │ │ │ ├── test_spindown_long.jl │ │ │ ├── test_spindown_short.jl │ │ │ └── test_vertical_integral_model.jl │ │ ├── refvals/ │ │ │ ├── 2D_hydrostatic_spindown_refvals.jl │ │ │ ├── 3D_hydrostatic_spindown_refvals.jl │ │ │ ├── hydrostatic_spindown_refvals.jl │ │ │ ├── simple_box_2dt_refvals.jl │ │ │ ├── simple_box_ivd_refvals.jl │ │ │ ├── simple_box_rk3_refvals.jl │ │ │ ├── simple_dbl_gyre_refvals.jl │ │ │ ├── test_ocean_gyre_refvals.jl │ │ │ ├── test_vertical_integral_model_refvals.jl │ │ │ └── test_windstress_refvals.jl │ │ └── runtests.jl │ ├── Utilities/ │ │ ├── SingleStackUtils/ │ │ │ ├── runtests.jl │ │ │ └── ssu_tests.jl │ │ ├── TicToc/ │ │ │ └── runtests.jl │ │ ├── VariableTemplates/ │ │ │ ├── complex_models.jl │ │ │ ├── runtests.jl │ │ │ ├── runtests_gpu.jl │ │ │ ├── test_base_functionality.jl │ │ │ ├── test_complex_models.jl │ │ │ ├── test_complex_models_gpu.jl │ │ │ └── varsindex.jl │ │ └── runtests.jl │ ├── runtests.jl │ ├── runtests_gpu.jl │ └── testhelpers.jl └── tutorials/ ├── Atmos/ │ ├── agnesi_hs_lin.jl │ ├── agnesi_nh_lin.jl │ ├── burgers_single_stack.jl │ ├── burgers_single_stack_bjfnk.jl │ ├── burgers_single_stack_fvm.jl │ ├── densitycurrent.jl │ ├── dry_rayleigh_benard.jl │ ├── heldsuarez.jl │ └── risingbubble.jl ├── BalanceLaws/ │ └── tendency_specification_layer.jl ├── Diagnostics/ │ └── Debug/ │ └── StateCheck.jl ├── Land/ │ ├── Heat/ │ │ └── heat_equation.jl │ └── Soil/ │ ├── Artifacts.toml │ ├── Coupled/ │ │ └── equilibrium_test.jl │ ├── Heat/ │ │ └── bonan_heat_tutorial.jl │ ├── PhaseChange/ │ │ ├── freezing_front.jl │ │ └── phase_change_analytic_test.jl │ ├── Water/ │ │ ├── equilibrium_test.jl │ │ └── hydraulic_functions.jl │ └── interpolation_helper.jl ├── Numerics/ │ ├── DGMethods/ │ │ ├── Box1D.jl │ │ └── showcase_filters.jl │ ├── SystemSolvers/ │ │ ├── bgmres.jl │ │ └── cg.jl │ └── TimeStepping/ │ ├── explicit_lsrk.jl │ ├── imex_ark.jl │ ├── mis.jl │ ├── multirate_rk.jl │ ├── ts_intro.jl │ ├── tutorial_acousticwave_config.jl │ └── tutorial_risingbubble_config.jl ├── Ocean/ │ ├── geostrophic_adjustment.jl │ ├── internal_wave.jl │ └── shear_instability.jl ├── TutorialList.jl └── literate_markdown.jl