Any contributions including bug reports, feature requests, additional RTD models, additional RTD analysis functionality, documentation clarification, etc. are welome.
Bug reports and feature requests can be placed in Issues. For bug reports, please provide code examples, error messages, and version information about numpy, scipy, rtdpy, and Python. PRs for code contributions can be made here.
import sys, scipy, numpy, rtdpy
print(scipy.__version__, numpy.__version__, rtdpy.__version__, sys.version_info)
See NCstr model for a simple example.
- The base RTD class should be inherited, i.e.
class NewRTD(RTD):
. The RTD class__init__
method should be called first to setup the time attributes. - Input parameters should be checked for bounds, e.g. the number of tanks in
NCstr is required to be greater than 0. Invalid inputs should raise
RTDInputError
. - Input parameters should be accessible via a method decorated with property.
- A
__repr__
method should be defined to allow for easy inspection of models.
- The new functionality should be a method of the base RTD class. This allows all functionality to be available for all RTD models.
- Only instance attribute/methods defined in the base RTD class should be accessed by methods in the base RTD class.
- All API documentation is done in the class/method docstrings.
- The tutorial documentation is written in index.rst.
- The requirements for building the documentation with sphinx are in requirements_docs.txt.