* elements - list of elements, where element is defined as list of [A, Z, STN]
A is atomic mass of the element, if 0 natural abundance atomic mass is taken,
Z is the proton number of the element, STN is the stoichiometric if >=1.0 or
weight fraction if <1.0
* density - optional, defaults to 0
* thickness - optional, if not defined 0
* i_potential - optional, if <=0 it will be calulated using Bragg rule from elemental ionization potentials
* mass - optional, if <=0 it will be calculated from elements masses and STN number.
__Material__ class has following methods:
* **add_element(a, z, stn)** - adds another element to the material, see initialization comments for details about, a,z, stn
* **ncomponents()** - returns number of elements in the material
* **density()** - returns density
* **density(value)** - set density
* **thickness()** - get thickness in g/cm^2
* **thickness(value)** - set thickness in g/cm^2
* **thickness_cm(value)** - set thickness in cm
* **I()** - get mean ionization potential
* **I(value)** - set mean ionization potential
### Default Materials
The material with predefined density and atomic weights can be obtained for elemental targets and some compounds using:
**pycatima.get_material(id)**
id is integer which identifies material, For elements use 1-99 for elemental targets and >200 for compounds. See available pre-defined compounds in __predefined material__ section in manual./