The WaveBlocks Project
@author: R. Bourquin @copyright: Copyright (C) 2010, 2011, 2012 R. Bourquin @license: Modified BSD License
This class represents a scalar potential . The potential is given as an analytical matrix expression. Some symbolic 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.
Calculate the eigenvalue of the potential . In the scalar case this is just the matrix entry .
Note
This function is idempotent and the eigenvalues are memoized for later reuse.
Calculate the eigenvector of the potential . In the scalar case this is just the value .
Note
This function is idempotent and the eigenvectors are memoized for later reuse.
Calculate the matrix exponential . In this case the matrix is of size thus the exponential simplifies to the scalar exponential function.
Parameters: | factor – A prefactor in the exponential. |
---|
Note
This function is idempotent.
Calculate the hessian matrix for component of the potential. For potentials which depend only one variable , this equals the second derivative.
Calculate the jacobian matrix for the component of the potential. For potentials which depend only one variable , this equals the first derivative.
Calculate the local quadratic approximation of the potential’s eigenvalue .
Parameters: | diagonal_component – Dummy parameter that has no effect here. |
---|
Note
This function is idempotent.
Calculate the non-quadratic remainder of the quadratic approximation of the potential’s eigenvalue . This function is used for the homogeneous case and takes into account the leading component .
Parameters: | diagonal_component – Dummy parameter that has no effect here. |
---|
Note
This function is idempotent.
Evaluate the potential matrix elementwise at some given grid nodes .
Parameters: |
|
---|---|
Returns: | A list with the single entry evaluated at the nodes. |
Evaluate the eigenvalue at some grid nodes .
Parameters: |
|
---|---|
Returns: | A list with the single eigenvalue evaluated at the nodes. |
Evaluate the eigenvector at some grid nodes .
Parameters: | nodes – The grid nodes we want to evaluate the eigenvector at. |
---|---|
Returns: | A list with the eigenvector evaluated at the given nodes. |
Evaluate the exponential of the potential matrix at some grid nodes .
Parameters: | nodes – The grid nodes we want to evaluate the exponential at. |
---|---|
Returns: | The numerical approximation of the matrix exponential at the given grid nodes. |
Evaluate the potential’s hessian at some grid nodes .
Parameters: |
|
---|---|
Returns: | The value of the potential’s hessian at the given nodes. |
Evaluate the potential’s jacobian at some grid nodes .
Parameters: |
|
---|---|
Returns: | The value of the potential’s jacobian at the given nodes. |
Numerically evaluate the local quadratic approximation of the potential’s eigenvalue at the given grid nodes . This function is used for the homogeneous case.
Parameters: | nodes – The grid nodes we want to evaluate the quadratic approximation at. |
---|---|
Returns: | An array containing the values of at the nodes . |
Numerically evaluate the non-quadratic remainder of the quadratic approximation of the potential’s eigenvalue at the given nodes . This function is used for the homogeneous and the inhomogeneous case and just evaluates the remainder .
Parameters: |
|
---|---|
Returns: | A list with a single entry consisting of an array containing the values of at the nodes . |
Returns: | The number of components the potential supports. In the one dimensional case, it’s just 1. |
---|
The matrix of the potential .
Project a given vector from the potential’s eigenbasis to the canonical basis.
Parameters: |
|
---|---|
Returns: | This method does nothing and returns the values. |
Project a given vector from the canonical basis to the eigenbasis of the potential.
Parameters: |
|
---|---|
Returns: | This method does nothing and returns the values. |
The variable that represents position space.