Comments (3)
Here are some thoughts for the grid and fields tutorial:
Grids tutorial
- Basic information: domains, resolution, architectures, number types
- First example: equally-spaced
RectilinearGrid
.- meaning of the keyword arguments and different options
- emphasize explaining topology
- emphasize explaining architecture: CPU, GPU, distributed
- Second example: single column grid with vertical stretching via vector
- Third example: two-dimensional grid (short)
- Fourth example: channel grid with function-specified y and z
- Explain how to use functions to build a grid
- Intro to some helper functions:
yspacing
,ynodes
, etc.
- Fifth example: LatitudeLongitudeGrid with equal spacing
- Explain different keyword args
- Explain that only longitude can be periodic
- Sixth example: LatitudeLongitudeGrid with stretched latitude
Q: should we show tripolar grid / other examples with OrthogonalSphericalShellGrid
? (At the very least we should reference this.)
Fields tutorial
- Explain the purpose of
Field
: data structure, plus infrastructure for building expression trees Field
basics- The staggered grid,
Field
locations - Field size + data, staggered nodes, staggered spacings
- The staggered grid,
- AbstractOperations and expression trees
- The concept of a lazy operator
- Arithmetic and derivatives
- Difference between a Field and Operation
- KernelFunctionOperation
- what else?
- Averaging, intergrals, and reduced fields
What else?
from oceananigans.jl.
purpose of
Field
: data structure, plus infrastructure for building expression trees
Field
basics
- The staggered grid,
Field
locations- Field size + data, staggered nodes, staggered spacings
AbstractOperations and expression trees
- The concept of a lazy operator
- Arithmetic and derivatives
- Difference between a Field and Operation
- KernelFunctionOperation
- what else?
Averaging, intergrals, and reduced fields
What else?
Visualization always helps, so I recommend adding plots of various grid types (periodic, non-periodic, stretched, etc.) directly below the corresponding code snippets that generate them. Additionally, it would be nice to illustrate how to access the different components of Field
s and the output of abstract operations with code snippets.
from oceananigans.jl.
I vote yes to including tripolar.
from oceananigans.jl.
Related Issues (20)
- `Mem.free` is deprecated HOT 1
- Add in documentation for user defined vertical diffusivity profile in the hydrostatic model HOT 3
- Error in AveragedTimeInterval Output HOT 32
- Egregious errors in `NonhydrostaticModel` simulations on `ImmersedBoundaryGrid` when nonhydrostatic pressure is not separated HOT 21
- `cell_advection_timescale` (and CFL) does not account for `Flat` topologies HOT 1
- Support passing keyword arguments to `jldopen` when using `FieldTimeSeries` HOT 1
- `PartialCellBottom` needs to be adapted correctly for the GPU when using a `HydrostaticFreeSurfaceModel` HOT 4
- Performance benchmarks section of the README is super out of date HOT 3
- `view` fails on a `Field` indexed from `FieldTimeSeries`
- Ocenanigans license HOT 5
- Reducing parameter space usage by `LatitudeLongitudeGrid` HOT 3
- Why do we need 4 halo points in the vertical for `VectorInvariant(vertical_scheme=Centered())`? HOT 2
- `xspacings` is broken for `ImmersedBoundaryGrid`
- Change free surface displacement name from `η` to `displacement` for `HydrostaticFreeSurfaceModel`
- Docstring for `WENOVectorInvariant` is too terse and does not have examples
- Bottom drag on immersed boundaries may differ if implemented with `Forcing` vs `ImmersedBoundaryCondition`
- Convert code blocks documenting `ImmersedBoundaryCondition` to doctests HOT 10
- Re-licensing Oceananigans under Apache 2.0
- Do `intrinsic_vector` and `extrinsic_vector` belong in `Operators`?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from oceananigans.jl.