The WaveBlocks Project
@author: R. Bourquin @copyright: Copyright (C) 2010, 2011, 2012 R. Bourquin @license: Modified BSD License
This class represents a matrix potential . The potential is given as an analytical
expression with a matrix of size bigger than
. Some calculations
with the potential are supported. For example calculation of eigenvalues and
exponentials and numerical evaluation. Further, there are methods for
splitting the potential into a Taylor expansion and for basis transformations
between canonical and eigenbasis. All methods use numerical techniques because
symbolical calculations are unfeasible.
Calculate the eigenvalues of the potential
.
We do the calculations with numerical tools. The multiplicities are taken into account.
Note
Note: the eigenvalues are memoized for later reuse.
Calculate the two eigenvectors of the potential
.
We do the calculations with numerical tools.
Note
The eigenvectors are memoized for later reuse.
Calculate the matrix exponential . In the case where
the matrix is of size bigger than
symbolical calculations become
unfeasible. We use numerical approximations to determine the matrix exponential.
Parameters: | factor – A prefactor ![]() |
---|
Calculate the hessian matrix for each component of the potential.
For potentials which depend only one variable
, this equals the second derivative.
Calculate the jacobian matrix for each component of the potential.
For potentials which depend only one variable
, this equals the first derivative.
Calculate the local quadratic approximation matrix of the potential’s
eigenvalues in
. This function can be used for the homogeneous case
and takes into account the leading component
.
If the parameter
is not given, calculate the local quadratic approximation
matrix
of all the potential’s eigenvalues in
. This function is used
for the inhomogeneous case.
Parameters: | diagonal_component – Specifies the index ![]() ![]() ![]() |
---|
Calculate the non-quadratic remainder matrix of the quadratic
approximation matrix
of the potential’s eigenvalue matrix
.
This function is used for the homogeneous case and takes into account the leading component
.
Parameters: | diagonal_component – Specifies the index ![]() ![]() |
---|
Evaluate the potential matrix elementwise at some given grid nodes .
Parameters: |
|
---|---|
Returns: | A list with the |
Evaluate the eigenvalues at some grid nodes
.
Parameters: |
|
---|---|
Returns: | A sorted list with |
Evaluate the eigenvectors at some grid nodes
.
Parameters: | nodes – The grid nodes ![]() |
---|---|
Returns: | A list with the ![]() |
Evaluate the exponential of the potential matrix at some grid nodes
.
For matrices of size
we do completely numerical exponentation.
Parameters: | nodes – The grid nodes ![]() |
---|---|
Returns: | The numerical approximation of the matrix exponential at the given grid nodes. |
Evaluate the hessian at some grid nodes for each component
of the potential.
Parameters: |
|
---|---|
Returns: | Either a list or a single value depending on the optional parameters. |
Evaluate the jacobian at some grid nodes for each component
of the potential.
Parameters: |
|
---|---|
Returns: | Either a list or a single value depending on the optional parameters. |
Numerically evaluate the local quadratic approximation matrix of
the potential’s eigenvalues in
at the given grid nodes
.
Parameters: |
|
---|---|
Returns: | A list of arrays or a single array containing the values of |
Numerically evaluate the non-quadratic remainder matrix of the quadratic
approximation matrix
of the potential’s eigenvalues in
at the
given nodes
. This function is used for the homogeneous and the
inhomogeneous case and just evaluates the remainder matrix
.
Parameters: |
|
---|---|
Returns: | A list with a single entry consisting of an array containing the values of |
Returns: | The number ![]() |
---|
The matrix of the potential .
Project a given vector from the potential’s eigenbasis to the canonical basis.
Parameters: |
|
---|---|
Returns: | Returned is another list containing the projection of the values into the eigenbasis. |
Project a given vector from the canonical basis to the eigenbasis of the potential.
Parameters: |
|
---|---|
Returns: | Returned is another list containing the projection of the values into the eigenbasis. |
The variable that represents position space.