Main Page
From tappy
TAPPY is a tidal analysis package. It breaks down a record of water levels into the component sine waves. It is written in Python and uses the least squares optimization and other functions in SciPy. The focus is to make the most accurate analysis possible. TAPPY only determines the constituents that are calculatable according to the length of the time series.
Contents |
Features
- Calculates the node factor at each water elevation measurement. Very important for long time-series (greater than a year).
- Very accurate ephemeris calculations thanks to the Astrolabe library.
- Able to read in different input data sets without changing TAPPY or the input data set. All you have to do is create a file that defines the input data set. Thanks to Pyparsing.
- Added the capability to read compressed files and Internet data streams (actually any URL) directly into TAPPY by using filelike.
- The time-series does not need to have equal intervals. In fact any length of missing data is allowed (though too much missing will cause a poor analysis).
- Can adjust the Rayleigh factor that nearby constituents are compared against to determine what constituents can be differentiated.
- TAPPY chooses the main constituents based upon the length of the time series and infers additional constituents that are known to be specifically related to the main constituents.
- Can filter the tidal energy out of the input signal using transform (FFT), usgs (PL33), doodson, and boxcar methods. | CompareTidalFilters
- Can use the tidal filters to zero the time-series before determination of tidal constituents.
- Can pad the usgs, doodson, and boxcar filters with predicted data to minimize edge effects of the filters.
- Convenience function to fill missing values with the time series created from the tidal constituent signals. | FillMissing
News
Documentation
Requirements
Download
TAPPY Project Page on Sourceforge
Install
There are three ways to install TAPPy. I have included an example for each method, but please read through the example to make sure it does what you want.
1. Standard Python distutils install:
# If you have wget.. wget http://downloads.sourceforge.net/tappy/tappy-0.8.3.tar.gz # Or download [tappy-0.8.3.tar.gz] cp tappy-0.8.3.tar.gz myworkdir cd myworkdir gzip -cd tappy-0.8.3.tar.gz | tar xvf - cd tappy-0.8.3 # At this point you can try TAPPY out without installing. cd example ../tappy.py mayport_florida_8720220_data.txt # OR on Unix/Linux ./example.sh cd .. # To install... python setup.py build python setup.py install #possibly as root
2. With easy_install available from PEAK. This looks like it might be the easiest, but I have had problems with easy_install before and for several reasons don't really like it. I changed TAPPy to accommodate, but use at your own discretion.
easy_install tappy
3. If you use the Gentoo Linux Distribution you could also sign up for the science overlay and then:
emerge tappy
Example
There is example data for two COOPS tide stations in Florida in the 'example' sub-directory.
Acknowledgements
Orbital Parameters
The required orbital parameters are calculated from Astrolabe. Thanks to Bill McClain for putting the Astrolabe package together.
Utilities
Data is read into TAPPY using tools from pyparsing by Paul McGuire and filelike by Ryan Kelly.
Astrolabe, pyparsing, and filelike are packaged with TAPPY. If installed separately, the TAPPY versions are still used by TAPPY.
Contributions
Development
Any help is appreciated. If you want you could send a patch file to me, or if you would like to make a bunch of changes I can assign you developer privledges to the source code repository. Just contact me at timcera at earthlink dot net.
