openbandparams package

Submodules

openbandparams.algorithms module

openbandparams.algorithms.bisect(func, a, b, xtol=1e-12, maxiter=100)[source]

Finds the root of func using the bisection method.

Parameters:
funcfunction

the function that we want to find the root of

anumber

one of the bounds on the input

bnumber

the other bound on the input

xtolnumber, optional

the solution tolerance of the input value. The algorithm is considered converged if abs(b-a)2. < xtol

maxiternumber, optional

the maximum number of iterations allowed for convergence

openbandparams.alloy module

class openbandparams.alloy.Alloy(name, elements, parameters=None)[source]

Bases: object

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

add_parameter(parameter, overload=False)[source]

Adds a Parameter object to the instance.

If a Parameter with the same name or alias has already been added and overload is False (the default), a ValueError is thrown.

If a class member or method with the same name or alias is already defined, a ValueError is thrown, regardless of the value of overload.

element_fraction(element)[source]

Returns the atomic fraction of the given element.

get_parameter(name, default=None)[source]

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()[source]

Returns a list of the unique parameters (no duplicates).

has_parameter(name)[source]

Returns True if the named parameter is present, or False, otherwise.

latex()[source]

Returns a LaTeX representation of the alloy.

set_parameter(parameter)[source]

Same as calling add_parameter with overload=True

openbandparams.equations module

openbandparams.equations.refractive_index(E0, Eg, SO, A, B)[source]
openbandparams.equations.varshni(Eg_0, alpha, beta, T)[source]

openbandparams.iii_v_alloy module

class openbandparams.iii_v_alloy.IIIVAlloy(name, elements, parameters=None)[source]

Bases: Alloy

The base class for all III-V alloys.

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

electron_affinity

electron_affinity = <openbandparams.parameter.MethodParameter object>

openbandparams.iii_v_zinc_blende_alloy module

class openbandparams.iii_v_zinc_blende_alloy.IIIVZincBlendeAlloy(name, elements, parameters=None)[source]

Bases: IIIVAlloy

The base class for all III-V zinc blende alloys.

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Eg

Eg_Gamma

Eg_L

Eg_X

F

P

a

electron_affinity

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_X_DOS

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

nonparabolicity

refractive_index

CBO = <openbandparams.parameter.MethodParameter object>
CBO_Gamma = <openbandparams.parameter.MethodParameter object>
CBO_L = <openbandparams.parameter.MethodParameter object>
CBO_X = <openbandparams.parameter.MethodParameter object>
Eg = <openbandparams.parameter.MethodParameter object>
Eg_Gamma = <openbandparams.parameter.MethodParameter object>
Eg_L = <openbandparams.parameter.MethodParameter object>
Eg_X = <openbandparams.parameter.MethodParameter object>
F = <openbandparams.parameter.MethodParameter object>
P = <openbandparams.parameter.MethodParameter object>
a = <openbandparams.parameter.MethodParameter object>
luttinger32 = <openbandparams.parameter.MethodParameter object>
luttinger4 = <openbandparams.parameter.MethodParameter object>
meff_SO = <openbandparams.parameter.MethodParameter object>
meff_e_Gamma = <openbandparams.parameter.MethodParameter object>
meff_e_L_DOS = <openbandparams.parameter.MethodParameter object>
meff_e_X_DOS = <openbandparams.parameter.MethodParameter object>
meff_hh_100 = <openbandparams.parameter.MethodParameter object>
meff_hh_110 = <openbandparams.parameter.MethodParameter object>
meff_hh_111 = <openbandparams.parameter.MethodParameter object>
meff_lh_100 = <openbandparams.parameter.MethodParameter object>
meff_lh_110 = <openbandparams.parameter.MethodParameter object>
meff_lh_111 = <openbandparams.parameter.MethodParameter object>
nonparabolicity = <openbandparams.parameter.MethodParameter object>
refractive_index = <openbandparams.parameter.MethodParameter object>
strained_001(target)[source]

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

Parameters:
targetAlloy with a parameter or float

Growth substrate, assumed to have a (001) surface, or out-of-plane strain, which is negative for tensile strain and positive for compressive strain. This is the strain measured by X-ray diffraction (XRD) symmetric omega-2theta scans.

