library of useful Python code for scientific + technical applications


Keywords
math, geometry, graph, optimization, drawing, graphics-library, jupyter-notebook, math-library, oeis, python, python-library
License
Other
Install
pip install Goulib==2.0.9

Documentation

Goulib

library of useful Python code for scientific + technical applications

see the IPython notebook for an overview of features

License Version Build Tests Doc
author:

Philippe Guglielmetti goulib@goulu.net

installation:

"pip install Goulib"

distribution:

https://pypi.python.org/pypi/Goulib

documentation:

https://goulib.readthedocs.org/

notebook: https://mybinder.org/badge_logo.svg:target:https://mybinder.org/v2/gh/goulu/goulib/master?filepath=notebook.ipynb
source:

https://github.com/goulu/Goulib

Modules

colors
very simple RGB color management
container
sorted collection
datetime2
additions to datetime standard library
decorators
useful decorators
drawing
Read/Write and handle vector graphics in .dxf, .svg and .pdf formats
expr
simple symbolic math expressions
geom, geom3d
2D + 3D geometry
graph
efficient Euclidian Graphs for NetworkX and related algorithms
image
image processing and conversion
interval
operations on [x..y[ intervals
itertools2
additions to itertools standard library
markup
simple HTML/XML generation (forked from markup)
math2
additions to math standard library
motion
motion simulation (kinematics)
optim
optimization algorithms : knapsack, traveling salesman, simulated annealing
piecewise
piecewise-defined functions
plot
plotable rich object display on IPython notebooks
polynomial
manipulation of polynomials
stats
very basic statistics functions
table
Table class with Excel + CSV I/O, easy access to columns, HTML output, and much more.
tests
utilities for unit tests (using nose)
workdays
WorkCalendar class with datetime operations on working hours, handling holidays merges and improves BusinessHours and workdays packages

Requirements

Goulib uses lazy requirements. Many modules and functions do not require any other packages, packages listed in requirements.txt are needed only by some Goulib classes or functions