CLIMATE-551 - Drop old RCMET toolkit from codebase
Project: http://git-wip-us.apache.org/repos/asf/climate/repo Commit: http://git-wip-us.apache.org/repos/asf/climate/commit/8c142c35 Tree: http://git-wip-us.apache.org/repos/asf/climate/tree/8c142c35 Diff: http://git-wip-us.apache.org/repos/asf/climate/diff/8c142c35 Branch: refs/heads/master Commit: 8c142c356540428cd6117d59adbcb8c0db3732c0 Parents: cff5b54 Author: Michael Joyce <[email protected]> Authored: Fri Nov 7 09:22:10 2014 -0800 Committer: Michael Joyce <[email protected]> Committed: Fri Nov 7 09:22:10 2014 -0800 ---------------------------------------------------------------------- rcmet/LICENSE.txt | 218 --- rcmet/src/main/python/bin/rcmet.py | 265 ---- .../docs/Bottle Web Service Documentation.docx | Bin 179630 -> 0 bytes rcmet/src/main/python/docs/Makefile | 153 -- .../main/python/docs/RCMET_documentation.docx | Bin 190254 -> 0 bytes rcmet/src/main/python/docs/conf.py | 260 ---- rcmet/src/main/python/docs/index.rst | 22 - rcmet/src/main/python/docs/make.bat | 190 --- rcmet/src/main/python/docs/rcmes.cli.rst | 19 - rcmet/src/main/python/docs/rcmes.rst | 22 - rcmet/src/main/python/docs/rcmes.services.rst | 51 - rcmet/src/main/python/docs/rcmes.storage.rst | 27 - rcmet/src/main/python/docs/rcmes.toolkit.rst | 27 - rcmet/src/main/python/docs/rcmes.utils.rst | 19 - rcmet/src/main/python/rcmes/README | 8 - rcmet/src/main/python/rcmes/__init__.py | 19 - rcmet/src/main/python/rcmes/classes.py | 229 --- rcmet/src/main/python/rcmes/cli/__init__.py | 27 - .../python/rcmes/cli/do_rcmes_processing_sub.py | 734 --------- .../main/python/rcmes/cli/rcmet20_cordexAF.py | 996 ------------ rcmet/src/main/python/rcmes/cli/rcmet_ui.py | 112 -- .../main/python/rcmes/resources/cordexAF.cfg | 30 - .../python/rcmes/resources/cordexSubRegions.txt | 25 - .../resources/watersheds/CAwsdCU_wgt_ep36_d01 | 189 --- .../resources/watersheds/CAwsdCU_wgt_ep36_d02 | 1248 ---------------- .../resources/watersheds/CAwsdDWR_wgt_ep36_d01 | 341 ----- .../resources/watersheds/CAwsdDWR_wgt_ep36_d02 | 1364 ----------------- .../rcmes/resources/watersheds/shasta_d02.txt | 276 ---- rcmet/src/main/python/rcmes/storage/__init__.py | 18 - rcmet/src/main/python/rcmes/storage/db.py | 359 ----- rcmet/src/main/python/rcmes/storage/files.py | 783 ---------- rcmet/src/main/python/rcmes/storage/rcmed.py | 129 -- rcmet/src/main/python/rcmes/toolkit/__init__.py | 18 - .../main/python/rcmes/toolkit/do_data_prep.py | 366 ----- rcmet/src/main/python/rcmes/toolkit/metrics.py | 1080 ------------- .../main/python/rcmes/toolkit/metrics_kyo.py | 718 --------- rcmet/src/main/python/rcmes/toolkit/plots.py | 226 --- rcmet/src/main/python/rcmes/toolkit/process.py | 1007 ------------- .../src/main/python/rcmes/toolkit/visualize.py | 17 - rcmet/src/main/python/rcmes/utils/__init__.py | 20 - .../src/main/python/rcmes/utils/fortranfile.py | 274 ---- rcmet/src/main/python/rcmes/utils/misc.py | 1413 ------------------ rcmet/src/main/python/rcmes/utils/taylor.py | 126 -- .../tests/files/missingSubRegionParam.cfg | 3 - .../tests/files/validSubRegionConfigFile.cfg | 3 - .../main/python/tests/files/validSubRegions.cfg | 7 - rcmet/src/main/python/tests/test_files.py | 87 -- rcmet/src/main/python/tests/test_metrics.py | 52 - rcmet/src/main/python/tests/test_misc.py | 74 - rcmet/src/main/python/tests/test_process.py | 44 - rcmet/src/main/resources/PyLintREADME.txt | 26 - rcmet/src/main/resources/pyLintRcFile.txt | 249 --- rcmet/src/main/resources/rcmet_use_case.txt | 57 - 53 files changed, 14027 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/LICENSE.txt ---------------------------------------------------------------------- diff --git a/rcmet/LICENSE.txt b/rcmet/LICENSE.txt deleted file mode 100644 index 511958f..0000000 --- a/rcmet/LICENSE.txt +++ /dev/null @@ -1,218 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - This software contains code from the basemap library. - copyright (c) 2011 by Jeffrey Whitaker. - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notices appear in all copies and that - both the copyright notices and this permission notice appear in - supporting documentation. - THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO - EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR - CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF - USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/bin/rcmet.py ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/bin/rcmet.py b/rcmet/src/main/python/bin/rcmet.py deleted file mode 100755 index 096c5da..0000000 --- a/rcmet/src/main/python/bin/rcmet.py +++ /dev/null @@ -1,265 +0,0 @@ -#!/usr/local/bin/python -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -""" DOCSTRING""" - -# Python Standard Lib Imports -import argparse -import ConfigParser -import datetime -import glob -import os -import sys - - -# RCMES Imports -import storage.rcmed as db -from toolkit import do_data_prep, process, metrics -from utils import misc -from classes import JobProperties, Model, GridBox -from cli import rcmet_ui as ui - -parser = argparse.ArgumentParser(description='Regional Climate Model Evaluation Toolkit. Use -h for help and options') -parser.add_argument('-c', '--config', dest='CONFIG', help='Path to an evaluation configuration file') -args = parser.parse_args() - -def checkConfigSettings(config): - """ This function will check the SETTINGS block of the user supplied config file. - This will only check if the working and cache dirs are writable from this program. - Additional configuration parameters can be checked here later on. - - Input:: - config - ConfigParser configuration object - - Output:: - none - An exception will be raised if something goes wrong - """ - settings = config.items('SETTINGS') - for key_val in settings: - # Check the user provided directories are valid - if key_val[0] == 'workDir' or key_val[0] == 'cacheDir': - _ = misc.isDirGood(os.path.abspath(key_val[1])) - - else: - pass - -def setSettings(settings, config): - """ - This function is used to set the values within the 'SETTINGS' dictionary when a user provides an external - configuration file. - - Input:: - settings - Python Dictionary object that will collect the key : value pairs - config - A configparse object that contains the external config values - - Output:: - None - The settings dictionary will be updated in place. - """ - pass - -def generateModels(modelConfig): - """ - This function will return a list of Model objects that can easily be used for - metric computation and other processing tasks. - - Input:: - modelConfig - list of ('key', 'value') tuples. Below is a list of valid keys - filenamepattern - string i.e. '/nas/run/model/output/MOD*precip*.nc' - latvariable - string i.e. 'latitude' - lonvariable - string i.e. 'longitude' - timevariable - string i.e. 't' - timestep - string 'monthly' | 'daily' | 'annual' - varname - string i.e. 'pr' - - Output:: - modelList - List of Model objects - """ - # Setup the config Data Dictionary to make parsing easier later - configData = {} - for entry in modelConfig: - configData[entry[0]] = entry[1] - - modelFileList = None - for keyValTuple in modelConfig: - if keyValTuple[0] == 'filenamePattern': - modelFileList = glob.glob(keyValTuple[1]) - modelFileList.sort() - - # Remove the filenamePattern from the dict since it is no longer used - configData.pop('filenamePattern') - - models = [] - for modelFile in modelFileList: - # use getModelTimes(modelFile,timeVarName) to generate the modelTimeStep and time list - _ , configData['timeStep'] = process.getModelTimes(modelFile, configData['timeVariable']) - configData['filename'] = modelFile - model = Model(**configData) - models.append(model) - - return models - -def generateSettings(config): - """ - Helper function to decouple the argument parsing from the Settings object creation - - Input:: - config - list of ('key', 'value') tuples. - workdir - string i.e. '/nas/run/rcmet/work/' - cachedir - string i.e. '/tmp/rcmet/cache/' - Output:: - JobProperties - JobProperties Object - """ - # Setup the config Data Dictionary to make parsing easier later - configData = {} - for entry in config: - configData[entry[0]] = entry[1] - - return JobProperties(**configData) - -def makeDatasetsDictionary(rcmedConfig): - """ - Helper function to decouple the argument parsing from the RCMEDDataset object creation - - Input:: - rcmedConfig - list of ('key', 'value') tuples. - obsDatasetId=3,10 - obsParamId=36,32 - obsTimeStep=monthly,monthly - - Output:: - datasetDict - Dictionary with dataset metadata - # Setup the config Data Dictionary to make parsing easier later - """ - delimiter = ',' - configData = {} - for entry in rcmedConfig: - if delimiter in entry[1]: - # print 'delim found - %s' % entry[1] - valueList = entry[1].split(delimiter) - configData[entry[0]] = valueList - else: - configData[entry[0]] = entry[1:] - - return configData - -def tempGetYears(): - startYear = int(raw_input('Enter start year YYYY \n')) - endYear = int(raw_input('Enter end year YYYY \n')) - # CGOODALE - Updating the Static endTime to be 31-DEC - startTime = datetime.datetime(startYear, 1, 1, 0, 0) - endTime = datetime.datetime(endYear, 12, 31, 0, 0) - return (startTime, endTime) - - -def runUsingConfig(argsConfig): - """ - This function is called when a user provides a configuration file to specify an evaluation job. - - Input:: - argsConfig - Path to a ConfigParser compliant file - - Output:: - Plots that visualize the evaluation job. These will be output to SETTINGS.workDir from the config file - """ - - print 'Running using config file: %s' % argsConfig - # Parse the Config file - userConfig = ConfigParser.SafeConfigParser() - userConfig.optionxform = str # This is so the case is preserved on the items in the config file - userConfig.read(argsConfig) - - try: - checkConfigSettings(userConfig) - except: - raise - - jobProperties = generateSettings(userConfig.items('SETTINGS')) - workdir = jobProperties.workDir - - try: - gridBox = GridBox(jobProperties.latMin, jobProperties.lonMin, jobProperties.latMax, - jobProperties.lonMax, jobProperties.gridLonStep, jobProperties.gridLatStep) - except: - gridBox = None - - models = generateModels(userConfig.items('MODEL')) - - datasetDict = makeDatasetsDictionary(userConfig.items('RCMED')) - - - # Go get the parameter listing from the database - try: - params = db.getParams() - except: - raise - - obsDatasetList = [] - for param_id in datasetDict['obsParamId']: - for param in params: - if param['parameter_id'] == int(param_id): - obsDatasetList.append(param) - else: - pass - - #TODO: Unhardcode this when we decided where this belongs in the Config File - jobProperties.maskOption = True - # User must provide startTime and endTime if not defined - if jobProperties.startDate == None or jobProperties.endDate == None: - jobProperties.startDate, jobProperties.endDate = misc.userDefinedStartEndTimes(obsDatasetList, models) - - numOBS, numMDL, nT, ngrdY, ngrdX, Times, lons, lats, obsData, mdlData, obsList, mdlName = do_data_prep.prep_data(jobProperties, obsDatasetList, gridBox, models) - - print 'Input and regridding of both obs and model data are completed. now move to metrics calculations' - - try: - subRegionConfig = misc.configToDict(userConfig.items('SUB_REGION')) - subRegions = misc.parseSubRegions(subRegionConfig) - # REORDER SUBREGION OBJECTS until we standardize on Python 2.7 - # TODO Remove once Python 2.7 support is finalized - if subRegions: - subRegions.sort(key=lambda x:x.name) - - except ConfigParser.NoSectionError: - - counts = {'observations': numOBS, - 'models' : numMDL, - 'times' : nT} - subRegions = misc.getSubRegionsInteractively(counts, workdir) - - if len(subRegions) == 0: - print 'Processing without SubRegion support' - - - # TODO: New function Call - fileOutputOption = jobProperties.writeOutFile - modelVarName = models[0].varName - metrics.metrics_plots(modelVarName, numOBS, numMDL, nT, ngrdY, ngrdX, Times, lons, lats, obsData, mdlData, obsList, mdlName, workdir, subRegions, fileOutputOption) - - -if __name__ == "__main__": - - if args.CONFIG: - - runUsingConfig(args.CONFIG) - - else: - print 'Interactive mode has been enabled' - ui.rcmetUI() - - #rcmet_cordexAF() http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/Bottle Web Service Documentation.docx ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/Bottle Web Service Documentation.docx b/rcmet/src/main/python/docs/Bottle Web Service Documentation.docx deleted file mode 100644 index a6fdd6f..0000000 Binary files a/rcmet/src/main/python/docs/Bottle Web Service Documentation.docx and /dev/null differ http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/Makefile ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/Makefile b/rcmet/src/main/python/docs/Makefile deleted file mode 100644 index 9cf4b97..0000000 --- a/rcmet/src/main/python/docs/Makefile +++ /dev/null @@ -1,153 +0,0 @@ -# Makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = sphinx-build -PAPER = -BUILDDIR = _build - -# Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . - -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext - -help: - @echo "Please use \`make <target>' where <target> is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - -clean: - -rm -rf $(BUILDDIR)/* - -html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." - -dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." - -singlehtml: - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." - -pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILDDIR)/htmlhelp." - -qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/rcmes.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/rcmes.qhc" - -devhelp: - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/rcmes" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/rcmes" - @echo "# devhelp" - -epub: - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILDDIR)/epub." - -latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -latexpdf: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -text: - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text - @echo - @echo "Build finished. The text files are in $(BUILDDIR)/text." - -man: - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILDDIR)/man." - -texinfo: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -info: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILDDIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." - -gettext: - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." - -changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes - @echo - @echo "The overview file is in $(BUILDDIR)/changes." - -linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILDDIR)/linkcheck/output.txt." - -doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILDDIR)/doctest/output.txt." http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/RCMET_documentation.docx ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/RCMET_documentation.docx b/rcmet/src/main/python/docs/RCMET_documentation.docx deleted file mode 100644 index 36cfd37..0000000 Binary files a/rcmet/src/main/python/docs/RCMET_documentation.docx and /dev/null differ http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/conf.py ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/conf.py b/rcmet/src/main/python/docs/conf.py deleted file mode 100644 index 1be395f..0000000 --- a/rcmet/src/main/python/docs/conf.py +++ /dev/null @@ -1,260 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -# -*- coding: utf-8 -*- -# -# rcmes documentation build configuration file, created by -# sphinx-quickstart on Tue Aug 14 14:18:41 2012. -# -# This file is execfile()d with the current directory set to its containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import sys, os - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -sys.path.insert(0, os.path.abspath('../')) - -# -- General configuration ----------------------------------------------------- - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be extensions -# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = ['sphinx.ext.autodoc', 'sphinx.ext.todo', 'sphinx.ext.coverage'] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'rcmes' -copyright = u'2012, Duane Waliser, Chris Mattmann, Jinwon Kim, Andrew Hart, Cameron Goodale, Paul Ramirez, Paul Zimdars, Kim Whitehall, Jesslyn Whittell, Peter Lean' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '1.2' -# The full version, including alpha/beta/rc tags. -release = '1.2.0' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = ['_build'] - -# The reST default role (used for this markup: `text`) to use for all documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - - -# -- Options for HTML output --------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'default' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# "<project> v<release> documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a <link> tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'rcmesdoc' - - -# -- Options for LaTeX output -------------------------------------------------- - -latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', - -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', - -# Additional stuff for the LaTeX preamble. -#'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, author, documentclass [howto/manual]). -latex_documents = [ - ('index', 'rcmes.tex', u'rcmes Documentation', - u'Duane Waliser, Chris Mattmann, Jinwon Kim, Andrew Hart, Cameron Goodale, Paul Ramirez, Paul Zimdars, Kim Whitehall, Jesslyn Whittell, Peter Lean', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output -------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'rcmes', u'rcmes Documentation', - [u'Duane Waliser, Chris Mattmann, Jinwon Kim, Andrew Hart, Cameron Goodale, Paul Ramirez, Paul Zimdars, Kim Whitehall, Jesslyn Whittell, Peter Lean'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------------ - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'rcmes', u'rcmes Documentation', - u'Duane Waliser, Chris Mattmann, Jinwon Kim, Andrew Hart, Cameron Goodale, Paul Ramirez, Paul Zimdars, Kim Whitehall, Jesslyn Whittell, Peter Lean', 'rcmes', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/index.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/index.rst b/rcmet/src/main/python/docs/index.rst deleted file mode 100644 index bf4c50f..0000000 --- a/rcmet/src/main/python/docs/index.rst +++ /dev/null @@ -1,22 +0,0 @@ -.. rcmes documentation master file, created by - sphinx-quickstart on Tue Aug 14 14:18:41 2012. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Welcome to rcmes's documentation! -================================= - -Contents: - -.. toctree:: - :maxdepth: 2 - - - -Indices and tables -================== - -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/make.bat ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/make.bat b/rcmet/src/main/python/docs/make.bat deleted file mode 100644 index 2225cc2..0000000 --- a/rcmet/src/main/python/docs/make.bat +++ /dev/null @@ -1,190 +0,0 @@ -@ECHO OFF - -REM Command file for Sphinx documentation - -if "%SPHINXBUILD%" == "" ( - set SPHINXBUILD=sphinx-build -) -set BUILDDIR=_build -set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . -set I18NSPHINXOPTS=%SPHINXOPTS% . -if NOT "%PAPER%" == "" ( - set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% - set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% -) - -if "%1" == "" goto help - -if "%1" == "help" ( - :help - echo.Please use `make ^<target^>` where ^<target^> is one of - echo. html to make standalone HTML files - echo. dirhtml to make HTML files named index.html in directories - echo. singlehtml to make a single large HTML file - echo. pickle to make pickle files - echo. json to make JSON files - echo. htmlhelp to make HTML files and a HTML help project - echo. qthelp to make HTML files and a qthelp project - echo. devhelp to make HTML files and a Devhelp project - echo. epub to make an epub - echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter - echo. text to make text files - echo. man to make manual pages - echo. texinfo to make Texinfo files - echo. gettext to make PO message catalogs - echo. changes to make an overview over all changed/added/deprecated items - echo. linkcheck to check all external links for integrity - echo. doctest to run all doctests embedded in the documentation if enabled - goto end -) - -if "%1" == "clean" ( - for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i - del /q /s %BUILDDIR%\* - goto end -) - -if "%1" == "html" ( - %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The HTML pages are in %BUILDDIR%/html. - goto end -) - -if "%1" == "dirhtml" ( - %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. - goto end -) - -if "%1" == "singlehtml" ( - %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. - goto end -) - -if "%1" == "pickle" ( - %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle - if errorlevel 1 exit /b 1 - echo. - echo.Build finished; now you can process the pickle files. - goto end -) - -if "%1" == "json" ( - %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json - if errorlevel 1 exit /b 1 - echo. - echo.Build finished; now you can process the JSON files. - goto end -) - -if "%1" == "htmlhelp" ( - %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp - if errorlevel 1 exit /b 1 - echo. - echo.Build finished; now you can run HTML Help Workshop with the ^ -.hhp project file in %BUILDDIR%/htmlhelp. - goto end -) - -if "%1" == "qthelp" ( - %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp - if errorlevel 1 exit /b 1 - echo. - echo.Build finished; now you can run "qcollectiongenerator" with the ^ -.qhcp project file in %BUILDDIR%/qthelp, like this: - echo.^> qcollectiongenerator %BUILDDIR%\qthelp\rcmes.qhcp - echo.To view the help file: - echo.^> assistant -collectionFile %BUILDDIR%\qthelp\rcmes.ghc - goto end -) - -if "%1" == "devhelp" ( - %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. - goto end -) - -if "%1" == "epub" ( - %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The epub file is in %BUILDDIR%/epub. - goto end -) - -if "%1" == "latex" ( - %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex - if errorlevel 1 exit /b 1 - echo. - echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. - goto end -) - -if "%1" == "text" ( - %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The text files are in %BUILDDIR%/text. - goto end -) - -if "%1" == "man" ( - %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The manual pages are in %BUILDDIR%/man. - goto end -) - -if "%1" == "texinfo" ( - %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. - goto end -) - -if "%1" == "gettext" ( - %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale - if errorlevel 1 exit /b 1 - echo. - echo.Build finished. The message catalogs are in %BUILDDIR%/locale. - goto end -) - -if "%1" == "changes" ( - %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes - if errorlevel 1 exit /b 1 - echo. - echo.The overview file is in %BUILDDIR%/changes. - goto end -) - -if "%1" == "linkcheck" ( - %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck - if errorlevel 1 exit /b 1 - echo. - echo.Link check complete; look for any errors in the above output ^ -or in %BUILDDIR%/linkcheck/output.txt. - goto end -) - -if "%1" == "doctest" ( - %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest - if errorlevel 1 exit /b 1 - echo. - echo.Testing of doctests in the sources finished, look at the ^ -results in %BUILDDIR%/doctest/output.txt. - goto end -) - -:end http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/rcmes.cli.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/rcmes.cli.rst b/rcmet/src/main/python/docs/rcmes.cli.rst deleted file mode 100644 index c337ec5..0000000 --- a/rcmet/src/main/python/docs/rcmes.cli.rst +++ /dev/null @@ -1,19 +0,0 @@ -cli Package -=========== - -:mod:`do_rcmes_processing_sub` Module -------------------------------------- - -.. automodule:: rcmes.cli.do_rcmes_processing_sub - :members: - :undoc-members: - :show-inheritance: - -:mod:`rcmet_ui` Module ----------------------- - -.. automodule:: rcmes.cli.rcmet_ui - :members: - :undoc-members: - :show-inheritance: - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/rcmes.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/rcmes.rst b/rcmet/src/main/python/docs/rcmes.rst deleted file mode 100644 index 29e4be5..0000000 --- a/rcmet/src/main/python/docs/rcmes.rst +++ /dev/null @@ -1,22 +0,0 @@ -rcmes Package -============= - -:mod:`rcmes` Package --------------------- - -.. automodule:: rcmes.__init__ - :members: - :undoc-members: - :show-inheritance: - -Subpackages ------------ - -.. toctree:: - - rcmes.cli - rcmes.services - rcmes.storage - rcmes.toolkit - rcmes.utils - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/rcmes.services.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/rcmes.services.rst b/rcmet/src/main/python/docs/rcmes.services.rst deleted file mode 100644 index d01b950..0000000 --- a/rcmet/src/main/python/docs/rcmes.services.rst +++ /dev/null @@ -1,51 +0,0 @@ -services Package -================ - -:mod:`decode_model_times` Module --------------------------------- - -.. automodule:: rcmes.services.decode_model_times - :members: - :undoc-members: - :show-inheritance: - -:mod:`find_latlon_var` Module ------------------------------ - -.. automodule:: rcmes.services.find_latlon_var - :members: - :undoc-members: - :show-inheritance: - -:mod:`find_time_var` Module ---------------------------- - -.. automodule:: rcmes.services.find_time_var - :members: - :undoc-members: - :show-inheritance: - -:mod:`list_vars_in_file` Module -------------------------------- - -.. automodule:: rcmes.services.list_vars_in_file - :members: - :undoc-members: - :show-inheritance: - -:mod:`main_ws` Module ---------------------- - -.. automodule:: rcmes.services.main_ws - :members: - :undoc-members: - :show-inheritance: - -:mod:`run_rcmes_processing` Module ----------------------------------- - -.. automodule:: rcmes.services.run_rcmes_processing - :members: - :undoc-members: - :show-inheritance: - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/rcmes.storage.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/rcmes.storage.rst b/rcmet/src/main/python/docs/rcmes.storage.rst deleted file mode 100644 index f5b45c5..0000000 --- a/rcmet/src/main/python/docs/rcmes.storage.rst +++ /dev/null @@ -1,27 +0,0 @@ -storage Package -=============== - -:mod:`db` Module ----------------- - -.. automodule:: rcmes.storage.db - :members: - :undoc-members: - :show-inheritance: - -:mod:`files` Module -------------------- - -.. automodule:: rcmes.storage.files - :members: - :undoc-members: - :show-inheritance: - -:mod:`rcmed` Module -------------------- - -.. automodule:: rcmes.storage.rcmed - :members: - :undoc-members: - :show-inheritance: - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/rcmes.toolkit.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/rcmes.toolkit.rst b/rcmet/src/main/python/docs/rcmes.toolkit.rst deleted file mode 100644 index 25fec30..0000000 --- a/rcmet/src/main/python/docs/rcmes.toolkit.rst +++ /dev/null @@ -1,27 +0,0 @@ -toolkit Package -=============== - -:mod:`metrics` Module ---------------------- - -.. automodule:: rcmes.toolkit.metrics - :members: - :undoc-members: - :show-inheritance: - -:mod:`plots` Module -------------------- - -.. automodule:: rcmes.toolkit.plots - :members: - :undoc-members: - :show-inheritance: - -:mod:`process` Module ---------------------- - -.. automodule:: rcmes.toolkit.process - :members: - :undoc-members: - :show-inheritance: - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/docs/rcmes.utils.rst ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/docs/rcmes.utils.rst b/rcmet/src/main/python/docs/rcmes.utils.rst deleted file mode 100644 index 696005c..0000000 --- a/rcmet/src/main/python/docs/rcmes.utils.rst +++ /dev/null @@ -1,19 +0,0 @@ -utils Package -============= - -:mod:`fortranfile` Module -------------------------- - -.. automodule:: rcmes.utils.fortranfile - :members: - :undoc-members: - :show-inheritance: - -:mod:`misc` Module ------------------- - -.. automodule:: rcmes.utils.misc - :members: - :undoc-members: - :show-inheritance: - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/rcmes/README ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/rcmes/README b/rcmet/src/main/python/rcmes/README deleted file mode 100644 index caee8d3..0000000 --- a/rcmet/src/main/python/rcmes/README +++ /dev/null @@ -1,8 +0,0 @@ -Regional Climate Model Evaluation System - -Installation instructions: - 1) For python to discover this package you need to set the PYTHONPATH environment variable to point to this directory that the rcmes directory sits in. - -Usage instructions: - 1) import rcmes - http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/rcmes/__init__.py ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/rcmes/__init__.py b/rcmet/src/main/python/rcmes/__init__.py deleted file mode 100644 index c523395..0000000 --- a/rcmet/src/main/python/rcmes/__init__.py +++ /dev/null @@ -1,19 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -""" Regional Climate Model Evaluation System""" \ No newline at end of file http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/rcmes/classes.py ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/rcmes/classes.py b/rcmet/src/main/python/rcmes/classes.py deleted file mode 100644 index 531da94..0000000 --- a/rcmet/src/main/python/rcmes/classes.py +++ /dev/null @@ -1,229 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -import calendar -import os -from datetime import datetime as datetime -import urllib - -import storage.files as files -import toolkit.process as process -import utils.misc - -class BoundingBox(object): - - def __init__(self, latMin, lonMin, latMax, lonMax): - self.latMin = latMin - self.lonMin = lonMin - self.latMax = latMax - self.lonMax = lonMax - - -class SubRegion(BoundingBox): - - def __init__(self, name, latMin, lonMin, latMax, lonMax): - BoundingBox.__init__(self, latMin, lonMin, latMax, lonMax) - self.name = name - -class GridBox(BoundingBox): - - def __init__(self, latMin, lonMin, latMax, lonMax, lonStep, latStep): - BoundingBox.__init__(self, latMin, lonMin, latMax, lonMax) - self.lonStep = lonStep - self.latStep = latStep - self.lonCount = int((self.lonMax - self.lonMin) / self.lonStep) + 1 - self.latCount = int((self.latMax - self.latMin) / self.latStep) + 1 - -class JobProperties(object): - - def __init__(self, workDir, cacheDir, spatialGrid, temporalGrid, gridLonStep=None, gridLatStep=None, outputFile='false', - latMin=None, latMax=None, lonMin=None, lonMax=None, startDate=None, endDate=None): - self.workDir = os.path.abspath(workDir) - self.cacheDir = os.path.abspath(cacheDir) - self.spatialGrid = spatialGrid - self.temporalGrid = temporalGrid - - if gridLonStep and gridLatStep: - self.gridLonStep = float(gridLonStep) - self.gridLatStep = float(gridLatStep) - else: - self.gridLonStep = None - self.gridLatStep = None - - # Support for both User provided Dates, and Interactive Date Collection - if startDate and endDate: - self.startDate = datetime.strptime(startDate, '%Y%m%d') - self.endDate = datetime.strptime(endDate, '%Y%m%d') - else: - self.startDate = None - self.endDate = None - - if outputFile.lower() == 'false': - self.writeOutFile = 'no' - elif outputFile.lower() == 'netcdf': - self.writeOutFile = 'nc' - else: - self.writeOutFile = False - - if self.spatialGrid.lower() == 'user': - self.latMin = float(latMin) - self.latMax = float(latMax) - self.lonMin = float(lonMin) - self.lonMax = float(lonMax) - - def obsDatasetCount(self): - self.parameterList = self.obsParamId.split(',') - count = len(self.paramterList) - return count - -class Model(object): - - def __init__(self, *args, **kwargs): - """ - This Class can be instantiated with either a single filename or a dictionary of parameters. - If a single filename is used, then the class will use internal methods to parse the file - and set the needed attributes. - - Input (single file):: - filename - Full path to a local model file - - Input (keyword dictionary):: - filename - Full path to a local model file - latVariable - the name of the latitude variable within the file - lonVariable - the name of the longitude variable within the file - timeVariable - the name of the time variable within the file - timeStep - description of the time between readings ['hourly','daily','monthly','annual'] - varName - name of the variable to analyze within the model - precipFlag - boolean telling if this is precipitation data - - Output:: - Model object - """ - if len(args) == 1: - self.filename = args[0] - self.name = os.path.basename(self.filename) - self.processModelFile() - self.precipFlag = False - if len(kwargs) == 7: - self.filename = kwargs['filename'] - self.name = os.path.basename(self.filename) - self.latVariable = kwargs['latVariable'] - self.lonVariable = kwargs['lonVariable'] - self.timeVariable = kwargs['timeVariable'] - self.timeStep = kwargs['timeStep'] - self.varName = kwargs['varName'] - self.times, _ = process.getModelTimes(self.filename, self.timeVariable) - self.minTime = min(self.times) - self.maxTime = max(self.times) - self.setLatitudeRange() - self.setLongitudeRange() - - if kwargs['precipFlag'] == 'True': - self.precipFlag = True - else: - self.precipFlag = False - - - def setLatitudeRange(self): - self.latMin, self.latMax = files.getVariableRange(self.filename, self.latVariable) - - def setLongitudeRange(self): - self.lonMin, self.lonMax = files.getVariableRange(self.filename, self.lonVariable) - - def processModelFile(self): - """ This series of steps should be consolidated to merely pass around a PyNIO object - Until then we will be opening the same file repeatedly. And clearly wasting I/O - """ - self.latVariable, self.lonVariable, self.latMin, self.latMax, self.lonMin, self.lonMax = files.findLatLonVarFromFile(self.filename) - self.timeVariable, modelVariables = files.findTimeVariable(self.filename) - self.times, self.timeStep = process.getModelTimes(self.filename, self.timeVariable) - self.varName = utils.misc.askUserForVariableName(modelVariables, "analysis") - self.minTime = min(self.times) - self.maxTime = max(self.times) - -class Parameter(object): - def __init__(self, param_id, shortName=None, description=None, endDate=None ): - pass - -class RCMED(object): - def __init__(self): - pass - - def retriveData(self, parameter, dataBounds, timeStep=None): - # Returns the data - pass - - @classmethod - def isoDateString(self, pythonDate): - isoDate = pythonDate.strftime("%Y%m%dT%H%MZ") - return isoDate - - @classmethod - def jplUrl(self, datasetID, paramID, latMin, latMax, lonMin, lonMax, startTime, endTime, cachedir, timestep): - """ This will create a valid RCMED Query URL used to contact the JPL RCMED Instance""" - JPL_RCMED_URL = 'http://rcmes.jpl.nasa.gov/query-api/query.php?' - - """This block will expand the Time Range based on the timestep to ensure complete temporal range coverage""" - expanded = False - if timestep.lower() == 'monthly': - if startTime.day != 1: - # Clean the startTime - startTimeString = startTime.strftime('%Y%m%d') - normalInputDatetimeString = startTimeString[:6] + '01' - startTime = datetime.strptime(normalInputDatetimeString, '%Y%m%d') - expanded = True - - lastDayOfMonth = calendar.monthrange(endTime.year, endTime.month)[1] - if endTime.day != lastDayOfMonth: - # Clean the endTime - endTimeString = endTime.strftime('%Y%m%d') - endTimeString = endTimeString[:6] + str(lastDayOfMonth) - endTime = datetime.strptime(endTimeString, '%Y%m%d') - expanded = True - - elif timestep.lower() == 'daily': - if startTime.hour != 0 or startTime.minute != 0 or startTime.second != 0: - datetimeString = startTime.strftime('%Y%m%d%H%M%S') - normalDatetimeString = datetimeString[:8] + '000000' - startTime = datetime.strptime(normalDatetimeString, '%Y%m%d%H%M%S') - expanded = True - - endTimeString = endTime.strftime('%Y%m%d%H%M%S') - endTimeString = endTimeString[:8] + '235959' - endTime = datetime.strptime(endTimeString, '%Y%m%d%H%M%S') - - if expanded: - print "Your date range selection has been expanded to ensure we return the largest number of available readings." - print "The new date Range is: %s through %s" % (startTime.strftime('%Y-%m-%d %H:%M:%S'), endTime.strftime('%Y-%m-%d %H:%M:%S')) - - - timeStart = self.isoDateString(startTime) - timeEnd = self.isoDateString(endTime) - query = [('datasetId',datasetID), ('parameterId',paramID), ('latMin',latMin), ('latMax',latMax), - ('lonMin', lonMin), ('lonMax',lonMax), ('timeStart', timeStart), ('timeEnd', timeEnd)] - queryURL = urllib.urlencode(query) - urlRequest = JPL_RCMED_URL+queryURL - - return urlRequest - -class RCMEDDataset(object): - - def __init__(self, obsDatasetId, obsParamId, obsTimeStep): - self.datasetId = obsDatasetId - self.parameterId = obsParamId - self.timeStep = obsTimeStep \ No newline at end of file http://git-wip-us.apache.org/repos/asf/climate/blob/8c142c35/rcmet/src/main/python/rcmes/cli/__init__.py ---------------------------------------------------------------------- diff --git a/rcmet/src/main/python/rcmes/cli/__init__.py b/rcmet/src/main/python/rcmes/cli/__init__.py deleted file mode 100644 index f83c3f4..0000000 --- a/rcmet/src/main/python/rcmes/cli/__init__.py +++ /dev/null @@ -1,27 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -"""This is the Command Line Interface Package - -Here we have a collection of modules that can be used to interact with the RCMES -from the command line. - -Example: ------------- - ->>> ./rcmet_ui.py - -""" \ No newline at end of file