openbandparams.iii_v_zinc_blende_binaries module

openbandparams.iii_v_zinc_blende_binary module

class openbandparams.iii_v_zinc_blende_binary.IIIVZincBlendeBinary(name, elements, parameters=None)[source]

Bases: IIIVZincBlendeAlloy

The base class for all III-V zinc blende binary alloys.

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the fractional concentration of element with respect to its sublattice.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Eg

Eg_Gamma

Eg_L

Eg_X

F

P

a

electron_affinity

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_X_DOS

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

nonparabolicity

refractive_index

element_fraction(element)[source]

Returns the fractional concentration of element with respect to its sublattice. In a III-V binary, the fraction is either 1 if element is present, or 0 if it is not.

latex()[source]

Returns a LaTeX representation of the alloy.

openbandparams.iii_v_zinc_blende_mixed_alloy module

class openbandparams.iii_v_zinc_blende_mixed_alloy.IIIVZincBlendeMixedAlloy(name, elements, parameters=None)[source]

Bases: IIIVZincBlendeAlloy

The base class for all III-V zinc blende mixed alloys, i.e. ternaries, quaternaries, quinaries, etc.

Methods

__call__(**kwargs)

Used to specify the alloy composition.

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Delta_SO

Eg

Eg_Gamma

Eg_L

Eg_X

Ep

F

P

VBO

a

a_300K

a_c

a_v

b

c11

c12

c44

d

dielectric

dielectric_high_frequency

electron_affinity

luttinger1

luttinger2

luttinger3

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_L_long

meff_e_L_trans

meff_e_X_DOS

meff_e_X_long

meff_e_X_trans

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

n_A

n_B

nonparabolicity

refractive_index

thermal_expansion

Delta_SO = <openbandparams.parameter.MethodParameter object>
Eg_Gamma = <openbandparams.parameter.MethodParameter object>
Eg_L = <openbandparams.parameter.MethodParameter object>
Eg_X = <openbandparams.parameter.MethodParameter object>
Ep = <openbandparams.parameter.MethodParameter object>
F = <openbandparams.parameter.MethodParameter object>
VBO = <openbandparams.parameter.MethodParameter object>
a_300K = <openbandparams.parameter.MethodParameter object>
a_c = <openbandparams.parameter.MethodParameter object>
a_v = <openbandparams.parameter.MethodParameter object>
b = <openbandparams.parameter.MethodParameter object>
c11 = <openbandparams.parameter.MethodParameter object>
c12 = <openbandparams.parameter.MethodParameter object>
c44 = <openbandparams.parameter.MethodParameter object>
d = <openbandparams.parameter.MethodParameter object>
dielectric = <openbandparams.parameter.MethodParameter object>
dielectric_high_frequency = <openbandparams.parameter.MethodParameter object>
luttinger1 = <openbandparams.parameter.MethodParameter object>
luttinger2 = <openbandparams.parameter.MethodParameter object>
luttinger3 = <openbandparams.parameter.MethodParameter object>
luttinger32 = <openbandparams.parameter.MethodParameter object>
meff_SO = <openbandparams.parameter.MethodParameter object>
meff_e_L_DOS = <openbandparams.parameter.MethodParameter object>
meff_e_L_long = <openbandparams.parameter.MethodParameter object>
meff_e_L_trans = <openbandparams.parameter.MethodParameter object>
meff_e_X_DOS = <openbandparams.parameter.MethodParameter object>
meff_e_X_long = <openbandparams.parameter.MethodParameter object>
meff_e_X_trans = <openbandparams.parameter.MethodParameter object>
meff_hh_100 = <openbandparams.parameter.MethodParameter object>
meff_lh_100 = <openbandparams.parameter.MethodParameter object>
n_A = <openbandparams.parameter.MethodParameter object>
n_B = <openbandparams.parameter.MethodParameter object>
thermal_expansion = <openbandparams.parameter.MethodParameter object>

openbandparams.iii_v_zinc_blende_quaternaries module

openbandparams.iii_v_zinc_blende_quaternary module

class openbandparams.iii_v_zinc_blende_quaternary.IIIVZincBlendeQuaternary(name, elements, ternaries, parameters=None, x=None, y=None, z=None)[source]

