![]()  | 
  
    Octopus
    
   | 
 
Vectors defining a basis in a vector space. This class provides methods to convert vector coordinates in this basis to and from Cartesian coordinates. Given a vector v, its coordinates in the basis are related to the Cartesian coordinates y_i in the following way: More...
Vectors defining a basis in a vector space. This class provides methods to convert vector coordinates in this basis to and from Cartesian coordinates. Given a vector v, its coordinates in the basis are related to the Cartesian coordinates y_i in the following way:
\[ x_i = \sum_j a_{ij} y_j \]
where a_{ij} are the elements of the change of basis matrix A. The previous expression can be expressed in matrix form:
\[ X = A Y \]
Obtaining the Cartesian coordinates from the basis coordinates is then straighforward using the inverse of A:
\[ Y = A^{-1} X \]
Note that the columns of \(A^{-1}\) are simply the basis vectors.
Definition at line 149 of file basis_vectors.F90.
Private Member Functions | |
| procedure | copy => basis_vectors_copy | 
| generic | assignment => copy | 
| procedure | scale => basis_vectors_scale | 
| generic | from_cartesian => from_cartesian1, from_cartesian2 | 
| generic | to_cartesian => to_cartesian1, to_cartesian2 | 
| procedure | from_cartesian1 => basis_vectors_from_cartesian1 | 
| procedure | to_cartesian1 => basis_vectors_to_cartesian1 | 
| procedure | from_cartesian2 => basis_vectors_from_cartesian2 | 
| procedure | to_cartesian2 => basis_vectors_to_cartesian2 | 
| final | basis_vectors_finalize | 
| type(basis_vectors_t) function | basis_vectors_constructor (namespace, dim, vectors) | 
Private Attributes | |
| integer, private | dim | 
| real(real64), dimension(:,:), allocatable | vectors | 
| the vectors of the basis  More... | |
| real(real64), dimension(:,:), allocatable | change_of_basis_matrix | 
| the change-of-basis matrix to convert from a Cartesian basis to this basis  More... | |
| logical | orthogonal | 
      
  | 
  private | 
Definition at line 156 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 157 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 158 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 159 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 160 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 161 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 162 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 163 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 164 of file basis_vectors.F90.
      
  | 
  finalprivate | 
Definition at line 165 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 175 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 151 of file basis_vectors.F90.
      
  | 
  private | 
the vectors of the basis
Definition at line 152 of file basis_vectors.F90.
      
  | 
  private | 
the change-of-basis matrix to convert from a Cartesian basis to this basis
Definition at line 153 of file basis_vectors.F90.
      
  | 
  private | 
Definition at line 154 of file basis_vectors.F90.