746 |
|
// Obtain all of the required radial function values from the |
747 |
|
// spline structures: |
748 |
|
|
749 |
< |
if (a_is_Charge && b_is_Charge) { |
750 |
< |
v01 = v01s->getValueAt( *(idat.rij) ); |
749 |
> |
// needed for fields (and forces): |
750 |
> |
if (a_is_Charge || b_is_Charge) { |
751 |
|
v02 = v02s->getValueAt( *(idat.rij) ); |
752 |
|
} |
753 |
< |
if ((a_is_Charge && b_is_Dipole) || (b_is_Charge && a_is_Dipole)) { |
754 |
< |
v11 = v11s->getValueAt( *(idat.rij) ); |
753 |
> |
if (a_is_Dipole || b_is_Dipole) { |
754 |
|
v12 = v12s->getValueAt( *(idat.rij) ); |
755 |
|
v13 = v13s->getValueAt( *(idat.rij) ); |
756 |
|
} |
757 |
< |
if ((a_is_Charge && b_is_Quadrupole) || |
758 |
< |
(b_is_Charge && a_is_Quadrupole) || |
759 |
< |
(a_is_Dipole && b_is_Dipole)) { |
757 |
> |
if (a_is_Quadrupole || b_is_Quadrupole) { |
758 |
> |
v23 = v23s->getValueAt( *(idat.rij) ); |
759 |
> |
v24 = v24s->getValueAt( *(idat.rij) ); |
760 |
> |
} |
761 |
> |
|
762 |
> |
// needed for potentials (and torques): |
763 |
> |
if (a_is_Charge && b_is_Charge) { |
764 |
> |
v01 = v01s->getValueAt( *(idat.rij) ); |
765 |
> |
} |
766 |
> |
if ((a_is_Charge && b_is_Dipole) || (b_is_Charge && a_is_Dipole)) { |
767 |
> |
v11 = v11s->getValueAt( *(idat.rij) ); |
768 |
> |
} |
769 |
> |
if ((a_is_Charge && b_is_Quadrupole) || (b_is_Charge && a_is_Quadrupole)) { |
770 |
|
v21 = v21s->getValueAt( *(idat.rij) ); |
771 |
|
v22 = v22s->getValueAt( *(idat.rij) ); |
772 |
+ |
} else if (a_is_Dipole && b_is_Dipole) { |
773 |
+ |
v21 = v21s->getValueAt( *(idat.rij) ); |
774 |
+ |
v22 = v22s->getValueAt( *(idat.rij) ); |
775 |
|
v23 = v23s->getValueAt( *(idat.rij) ); |
776 |
|
v24 = v24s->getValueAt( *(idat.rij) ); |
777 |
|
} |