ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/src/UseTheForce/DarkSide/electrostatic_interface.F90
Revision: 2552
Committed: Thu Jan 12 16:47:25 2006 UTC (18 years, 5 months ago) by chrisfen
File size: 4084 byte(s)
Log Message:
unifying function name in electrostatics

File Contents

# Content
1 subroutine setElectrostaticSummationMethod(the_ESM)
2 use electrostatic_module, ONLY : module_setESM => setElectrostaticSummationMethod
3 integer,intent(inout) :: the_ESM
4 call module_setESM(the_ESM)
5 end subroutine setElectrostaticSummationMethod
6
7 subroutine setScreeningMethod(the_SM)
8 use electrostatic_module, ONLY : module_setSM => setScreeningMethod
9 integer,intent(inout) :: the_SM
10 call module_setSM(the_SM)
11 end subroutine setScreeningMethod
12
13 subroutine setElectrostaticCutoffRadius(the_rcut, the_rsw)
14 use electrostatic_module, ONLY : module_setECR => setElectrostaticCutoffRadius
15 use definitions, ONLY : dp
16 real(kind=dp), intent(inout) :: the_rcut
17 real(kind=dp), intent(inout) :: the_rsw
18 call module_setECR(the_rcut, the_rsw)
19 end subroutine setElectrostaticCutoffRadius
20
21 subroutine setDampingAlpha(the_alpha)
22 use electrostatic_module, ONLY : module_setDA => setDampingAlpha
23 use definitions, ONLY : dp
24 real(kind=dp),intent(inout) :: the_alpha
25 call module_setDA(the_alpha)
26 end subroutine setDampingAlpha
27
28 subroutine setReactionFieldDielectric(the_dielectric)
29 use electrostatic_module, ONLY : module_setRFD => setReactionFieldDielectric
30 use definitions, ONLY : dp
31 real(kind=dp),intent(inout) :: the_dielectric
32 call module_setRFD(the_dielectric)
33 end subroutine setReactionFieldDielectric
34
35 subroutine newElectrostaticType(atp, status)
36
37 use electrostatic_module, ONLY : module_newElectrostaticType => newElectrostaticType
38
39 #define __FORTRAN90
40 #include "types/AtomTypeProperties.h"
41
42 type(AtomTypeProperties), intent(in) :: atp
43 integer, intent(inout) :: status
44
45 integer :: ident
46 logical :: is_Electrostatic, is_Charge, is_Dipole
47 logical :: is_SplitDipole, is_Quadrupole, is_Tap
48
49 ident = atp%ident
50 is_Electrostatic = ((atp%is_Charge .ne. 0) .or. &
51 (atp%is_Dipole .ne. 0)) .or. &
52 (atp%is_Quadrupole .ne. 0)
53 is_Charge = (atp%is_Charge .ne. 0)
54 is_Dipole = (atp%is_Dipole .ne. 0)
55 is_SplitDipole = (atp%is_SplitDipole .ne. 0)
56 is_Quadrupole = (atp%is_Quadrupole .ne. 0)
57 is_Tap = (atp%is_StickyPower .ne. 0)
58
59 call module_newElectrostaticType(ident, is_Charge, is_Dipole, &
60 is_SplitDipole, is_Quadrupole, is_Tap, status)
61
62 end subroutine newElectrostaticType
63
64 subroutine setCharge(ident, charge, status)
65
66 use electrostatic_module, ONLY : module_setCharge => setCharge
67
68 integer, parameter :: DP = selected_real_kind(15)
69 integer,intent(inout) :: ident
70 real(kind=dp),intent(inout) :: charge
71 integer,intent(inout) :: status
72
73 call module_setCharge(ident, charge, status)
74
75 end subroutine setCharge
76
77 subroutine setDipoleMoment(ident, dipole_moment, status)
78
79 use electrostatic_module, ONLY : module_setDipoleMoment => setDipoleMoment
80
81 integer, parameter :: DP = selected_real_kind(15)
82 integer,intent(inout) :: ident
83 real(kind=dp),intent(inout) :: dipole_moment
84 integer,intent(inout) :: status
85
86 call module_setDipoleMoment(ident, dipole_moment, status)
87
88 end subroutine setDipoleMoment
89
90 subroutine setSplitDipoleDistance(ident, split_dipole_distance, status)
91
92 use electrostatic_module, ONLY : module_setSplitDipoleDistance => setSplitDipoleDistance
93
94 integer, parameter :: DP = selected_real_kind(15)
95 integer,intent(inout) :: ident
96 real(kind=dp),intent(inout) :: split_dipole_distance
97 integer,intent(inout) :: status
98
99 call module_setSplitDipoleDistance(ident, split_dipole_distance, status)
100
101 end subroutine setSplitDipoleDistance
102
103 subroutine setQuadrupoleMoments(ident, quadrupole_moments, status)
104
105 use electrostatic_module, ONLY : module_setQuadrupoleMoments => setQuadrupoleMoments
106
107 integer, parameter :: DP = selected_real_kind(15)
108 integer,intent(inout) :: ident
109 real(kind=dp),intent(inout),dimension(3) :: quadrupole_moments
110 integer,intent(inout) :: status
111
112 call module_setQuadrupoleMoments(ident, quadrupole_moments, status)
113
114 end subroutine setQuadrupoleMoments
115
116 subroutine destroyElectrostaticTypes()
117 use electrostatic_module, ONLY: m_destroyElectrostaticTypes =>destroyElectrostaticTypes
118
119 call m_destroyElectrostaticTypes()
120
121 end subroutine destroyElectrostaticTypes