Bases: IIIVZincBlendeMixedAlloy

The base class for all III-V zinc blende quaternary alloys.

Methods

__call__(**kwargs)

Args:

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Delta_SO

Eg

Eg_Gamma

Eg_L

Eg_X

Ep

F

P

VBO

a

a_300K

a_c

a_v

b

c11

c12

c44

d

dielectric

dielectric_high_frequency

electron_affinity

luttinger1

luttinger2

luttinger3

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_L_long

meff_e_L_trans

meff_e_X_DOS

meff_e_X_long

meff_e_X_trans

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

n_A

n_B

nonparabolicity

refractive_index

thermal_expansion

element_fraction(element)[source]

Returns the atomic fraction of the given element.

latex()[source]

Returns a LaTeX representation of the alloy.

openbandparams.iii_v_zinc_blende_strained module

class openbandparams.iii_v_zinc_blende_strained.IIIVZincBlendeStrained001(unstrained, substrate=None, strain_out_of_plane=None)[source]

Bases: IIIVAlloy

The base class for biaxial-strained III-V zinc blende binary alloys grown on a (001) surface.

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the fractional concentration of element with respect to its sublattice.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

CBO

CBO_Gamma

CBO_L

CBO_X

CBO_hydrostatic_strain_shift

CBO_strain_shift

Eg

Eg_hh

Eg_lh

Eg_strain_shift

VBO

VBO_hh

VBO_hh_strain_shift

VBO_hydrostatic_strain_shift

VBO_lh

VBO_lh_strain_shift

VBO_strain_shift

VBO_uniaxial_strain_shift

electron_affinity

strain_in_plane

strain_out_of_plane

substrate_a

CBO = <openbandparams.parameter.MethodParameter object>
CBO_Gamma = <openbandparams.parameter.MethodParameter object>
CBO_L = <openbandparams.parameter.MethodParameter object>
CBO_X = <openbandparams.parameter.MethodParameter object>
CBO_hydrostatic_strain_shift = <openbandparams.parameter.MethodParameter object>
CBO_strain_shift = <openbandparams.parameter.MethodParameter object>
Eg = <openbandparams.parameter.MethodParameter object>
Eg_hh = <openbandparams.parameter.MethodParameter object>
Eg_lh = <openbandparams.parameter.MethodParameter object>
Eg_strain_shift = <openbandparams.parameter.MethodParameter object>
VBO = <openbandparams.parameter.MethodParameter object>
VBO_hh = <openbandparams.parameter.MethodParameter object>
VBO_hh_strain_shift = <openbandparams.parameter.MethodParameter object>
VBO_hydrostatic_strain_shift = <openbandparams.parameter.MethodParameter object>
VBO_lh = <openbandparams.parameter.MethodParameter object>
VBO_lh_strain_shift = <openbandparams.parameter.MethodParameter object>
VBO_strain_shift = <openbandparams.parameter.MethodParameter object>
VBO_uniaxial_strain_shift = <openbandparams.parameter.MethodParameter object>
element_fraction(element)[source]

Returns the fractional concentration of element with respect to its sublattice. In a III-V binary, the fraction is either 1 if element is present, or 0 if it is not.

latex()[source]

Returns a LaTeX representation of the alloy.

strain_in_plane = <openbandparams.parameter.MethodParameter object>
strain_out_of_plane = <openbandparams.parameter.MethodParameter object>
substrate_a = <openbandparams.parameter.MethodParameter object>

openbandparams.iii_v_zinc_blende_ternaries module

openbandparams.iii_v_zinc_blende_ternary module

class openbandparams.iii_v_zinc_blende_ternary.IIIVZincBlendeTernary(name, elements, binaries, parameters=None, x=None)[source]

Bases: IIIVZincBlendeMixedAlloy

The base class for all III-V zinc blende ternary alloys.

Methods

__call__(**kwargs)

Used to specify the alloy composition.

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Delta_SO

Eg

Eg_Gamma

Eg_L

Eg_X

Ep

F

P

VBO

a

a_300K

a_c

a_v

b

c11

c12

c44

d

dielectric

dielectric_high_frequency

electron_affinity

luttinger1

luttinger2

luttinger3

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_L_long

