45 |
|
|
46 |
|
!! @author Charles F. Vardeman II |
47 |
|
!! @author Matthew Meineke |
48 |
< |
!! @version $Id: doForces.F90,v 1.69 2005-11-21 22:58:35 gezelter Exp $, $Date: 2005-11-21 22:58:35 $, $Name: not supported by cvs2svn $, $Revision: 1.69 $ |
48 |
> |
!! @version $Id: doForces.F90,v 1.72 2005-12-30 00:18:28 chuckv Exp $, $Date: 2005-12-30 00:18:28 $, $Name: not supported by cvs2svn $, $Revision: 1.72 $ |
49 |
|
|
50 |
|
|
51 |
|
module doForces |
281 |
|
logical :: i_is_GB |
282 |
|
logical :: i_is_EAM |
283 |
|
logical :: i_is_Shape |
284 |
+ |
logical :: i_is_SC |
285 |
|
logical :: GtypeFound |
286 |
|
|
287 |
|
integer :: myStatus, nAtypes, i, j, istart, iend, jstart, jend |
311 |
|
call getElementProperty(atypes, i, "is_GayBerne", i_is_GB) |
312 |
|
call getElementProperty(atypes, i, "is_EAM", i_is_EAM) |
313 |
|
call getElementProperty(atypes, i, "is_Shape", i_is_Shape) |
314 |
< |
|
314 |
> |
call getElementProperty(atypes, i, "is_SC", i_is_SC) |
315 |
|
|
316 |
|
if (haveDefaultCutoffs) then |
317 |
|
atypeMaxCutoff(i) = defaultRcut |
342 |
|
endif |
343 |
|
if (i_is_Shape) then |
344 |
|
thisRcut = getShapeCut(i) |
345 |
+ |
if (thisRCut .gt. atypeMaxCutoff(i)) atypeMaxCutoff(i) = thisRCut |
346 |
+ |
endif |
347 |
+ |
if (i_is_SC) then |
348 |
+ |
thisRcut = getSCCut(i) |
349 |
|
if (thisRCut .gt. atypeMaxCutoff(i)) atypeMaxCutoff(i) = thisRCut |
350 |
|
endif |
351 |
|
endif |
441 |
|
groupMaxCutoffRow(i)=atypeMaxCutoff(me_i) |
442 |
|
endif |
443 |
|
enddo |
439 |
– |
|
444 |
|
if (nGroupTypesRow.eq.0) then |
445 |
|
nGroupTypesRow = nGroupTypesRow + 1 |
446 |
|
gtypeMaxCutoffRow(nGroupTypesRow) = groupMaxCutoffRow(i) |
583 |
|
|
584 |
|
localError = 0 |
585 |
|
call setLJDefaultCutoff( defaultRcut, defaultDoShift ) |
586 |
+ |
call setElectrostaticCutoffRadius( defaultRcut, defaultRsw ) |
587 |
|
call setCutoffEAM( defaultRcut, localError) |
588 |
|
if (localError /= 0) then |
589 |
|
write(errMsg, *) 'An error has occured in setting the EAM cutoff' |
590 |
|
call handleError("setCutoffs", errMsg) |
591 |
|
end if |
592 |
|
call set_switch(GROUP_SWITCH, defaultRsw, defaultRcut) |
593 |
< |
|
593 |
> |
|
594 |
|
haveDefaultCutoffs = .true. |
595 |
+ |
haveGtypeCutoffMap = .false. |
596 |
|
end subroutine setCutoffs |
597 |
|
|
598 |
|
subroutine cWasLame() |
608 |
|
|
609 |
|
cutoffPolicy = cutPolicy |
610 |
|
haveCutoffPolicy = .true. |
611 |
< |
|
606 |
< |
call createGtypeCutoffMap() |
611 |
> |
haveGtypeCutoffMap = .false. |
612 |
|
|
613 |
|
end subroutine setCutoffPolicy |
614 |
|
|
626 |
|
real(kind=dp), intent(in) :: thisSkin |
627 |
|
|
628 |
|
skinThickness = thisSkin |
629 |
< |
haveSkinThickness = .true. |
630 |
< |
|
626 |
< |
call createGtypeCutoffMap() |
629 |
> |
haveSkinThickness = .true. |
630 |
> |
haveGtypeCutoffMap = .false. |
631 |
|
|
632 |
|
end subroutine setSkinThickness |
633 |
|
|