Skip to content

Commit 003dc88

Browse files
committed
clean up readme for version 0.3.0
1 parent 0aff053 commit 003dc88

File tree

1 file changed

+11
-101
lines changed

1 file changed

+11
-101
lines changed

README.md

Lines changed: 11 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -20,50 +20,23 @@ Full documentation can be found at [readthedocs](http://pvlib-python.readthedocs
2020
Contributing
2121
============
2222

23-
We need your help to make pvlib-python a great tool! Please see the [Contributing to pvlib-python wiki](https://github.com/pvlib/pvlib-python/wiki/Contributing-to-pvlib-python) for more on how you can contribute. The long-term success of pvlib-python requires substantial community support.
23+
We need your help to make pvlib-python a great tool! Please see the [Contributing page](http://pvlib-python.readthedocs.org/en/latest/contributing.html) for more on how you can contribute. The long-term success of pvlib-python requires substantial community support.
2424

2525

2626
Installation
2727
============
2828

29-
If you have Python
30-
------------------
3129
To obtain the most recent stable release, just use ``pip`` or ``conda``:
3230

3331
```
3432
pip install pvlib
3533
```
3634

3735
```
38-
conda install -c http://conda.anaconda.org/pvlib pvlib
36+
conda install -c pvlib pvlib
3937
```
4038

41-
If your system complains that you don't have access privileges or asks for a password then you're trying to install pvlib into your system's Python distribution. This is a very bad idea and you should instead follow the **If you don't have Python** instructions below.
42-
43-
44-
If you don't have Python
45-
------------------------
46-
There are many ways to install Python on your system, but the Anaconda Scientific Python distribution provides by far the easiest way for new users to get started. Anaconda includes all of the popular libraries that you'll need for pvlib, including Pandas, NumPy, and SciPy. "Anaconda installs cleanly into a single directory, does not require Administrator or root privileges, does not affect other Python installs on your system, or interfere with OSX Frameworks." -Anaconda Documentation.
47-
48-
1. Install the full Anaconda Scientific Python distribution available [here](https://store.continuum.io/cshop/anaconda/).
49-
50-
2. Install pvlib: ``conda install -c http://conda.anaconda.org/pvlib pvlib``
51-
52-
If you have trouble, see the [Anaconda FAQ](http://docs.continuum.io/anaconda/faq.html), Google your error messages, or make a new issue on our [Issues page](https://github.com/pvlib/pvlib-python/issues).
53-
54-
55-
Working at the bleeding edge
56-
----------------------------
57-
We strongly recommend working in a **virtual environment** if you're going to use the development versions of the code. There are many ways to use virtual environments in Python, but Anaconda again provides the easiest solution:
58-
59-
1. Create a new conda environment for pvlib and pre-install a handful of packages into the environment: ``conda create --name pvlibdev python pandas scipy ephem``
60-
2. Activate the new environment: ``source activate pvlibdev``
61-
2. Install the latest development version:
62-
2. If you don't plan to modify the source-code: ``pip install git+https://github.com/pvlib/pvlib-python.git``
63-
2. If you do plan to modify the source code: Use the GitHub GUI application or git command-line tool to clone this repository to your computer, then navigate your command-line to the top-level pvlib-python directory, then ``pip install -e .``
64-
2. You may also consider installing additional packages into your development environment: ``conda install ipython-notebook nose seaborn``
65-
66-
The [conda documentation](http://conda.pydata.org/docs/using/index.html) has more information on how to use virtual environments.
39+
Please see the [Installation page](http://pvlib-python.readthedocs.org/en/latest/installation.html) of the documentation for complete instructions.
6740

6841

6942
NREL SPA algorithm
@@ -80,42 +53,14 @@ To use the NREL SPA algorithm, a pip install from the web cannot be used. Instea
8053

8154
Usage
8255
=====
83-
You're now ready to start some version of the Python interpreter and use pvlib. The easiest way to start is with one of our IPython notebook tutorials:
56+
You're now ready to start some version of the Python interpreter and use pvlib. The easiest way to start is with one of our [Jupyter](http://jupyter.org) notebook tutorials:
8457

85-
1. Use the nbviewer website to choose a tutorial to experiment with. Go to our [nbviewer tutorial page](http://nbviewer.ipython.org/github/pvlib/pvlib-python/tree/master/docs/tutorials/), click on e.g. pvsystem.ipynb, and then click on the download symbol.
86-
1. Start the IPython Notebook server: ``ipython notebook``. This should open a web browser with the IPython Notebook's file/folder listing. If not, navigate to the url shown in the command line history, likely ``http://localhost:8888``
87-
2. In IPython Notebook, navigate to the file that you downloaded in step one and open it.
58+
1. Use the nbviewer website to choose a tutorial to experiment with. Go to our [nbviewer tutorial page](http://nbviewer.jupyter.org/github/pvlib/pvlib-python/tree/master/docs/tutorials/), click on e.g. [``tmy_to_power.ipynb``](http://nbviewer.jupyter.org/github/pvlib/pvlib-python/blob/master/docs/tutorials/tmy_to_power.ipynb), and then click on the download symbol.
59+
1. Start the Jupyter Notebook server: ``jupyter notebook``. This should open a web browser with the Jupyter Notebook's file/folder listing. If not, navigate to the url shown in the command line history, likely ``http://localhost:8888``
60+
2. In Jupyter Notebook, navigate to the file that you downloaded in step one and open it.
8861
2. Use ``shift-enter`` to execute the notebook cell-by-cell. There is also a Play button that will execute all of the cells in the notebook.
8962

90-
You can also experiment with the following simple code in a new IPython notebook or any other Python interpreter:
91-
92-
```
93-
# built-in imports
94-
import sys
95-
import datetime
96-
97-
# add-on imports
98-
import pandas as pd
99-
100-
# pvlib imports
101-
from pvlib.location import Location
102-
import pvlib.solarposition
103-
import pvlib.clearsky
104-
105-
# make a location
106-
tus = Location(32.2, -111, 'MST', 700)
107-
108-
# make a pandas DatetimeIndex for some day
109-
times = pd.date_range(start=datetime.datetime(2014,6,24), end=datetime.datetime(2014,6,25), freq='1Min')
110-
111-
# calculate the solar position
112-
solpos = pvlib.solarposition.get_solarposition(times, tus)
113-
solpos.plot()
114-
115-
# calculate clear sky data
116-
tus_cs = pvlib.clearsky.ineichen(times, tus, airmass_model='young1994')
117-
tus_cs.plot()
118-
```
63+
You can also use a Jupyter notebook or any other Python interpreter to experiment with the simple code in the [Package overview](http://pvlib-python.readthedocs.org/en/latest/package_overview.html) section of the documentation.
11964

12065
Many good online resources exist for getting started with scientific Python.
12166

@@ -128,7 +73,7 @@ License
12873
Compatibility
12974
=============
13075

131-
pvlib-python is compatible with Python versions 2.7, 3.3, 3.4, 3.5 and Pandas versions 0.13.1 through 0.17. Note that our Numba-accelerated solar position algorithms have more specific version requirements that will be resolved by the Numba installer.
76+
pvlib-python is compatible with Python versions 2.7, 3.3, 3.4, 3.5 and Pandas versions 0.13.1 through 0.18. Note that our Numba-accelerated solar position algorithms have more specific version requirements that will be resolved by the Numba installer.
13277

13378
For Linux + Python 3 users: Continuum's Python 3.x SciPy conda package is not compiled properly and has a few bugs related to complex arithmetic. The most common place for these bugs to show up when using pvlib-python is in calculating IV curve parameters using the ``singlediode`` function. We reported [the issue](https://github.com/ContinuumIO/anaconda-issues/issues/425) to Continuum and are waiting for it to be fixed. In the meantime, you can compile your own SciPy distribution, or you can use this trick on Python 3.3 and 3.4 (not 3.5): Downgrade your NumPy to 1.8 and SciPy to 0.14, then install whatever version of pandas you want but without dependencies. The conda commands for this are:
13479

@@ -137,6 +82,8 @@ conda install numpy=1.8 scipy=0.14
13782
conda install pandas --no-deps
13883
```
13984

85+
For Windows + Python 2.7 users: Continuum's Python 2.7 SciPy 0.16.1 and 0.17.0 packages are not compiled properly and will crash your Python interpreter if you use our Linke turbidity lookup function. See [Anaconda issue 650](https://github.com/ContinuumIO/anaconda-issues/issues/650) for more.
86+
14087

14188
Testing
14289
=======
@@ -145,40 +92,3 @@ Testing can easily be accomplished by running ``nosetests`` on the pvlib directo
14592
nosetests -v pvlib
14693
```
14794
Unit test code should be placed in the corresponding test module in the pvlib/test directory. Use ``pip`` or ``conda`` to install ``nose``. Developers must include comprehensive tests for any additions or modifications to pvlib.
148-
149-
150-
Code Transition
151-
================
152-
Here are some of the major differences between the latest build and the original Sandia PVLIB\_Python project.
153-
154-
Library wide changes:
155-
* Remove ``pvl_`` from module names.
156-
* Consolidation of similar modules. For example, functions from ``pvl_clearsky_ineichen.py`` and ``pvl_clearsky_haurwitz.py`` have been consolidated into ``clearsky.py``.
157-
* Removed ``Vars=Locals(); Expect...; var=pvl\_tools.Parse(Vars,Expect);`` pattern. Very few tests of input validitity remain. Garbage in, garbage or ``nan`` out.
158-
* Removing unnecssary and sometimes undesired behavior such as setting maximum zenith=90 or airmass=0. Instead, we make extensive use of ``nan`` values.
159-
* Adding logging calls, removing print calls.
160-
* Code in reviewed modules is mostly PEP8 compliant.
161-
* All code is Python 3 compatible (see testing).
162-
* Changing function and module names so that they do not conflict.
163-
* Added ``/pvlib/data`` for lookup tables, test, and tutorial data.
164-
* Return one DataFrame instead of a tuple of DataFrames.
165-
166-
More specific changes:
167-
* Add PyEphem option to solar position calculations.
168-
* ``irradiance.py`` has more AOI, projection, and irradiance sum and calculation functions
169-
* TMY data is not forced to 1987.
170-
* Locations are now ``pvlib.location.Location`` objects, not structs.
171-
* Specify time zones using a string from the standard IANA Time Zone Database naming conventions or using a pytz.timezone instead of an integer GMT offset. We may add dateutils support in the future.
172-
* ``clearsky.ineichen`` supports interpolating monthly Linke Turbidities to daily resolution.
173-
174-
Documentation:
175-
* Using readthedocs for documentation hosting.
176-
* Many typos and formatting errors corrected.
177-
* Documentation source code and tutorials live in ``/`` rather than ``/pvlib/docs``.
178-
* Additional tutorials in ``/docs/tutorials``.
179-
180-
Testing:
181-
* Tests are cleaner and more thorough. They are still no where near complete.
182-
* Using Coveralls to measure test coverage.
183-
* Using TravisCI for automated testing.
184-
* Using ``nosetests`` for more concise test code.

0 commit comments

Comments
 (0)