|
| _construct_ham (self, ddp, ll_max=None, h_sym=None, params=None, pot=None, ll_mode='full', split=0.0, lattice_reg=False, ignorestrain=False, axial=True, solver=None, h_sym_opts=None, **ignored_opts) |
|
| _solve_ham (self, ddp, solver=None, params=None, ll_mode='full', ll_max=None, **ignored_opts) |
|
| _post_solve (self, ddp=None, ll_max=None, h_sym=None, params=None, obs=None, obs_prop=None, return_eivec=False, overlap_eivec=None, berry=False, transitions=False, transitions_range=None, wflocations=None, ll_mode='full', **ignored_opts) |
|
| _step_grouping_wrapper (self, ddp) |
|
| _load_ddp (self, ddp) |
|
Model for LL dispersion mode - Symbolic Hamiltonian version.
kdotpy.models.ModelLL._construct_ham |
( |
| self, |
|
|
| ddp, |
|
|
| ll_max = None, |
|
|
| h_sym = None, |
|
|
| params = None, |
|
|
| pot = None, |
|
|
| ll_mode = 'full', |
|
|
| split = 0.0, |
|
|
| lattice_reg = False, |
|
|
| ignorestrain = False, |
|
|
| axial = True, |
|
|
| solver = None, |
|
|
| h_sym_opts = None, |
|
|
** | ignored_opts ) |
|
protected |
Actual (private) step implementation for Hamiltonian construction.
Runs on worker process/thread.
Arguments:
ddp DiagDataPoint instance with specific parameters.
ll_max Integer. Maximum LL index.
h_sym SymbolicHamiltonian instance. The Hamiltonian.
params PhysParams instance.
pot Array. Potential V(z) in meV as function of position.
ll_mode LL calculation mode: legacy, sym or full
Following arguments apply only to ll_mode 'legacy':
split Float. Amount of degeneracy lifting at zero magnetic
field.
lattice_reg True or False. Whether to apply lattice regularization
(x -> sin x). Default set to False to match symbolic
modes.
ignorestrain True or False. If True, do not include strain terms in
the Hamiltonian.
axial True or False. If True, apply axial approximation. If
False, include non-axial terms in the Hamiltonian.
solver DiagSolver instance. Set hllsplit magnitude from solver
precision.
h_sym_opts Modelopts dict for per-DDP construction of symbolic
Hamiltonian. Only required in ll_mode 'full' or 'sym' if
no constant h_sym can be given.
Returns:
Tuple with either
- 'full' mode: Hamiltonian and zero-field split Hamiltonian
- 'sym' or 'legacy' mode: List of single LL Hamiltonians and None (no
splitting correction!)
The last element of the tuple is the symbolic Hamiltonian for this DDP,
if a new construction was necessary.
Reimplemented from kdotpy.models.ModelBase.
kdotpy.models.ModelLL._post_solve |
( |
| self, |
|
|
| ddp = None, |
|
|
| ll_max = None, |
|
|
| h_sym = None, |
|
|
| params = None, |
|
|
| obs = None, |
|
|
| obs_prop = None, |
|
|
| return_eivec = False, |
|
|
| overlap_eivec = None, |
|
|
| berry = False, |
|
|
| transitions = False, |
|
|
| transitions_range = None, |
|
|
| wflocations = None, |
|
|
| ll_mode = 'full', |
|
|
** | ignored_opts ) |
|
protected |
Actual (private) step implementation for DiagDataPoint post solve processing.
Runs on worker process/thread.
Arguments:
ddp DiagDataPoint instance with specific parameters.
params PhysParams instance.
obs List of strings or None. Observable ids of the
observables that will be calculated. If None or empty
list, do not do anything.
obs_prop ObservableList instance containing all observable
properties.
return_eivec True, False or None. If True, keep eigenvector data in
the return value (DiagDataPoint instance). If False,
discard them. If None, discard them only if observables
have been calculated.
overlap_eivec A dict, whose keys are the band labels (characters) and
values are the eigenvectors for which overlaps can be
calculated with the eigenvectors of this Hamiltonian.
berry 2-tuple, True or False. If a 2-tuple of integers,
calculate Berry curvature for bands with indices in this
range. If True, calculate Berry curvature for all states.
If False, do not calculate Berry curvature.
transitions True or False, or float. If True or a float, calculate
optical transitions, where a float indicates the minimum
transition amplitude, below which the transitions are
discarded. If False, do not calculate transitions.
transitions_range 2-tuple or None. If set, calculate optical
transitions only for states in that energy range. If
None, do not restrict to an energy range.
wflocations List, array, or VectorGrid instance. Contains the
magnetic field values where wave functions should be
saved (plot and table). None if no wave functions should
be saved.
ll_mode LL calculation mode.
Returns:
A DiagDataPoint instance (not connected to a DiagData instance).
Reimplemented from kdotpy.models.ModelBase.