Changeset 0b00607 in flex_extract.git for for_developers/Sphinx/source/installation.rst
- Timestamp:
- Jul 29, 2019, 8:23:57 AM (5 years ago)
- Branches:
- master, ctbto, dev
- Children:
- bc27d19
- Parents:
- 41c9dbc
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
for_developers/Sphinx/source/installation.rst
r41c9dbc r0b00607 67 67 68 68 **Public user**: 69 To be able to download all intended public datasets with ``flex_extract`` such as **ERA-Interim**, **CERA-20C** and **ERA5**, the public user has to create 2 accounts. 70 At first, registration at the ECMWF website by filling out this `registration form`_ is needed to be able to retrieve *ERA-Interim* and *CERA-20C* data. For the retrievement of *ERA5* a registration at the `Copernicus Climate Data Store <https://cds.climate.copernicus.eu/user/register>`_ is needed in addition. 69 To be able to download public datasets with ``flex_extract`` such as **ERA-Interim** and **CERA-20C** (**ERA5** is not supported via ECMWF Web API anymore), the public user has to create an account at ECMWF. 70 Use the registration at the ECMWF website by filling out this `registration form`. 71 72 .. note:: 73 74 In the future retrievement of *ERA5* will be possible via the CDS API for public users also. Then a registration at the `Copernicus Climate Data Store <https://cds.climate.copernicus.eu/user/register>`_ is needed in addition. 71 75 72 76 … … 77 81 .. _ref-licence: 78 82 79 Agree on Licences for Public Datasets83 Agree on licences for public datasets 80 84 ===================================== 81 85 … … 123 127 .. _ref-requirements: 124 128 125 Environment Requirements129 Environment requirements 126 130 ======================== 127 131 … … 173 177 .. _ref-remote-mode: 174 178 175 Remote Mode179 Remote mode 176 180 ----------- 177 181 178 182 .. _ref-req-remote: 179 183 180 Remote Environment Requirements184 Remote environment requirements 181 185 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 182 186 … … 196 200 .. _ref-prep-remote: 197 201 198 Prepare Remote Environment202 Prepare remote environment 199 203 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 200 204 … … 206 210 .. _ref-install-remote: 207 211 208 Remote Installation212 Remote installation 209 213 ^^^^^^^^^^^^^^^^^^^ 210 214 … … 266 270 ``flex_extract`` root directory for installation. 267 271 Before executing it, it is necessary to adapt some parameters from ``setup.sh`` 268 described in : ref:`ref-setup`.272 described in :doc:`Documentation/Input/setup`. 269 273 270 274 Open ``setup.sh`` with your editor and adapt the values: … … 275 279 | .. code-block:: bash | .. code-block:: bash | 276 280 | | | 277 | ... | ... | 281 | ... | ... | 278 282 | # -----------------------------------------| # -----------------------------------------| 279 283 | # AVAILABLE COMMANDLINE ARGUMENTS TO SET | # AVAILABLE COMMANDLINE ARGUMENTS TO SET | … … 290 294 | JOB_TEMPLATE='job.template' | JOB_TEMPLATE='job.template' | 291 295 | CONTROLFILE='CONTROL_EA5' | CONTROLFILE='CONTROL_EA5' | 292 | ... | ... | 296 | ... | ... | 293 297 +----------------------------------------------+----------------------------------------------+ 294 298 … … 359 363 .. _ref-gateway-mode: 360 364 361 Gateway Mode365 Gateway mode 362 366 ------------ 363 367 … … 365 369 .. _ref-req-gateway: 366 370 367 Gateway Environment Requirements371 Gateway environment requirements 368 372 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 369 373 … … 379 383 .. _ref-prep-gateway: 380 384 381 Prepare Gateway Environment385 Prepare gateway environment 382 386 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 383 387 384 388 The easiest way to install all required packages is to use the package management system of your Linux distribution. To do so, it is necessary to use a user with admin rights. 385 The installation was tested on a * Debian GNU/Linux buster/sid* and an *Ubuntu 18.04 Bionic Beaver* system.389 The installation was tested on a *GNU/Linux Debian buster* and an *Ubuntu 18.04 Bionic Beaver* system. 386 390 387 391 .. code-block:: sh … … 389 393 # On a Linux Debian or Ubuntu system do 390 394 # (if not already available): 391 sudo apt -PVinstall python3392 sudo apt -PVinstall pip393 pipinstall genshi394 pipinstall numpy395 apt-get install python3 396 apt-get install pip 397 apt-get install genshi 398 apt-get install numpy 395 399 396 400 397 401 .. _ref-test-gateway: 398 402 399 Test Gateway Environment403 Test gateway environment 400 404 ^^^^^^^^^^^^^^^^^^^^^^^^ 401 405 … … 414 418 .. _ref-install-gateway: 415 419 416 Gateway Installation420 Gateway installation 417 421 ^^^^^^^^^^^^^^^^^^^^ 418 422 … … 431 435 Your passcode: *** 432 436 433 ``Flex_extract`` will be run on an ECMWF server which makes the setup the same as for the **remote mode**. In the ``setup.sh`` script :ref:`[ref] <ref-setup>`, select the ``Makefile.gfortran`` for the ``CONVERT2`` Fortran program and the ECMWF server (*target*) you would like to use.437 ``Flex_extract`` will be run on an ECMWF server which makes the setup the same as for the **remote mode**. In the ``setup.sh`` script `[ref] <Documentation/Input/setup.html>`_, select the ``Makefile.gfortran`` for the ``CONVERT2`` Fortran program and the ECMWF server (*target*) you would like to use. 434 438 The job script, send to the job queue via the ECaccess software, selects again automatically the correct libraries from the module system. For enableing the file transfer you have to set the *ECUID*, *ECGID*, *GATEWAY* and *DESTINATION* parameter values. 435 439 … … 506 510 .. _ref-local-mode: 507 511 508 Local Mode512 Local mode 509 513 ---------- 510 514 … … 513 517 .. _ref-req-local: 514 518 515 Local Environment Requirements519 Local environment requirements 516 520 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 517 521 … … 536 540 .. _ref-prep-local: 537 541 538 Prepare Local Environment542 Prepare local environment 539 543 ^^^^^^^^^^^^^^^^^^^^^^^^^ 540 544 … … 546 550 # On a Linux Debian or Ubuntu system do 547 551 # (if not already available): 548 sudo apt -PV install python3549 sudo apt -PVinstall pip550 sudo apt -PVinstall gfortran551 sudo apt -PVinstall fftw3-dev552 sudo apt -PVinstall libeccodes-dev553 sudo apt -PVinstall libemos-dev554 sudo apt -PVinstall python3-eccodes555 pipinstall genshi556 pipinstall numpy552 apt-get install python3 (usually available on normal Linux systems) 553 apt-get install pip 554 apt-get install gfortran 555 apt-get install fftw3-dev 556 apt-get install libeccodes-dev 557 apt-get install libemos-dev 558 apt-get install python3-eccodes 559 apt-get install genshi 560 apt-get install numpy 557 561 pip install cdsapi 558 562 pip install ecmwf-api-client … … 571 575 The CDS API (cdsapi) and the ECMWF Web API (ecmwf-api-client) have both to be installed since ERA5 can only be retrieved with the ``CDS API`` and all other datasets with the ``ECMWF Web API``. 572 576 577 .. note:: 578 579 Since **public users** currently don't have access to the full *ERA5* dataset they can skip the installation of the ``CDS API``. 580 573 581 Both user groups have to provide key's with their credentials for the Web API's in their home directory. Therefore, follow these instructions: 574 582 … … 582 590 .. _ref-test-local: 583 591 584 Test Local Environment592 Test local environment 585 593 ^^^^^^^^^^^^^^^^^^^^^^ 586 594 … … 615 623 """"""""""""" 616 624 617 **Member user** 618 Please use this piece of python code: 619 620 .. code-block:: python 621 622 from ecmwfapi import ECMWFService 625 626 +----------------------------------------------------------+----------------------------------------------------------+ 627 |Please use this piece of python code for **Member user**: |Please use this piece of python code for **Public user**: | 628 +----------------------------------------------------------+----------------------------------------------------------+ 629 |.. code-block:: python |.. code-block:: python | 630 | | | 631 | from ecmwfapi import ECMWFService | from ecmwfapi import ECMWFDataServer | 632 | | | 633 | server = ECMWFService('mars') | server = ECMWFDataServer() | 634 | | | 635 | server.retrieve({ | server.retrieve({ | 636 | 'stream' : "oper", | 'stream' : "enda", | 637 | 'levtype' : "sfc", | 'levtype' : "sfc", | 638 | 'param' : "165.128/166.128/167.128", | 'param' : "165.128/166.128/167.128", | 639 | 'dataset' : "interim", | 'dataset' : "cera20c", | 640 | 'step' : "0", | 'step' : "0", | 641 | 'grid' : "0.75/0.75", | 'grid' : "1./1.", | 642 | 'time' : "00/06/12/18", | 'time' : "00/06/12/18", | 643 | 'date' : "2014-07-01/to/2014-07-31", | 'date' : "2000-07-01/to/2000-07-31", | 644 | 'type' : "an", | 'type' : "an", | 645 | 'class' : "ei", | 'class' : "ep", | 646 | 'target' : "download_erainterim_ecmwfapi.grib" | 'target' : "download_cera20c_ecmwfapi.grib" | 647 | }) | }) | 648 +----------------------------------------------------------+----------------------------------------------------------+ 649 623 650 624 server = ECMWFService('mars')625 626 server.retrieve({627 'stream' : "oper",628 'levtype' : "sfc",629 'param' : "165.128/166.128/167.128",630 'dataset' : "interim",631 'step' : "0",632 'grid' : "0.75/0.75",633 'time' : "00/06/12/18",634 'date' : "2014-07-01/to/2014-07-31",635 'type' : "an",636 'class' : "ei",637 'target' : "download_erainterim_ecmwfapi.grib"638 })639 640 641 **Public user**642 Please use this piece of python code:643 644 .. code-block:: python645 646 from ecmwfapi import ECMWFDataServer647 648 server = ECMWFDataServer()649 650 server.retrieve({651 'stream' : "enda",652 'levtype' : "sfc",653 'param' : "165.128/166.128/167.128",654 'dataset' : "cera20c",655 'step' : "0",656 'grid' : "1./1.",657 'time' : "00/06/12/18",658 'date' : "2000-07-01/to/2000-07-31",659 'type' : "an",660 'class' : "ep",661 'target' : "download_cera20c_ecmwfapi.grib"662 })663 651 664 652 CDS API … … 667 655 Since ERA5 extraction with CDS API might take some time due to the very high number of requests, you can start by retrieving some online stored pressure levels (not from MARS). This is usually much faster and gives a quick result to find out if the web API works: 668 656 669 **All users** 670 Please use this piece of python code: 671 672 .. code-block:: python 673 674 import cdsapi 675 676 c = cdsapi.Client() 677 678 c.retrieve("reanalysis-era5-pressure-levels", 679 { 680 "variable": "temperature", 681 "pressure_level": "1000", 682 "product_type": "reanalysis", 683 "year": "2008", 684 "month": "01", 685 "day": "01", 686 "time": "12:00", 687 "format": "grib" 688 }, 689 "download_cdsapi.grib") 657 Please use this piece of python code to retrieve a small sample of *ERA5* pressure levels: 658 659 .. code-block:: python 660 661 import cdsapi 662 663 c = cdsapi.Client() 664 665 c.retrieve("reanalysis-era5-pressure-levels", 666 { 667 "variable": "temperature", 668 "pressure_level": "1000", 669 "product_type": "reanalysis", 670 "year": "2008", 671 "month": "01", 672 "day": "01", 673 "time": "12:00", 674 "format": "grib" 675 }, 676 "download_cdsapi.grib") 690 677 691 678 692 679 Afterwards, when you know that the CDS API generally works, you can try to extract some 693 data from the MARS archive. From the latest experience this can take a while. 694 695 **Member user** 696 Please use this piece of python code: 697 698 .. code-block:: python 699 700 import cdsapi 701 702 c = cdsapi.Client() 703 704 c.retrieve('reanalysis-era5-complete', 705 { 706 'class' : 'ea', 707 'expver' : '1', 708 'stream' : 'oper', 709 'type' : 'fc', 710 'step' : '3/to/12/by/3', 711 'param' : '130.128', 712 'levtype' : 'ml', 713 'levelist': '135/to/137', 714 'date' : '2013-01-01', 715 'time' : '06/18', 716 'area' : '50/-5/40/5', 717 'grid' : '1.0/1.0', 718 'format' : 'grib', 719 }, 'download_era5_cdsapi.grib') 720 721 722 **Public user** 680 data from the MARS archive. From the latest experience we know that this can take a while. 681 682 .. **Member user** 683 684 Please use this piece of python code to retrieve a small *ERA5* data sample as a **member user**! The **public user** doesn't have access to the full *ERA5* dataset! 685 686 .. code-block:: python 687 688 import cdsapi 689 690 c = cdsapi.Client() 691 692 c.retrieve('reanalysis-era5-complete', 693 { 694 'class' : 'ea', 695 'expver' : '1', 696 'stream' : 'oper', 697 'type' : 'fc', 698 'step' : '3/to/12/by/3', 699 'param' : '130.128', 700 'levtype' : 'ml', 701 'levelist': '135/to/137', 702 'date' : '2013-01-01', 703 'time' : '06/18', 704 'area' : '50/-5/40/5', 705 'grid' : '1.0/1.0', 706 'format' : 'grib', 707 }, 'download_era5_cdsapi.grib') 708 709 710 .. ********************** COMMENTED OUT FOR FUTURE 711 ********************** PUBLIC RETRIEVAL IS CURRENTLY NOT ACCESSIBLE 712 713 **Public user** 723 714 Please use this piece of python code: 724 715 … … 754 745 .. _ref-install-local: 755 746 756 Local Installation747 Local installation 757 748 ^^^^^^^^^^^^^^^^^^ 758 749 … … 763 754 the ``ifort`` compiler: 764 755 765 * Makefile.local.gfortran766 * Makefile.local.ifort756 * Makefile.local.gfortran 757 * Makefile.local.ifort 767 758 768 759 They can be found in the path ``flex_extract_vX.X/source/fortran``, where … … 928 919 929 920 930 Mars request test931 -----------------932 933 IN PREPARATION ...934 921 935 922 Full test 936 923 --------- 937 924 938 IN PREPARATION ...939 940 925 see :doc:`quick_start` 926 927
Note: See TracChangeset
for help on using the changeset viewer.