meff_e_L_trans

meff_e_X_DOS

meff_e_X_long

meff_e_X_trans

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

n_A

n_B

nonparabolicity

refractive_index

thermal_expansion

element_fraction(element)[source]

Returns the atomic fraction of the given element.

latex()[source]

Returns a LaTeX representation of the alloy.

openbandparams.parameter module

class openbandparams.parameter.FunctionParameter(name, function, units, aliases=[], references=[])[source]

Bases: Parameter

Methods

__call__(*args, **kwargs)

Call self as a function.

get_references

class openbandparams.parameter.Parameter(name, units, aliases=[], references=[])[source]

Bases: object

Methods

__call__(*args, **kwargs)

Call self as a function.

get_references

get_references()[source]
class openbandparams.parameter.ValueParameter(name, value, units, aliases=[], references=[])[source]

Bases: Parameter

Methods

__call__(*args, **kwargs)

Call self as a function.

get_references

openbandparams.parameter.method_parameter(dependencies, units, aliases=[], references=[])[source]

openbandparams.reference module

class openbandparams.reference.BibtexReference(bibtex)[source]

Bases: Reference

class openbandparams.reference.Reference[source]

Bases: object

openbandparams.references module

openbandparams.version module

Module contents

class openbandparams.Alloy(name, elements, parameters=None)[source]

Bases: object

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

add_parameter(parameter, overload=False)[source]

Adds a Parameter object to the instance.

If a Parameter with the same name or alias has already been added and overload is False (the default), a ValueError is thrown.

If a class member or method with the same name or alias is already defined, a ValueError is thrown, regardless of the value of overload.

element_fraction(element)[source]

Returns the atomic fraction of the given element.

get_parameter(name, default=None)[source]

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()[source]

Returns a list of the unique parameters (no duplicates).

has_parameter(name)[source]

Returns True if the named parameter is present, or False, otherwise.

latex()[source]

Returns a LaTeX representation of the alloy.

set_parameter(parameter)[source]

Same as calling add_parameter with overload=True

class openbandparams.FunctionParameter(name, function, units, aliases=[], references=[])[source]

Bases: Parameter

Methods

__call__(*args, **kwargs)

Call self as a function.

get_references

class openbandparams.IIIVZincBlendeAlloy(name, elements, parameters=None)[source]

Bases: IIIVAlloy

The base class for all III-V zinc blende alloys.

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Eg

Eg_Gamma

Eg_L

Eg_X

F

P

a

electron_affinity

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_X_DOS

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

nonparabolicity

refractive_index

CBO = <openbandparams.parameter.MethodParameter object>
CBO_Gamma = <openbandparams.parameter.MethodParameter object>
CBO_L = <openbandparams.parameter.MethodParameter object>
CBO_X = <openbandparams.parameter.MethodParameter object>
Eg = <openbandparams.parameter.MethodParameter object>
Eg_Gamma = <openbandparams.parameter.MethodParameter object>
Eg_L = <openbandparams.parameter.MethodParameter object>
Eg_X = <openbandparams.parameter.MethodParameter object>
F = <openbandparams.parameter.MethodParameter object>
P = <openbandparams.parameter.MethodParameter object>
a = <openbandparams.parameter.MethodParameter object>
luttinger32 = <openbandparams.parameter.MethodParameter object>
luttinger4 = <openbandparams.parameter.MethodParameter object>
meff_SO = <openbandparams.parameter.MethodParameter object>
meff_e_Gamma = <openbandparams.parameter.MethodParameter object>
meff_e_L_DOS = <openbandparams.parameter.MethodParameter object>
meff_e_X_DOS = <openbandparams.parameter.MethodParameter object>
meff_hh_100 = <openbandparams.parameter.MethodParameter object>
meff_hh_110 = <openbandparams.parameter.MethodParameter object>
meff_hh_111 = <openbandparams.parameter.MethodParameter object>
meff_lh_100 = <openbandparams.parameter.MethodParameter object>
meff_lh_110 = <openbandparams.parameter.MethodParameter object>
meff_lh_111 = <openbandparams.parameter.MethodParameter object>
nonparabolicity = <openbandparams.parameter.MethodParameter object>
refractive_index = <openbandparams.parameter.MethodParameter object>
strained_001(target)[source]

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

