[SCM] MoleCuilder branch findBestMatching_HigherBondDegrees created. v1.4.6-37-gd5ef4a3
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 d5ef4a3efb4603f5f958618979480f87c699ac96 (commit) - Log ----------------------------------------------------------------- commit d5ef4a3efb4603f5f958618979480f87c699ac96 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 516f247b50e86779a0147f0806840bed760e81ef 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 80c0e69bca946bbf7aa0aa91d19becc674eed496 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 322b9fb06eeef35851ea58dd9182d82de79d8cd2 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 79279976192bde83e603b96a6b22b49ecc6e64b6 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 d30d12f54d58725d885fcf0e3f105af3533274e5 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 9b2aeb1d66532608da2e838c6a81f9d24f5c2401 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 cef6f8acb60dcf60b778e078c695128f6ed805c0 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 bd7b460239c2d2aca1e5922d3215cf252fedf56c 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 cf74238925491e585f8d2b8a9d8096f2df237e9c 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 cc9de47a66814cd107d00cfa6563030a6c8cf912 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 e0b8eda1afb868ad636f6eeaba9c3bf5d42f0935 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 1106f43fb13544e557265b96c1098137801f8416 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 cd22f5284aa598b1595b1d671189ce6c1618e601 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 e2f42c883248c6342280494dc1235a592f110163 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 06e27c22eed72754e7b5e3857046f247cab94243 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:18:40 2014 +0200 Added "arbitrary" rotation for matchSphericalPointDistributionsTest_2(). commit 52dd5e856d25ef628ad6e8481695c827731ad503 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). - removed XFAIL from FragmentMolecule and StoreSaturatedFragment regression tests. commit b4076c69448732077db22aaf10c8e40cb5727167 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu Jun 5 19:16:26 2014 +0200 Implemented rotations via boost::quaternions. commit c00b533e0955ac769db7c4f3f59efdf95bb10299 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 454602b1e42f69c69f8888662574c672a306dd04 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 9a970729e39cd12d20109261c377a9875f9b8d7b 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 FragmentationAutomation regression tests. commit 30cd476821124282d0339ca217f42b31781a4a2e Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Fri May 30 15:06:25 2014 +0200 Added Logging to SphericalPointDistribution for debugging. commit 8be52eb93e07efad5c321af8f08069a6eb6e34b6 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 43cef5bdab8a49793e3bf2ab01a351923606c17f 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. - TESTS: temporarily skipping all Fragmentation regression tests, FragmentationAutomation regression tests marked as XFAIL. commit fce8c1345985e3a228b3386a565613e2b279b057 Author: Frederik Heber <heber@ins.uni-bonn.de> Date: Thu May 29 20:15:26 2014 +0200 Added unit tests for SphericalPointDistribution. commit 1078546931ea95529f87659dbd77106c65322055 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. - TEST: dimethyl_bromomalonate marked as XFAIL. 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