Giter Club home page Giter Club logo

asc-idealised's Introduction

🏄🏽 🌊 🐎 💃🏼 📸

navidcy's github stats  

asc-idealised's People

Contributors

navidcy avatar taimoorsohail avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

asc-idealised's Issues

Implement northern sponge

In order to have Temp changes, we need a Northern sponge with damping of T, S, u, v, and w. From T+S'14:

"We restore a 50 km wide layer to a potential temperature and salinity profile that is representative of the Weddell Sea, with a timescale of 56 days. The selected profile is based on observations from Thompson and Heywood [2008], but smoothed to remove small-scale noise and interpolated to remove the surface AASW layer and the deep layer of AABW. The restoring timescale varies linearly from to 56 days. We similarly restore the velocity to zero in this region using a shorter restoring timescale of 28 days."

I am thinking 100km though, but everything else will be the same. Pending T and S profiles from Pena-Molino et al., 2016.

Add irregular z-grid

Need to add a z grid which varies in the vertical from 13m to 100m dz over 53 levels (following TS14).

Sponge layer too close to slope

The sponge layer (denoted by the dashed section) represents a high proportion of the total domain width. This is likely interfering with the dynamics of the system significantly. I propose modifying the lengths such that Lx = 1000 km, Ly = 600 km, and the sponge is only 50 km.

Zonally_avg_plots_t_final

Is `stretched_grid` correct?

I don't understand exactly how this works:

stretched_grid(k) = -(Lz*(tanh(decay*(k-Nz-0.5))))+(Lz*tanh(decay*(-Nz+1-0.5)));

I think it should be so that stretched_grid(1) = -Lz and stretched_grid(Nz+1) = 0.

Temp response to Qsalt

There is a strong cooling coincident with the salt flux imposed. Is this due to the EOS? Fluxes will obviously be different with a more realistic salinity profile imposed so this problem may be easily resolved with the other issue.

top_view_t_final

Modify diffusivity and viscosity, and EOS

From Thompson + Stewart, 2014:

We apply a horizontal Laplacian viscosity of 12 m2s−1 and a vertical Laplacian viscosity of 3×10−4m2s−1. We also employ a horizontal biharmonic viscosity with Courant-Friedrichs-Lewy number 0.1, and biharmonic Leith and modified-Leith viscosities [Fox-Kemper and Menemenlis, 2008] with coefficients both equal to 1. The only explicit mixing of potential temperature and salinity is via a vertical diffusivity of 5×10−6m2s−1. This mixing is supplemented by the K Profile Parametrization (KPP) [Large et al., 1994], which enforces a surface mixed layer of at least 50 m depth. The ocean’s equation of state is computed using the numerically efficient algorithm of McDougall et al.[2003] (25 term EOS).

We should ry to match these parameters as closely as possible

Add bottom drag with immersed boundary?

hey @glwagner, we want to make a configuration with @txs156 similar to Stewart and Thompson, GRL 2014. We have a shelf... How do we add bottom drag when we have immersed boundary?

These were from the flat-bottom channel...

ASC-idealised/asc.jl

Lines 89 to 98 in d1b1922

@inline u_drag(i, j, grid, clock, model_fields, p) = @inbounds - p.μ * p.Lz * model_fields.u[i, j, 1]
@inline v_drag(i, j, grid, clock, model_fields, p) = @inbounds - p.μ * p.Lz * model_fields.v[i, j, 1]
u_drag_bc = FluxBoundaryCondition(u_drag, discrete_form=true, parameters=parameters)
v_drag_bc = FluxBoundaryCondition(v_drag, discrete_form=true, parameters=parameters)
b_bcs = FieldBoundaryConditions(top = buoyancy_flux_bc)
u_bcs = FieldBoundaryConditions(top = u_stress_bc, bottom = u_drag_bc)
v_bcs = FieldBoundaryConditions(bottom = v_drag_bc)

Time evolution of key variables

Below is the horizontally-averaged time evolution of the stored tracers and velocities:

hor_avg_Hovmoller

And the globally-averaged (z-grid is unweighted in this avg) tracers + velocities:

global_avg

A few points:

  1. The system is spinning up to unrealistic velocities. I believe this is due to the imposed salinity profile, which is negative. I think this is why when you switch on EOS things blow up because negative salinity doesn't exist. We should prioritise the realistic TS profiles before re-running.

S_initial_profile

  1. The system has clearly reached some velocity threshold where it is about to either blow up or go into an inverse cascade, moving towards large dissipative structures.

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.