Parameters:
targetAlloy with a parameter or float

Growth substrate, assumed to have a (001) surface, or out-of-plane strain, which is negative for tensile strain and positive for compressive strain. This is the strain measured by X-ray diffraction (XRD) symmetric omega-2theta scans.

class openbandparams.IIIVZincBlendeBinary(name, elements, parameters=None)[source]

Bases: IIIVZincBlendeAlloy

The base class for all III-V zinc blende binary alloys.

Methods

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the fractional concentration of element with respect to its sublattice.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Eg

Eg_Gamma

Eg_L

Eg_X

F

P

a

electron_affinity

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_X_DOS

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

nonparabolicity

refractive_index

element_fraction(element)[source]

Returns the fractional concentration of element with respect to its sublattice. In a III-V binary, the fraction is either 1 if element is present, or 0 if it is not.

latex()[source]

Returns a LaTeX representation of the alloy.

class openbandparams.IIIVZincBlendeQuaternary(name, elements, ternaries, parameters=None, x=None, y=None, z=None)[source]

Bases: IIIVZincBlendeMixedAlloy

The base class for all III-V zinc blende quaternary alloys.

Methods

__call__(**kwargs)

Args:

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Delta_SO

Eg

Eg_Gamma

Eg_L

Eg_X

Ep

F

P

VBO

a

a_300K

a_c

a_v

b

c11

c12

c44

d

dielectric

dielectric_high_frequency

electron_affinity

luttinger1

luttinger2

luttinger3

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_L_long

meff_e_L_trans

meff_e_X_DOS

meff_e_X_long

meff_e_X_trans

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

n_A

n_B

nonparabolicity

refractive_index

thermal_expansion

element_fraction(element)[source]

Returns the atomic fraction of the given element.

latex()[source]

Returns a LaTeX representation of the alloy.

class openbandparams.IIIVZincBlendeTernary(name, elements, binaries, parameters=None, x=None)[source]

Bases: IIIVZincBlendeMixedAlloy

The base class for all III-V zinc blende ternary alloys.

Methods

__call__(**kwargs)

Used to specify the alloy composition.

add_parameter(parameter[, overload])

Adds a Parameter object to the instance.

element_fraction(element)

Returns the atomic fraction of the given element.

get_parameter(name[, default])

Returns the named parameter if present, or the value of default, otherwise.

get_unique_parameters()

Returns a list of the unique parameters (no duplicates).

has_parameter(name)

Returns True if the named parameter is present, or False, otherwise.

latex()

Returns a LaTeX representation of the alloy.

set_parameter(parameter)

Same as calling add_parameter with overload=True

strained_001(target)

Returns an instance of IIIVZincBlendeStrained001, which is a biaxial-strained III-V zinc blende binary alloy grown on a (001) surface.

CBO

CBO_Gamma

CBO_L

CBO_X

Delta_SO

Eg

Eg_Gamma

Eg_L

Eg_X

Ep

F

P

VBO

a

a_300K

a_c

a_v

b

c11

c12

c44

d

dielectric

dielectric_high_frequency

electron_affinity

luttinger1

luttinger2

luttinger3

luttinger32

luttinger4

meff_SO

meff_e_Gamma

meff_e_L_DOS

meff_e_L_long

meff_e_L_trans

meff_e_X_DOS

meff_e_X_long

meff_e_X_trans

meff_hh_100

meff_hh_110

meff_hh_111

meff_lh_100

meff_lh_110

meff_lh_111

n_A

n_B

nonparabolicity

refractive_index

thermal_expansion

element_fraction(element)[source]

Returns the atomic fraction of the given element.

latex()[source]

Returns a LaTeX representation of the alloy.

class openbandparams.Parameter(name, units, aliases=[], references=[])[source]

Bases: object

Methods

__call__(*args, **kwargs)

Call self as a function.

get_references

get_references()[source]
class openbandparams.ValueParameter(name, value, units, aliases=[], references=[])[source]

Bases: Parameter

Methods

__call__(*args, **kwargs)

Call self as a function.

get_references

openbandparams.method_parameter(dependencies, units, aliases=[], references=[])[source]