PLaSK User Manual

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

Material Base class for all materials.
MaterialsDB Container of all materials
alloy Decorator for custom alloy material class.
complex
const alias of builtins.staticmethod
simple Decorator for custom simple material class.

Functions

Ag(**kwargs) Create material Ag.
Air()
Al(**kwargs) Create material Al.
AlAs(**kwargs) Create material AlAs.
AlAsP(**kwargs) Create material AlAsP.
AlAsSb(**kwargs) Create material AlAsSb.
AlGaAs(**kwargs) Create material AlGaAs.
AlGaAsSb(**kwargs) Create material AlGaAsSb.
AlGaInAs(**kwargs) Create material AlGaInAs.
AlGaInAsSb(**kwargs) Create material AlGaInAsSb.
AlGaInP(**kwargs) Create material AlGaInP.
AlGaN(**kwargs) Create material AlGaN.
AlGaP(**kwargs) Create material AlGaP.
AlGaSb(**kwargs) Create material AlGaSb.
AlInAs(**kwargs) Create material AlInAs.
AlInP(**kwargs) Create material AlInP.
AlInSb(**kwargs) Create material AlInSb.
AlN(**kwargs) Create material AlN.
AlNzb(**kwargs) Create material AlNzb.
AlOx(**kwargs) Create material AlOx.
AlP(**kwargs) Create material AlP.
AlPSb(**kwargs) Create material AlPSb.
AlSb(**kwargs) Create material AlSb.
Au(**kwargs) Create material Au.
AuGe(**kwargs) Create material AuGe.
AuZn(**kwargs) Create material AuZn.
BCB(**kwargs) Create material BCB.
Cu(**kwargs) Create material Cu.
GaAs(**kwargs) Create material GaAs.
GaAsP(**kwargs) Create material GaAsP.
GaAsSb(**kwargs) Create material GaAsSb.
GaInAsP(**kwargs) Create material GaInAsP.
GaInAsSb(**kwargs) Create material GaInAsSb.
GaInNAs(**kwargs) Create material GaInNAs.
GaInSb(**kwargs) Create material GaInSb.
GaN(**kwargs) Create material GaN.
GaN_bulk(**kwargs) Create material GaN_bulk.
GaNzb(**kwargs) Create material GaNzb.
GaP(**kwargs) Create material GaP.
GaPSb(**kwargs) Create material GaPSb.
GaSb(**kwargs) Create material GaSb.
ITO(**kwargs) Create material ITO.
In(**kwargs) Create material In.
InAs(**kwargs) Create material InAs.
InAsP(**kwargs) Create material InAsP.
InAsSb(**kwargs) Create material InAsSb.
InGaAs(**kwargs) Create material InGaAs.
InGaN(**kwargs) Create material InGaN.
InGaP(**kwargs) Create material InGaP.
InN(**kwargs) Create material InN.
InNzb(**kwargs) Create material InNzb.
InP(**kwargs) Create material InP.
InPSb(**kwargs) Create material InPSb.
InSb(**kwargs) Create material InSb.
Ni(**kwargs) Create material Ni.
Pt(**kwargs) Create material Pt.
Si(**kwargs) Create material Si.
Si3N4(**kwargs) Create material Si3N4.
SiO2(**kwargs) Create material SiO2.
Ti(**kwargs) Create material Ti.
dielectric(**kwargs) Create material dielectric.
getdb() Get default database.
info(name) Get information dictionary on built-in material.
is_alloy(name) Return True if the specified material is an alloy one.
liquid_crystal(**kwargs) Create material liquid_crystal.
load_all_libraries(lib) Load all materials from specified directory to database.
load_library(lib) Load material library from file to database.
metal(**kwargs) Create material metal.
savedb([copy]) Save existing material database.
semiconductor(**kwargs) Create material semiconductor.
setdb(src) Set new material database.
update_factories() For each material in default database make factory in plask.material.

Descriptions

Function Details

plask.material.Ag(**kwargs)

Create material Ag.

Return type:Material
plask.material.Air()
plask.material.Al(**kwargs)

Create material Al.

Return type:Material
plask.material.AlAs(**kwargs)

Create material AlAs.

Return type:Material
plask.material.AlAsP(**kwargs)

Create material AlAsP.

Return type:Material
plask.material.AlAsSb(**kwargs)

Create material AlAsSb.

Return type:Material
plask.material.AlGaAs(**kwargs)

Create material AlGaAs.

Return type:Material
plask.material.AlGaAsSb(**kwargs)

Create material AlGaAsSb.

Return type:Material
plask.material.AlGaInAs(**kwargs)

Create material AlGaInAs.

Return type:Material
plask.material.AlGaInAsSb(**kwargs)

