| 69 |
|
return boundary; |
| 70 |
|
} |
| 71 |
|
|
| 72 |
< |
HydroProps Sphere::getHydroProps(RealType viscosity, RealType temperature) { |
| 73 |
< |
HydroProps props; |
| 74 |
< |
props.center =V3Zero; |
| 72 |
> |
HydroProp* Sphere::getHydroProp(RealType viscosity, RealType temperature) { |
| 73 |
> |
|
| 74 |
|
RealType Xitt = 6.0 * NumericConstant::PI * viscosity * radius_; |
| 75 |
|
RealType Xirr = 8.0 * NumericConstant::PI * viscosity * radius_ * radius_ * radius_; |
| 76 |
< |
props.Xi(0, 0) = Xitt; |
| 77 |
< |
props.Xi(1, 1) = Xitt; |
| 78 |
< |
props.Xi(2, 2) = Xitt; |
| 79 |
< |
props.Xi(3, 3) = Xirr; |
| 80 |
< |
props.Xi(4, 4) = Xirr; |
| 81 |
< |
props.Xi(5, 5) = Xirr; |
| 76 |
> |
|
| 77 |
> |
Mat6x6d Xi, XiCopy, D; |
| 78 |
> |
|
| 79 |
> |
Xi(0, 0) = Xitt; |
| 80 |
> |
Xi(1, 1) = Xitt; |
| 81 |
> |
Xi(2, 2) = Xitt; |
| 82 |
> |
Xi(3, 3) = Xirr; |
| 83 |
> |
Xi(4, 4) = Xirr; |
| 84 |
> |
Xi(5, 5) = Xirr; |
| 85 |
|
|
| 86 |
< |
const RealType convertConstant = 6.023; //convert poise.angstrom to amu/fs |
| 87 |
< |
props.Xi *= convertConstant; |
| 88 |
< |
Mat6x6d XiCopy = props.Xi; |
| 89 |
< |
invertMatrix(XiCopy, props.D); |
| 90 |
< |
RealType kt = OOPSEConstant::kB * temperature; |
| 91 |
< |
props.D *= kt; |
| 92 |
< |
props.Xi *= OOPSEConstant::kb * temperature; |
| 86 |
> |
const RealType convertConstant = 1.439326479e4; //converts Poise angstroms |
| 87 |
> |
// to kcal fs mol^-1 Angstrom^-1 |
| 88 |
> |
Xi *= convertConstant; |
| 89 |
> |
XiCopy = Xi; |
| 90 |
> |
|
| 91 |
> |
invertMatrix(XiCopy, D); |
| 92 |
> |
RealType kt = OOPSEConstant::kb * temperature; // in kcal mol^-1 |
| 93 |
> |
D *= kt; // now in angstroms^2 fs^-1 (at least for Trans-trans) |
| 94 |
> |
|
| 95 |
> |
HydroProp* hprop = new HydroProp(V3Zero, Xi, D); |
| 96 |
|
|
| 97 |
< |
return props; |
| 97 |
> |
return hprop; |
| 98 |
|
} |
| 99 |
|
|
| 100 |
|
} |