Skip to content
/ Goulib Public

library of useful Python code for scientific + technical applications

License

Notifications You must be signed in to change notification settings

goulu/Goulib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 [email protected]

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