diff --git a/catalog/forecasts/Aquatics/Daily Chlorophyll-a/collection.json b/catalog/forecasts/Aquatics/Daily Chlorophyll-a/collection.json index c686a23547..90daa2d28b 100644 --- a/catalog/forecasts/Aquatics/Daily Chlorophyll-a/collection.json +++ b/catalog/forecasts/Aquatics/Daily Chlorophyll-a/collection.json @@ -172,7 +172,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Aquatics/Daily Dissolved oxygen/collection.json b/catalog/forecasts/Aquatics/Daily Dissolved oxygen/collection.json index 9063175f7d..704dccaf68 100644 --- a/catalog/forecasts/Aquatics/Daily Dissolved oxygen/collection.json +++ b/catalog/forecasts/Aquatics/Daily Dissolved oxygen/collection.json @@ -152,7 +152,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } @@ -168,7 +168,7 @@ "interval": [ [ "2023-03-01T00:00:00Z", - "2024-10-02T00:00:00Z" + "2024-10-03T00:00:00Z" ] ] } diff --git a/catalog/forecasts/Aquatics/Daily Water temperature/collection.json b/catalog/forecasts/Aquatics/Daily Water temperature/collection.json index efe7e2bc99..2b0e3a8b0a 100644 --- a/catalog/forecasts/Aquatics/Daily Water temperature/collection.json +++ b/catalog/forecasts/Aquatics/Daily Water temperature/collection.json @@ -222,7 +222,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } @@ -238,7 +238,7 @@ "interval": [ [ "2023-01-10T00:00:00Z", - "2024-10-02T00:00:00Z" + "2024-10-03T00:00:00Z" ] ] } diff --git a/catalog/forecasts/Aquatics/collection.json b/catalog/forecasts/Aquatics/collection.json index e4294ce5db..561170e33a 100644 --- a/catalog/forecasts/Aquatics/collection.json +++ b/catalog/forecasts/Aquatics/collection.json @@ -52,7 +52,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Beetles/Weekly beetle community abundance/collection.json b/catalog/forecasts/Beetles/Weekly beetle community abundance/collection.json index d13fce8305..c083686763 100644 --- a/catalog/forecasts/Beetles/Weekly beetle community abundance/collection.json +++ b/catalog/forecasts/Beetles/Weekly beetle community abundance/collection.json @@ -102,7 +102,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Beetles/Weekly beetle community richness/collection.json b/catalog/forecasts/Beetles/Weekly beetle community richness/collection.json index 55c9e0d0c4..2e68e5443e 100644 --- a/catalog/forecasts/Beetles/Weekly beetle community richness/collection.json +++ b/catalog/forecasts/Beetles/Weekly beetle community richness/collection.json @@ -102,7 +102,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Beetles/collection.json b/catalog/forecasts/Beetles/collection.json index c5a81892e8..8dcc7556ec 100644 --- a/catalog/forecasts/Beetles/collection.json +++ b/catalog/forecasts/Beetles/collection.json @@ -47,7 +47,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Phenology/Daily Green chromatic coordinate/collection.json b/catalog/forecasts/Phenology/Daily Green chromatic coordinate/collection.json index e8c1b46fb6..63f8d52c85 100644 --- a/catalog/forecasts/Phenology/Daily Green chromatic coordinate/collection.json +++ b/catalog/forecasts/Phenology/Daily Green chromatic coordinate/collection.json @@ -127,7 +127,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Phenology/Daily Red chromatic coordinate/collection.json b/catalog/forecasts/Phenology/Daily Red chromatic coordinate/collection.json index f664971c99..189b5b666f 100644 --- a/catalog/forecasts/Phenology/Daily Red chromatic coordinate/collection.json +++ b/catalog/forecasts/Phenology/Daily Red chromatic coordinate/collection.json @@ -142,7 +142,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Phenology/collection.json b/catalog/forecasts/Phenology/collection.json index 1ec20275b2..564574078d 100644 --- a/catalog/forecasts/Phenology/collection.json +++ b/catalog/forecasts/Phenology/collection.json @@ -47,7 +47,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Terrestrial/30min latent heat flux/collection.json b/catalog/forecasts/Terrestrial/30min latent heat flux/collection.json index 06f75fe447..daccd7d210 100644 --- a/catalog/forecasts/Terrestrial/30min latent heat flux/collection.json +++ b/catalog/forecasts/Terrestrial/30min latent heat flux/collection.json @@ -42,7 +42,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Terrestrial/Daily Net ecosystem exchange/collection.json b/catalog/forecasts/Terrestrial/Daily Net ecosystem exchange/collection.json index 8f873e15da..5ed96f36f1 100644 --- a/catalog/forecasts/Terrestrial/Daily Net ecosystem exchange/collection.json +++ b/catalog/forecasts/Terrestrial/Daily Net ecosystem exchange/collection.json @@ -122,7 +122,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Terrestrial/collection.json b/catalog/forecasts/Terrestrial/collection.json index 6811d949cb..6e5a2b6525 100644 --- a/catalog/forecasts/Terrestrial/collection.json +++ b/catalog/forecasts/Terrestrial/collection.json @@ -57,7 +57,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Ticks/Weekly Amblyomma americanum population/collection.json b/catalog/forecasts/Ticks/Weekly Amblyomma americanum population/collection.json index 2ff4d2e25d..3d73e76161 100644 --- a/catalog/forecasts/Ticks/Weekly Amblyomma americanum population/collection.json +++ b/catalog/forecasts/Ticks/Weekly Amblyomma americanum population/collection.json @@ -102,7 +102,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/Ticks/collection.json b/catalog/forecasts/Ticks/collection.json index e9fc86290c..e6523de3ec 100644 --- a/catalog/forecasts/Ticks/collection.json +++ b/catalog/forecasts/Ticks/collection.json @@ -42,7 +42,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/collection.json b/catalog/forecasts/collection.json index e1b980f121..2cc783bc91 100644 --- a/catalog/forecasts/collection.json +++ b/catalog/forecasts/collection.json @@ -73,7 +73,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/forecast_models.R b/catalog/forecasts/forecast_models.R index 6a2f1983a5..939ef5afb2 100644 --- a/catalog/forecasts/forecast_models.R +++ b/catalog/forecasts/forecast_models.R @@ -62,11 +62,9 @@ stac4cast::build_forecast_scores(table_schema = forecast_theme_df, description_string = build_description, about_string = catalog_config$about_string, about_title = catalog_config$about_title, - # dashboard_string = catalog_config$dashboard_url, - # dashboard_title = catalog_config$dashboard_title, theme_title = "Forecasts", destination_path = catalog_config$forecast_path, - aws_download_path = catalog_config$aws_download_path, + aws_download_path = catalog_config$aws_download_path_forecasts, link_items = stac4cast::generate_group_values(group_values = names(config$variable_groups)), thumbnail_link = catalog_config$forecasts_thumbnail, thumbnail_title = catalog_config$forecasts_thumbnail_title) @@ -89,7 +87,7 @@ stac4cast::build_group_variables(table_schema = forecast_theme_df, theme_title = "Models", #model_documentation = NULL, destination_path = paste0(catalog_config$forecast_path,"models"), - aws_download_path = catalog_config$aws_download_path, + aws_download_path = catalog_config$aws_download_path_forecasts, group_var_items = stac4cast::generate_model_items(model_list = theme_models$model_id), thumbnail_link = 'pending', thumbnail_title = 'pending', @@ -219,7 +217,7 @@ for (i in 1:length(config$variable_groups)){ ## organize variable groups dashboard_title = catalog_config$dashboard_title, theme_title = names(config$variable_groups[i]), destination_path = paste0(catalog_config$forecast_path,names(config$variable_groups[i])), - aws_download_path = catalog_config$aws_download_path, + aws_download_path = catalog_config$aws_download_path_forecasts, group_var_items = stac4cast::generate_group_variable_items(variables = var_name_combined_list), thumbnail_link = config$variable_groups[[i]]$thumbnail_link, thumbnail_title = config$variable_groups[[i]]$thumbnail_title, diff --git a/catalog/forecasts/models/collection.json b/catalog/forecasts/models/collection.json index 6554d08a42..5dde52e35d 100644 --- a/catalog/forecasts/models/collection.json +++ b/catalog/forecasts/models/collection.json @@ -282,7 +282,7 @@ }, { "rel": "describedby", - "href": "https://projects.ecoforecast.org/neon4cast-dashboard/", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } diff --git a/catalog/forecasts/models/model_items/GLEON_JRabaey_temp_physics.json b/catalog/forecasts/models/model_items/GLEON_JRabaey_temp_physics.json index 796d5718c7..cad8448787 100644 --- a/catalog/forecasts/models/model_items/GLEON_JRabaey_temp_physics.json +++ b/catalog/forecasts/models/model_items/GLEON_JRabaey_temp_physics.json @@ -55,7 +55,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-09", + "end_datetime": "2023-12-10", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/GLEON_lm_lag_1day.json b/catalog/forecasts/models/model_items/GLEON_lm_lag_1day.json index 9d8a0a202b..d7c62f9d2c 100644 --- a/catalog/forecasts/models/model_items/GLEON_lm_lag_1day.json +++ b/catalog/forecasts/models/model_items/GLEON_lm_lag_1day.json @@ -28,7 +28,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/GLEON_physics.json b/catalog/forecasts/models/model_items/GLEON_physics.json index 4bed224c44..cce98b2fcb 100644 --- a/catalog/forecasts/models/model_items/GLEON_physics.json +++ b/catalog/forecasts/models/model_items/GLEON_physics.json @@ -28,7 +28,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/USGSHABs1.json b/catalog/forecasts/models/model_items/USGSHABs1.json index b8cab633a2..4fed58096a 100644 --- a/catalog/forecasts/models/model_items/USGSHABs1.json +++ b/catalog/forecasts/models/model_items/USGSHABs1.json @@ -24,7 +24,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/air2waterSat_2.json b/catalog/forecasts/models/model_items/air2waterSat_2.json index 877511b2d0..b218ecbd94 100644 --- a/catalog/forecasts/models/model_items/air2waterSat_2.json +++ b/catalog/forecasts/models/model_items/air2waterSat_2.json @@ -55,7 +55,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/baseline_ensemble.json b/catalog/forecasts/models/model_items/baseline_ensemble.json index 5372eb08b3..e91fbc0d37 100644 --- a/catalog/forecasts/models/model_items/baseline_ensemble.json +++ b/catalog/forecasts/models/model_items/baseline_ensemble.json @@ -99,7 +99,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-06", + "end_datetime": "2023-12-07", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/cb_prophet.json b/catalog/forecasts/models/model_items/cb_prophet.json index 5fdef92d6a..be89fbd4e3 100644 --- a/catalog/forecasts/models/model_items/cb_prophet.json +++ b/catalog/forecasts/models/model_items/cb_prophet.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/fARIMA.json b/catalog/forecasts/models/model_items/fARIMA.json index 43e1cb7417..bc9bb237a6 100644 --- a/catalog/forecasts/models/model_items/fARIMA.json +++ b/catalog/forecasts/models/model_items/fARIMA.json @@ -55,7 +55,7 @@ "properties": { "description": [], "start_datetime": "2023-11-05", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/fARIMA_clim_ensemble.json b/catalog/forecasts/models/model_items/fARIMA_clim_ensemble.json index 8f5a582786..72fc688362 100644 --- a/catalog/forecasts/models/model_items/fARIMA_clim_ensemble.json +++ b/catalog/forecasts/models/model_items/fARIMA_clim_ensemble.json @@ -50,7 +50,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-06", + "end_datetime": "2023-12-07", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/fTSLM_lag.json b/catalog/forecasts/models/model_items/fTSLM_lag.json index 6a15ed50b4..3365acbd57 100644 --- a/catalog/forecasts/models/model_items/fTSLM_lag.json +++ b/catalog/forecasts/models/model_items/fTSLM_lag.json @@ -55,7 +55,7 @@ "properties": { "description": [], "start_datetime": "2023-11-05", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flareGLM.json b/catalog/forecasts/models/model_items/flareGLM.json index 94a3ee7090..7b31e54254 100644 --- a/catalog/forecasts/models/model_items/flareGLM.json +++ b/catalog/forecasts/models/model_items/flareGLM.json @@ -28,7 +28,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-07", + "end_datetime": "2023-12-08", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flareGLM_noDA.json b/catalog/forecasts/models/model_items/flareGLM_noDA.json index 58dbc4d324..ecaf5bf081 100644 --- a/catalog/forecasts/models/model_items/flareGLM_noDA.json +++ b/catalog/forecasts/models/model_items/flareGLM_noDA.json @@ -28,7 +28,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-07", + "end_datetime": "2023-12-08", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flareGOTM.json b/catalog/forecasts/models/model_items/flareGOTM.json index 7e455d05f3..39d3d529ae 100644 --- a/catalog/forecasts/models/model_items/flareGOTM.json +++ b/catalog/forecasts/models/model_items/flareGOTM.json @@ -27,7 +27,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-07", + "end_datetime": "2023-12-08", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flareGOTM_noDA.json b/catalog/forecasts/models/model_items/flareGOTM_noDA.json index 3f97e44a1e..4f0ef9057e 100644 --- a/catalog/forecasts/models/model_items/flareGOTM_noDA.json +++ b/catalog/forecasts/models/model_items/flareGOTM_noDA.json @@ -27,7 +27,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-07", + "end_datetime": "2023-12-08", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flareSimstrat.json b/catalog/forecasts/models/model_items/flareSimstrat.json index 1561a32d0d..283a793d22 100644 --- a/catalog/forecasts/models/model_items/flareSimstrat.json +++ b/catalog/forecasts/models/model_items/flareSimstrat.json @@ -27,7 +27,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-07", + "end_datetime": "2023-12-08", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flareSimstrat_noDA.json b/catalog/forecasts/models/model_items/flareSimstrat_noDA.json index 02199f61af..0765ae9304 100644 --- a/catalog/forecasts/models/model_items/flareSimstrat_noDA.json +++ b/catalog/forecasts/models/model_items/flareSimstrat_noDA.json @@ -26,7 +26,7 @@ "properties": { "description": [], "start_datetime": "2023-10-20", - "end_datetime": "2023-12-07", + "end_datetime": "2023-12-08", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flare_ler.json b/catalog/forecasts/models/model_items/flare_ler.json index 13b4555bef..cad82c651a 100644 --- a/catalog/forecasts/models/model_items/flare_ler.json +++ b/catalog/forecasts/models/model_items/flare_ler.json @@ -27,7 +27,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-06", + "end_datetime": "2023-12-07", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/flare_ler_baselines.json b/catalog/forecasts/models/model_items/flare_ler_baselines.json index ac77dcc005..b7d6357569 100644 --- a/catalog/forecasts/models/model_items/flare_ler_baselines.json +++ b/catalog/forecasts/models/model_items/flare_ler_baselines.json @@ -27,7 +27,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-06", + "end_datetime": "2023-12-07", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/lasso.json b/catalog/forecasts/models/model_items/lasso.json index 051f098b04..b8be305276 100644 --- a/catalog/forecasts/models/model_items/lasso.json +++ b/catalog/forecasts/models/model_items/lasso.json @@ -68,7 +68,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/null.json b/catalog/forecasts/models/model_items/null.json index b949c1e722..01ae0217ba 100644 --- a/catalog/forecasts/models/model_items/null.json +++ b/catalog/forecasts/models/model_items/null.json @@ -55,7 +55,7 @@ "properties": { "description": [], "start_datetime": "2023-01-10", - "end_datetime": "2024-10-02", + "end_datetime": "2024-10-03", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/prophet_clim_ensemble.json b/catalog/forecasts/models/model_items/prophet_clim_ensemble.json index 0eb9c164e1..c022d4577b 100644 --- a/catalog/forecasts/models/model_items/prophet_clim_ensemble.json +++ b/catalog/forecasts/models/model_items/prophet_clim_ensemble.json @@ -67,7 +67,7 @@ "properties": { "description": [], "start_datetime": "2023-10-18", - "end_datetime": "2023-12-06", + "end_datetime": "2023-12-07", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/randfor.json b/catalog/forecasts/models/model_items/randfor.json index ce576ade83..8783125b1f 100644 --- a/catalog/forecasts/models/model_items/randfor.json +++ b/catalog/forecasts/models/model_items/randfor.json @@ -68,7 +68,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_auto_adam.json b/catalog/forecasts/models/model_items/tg_auto_adam.json index 229f5d98b2..55e1fd37cf 100644 --- a/catalog/forecasts/models/model_items/tg_auto_adam.json +++ b/catalog/forecasts/models/model_items/tg_auto_adam.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-09-01", - "end_datetime": "2023-12-08", + "end_datetime": "2023-12-09", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_bag_mlp.json b/catalog/forecasts/models/model_items/tg_bag_mlp.json index c5ee9130a3..d777194e11 100644 --- a/catalog/forecasts/models/model_items/tg_bag_mlp.json +++ b/catalog/forecasts/models/model_items/tg_bag_mlp.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-03-27", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_humidity_lm.json b/catalog/forecasts/models/model_items/tg_humidity_lm.json index 6659bc614f..9d59c0146d 100644 --- a/catalog/forecasts/models/model_items/tg_humidity_lm.json +++ b/catalog/forecasts/models/model_items/tg_humidity_lm.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-05-03", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_humidity_lm_all_sites.json b/catalog/forecasts/models/model_items/tg_humidity_lm_all_sites.json index 705c77d846..884f98f1f5 100644 --- a/catalog/forecasts/models/model_items/tg_humidity_lm_all_sites.json +++ b/catalog/forecasts/models/model_items/tg_humidity_lm_all_sites.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-04-26", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_lasso.json b/catalog/forecasts/models/model_items/tg_lasso.json index f8fdfe36ed..f8d1948d5c 100644 --- a/catalog/forecasts/models/model_items/tg_lasso.json +++ b/catalog/forecasts/models/model_items/tg_lasso.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_lasso_all_sites.json b/catalog/forecasts/models/model_items/tg_lasso_all_sites.json index 2474ada6e1..b2736e7a87 100644 --- a/catalog/forecasts/models/model_items/tg_lasso_all_sites.json +++ b/catalog/forecasts/models/model_items/tg_lasso_all_sites.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_precip_lm.json b/catalog/forecasts/models/model_items/tg_precip_lm.json index 36f6cad40c..2eb02edf11 100644 --- a/catalog/forecasts/models/model_items/tg_precip_lm.json +++ b/catalog/forecasts/models/model_items/tg_precip_lm.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-05-11", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_precip_lm_all_sites.json b/catalog/forecasts/models/model_items/tg_precip_lm_all_sites.json index 17dff4cb2e..1292e0387b 100644 --- a/catalog/forecasts/models/model_items/tg_precip_lm_all_sites.json +++ b/catalog/forecasts/models/model_items/tg_precip_lm_all_sites.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-05-16", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_randfor.json b/catalog/forecasts/models/model_items/tg_randfor.json index e6c4d32e71..c525c2a1cd 100644 --- a/catalog/forecasts/models/model_items/tg_randfor.json +++ b/catalog/forecasts/models/model_items/tg_randfor.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_randfor_all_sites.json b/catalog/forecasts/models/model_items/tg_randfor_all_sites.json index 0fd98899c8..dbfc11cedd 100644 --- a/catalog/forecasts/models/model_items/tg_randfor_all_sites.json +++ b/catalog/forecasts/models/model_items/tg_randfor_all_sites.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-10-19", - "end_datetime": "2023-12-10", + "end_datetime": "2023-12-11", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_temp_lm.json b/catalog/forecasts/models/model_items/tg_temp_lm.json index d40ff57ac8..00873135d9 100644 --- a/catalog/forecasts/models/model_items/tg_temp_lm.json +++ b/catalog/forecasts/models/model_items/tg_temp_lm.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-04-19", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/forecasts/models/model_items/tg_temp_lm_all_sites.json b/catalog/forecasts/models/model_items/tg_temp_lm_all_sites.json index cb5171a0c5..b61357051a 100644 --- a/catalog/forecasts/models/model_items/tg_temp_lm_all_sites.json +++ b/catalog/forecasts/models/model_items/tg_temp_lm_all_sites.json @@ -102,7 +102,7 @@ "properties": { "description": [], "start_datetime": "2023-04-26", - "end_datetime": "2023-12-11", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", diff --git a/catalog/scores/Aquatics/Daily Chlorophyll-a/collection.json b/catalog/scores/Aquatics/Daily Chlorophyll-a/collection.json new file mode 100644 index 0000000000..08137a0c36 --- /dev/null +++ b/catalog/scores/Aquatics/Daily Chlorophyll-a/collection.json @@ -0,0 +1,317 @@ +{ + "id": "Daily Chlorophyll-a", + "description": "This page includes all models for the Daily Chlorophyll-a variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procEppleyNorbergMonod.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/USGSHABs1.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/persistenceRW.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procCTMISteele.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procHinshelwoodSteele.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procCTMIMonod.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procBlanchardSteele.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procEppleyNorbergSteele.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procBlanchardMonod.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/procHinshelwoodMonod.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_auto_adam.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Daily Chlorophyll-a", + "extent": { + "spatial": { + "bbox": [ + [-149.6106, 29.676, -82.0084, 68.6307] + ] + }, + "temporal": { + "interval": [ + [ + "2023-01-01T00:00:00Z", + "2023-12-13T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=chla?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=chla?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Aquatics/Daily Dissolved oxygen/collection.json b/catalog/scores/Aquatics/Daily Dissolved oxygen/collection.json new file mode 100644 index 0000000000..46fb47a608 --- /dev/null +++ b/catalog/scores/Aquatics/Daily Dissolved oxygen/collection.json @@ -0,0 +1,297 @@ +{ + "id": "Daily Dissolved oxygen", + "description": "This page includes all models for the Daily Dissolved oxygen variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/air2waterSat_2.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/persistenceRW.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/null.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/GLEON_lm_lag_1day.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tslm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_auto_adam.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Daily Dissolved oxygen", + "extent": { + "spatial": { + "bbox": [ + [-149.6106, 18.1135, -66.7987, 68.6698] + ] + }, + "temporal": { + "interval": [ + [ + "2023-03-01T00:00:00Z", + "2024-10-03T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=oxygen?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=oxygen?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Aquatics/Daily Water temperature/collection.json b/catalog/scores/Aquatics/Daily Water temperature/collection.json new file mode 100644 index 0000000000..a5604747fd --- /dev/null +++ b/catalog/scores/Aquatics/Daily Water temperature/collection.json @@ -0,0 +1,367 @@ +{ + "id": "Daily Water temperature", + "description": "This page includes all models for the Daily Water temperature variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/fARIMA_clim_ensemble.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/fTSLM_lag.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flareGOTM.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flareSimstrat_noDA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flare_ler.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flare_ler_baselines.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/persistenceRW.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/GLEON_physics.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/baseline_ensemble.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/fARIMA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flareGOTM_noDA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flareGLM.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/GLEON_JRabaey_temp_physics.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/air2waterSat_2.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flareGLM_noDA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/flareSimstrat.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/GLEON_lm_lag_1day.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/null.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tslm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_auto_adam.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Daily Water temperature", + "extent": { + "spatial": { + "bbox": [ + [-149.6106, 18.1135, -66.7987, 68.6698] + ] + }, + "temporal": { + "interval": [ + [ + "2023-01-10T00:00:00Z", + "2024-10-03T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=temperature?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=temperature?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Aquatics/collection.json b/catalog/scores/Aquatics/collection.json new file mode 100644 index 0000000000..c14bd96aac --- /dev/null +++ b/catalog/scores/Aquatics/collection.json @@ -0,0 +1,197 @@ +{ + "id": "Aquatics", + "description": "This page includes variables for the Aquatics group.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "child", + "type": "application/json", + "href": "Daily Dissolved oxygen/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "Daily Water temperature/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "Daily Chlorophyll-a/collection.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Aquatics", + "extent": { + "spatial": { + "bbox": [ + [-149.6106, 18.1135, -66.7987, 68.6698] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for the NEON Ecological Forecasting Aquatics theme.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |>\n dplyr::filter(variable %in% c(\"oxygen\", \"temperature\", \"chla\")) |>\n dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "https://projects.ecoforecast.org/neon4cast-catalog/img/neon_buoy.jpg", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "NEON Aquatics Buoy" + } + } +} diff --git a/catalog/scores/Beetles/Weekly beetle community abundance/collection.json b/catalog/scores/Beetles/Weekly beetle community abundance/collection.json new file mode 100644 index 0000000000..18030a8b5d --- /dev/null +++ b/catalog/scores/Beetles/Weekly beetle community abundance/collection.json @@ -0,0 +1,247 @@ +{ + "id": "Weekly beetle community abundance", + "description": "This page includes all models for the Weekly beetle community abundance variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Weekly beetle community abundance", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1W/variable=abundance?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1W/variable=abundance?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Beetles/Weekly beetle community richness/collection.json b/catalog/scores/Beetles/Weekly beetle community richness/collection.json new file mode 100644 index 0000000000..4fea797494 --- /dev/null +++ b/catalog/scores/Beetles/Weekly beetle community richness/collection.json @@ -0,0 +1,247 @@ +{ + "id": "Weekly beetle community richness", + "description": "This page includes all models for the Weekly beetle community richness variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Weekly beetle community richness", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1W/variable=richness?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1W/variable=richness?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Beetles/collection.json b/catalog/scores/Beetles/collection.json new file mode 100644 index 0000000000..ba0d0b3622 --- /dev/null +++ b/catalog/scores/Beetles/collection.json @@ -0,0 +1,192 @@ +{ + "id": "Beetles", + "description": "This page includes variables for the Beetles group.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "child", + "type": "application/json", + "href": "Weekly beetle community abundance/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "Weekly beetle community richness/collection.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Beetles", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for the NEON Ecological Forecasting Aquatics theme.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |>\n dplyr::filter(variable %in% c(\"abundance\", \"richness\")) |>\n dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "https://www.neonscience.org/sites/default/files/styles/max_width_1170px/public/image-content-images/Beetles_pinned.jpg", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "Beetle Image" + } + } +} diff --git a/catalog/scores/Phenology/Daily Green chromatic coordinate/collection.json b/catalog/scores/Phenology/Daily Green chromatic coordinate/collection.json new file mode 100644 index 0000000000..c970346f4c --- /dev/null +++ b/catalog/scores/Phenology/Daily Green chromatic coordinate/collection.json @@ -0,0 +1,272 @@ +{ + "id": "Daily Green chromatic coordinate", + "description": "This page includes all models for the Daily Green chromatic coordinate variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/persistenceRW.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_auto_adam.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Daily Green chromatic coordinate", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2023-03-27T00:00:00Z", + "2023-12-13T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=gcc_90?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=gcc_90?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Phenology/Daily Red chromatic coordinate/collection.json b/catalog/scores/Phenology/Daily Red chromatic coordinate/collection.json new file mode 100644 index 0000000000..fa22182c87 --- /dev/null +++ b/catalog/scores/Phenology/Daily Red chromatic coordinate/collection.json @@ -0,0 +1,287 @@ +{ + "id": "Daily Red chromatic coordinate", + "description": "This page includes all models for the Daily Red chromatic coordinate variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/baseline_ensemble.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/persistenceRW.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/prophet_clim_ensemble.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_auto_adam.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Daily Red chromatic coordinate", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2023-03-27T00:00:00Z", + "2023-12-13T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=rcc_90?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=rcc_90?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Phenology/collection.json b/catalog/scores/Phenology/collection.json new file mode 100644 index 0000000000..b26ec59dce --- /dev/null +++ b/catalog/scores/Phenology/collection.json @@ -0,0 +1,192 @@ +{ + "id": "Phenology", + "description": "This page includes variables for the Phenology group.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "child", + "type": "application/json", + "href": "Daily Green chromatic coordinate/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "Daily Red chromatic coordinate/collection.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Phenology", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for the NEON Ecological Forecasting Aquatics theme.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |>\n dplyr::filter(variable %in% c(\"gcc_90\", \"rcc_90\")) |>\n dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "https://www.neonscience.org/sites/default/files/styles/max_1300x1300/public/image-content-images/_BFP8455.jpg", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "Phenology Image" + } + } +} diff --git a/catalog/scores/Terrestrial/30min latent heat flux/collection.json b/catalog/scores/Terrestrial/30min latent heat flux/collection.json new file mode 100644 index 0000000000..b07b82a9ca --- /dev/null +++ b/catalog/scores/Terrestrial/30min latent heat flux/collection.json @@ -0,0 +1,187 @@ +{ + "id": "30min latent heat flux", + "description": "This page includes all models for the 30min latent heat flux variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "30min latent heat flux", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2023-11-06T00:00:00Z", + "2023-12-11T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=PT30M/variable=le?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=PT30M/variable=le?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Terrestrial/Daily Net ecosystem exchange/collection.json b/catalog/scores/Terrestrial/Daily Net ecosystem exchange/collection.json new file mode 100644 index 0000000000..a6d9805149 --- /dev/null +++ b/catalog/scores/Terrestrial/Daily Net ecosystem exchange/collection.json @@ -0,0 +1,267 @@ +{ + "id": "Daily Net ecosystem exchange", + "description": "This page includes all models for the Daily Net ecosystem exchange variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_auto_adam.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/climatology.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Daily Net ecosystem exchange", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2023-04-19T00:00:00Z", + "2023-12-14T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=le?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1D/variable=le?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Terrestrial/collection.json b/catalog/scores/Terrestrial/collection.json new file mode 100644 index 0000000000..922c984caa --- /dev/null +++ b/catalog/scores/Terrestrial/collection.json @@ -0,0 +1,202 @@ +{ + "id": "Terrestrial", + "description": "This page includes variables for the Terrestrial group.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "child", + "type": "application/json", + "href": "Daily Net ecosystem exchange/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "Daily Net ecosystem exchange/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "30min latent heat flux/collection.json" + }, + { + "rel": "child", + "type": "application/json", + "href": "30min latent heat flux/collection.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Terrestrial", + "extent": { + "spatial": { + "bbox": [ + [-156.6194, 17.9696, -66.8687, 71.2824] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for the NEON Ecological Forecasting Aquatics theme.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |>\n dplyr::filter(variable %in% c(\"nee\", \"le\")) |>\n dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "https://projects.ecoforecast.org/neon4cast-catalog/img/BONA_Twr.jpg", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "NEON Field Tower" + } + } +} diff --git a/catalog/scores/Ticks/Weekly Amblyomma americanum population/collection.json b/catalog/scores/Ticks/Weekly Amblyomma americanum population/collection.json new file mode 100644 index 0000000000..2efbe9a28a --- /dev/null +++ b/catalog/scores/Ticks/Weekly Amblyomma americanum population/collection.json @@ -0,0 +1,247 @@ +{ + "id": "Weekly Amblyomma americanum population", + "description": "This page includes all models for the Weekly Amblyomma americanum population variable.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_humidity_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_temp_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_arima.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "../../models/model_items/tg_randfor_all_sites.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Weekly Amblyomma americanum population", + "extent": { + "spatial": { + "bbox": [ + [-96.5631, 29.6893, -76.56, 39.1008] + ] + }, + "temporal": { + "interval": [ + [ + "2021-06-07T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1W/variable=amblyomma_americanum?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/project_id=neon4cast/duration=P1W/variable=amblyomma_americanum?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" + } + } +} diff --git a/catalog/scores/Ticks/collection.json b/catalog/scores/Ticks/collection.json new file mode 100644 index 0000000000..9306637e6f --- /dev/null +++ b/catalog/scores/Ticks/collection.json @@ -0,0 +1,187 @@ +{ + "id": "Ticks", + "description": "This page includes variables for the Ticks group.", + "stac_version": "1.0.0", + "license": "CC0-1.0", + "stac_extensions": [ + "https://stac-extensions.github.io/scientific/v1.0.0/schema.json", + "https://stac-extensions.github.io/item-assets/v1.0.0/schema.json", + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Collection", + "links": [ + { + "rel": "child", + "type": "application/json", + "href": "Weekly Amblyomma americanum population/collection.json" + }, + { + "rel": "parent", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "root", + "type": "application/json", + "href": "../collection.json" + }, + { + "rel": "self", + "type": "application/json", + "href": "collection.json" + }, + { + "rel": "cite-as", + "href": "https://doi.org/10.1002/fee.2616" + }, + { + "rel": "about", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "type": "text/html", + "title": "NEON Ecological Forecasting Challenge Documentation" + }, + { + "rel": "describedby", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", + "type": "text/html" + } + ], + "title": "Ticks", + "extent": { + "spatial": { + "bbox": [ + [-96.5631, 29.6893, -76.56, 39.1008] + ] + }, + "temporal": { + "interval": [ + [ + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" + ] + ] + } + }, + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ], + "assets": { + "data": { + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", + "type": "application/x-parquet", + "title": "Database Access", + "roles": [ + "data" + ], + "description": "Use `arrow` for remote access to the database. This R code will return results for the NEON Ecological Forecasting Aquatics theme.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |>\n dplyr::filter(variable %in% c(\"amblyomma_americanum\")) |>\n dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "https://www.neonscience.org/sites/default/files/styles/max_2600x2600/public/image-content-images/tick-image.jpg", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "NEON Ticks" + } + } +} diff --git a/catalog/scores/collection.json b/catalog/scores/collection.json index cab57a8c46..3e096faf07 100644 --- a/catalog/scores/collection.json +++ b/catalog/scores/collection.json @@ -1,6 +1,6 @@ { "id": "daily-scores", - "description": "The catalog contains forecasts for the Virginia Ecoforecast Reservoir Analysis. The scores are summaries of the forecasts (i.e., mean, median, confidence intervals), matched observations (if available), and scores (metrics of how well the model distribution compares to observations). You can access the scores at the top level of the dataset where all models, variables, and dates that forecasts were produced (reference_datetime) are available. The code to access the entire dataset is provided as an asset. Given the size of the scores catalog, it can be time-consuming to access the data at the full dataset level. For quicker access to the scores for a particular model (model_id), we also provide the code to access the data at the model_id level as an asset for each model.", + "description": "The catalog contains scores for the NEON Ecological Forecasting Challenge. The scores are summaries of the forecasts (i.e., mean, median, confidence intervals), matched observations (if available), and scores (metrics of how well the model distribution compares to observations). You can access the scores at the top level of the dataset where all models, variables, and dates that forecasts were produced (reference_datetime) are available. The code to access the entire dataset is provided as an asset. Given the size of the scores catalog, it can be time-consuming to access the data at the full dataset level. For quicker access to the scores for a particular model (model_id), we also provide the code to access the data at the model_id level as an asset for each model.", "stac_version": "1.0.0", "license": "CC0-1.0", "stac_extensions": [ @@ -13,14 +13,32 @@ { "rel": "child", "type": "application/json", - "href": "Biological/collection.json", - "title": "Biological" + "href": "Aquatics/collection.json", + "title": "Aquatics" }, { "rel": "child", "type": "application/json", - "href": "Physical/collection.json", - "title": "Physical" + "href": "Terrestrial/collection.json", + "title": "Terrestrial" + }, + { + "rel": "child", + "type": "application/json", + "href": "Phenology/collection.json", + "title": "Phenology" + }, + { + "rel": "child", + "type": "application/json", + "href": "Beetles/collection.json", + "title": "Beetles" + }, + { + "rel": "child", + "type": "application/json", + "href": "Ticks/collection.json", + "title": "Ticks" }, { "rel": "child", @@ -49,14 +67,14 @@ }, { "rel": "about", - "href": "www.ltreb-reservoirs.org/vera4cast", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "type": "text/html", - "title": "VERA Forecasting Challenge Documentation" + "title": "NEON Ecological Forecasting Challenge Documentation" }, { "rel": "describedby", - "href": "https://www.ltreb-reservoirs.org/vera4cast", - "title": "VERA Forecast Challenge Dashboard", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } ], @@ -66,7 +84,7 @@ "bbox": [ [ -156.6194, - 71.2824, + 17.9696, -66.7987, 71.2824 ] @@ -75,8 +93,8 @@ "temporal": { "interval": [ [ - "2023-09-21T00:00:00Z", - "2024-02-01T00:00:00Z" + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" ] ] } @@ -107,11 +125,6 @@ "type": "timestamp[us, tz=UTC]", "description": "datetime that forecast was submitted" }, - { - "name": "depth_m", - "type": "double", - "description": "depth (meters) in water column of prediction" - }, { "name": "observation", "type": "double", @@ -190,21 +203,21 @@ ], "assets": { "data": { - "href": "s3://anonymous@bio230121-bucket01/vera4cast/forecasts/parquet/duration=P1D?endpoint_override=renc.osn.xsede.org", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", "type": "application/x-parquet", "title": "Database Access", "roles": [ "data" ], - "description": "Use `arrow` for remote access to the database. This R code will return results for the VERA Forecasting Challenge.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/forecasts/parquet/duration=P1D?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "description": "Use `arrow` for remote access to the database. This R code will return results for the VERA Forecasting Challenge.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" }, "thumbnail": { - "href": "https://raw.githubusercontent.com/LTREB-reservoirs/vera4cast/main/dashboard/img/banner-2.jpg", + "href": "https://raw.githubusercontent.com/eco4cast/neon4cast-ci/main/catalog/thumbnail_plots/52760199990_d1a0f154fe_c.jpg", "type": "image/JPEG", "roles": [ "thumbnail" ], - "title": "Falling Creek Reservoir" + "title": "NEON Buoy Image" } } } diff --git a/catalog/scores/models/collection.json b/catalog/scores/models/collection.json index 30075f3aa0..50f4271286 100644 --- a/catalog/scores/models/collection.json +++ b/catalog/scores/models/collection.json @@ -1,6 +1,6 @@ { "id": "models", - "description": "The catalog contains forecasts for the Virginia Ecoforecast Reservoir Analysis. The scores are summaries of the forecasts (i.e., mean, median, confidence intervals), matched observations (if available), and scores (metrics of how well the model distribution compares to observations). You can access the scores at the top level of the dataset where all models, variables, and dates that forecasts were produced (reference_datetime) are available. The code to access the entire dataset is provided as an asset. Given the size of the scores catalog, it can be time-consuming to access the data at the full dataset level. For quicker access to the scores for a particular model (model_id), we also provide the code to access the data at the model_id level as an asset for each model.", + "description": "The catalog contains scores for the NEON Ecological Forecasting Challenge. The scores are summaries of the forecasts (i.e., mean, median, confidence intervals), matched observations (if available), and scores (metrics of how well the model distribution compares to observations). You can access the scores at the top level of the dataset where all models, variables, and dates that forecasts were produced (reference_datetime) are available. The code to access the entire dataset is provided as an asset. Given the size of the scores catalog, it can be time-consuming to access the data at the full dataset level. For quicker access to the scores for a particular model (model_id), we also provide the code to access the data at the model_id level as an asset for each model.", "stac_version": "1.0.0", "license": "CC0-1.0", "stac_extensions": [ @@ -13,32 +13,52 @@ { "rel": "item", "type": "application/json", - "href": "model_items/cfs.json" + "href": "model_items/climatology.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/ecmwf_ifs04.json" + "href": "model_items/procEppleyNorbergMonod.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/icon_seamless.json" + "href": "model_items/tg_arima.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/fableNNETAR.json" + "href": "model_items/tg_humidity_lm.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/climatology.json" + "href": "model_items/tg_humidity_lm_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_precip_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_precip_lm_all_sites.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/fableETS.json" + "href": "model_items/tg_randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_temp_lm.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_temp_lm_all_sites.json" }, { "rel": "item", @@ -48,42 +68,192 @@ { "rel": "item", "type": "application/json", - "href": "model_items/glm_aed_v1.json" + "href": "model_items/tg_bag_mlp.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/randfor.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_tbats.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/xgboost_parallel.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/baseline_ensemble.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_lasso_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/fARIMA_clim_ensemble.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/fTSLM_lag.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flareGOTM.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flareSimstrat_noDA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flare_ler.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flare_ler_baselines.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/air2waterSat_2.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_randfor_all_sites.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/GLEON_physics.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/fARIMA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flareGOTM_noDA.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flareGLM.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_lasso.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_ets.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/cb_prophet.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tg_auto_adam.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/USGSHABs1.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/inflow_gefsClimAED.json" + "href": "model_items/procCTMISteele.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/gfs_seamless.json" + "href": "model_items/procHinshelwoodSteele.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/gem_global.json" + "href": "model_items/procCTMIMonod.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/fableARIMA.json" + "href": "model_items/prophet_clim_ensemble.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/climatology2.json" + "href": "model_items/GLEON_JRabaey_temp_physics.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/TESTclimatology.json" + "href": "model_items/flareGLM_noDA.json" }, { "rel": "item", "type": "application/json", - "href": "model_items/persistenceFO.json" + "href": "model_items/procBlanchardSteele.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/null.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/procEppleyNorbergSteele.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/flareSimstrat.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/procBlanchardMonod.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/procHinshelwoodMonod.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/GLEON_lm_lag_1day.json" + }, + { + "rel": "item", + "type": "application/json", + "href": "model_items/tslm.json" }, { "rel": "parent", @@ -106,14 +276,14 @@ }, { "rel": "about", - "href": "www.ltreb-reservoirs.org/vera4cast", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", "type": "text/html", - "title": "VERA Forecasting Challenge Documentation" + "title": "NEON Ecological Forecasting Challenge Documentation" }, { "rel": "describedby", - "href": "www.ltreb-reservoirs.org/vera4cast", - "title": "VERA Forecasting Challenge Documentation", + "href": "https://projects.ecoforecast.org/neon4cast-docs/", + "title": "NEON Forecast Challenge Dashboard", "type": "text/html" } ], @@ -121,19 +291,14 @@ "extent": { "spatial": { "bbox": [ - [ - -156.6194, - 71.2824, - -66.7987, - 71.2824 - ] + [-156.6194, 17.9696, -66.7987, 71.2824] ] }, "temporal": { "interval": [ [ - "2023-09-21T00:00:00Z", - "2024-02-01T00:00:00Z" + "2021-05-17T00:00:00Z", + "2024-10-28T00:00:00Z" ] ] } @@ -164,11 +329,6 @@ "type": "timestamp[us, tz=UTC]", "description": "datetime that forecast was submitted" }, - { - "name": "depth_m", - "type": "double", - "description": "depth (meters) in water column of prediction" - }, { "name": "observation", "type": "double", @@ -247,13 +407,21 @@ ], "assets": { "data": { - "href": "s3://anonymous@bio230121-bucket01/vera4cast/forecasts/parquet/duration=P1D?endpoint_override=renc.osn.xsede.org", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org", "type": "application/x-parquet", "title": "Database Access", "roles": [ "data" ], - "description": "Use `arrow` for remote access to the database. This R code will return results for the NEON Ecological Forecasting Aquatics theme.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/forecasts/parquet/duration=P1D?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "description": "Use `arrow` for remote access to the database. This R code will return results for forecasts of the variable by the specific model .\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "thumbnail": { + "href": "pending", + "type": "image/JPEG", + "roles": [ + "thumbnail" + ], + "title": "pending" } } } diff --git a/catalog/scores/models/model_items/GLEON_JRabaey_temp_physics.json b/catalog/scores/models/model_items/GLEON_JRabaey_temp_physics.json new file mode 100644 index 0000000000..71ac2badbd --- /dev/null +++ b/catalog/scores/models/model_items/GLEON_JRabaey_temp_physics.json @@ -0,0 +1,227 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "GLEON_JRabaey_temp_physics", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-10", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "GLEON_JRabaey_temp_physics" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "GLEON_JRabaey_temp_physics" + }, + { + "rel": "self", + "href": "GLEON_JRabaey_temp_physics.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/GLEON_JRabaey_temp_physics.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/GLEON_JRabaey_temp_physics.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=GLEON_JRabaey_temp_physics?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=GLEON_JRabaey_temp_physics?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/GLEON_lm_lag_1day.json b/catalog/scores/models/model_items/GLEON_lm_lag_1day.json new file mode 100644 index 0000000000..a3cc90c901 --- /dev/null +++ b/catalog/scores/models/model_items/GLEON_lm_lag_1day.json @@ -0,0 +1,207 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "GLEON_lm_lag_1day", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "oxygen", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "GLEON_lm_lag_1day" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "GLEON_lm_lag_1day" + }, + { + "rel": "self", + "href": "GLEON_lm_lag_1day.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/GLEON_lm_lag_1day.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/GLEON_lm_lag_1day.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=GLEON_lm_lag_1day?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=GLEON_lm_lag_1day?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=GLEON_lm_lag_1day?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=GLEON_lm_lag_1day?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/GLEON_physics.json b/catalog/scores/models/model_items/GLEON_physics.json new file mode 100644 index 0000000000..2ab6a008f5 --- /dev/null +++ b/catalog/scores/models/model_items/GLEON_physics.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "GLEON_physics", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "GLEON_physics" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "GLEON_physics" + }, + { + "rel": "self", + "href": "GLEON_physics.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/GLEON_physics.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/GLEON_physics.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=GLEON_physics?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=GLEON_physics?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/USGSHABs1.json b/catalog/scores/models/model_items/USGSHABs1.json new file mode 100644 index 0000000000..51ebbcce6d --- /dev/null +++ b/catalog/scores/models/model_items/USGSHABs1.json @@ -0,0 +1,196 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "USGSHABs1", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-87.7982, 32.5415], + [-84.4374, 31.1854], + [-88.1589, 31.8534] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "USGSHABs1" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "USGSHABs1" + }, + { + "rel": "self", + "href": "USGSHABs1.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/USGSHABs1.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/USGSHABs1.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=USGSHABs1?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=USGSHABs1?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/air2waterSat_2.json b/catalog/scores/models/model_items/air2waterSat_2.json new file mode 100644 index 0000000000..1905b3d7e3 --- /dev/null +++ b/catalog/scores/models/model_items/air2waterSat_2.json @@ -0,0 +1,234 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "air2waterSat_2", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "oxygen", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "air2waterSat_2" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "air2waterSat_2" + }, + { + "rel": "self", + "href": "air2waterSat_2.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/air2waterSat_2.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/air2waterSat_2.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=air2waterSat_2?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=air2waterSat_2?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=air2waterSat_2?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=air2waterSat_2?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/baseline_ensemble.json b/catalog/scores/models/model_items/baseline_ensemble.json new file mode 100644 index 0000000000..b109076419 --- /dev/null +++ b/catalog/scores/models/model_items/baseline_ensemble.json @@ -0,0 +1,278 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "baseline_ensemble", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-122.3303, 45.7624], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-105.5824, 40.0543], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-111.7979, 40.7839], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-89.5857, 45.4937], + [-149.3705, 68.6611], + [-147.5026, 65.154], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-89.7048, 45.9983] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-07", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "rcc_90", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "baseline_ensemble" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "baseline_ensemble" + }, + { + "rel": "self", + "href": "baseline_ensemble.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/baseline_ensemble.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/baseline_ensemble.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=baseline_ensemble?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=baseline_ensemble?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=baseline_ensemble?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=baseline_ensemble?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/cb_prophet.json b/catalog/scores/models/model_items/cb_prophet.json new file mode 100644 index 0000000000..0187f4d98c --- /dev/null +++ b/catalog/scores/models/model_items/cb_prophet.json @@ -0,0 +1,316 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "cb_prophet", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-82.0084, 29.676], + [-110.5871, 44.9501], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-99.2531, 47.1298], + [-149.6106, 68.6307], + [-102.4471, 39.7582], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-119.2575, 37.0597], + [-96.6242, 34.4442] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "gcc_90", + "oxygen", + "rcc_90", + "le", + "nee", + "chla", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "cb_prophet" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "cb_prophet" + }, + { + "rel": "self", + "href": "cb_prophet.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/cb_prophet.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/cb_prophet.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=cb_prophet?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/climatology.json b/catalog/scores/models/model_items/climatology.json index 701aec881b..29c18a877e 100644 --- a/catalog/scores/models/model_items/climatology.json +++ b/catalog/scores/models/model_items/climatology.json @@ -16,15 +16,91 @@ "geometry": { "type": "MultiPoint", "coordinates": [ - [37.3129, -79.8159], - [37.3032, -79.8372], - [37.3078, -79.8357] + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-122.3303, 45.7624], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-156.6194, 71.2824], + [-147.504, 65.1532] ] }, "properties": { - "description": "\nmodel info: Historical DOY mean and sd. Assumes normal distribution\n\nSites: bvre, fcre, tubr\n\nVariables: Chla_ugL_mean, Temp_C_mean, Flow_cms_mean, AirTemp_C_mean", - "start_datetime": "2023-09-21", - "end_datetime": "2023-12-05", + "description": "\nmodel info: Historical DOY mean and sd. Assumes normal distribution\n\n\nSites: BARC, BLWA, CRAM, FLNT, SUGG, TOMB, ABBY, BART, BLAN, BONA, CLBJ, CPER, DCFS, DEJU, DELA, DSNY, GRSM, GUAN, HARV, HEAL, JERC, JORN, KONA, KONZ, LAJA, LENO, MLBS, MOAB, NIWO, NOGP, OAES, ONAQ, ORNL, OSBS, PUUM, RMNP, SCBI, SERC, SJER, SOAP, SRER, STEI, STER, TALL, TEAK, TOOL, TREE, UKFS, UNDE, WOOD, WREF, YELL, ARIK, BIGC, BLDE, BLUE, COMO, CUPE, GUIL, HOPB, KING, LECO, LEWI, LIRO, MART, MAYF, MCDI, MCRA, POSE, PRIN, PRLA, PRPO, REDB, SYCA, TECR, WALK, WLOU, BARR, CARI\n\nVariables: chla, rcc_90, temperature, nee, nee, oxygen, gcc_90, le, le", + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-14", "providers": [ { "url": "pending", @@ -46,8 +122,16 @@ "license": "CC0-1.0", "keywords": [ "Forecasting", - "vera4cast", - "Chla_ugL_mean, Temp_C_mean, Flow_cms_mean, AirTemp_C_mean" + "neon4cast", + "chla", + "rcc_90", + "temperature", + "nee", + "nee", + "oxygen", + "gcc_90", + "le", + "le" ], "table:columns": [ { @@ -75,11 +159,6 @@ "type": "timestamp[us, tz=UTC]", "description": "datetime that forecast was submitted" }, - { - "name": "depth_m", - "type": "double", - "description": "depth (meters) in water column of prediction" - }, { "name": "observation", "type": "double", @@ -188,32 +267,62 @@ "1": { "type": "application/json", "title": "Model Metadata", - "href": "https://renc.osn.xsede.org/bio230121-bucket01/vera4cast/metadata/model_id/climatology.json", - "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://renc.osn.xsede.org/bio230121-bucket01/vera4cast/metadata/model_id/climatology.json\")\n\n" + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/climatology.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/climatology.json\")\n\n" }, "2": { "type": "application/x-parquet", - "title": "Database Access for Chla_ugL_mean daily", - "href": "s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Chla_ugL_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org", - "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Chla_ugL_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" }, "3": { "type": "application/x-parquet", - "title": "Database Access for Temp_C_mean daily", - "href": "s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Temp_C_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org", - "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Temp_C_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" }, "4": { "type": "application/x-parquet", - "title": "Database Access for Flow_cms_mean daily", - "href": "s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Flow_cms_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org", - "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Flow_cms_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" }, "5": { "type": "application/x-parquet", - "title": "Database Access for AirTemp_C_mean daily", - "href": "s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=AirTemp_C_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org", - "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=AirTemp_C_mean/model_id=climatology?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for 30min Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=PT30M/variable=nee/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=PT30M/variable=nee/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for 30min latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=PT30M/variable=le/model_id=climatology?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=PT30M/variable=le/model_id=climatology?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" } } } diff --git a/catalog/scores/models/model_items/fARIMA.json b/catalog/scores/models/model_items/fARIMA.json new file mode 100644 index 0000000000..f8a6d58dd9 --- /dev/null +++ b/catalog/scores/models/model_items/fARIMA.json @@ -0,0 +1,227 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "fARIMA", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-11-05", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "fARIMA" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "fARIMA" + }, + { + "rel": "self", + "href": "fARIMA.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/fARIMA.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/fARIMA.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=fARIMA?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=fARIMA?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/fARIMA_clim_ensemble.json b/catalog/scores/models/model_items/fARIMA_clim_ensemble.json new file mode 100644 index 0000000000..d8b31c7a13 --- /dev/null +++ b/catalog/scores/models/model_items/fARIMA_clim_ensemble.json @@ -0,0 +1,222 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "fARIMA_clim_ensemble", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-105.5442, 40.035], + [-89.7048, 45.9983], + [-96.443, 38.9459], + [-87.7982, 32.5415], + [-122.1655, 44.2596], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.5081, 33.751], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-84.4374, 31.1854], + [-119.0274, 36.9559], + [-88.1589, 31.8534] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-07", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "fARIMA_clim_ensemble" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "fARIMA_clim_ensemble" + }, + { + "rel": "self", + "href": "fARIMA_clim_ensemble.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/fARIMA_clim_ensemble.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/fARIMA_clim_ensemble.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=fARIMA_clim_ensemble?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=fARIMA_clim_ensemble?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/fTSLM_lag.json b/catalog/scores/models/model_items/fTSLM_lag.json new file mode 100644 index 0000000000..ca3008bd25 --- /dev/null +++ b/catalog/scores/models/model_items/fTSLM_lag.json @@ -0,0 +1,227 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "fTSLM_lag", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-11-05", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "fTSLM_lag" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "fTSLM_lag" + }, + { + "rel": "self", + "href": "fTSLM_lag.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/fTSLM_lag.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/fTSLM_lag.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=fTSLM_lag?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=fTSLM_lag?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flareGLM.json b/catalog/scores/models/model_items/flareGLM.json new file mode 100644 index 0000000000..0593c66e0b --- /dev/null +++ b/catalog/scores/models/model_items/flareGLM.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flareGLM", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0177, 29.6878], + [-149.6106, 68.6307], + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-08", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flareGLM" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flareGLM" + }, + { + "rel": "self", + "href": "flareGLM.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGLM.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGLM.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGLM?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGLM?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flareGLM_noDA.json b/catalog/scores/models/model_items/flareGLM_noDA.json new file mode 100644 index 0000000000..1465df7b55 --- /dev/null +++ b/catalog/scores/models/model_items/flareGLM_noDA.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flareGLM_noDA", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-08", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flareGLM_noDA" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flareGLM_noDA" + }, + { + "rel": "self", + "href": "flareGLM_noDA.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGLM_noDA.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGLM_noDA.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGLM_noDA?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGLM_noDA?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flareGOTM.json b/catalog/scores/models/model_items/flareGOTM.json new file mode 100644 index 0000000000..9885b7162d --- /dev/null +++ b/catalog/scores/models/model_items/flareGOTM.json @@ -0,0 +1,199 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flareGOTM", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-08", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flareGOTM" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flareGOTM" + }, + { + "rel": "self", + "href": "flareGOTM.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGOTM.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGOTM.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGOTM?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGOTM?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flareGOTM_noDA.json b/catalog/scores/models/model_items/flareGOTM_noDA.json new file mode 100644 index 0000000000..f3f0159146 --- /dev/null +++ b/catalog/scores/models/model_items/flareGOTM_noDA.json @@ -0,0 +1,199 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flareGOTM_noDA", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-08", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flareGOTM_noDA" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flareGOTM_noDA" + }, + { + "rel": "self", + "href": "flareGOTM_noDA.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGOTM_noDA.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareGOTM_noDA.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGOTM_noDA?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareGOTM_noDA?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flareSimstrat.json b/catalog/scores/models/model_items/flareSimstrat.json new file mode 100644 index 0000000000..5b719726d7 --- /dev/null +++ b/catalog/scores/models/model_items/flareSimstrat.json @@ -0,0 +1,199 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flareSimstrat", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-08", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flareSimstrat" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flareSimstrat" + }, + { + "rel": "self", + "href": "flareSimstrat.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareSimstrat.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareSimstrat.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareSimstrat?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareSimstrat?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flareSimstrat_noDA.json b/catalog/scores/models/model_items/flareSimstrat_noDA.json new file mode 100644 index 0000000000..70ba5ab982 --- /dev/null +++ b/catalog/scores/models/model_items/flareSimstrat_noDA.json @@ -0,0 +1,198 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flareSimstrat_noDA", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0177, 29.6878], + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-99.1139, 47.1591], + [-99.2531, 47.1298] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-08", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flareSimstrat_noDA" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flareSimstrat_noDA" + }, + { + "rel": "self", + "href": "flareSimstrat_noDA.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareSimstrat_noDA.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flareSimstrat_noDA.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareSimstrat_noDA?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flareSimstrat_noDA?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flare_ler.json b/catalog/scores/models/model_items/flare_ler.json new file mode 100644 index 0000000000..a4248c1733 --- /dev/null +++ b/catalog/scores/models/model_items/flare_ler.json @@ -0,0 +1,199 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flare_ler", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0177, 29.6878], + [-82.0084, 29.676], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-89.4737, 46.2097] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-07", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flare_ler" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flare_ler" + }, + { + "rel": "self", + "href": "flare_ler.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flare_ler.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flare_ler.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flare_ler?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flare_ler?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/flare_ler_baselines.json b/catalog/scores/models/model_items/flare_ler_baselines.json new file mode 100644 index 0000000000..abfcf8260c --- /dev/null +++ b/catalog/scores/models/model_items/flare_ler_baselines.json @@ -0,0 +1,199 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "flare_ler_baselines", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-82.0177, 29.6878], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-07", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "flare_ler_baselines" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "flare_ler_baselines" + }, + { + "rel": "self", + "href": "flare_ler_baselines.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flare_ler_baselines.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/flare_ler_baselines.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flare_ler_baselines?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=flare_ler_baselines?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/lasso.json b/catalog/scores/models/model_items/lasso.json new file mode 100644 index 0000000000..3ebcd603f7 --- /dev/null +++ b/catalog/scores/models/model_items/lasso.json @@ -0,0 +1,247 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "lasso", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "le", + "nee" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "lasso" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "lasso" + }, + { + "rel": "self", + "href": "lasso.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/lasso.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/lasso.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/null.json b/catalog/scores/models/model_items/null.json new file mode 100644 index 0000000000..9cc4a4f448 --- /dev/null +++ b/catalog/scores/models/model_items/null.json @@ -0,0 +1,234 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "null", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-10", + "end_datetime": "2024-10-03", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "oxygen", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "null" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "null" + }, + { + "rel": "self", + "href": "null.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/null.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/null.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=null?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=null?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=null?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=null?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/persistenceRW.json b/catalog/scores/models/model_items/persistenceRW.json index 127ccf4a36..aa3c5739cb 100644 --- a/catalog/scores/models/model_items/persistenceRW.json +++ b/catalog/scores/models/model_items/persistenceRW.json @@ -16,14 +16,93 @@ "geometry": { "type": "MultiPoint", "coordinates": [ - [37.3129, -79.8159], - [37.3032, -79.8372] + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-149.2133, 63.8758], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-97.57, 33.4012], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-99.2413, 47.1282], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-82.0084, 29.676], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908] ] }, "properties": { - "description": "\nmodel info: Random walk from the fable package with ensembles used to represent uncertainty\n\nSites: bvre, fcre\n\nVariables: Chla_ugL_mean, Temp_C_mean", - "start_datetime": "2023-09-21", - "end_datetime": "2023-12-05", + "description": "\nmodel info: Random walk from the fable package with ensembles used to represent uncertainty\n\nSites: OSBS, PUUM, RMNP, SCBI, SERC, SJER, TALL, TEAK, TOOL, TREE, UKFS, UNDE, SOAP, SRER, STEI, STER, CRAM, CUPE, FLNT, GUIL, HOPB, KING, SYCA, TECR, TOMB, TOOK, WALK, WLOU, JERC, JORN, KONA, KONZ, LAJA, LENO, CPER, DCFS, DEJU, DELA, DSNY, MLBS, MOAB, NIWO, NOGP, ABBY, BARR, BART, BLAN, BONA, HEAL, LIRO, PRLA, PRPO, SUGG, CLBJ, PRIN, REDB, GRSM, GUAN, HARV, OAES, ONAQ, ORNL, WOOD, BLUE, BLWA, CARI, COMO, WREF, YELL, BARC, ARIK, BIGC, BLDE, MAYF, MCDI, MCRA, OKSR, POSE, LECO, LEWI, MART\n\nVariables: gcc_90, rcc_90, temperature, nee, chla, oxygen", + "start_datetime": "2023-10-20", + "end_datetime": "2023-12-12", "providers": [ { "url": "pending", @@ -45,8 +124,13 @@ "license": "CC0-1.0", "keywords": [ "Forecasting", - "vera4cast", - "Chla_ugL_mean, Temp_C_mean" + "neon4cast", + "gcc_90", + "rcc_90", + "temperature", + "nee", + "chla", + "oxygen" ], "table:columns": [ { @@ -74,11 +158,6 @@ "type": "timestamp[us, tz=UTC]", "description": "datetime that forecast was submitted" }, - { - "name": "depth_m", - "type": "double", - "description": "depth (meters) in water column of prediction" - }, { "name": "observation", "type": "double", @@ -187,20 +266,44 @@ "1": { "type": "application/json", "title": "Model Metadata", - "href": "https://renc.osn.xsede.org/bio230121-bucket01/vera4cast/metadata/model_id/persistenceRW.json", - "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://renc.osn.xsede.org/bio230121-bucket01/vera4cast/metadata/model_id/persistenceRW.json\")\n\n" + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/persistenceRW.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/persistenceRW.json\")\n\n" }, "2": { "type": "application/x-parquet", - "title": "Database Access for Chla_ugL_mean daily", - "href": "s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Chla_ugL_mean/model_id=persistenceRW?endpoint_override=renc.osn.xsede.org", - "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Chla_ugL_mean/model_id=persistenceRW?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" }, "3": { "type": "application/x-parquet", - "title": "Database Access for Temp_C_mean daily", - "href": "s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Temp_C_mean/model_id=persistenceRW?endpoint_override=renc.osn.xsede.org", - "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230121-bucket01/vera4cast/scores/parquet/duration=P1D/variable=Temp_C_mean/model_id=persistenceRW?endpoint_override=renc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=persistenceRW?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" } } } diff --git a/catalog/scores/models/model_items/procBlanchardMonod.json b/catalog/scores/models/model_items/procBlanchardMonod.json new file mode 100644 index 0000000000..ed51f80132 --- /dev/null +++ b/catalog/scores/models/model_items/procBlanchardMonod.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procBlanchardMonod", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procBlanchardMonod" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procBlanchardMonod" + }, + { + "rel": "self", + "href": "procBlanchardMonod.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procBlanchardMonod.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procBlanchardMonod.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procBlanchardMonod?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procBlanchardMonod?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procBlanchardSteele.json b/catalog/scores/models/model_items/procBlanchardSteele.json new file mode 100644 index 0000000000..9e6bc4a867 --- /dev/null +++ b/catalog/scores/models/model_items/procBlanchardSteele.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procBlanchardSteele", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procBlanchardSteele" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procBlanchardSteele" + }, + { + "rel": "self", + "href": "procBlanchardSteele.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procBlanchardSteele.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procBlanchardSteele.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procBlanchardSteele?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procBlanchardSteele?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procCTMIMonod.json b/catalog/scores/models/model_items/procCTMIMonod.json new file mode 100644 index 0000000000..e0e637ba37 --- /dev/null +++ b/catalog/scores/models/model_items/procCTMIMonod.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procCTMIMonod", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procCTMIMonod" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procCTMIMonod" + }, + { + "rel": "self", + "href": "procCTMIMonod.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procCTMIMonod.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procCTMIMonod.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procCTMIMonod?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procCTMIMonod?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procCTMISteele.json b/catalog/scores/models/model_items/procCTMISteele.json new file mode 100644 index 0000000000..ae509c7da0 --- /dev/null +++ b/catalog/scores/models/model_items/procCTMISteele.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procCTMISteele", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procCTMISteele" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procCTMISteele" + }, + { + "rel": "self", + "href": "procCTMISteele.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procCTMISteele.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procCTMISteele.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procCTMISteele?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procCTMISteele?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procEppleyNorbergMonod.json b/catalog/scores/models/model_items/procEppleyNorbergMonod.json new file mode 100644 index 0000000000..2932a50f2f --- /dev/null +++ b/catalog/scores/models/model_items/procEppleyNorbergMonod.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procEppleyNorbergMonod", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procEppleyNorbergMonod" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procEppleyNorbergMonod" + }, + { + "rel": "self", + "href": "procEppleyNorbergMonod.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procEppleyNorbergMonod.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procEppleyNorbergMonod.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procEppleyNorbergMonod?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procEppleyNorbergMonod?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procEppleyNorbergSteele.json b/catalog/scores/models/model_items/procEppleyNorbergSteele.json new file mode 100644 index 0000000000..a373e50c94 --- /dev/null +++ b/catalog/scores/models/model_items/procEppleyNorbergSteele.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procEppleyNorbergSteele", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procEppleyNorbergSteele" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procEppleyNorbergSteele" + }, + { + "rel": "self", + "href": "procEppleyNorbergSteele.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procEppleyNorbergSteele.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procEppleyNorbergSteele.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procEppleyNorbergSteele?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procEppleyNorbergSteele?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procHinshelwoodMonod.json b/catalog/scores/models/model_items/procHinshelwoodMonod.json new file mode 100644 index 0000000000..0a430ef2a0 --- /dev/null +++ b/catalog/scores/models/model_items/procHinshelwoodMonod.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procHinshelwoodMonod", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procHinshelwoodMonod" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procHinshelwoodMonod" + }, + { + "rel": "self", + "href": "procHinshelwoodMonod.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procHinshelwoodMonod.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procHinshelwoodMonod.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procHinshelwoodMonod?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procHinshelwoodMonod?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/procHinshelwoodSteele.json b/catalog/scores/models/model_items/procHinshelwoodSteele.json new file mode 100644 index 0000000000..8a66da6419 --- /dev/null +++ b/catalog/scores/models/model_items/procHinshelwoodSteele.json @@ -0,0 +1,200 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "procHinshelwoodSteele", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-89.4737, 46.2097], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-149.6106, 68.6307] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-01-01", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "procHinshelwoodSteele" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "procHinshelwoodSteele" + }, + { + "rel": "self", + "href": "procHinshelwoodSteele.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procHinshelwoodSteele.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/procHinshelwoodSteele.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procHinshelwoodSteele?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=procHinshelwoodSteele?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/prophet_clim_ensemble.json b/catalog/scores/models/model_items/prophet_clim_ensemble.json new file mode 100644 index 0000000000..bf5426bc7d --- /dev/null +++ b/catalog/scores/models/model_items/prophet_clim_ensemble.json @@ -0,0 +1,239 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "prophet_clim_ensemble", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-147.5026, 65.154], + [-149.3705, 68.6611] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-18", + "end_datetime": "2023-12-07", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "rcc_90" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "prophet_clim_ensemble" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "prophet_clim_ensemble" + }, + { + "rel": "self", + "href": "prophet_clim_ensemble.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/prophet_clim_ensemble.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/prophet_clim_ensemble.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=prophet_clim_ensemble?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=prophet_clim_ensemble?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/randfor.json b/catalog/scores/models/model_items/randfor.json new file mode 100644 index 0000000000..1879e4b51e --- /dev/null +++ b/catalog/scores/models/model_items/randfor.json @@ -0,0 +1,240 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "randfor", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "le" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "randfor" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "randfor" + }, + { + "rel": "self", + "href": "randfor.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/randfor.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/randfor.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_arima.json b/catalog/scores/models/model_items/tg_arima.json new file mode 100644 index 0000000000..073f0bd9d1 --- /dev/null +++ b/catalog/scores/models/model_items/tg_arima.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_arima", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535] + ] + }, + "properties": { + "description": [], + "start_datetime": "2021-05-17", + "end_datetime": "2024-10-28", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "temperature", + "abundance", + "gcc_90", + "le", + "nee", + "richness", + "amblyomma_americanum", + "oxygen", + "rcc_90" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_arima" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_arima" + }, + { + "rel": "self", + "href": "tg_arima.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_arima.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_arima.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_arima?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_auto_adam.json b/catalog/scores/models/model_items/tg_auto_adam.json new file mode 100644 index 0000000000..53aff053e9 --- /dev/null +++ b/catalog/scores/models/model_items/tg_auto_adam.json @@ -0,0 +1,316 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_auto_adam", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-09-01", + "end_datetime": "2023-12-09", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "nee", + "le", + "temperature", + "oxygen", + "chla", + "gcc_90", + "rcc_90" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_auto_adam" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_auto_adam" + }, + { + "rel": "self", + "href": "tg_auto_adam.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_auto_adam.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_auto_adam.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_auto_adam?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_bag_mlp.json b/catalog/scores/models/model_items/tg_bag_mlp.json new file mode 100644 index 0000000000..67fb43dc57 --- /dev/null +++ b/catalog/scores/models/model_items/tg_bag_mlp.json @@ -0,0 +1,316 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_bag_mlp", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-03-27", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "gcc_90", + "le", + "rcc_90", + "temperature", + "nee", + "chla", + "oxygen" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_bag_mlp" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_bag_mlp" + }, + { + "rel": "self", + "href": "tg_bag_mlp.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_bag_mlp.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_bag_mlp.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_bag_mlp?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_ets.json b/catalog/scores/models/model_items/tg_ets.json new file mode 100644 index 0000000000..94c45e8621 --- /dev/null +++ b/catalog/scores/models/model_items/tg_ets.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_ets", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2021-05-17", + "end_datetime": "2024-10-28", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "le", + "oxygen", + "temperature", + "amblyomma_americanum", + "nee", + "richness", + "gcc_90", + "rcc_90", + "abundance" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_ets" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_ets" + }, + { + "rel": "self", + "href": "tg_ets.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_ets.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_ets.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_ets?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_humidity_lm.json b/catalog/scores/models/model_items/tg_humidity_lm.json new file mode 100644 index 0000000000..14070ded48 --- /dev/null +++ b/catalog/scores/models/model_items/tg_humidity_lm.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_humidity_lm", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-05-03", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "le", + "nee", + "rcc_90", + "temperature", + "oxygen", + "richness", + "amblyomma_americanum", + "abundance" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_humidity_lm" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_humidity_lm" + }, + { + "rel": "self", + "href": "tg_humidity_lm.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_humidity_lm.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_humidity_lm.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_humidity_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_humidity_lm_all_sites.json b/catalog/scores/models/model_items/tg_humidity_lm_all_sites.json new file mode 100644 index 0000000000..11ffc87136 --- /dev/null +++ b/catalog/scores/models/model_items/tg_humidity_lm_all_sites.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_humidity_lm_all_sites", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-04-26", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "le", + "nee", + "rcc_90", + "oxygen", + "temperature", + "amblyomma_americanum", + "richness", + "abundance" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_humidity_lm_all_sites" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_humidity_lm_all_sites" + }, + { + "rel": "self", + "href": "tg_humidity_lm_all_sites.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_humidity_lm_all_sites.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_humidity_lm_all_sites.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_humidity_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_lasso.json b/catalog/scores/models/model_items/tg_lasso.json new file mode 100644 index 0000000000..7d51a4df7c --- /dev/null +++ b/catalog/scores/models/model_items/tg_lasso.json @@ -0,0 +1,323 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_lasso", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-78.0418, 39.0337], + [-96.5631, 39.1008], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-87.3933, 32.9505], + [-95.1921, 39.0404], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-122.3303, 45.7624], + [-71.2874, 44.0639], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-156.6194, 71.2824], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "amblyomma_americanum", + "rcc_90", + "temperature", + "abundance", + "oxygen", + "chla", + "richness", + "gcc_90" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_lasso" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_lasso" + }, + { + "rel": "self", + "href": "tg_lasso.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_lasso.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_lasso.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_lasso?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_lasso_all_sites.json b/catalog/scores/models/model_items/tg_lasso_all_sites.json new file mode 100644 index 0000000000..7884431912 --- /dev/null +++ b/catalog/scores/models/model_items/tg_lasso_all_sites.json @@ -0,0 +1,323 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_lasso_all_sites", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "rcc_90", + "gcc_90", + "oxygen", + "temperature", + "amblyomma_americanum", + "richness", + "chla", + "abundance" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_lasso_all_sites" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_lasso_all_sites" + }, + { + "rel": "self", + "href": "tg_lasso_all_sites.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_lasso_all_sites.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_lasso_all_sites.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_lasso_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_precip_lm.json b/catalog/scores/models/model_items/tg_precip_lm.json new file mode 100644 index 0000000000..aad193f3e1 --- /dev/null +++ b/catalog/scores/models/model_items/tg_precip_lm.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_precip_lm", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-05-11", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "le", + "nee", + "rcc_90", + "oxygen", + "temperature", + "abundance", + "amblyomma_americanum", + "richness" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_precip_lm" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_precip_lm" + }, + { + "rel": "self", + "href": "tg_precip_lm.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_precip_lm.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_precip_lm.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_precip_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_precip_lm_all_sites.json b/catalog/scores/models/model_items/tg_precip_lm_all_sites.json new file mode 100644 index 0000000000..695c9ad13d --- /dev/null +++ b/catalog/scores/models/model_items/tg_precip_lm_all_sites.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_precip_lm_all_sites", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-05-16", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "le", + "rcc_90", + "nee", + "oxygen", + "temperature", + "amblyomma_americanum", + "richness", + "abundance" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_precip_lm_all_sites" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_precip_lm_all_sites" + }, + { + "rel": "self", + "href": "tg_precip_lm_all_sites.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_precip_lm_all_sites.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_precip_lm_all_sites.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_precip_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_randfor.json b/catalog/scores/models/model_items/tg_randfor.json new file mode 100644 index 0000000000..8a000f486d --- /dev/null +++ b/catalog/scores/models/model_items/tg_randfor.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_randfor", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "rcc_90", + "nee", + "oxygen", + "richness", + "abundance", + "temperature", + "amblyomma_americanum", + "le" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_randfor" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_randfor" + }, + { + "rel": "self", + "href": "tg_randfor.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_randfor.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_randfor.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_randfor?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_randfor_all_sites.json b/catalog/scores/models/model_items/tg_randfor_all_sites.json new file mode 100644 index 0000000000..61b1106b67 --- /dev/null +++ b/catalog/scores/models/model_items/tg_randfor_all_sites.json @@ -0,0 +1,309 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_randfor_all_sites", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-12-11", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "oxygen", + "rcc_90", + "temperature", + "abundance", + "amblyomma_americanum", + "richness" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_randfor_all_sites" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_randfor_all_sites" + }, + { + "rel": "self", + "href": "tg_randfor_all_sites.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_randfor_all_sites.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_randfor_all_sites.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_randfor_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_tbats.json b/catalog/scores/models/model_items/tg_tbats.json new file mode 100644 index 0000000000..049c1ef58e --- /dev/null +++ b/catalog/scores/models/model_items/tg_tbats.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_tbats", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2021-05-17", + "end_datetime": "2024-10-28", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "le", + "oxygen", + "nee", + "chla", + "rcc_90", + "temperature", + "amblyomma_americanum", + "abundance", + "gcc_90", + "richness" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_tbats" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_tbats" + }, + { + "rel": "self", + "href": "tg_tbats.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_tbats.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_tbats.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_tbats?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_temp_lm.json b/catalog/scores/models/model_items/tg_temp_lm.json new file mode 100644 index 0000000000..5903e00341 --- /dev/null +++ b/catalog/scores/models/model_items/tg_temp_lm.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_temp_lm", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-04-19", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "le", + "rcc_90", + "nee", + "oxygen", + "temperature", + "amblyomma_americanum", + "richness", + "abundance" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_temp_lm" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_temp_lm" + }, + { + "rel": "self", + "href": "tg_temp_lm.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_temp_lm.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_temp_lm.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_temp_lm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tg_temp_lm_all_sites.json b/catalog/scores/models/model_items/tg_temp_lm_all_sites.json new file mode 100644 index 0000000000..7e5902b3a7 --- /dev/null +++ b/catalog/scores/models/model_items/tg_temp_lm_all_sites.json @@ -0,0 +1,337 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tg_temp_lm_all_sites", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531], + [-105.546, 40.2759], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-110.5391, 44.9535], + [-102.4471, 39.7582], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-66.9868, 18.1135], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-111.7979, 40.7839], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-04-26", + "end_datetime": "2023-12-12", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "chla", + "gcc_90", + "le", + "oxygen", + "rcc_90", + "nee", + "temperature", + "abundance", + "amblyomma_americanum", + "richness" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tg_temp_lm_all_sites" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tg_temp_lm_all_sites" + }, + { + "rel": "self", + "href": "tg_temp_lm_all_sites.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_temp_lm_all_sites.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tg_temp_lm_all_sites.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "9": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community abundance", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=abundance/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "10": { + "type": "application/x-parquet", + "title": "Database Access for Weekly Amblyomma americanum population", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=amblyomma_americanum/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "11": { + "type": "application/x-parquet", + "title": "Database Access for Weekly beetle community richness", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1W/variable=richness/model_id=tg_temp_lm_all_sites?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/tslm.json b/catalog/scores/models/model_items/tslm.json new file mode 100644 index 0000000000..41d3714dd5 --- /dev/null +++ b/catalog/scores/models/model_items/tslm.json @@ -0,0 +1,234 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "tslm", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-102.4471, 39.7582], + [-82.0084, 29.676], + [-119.2575, 37.0597], + [-110.5871, 44.9501], + [-96.6242, 34.4442], + [-87.7982, 32.5415], + [-147.504, 65.1532], + [-105.5442, 40.035], + [-89.4737, 46.2097], + [-66.9868, 18.1135], + [-84.4374, 31.1854], + [-66.7987, 18.1741], + [-72.3295, 42.4719], + [-96.6038, 39.1051], + [-83.5038, 35.6904], + [-77.9832, 39.0956], + [-89.7048, 45.9983], + [-121.9338, 45.7908], + [-87.4077, 32.9604], + [-96.443, 38.9459], + [-122.1655, 44.2596], + [-149.143, 68.6698], + [-78.1473, 38.8943], + [-97.7823, 33.3785], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-111.7979, 40.7839], + [-82.0177, 29.6878], + [-111.5081, 33.751], + [-119.0274, 36.9559], + [-88.1589, 31.8534], + [-149.6106, 68.6307], + [-84.2793, 35.9574], + [-105.9154, 39.8914] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-09-15", + "end_datetime": "2023-10-20", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "temperature", + "oxygen" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "tslm" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "tslm" + }, + { + "rel": "self", + "href": "tslm.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tslm.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/tslm.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tslm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=tslm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tslm?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=tslm?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/models/model_items/xgboost_parallel.json b/catalog/scores/models/model_items/xgboost_parallel.json new file mode 100644 index 0000000000..ebf35d658c --- /dev/null +++ b/catalog/scores/models/model_items/xgboost_parallel.json @@ -0,0 +1,291 @@ +{ + "stac_version": "1.0.0", + "stac_extensions": [ + "https://stac-extensions.github.io/table/v1.2.0/schema.json" + ], + "type": "Feature", + "id": "xgboost_parallel", + "bbox": [ + [ + -156.6194, + 71.2824, + -66.7987, + 71.2824 + ] + ], + "geometry": { + "type": "MultiPoint", + "coordinates": [ + [-110.5391, 44.9535], + [-82.0084, 29.676], + [-87.7982, 32.5415], + [-89.4737, 46.2097], + [-84.4374, 31.1854], + [-89.7048, 45.9983], + [-99.1139, 47.1591], + [-99.2531, 47.1298], + [-82.0177, 29.6878], + [-88.1589, 31.8534], + [-122.3303, 45.7624], + [-156.6194, 71.2824], + [-71.2874, 44.0639], + [-78.0418, 39.0337], + [-147.5026, 65.154], + [-97.57, 33.4012], + [-104.7456, 40.8155], + [-99.1066, 47.1617], + [-145.7514, 63.8811], + [-87.8039, 32.5417], + [-81.4362, 28.1251], + [-83.5019, 35.689], + [-66.8687, 17.9696], + [-72.1727, 42.5369], + [-149.2133, 63.8758], + [-84.4686, 31.1948], + [-78.1395, 38.8929], + [-76.56, 38.8901], + [-119.7323, 37.1088], + [-119.2622, 37.0334], + [-110.8355, 31.9107], + [-89.5864, 45.5089], + [-103.0293, 40.4619], + [-87.3933, 32.9505], + [-119.006, 37.0058], + [-149.3705, 68.6611], + [-89.5857, 45.4937], + [-95.1921, 39.0404], + [-89.5373, 46.2339], + [-99.2413, 47.1282], + [-121.9519, 45.8205], + [-105.546, 40.2759], + [-106.8425, 32.5907], + [-96.6129, 39.1104], + [-96.5631, 39.1008], + [-67.0769, 18.0213], + [-88.1612, 31.8539], + [-80.5248, 37.3783], + [-109.3883, 38.2483], + [-105.5824, 40.0543], + [-100.9154, 46.7697], + [-99.0588, 35.4106], + [-112.4524, 40.1776], + [-84.2826, 35.9641], + [-81.9934, 29.6893], + [-155.3173, 19.5531] + ] + }, + "properties": { + "description": [], + "start_datetime": "2023-10-19", + "end_datetime": "2023-11-22", + "providers": [ + { + "url": "pending", + "name": "pending", + "roles": [ + "producer", + "processor", + "licensor" + ] + }, + { + "url": "https://www.ecoforecastprojectvt.org", + "name": "Ecoforecast Challenge", + "roles": [ + "host" + ] + } + ], + "license": "CC0-1.0", + "keywords": [ + "Forecasting", + "neon4cast", + "le", + "chla", + "gcc_90", + "nee", + "rcc_90", + "oxygen", + "temperature" + ], + "table:columns": [ + { + "name": "reference_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that the forecast was initiated (horizon = 0)" + }, + { + "name": "site_id", + "type": "string", + "description": "For forecasts that are not on a spatial grid, use of a site dimension that maps to a more detailed geometry (points, polygons, etc.) is allowable. In general this would be documented in the external metadata (e.g., alook-up table that provides lon and lat); however in netCDF this could be handled by the CF Discrete Sampling Geometry data model." + }, + { + "name": "datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime of the forecasted value (ISO 8601)" + }, + { + "name": "family", + "type": "string", + "description": "For ensembles: “ensemble.” Default value if unspecified For probability distributions: Name of the statistical distribution associated with the reported statistics. The “sample” distribution is synonymous with “ensemble.” For summary statistics: “summary.”If this dimension does not vary, it is permissible to specify family as a variable attribute if the file format being used supports this (e.g.,netCDF)." + }, + { + "name": "pub_datetime", + "type": "timestamp[us, tz=UTC]", + "description": "datetime that forecast was submitted" + }, + { + "name": "observation", + "type": "double", + "description": "observed value for variable" + }, + { + "name": "crps", + "type": "double", + "description": "crps forecast score" + }, + { + "name": "logs", + "type": "double", + "description": "logs forecast score" + }, + { + "name": "mean", + "type": "double", + "description": "mean forecast prediction" + }, + { + "name": "median", + "type": "double", + "description": "median forecast prediction" + }, + { + "name": "sd", + "type": "double", + "description": "standard deviation forecasts" + }, + { + "name": "quantile97.5", + "type": "double", + "description": "upper 97.5 percentile value of forecast" + }, + { + "name": "quantile02.5", + "type": "double", + "description": "upper 2.5 percentile value of forecast" + }, + { + "name": "quantile90", + "type": "double", + "description": "upper 90 percentile value of forecast" + }, + { + "name": "quantile10", + "type": "double", + "description": "upper 10 percentile value of forecast" + }, + { + "name": "project_id", + "type": "string", + "description": "unique project identifier" + }, + { + "name": "duration", + "type": "string", + "description": "temporal duration of forecast (hourly = PT1H, daily = P1D, etc.); follows ISO 8601 duration convention" + }, + { + "name": "variable", + "type": "string", + "description": "name of forecasted variable" + }, + { + "name": "model_id", + "type": "string", + "description": "unique model identifier" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 (ISO 2019) date of the predicted value; follows CF convention http://cfconventions.org/cf-conventions/cf-conventions.html#time-coordinate. This variable was called time before v0.5of the EFI convention. For time-integrated variables (e.g., cumulative net primary productivity), one should specify the start_datetime and end_datetime as two variables, instead of the single datetime. If this is not provided the datetime is assumed to be the MIDPOINT of the integration period." + } + ] + }, + "collection": "scores", + "links": [ + { + "rel": "collection", + "href": "../collection.json", + "type": "application/json", + "title": "xgboost_parallel" + }, + { + "rel": "root", + "href": "../../../catalog.json", + "type": "application/json", + "title": "Forecast Catalog" + }, + { + "rel": "parent", + "href": "../collection.json", + "type": "application/json", + "title": "xgboost_parallel" + }, + { + "rel": "self", + "href": "xgboost_parallel.json", + "type": "application/json", + "title": "Model Forecast" + } + ], + "assets": { + "1": { + "type": "application/json", + "title": "Model Metadata", + "href": "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/xgboost_parallel.json", + "description": "Use `jsonlite::fromJSON()` to download the model metadata JSON file. This R code will return metadata provided during the model registration.\n \n\n### R\n\n```{r}\n# Use code below\n\nmodel_metadata <- jsonlite::fromJSON(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/metadata/model_id/xgboost_parallel.json\")\n\n" + }, + "2": { + "type": "application/x-parquet", + "title": "Database Access for Daily latent heat flux", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=le/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "3": { + "type": "application/x-parquet", + "title": "Database Access for Daily Chlorophyll-a", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=chla/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "4": { + "type": "application/x-parquet", + "title": "Database Access for Daily Green chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=gcc_90/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "5": { + "type": "application/x-parquet", + "title": "Database Access for Daily Net ecosystem exchange", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=nee/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "6": { + "type": "application/x-parquet", + "title": "Database Access for Daily Red chromatic coordinate", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=rcc_90/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "7": { + "type": "application/x-parquet", + "title": "Database Access for Daily Dissolved oxygen", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=oxygen/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + }, + "8": { + "type": "application/x-parquet", + "title": "Database Access for Daily Water temperature", + "href": "s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org", + "description": "Use `arrow` for remote access to the database. This R code will return results for this variable and model combination.\n\n### R\n\n```{r}\n# Use code below\n\nall_results <- arrow::open_dataset(s3://anonymous@bio230014-bucket01/challenges/scores/parquet/duration=P1D/variable=temperature/model_id=xgboost_parallel?endpoint_override=sdsc.osn.xsede.org)\ndf <- all_results |> dplyr::collect()\n\n```\n \n\nYou can use dplyr operations before calling `dplyr::collect()` to `summarise`, `select` columns, and/or `filter` rows prior to pulling the data into a local `data.frame`. Reducing the data that is pulled locally will speed up the data download speed and reduce your memory usage.\n\n\n" + } + } +} diff --git a/catalog/scores/scores_models.R b/catalog/scores/scores_models.R index ff8c190136..09209db476 100644 --- a/catalog/scores/scores_models.R +++ b/catalog/scores/scores_models.R @@ -57,7 +57,7 @@ scores_date_range <- scores_data_df |> dplyr::summarise(min(date),max(date)) scores_min_date <- scores_date_range$`min(date)` scores_max_date <- scores_date_range$`max(date)` -build_description <- paste0("The catalog contains forecasts for the ", config$challenge_long_name,". The scores are summaries of the forecasts (i.e., mean, median, confidence intervals), matched observations (if available), and scores (metrics of how well the model distribution compares to observations). You can access the scores at the top level of the dataset where all models, variables, and dates that forecasts were produced (reference_datetime) are available. The code to access the entire dataset is provided as an asset. Given the size of the scores catalog, it can be time-consuming to access the data at the full dataset level. For quicker access to the scores for a particular model (model_id), we also provide the code to access the data at the model_id level as an asset for each model.") +build_description <- paste0("The catalog contains scores for the ", config$challenge_long_name,". The scores are summaries of the forecasts (i.e., mean, median, confidence intervals), matched observations (if available), and scores (metrics of how well the model distribution compares to observations). You can access the scores at the top level of the dataset where all models, variables, and dates that forecasts were produced (reference_datetime) are available. The code to access the entire dataset is provided as an asset. Given the size of the scores catalog, it can be time-consuming to access the data at the full dataset level. For quicker access to the scores for a particular model (model_id), we also provide the code to access the data at the model_id level as an asset for each model.") #variable_group <- c('test_daily') @@ -73,12 +73,16 @@ stac4cast::build_forecast_scores(table_schema = scores_theme_df, about_title = catalog_config$about_title, theme_title = "Scores", destination_path = catalog_config$scores_path, - aws_download_path = catalog_config$aws_download_path, + aws_download_path = catalog_config$aws_download_path_scores, link_items = stac4cast::generate_group_values(group_values = names(config$variable_groups)), thumbnail_link = catalog_config$scores_thumbnail, thumbnail_title = catalog_config$scores_thumbnail_title) ## create separate JSON for model landing page +## create separate JSON for model landing page +if (!dir.exists(paste0(catalog_config$scores_path,"models"))){ + dir.create(paste0(catalog_config$scores_path,"models")) +} stac4cast::build_group_variables(table_schema = scores_theme_df, #theme_id = 'models', @@ -89,24 +93,38 @@ stac4cast::build_group_variables(table_schema = scores_theme_df, description_string = build_description, about_string = catalog_config$about_string, about_title = catalog_config$about_title, + dashboard_string = catalog_config$dashboard_url, + dashboard_title = catalog_config$dashboard_title, theme_title = "Models", destination_path = paste0(catalog_config$scores_path,"models"), - aws_download_path = catalog_config$aws_download_path, - group_var_items = stac4cast::generate_model_items(model_list = theme_models$model_id)) + aws_download_path = catalog_config$aws_download_path_scores, + group_var_items = stac4cast::generate_model_items(model_list = theme_models$model_id), + thumbnail_link = 'pending', + thumbnail_title = 'pending', + group_var_vector = NULL, + group_sites = NULL) ## CREATE MODELS ## READ IN MODEL METADATA -# googlesheets4::gs4_deauth() -# -# registered_model_id <- googlesheets4::read_sheet(config$model_metadata_gsheet) +variable_gsheet <- gsheet2tbl(config$target_metadata_gsheet) -registered_model_id <- gsheet2tbl(config$model_metadata_gsheet) +#registered_model_id <- gsheet2tbl(config$model_metadata_gsheet) + +# read in model metadata and filter for the relevant project +registered_model_id <- gsheet2tbl(config$model_metadata_gsheet) |> + filter(`What forecasting challenge are you registering for?` == config$project_id) scores_sites <- c() ## loop over model ids and extract components if present in metadata table for (m in theme_models$model_id){ + + # make model items directory + if (!dir.exists(paste0(catalog_config$forecast_path,"models/model_items"))){ + dir.create(paste0(catalog_config$forecast_path,"models/model_items")) + } + print(m) model_date_range <- scores_data_df |> filter(model_id == m) |> dplyr::summarise(min(date),max(date)) model_min_date <- model_date_range$`min(date)` @@ -116,12 +134,22 @@ for (m in theme_models$model_id){ model_vars <- scores_data_df |> filter(model_id == m) |> distinct(variable) model_var_duration_df <- scores_data_df |> filter(model_id == m) |> distinct(variable,duration) |> - mutate(duration_name = ifelse(duration == 'P1D', 'daily', duration)) |> - mutate(duration_name = ifelse(duration == 'PT1H', 'hourly', duration_name)) |> + mutate(duration_name = ifelse(duration == 'P1D', 'Daily', duration)) |> + mutate(duration_name = ifelse(duration == 'PT1H', 'Hourly', duration_name)) |> mutate(duration_name = ifelse(duration == 'PT30M', '30min', duration_name)) |> - mutate(duration_name = ifelse(duration == 'P1W', 'weekly', duration_name)) + mutate(duration_name = ifelse(duration == 'P1W', 'Weekly', duration_name)) - model_var_duration_df$full_variable_name <- paste0(model_var_duration_df$variable, "_", model_var_duration_df$duration_name) + model_var_full_name <- model_var_duration_df |> + left_join((variable_gsheet |> + select(variable = `"official" targets name`, full_name = `Variable name`) |> + distinct(variable, .keep_all = TRUE)), by = c('variable')) + + model_sites <- scores_data_df |> filter(model_id == m) |> distinct(site_id) + + model_vars <- scores_data_df |> filter(model_id == m) |> distinct(variable) |> left_join(model_var_full_name, by = 'variable') + model_vars$var_duration_name <- paste0(model_vars$duration_name, " ", model_vars$full_name) + + #model_var_duration_df$full_variable_name <- paste0(model_var_duration_df$variable, "_", model_var_duration_df$duration_name) scores_sites <- append(scores_sites, stac4cast::get_site_coords(site_metadata = catalog_config$site_metadata_url, sites = model_sites$site_id)) @@ -129,7 +157,6 @@ for (m in theme_models$model_id){ idx = which(registered_model_id$model_id == m) stac4cast::build_model(model_id = m, - #theme_id = m, team_name = registered_model_id$`Long name of the model (can include spaces)`[idx], model_description = registered_model_id[idx,"Describe your modeling approach in your own words."][[1]], start_date = model_min_date, @@ -141,11 +168,11 @@ for (m in theme_models$model_id){ model_documentation = registered_model_id, destination_path = paste0(catalog_config$scores_path,"models/model_items"), aws_download_path = config$scores_bucket, # CHANGE THIS BUCKET NAME - #theme_title = m, collection_name = 'scores', thumbnail_image_name = NULL, table_schema = scores_theme_df, - table_description = scores_description_create) + table_description = scores_description_create, + full_var_df = model_vars) } @@ -164,18 +191,28 @@ for (i in 1:length(config$variable_groups)){ var_values <- config$variable_groups[[i]]$variable var_name <- config$variable_groups[[i]]$variable[j] + duration_name <- config$variable_groups[[i]]$duration[j] + + # match variable with full name in gsheet + var_name_full <- variable_gsheet[which(variable_gsheet$`"official" targets name` %in% var_values),1][[1]] + ## create new vector to store duration names duration_values <- config$variable_groups[[i]]$duration - duration_values[which(duration_values == 'P1D')] <- 'daily' - duration_values[which(duration_values == 'PT1H')] <- 'hourly' + duration_values[which(duration_values == 'P1D')] <- 'Daily' + duration_values[which(duration_values == 'PT1H')] <- 'Hourly' duration_values[which(duration_values == 'PT30M')] <- '30min' - duration_values[which(duration_values == 'P1W')] <- 'weekly' + duration_values[which(duration_values == 'P1W')] <- 'Weekly' - var_name_combined_list <- paste0(var_values, '_',duration_values) + var_name_combined_list <- paste0(duration_values,' ',var_name_full) ## CREATE VARIABLE GROUP JSONS group_description <- paste0('This page includes variables for the ',names(config$variable_groups[i]),' group.') + ## find group sites + find_group_sites <- scores_data_df |> + filter(variable %in% var_values) |> + distinct(site_id) + stac4cast::build_group_variables(table_schema = scores_theme_df, #theme_id = names(config$variable_groups[i]), table_description = scores_description_create, @@ -185,17 +222,24 @@ for (i in 1:length(config$variable_groups)){ description_string = group_description, about_string = catalog_config$about_string, about_title = catalog_config$about_title, + dashboard_string = catalog_config$dashboard_url, + dashboard_title = catalog_config$dashboard_title, theme_title = names(config$variable_groups[i]), destination_path = paste0(catalog_config$scores_path,names(config$variable_groups[i])), - aws_download_path = catalog_config$aws_download_path, - group_var_items = stac4cast::generate_group_variable_items(variables = var_name_combined_list)) + aws_download_path = catalog_config$aws_download_path_scores, + group_var_items = stac4cast::generate_group_variable_items(variables = var_name_combined_list), + thumbnail_link = config$variable_groups[[i]]$thumbnail_link, + thumbnail_title = config$variable_groups[[i]]$thumbnail_title, + group_var_vector = unique(var_values), + group_sites = find_group_sites$site_id) if (!dir.exists(paste0(catalog_config$scores_path,names(config$variable_groups)[i],'/',var_name_combined_list[j]))){ dir.create(paste0(catalog_config$scores_path,names(config$variable_groups)[i],'/',var_name_combined_list[j])) } var_data <- scores_data_df |> - filter(variable == var_name) + filter(variable == var_name, + duration == duration_name) var_date_range <- var_data |> dplyr::summarise(min(date),max(date)) var_min_date <- var_date_range$`min(date)` @@ -203,8 +247,14 @@ for (i in 1:length(config$variable_groups)){ var_models <- var_data |> distinct(model_id) + find_var_sites <- scores_data_df |> + filter(variable == var_name) |> + distinct(site_id) + var_description <- paste0('This page includes all models for the ',var_name_combined_list[j],' variable.') + var_path <- gsub('forecasts','scores',var_data$path[1]) + stac4cast::build_group_variables(table_schema = scores_theme_df, #theme_id = var_name_combined_list[j], table_description = scores_description_create, @@ -214,10 +264,16 @@ for (i in 1:length(config$variable_groups)){ description_string = var_description, about_string = catalog_config$about_string, about_title = catalog_config$about_title, + dashboard_string = catalog_config$dashboard_url, + dashboard_title = catalog_config$dashboard_title, theme_title = var_name_combined_list[j], destination_path = file.path(catalog_config$scores_path,names(config$variable_groups)[i],var_name_combined_list[j]), - aws_download_path = var_data$path[1], - group_var_items = stac4cast::generate_variable_model_items(model_list = var_models$model_id)) + aws_download_path = var_path, + group_var_items = stac4cast::generate_variable_model_items(model_list = var_models$model_id), + thumbnail_link = 'pending', + thumbnail_title = 'pending', + group_var_vector = NULL, + group_sites = find_var_sites$site_id) } diff --git a/catalog/thumbnail_plots/52760199990_d1a0f154fe_c.jpg b/catalog/thumbnail_plots/52760199990_d1a0f154fe_c.jpg new file mode 100644 index 0000000000..7a6bc67f7a Binary files /dev/null and b/catalog/thumbnail_plots/52760199990_d1a0f154fe_c.jpg differ diff --git a/challenge_configuration.yaml b/challenge_configuration.yaml index 29a3bf2be2..81d1993d36 100644 --- a/challenge_configuration.yaml +++ b/challenge_configuration.yaml @@ -45,13 +45,14 @@ variable_groups: catalog_config: about_string: 'https://projects.ecoforecast.org/neon4cast-docs/' about_title: 'NEON Ecological Forecasting Challenge Documentation' - scores_thumbnail: "https://raw.githubusercontent.com/eco4cast/neon4cast-ci/main/catalog/thumbnail_plots/51629805865_0ef01ffbbc_c.jpg" + scores_thumbnail: "https://raw.githubusercontent.com/eco4cast/neon4cast-ci/main/catalog/thumbnail_plots/52760199990_d1a0f154fe_c.jpg" scores_thumbnail_title: "NEON Buoy Image" forecasts_thumbnail: "https://raw.githubusercontent.com/eco4cast/neon4cast-ci/main/catalog/thumbnail_plots/51629805865_0ef01ffbbc_c.jpg" forecasts_thumbnail_title: "NEON Buoy Image" forecast_path: 'catalog/forecasts/' scores_path: 'catalog/scores/' - aws_download_path: 'bio230014-bucket01/challenges/forecasts/parquet/' + aws_download_path_forecasts: 'bio230014-bucket01/challenges/forecasts/parquet/' + aws_download_path_scores: 'bio230014-bucket01/challenges/scores/parquet/' host_url: "https://www.ecoforecastprojectvt.org" host_name: "Ecoforecast Challenge" bbox: @@ -63,6 +64,6 @@ catalog_config: base_image_path: 'https://data.ecoforecast.org/neon4cast-catalog' citation_doi: "https://doi.org/10.1002/fee.2616" citation_text: "Thomas, R.Q., C. Boettiger, C.C. Carey, M.C. Dietze, L.R. Johnson, M.A. Kenney, J.S. Mclachlan, J.A. Peters, E.R. Sokol, J.F. Weltzin, A. Willson, W.M. Woelmer, and Challenge Contributors. 2023. The NEON Ecological Forecasting Challenge. Frontiers in Ecology and Environment 21: 112-113." - dashboard_url: "https://projects.ecoforecast.org/neon4cast-dashboard/" + dashboard_url: "https://projects.ecoforecast.org/neon4cast-docs/" dashboard_title: "NEON Forecast Challenge Dashboard" site_metadata_url: 'https://raw.githubusercontent.com/eco4cast/neon4cast-ci/main/neon4cast_field_site_metadata.csv' diff --git a/neon4cast_field_site_metadata.csv b/neon4cast_field_site_metadata.csv index 57cd4de049..506a8fe751 100644 --- a/neon4cast_field_site_metadata.csv +++ b/neon4cast_field_site_metadata.csv @@ -1,4 +1,4 @@ -field_domain_id,field_site_id,field_site_name,terrestrial,aquatics,phenology,ticks,beetles,phenocam_code,phenocam_roi,phenocam_vegetation,field_site_type,field_site_subtype,field_colocated_site,field_site_host,field_site_url,field_nonneon_research_allowed,field_access_details,field_neon_field_operations_office,field_latitude,field_longitude,field_geodetic_datum,field_utm_northing,field_utm_easting,field_utm_zone,field_site_county,field_site_state,field_site_country,field_mean_elevation_m,field_minimum_elevation_m,field_maximum_elevation_m,field_mean_annual_temperature_C,field_mean_annual_precipitation_mm,field_dominant_wind_direction,field_mean_canopy_height_m,field_dominant_nlcd_classes,field_domint_plant_species,field_usgs_huc,field_watershed_name,field_watershed_size_km2,field_lake_depth_mean_m,field_lake_depth_max_m,field_tower_height_m,field_usgs_geology_unit,field_megapit_soil_family,field_soil_subgroup,field_avg_number_of_green_days,field_avg_grean_increase_doy,field_avg_green_max_doy,field_avg_green_decrease_doy,field_avg_green_min_doy,field_phenocams,field_number_tower_levels,neon_url +field_domain_id,field_site_id,field_site_name,terrestrial,aquatics,phenology,ticks,beetles,phenocam_code,phenocam_roi,phenocam_vegetation,field_site_type,field_site_subtype,field_colocated_site,field_site_host,field_site_url,field_nonneon_research_allowed,field_access_details,field_neon_field_operations_office,latitude,longitude,field_geodetic_datum,field_utm_northing,field_utm_easting,field_utm_zone,field_site_county,field_site_state,field_site_country,field_mean_elevation_m,field_minimum_elevation_m,field_maximum_elevation_m,field_mean_annual_temperature_C,field_mean_annual_precipitation_mm,field_dominant_wind_direction,field_mean_canopy_height_m,field_dominant_nlcd_classes,field_domint_plant_species,field_usgs_huc,field_watershed_name,field_watershed_size_km2,field_lake_depth_mean_m,field_lake_depth_max_m,field_tower_height_m,field_usgs_geology_unit,field_megapit_soil_family,field_soil_subgroup,field_avg_number_of_green_days,field_avg_grean_increase_doy,field_avg_green_max_doy,field_avg_green_decrease_doy,field_avg_green_min_doy,field_phenocams,field_number_tower_levels,neon_url D16,ABBY,Abby Road NEON,1,0,1,0,1,NEON.D16.ABBY.DP1.00033,EN_1000,evergreen needleleaf,Gradient Terrestrial,,,Washington Department of Natural Resources,https://www.dnr.wa.gov/,Limited,Reseachers should coordinate with the site manager and submit a site research permit.,Domain 16 Support Facility,45.762439,-122.33032,WGS84,5067870.429,552075.5426,10N,Clark,WA,USA,365,,708,10,2451,,34m (in surrounding non-logged area),Evergreen Forest|Grassland/Herbaceous|Shrub/Scrub,Gaultheria shallon (salal)|Pseudotsuga menziesii (douglas fir)|Pteridium aquilinum (bracken fern),,,,,,19,WAEOv1b;0,,Andic Humudepts,190,110,165,205,300,[Tower top](https://phenocam.sr.unh.edu/webcam/sites/NEON.D16.ABBY.DP1.00033)|[Tower bottom](https://phenocam.sr.unh.edu/webcam/sites/NEON.D16.ABBY.DP1.00042),5,https://www.neonscience.org/field-sites/abby D10,ARIK,Arikaree River NEON,0,1,0,0,0,,,,Core Aquatic,Wadeable Stream,,The Nature Conservancy,https://www.nature.org/en-us/get-involved/how-to-help/places-we-protect/fox-ranch/,Yes,Reseachers should coordinate with the site manager.,Domain 10/13 Support Facility,39.758206,-102.44715,WGS84,4404042.549,718694.3752,13N,Yuma,CO,USA,1179,,,10.4,452,,,Emergent Herbaceous Wetlands|Grassland/Herbaceous|Woody Wetlands,,[h10250001](https://water.usgs.gov/lookup/getwatershed?10250001),Lower Sappa,2631.8,,,,COTo;0|COQe;0,,,,,,,,[Land-water interface](https://phenocam.sr.unh.edu/webcam/sites/NEON.D10.ARIK.DP1.20002),,https://www.neonscience.org/field-sites/arik D03,BARC,Lake Barco NEON,0,1,0,0,0,,,,Core Aquatic,Lake,OSBS,University of Florida Foundation,https://ordway-swisher.ufl.edu/ResearchUse.aspx,Yes,This area is a very active research community and will required a site research permit.,Domain 03 Support Facility,29.675982,-82.008414,WGS84,3283362.548,402358.9734,17N,Putnam,FL,USA,27,,,20.9,1308,,,Shrub/Scrub,,[h03080103](https://water.usgs.gov/lookup/getwatershed?03080103),Lower St. Johns,31.3,3.3,6.7,,FLPOc;0,,,,,,,,[Land-water interface](https://phenocam.sr.unh.edu/webcam/sites/NEON.D03.BARC.DP1.20002),,https://www.neonscience.org/field-sites/barc