Octopus
mxll_vec_pot_to_matter.F90
Go to the documentation of this file.
1!! Copyright (C) 2022 F. Bonafé
2!!
3!! This program is free software; you can redistribute it and/or modify
4!! it under the terms of the GNU General Public License as published by
5!! the Free Software Foundation; either version 2, or (at your option)
6!! any later version.
7!!
8!! This program is distributed in the hope that it will be useful,
9!! but WITHOUT ANY WARRANTY; without even the implied warranty of
10!! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11!! GNU General Public License for more details.
12!!
13!! You should have received a copy of the GNU General Public License
14!! along with this program; if not, write to the Free Software
15!! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
16!! 02110-1301, USA.
17!!
18#include "global.h"
19
21 use debug_oct_m
23 use global_oct_m
26
27 implicit none
28
29 private
30 public :: &
32
42 contains
45
46
49 end interface mxll_vec_pot_to_matter_t
50
51contains
52
53 function mxll_vec_pot_to_matter_constructor(partner) result(this)
54 class(interaction_partner_t), target, intent(inout) :: partner
55 class(mxll_vec_pot_to_matter_t), pointer :: this
56
58
59 allocate(this)
60
61 this%label = "mxll_vec_pot_to_matter"
62 this%partner => partner
63
64 this%couplings_from_partner = [vector_potential]
65
66 this%intra_interaction = .false.
67
70
71! ---------------------------------------------------------
72 subroutine mxll_vec_pot_to_matter_finalize(this)
73 type(mxll_vec_pot_to_matter_t), intent(inout) :: this
74
76
77 call this%end()
78
81
83
84!! Local Variables:
85!! mode: f90
86!! coding: utf-8
87!! End:
This module implements the field transfer.
This module defines classes and functions for interaction partners.
class(mxll_vec_pot_to_matter_t) function, pointer mxll_vec_pot_to_matter_constructor(partner)
This module defines the quantity_t class and the IDs for quantities, which can be exposed by a system...
Definition: quantity.F90:137
integer, parameter, public vector_potential
Definition: quantity.F90:146
class defining the field_transfer interaction
class to transfer a Maxwell vector potential to a medium