Octopus
basis_vectors_oct_m Module Reference

Data Types

interface  basis_vectors_t
 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...
 

Functions/Subroutines

type(basis_vectors_t) function basis_vectors_constructor (namespace, dim, vectors)
 
subroutine basis_vectors_copy (this, source)
 
subroutine basis_vectors_finalize (this)
 
subroutine basis_vectors_scale (this, factor)
 
pure real(real64) function, dimension(1:this%dim) basis_vectors_from_cartesian1 (this, xx_cart)
 
pure real(real64) function, dimension(1:this%dim) basis_vectors_to_cartesian1 (this, xx)
 
real(real64) function, dimension(np, this%dim) basis_vectors_from_cartesian2 (this, np, xx_cart)
 
real(real64) function, dimension(np, this%dim) basis_vectors_to_cartesian2 (this, np, xx)
 
subroutine calculate_change_of_basis_matrix (dim, vectors, matrix)
 

Function/Subroutine Documentation

◆ basis_vectors_constructor()

type(basis_vectors_t) function basis_vectors_oct_m::basis_vectors_constructor ( type(namespace_t), intent(in)  namespace,
integer, intent(in)  dim,
real(real64), dimension(dim, dim), intent(in)  vectors 
)
private

Definition at line 175 of file basis_vectors.F90.

◆ basis_vectors_copy()

subroutine basis_vectors_oct_m::basis_vectors_copy ( class(basis_vectors_t), intent(out)  this,
class(basis_vectors_t), intent(in)  source 
)
private

Definition at line 211 of file basis_vectors.F90.

◆ basis_vectors_finalize()

subroutine basis_vectors_oct_m::basis_vectors_finalize ( type(basis_vectors_t), intent(inout)  this)
private

Definition at line 226 of file basis_vectors.F90.

◆ basis_vectors_scale()

subroutine basis_vectors_oct_m::basis_vectors_scale ( class(basis_vectors_t), intent(inout)  this,
real(real64), dimension(1:this%dim), intent(in)  factor 
)
private

Definition at line 238 of file basis_vectors.F90.

◆ basis_vectors_from_cartesian1()

pure real(real64) function, dimension(1:this%dim) basis_vectors_oct_m::basis_vectors_from_cartesian1 ( class(basis_vectors_t), intent(in)  this,
real(real64), dimension(1:this%dim), intent(in)  xx_cart 
)
private

Definition at line 258 of file basis_vectors.F90.

◆ basis_vectors_to_cartesian1()

pure real(real64) function, dimension(1:this%dim) basis_vectors_oct_m::basis_vectors_to_cartesian1 ( class(basis_vectors_t), intent(in)  this,
real(real64), dimension(1:this%dim), intent(in)  xx 
)
private

Definition at line 270 of file basis_vectors.F90.

◆ basis_vectors_from_cartesian2()

real(real64) function, dimension(np, this%dim) basis_vectors_oct_m::basis_vectors_from_cartesian2 ( class(basis_vectors_t), intent(in)  this,
integer, intent(in)  np,
real(real64), dimension(:,:), intent(in), contiguous  xx_cart 
)
private

Definition at line 282 of file basis_vectors.F90.

◆ basis_vectors_to_cartesian2()

real(real64) function, dimension(np, this%dim) basis_vectors_oct_m::basis_vectors_to_cartesian2 ( class(basis_vectors_t), intent(in)  this,
integer, intent(in)  np,
real(real64), dimension(:,:), intent(in), contiguous  xx 
)
private

Definition at line 295 of file basis_vectors.F90.

◆ calculate_change_of_basis_matrix()

subroutine basis_vectors_oct_m::calculate_change_of_basis_matrix ( integer, intent(in)  dim,
real(real64), dimension(1:dim, 1:dim), intent(in)  vectors,
real(real64), dimension(1:dim, 1:dim), intent(out)  matrix 
)
private

Definition at line 307 of file basis_vectors.F90.