plask.material
¶
Materials and material database.
Many semiconductor materials used in photonics are defined here. We have made
a significant effort to ensure their physical properties to be the most precise
as the current state of the art. However, you can derive an abstract class
plask.Material
to create your own materials.
Classes¶
Base class for all materials. |
|
Container of all materials |
|
staticmethod(function) -> method |
Functions¶
|
Create material Ag. |
|
|
|
Create material Al. |
|
Create material AlAs. |
|
Create material AlAsP. |
|
Create material AlAsSb. |
|
Create material AlGaAs. |
|
Create material AlGaAsSb. |
|
Create material AlGaInAs. |
|
Create material AlGaInAsSb. |
|
Create material AlGaInP. |
|
Create material AlGaN. |
|
Create material AlGaP. |
|
Create material AlGaSb. |
|
Create material AlInAs. |
|
Create material AlInP. |
|
Create material AlInSb. |
|
Create material AlN. |
|
Create material AlNzb. |
|
Create material AlOx. |
|
Create material AlP. |
|
Create material AlPSb. |
|
Create material AlSb. |
|
Create material Au. |
|
Create material AuGe. |
|
Create material AuZn. |
|
Create material BCB. |
|
Create material Cu. |
|
Create material GaAs. |
|
Create material GaAsP. |
|
Create material GaAsSb. |
|
Create material GaInAsP. |
|
Create material GaInAsSb. |
|
Create material GaInNAs. |
|
Create material GaInSb. |
|
Create material GaN. |
|
Create material GaN_bulk. |
|
Create material GaNzb. |
|
Create material GaP. |
|
Create material GaPSb. |
|
Create material GaSb. |
|
Create material ITO. |
|
Create material In. |
|
Create material InAs. |
|
Create material InAsP. |
|
Create material InAsSb. |
|
Create material InGaAs. |
|
Create material InGaN. |
|
Create material InGaP. |
|
Create material InN. |
|
Create material InNzb. |
|
Create material InP. |
|
Create material InPSb. |
|
Create material InSb. |
|
Create material Ni. |
|
Create material Pt. |
|
Create material Si. |
|
Create material Si3N4. |
|
Create material SiO2. |
|
Create material Ti. |
|
Decorator for custom alloy material class. |
|
Create material dielectric. |
|
Get material of given name and doping. |
|
Get default database. |
|
Get information dictionary on built-in material. |
|
Return |
|
Create material liquid_crystal. |
|
Load all materials from specified directory to database. |
|
Load material library from file to database. |
|
Create material metal. |
|
Save existing material database. |
|
Create material semiconductor. |
|
Set new material database. |
|
Decorator for custom simple material class. |
For each material in default database make factory in |
|
object material_with_params(tuple args, dict kwds) : Get material with constant parameters specified as kwargs |
Descriptions¶
Function Details¶
- plask.material.Air()¶
- plask.material.alloy(base=None)¶
Decorator for custom alloy material class.
- Parameters:
base (str or material.Material) – Base class specification. It may be either a material object or a string with either complete or incomplete specification of the material. In either case you must initialize the base in the constructor of your material.
- plask.material.getdb()¶
Get default database.
- plask.material.info(name)¶
Get information dictionary on built-in material.
- Parameters:
name (str) – material name without doping amount and composition. (e.g. ‘GaAs:Si’, ‘AlGaAs’).
- plask.material.is_alloy(name)¶
Return
True
if the specified material is an alloy one.- Parameters:
name (str) – material name without doping amount and composition. (e.g. ‘GaAs:Si’, ‘AlGaAs’).
- plask.material.load_all_libraries(dir)¶
Load all materials from specified directory to database.
This method can be used to extend the database with custom materials provided in binary libraries.
Mind that this function will load each library only once (even if the database was cleared).
- Parameters:
dir (str) – Directory name to load materials from.
- plask.material.load_library(lib)¶
Load material library from file to database.
Mind that this function will load each library only once (even if the database was cleared).
- Parameters:
lib (str) – Library to load without the extension (.so or .dll).
- plask.material.savedb(copy=True)¶
Save existing material database.
This function returns context manager used to save the existing database. On entering the context, the old saved database is returned.
- Parameters:
copy (bool) – if True, the current database is copied to the temporary one.
Example
>>> with plask.material.savedb() as saved: >>> plask.material.load('some_other_lib')
- plask.material.setdb(src)¶
Set new material database.
This function sets a material database to a copy of the provided one. It clears the old database, so use it with care. To temporarily switch the database, use
savedb()
.- Parameters:
src – New material database.
- plask.material.simple(base=None)¶
Decorator for custom simple material class.
- Parameters:
base (str or material.Material) – Base class specification. It may be either a material object or a string with either complete or incomplete specification of the material. In either case you must initialize the base in the constructor of your material.
- plask.material.update_factories()¶
For each material in default database make factory in
plask.material
.