Giter Site home page Giter Site logo

solararbiter / solararbiter.github.io Goto Github PK

View Code? Open in Web Editor NEW
9.0 9.0 8.0 86.84 MB

Contains the Solar Forecast Arbiter static website

Home Page: https://solarforecastarbiter.org/

License: MIT License

HTML 15.72% Ruby 0.49% CSS 1.99% Python 1.30% Jupyter Notebook 80.50%

solararbiter.github.io's People

Contributors

alorenzo175 avatar cwhanse avatar dependabot[bot] avatar dplarson avatar lboeman avatar mrwindandsolar avatar wholmgren avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

solararbiter.github.io's Issues

fill in metrics with basic info

probably start with a list of metrics and some references. can take from PMP and stakeholder materials. Order by deterministic, probabilistic, and cost.

let's not do too much until we've thought through it more carefully.

brier score, quantile score descriptions

I was testing Quantile Skill Score in the reports and came across some results that initially confused me. Table below shows metrics for 4 pairs of forecasts

Forecast BS QS BSS QSS
Table Mountain Boulder CO Day Ahead GEFS ghi Prob(f <= x) = 0.0% 0.46 46.3 -0.113 0.653
Table Mountain Boulder CO Day Ahead GEFS ghi Prob(f <= x) = 40.0% 0.282 39.6 -0.161 0.688
Table Mountain Boulder CO Day Ahead GEFS ghi Prob(f <= x) = 50.0% 0.25 44.7 0.00e+00 0.643
Table Mountain Boulder CO Day Ahead GEFS ghi Prob(f <= x) = 100.0% 0.264 93.4 0.55 0.201
Table Mountain Boulder CO Hour Ahead Prob Persistence ghi Prob(f <= x) = 0.0% 0.415 129 nan nan
Table Mountain Boulder CO Hour Ahead Prob Persistence ghi Prob(f <= x) = 40.0% 0.243 122 nan nan
Table Mountain Boulder CO Hour Ahead Prob Persistence ghi Prob(f <= x) = 50.0% 0.25 121 nan nan
Table Mountain Boulder CO Hour Ahead Prob Persistence ghi Prob(f <= x) = 100.0% 0.585 112 nan nan

I came away from this wanting a few things in the brier score documentation

  1. a statement about how the Arbiter computes o for non-event forecasts (is f <= x?).
  2. some discussion about brier score vs. quantile score for quantile forecasts (like all of our reference forecasts as of today).

consider adding support for disqus comments

Only an idea.

Pros:

  • centralizes information exchange on the website
  • we don't have to manage forms or feedback through email (possibly in premade documents)

Cons:

  • unstructured
  • we don't control public data
  • anonymous responses are not possible

Trials documentation improvements

Distilled from my notes and @dplarson's notes on the second test trial.

  • Further clarify the provided python script is meant as a simple example to help users get started and is not recommended for a real trial.
  • Add warning that a password reset link is single use and cannot be reissued without breaking anonymity.
  • Email with forecast links are nice. A simple copy/pasteable list of uuids would also be nice.
  • Send email notifications when a trial is about to begin and when it has ended.
  • Include an example of a probabilistic forecast in the documentation.
  • Clarify wording around the forecast submission window.

improve user supplied benchmarks

Discuss:

  • Multiple user-supplied benchmarks
  • Metadata for running benchmarks (WRF namelists, maybe scripts, other information for reasonable level of reproducibility)
  • Reiterate that The framework-generated benchmarks will be GFS/NAM/HRRR forecasts with straight-forward post-processing. We anticipate that the framework-generated benchmarks will complement the benchmarks supplied by the TA2 teams.
  • WRF 4.0 vs. WRF Solar 1.2 vs. WRF Solar 4.0
  • Model configuration may depend on requirements for ramps and variability, so we should set targets sooner than later
  • and maybe other things from communication with Larry

clearly document 'create' restrictions

mainly that when creating an object, the organization is set to the creating user's organization. Thus sharing of create permissions to user's outside of the role/permission org is pointless.

Add PICP and PINAW metrics

Somehow two probabilistic forecast metrics were mistakenly not added to the metrics page during previous PRs:

  • prediction interval coverage probability (PICP)
  • prediction interval normalized average width (PINAW)

These two should be added to the metrics page, with a separate issue/PR open on the core code repo for implementing the functions themselves.

document quality flag and data validation results

The only documentation we currently have for quality flags and the data validation toolkit is the core api. We need dashboard documentation that

  1. explains the graphs on the dashboard's observation pages
  2. explains how the data is validated when uploaded and on a recurring basis
  3. explains the quality flags in the downloads

add link to implementation for each metric

site coordinate precision comic

Maybe include this xkcd in the documentation for how to specify site location, especially in an section that describes how to specify an anonymous plant location.

coordinate_precision_2x

blog post on satellite data

We received a handful of questions about if we'd use satellite data to validate forecasts. We should record the response in a blog post.

Update climate zone map

Update the climate zone map with more refined outlines of the climate zones, preferably in the form of a GIS-type file (e.g. a shapefile) that can be re-used in the future.

  • refine the climate zones
    • save in a re-usable GIS-type format (e.g. a shapefile)
  • update the climate zone plot
    • replace the current figure file with the revised one (PNG or JPG format)

improve documentation of reports

The report documentation should include

  • Considerations around specifying probabilistic reports
  • What to expect in a deterministic report, an event report, and a probabilistic report
  • The list under "following these steps" should bold the action sections.
  • Clarify the process around sites vs aggregates

I also want to consider moving the report subsection from the "working with data" section into its own top level section. Maybe add some examples.

(I couldn't remember the status of the event reports, so I tried to look it up in the documentation.)

improve data sharing documentation

https://solarforecastarbiter.org/documentation/dashboard/administration/ is a fine reference. Especially for data sharing, we need more documentation that builds understanding and provides concrete examples.

I've thought highly of the approach described by https://documentation.divio.com/ since I saw their PyCon talk a few years ago, but I haven't actually tried to implement it. So here are some ideas for new documentation in that framework that are specific to data sharing:

How-to:

  • How to allow users within your organization to upload data
  • How to share a site and an observation
  • How to share a forecast
  • How to share a report (metrics-only)
  • How to share a report (including time series)

Tutorials:

  • How to share a report, including time series, but in more detail?

Explanation:

  • Why is our permissions system structured the way it is
  • How does the system work (api/sql land)
  • Strategies for how forecast users and vendors can set up permissions and roles. For example, vendors might choose to set up roles for each client rather than for each site. Users might choose to use "applies to all".

If we like the approach we can blow up and reassemble the entire documentation, but that's more work than I want to commit to right now.

update data model with correct columns

to mirror api/database. For example, sites no longer have network or well known text but do have extra parameters. Should also update the number of new aggregate parameters.

improve event metric description

A stakeholder was confused about our event metrics and thought that they were only applicable to solar power ramps. We could improve the writing a little and add a second example such as clear/cloudy.

update home page

Should explain what this page is (static information about the project, help pages) and link to the dashboard. Remove references to early development and June 2019.

Brier Score decomposition: typo

On the metrics page, the Brier Score decomposition is (incorrectly) listed asBS = REL + RES + UNC, when it should actually be BS = REL - RES + UNC (i.e. subtract RES, not add RES).

This was a typo from when I wrote up the Word report on metrics in Markdown.

Add notes on cost metrics

Add content on cost metrics (i.e. the financial costs of mis-forecasting) to the website, based on the document shared by Aidan. Probably add the content to the end of the Metrics page (unless a more obvious place is identified). The content should provide general guidance and mirror the notation used in other parts of the website (e.g. the error metric definitions).

add license

MIT?

Copyright Solar Forecast Arbiter Team?

Replace metrics document with HTML

Currently, the metrics page links to a document that summarizes the metrics. Instead, it would be better to list out the metrics on the metrics page itself (e.g. as a bullet point list).

The main question with this approach is how to represent mathematical symbols (e.g. the square root in the RMSE definition). There are libraries for rendering LaTeX in an HTML page (e.g. MathJax), which may be better than trying to use an ASCII-representation (e.g. RMSE = sqrt( 1/n * sum( (F_i - O_i)^2 ) )).

Document exatly what each permission does

Not sure if this belongs here, but we should document what permissions allow. For example, having the write_values permission allows one to write values to specified id but also allows one to read the interval_length of the parent object and to get the last value uploaded before a certain time.

add reference data map

We should add a link or even embed the @lboeman's nice reference data map. It's not clear to me where it should go. We might need a new Reference Data section. Thoughts?

comment form

Add a comment form to allow people to submit comments anonymously.

This will require something like google's recaptcha system.

allow users to sign up for a mailing list

Implementation depends on what kind of system we use for a mailing list. Might only need a link to another page. That's a separate discussion.

And no signup feature unless they can also unsubscribe.

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.