ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE_old/src/mdtools/libmdCode/atype_typedefs.F90
Revision: 292
Committed: Thu Mar 6 14:52:44 2003 UTC (21 years, 4 months ago) by chuckv
File size: 2525 byte(s)
Log Message:
Changed code to use one generic force loop. Only one super atype that
has all information is now used.

File Contents

# Content
1 !! module defines atypes available to simulation
2
3 module atype_typedefs
4 use definitions, only: dp
5 implicit none
6
7
8 !! Atype for lennard-jones module
9 type :: lj_atype
10
11 !! Unique number for place in linked list
12 integer :: atype_number = 0
13 !! Unique indentifier number (ie atomic no, etc)
14 integer :: atype_ident = 0
15 !! Mass of Particle
16 real ( kind = dp ) :: mass = 0.0_dp
17 !! Lennard-Jones epslon
18 real ( kind = dp ) :: epsilon = 0.0_dp
19 !! Lennard-Jones Sigma
20 real ( kind = dp ) :: sigma = 0.0_dp
21 !! Lennard-Jones Sigma Squared
22 real ( kind = dp ) :: sigma2 = 0.0_dp
23 !! Lennard-Jones Sigma to sixth
24 real ( kind = dp ) :: sigma6 = 0.0_dp
25 !! Pointer for linked list creation
26 type (lj_atype), pointer :: next => null()
27 type (lj_atype), pointer :: prev => null()
28 end type lj_atype
29 !! Pointer list for ljAtype
30 type :: lj_identPtrList
31 type(lj_atype), pointer :: this => null()
32 end type lj_identPtrList
33
34 !! Atype for soft sticky dipole water module
35 type :: ssd_atype
36
37 integer :: atype_ident
38
39 !! Lennard-Jones portion of SSD model
40 type (lj_atype) :: lj_params
41
42 logical :: hasDipole
43 real ( kind = dp ) :: dipoleMoment = 0.0_dp
44 real ( kind = dp ) :: w0
45 real ( kind = dp ) :: v0
46 !! Pointer for linked list creation
47 type (ssd_atype), pointer :: next => null()
48 type (ssd_atype), pointer :: prev => null()
49
50 end type ssd_atype
51 !! Pointer list for ljAtype
52 type :: ssd_identPtrList
53 type(ssd_atype), pointer :: this => null()
54 end type ssd_identPtrList
55
56
57 type :: atype
58
59 integer :: atype_ident
60 integer :: atom_number
61
62 logical :: is_LJ = .false.
63 logical :: is_DP = .false.
64 logical :: is_Sticky = .false.
65 logical :: is_GB = .false.
66
67 !! Mass of Particle
68 real ( kind = dp ) :: mass = 0.0_dp
69 !! Lennard-Jones epslon
70 real ( kind = dp ) :: epsilon = 0.0_dp
71 !! Lennard-Jones Sigma
72 real ( kind = dp ) :: sigma = 0.0_dp
73 !! Lennard-Jones Sigma Squared
74 real ( kind = dp ) :: sigma2 = 0.0_dp
75 !! Lennard-Jones Sigma to sixth
76 real ( kind = dp ) :: sigma6 = 0.0_dp
77
78 real ( kind = dp ) :: dipoleMoment = 0.0_dp
79 real ( kind = dp ) :: w0 = 0.0_dp
80 real ( kind = dp ) :: v0 = 0.0_dp
81 !
82
83 !! Pointer for linked list creation
84 type (lj_atype), pointer :: next => null()
85 type (lj_atype), pointer :: prev => null()
86
87 end type atype
88
89 type :: identPtrList
90 type(atype), pointer :: this => null()
91 end type identPtrList
92
93
94
95 end module atype_typedefs