Giter Site home page Giter Site logo

eadyturbulence's Introduction

EadyTurbulence

This repository contains scripts for simulating the baroclinic equilibration of the "Eady problem".

  • To download the code in this repository, open a terminal and type
$ git clone https://github.com/glwagner/EadyTurbulence.git

Notes on running the Oceananigans scripts

  • Julia v1.4 is required to run the Oceananigans scripts.

  • To install the julia packages that are needed to run the Oceananigans scripts:

    • Open a terminal and navigate to the Oceananigans directory:
    cd EadyTurbulence/Oceananigans
    • Open julia:
    julia --project
    • Instantiate packages listed in Project.toml:
    using Pkg
    Pkg.instantiate()

eadyturbulence's People

Contributors

glwagner avatar navidcy avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

eadyturbulence's Issues

Diagnosing Eady growth rates using the power method

Oceananigans' Kelvin-Helmholz example:

https://clima.github.io/OceananigansDocumentation/stable/generated/kelvin_helmholtz_instability/

demonstrates how to use the power method to diagnose eigenvalues (growth rates) and eigenmodes of a linear instability problem in Oceananigans. We should do the same for an Eady instability problem.

Might make sense to modify equilibrated/run_small_eady_problem.jl for this purpose and start a new directory power_method or something.

PyCall needed

following the README instructions I got

julia> include("simple_eady.jl")
κ₄h = Δh ^ 4 / τᵏ = 6.898685737892434e12
κᵥ = Δz ^ 2 / (100τᵏ) = 0.01808449074074074= ((Rᵈ * f) / Lz) ^ 2 = 9.765625000000002e-6
α = sqrt(N²) / (f * σᵇ) = 0.0003616898148148148
┌ Warning: PyPlot is using tkagg backend, which is known to cause crashes on MacOS (#410); use the MPLBACKEND environment variable to request a different backend.
└ @ PyPlot ~/.julia/packages/PyPlot/4wzW1/src/init.jl:192
ERROR: LoadError: ArgumentError: Package PyCall not found in current path:
- Run `import Pkg; Pkg.add("PyCall")` to install the PyCall package.

Stacktrace:
 [1] require(::Module, ::Symbol) at ./loading.jl:876
 [2] include at ./boot.jl:328 [inlined]
 [3] include_relative(::Module, ::String) at ./loading.jl:1094
 [4] include(::Module, ::String) at ./Base.jl:31
 [5] include(::String) at ./client.jl:431
 [6] top-level scope at REPL[1]:1
in expression starting at /Users/navid/Research/EadyTurbulence/simple_eady.jl:128

Grid-noise appears in simple_eady example

If you run simple_eady.jl up some grid-scale noise appears at around 6hrs and then disappears...

This can be seen, e.g., by changing

end_time = 60day # Simulation end time

to

end_time = 6hour # Simulation end time

Is this physical? I doubt...
But how come the model continues and resolves itself from this situation...?

Error in run_small_eady_problem.jl

julia> include("run_small_eady_problem.jl")
ERROR: LoadError: UndefKeywordError: keyword argument schedule not assigned
Stacktrace:
[1] top-level scope at /Users/navid/Research/EadyTurbulence/Oceananigans/run_small_eady_problem.jl:234
[2] include(::String) at ./client.jl:457
[3] top-level scope at REPL[4]:1
in expression starting at /Users/navid/Research/EadyTurbulence/Oceananigans/run_small_eady_problem.jl:234

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.