[SCM] MoleCuilder branch findBestMatching_HigherBondDegrees created. v1.4.6-37-g32cfaab
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "MoleCuilder". The branch, findBestMatching_HigherBondDegrees has been created at 32cfaab88f63a122cc5885985b96503048d92a05 (commit) - Log ----------------------------------------------------------------- commit 32cfaab88f63a122cc5885985b96503048d92a05 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sat Jul 12 21:07:44 2014 +0200 recurseMatching() now takes connections into account. - matchSphericalPointDistribution() replaced by getRemainingPoints() as that describes what it does. match...() sounds symmetrical which the function is no longer as connection is associated with former _newpolygon. - SphericalPointDistribution now has internal points and adjacency, initialized by initSelf(). - findBestMatching() and getRemainingPoints() are no longer static functions. - all unit tests are working again, including the .._multiple() that tests for joint points due to bond degree greater than 1. - the huge case switch in SaturatedFragment::saturateAtom() now resides in initSelf(). commit 7c73042ce3ecfd0229d9ffc11a0d6b519f339f9c Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sat Jul 12 18:19:46 2014 +0200 Removed all IsZero() checking and special cases for the triangle idea. commit 6750c12cb19911e7bb5d746995ab74bc6da56e48 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sat Jul 12 13:57:54 2014 +0200 Added getConnections() to SphericalPointDistribution. - we use tesselation in order to extract the connection information between nearest neighboring points from the BoundaryLines of the tesselation. The triangles are ideal as they assure that no point lies within a triangle, hence all these points may be safely combined. - functions reside in extra module as with get(). - added extensive unit tests. commit 36d6d262176326d6bca5d9fa3e6c1ffbc32d218a Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sat Jul 12 13:56:14 2014 +0200 Added new convenience library libMolecuilderTesselation. - we need this for getting the connection information between the nearest neighboring points on the sphere. commit 0582456e28195231839168d506923f51e3734958 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jul 10 00:08:37 2014 +0200 Added calculation of center of minimum distance by bisection. - this will give us a unique a definite point independent of the (rotational) position of the point set on the unit sphere. commit 2b523bd65dcce9bf7c6cc1737860fafd93b58184 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Jul 9 23:14:53 2014 +0200 Refactoring SphericalPointDistribution to combine point list and subset of indices. - added struct PolygonWithIndices. commit f9596827dae2cf9bcb2b4edb5638f646bf96754f Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Jul 14 22:05:51 2014 +0200 FIX: Determining angle with respect to oldCenter and not projecting anymore. commit c3ec1bbeddeaf487adf754a72062e8057ad715cc Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jul 3 19:17:04 2014 +0200 SphericalPointDistribution is now working with bond degree weights. - L1THRESHOLD in recurseMatching() moved over to class body. - increased verbosity level of ...Matching() functions by one, added note on eventually chosen matching and why. - we assert that bestL2 is not too large. - FIX: calculateErrorOfMatching() did not use absolute value of gap for L1 error. commit 42651d59cf8359611afa940937b329dd955e0588 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Jun 30 11:35:42 2014 +0200 recurseMatching() now works on IndexTupleList_t. - also rewrote calculatePairwiseDistances() and calculateErrorOfMatching(). commit 8327a81827f6c3b48a510b008c3ad6864116d9b3 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Jun 29 23:20:49 2014 +0200 Extracted joinPoints() function to make it accessible to tests. - added unit test. - moved some function definitions around and added documentation. commit abab6cc2c35cf1f86014477bfcbfe31ceb2d5816 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Sun Jun 29 20:02:32 2014 +0200 Extended SphericalPointDistribution::Polygon_t to WeightedPolygon_t. - contains additionally the weights from the already present points. - in order to deal sensibly with present bonds of higher degree (>1) that shift neighboring occupied orbitals even further away, we additionally pass on the bond degree. This indicates how many points of the N points have to be accumulated for this on present bond. commit ea30df3279ae1c1dd3b8b5a691e756830c4cbf69 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 12 09:23:12 2014 +0200 Using the idea of three points giving a triangle to find rotation axis. - we calculate the center of either triangle and rotate the center of the ideal point distribution to match the one from the given points. - next we have the triangles normals as axis, take the first matching point and rotate align it. - we have to deal with a lot of special cases: What if only zero, one, or two points are given ... - in general we assume that the triangle lies relatively flat on the sphere's surface but what if the origin is in the triangle plane or even the calculated center is at the origin ... commit 4eb8662e9ea6e43fdb6e875574c2e8c4fe9cd157 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:58:13 2014 +0200 Extended SphericalPointDistributionUnitTest to two and three matching points for all functions. commit 07df22983d48abb8c008a57c72374069f08af7c4 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Tue Jun 24 18:39:55 2014 +0200 tempcommit: All scripts in tests/Fragmentation added again. commit d8c1bad2c68f0c8174def8f6fde0bdbec8e4140b Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:42:39 2014 +0200 Dropped quaternion rotation for simple arbitrary rotation axis and angle. - with newCenter, oldCenter and the cross product we have all we need: a rotation axis and an angle. We don't need to burden ourselves with those stupid, absolutely not working quaternions. - removeMatchingPoints() now works on an array. - Orientation rotation was wrong way round, added check. - TESTFIX: removed QuaternionTest from SphericalPointDistributionTest. commit 3eec68b7518abae29e0938025a6e94dce32d69fe Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:18:40 2014 +0200 Added "arbitrary" rotation for matchSphericalPointDistributionsTest_2(). commit 37b6ab4eb7884a58087a297211e2792e8c4e20ff Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:17:10 2014 +0200 Adding QuaternionTest for SphericalPointDistributionUnitTest, fixed tests. - just first two components get flipped when first point is at (0,1,0). commit 3e675ef05b13282c13d5f66303055b61955515b1 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:16:26 2014 +0200 Implemented rotations via boost::quaternions. commit f22a9f3f5a25efd7fdea746b77e7477637465e7f Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Jun 4 13:23:31 2014 +0200 Added more unit test functions up to N=8 to SphericalPointDistributionUnitTest. - marked unit test as XFAIL. commit 2f9510330f2000749bd70de7a77efef928cff83c Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Wed Jun 4 13:22:49 2014 +0200 Fixes to SaturatedFragment::saturateFragment(). - properly setting up the number of points and the "old" polygon. - properly filling in the hydrogen atoms at the calculated places. - We have the number of remaining bonds plus the rest. The rest is the valence minus the number of remaining bonds each weighted with its degree. This gives the right number of places to put hydrogens and fill up the valence. - marked again all tests/Fragmentation scripts as XFAIL. commit 5ee335e69787dd65e7fe1dd2d2e8a1f59867f62a Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Jun 2 16:51:33 2014 +0200 FIX: SphericalPointDistribution succeeds with unit test. - removed XFAIL from tests/Fragmentation scripts again. commit b805acbb7248f6ff6d0a99b6510098b8d92bbadc Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri May 30 15:06:25 2014 +0200 Added Logging to SphericalPointDistribution for debugging. commit 9420d52eda268e085ea3c30226ac7c25c33bdbba Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri May 30 15:31:15 2014 +0200 Moved all code from header of SphericalPointDistribution into cpp module. commit d663b8dbe908b90a550d679a1c1981af0df0e269 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 20:15:49 2014 +0200 SphericalPointDistribution now has full functionality. - we look for a best matching between present points and desired ideal configuration, we rotate for alignment and fill all remaining vacant points with hydrogens. - temporarily removed all tests/Fragmentation tests. commit fff44a135d0a59ea42e78f3efc8b080438425a13 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 20:15:26 2014 +0200 Added unit tests for SphericalPointDistribution. commit 2bba27e7f7f57c25ca0b57d3615f8ebe482597e8 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 13:29:27 2014 +0200 Reimplemented SaturatedFragment::saturateAtom() and added ::setHydrogenReplacement(). - this is now based on an ideal distribution of electrons around an atom via the VSPER model which we match as closely as possible with the still bound neighboring atoms and fill all remaining vacant spots with hydrogens. - SaturatedFragment sets father simply to the _given_ atom. commit 5e493c056cc54287b7bf9b6271f93fe8dc2ff945 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 13:29:03 2014 +0200 Added matchSphericalPointDistributions() to SphericalPointDistribution. - so far we do nothing. commit b1f0cd777ea2c2da39e74352ad4ef59f3f95c8fc Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 13:11:39 2014 +0200 Added SphericalPointDistribution for points on spherical surface according to VSEPR. - this is taken from CreateVspeShape.py from Christian Neuen. commit d1a9684753cced0c8a32d168f5d719269ee83636 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 12:00:26 2014 +0200 Added SaturateFragment()::saturateAtom() replacing all cut bonds at once. - so far, we have just outsourced the loop over each cut bond into this function. commit 29dc30eb0a9af60e3d5d95705c3dc27681e79ec1 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 12:30:49 2014 +0200 FIX: BondedParticleInfo::BondList is now a typedef. - removed the define. commit 82627213ad32b651ea7dd756756f310db41361bc Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 11:55:28 2014 +0200 Refactored SaturatedFragment::saturate() using list of cut bonds. - this is preparatory for replacing AddHydrogenReplacementAtom(). commit 9ab2fb34a97f30798bf58a15dabc522338530163 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Aug 26 21:53:59 2013 +0200 SaturatedFragment::AddHydrogenReplacementAtom() uses degree 1 if other is missing. commit ca38704916242f977db4bf7c96bb0adea7dd0593 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Aug 26 21:49:32 2013 +0200 Removed molecule::AddHydrogenReplacement() and BreadthFirstSearchAdd. - this capability has been transfered to SaturatedFragment, and BFSAdd has not been used for a long, long time. commit 030ede0ba59a8d3ccca23d71162da9db37656473 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jul 10 19:06:56 2014 +0200 Vector::Is...() functions extended for numeric threshold. - if none given we use LINALG_MYEPSILON(), otherwise given to function. - this allows for rounding-sensible IsEqualTo() checking and more. commit 73fa9ef7159349c386272c868091c9cbd2df9ffa Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jul 3 19:13:39 2014 +0200 FIX: Plane's cstor did not check for linear dependence in a numerical stable way. - we check with NormSquared() and we use Projection() instead of Angle() to check whether vectors are linear dependent. commit 0fa470da645ae2613038cd51107035cf812961a2 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri Jun 13 13:22:14 2014 +0200 FIX: VectorContent::Normalize() did not check for zero factor. commit 54705ccefd926c54e18d97c6ac2433c15a322695 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Mon Jun 23 20:00:48 2014 +0200 FIX: CodePatterns_LIBS was introduced in AM_LDFLAGS and not in LIBS. - this might have caused problems with libtool not correctly noting down this lib as a dependency. ----------------------------------------------------------------------- hooks/post-receive -- MoleCuilder
participants (1)
-
git@ins.uni-bonn.de