- Timestamp:
- 11/19/09 11:29:41 (14 years ago)
- Branches:
- master
- Children:
- 38d77eb
- Parents:
- 6650a56
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
energy.f
r6650a56 r32289cd 4 4 ! 5 5 ! Copyright 2003-2005 Frank Eisenmenger, U.H.E. Hansmann, 6 ! Shura Hayryan, Chin-Ku 6 ! Shura Hayryan, Chin-Ku 7 7 ! Copyright 2007 Frank Eisenmenger, U.H.E. Hansmann, 8 8 ! Jan H. Meinke, Sandipan Mohanty … … 22 22 23 23 include 'INCL.H' 24 double precision esm, teysl, enyshe, enyflx, enylun, enyreg 25 double precision enysol, esolan, exvlun, eyabgn, eninteract 26 27 integer i 28 24 29 double precision teysm, teyel, teyvw, teyhb, teyvr 25 ! print *,'energy function with ientyp = ',ientyp 30 ! print *,'energy function with ientyp = ',ientyp 26 31 esm = 0.d0 27 32 teysm = 0.d0 … … 32 37 teysl = 0.d0 33 38 34 do i = 1,ntlml 39 do i = 1,ntlml 35 40 eysm=0 36 41 eyel=0 … … 44 49 if (ientyp.eq.0.or.ientyp.eq.3) then 45 50 esm=esm+enyshe(i) 46 else if (ientyp.eq.1) then 51 else if (ientyp.eq.1) then 47 52 esm=esm+enyflx(i) 48 53 else if (ientyp.eq.2) then … … 57 62 ! The Lund term stores the hydrophobicity energy in eysl 58 63 teysl = teysl + eysl 59 else 64 else 60 65 ! .. and the excluded volume term in eyvw, which is calculated once. 61 66 teyvw = teyvw + eyvw 62 67 endif 63 68 64 if (ireg.eq.1) eyrg=enyreg(i) 69 if (ireg.eq.1) eyrg=enyreg(i) 65 70 66 71 enddo 67 72 68 if (ientyp.ne.2) then 69 ! Don't touch eysl if using Lund potential, as enylun stores 73 if (ientyp.ne.2) then 74 ! Don't touch eysl if using Lund potential, as enylun stores 70 75 ! its hydrophobicity term there. 71 76 if (itysol.gt.0) then … … 79 84 eysl=0.d0 80 85 endif 81 else 86 else 82 87 ! Add excluded volume term and save it in eyvw 83 88 esm=esm+exvlun(0) … … 85 90 endif 86 91 87 ! The Abagyan entropic corrections depend on the area exposed to the 92 ! The Abagyan entropic corrections depend on the area exposed to the 88 93 ! solvent for each residue. So, this term has to be evaluated after the 89 94 ! solvent term. 90 95 eyab=0.0 91 96 if (ientyp.eq.3) then 92 do i = 1,ntlml 97 do i = 1,ntlml 93 98 eyab=eyab+eyabgn(i) 94 99 enddo … … 103 108 eyvr = teyvr 104 109 eysl = teysl 105 110 106 111 if (ientyp.ne.2) then 107 112 ! This is temporary. eninteract() does not yet know how to calculate … … 116 121 !c Calculates the internal energy for a single molecule. 117 122 ! All the partial energies are thus set to their values for molecule 118 ! nml. 123 ! nml. 119 124 ! 120 125 ! @param nml the ID of the molecule … … 125 130 126 131 !f2py intent(in) nml 127 132 128 133 include 'INCL.H' 134 double precision esm, enyshe, enyflx, enylun, enyreg, enysol 135 double precision esolan, exvlun, eyabgn 136 137 integer nml, i 138 129 139 esm = 0.d0 130 140 131 call setvar(nml,vlvr) 141 call setvar(nml,vlvr) 132 142 133 143 if (ientyp.eq.0.or.ientyp.eq.3) then … … 149 159 eysl=0.d0 150 160 endif 151 else 161 else 152 162 esm=esm+exvlun(nml) 153 163 endif 154 ! The Abagyan entropic corrections depend on the area exposed to the 164 ! The Abagyan entropic corrections depend on the area exposed to the 155 165 ! solvent for each residue. So, this term has to be evaluated after the 156 166 ! solvent term.
Note:
See TracChangeset
for help on using the changeset viewer.