Create material AlGaInAsSb.

Return type:Material
plask.material.AlGaInP(**kwargs)

Create material AlGaInP.

Return type:Material
plask.material.AlGaN(**kwargs)

Create material AlGaN.

Return type:Material
plask.material.AlGaP(**kwargs)

Create material AlGaP.

Return type:Material
plask.material.AlGaSb(**kwargs)

Create material AlGaSb.

Return type:Material
plask.material.AlInAs(**kwargs)

Create material AlInAs.

Return type:Material
plask.material.AlInP(**kwargs)

Create material AlInP.

Return type:Material
plask.material.AlInSb(**kwargs)

Create material AlInSb.

Return type:Material
plask.material.AlN(**kwargs)

Create material AlN.

Return type:Material
plask.material.AlNzb(**kwargs)

Create material AlNzb.

Return type:Material
plask.material.AlOx(**kwargs)

Create material AlOx.

Return type:Material
plask.material.AlP(**kwargs)

Create material AlP.

Return type:Material
plask.material.AlPSb(**kwargs)

Create material AlPSb.

Return type:Material
plask.material.AlSb(**kwargs)

Create material AlSb.

Return type:Material
plask.material.Au(**kwargs)

Create material Au.

Return type:Material
plask.material.AuGe(**kwargs)

Create material AuGe.

Return type:Material
plask.material.AuZn(**kwargs)

Create material AuZn.

Return type:Material
plask.material.BCB(**kwargs)

Create material BCB.

Return type:Material
plask.material.Cu(**kwargs)

Create material Cu.

Return type:Material
plask.material.GaAs(**kwargs)

Create material GaAs.

Return type:Material
plask.material.GaAsP(**kwargs)

Create material GaAsP.

Return type:Material
plask.material.GaAsSb(**kwargs)

Create material GaAsSb.

Return type:Material
plask.material.GaInAsP(**kwargs)

Create material GaInAsP.

Return type:Material
plask.material.GaInAsSb(**kwargs)

Create material GaInAsSb.

Return type:Material
plask.material.GaInNAs(**kwargs)

Create material GaInNAs.

Return type:Material
plask.material.GaInSb(**kwargs)

Create material GaInSb.

Return type:Material
plask.material.GaN(**kwargs)

Create material GaN.

Return type:Material
plask.material.GaN_bulk(**kwargs)

Create material GaN_bulk.

Return type:Material
plask.material.GaNzb(**kwargs)

Create material GaNzb.

Return type:Material
plask.material.GaP(**kwargs)

Create material GaP.

Return type:Material
plask.material.GaPSb(**kwargs)

Create material GaPSb.

Return type:Material
plask.material.GaSb(**kwargs)

Create material GaSb.

Return type:Material
plask.material.ITO(**kwargs)

Create material ITO.

Return type:Material
plask.material.In(**kwargs)

Create material In.

Return type:Material
plask.material.InAs(**kwargs)

Create material InAs.

Return type:Material
plask.material.InAsP(**kwargs)

Create material InAsP.

Return type:Material
plask.material.InAsSb(**kwargs)

Create material InAsSb.

Return type:Material
plask.material.InGaAs(**kwargs)

Create material InGaAs.

Return type:Material
plask.material.InGaN(**kwargs)

Create material InGaN.

Return type:Material
plask.material.InGaP(**kwargs)

Create material InGaP.

Return type:Material
plask.material.InN(**kwargs)

Create material InN.

Return type:Material
plask.material.InNzb(**kwargs)

Create material InNzb.

Return type:Material
plask.material.InP(**kwargs)

Create material InP.

Return type:Material
plask.material.InPSb(**kwargs)

Create material InPSb.

Return type:Material
plask.material.InSb(**kwargs)

Create material InSb.

Return type:Material
plask.material.Ni(**kwargs)

Create material Ni.

Return type:Material
plask.material.Pt(**kwargs)

Create material Pt.

Return type:Material
plask.material.Si(**kwargs)

Create material Si.

Return type:Material
plask.material.Si3N4(**kwargs)

Create material Si3N4.

Return type:Material
plask.material.SiO2(**kwargs)

Create material SiO2.

Return type:Material
plask.material.Ti(**kwargs)

Create material Ti.

Return type:Material
plask.material.dielectric(**kwargs)

Create material dielectric.

Return type: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.liquid_crystal(**kwargs)

Create material liquid_crystal.

Return type:Material
plask.material.load_all_libraries(lib)

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.metal(**kwargs)

Create material metal.

Return type:Material
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.semiconductor(**kwargs)

Create material semiconductor.

Return type:Material
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.update_factories()

For each material in default database make factory in plask.material.