Git Product home page Git Product logo

cloudmask's People

Contributors

alicecima avatar espg avatar facusapienza21 avatar fperez avatar jonathan-taylor avatar tsnow03 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

cloudmask's Issues

Missing data in some ATL06 h5 files

The function read_atl06_fromfile in utils_atl06 access an h5 file and returns the data frames. However, some of the h5 files do not have all the features we request included, leading to the following problem:

Screen Shot 2020-11-03 at 12 25 43 AM

I am still not sure if this is a problem of the data itself, in icepyx, or in the way I retrieve ATL06 data. This may also be related to this another issue, since I am not specifying the name of the granules I want to access.

For now, I will add a try command in read_atl06_fromfile to avoid this problem, but probably this is no the best solution.

Name of variables in ATL06

The name of some features in the ATL06 dictionary have been changed in order to have a more descriptive name or sometimes a shorter name. This is in utils_atl06.py. For example:

Screen Shot 2020-09-29 at 10 07 39 PM

Should the names of the variables in the dataframes coincide with the ones in the ATL06 data dictonary?

New algorithm for assimilation of datasets on grids

The current assimilation of ICESat-2 with VIIRS is done via the Ball Tree method. The function 'associate' in 'utils_viirs.py' just calls the method Ball Tree on Sklearn:

Screen Shot 2020-09-30 at 12 51 31 AM

In the particular case where (at least) one of the datasets consists on a grid of points (eg, satellite images) the assimilation can be done in a more efficient way, exploiting the structure of the grid.

This algorithm probably is useful in more general application and the method could be an important contribution for other teams to.

Discrepancies between times using astropy and datetime

The following two functions can be used to compute a time object given the seconds in GPS, that is, the total seconds since 1980-06-01 00:00. The first function uses the package astropy and the second datetime.

Screen Shot 2020-11-10 at 4 02 59 PM

However, we can see that they result in different times from the same timestamp (in this case, 0 seconds should match with 1980-06-01 00:00):

Screen Shot 2020-11-10 at 4 05 37 PM

Inconsistencies on the order of latitude and longitude

The haversine distance from sklearn we use to compute the distance between in 'CloudMask.ipynb' different grids takes pairs of the form [latitude, longitude]. However, in the code the grids are build as lists of the form [longitude, latitude].

Also, when we check the filter of spatial distmatch < tolerance, this tolerance is in the wrong units.

Parallelization

Parallelize the for loops in VIIRS_Bash.ipynb and in the assimilation between climate and ICESat-2 data.

Problem with subletting of variables with the last version of icepyx

As it was already reported in one of the issues in icepyx, we received the following error after we try to select the variables in ATL06 we want to retrieve:

Screen Shot 2020-11-02 at 12 20 40 AM

In utils_atl06 we found the code used to retrieve the ATL06 data and create the associated Pandas data frames. If now we comment the lines where we select the name of the variables in the ATL06 product we want to sublet, then we don't received that error anymore:

Screen Shot 2020-11-02 at 12 23 09 AM

Furthermore, it seems that without the subletting, we retrieve all the requiered information in the ATL06 product. However, we would like to ask for specific variables, in order no to download features that we are not going to use.

Consistency with the new version of Icepyx

In the last version of Icepyx, the way to obtain the avail granules has changed. Now, we have to do

import icepyx as ipx

region_a = ipx.Query(short_name, spatial_extent, date_range)

See an example here. We need to change the function that retrieves the ATL data to this and also the notebooks that import icepyx.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.