Skip to content

Instantly share code, notes, and snippets.

View prl900's full-sized avatar

Pablo Rozas Larraondo prl900

View GitHub Profile
import numpy as np
from osgeo import gdal
import scipy.optimize as opt
import scipy.ndimage
from PIL import Image
import netCDF4
import json
import os
import sys
import datetime
{
"Conventions": "CF-1.6, ACDD-1.3",
"title": "Fractional cover - MODIS, CSIRO Land and Water algorithm",
"summary": "Vegetation fractional cover represents the exposed proportion of Photosynthetic Vegetation (PV), Non-Photosynthetic Vegetation (NPV) and Bare Soil (BS) within each pixel. In forested canopies the photosynthetic or non-photosynthetic portions of trees may obscure those of the grass layer and/or bare soil. The MODIS Fractional Cover product is derived from the MODIS Nadir BRDF-Adjusted Reflectance (NBAR) product (MCD43A4, collection 5). A suite of derivative are also produced, namely total vegetation cover (PV+NPV), monthly fractional cover and total vegetation cover, monthly anomaly of total cover against the time series, and three-monthly total cover difference. MODIS fractional cover has been validated for Australia. ",
"license": "Creative Commons BY 4.0 - Rights: Copyright 2008-2016 CSIRO. Rights owned by the Commonwealth Scientific and Industrial Research Organisation (CSI
@prl900
prl900 / Paper
Created July 6, 2017 07:35
Estos son los resultados que presentamos en el paper
{"output":"metar_wind_spd",
"input":[{"name":"gfs_wind_dir","type":"cir"},
{"name":"gfs_wind_spd","type":"lin"},
{"name":"gfs_rh","type":"lin"}]}
{"output":"metar_wind_spd",
"input":[{"name":"gfs_uwind_spd","type":"lin"},
{"name":"gfs_vwind_spd","type":"lin"},
{"name":"gfs_rh","type":"lin"}]}
@prl900
prl900 / Lozano
Created July 6, 2017 07:36
Esto es lo que proponia probar Lozano en su mail
{"output":"metar_wind_spd",
"input":[{"name":"gfs_wind_dir","type":"cir"},
{"name":"gfs_rh","type":"lin"}]}
{"output":"metar_wind_spd",
"input":[{"name":"gfs_u","type":"lin"},
{"name":"gfs_v","type":"lin"},
{"name":"gfs_rh","type":"lin"}]}
datasets/eddt_clean.csv
@prl900
prl900 / winddir_time
Created July 6, 2017 07:37
Este muestra dos variables circulares
{"output":"metar_wind_spd",
"input":[{"name":"gfs_wind_dir","type":"cir"},
{"name":"time","type":"cir"},
{"name":"gfs_wind_spd","type":"lin"},
{"name":"gfs_rh","type":"lin"}]}
{"output":"metar_wind_spd",
"input":[{"name":"u_time","type":"cir"},
{"name":"v_time","type":"cir"},
{"name":"gfs_uwind_spd","type":"lin"},
import argparse
import datetime
import functools
import glob
import json
import netCDF4
import numpy as np
import os.path
@prl900
prl900 / results.md
Last active July 17, 2017 01:16
Cross validation results for the circular tree paper

Experiment 1

  • Output: metar_wind_spd

  • Input: [gfs_wind_spd, gfs_wind_dir, gfs_temp, time]

Airport Method 1000 500 250 100 50
EDDT Linear 1.3006 1.2544 1.2246 1.2096 1.2230
Lund 1.2870 1.2310 1.2002 1.2172 1.2616
Circular 1.2870 1.2357 1.2155 1.2094 1.2205

Experiment 1

  • Output: metar_wind_spd

  • Input: [gfs_wind_spd, gfs_wind_dir, gfs_temp, time]

Airport Method 1000 500 250 100 50
EDDT Linear 0.6954 0.7079 0.7149 0.7184 0.7165
Lund 0.7000 0.7137 0.7208 0.7169 0.7065
Circular 0.7000 0.7129 0.7175 0.7193 0.7164
package main
import (
"fmt"
"github.com/golang/geo/s2"
)
func main() {
// Definition of LatLng slice
@prl900
prl900 / go2_feature.md
Last active August 27, 2019 11:11
Go 2 proposal idea

Go 2: Model for distributed systems

Go has a very nice concurrency model which is based on light goroutines which can communicate through channels. This model provides a great abstraction which facilitates the design and synchronisation of concurrent processes. Go programs can naturally scale and fully utilise the resources on a machine.

However, there are some cases where a single machine, even the most powerful in the market, is not enough to solve certain problems. The required work in these cases, can be splitted and distributed between different nodes which can work colaboratively to compute the result. Go's concurrency model is intended to solve communication between goroutines within a single process but, as it is implemented now, it cannot be used for communicating between processes or nodes.

There have been attemps to extend the concept of channels to communicate with external goroutines, such as netchans. The Go team worked actively in the design and implementation of this concept but unfortu