| 
| class(perturbation_kdotp_t) function, pointer  | perturbation_kdotp_constructor (namespace, ions) | 
|   | The factory routine (or constructor) allocates a pointer of the corresponding type and then calls the init routine which is a type-bound procedure of the corresponding type. With this design, also derived classes can use the init routine of the parent class.  More...
  | 
|   | 
| subroutine  | perturbation_kdotp_init (this, namespace, ions) | 
|   | 
| subroutine  | perturbation_kdotp_finalize (this) | 
|   | 
| subroutine  | perturbation_kdotp_copy (this, source) | 
|   | 
| subroutine  | perturbation_kdotp_info (this) | 
|   | 
| subroutine  | dperturbation_kdotp_apply (this, namespace, space, gr, hm, ik, f_in, f_out, set_bc) | 
|   | Returns f_out = H' f_in, where H' is perturbation Hamiltonian Note that e^ikr phase is applied to f_in, then is removed afterward.  More...
  | 
|   | 
| subroutine  | dperturbation_kdotp_apply_order_2 (this, namespace, space, gr, hm, ik, f_in, f_out) | 
|   | d^2/dki dkj (-(1/2) ki kj [ri,[rj,H]]) = for i = j : 1 - [ri,[rj,Vnl]] for i != j : -(1/2) [ri,[rj,Vnl]] Ref: Eq. 3 from M Cardona and FH Pollak, Phys. Rev. 142, 530-543 (1966) Except everything is times minus one, since our kdotp perturbation is d/d(ik)  More...
  | 
|   | 
| subroutine  | zperturbation_kdotp_apply (this, namespace, space, gr, hm, ik, f_in, f_out, set_bc) | 
|   | Returns f_out = H' f_in, where H' is perturbation Hamiltonian Note that e^ikr phase is applied to f_in, then is removed afterward.  More...
  | 
|   | 
| subroutine  | zperturbation_kdotp_apply_order_2 (this, namespace, space, gr, hm, ik, f_in, f_out) | 
|   | d^2/dki dkj (-(1/2) ki kj [ri,[rj,H]]) = for i = j : 1 - [ri,[rj,Vnl]] for i != j : -(1/2) [ri,[rj,Vnl]] Ref: Eq. 3 from M Cardona and FH Pollak, Phys. Rev. 142, 530-543 (1966) Except everything is times minus one, since our kdotp perturbation is d/d(ik)  More...
  | 
|   | 
  
  
      
        
          | subroutine perturbation_kdotp_oct_m::dperturbation_kdotp_apply_order_2  | 
          ( | 
          class(perturbation_kdotp_t), intent(in)  | 
          this,  | 
         
        
           | 
           | 
          type(namespace_t), intent(in)  | 
          namespace,  | 
         
        
           | 
           | 
          class(space_t), intent(in)  | 
          space,  | 
         
        
           | 
           | 
          type(grid_t), intent(in)  | 
          gr,  | 
         
        
           | 
           | 
          type(hamiltonian_elec_t), intent(in)  | 
          hm,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          ik,  | 
         
        
           | 
           | 
          real(real64), dimension(:, :), intent(in), contiguous  | 
          f_in,  | 
         
        
           | 
           | 
          real(real64), dimension(:, :), intent(out), contiguous  | 
          f_out  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
d^2/dki dkj (-(1/2) ki kj [ri,[rj,H]]) = for i = j : 1 - [ri,[rj,Vnl]] for i != j : -(1/2) [ri,[rj,Vnl]] Ref: Eq. 3 from M Cardona and FH Pollak, Phys. Rev. 142, 530-543 (1966) Except everything is times minus one, since our kdotp perturbation is d/d(ik) 
Definition at line 455 of file perturbation_kdotp.F90.
 
 
  
  
      
        
          | subroutine perturbation_kdotp_oct_m::zperturbation_kdotp_apply_order_2  | 
          ( | 
          class(perturbation_kdotp_t), intent(in)  | 
          this,  | 
         
        
           | 
           | 
          type(namespace_t), intent(in)  | 
          namespace,  | 
         
        
           | 
           | 
          class(space_t), intent(in)  | 
          space,  | 
         
        
           | 
           | 
          type(grid_t), intent(in)  | 
          gr,  | 
         
        
           | 
           | 
          type(hamiltonian_elec_t), intent(in)  | 
          hm,  | 
         
        
           | 
           | 
          integer, intent(in)  | 
          ik,  | 
         
        
           | 
           | 
          complex(real64), dimension(:, :), intent(in), contiguous  | 
          f_in,  | 
         
        
           | 
           | 
          complex(real64), dimension(:, :), intent(out), contiguous  | 
          f_out  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
d^2/dki dkj (-(1/2) ki kj [ri,[rj,H]]) = for i = j : 1 - [ri,[rj,Vnl]] for i != j : -(1/2) [ri,[rj,Vnl]] Ref: Eq. 3 from M Cardona and FH Pollak, Phys. Rev. 142, 530-543 (1966) Except everything is times minus one, since our kdotp perturbation is d/d(ik) 
Definition at line 747 of file perturbation_kdotp.F90.