Skip to content
This repository has been archived by the owner on Nov 9, 2023. It is now read-only.

Hackathon Usability

Martin Lilleeng Sætra edited this page Dec 10, 2020 · 1 revision

The aim of this hackaton is to clean up the code, and make it possible to load and simulate with netcdf files. The end result should be a new small ipython notebook that runs that simulation.

Important tasks (with lead)

The work consists of essentially two tasks:

  1. Remove unwanted code
  2. Make the code run with realistic data from netcdf-files

Remove unwanted code / code cleanup

  • Delete unused / broken jupyter notebooks. (Lead Håvard)
    • Move notes etc. into a subdirectory called "prototyping" so that only documented and easily understandable notebooks are in the root level
  • Delete C++-code (Lead Martin)
    • Delete all of the C++-code. We will not use it. If we need it, it will still be in the history / tag related to the paper.
  • Remove wind stress (Lead André)
    • The wind stress implementation is a mess - lets stick with NetCDF / numpy arrays as input, and use linear interpolation in space and time.
  • Backport experiences from SWSimulators here. (Lead André)
    • Ie., cudacontext, ipythonmagic, etc.
  • Address the CI-issue (Lead Martin, probably no time)

Enable realistic data

  • Implement wind stress from NetCDF (lead Martin)
    • This requires implementing interpolation, etc.
  • Implement / check bathymetry (Lead Håvard)
  • Boundary conditions for land mask (probably no time)

Schedule and aim

Day 1:

  • 9:00 - 12:00: Code cleanup (all)
  • 12:00 - 13:00: Lunch (all)
  • 13:00 - 16:00: Enable realistic data (all)

Day 2:

  • 9:00 - 12:00: Enable realistic data (all)
  • 12:00 - 13:00: Lunch (all)
  • 13:00 - 16:00: Enable realistic data (all)

Notes and ideas

  • Delete unused / broken jupyter notebooks. These have no value anymore. I (André) suggest that notebooks which are in progress and used during prototyping are placed in a separate folder called "prototyping". That makes it easier to maintain the most important notebooks.
  • Separate codebase into C++/CL-code (archive) and the Python/CUDA (continued development). Python/CUDA will continue to live in the 'gpu_ocean' repository.
  • Add jupyter notebook with a set of few (small) examples of how to set up the simulator + write at least some documentation
  • Add possibility to use real-world data (i.e. bathymetry, land mask, wind forcing etc.) from netcdf files.
  • Read drifter observations from file (use Ann Kristin's code).
  • Fix (Travis) CI, or at least make a plan.
  • Testing CUDA, how to make it happen. (Local CI slave/instance?)
  • Kjøre med ekte data fra NETCDF (batymetri)
  • Kjøre med wind frocing fra Netcdf
  • This list is probably too long, so we should start the hackathon with prioritizing and culling tasks.
  • test/integration with opendrift