Giter Club home page Giter Club logo

dedop-conda's Introduction

Build Status Build status codecov Documentation Status

DeDop³

DeDop is a User Configurable Tool for Processing Delay Doppler Altimeter Data. "DeDop" stands for Delay Doppler (Altimeter) Processor.

For more information about the project please visit www.dedop.org. For more information about the software have a look into the DeDop User Manual.

Contents

  • setup.py - main build script to be run with Python 3.5
  • dedop/ - main package and production code
  • test/ - test package and test code
  • docs/ - documentation in Sphinx/RST format
  • notebooks/ - some IPython notebooks demonstrating the use of the DeDop Python API

Installation using installer (recommended)

Instructions on how to get the installer and how to install are available here.

Installation from Sources

Using Conda

We recommend installing DeDop into an isolated Python 3 environment, because this approach avoids clashes with existing versions of DeDop's 3rd-party module requirements. We recommend using Conda (Miniconda or Anaconda) which will usually also avoid platform-specific issues caused by module native binaries.

Creating an isolated environment for DeDop. This will require around 2.2 GB disk space on Linux/Darwin and and 1.2 GB on Windows. To create a new DeDop environment dedop in your Anaconda/Miniconda installation directory, type:

$ conda env create --file environment.yml

If you want the environment to be installed in another location, e.g. due to disk space limitations, type:

$ conda env create --file environment.yml --prefix some/other/location/for/dedop

Next step is to activate the new environment. On Linux/Darwin type:

$ source activate dedop

In case you used another location use it instead of the name dedop. Windows users can omit the source command and just type

> activate dedop

You can now safely install and run DeDop sources into the new dedop environment.

(dedop) $ python setup.py develop

To permanently install DeDop into the Python environment (not recommended while in development mode!), type:

(dedop) $ python setup.py install

Using Standard Python

DeDop requires Python 3.5+.

DeDop can be run from sources directly, once the following module requirements are resolved:

  • numpy
  • scipy
  • netcdf4
  • numexpr
  • pyproj

If you like to perform L1B product analysis tasks with DeDop using an IPython Notebook, then also install:

  • jupyter
  • ipywidgets
  • matplotlib
  • bokeh

The most up-to-date and complete list of module requirements is found in the project's environment.yml file.

To install and run DeDop from sources directly, type:

$ python setup.py develop

To permanently install DeDop into Python (not recommended while in development mode!), type:

$ python setup.py install

Getting started

Command Line Interface

To test the installation from source, first run the DeDop command-line interface. Type

$ dedop -h

More examples are available here http://dedop-core.readthedocs.io/en/latest/manual.html#examples

Web API

This is required by dedop-studio. To start the web API, type:

$ dedop-webapi start

A random port number will be assigned unless explicitly specified on the command like so:

$ dedop-webapi --port 2999 start

To check if the wbe API has started successfully, open your browser and enter the web API URL. The following response should be displayed:

{"status": "ok", "content": {"name": "dedop-webapi", "version": "1.0.0", "timestamp": "2017-05-16"}}

To stop, go to [host_name]:[port_number]/exit on the browser. For example:

127.0.0.1:2999/exit

License

DeDop is distributed under the terms and conditions of the MIT license.

dedop-conda's People

Contributors

forman avatar hans-permana avatar mzuehlke avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

dedop-conda's Issues

Improve package dependency management

This is based on the guideline written by @forman in CCI-Tools project (CCI-Tools/cate#139)

Dependencies should be expressed such that PACKAGE>=MAJOR.MINOR[.PATCH]<MAJOR.(MINOR+1) achieving API compatibility according to SemVer. PATCH should ideally be omiited if not required for some reason.

In only rare cases we should rely on a specific version such that PACKAGE=MAJOR.MINOR.PATCH. For example, this could be the consequence of fixing a dependency conflict. In any of such cases, the reason for doing so must be documented (e.g. comment line).

Any transitive dependencies should not be specified at all unless there is special need for this. A dependency is non-transitive if we import it explicitly in Python code or we need it for some special behaviour (e.g. dask used by xarray) or it provides a special, dynamically loaded plugin.

These are the places where dependencies are declared. All configurations should share the same dependency specifications:

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.