Octopus
current_to_mxll_field_oct_m::current_to_mxll_field_t Interface Reference

Class to transfer a current to a Maxwell field. More...

Detailed Description

Class to transfer a current to a Maxwell field.

This interaction also overrides the do_mapping function to be able to treat particle-based systems. Moreover, it interpolates directly the RS current that is obtained from build_rs_current_state (a complex function) instead of the original current field itself

Definition at line 150 of file current_to_mxll_field.F90.

Inheritance diagram for current_to_mxll_field_oct_m::current_to_mxll_field_t:
Inheritance graph

Public Attributes

logical, public grid_based_partner = .true.
 
integer, public partner_np = 0
 For partners that are point-wise charges. More...
 
real(real64), dimension(:), allocatable, public partner_charge
 array storing a copy of the masses of the partner particles More...
 
real(real64), dimension(:,:), allocatable, public partner_pos
 array storing a copy of the positions of the partner particles More...
 
real(real64), dimension(:,:), allocatable, public partner_vel
 array storing a copy of the positions of the partner particles More...
 
- Public Attributes inherited from field_transfer_oct_m::field_transfer_t
real(real64), dimension(:,:), allocatable, public partner_field
 field from partner More...
 
real(real64), dimension(:,:), allocatable, public system_field
 field transferred to system grid More...
 
type(grid_t), pointer, public system_gr => NULL()
 pointer to grid of the system More...
 
type(regridding_t), pointer, public regridding => NULL()
 
type(time_interpolation_t), pointer, public interpolation => NULL()
 
integer, public ndim
 
logical, public interpolation_initialized = .false.
 

Private Member Functions

procedure init => current_to_mxll_field_init
 
procedure init_space_latt => current_to_mxll_field_init_space_latt
 
procedure do_mapping => current_to_mxll_field_do_mapping
 
procedure calculate_energy => current_to_mxll_field_calculate_energy
 
final current_to_mxll_field_finalize
 
class(current_to_mxll_field_t) function, pointer current_to_mxll_field_constructor (partner)
 

Private Attributes

complex(real64), dimension(:, :), allocatable rs_current
 
integer reg_type
 regularization function type More...
 
real(real64) reg_width
 
real(real64), dimension(:), allocatable reg
 
type(space_t), pointer system_space => NULL()
 
type(lattice_vectors_t), pointer system_latt => NULL()
 

Member Function/Subroutine Documentation

◆ init()

procedure current_to_mxll_field_oct_m::current_to_mxll_field_t::init
private

Definition at line 170 of file current_to_mxll_field.F90.

◆ init_space_latt()

procedure current_to_mxll_field_oct_m::current_to_mxll_field_t::init_space_latt
private

Definition at line 172 of file current_to_mxll_field.F90.

◆ do_mapping()

procedure current_to_mxll_field_oct_m::current_to_mxll_field_t::do_mapping
private

Definition at line 174 of file current_to_mxll_field.F90.

◆ calculate_energy()

procedure current_to_mxll_field_oct_m::current_to_mxll_field_t::calculate_energy
private

Definition at line 176 of file current_to_mxll_field.F90.

◆ current_to_mxll_field_finalize()

final current_to_mxll_field_oct_m::current_to_mxll_field_t::current_to_mxll_field_finalize
finalprivate

Definition at line 178 of file current_to_mxll_field.F90.

◆ current_to_mxll_field_constructor()

class(current_to_mxll_field_t) function, pointer current_to_mxll_field_oct_m::current_to_mxll_field_t::current_to_mxll_field_constructor ( class(interaction_partner_t), intent(inout), target  partner)
private

Definition at line 202 of file current_to_mxll_field.F90.

Member Data Documentation

◆ grid_based_partner

logical, public current_to_mxll_field_oct_m::current_to_mxll_field_t::grid_based_partner = .true.

Definition at line 152 of file current_to_mxll_field.F90.

◆ rs_current

complex(real64), dimension(:, :), allocatable current_to_mxll_field_oct_m::current_to_mxll_field_t::rs_current
private

Definition at line 153 of file current_to_mxll_field.F90.

◆ partner_np

integer, public current_to_mxll_field_oct_m::current_to_mxll_field_t::partner_np = 0

For partners that are point-wise charges.

number of particles in the partner system

Definition at line 156 of file current_to_mxll_field.F90.

◆ partner_charge

real(real64), dimension(:), allocatable, public current_to_mxll_field_oct_m::current_to_mxll_field_t::partner_charge

array storing a copy of the masses of the partner particles

Definition at line 157 of file current_to_mxll_field.F90.

◆ partner_pos

real(real64), dimension(:,:), allocatable, public current_to_mxll_field_oct_m::current_to_mxll_field_t::partner_pos

array storing a copy of the positions of the partner particles

Definition at line 158 of file current_to_mxll_field.F90.

◆ partner_vel

real(real64), dimension(:,:), allocatable, public current_to_mxll_field_oct_m::current_to_mxll_field_t::partner_vel

array storing a copy of the positions of the partner particles

Definition at line 159 of file current_to_mxll_field.F90.

◆ reg_type

integer current_to_mxll_field_oct_m::current_to_mxll_field_t::reg_type
private

regularization function type

Definition at line 161 of file current_to_mxll_field.F90.

◆ reg_width

real(real64) current_to_mxll_field_oct_m::current_to_mxll_field_t::reg_width
private

Definition at line 162 of file current_to_mxll_field.F90.

◆ reg

real(real64), dimension(:), allocatable current_to_mxll_field_oct_m::current_to_mxll_field_t::reg
private

Definition at line 163 of file current_to_mxll_field.F90.

◆ system_space

type(space_t), pointer current_to_mxll_field_oct_m::current_to_mxll_field_t::system_space => NULL()
private

Definition at line 165 of file current_to_mxll_field.F90.

◆ system_latt

type(lattice_vectors_t), pointer current_to_mxll_field_oct_m::current_to_mxll_field_t::system_latt => NULL()
private

Definition at line 166 of file current_to_mxll_field.F90.


The documentation for this interface was generated from the following file: