qsymm.model module¶
-
class
qsymm.model.
BlochModel
(hamiltonian=None, locals=None, momenta=('k_x', 'k_y', 'k_z'), keep=None, shape=None, format=None)[source]¶ Bases:
qsymm.model.Model
-
subs
(*args, **kwargs)[source]¶ Substitute symbolic expressions. See
Model.subs
.
-
-
class
qsymm.model.
Model
(hamiltonian=None, locals=None, momenta=('k_x', 'k_y', 'k_z'), keep=None, symbol_normalizer=None, normalize=False, shape=None, format=None)[source]¶ Bases:
collections.UserDict
-
allclose
(other, rtol=1e-05, atol=1e-08, equal_nan=False)[source]¶ Test whether two Models are approximately equal
-
lambdify
(nsimplify=False, *, onsite=False, hopping=False)[source]¶ Return a callable object for the model, with sympy symbols as parameters.
- Parameters
nsimplify (bool, default False) – Whether or not to attempt to rewrite numerical coefficients as exact symbols in sympification.
onsite (bool, default False) – If True, adds ‘site’ as the first argument to the callable object. Helpful for passing Model objects to kwant Builder objects as onsite functions.
hopping (bool, default False) – If True, adds ‘site1’ and ‘site2’ as the first two arguments to the callable object. Helpful for passing Model objects to kwant Builder objects as hopping functions.
Notes –
and hopping are mutually exclusive. If both are set to True, (onsite) –
error is thrown. (an) –
-
subs
(*args, **kwargs)[source]¶ Substitute symbolic expressions. See documentation of
sympy.Expr.subs()
for details.Allows for the replacement of momenta in the Model object. Replacing a momentum k with a sympy.Symbol object p replaces the momentum k with p in the Model. Replacing a momentum k with a number removes the momentum k from the Model momenta. Replacing a momentum k with a sympy expression that does not contain any of the Model.momenta also removes the momentum k from the momenta.
-
tosympy
(nsimplify=False)[source]¶ Return sympy representation of the Model. If nsimplify=True, attempt to rewrite numerical coefficients as exact formulas.
-
transform_symbolic
(func)[source]¶ Transform keys by applying func to all of them. Useful for symbolic substitutions, differentiation, etc.
-