Tamaas is mainly composed of three components:
Random surface generation procedures
Model state objects and operators
Contact solving procedures
These parts are meant to be independent as well as inter-operable. The first one
provides an interface to several stochastic surface generation algorithms
described in Random rough surfaces. The second provides an interface to a state
Model (and C++ class
tamaas::Model) as well as integral operators based on the state
object (see Model and integral operators). Finally, the third part provides contact solving
routines that make use of the integral operators for performance (see
The following tutorial notebooks can also be used to learn about Tamaas:
Tamaas is the fruit of a research effort. To give proper credit to its creators
and the scientists behind the methods it implements, you can use the
tamaas.utils.publications() function at the end of your python scripts.
This function scans global variables and prints the relevant citations for the
different capabilities of Tamaas used. Note that it may miss citations if some
objects are not explicitly stored in named variables, so please examine the
relevant publications in doi:10.21105/joss.02121.
The changelog can be consulted here.
Contributions to Tamaas are welcome, whether they are code, bug, or documentation related.