summaryrefslogtreecommitdiff
path: root/science
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2005-02-11 03:09:08 +0000
committerMaho Nakata <maho@FreeBSD.org>2005-02-11 03:09:08 +0000
commita3f83ad072ee24dc3ced6e3b92ba802d31c0e28d (patch)
tree7cce256019268ba013ba9a1da7f9ed9c610e45bf /science
parentteTeX no longer uses the texmf/tex/latex/misc directory. (diff)
Add center-of-charge patch.
Notes
Notes: svn path=/head/; revision=128501
Diffstat (limited to 'science')
-rw-r--r--science/mpqc/files/patch-center-of-charge46
1 files changed, 46 insertions, 0 deletions
diff --git a/science/mpqc/files/patch-center-of-charge b/science/mpqc/files/patch-center-of-charge
new file mode 100644
index 000000000000..d6827a77008c
--- /dev/null
+++ b/science/mpqc/files/patch-center-of-charge
@@ -0,0 +1,46 @@
+Add a method that return center of charge of the system
+
+--- src/lib/chemistry/molecule/molecule.cc.orig Wed Apr 3 15:44:33 2002
++++ src/lib/chemistry/molecule/molecule.cc Fri Feb 11 11:37:29 2005
+@@ -607,6 +607,27 @@
+ return ret;
+ }
+
++SCVector3
++Molecule::center_of_charge() const
++{
++ SCVector3 ret;
++ double C;
++
++ ret = 0.0;
++ C = 0.0;
++
++ for (int i=0; i < natom(); i++) {
++ double c = charge(i);
++ ret += c * SCVector3(r(i));
++ C += c;
++ }
++
++ ret *= 1.0/C;
++
++ return ret;
++}
++
++
+ double
+ Molecule::nuclear_repulsion_energy()
+ {
+
+--- src/lib/chemistry/molecule/molecule.h.orig Sat Nov 23 04:00:23 2002
++++ src/lib/chemistry/molecule/molecule.h Fri Feb 11 11:36:30 2005
+@@ -209,6 +209,10 @@
+ the center of mass for the molecule. */
+ SCVector3 center_of_mass() const;
+
++ /** Returns a SCVector3 containing the cartesian coordinates of
++ the center of charge for the molecule. */
++ SCVector3 center_of_charge() const;
++
+ /// Returns the nuclear repulsion energy for the molecule
+ double nuclear_repulsion_energy();
+