754 |
|
return maxCutoffRadius; |
755 |
|
} |
756 |
|
|
757 |
< |
void SimInfo::setupCutoff() { |
758 |
< |
double rcut_; //cutoff radius |
759 |
< |
double rsw_; //switching radius |
757 |
> |
void SimInfo::getCutoff(double& rcut, double& rsw) { |
758 |
|
|
759 |
|
if (fInfo_.SIM_uses_Charges | fInfo_.SIM_uses_Dipoles | fInfo_.SIM_uses_RF) { |
760 |
|
|
765 |
|
"\tfor the cutoffRadius.\n"); |
766 |
|
painCave.isFatal = 0; |
767 |
|
simError(); |
768 |
< |
rcut_ = 15.0; |
768 |
> |
rcut = 15.0; |
769 |
|
} else{ |
770 |
< |
rcut_ = simParams_->getRcut(); |
770 |
> |
rcut = simParams_->getRcut(); |
771 |
|
} |
772 |
|
|
773 |
|
if (!simParams_->haveRsw()){ |
777 |
|
"\t0.95 * cutoffRadius for the switchingRadius\n"); |
778 |
|
painCave.isFatal = 0; |
779 |
|
simError(); |
780 |
< |
rsw_ = 0.95 * rcut_; |
780 |
> |
rsw = 0.95 * rcut; |
781 |
|
} else{ |
782 |
< |
rsw_ = simParams_->getRsw(); |
782 |
> |
rsw = simParams_->getRsw(); |
783 |
|
} |
784 |
|
|
785 |
|
} else { |
787 |
|
//meta-data file, the maximum cutoff radius calculated from forcefiled will be used |
788 |
|
|
789 |
|
if (simParams_->haveRcut()) { |
790 |
< |
rcut_ = simParams_->getRcut(); |
790 |
> |
rcut = simParams_->getRcut(); |
791 |
|
} else { |
792 |
|
//set cutoff radius to the maximum cutoff radius based on atom types in the whole system |
793 |
< |
rcut_ = calcMaxCutoffRadius(); |
793 |
> |
rcut = calcMaxCutoffRadius(); |
794 |
|
} |
795 |
|
|
796 |
|
if (simParams_->haveRsw()) { |
797 |
< |
rsw_ = simParams_->getRsw(); |
797 |
> |
rsw = simParams_->getRsw(); |
798 |
|
} else { |
799 |
< |
rsw_ = rcut_; |
799 |
> |
rsw = rcut; |
800 |
|
} |
801 |
|
|
802 |
|
} |
803 |
< |
|
803 |
> |
} |
804 |
> |
|
805 |
> |
void SimInfo::setupCutoff() { |
806 |
> |
getCutoff(rcut_, rsw_); |
807 |
|
double rnblist = rcut_ + 1; // skin of neighbor list |
808 |
|
|
809 |
|
//Pass these cutoff radius etc. to fortran. This function should be called once and only once |