Coder Social home page Coder Social logo

Comments (2)

nwever avatar nwever commented on July 29, 2024

It needs to include surfaceFlux.mass[MS_EVAPORATION] as well. There is not (yet) a snowdrift sublimation term. There is a snow drift term, though (Sdata.mass[SurfaceFluxes::MS_WIND]/cos_sl). Maybe it's also good to use Sdata.mass[SurfaceFluxes::MS_HNW] (for snow) and Sdata.mass[SurfaceFluxes::MS_RAIN] (for rain), instead of PSUM.

from snowpack.

EricKeenan avatar EricKeenan commented on July 29, 2024

Thanks for helping me get on track. A few things to still figure out:

  1. Still need to determine which variables to divide by cos(slope)
  2. Difference between Sdata.mass and surfaceFlux.mass?
  3. Synchronize rates and mass contributions in order to have a consistent SMB variable.
  4. Is the timestep used in accumulated variables (e.g. MS_EVAPORATION) from SNOWPACK or Alpine-3D?
  5. Confirm flux and rate directions (components signs) are correct.
/*
Calculates Surface Mass Balance (SMB) as a function of snowfall, rain, wind erosion, surface sublimation, 
evaporation, and meltwater runoff. Note that SNOWPACK does not yet account for drifting snow sublimation.

Components: 
	Snow rate: MS_HNW (kg/m2/hr)
	Rain rate: MS_RAIN (kg/m2/hr)
	Wind erosion rate: MS_WIND (kg/m2/hr)
	Sublimation: MS_SUBLIMATION (kg/m2, presumably over the timestep)
	Evaporation: MS_EVAPORATION (kg/m2, presumably over the timestep)
	Meltwater runoff: MS_SNOWPACK_RUNOFF (kg/m2, presumably over the timestep)
*/

case SnGrids::SMB:
   value = Sdata.mass[SurfaceFluxes::MS_HNW]
   + Sdata.mass[SurfaceFluxes::MS_RAIN]
   + Sdata.mass[SurfaceFluxes::MS_WIND]
   + (surfaceFlux.mass[SurfaceFluxes::MS_SUBLIMATION] / snowPixel.cos_sl)
   + (surfaceFlux.mass[SurfaceFluxes::MS_EVAPORATION] / snowPixel.cos_sl)
   - (surfaceFlux.mass[SurfaceFluxes::MS_SNOWPACK_RUNOFF] / snowPixel.cos_sl); break;

from snowpack.

Related Issues (20)

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.