Changes in / [404d2b:363f28]
- Files:
-
- 3910 added
- 149 deleted
- 25 edited
Legend:
- Unmodified
- Added
- Removed
-
.gitignore
r404d2b r363f28 1 # specific source code stuff 2 version.c 3 .git-version 4 1 5 # eclipse file 2 6 .autotools -
AUTHORS
r404d2b r363f28 1 Frederik Heber (heber@ins.uni-bonn.de) 1 Tillmann Crueger (crueger@ins.uni-bonn.de) 2 Daniel Dueck (dueck@ins.uni-bonn.de) 3 Frederik Heber (heber@ins.uni-bonn.de) 4 Saskia Metzler (metzler@ins.uni-bonn.de) 5 Christian Neuen (neuen@ins.uni-bonn.de) -
ChangeLog
-
Property mode
changed from
100644
to100755
r404d2b r363f28 1 commit e96e9b221c882f59d5680be13d331022bc784a09 2 Author: Frederik Heber <heber@ins.uni-bonn.de> 3 Date: Fri May 18 17:27:25 2012 +0200 4 5 Adapted all Makefile.ams to splitting. 6 7 commit 508e98b13b9eb17f0a4db04c149136f4f94e5dee 8 Author: Frederik Heber <heber@ins.uni-bonn.de> 9 Date: Fri May 18 17:26:50 2012 +0200 10 11 Moved some molecuilder specific files back to Fragmentation/Automation. 12 13 commit b8211878e73baa75a30a8133f28b15f06950b674 14 Author: Frederik Heber <heber@ins.uni-bonn.de> 15 Date: Fri May 18 17:07:01 2012 +0200 16 17 Adapted most files (which have been copied from sub-package LinearAlgebra). 18 19 commit 751f4b8f15ee6b4cbba63d3b385810e088f8cb30 20 Author: Frederik Heber <heber@ins.uni-bonn.de> 21 Date: Fri May 18 16:37:17 2012 +0200 22 23 Moved all Fragmentation/Automation into new subpackage JobMarket. 24 25 commit baf1b40315890f3e8240b27d2e57814153bdaea6 26 Author: Frederik Heber <heber@ins.uni-bonn.de> 27 Date: Fri May 18 15:09:36 2012 +0200 28 29 tempcommit: Added initial Action on FragmentationAutomation. 30 31 commit c4e2a6a72aa25914e001db27585e486c63bc1570 32 Author: Frederik Heber <heber@ins.uni-bonn.de> 33 Date: Sun May 13 21:03:53 2012 +0200 34 35 Regression test FragmentationAutomation enroll-in-pool now also adds a job. 36 37 - this is have it both ways: First the job, then the worker as in adding-job. 38 And also, first the worker, then the job as now in enroll-in-pool. 39 - this is to make sure that the observer mechanism is working on both ways 40 correctly. 41 42 commit 8419019e75b5cdf4bf2681287595dbaf1a53de21 43 Author: Frederik Heber <heber@ins.uni-bonn.de> 44 Date: Sun May 13 20:56:51 2012 +0200 45 46 DOCU: Added extensive documentation on the client/server/controller concept of the Fragmentation Automation framework. 47 48 commit 21546ba4a1ce53746aa93a2459bb9dc4151f5381 49 Author: Frederik Heber <heber@ins.uni-bonn.de> 50 Date: Sun May 13 19:53:34 2012 +0200 51 52 PoolWorker now has an OperationQueue and ServerAddress. 53 54 - OperationQueue works the same way as for FragmentScheduler. Operations are 55 simply handed over to it with callback function in place from cstor. 56 - ServerAddress stores server's address to hand to OperationQueue on pushing 57 the operation. 58 59 commit 8d60281b0e2cb7acefdfa19abbd4e0f2273651af 60 Author: Frederik Heber <heber@ins.uni-bonn.de> 61 Date: Sun May 13 19:53:05 2012 +0200 62 63 Renamed PoolWorker::address -> ::MyAddress to differentiate from ServerAddress to come. 64 65 commit 8a3145cd3d2897310c065bf5a8e3e6548fd2a2ab 66 Author: Frederik Heber <heber@ins.uni-bonn.de> 67 Date: Mon May 14 15:57:39 2012 +0200 68 69 PoolWorker now shuts down when enrollment is not successful. 70 71 - new bound function initiateme contains call to initiateSocket() and is 72 called when EnrollInPoolOperation succeeds. 73 74 commit b6428a47357b18b99dfb35ab45366c47c4c4d1cf 75 Author: Frederik Heber <heber@ins.uni-bonn.de> 76 Date: Fri May 11 22:00:28 2012 +0200 77 78 RemoveFromPoolOperation is now async. 79 80 - changed PoolWorker such that we close down socket and listener via success 81 callback handler of the operartion. 82 - FragmentScheduler now sends true/false as status of removal. 83 84 commit cf50a864688a2aaf3519e98e8759596bba12f4e5 85 Author: Frederik Heber <heber@ins.uni-bonn.de> 86 Date: Fri May 11 21:42:43 2012 +0200 87 88 Added ExitflagContainer that FragmentController and PoolWorker use. 89 90 - all Operations have been stripped of their internal Exitflag. 91 - PoolWorker and FragmentController uses callback mechanism to let the 92 AsyncOperation set their Exitflag in case of failure. 93 94 commit d0e1ef9a6e268a25f29f72dc7be65aa0fb23e8c4 95 Author: Frederik Heber <heber@ins.uni-bonn.de> 96 Date: Fri May 11 20:23:22 2012 +0200 97 98 AsyncOperation and all derived classes changed their cstor and operator() signature for success/failure callback handlers. 99 100 - This allows starting certain functions depending on whether an asynchronous 101 operation succeeded or not. 102 - FragmentController and PoolWorker are adapted to new AsyncOperation's cstor 103 and operator() signatures. 104 105 commit b47515a84bb390d8602659bcbeef7be7b89550c8 106 Author: Frederik Heber <heber@ins.uni-bonn.de> 107 Date: Fri May 11 21:39:08 2012 +0200 108 109 FragmentScheduler sends true or false instead of specific enumeration as acknowledge of enrollment. 110 111 - adapted EnrollInPoolOperation accordingly. 112 113 commit a742fbe4bf1d518405c309610e6b7199cb574c73 114 Author: Frederik Heber <heber@ins.uni-bonn.de> 115 Date: Fri May 4 15:26:34 2012 +0200 116 117 Hostname argument to poolworker is now optional. 118 119 - we use gethostname() to obtain the hostname if no argument given. 120 121 commit f3d74dc0b997435a2402215efce4f99bca661345 122 Author: Frederik Heber <heber@ins.uni-bonn.de> 123 Date: Thu May 3 14:46:59 2012 +0200 124 125 Controller now also uses boost::program_options to parse command line options. 126 127 - also we now cleanly check whether each command has its required arguments 128 before making any connections to the server. Hence, nothing can be lost. 129 - TESTFIX: Changed regression tests due to changed controller calling 130 signature. 131 - TESTFIX: regression test Fragmenation/Automation mpqc-jobs uses removeall 132 instead of giving kill. 133 134 commit 167fe1f56ca8c04b74bce08930c7a56bceed025b 135 Author: Frederik Heber <heber@ins.uni-bonn.de> 136 Date: Thu May 3 13:14:23 2012 +0200 137 138 Server now also intercepts sigint and shuts down gracefully. 139 140 - new FragmentScheduler::shutdown() function is bound and given as signal 141 handler. 142 - on signal we first remove all workers and only shutdown and close sockets 143 when there are no workers. 144 - note that we do not release the signalhandler after first received signal 145 but after a given number as two ctrl-c are required to shut down server 146 having poolworkers. 147 148 commit 5e2194627d0cac07245760514e33e070c52e4e90 149 Author: Frederik Heber <heber@ins.uni-bonn.de> 150 Date: Wed Apr 25 14:22:22 2012 +0200 151 152 Server now gives information about number of total and idling workers when new one is added. 153 154 - WorkerPool has new convenience functions for the size of each internal queue. 155 156 commit 5e8029f96b675f41f71261551f4e9af96b6f1026 157 Author: Frederik Heber <heber@ins.uni-bonn.de> 158 Date: Wed Apr 25 13:24:11 2012 +0200 159 160 Server now also parses worker and controller port via boost::program_options. 161 162 - TESTFIX: Same again, adapted server calls due to changed command option 163 signature in regression tests Fragmentation/Automation. 164 165 commit 5a506b81754634f69e2c682645a79a1594e07f3b 166 Author: Frederik Heber <heber@ins.uni-bonn.de> 167 Date: Wed Apr 25 13:22:35 2012 +0200 168 169 We now set option reuse_address to be more gentle only used ports. 170 171 commit ea2dd0886c745ecd04ec40d321102610c432bb20 172 Author: Frederik Heber <heber@ins.uni-bonn.de> 173 Date: Wed Apr 25 12:27:55 2012 +0200 174 175 PoolWorker now accepts command line options to for signals and verbosity. 176 177 - all of poolworkers command line arguments are now parsed via 178 boost::program_options. 179 - As a sideeffect multiple signals may now be specified to catch on the command 180 line. 181 - TESTFIX: Usage of poolworker has changed, hence adapted regression tests. 182 183 commit c450820c3fdfd5ec4f1ad14dc8e7e0723afec9fa 184 Author: Frederik Heber <heber@ins.uni-bonn.de> 185 Date: Wed Apr 25 12:04:21 2012 +0200 186 187 FIX: All checks on command line arguments are now done in phase one, exit on fail. 188 189 - otherwise we lost e.g. results when receivempqc had received them but noticed 190 afterwards that the required path is missing. 191 192 commit 416795632ceab4c43a021daa65c7ece496af0a8c 193 Author: Frederik Heber <heber@ins.uni-bonn.de> 194 Date: Tue Apr 24 18:53:31 2012 +0200 195 196 OperationQueue now has a max_connections and allows only this number of running operations. 197 198 - OperationQueue::launchNextOp() is called by update() and push_back(). 199 - new AddressMap takes endpoint addresses and is used to know which operations 200 still have to be executed. 201 202 commit e61629940d3ee21968da3200d5b2b7258dd884e7 203 Author: Frederik Heber <heber@ins.uni-bonn.de> 204 Date: Tue Apr 24 18:26:01 2012 +0200 205 206 FIX: Listener (and PoolWorker) now check whether address to listen on is in use. 207 208 - we use acceptor construction as given in boost::asio::basic_socket_acceptor 209 to listen on the desired port. Bind gives error code when error occurs. 210 211 commit 3737589f2e01cba8b2152270adbc3d9f86e2f9e5 212 Author: Frederik Heber <heber@ins.uni-bonn.de> 213 Date: Thu May 3 16:20:25 2012 +0200 214 215 Rewrote FragmentScheduler::removeAllWorker() to only give shutdown signal to all idle workers. 216 217 commit 0b80c84615eff875684021ca24c1e41152daf06a 218 Author: Frederik Heber <heber@ins.uni-bonn.de> 219 Date: Thu May 3 16:20:05 2012 +0200 220 221 FragmentScheduler::shutdown() now returns bool and does not remove workers anymore. 222 223 commit 963e4fb4f0893c21b66c69615fa6a5b552dd8279 224 Author: Frederik Heber <heber@ins.uni-bonn.de> 225 Date: Thu May 3 16:18:24 2012 +0200 226 227 Added new RemoveAllWorkerOperation and removeall command to FragmentController. 228 229 - FragmentScheduler::ControllerListener_t has second bound function to 230 removeAllWorker() from FragmentScheduler instance. 231 - this is preparatory to split shutdown into first removeal and then closing 232 of sockets. 233 234 commit 9135a1608c0d1333992b135d4a9767c1d5df59e3 235 Author: Frederik Heber <heber@ins.uni-bonn.de> 236 Date: Thu May 3 15:30:09 2012 +0200 237 238 Rewrote FragmentScheduler::shutdown to make sure idle_queue is truely const. 239 240 - WorkerPool has new function to return idle_queue addresses as Vector. 241 - We first get all addresses, then shutdown each and also we iterate over this 242 as long as OperationQueue has Ops and idle_queue has idlers. 243 244 commit 2691d25593c186591318d9b46a6be06ed4881047 245 Author: Frederik Heber <heber@ins.uni-bonn.de> 246 Date: Tue Apr 24 17:34:20 2012 +0200 247 248 ShutdownWorkerOperation is now an asynchronous operation. 249 250 - FragmentScheduler places shutdown op into queue as well and waits for 251 empty queue in removeAllWorkers(). 252 - OperationQueue has convenience function empty(). 253 254 commit 035ac66c763fbc9cdea256fa26d3185d91e32f62 255 Author: Frederik Heber <heber@ins.uni-bonn.de> 256 Date: Tue Apr 24 16:58:50 2012 +0200 257 258 FragmentScheduler is relieved of observering Operations, is done by OperationQueue. 259 260 - i.e. OperationQueue is now an Observer and uses push_back() and remove() to 261 sign on and off from the given operations. 262 - added unit test function to check this behavior. 263 264 commit e49da44bc6ef516a20db5a746ccf4aafdc9a4dd1 265 Author: Frederik Heber <heber@ins.uni-bonn.de> 266 Date: Tue Apr 24 16:56:21 2012 +0200 267 268 FIX: FragmentScheduler now has an OperationQueue that monitors its async.ops. 269 270 - this fixes the issues with multiple jobs being handed out. 271 272 commit a63dbd11fbc3f43176c999f1e7a3bace140ecfb4 273 Author: Frederik Heber <heber@ins.uni-bonn.de> 274 Date: Tue Apr 24 16:36:36 2012 +0200 275 276 Implemented OperationQueue that takes care of AsyncOperations. 277 278 - this is preparatory to fixing FragmentScheduler: When more than one job is 279 placed in the JobQueue at the same time and multiple workers are idling, then 280 also multiple SendJobToWorkerOperations are required. So far there is only a 281 single instance, hence it is overwritten and only the last worker gets its 282 correct job. 283 - also added unit test on functionality of OperationQueue. 284 285 commit b9054c6b9ae471826a9e49ca22f57c025cf530da 286 Author: Frederik Heber <heber@ins.uni-bonn.de> 287 Date: Tue Apr 24 16:35:21 2012 +0200 288 289 AsyncOperation is now an Observable. 290 291 - it gives update() when the operation has been completed. 292 - this is preparatory to placing AsyncOperation inside a queue that 293 automatically takes care of their removal. 294 295 commit 2b7afae9f53f61e160869bcbfa3299df4422d408 296 Author: Frederik Heber <heber@ins.uni-bonn.de> 297 Date: Tue Apr 24 16:34:35 2012 +0200 298 299 SendJobToWorkerOperation can be given job in its cstor. 300 301 commit 5369c6673a1219227b5581ad70b285e7f774c364 302 Author: Frederik Heber <heber@everest.wiss-stud> 303 Date: Tue Apr 24 12:38:54 2012 +0200 304 305 FIX: Removed channel WorkerRemoved in WorkerPool as it may cause cyclic updates in FragmentScheduler. 306 307 - If jobs are already present in the queue and an idle worker arrices, 308 then marking a worker busy will cause an update inside the callback 309 that is used to send the job to the new idle worker. This will trigger 310 the same notification that is not yet removed to be called in 311 notifyAll(). This causes a cycle in the updates. 312 313 commit 851b676a9a05fe09b9f44b99388a3d60ba253f5d 314 Author: Frederik Heber <heber@everest.wiss-stud> 315 Date: Tue Apr 24 12:36:30 2012 +0200 316 317 FIX: Removed channel JobRemoved from FragmentQueue as it may cause cyclic updates in FragmentScheduler. 318 319 - An update is triggered, when a job is popped from the queue. If a new job 320 has just been pushed and a worker is free to pick it up, the callback 321 function is used to do this. If we trigger an update by popping a job, 322 even if it's now a JobRemoved, not JobAdded, all notifications will again 323 call notifyAll() and the same notification will be triggered twice. 324 325 commit 4dc17912b98fc929c2becf3612a7d999b1068a4c 326 Author: Frederik Heber <heber@ins.uni-bonn.de> 327 Date: Mon Apr 23 14:40:15 2012 +0200 328 329 Regression test mpqc-jobs now requires "correct" results from stand-in mpqc program. 330 331 - that is, we now extract the results and combine them in controller. 332 333 commit c24c1eb7b4600bd8296ca7204cf8ecbef7a2a9c9 334 Author: Frederik Heber <heber@ins.uni-bonn.de> 335 Date: Thu Apr 19 20:24:04 2012 +0200 336 337 Completed printMPQCReceivedResults() in controller by using MatrixContainer::AddMatrix(). 338 339 - result is printed at end of function. 340 - Added helper function to controller to parse total number of atoms from 341 Adjacency file. 342 - NOTE: This function is only temporary. It should lateron be outsourced to 343 its own class, maybe as a functor, and then eventually be merged into the 344 main molecuilder program to be accessible inside an Action. 345 346 commit 719382df863b030e0fcc3f37b3a0981bab4477d1 347 Author: Frederik Heber <heber@ins.uni-bonn.de> 348 Date: Sat Apr 21 12:08:17 2012 +0200 349 350 Added regression test to Fragmentation/Automation whether mpqc jobs work. 351 352 - this test uses stand-in mpqc, as true program would require extra dependency. 353 354 commit 160e0a15bffdc80a8e053121b1cbc6c6fd59994a 355 Author: Frederik Heber <heber@ins.uni-bonn.de> 356 Date: Sat Apr 21 12:07:30 2012 +0200 357 358 Added stand-in mpqc program and regression test on it to Fragmentation/Automation. 359 360 - the stand-in mpqc is used to simulate working mpqc in the background, it just 361 prints a present mpqc output file. 362 363 commit c4de89d26d119cae6a78137012b22ced38eec193 364 Author: Frederik Heber <heber@ins.uni-bonn.de> 365 Date: Mon Apr 23 13:43:07 2012 +0200 366 367 MPQCCommandJob now takes command argument to the mpqc executable. 368 369 - This allows to use stand-in mpqc instead of true mpqc executable. 370 371 commit f09b50f20b91377882b03d62f439f08e73d58148 372 Author: Frederik Heber <heber@ins.uni-bonn.de> 373 Date: Thu Apr 19 23:06:07 2012 +0200 374 375 GetNextJobIdOperation now may request a vector of ids. 376 377 - otherwise we needed multiple phase one calls, ever requesting a single id. 378 - now, we state how many ids we want and may eventually get one by one as 379 desired. 380 - adapted FragmentScheduler::ControllerListener_t and FragmentController 381 accordingly as we now have to exchange the desired number of ids, too. 382 - requestid() needs now an additional parameter. 383 384 commit 51b7eeb3ac2cd1d8cc16f17119141ccc2cf55117 385 Author: Frederik Heber <heber@ins.uni-bonn.de> 386 Date: Thu Apr 19 22:16:26 2012 +0200 387 388 GetNextJobIdOperation now has check whether id is available. 389 390 commit 74f1a2d67b18cf148fc4522ea30ace112ca07000 391 Author: Frederik Heber <heber@ins.uni-bonn.de> 392 Date: Thu Apr 19 20:22:48 2012 +0200 393 394 Added MatrixContainer::AddMatrix() which takes of the functionality of ::ParseMatrix(). 395 396 - AddMatrix simply adds a received MatrixArray to the internal matrix. Also, we 397 restructured the function a bit: check preconditions, allocate, then set. 398 - ParseMatrix() creates first such a MatrixArray which it parses from a file. 399 400 commit e76a1c5e2ab6ea682221fb35288242c12bf558f3 401 Author: Frederik Heber <heber@ins.uni-bonn.de> 402 Date: Thu Apr 19 16:42:11 2012 +0200 403 404 Placed src/Fragmentation/Automation behind src in main Makefile.am. 405 406 - hence, now libMolecuilderFragmentation is compiled before ...Automation 407 as required. 408 409 commit 3f5010bd81dc40d829b54e62f41a8d5427934449 410 Author: Frederik Heber <heber@ins.uni-bonn.de> 411 Date: Fri May 18 09:21:43 2012 +0200 412 413 Controller now links to libMolecuilderFragmentation and has initial prinMPQCReceivedResults(). 414 415 - extended printReceivedMPQCResults. 416 417 commit aed6ee694c426e4ef36400ee77bfda98ae14b9ec 418 Author: Frederik Heber <heber@ins.uni-bonn.de> 419 Date: Fri May 18 09:21:28 2012 +0200 420 421 Placed some commodity functions from controller.cpp into FragmentController. 422 423 commit 5f4984f690c3e4194bd739610db83a4f144b1304 424 Author: Frederik Heber <heber@ins.uni-bonn.de> 425 Date: Thu Mar 8 16:15:51 2012 +0100 426 427 FragmentScheduler::recieveNotification() now asserts that we only received desired notifications. 428 429 commit ea9faca96ac8509ac0091564386e05023b809156 430 Author: Frederik Heber <heber@ins.uni-bonn.de> 431 Date: Wed Mar 7 11:36:43 2012 +0100 432 433 TESTFIX: Extended all regression tests Fragmentation/Automation to use listening poolworkers. Merge with their introduction. 434 435 commit 33124dec4fa70d4258c7b785a0902de720274941 436 Author: Frederik Heber <heber@ins.uni-bonn.de> 437 Date: Sun Mar 4 21:07:18 2012 +0100 438 439 Deleted WorkOnJobOperation and removed form FragmentWorker. 440 441 - note that FragmentWorker now does nothing anymore. 442 443 commit 3124a5be657ed25832378912e6143c43758f1213 444 Author: Frederik Heber <heber@ins.uni-bonn.de> 445 Date: Sun Mar 4 21:36:27 2012 +0100 446 447 Moved FragmentController from Controller/, removed dir Controller. 448 449 commit 69fe04fec043838b8e4b826700de98fccccb6355 450 Author: Frederik Heber <heber@ins.uni-bonn.de> 451 Date: Sun Mar 4 21:34:33 2012 +0100 452 453 Renamed CommandRegistry -> OperationRegistry. 454 455 commit aa9e4ac232ea89d053f07c91b8cb1ff9c95b284c 456 Author: Frederik Heber <heber@ins.uni-bonn.de> 457 Date: Sun Mar 4 21:05:05 2012 +0100 458 459 Moved Controller/Commands to Operations/ folder and split into Controllers, Servers, Workers. 460 461 - each will eventually go into its own Registry. 462 - also changed all include occurences in all files. 463 - fixed some includes in the definition where path was used (header always 464 resides in same folder as definition). 465 466 commit 3b0853faa89e14526ef794cc75f7c850087c9b21 467 Author: Frederik Heber <heber@ins.uni-bonn.de> 468 Date: Sun Mar 4 21:26:06 2012 +0100 469 470 FIX: Renamed SendResultsOperation -> ReceiveResultsOperation in file and class. 471 472 - also renamed name sendresults -> receiveresults. 473 - also renamed ControllerChoices enum SendResults -> ReceiveResults. 474 475 commit 1989b03432c8bd52413852ecbb0e4c4b538bef41 476 Author: Frederik Heber <heber@ins.uni-bonn.de> 477 Date: Sun Mar 4 21:11:38 2012 +0100 478 479 FIX: Renamed ReceiveJobsOperation -> SendJobsOperation in file and class. 480 481 - also name is receivejobs -> sendjobs. 482 - also renamed ControllerChoices enum ReceiveJobs -> SendJobs. 483 - The Operations should have been named actively, i.e. from the point of the 484 instance who executes it. 485 486 commit e9f3e7572c0950fae9afc6e67da1e39f1e2a8a6b 487 Author: Frederik Heber <heber@ins.uni-bonn.de> 488 Date: Sun Mar 4 23:30:57 2012 +0100 489 490 Added begin(),end() for idle_queue of WorkerPool. 491 492 - this allows shutting down Workers without marking and then unmarking them as 493 busy by FragmentScheduler. 494 - also the returned iterators are const and hence allow to see the which 495 workers are idle but not to modify them this way. 496 - also added WorkerPool::hasBusyWorkers() to allow for waiting server shutdown 497 until all workers have returned from work. 498 - added some tests for this in WorkerPoolUnitTest. 499 500 commit 22bdace488eca02a9cd8f1c3d8688444c87792ab 501 Author: Frederik Heber <heber@ins.uni-bonn.de> 502 Date: Mon Mar 5 00:42:50 2012 +0100 503 504 Changed FragmentScheduler::removeAllWorkers() by ShutdownWorkerOperation. 505 506 - so far, we have to unmark workers busy after getting them via getNextIdle..() 507 - FragmentScheduler does now not remove PoolWorkers after a single job. 508 509 commit 8a3d097fd0141b1a52466e77daff5dd3eabc7952 510 Author: Frederik Heber <heber@ins.uni-bonn.de> 511 Date: Mon Mar 5 00:41:43 2012 +0100 512 513 Added PoolWorker::shutdown(). 514 515 - overloaded shutdown(int) with shutdown() and the former is now just a 516 wrapper to shutdown() that additionally calls removeme(). 517 - PoolWorker branches on id of received job, if it's JobId::NoJob, we shutdown. 518 519 commit b89fa8af0eec7b3928ab6e4d33e9e43823fceeea 520 Author: Frederik Heber <heber@ins.uni-bonn.de> 521 Date: Mon Mar 5 00:40:23 2012 +0100 522 523 Added synchronous ShutdownWorkerOperation. 524 525 - ShutdownWorkerOperation sends static NoJob as shutdown signal. 526 527 commit f01f8a10b2ef9eef60cf558db9053a30725580d2 528 Author: Frederik Heber <heber@ins.uni-bonn.de> 529 Date: Sun Mar 4 17:24:25 2012 +0100 530 531 FragmentScheduler is now an Observer of JobsQueue and pool. 532 533 - ControllerListener gets a bound function shutdown() to pass on shutdown 534 request from controller on to FragmentScheduler itself to shutdown both 535 sockets and the io_service. 536 - FragmentScheduler is notified of JobAdded and WorkerIdle to send out jobs 537 to workers. 538 539 commit ffa32e7b94d6ed361ac4aa91bf42743ba70c80b0 540 Author: Frederik Heber <heber@ins.uni-bonn.de> 541 Date: Wed Feb 29 18:39:33 2012 +0100 542 543 WorkerPool is now observable. 544 545 - this is preparatory for allowing FragmentScheduler to contact idle Workers 546 and sending them possibly present jobs. 547 - added NotificationObserver in unit test. 548 549 commit 62166575c2b2f97106475bd1a4696da82b9bfae7 550 Author: Frederik Heber <heber@ins.uni-bonn.de> 551 Date: Wed Feb 29 17:07:33 2012 +0100 552 553 FragmentQueue is now observable. 554 555 - this is preparatory for allowing FragmentScheduler to send jobs to worker 556 when new ones have arrived. 557 - added NotificationObserver to FragmentQueueUnitTest. 558 559 commit 6ec3329e7d735e980343cf430257a8b3a9423be2 560 Author: Frederik Heber <heber@ins.uni-bonn.de> 561 Date: Sun Mar 4 17:23:01 2012 +0100 562 563 FragmentScheduler now uses WorkerChoices for handling connection workers. 564 565 - Workers always first send address, then their choice and depending on this 566 we branch into various handlers. 567 568 commit 2d38fd67a580d3256141fe20d40eab5ab0f668d3 569 Author: Frederik Heber <heber@ins.uni-bonn.de> 570 Date: Sun Mar 4 17:12:28 2012 +0100 571 572 Added signal handling function to poolworker to intercept ctrl-c via PoolWorker::shutdown(). 573 574 - this is for gracefully shutting down the worker (i.e. letting server know 575 that we are off). 576 - Added PoolWorker::shutdown() function to gracefully shutdown. 577 - We use RemoveFromPoolOperation() to unlist from server's pool. 578 - PoolWorker now contains ref to io_Service in order to stop the service on 579 shutdown. 580 581 commit db1325170ef769b0c1ef55f9b3523abd8c1df7eb 582 Author: Frederik Heber <heber@ins.uni-bonn.de> 583 Date: Sun Mar 4 17:11:54 2012 +0100 584 585 Added regression test Fragmentation/Automation for enrolling in pool. 586 587 commit 235e61e299ecd29d7d3aed3c5fee9ade4bf1bbac 588 Author: Frederik Heber <heber@ins.uni-bonn.de> 589 Date: Sun Mar 4 17:27:28 2012 +0100 590 591 SubmitResultOperation now correctly gives choice after sending address. 592 593 commit 591c59ae406565a533d0bb66488a053c9aede948 594 Author: Frederik Heber <heber@ins.uni-bonn.de> 595 Date: Sun Mar 4 17:26:38 2012 +0100 596 597 EnrollInPoolOperation now correctly gives the choice after sending address. 598 599 commit e4061b4cee2be34698212668a86aab6e186e75fc 600 Author: Frederik Heber <heber@ins.uni-bonn.de> 601 Date: Sun Mar 4 17:04:37 2012 +0100 602 603 Added RemoveFromPoolOperation. 604 605 - is a SyncOperation for the Worker. 606 607 commit 07ceaccbcb6b9bfa0ef654e065f18d125b78c186 608 Author: Frederik Heber <heber@ins.uni-bonn.de> 609 Date: Sun Mar 4 17:03:13 2012 +0100 610 611 Added file WorkerChoices.hpp. 612 613 commit 6ca805ad723d98879d5404f778b91eb7e5c4a3d1 614 Author: Frederik Heber <heber@ins.uni-bonn.de> 615 Date: Sun Mar 4 16:59:32 2012 +0100 616 617 Added SyncOperation and common base Operation. 618 619 - CommandRegistry stores again Operation which is now the common base class of 620 Async- and SyncOperation. 621 - ShutdownOperation is now a SyncOperation. 622 623 commit 7a16336653de6e52e238202e8df6ad960f9e47c7 624 Author: Frederik Heber <heber@ins.uni-bonn.de> 625 Date: Sun Mar 4 17:05:02 2012 +0100 626 627 Added template functions for sync_read() and sync_write() to Connection. 628 629 - also factored our prepare_write from async_write() which is needed in case 630 of sync_write() as well. 631 632 commit e0d6a3ef8f1f290d186970b88fb22dc92a5c364e 633 Author: Frederik Heber <heber@ins.uni-bonn.de> 634 Date: Sun Mar 4 16:55:32 2012 +0100 635 636 Renamed Operation -> AsyncOperation in file and class. 637 638 - this is preparatory to also have SyncOperation which both derived from a 639 common base Operation. 640 - CommandRegistry for the moment stores AsyncOperation instances. 641 642 commit b9452396f72d117ad90a7bdacbb94f2695a9ca61 643 Author: Frederik Heber <heber@ins.uni-bonn.de> 644 Date: Sun Mar 4 17:18:32 2012 +0100 645 646 FragmentQueue can now resubmit jobs. 647 648 - we keep an internal list of jobs currently being worked on. If the worker 649 returns with a failure, they can be resubmit to the queue. 650 - added unit test function on this. 651 652 commit bf981ca088b97e7ecbc236600a5b199ca98aca6e 653 Author: Frederik Heber <heber@ins.uni-bonn.de> 654 Date: Sun Mar 4 17:08:09 2012 +0100 655 656 FIX: Replaced calls to Operation::handle_FinishOperation by <class>::handle_ ... 657 658 - if Operation::handle_FinishOperation() is protected member function, we call 659 only bind to it like this. 660 661 commit 132e476fd215329cbf716c601844fe42a59c86f0 662 Author: Frederik Heber <heber@ins.uni-bonn.de> 663 Date: Thu Mar 1 18:55:09 2012 +0100 664 665 Renamed SchedulerStates -> ControllerChoices enum. 666 667 - extracted from types.hpp as well. 668 669 commit e21abcf7f09c17a5afb0f116b631eb06de01e973 670 Author: Frederik Heber <heber@ins.uni-bonn.de> 671 Date: Wed Feb 29 09:32:10 2012 +0100 672 673 HUGE: Added PoolWorker and rewrote parts of FragmentScheduler. 674 675 - PoolWorker uses EnrollInPoolOperation and SubmitResultOperation to enroll, 676 get the job and submit the result. Enrolling and getting the job is combined 677 to have the same workflow for the moment until the pool is fully implemented. 678 - WorkerListener_t in FragmentScheduler has a callback instance to access 679 sendJobToWorker function for sending jobs when a Worker has connected. 680 681 ToDo: 682 - FragmentQueue needs a callback function when new jobs have been added. 683 - WorkerPool needs a callback function when a worker is idle. 684 - WorkerListener_t then does not need a callback anymore, just access to 685 the pool who has then the callback. 686 687 commit 11c21b7f3ddf1ef6025eb9945fc869cf8cc5a735 688 Author: Frederik Heber <heber@ins.uni-bonn.de> 689 Date: Tue Feb 28 16:08:09 2012 +0100 690 691 Added WorkerPool to handle a pool of Workers. 692 693 - also added unit test. 694 695 commit 2f8b5417bc2ae7487c3df56fe8d655dc1cd1d50e 696 Author: Frederik Heber <heber@ins.uni-bonn.de> 697 Date: Sun Feb 26 21:19:19 2012 +0100 698 699 Added WorkerAddress, serializable host+service address. 700 701 - also added unit test on comparison operators and serializtion. 702 703 commit 97a9394a648767b24b99e47d573c258923c8b21f 704 Author: Frederik Heber <heber@ins.uni-bonn.de> 705 Date: Sun Feb 26 21:13:23 2012 +0100 706 707 Restructured convenience libraries for Fragmentation/Automation. 708 709 - new convenience library libFragmentationCommands containing all Operation 710 derived classes. 711 - renamed libFragmentationAutomation -> libFragmentationAutomationHelper. 712 - FragmentController and CommandRegistry removed from this library. 713 714 commit 08460020201704abaec85c6af776533801780a62 715 Author: Frederik Heber <heber@ins.uni-bonn.de> 716 Date: Wed Feb 22 19:33:19 2012 +0100 717 718 Refactored main part in FragmentWorker into WorkOnJobOperation. 719 720 - essentially FragmentWorker just contains this Operation and nothing else. 721 722 commit 41ea4dcec191bfe8e5e435a33f8e65dc550b603d 723 Author: Frederik Heber <heber@ins.uni-bonn.de> 724 Date: Wed Feb 22 18:50:06 2012 +0100 725 726 Refactored Listener out of FragmentScheduler. 727 728 - this is preparatory for creating PoolWorker class, i.e. Worker that listen 729 for jobs sent to them by the server. 730 - the connection is just reset() on new initiateSocket(). 731 - closeSocket() correctly shutdown()s and close()s the socket. 732 - Note: As ControllerListener receives new jobs and thus knows when the server 733 is required to listen on worker port again, it needs a bound function to 734 WorkerListener_t::initiateSocket(). This will be removed when the new Pool 735 is in place that handles Worker connections. 736 737 commit 0329de4c0f9b45a0d39b7145fd164e4620360370 738 Author: Frederik Heber <heber@ins.uni-bonn.de> 739 Date: Wed Feb 22 17:50:32 2012 +0100 740 741 Removed duplicate code in FragmentScheduler with initiating new connections. 742 743 commit 270436dde6872b74f1947ee0d3bc95cb20921ce3 744 Author: Frederik Heber <heber@ins.uni-bonn.de> 745 Date: Wed Feb 22 17:41:15 2012 +0100 746 747 Added specific Command to controller to receive mpqc results and combine them. 748 749 - new entry in CommandIndices ReceiveMPQCIndex. 750 - is not done. This should be implemented using the already present methods in 751 the rest of MoleCuilder. This should go into the function 752 printreceivedmpqcresults(). 753 754 commit 05180d13d4815ea7c46dcc076436985591f79710 755 Author: Frederik Heber <heber@ins.uni-bonn.de> 756 Date: Fri Feb 17 11:34:09 2012 +0100 757 758 Added output stream operator to MPQCData. 759 760 commit 2f9056022dc168475077765be214c8d1ab48b0e5 761 Author: Frederik Heber <heber@ins.uni-bonn.de> 762 Date: Thu Feb 16 13:40:35 2012 +0100 763 764 createjobs now gets two options: command, argument. 765 766 commit 6b19d1cd463fa7af766aebc7c6de9fe62c92a23d 767 Author: Frederik Heber <heber@ins.uni-bonn.de> 768 Date: Thu Feb 16 16:09:52 2012 +0100 769 770 New GetNextJobIdOperation for obtaining next available JobId from server. 771 772 - as JobId is required to create the job, we now need two, separate 773 communication phases: gathering info (ids) and sending info (jobs). 774 - new SchedulderState GetNextJobId along with handlers. 775 - new GetNextJobIdOperation that requests another id which is internally 776 stored into a list, along with a getter that extracts them one by one. 777 - controller's createjobs() and parsejobs() each take an nextid parameter now. 778 779 commit 6692dc69fe16e77e1ee0db99a226e19baf98cc24 780 Author: Frederik Heber <heber@ins.uni-bonn.de> 781 Date: Thu Feb 16 12:12:40 2012 +0100 782 783 CheckResultsOperation now receives both scheduled and done jobs. 784 785 commit e53356af9193288003129026bf6e2aa0a00d43db 786 Author: Frederik Heber <heber@ins.uni-bonn.de> 787 Date: Thu Feb 16 11:52:47 2012 +0100 788 789 Added getPresentJobs() to FragmentQueue. 790 791 commit 6bf5f1a4eb0f1996d25174337ad612f319d9529d 792 Author: Frederik Heber <heber@ins.uni-bonn.de> 793 Date: Wed Feb 15 15:17:54 2012 +0100 794 795 Added serialization capability to MPQCCommandJob. 796 797 - added unit test and operator==() (including test). 798 799 commit f36ef1b00855ba79486efe5f6af107829f25571a 800 Author: Frederik Heber <heber@ins.uni-bonn.de> 801 Date: Wed Feb 15 15:14:19 2012 +0100 802 803 Controller has new function addjobs. 804 805 - addjobs parses mpqc input file and creates MPQCCommandJob which is sent to 806 send jobs 807 - old sendjobs is now createjobs which creates empty SystemCommandJob. 808 - added new class GlobalJobId which holds a global JobId such that FragmentJobs 809 created by Controller each have a unique id. NOTE: This should probably be 810 replaced by IdPool implementation when Fragmentation/Automation is integrated 811 into rest of molecuilder. 812 - dummyInit() to have MPQCCommandJob instances known to FragmentScheduler. 813 - TESTFIX: Adapted regression tests Fragmentation/Automation adding-jobs, 814 server-worker, and completerun due to command token change. 815 816 commit f38b3e091db97690092919430d9fb5db209a5cf0 817 Author: Frederik Heber <heber@ins.uni-bonn.de> 818 Date: Tue Feb 14 17:01:24 2012 +0100 819 820 Extended MPQCCommandJob's extractString to understand MP2 keywords. 821 822 commit 4d96df7a9cca85e109f780323910daa954f83481 823 Author: Frederik Heber <heber@ins.uni-bonn.de> 824 Date: Thu Feb 9 16:27:56 2012 +0100 825 826 Added MPQCCommandJob and result container MPQCData. 827 828 - MPQCData contains data to be serialized into FragmentResult. 829 - MPQCCommandJob implements mpqc-specific result extractor. 830 - added unit test for MPQCCommandJob. 831 - added unit test for MPQCData. 832 833 commit 08afc1fce404163a9dfa58af99de7b37a85cd6ef 834 Author: Frederik Heber <heber@ins.uni-bonn.de> 835 Date: Mon Feb 6 10:57:56 2012 +0100 836 837 Abstracted FragmentJob and introduced SystemCommandJob which has its former functionality. 838 839 - FragmentJob now has just virtual function Work(), not implemented. 840 - former command and outputfile is taken over by SystemCommandJob. 841 - a FragmentJob or derived class is default cstor'ed always with 842 JobId::IllegalJob. 843 - so far SystemCommandJob captures command's stdout and parses it back from 844 file. 845 - SystemCommandJob has virtual method extractString() to be adaptable to the 846 output of various system commands. 847 - changes almost everywhere due to SystemCommandJob taking place of 848 FragmentJob and FragmentJob::ptr and FragmentResult::ptr requirements. 849 - added FragmentWorker::dummyInit() to enforce binding of the executable to 850 all possible derived FragmentJob's. 851 - added unit test for SystemCommandJob. 852 - added FragmentJobStub that implements a no-brainer job for testing. 853 854 commit b98c9dea0dff5aea090544dacb4a93d64358ef2b 855 Author: Frederik Heber <heber@ins.uni-bonn.de> 856 Date: Mon Feb 6 10:43:38 2012 +0100 857 858 Moved FragmentResult to subfolder Results. 859 860 - changed includes and Makefile.am's. 861 862 commit 1fd2f758fe4d042ded1e377d3be891951a615cc5 863 Author: Frederik Heber <heber@ins.uni-bonn.de> 864 Date: Mon Feb 6 10:33:27 2012 +0100 865 866 FragmentResult is now also encapsulated in boost::shared_ptr. 867 868 - this allows in the same way to have different implementations of an abstract 869 FragmentResult class. 870 871 commit 2bc18a78211106b1dfb20d3bd8aa2499c74d68f2 872 Author: Frederik Heber <heber@ins.uni-bonn.de> 873 Date: Mon Feb 6 09:58:48 2012 +0100 874 875 Moved FragmentJob to subfolder Jobs. 876 877 - changed all includes and Makefile.am's. 878 - changed order of Jobs in Makefile.am. 879 880 commit e85269aee25fa595d6e63a4613a546273c443f9f 881 Author: Frederik Heber <heber@ins.uni-bonn.de> 882 Date: Mon Feb 6 09:43:07 2012 +0100 883 884 FragmentJob is now passed inside boost::shared_ptr. 885 886 - FragmentJob is to become just an abstract interface to a variety of jobs and 887 we cannot instantiate this interface. We can only pass it around via ptrs. 888 Therefore, we need this switch to shared_ptrs. 889 890 commit 7227b5861a8faba40a4e06c8598f6a1bb5ccb1b5 891 Author: Frederik Heber <heber@ins.uni-bonn.de> 892 Date: Tue Jan 17 20:10:35 2012 +0100 893 894 FragmentJob now executes a specific string as command along with an outputfile to work on. 895 896 - stdout is parsed in as FragmentResult::result, return from std::system is 897 placed into FragmentResult::exitflag. 898 - createjobs() in controller.cpp uses cat and "Nothing" to mimick the same 899 behavior as before. 900 - removed intermediate deadline_timer usage in ::Work(). 901 902 commit af1073afa007409482b4fb02c9b833481f9d7d72 903 Author: Frederik Heber <heber@ins.uni-bonn.de> 904 Date: Fri Mar 9 10:47:57 2012 +0100 905 906 FragmentResult has additional variable exitflag. 907 908 - this is to store the result flag from a system call. 909 910 commit b3ba591c5efcba5ea69c46bc16d623f8dc16afaa 911 Author: Frederik Heber <heber@ins.uni-bonn.de> 912 Date: Mon Dec 12 09:32:27 2011 +0100 913 914 Operations are now contained in CommandRegistry in FragmentController. 915 916 - this is a tiny bit less nice due to required static_cast<>, however in the 917 end we hopefully win due to possible placement inside a Queue. 918 - FragmentController:getExitflag() can now just browse through all present 919 Operations and return the first fail. 920 - TESTFIX: changed regression tests Fragmentation/Automation a bit due to: 921 - server-worker,addingjobs: addjobs now always adds two jobs. 922 - JobAdder, ResultChecker, ResultGetter, and Shutdowner have been removed 923 in favor of Controller and a specific command token. 924 925 commit 50f4184e01c29a43b8df7405617024a05b8b2f9e 926 Author: Frederik Heber <heber@ins.uni-bonn.de> 927 Date: Sun Dec 11 18:43:13 2011 +0100 928 929 Removed all those tiny relay functions in FragmentController. 930 931 - we now use the getter/setters in the derived Operations directly. 932 933 commit 3a1346d7b0395f88ff1b64df86af48435aa993bd 934 Author: Frederik Heber <heber@ins.uni-bonn.de> 935 Date: Sun Dec 11 18:31:37 2011 +0100 936 937 Operation now requires an internal name to be placable in a Registry. 938 939 - derived class give specific name in their cstor. 940 941 commit 25b30aa890962348fd6d25334f39f8ee621c9843 942 Author: Frederik Heber <heber@ins.uni-bonn.de> 943 Date: Sun Dec 11 18:15:53 2011 +0100 944 945 FIX: Added disconnect() call to end of Operation::handle_FinishOperation(). 946 947 - this should close the socket after the communication has completed as each 948 derived class uses handle_FinishOperation() as last callback function. 949 950 commit 96c83b29e7b5914533eaf44412eef03d069a20be 951 Author: Frederik Heber <heber@ins.uni-bonn.de> 952 Date: Sun Dec 11 18:14:24 2011 +0100 953 954 Neither FragmentController not Operation need host or service as params to Cstor anymore. 955 956 - due to the last change these are given directly to Operation::operator(), 957 hence we have removed them from FragmentController's and Operation's cstor. 958 - removed Operation::getEndpointIterator(). 959 - all small controller executables have been adapted accordingly. 960 961 commit 9948a765b2debfa507c64194b464a960ac1a7c34 962 Author: Frederik Heber <heber@ins.uni-bonn.de> 963 Date: Sun Dec 11 17:59:08 2011 +0100 964 965 Operation::operator() now contains everything to get the endpoint and connect. 966 967 - getting the endpoint is placed in operator() which needs host and service as 968 parameters. 969 - derived classes just implement handle_connect whose virtual function pointer 970 is boost::bind in Operation::operator(). 971 - this all makes it very easy to implement new commands for the Controller. 972 - all handle_connect_... of course are now the above implementation. 973 - all connect_... are now contained in Operation::operator(), hence have been 974 removed. 975 976 commit d6fe761176eef8308b81d1ceb788fe4bf80e3d8d 977 Author: Frederik Heber <heber@ins.uni-bonn.de> 978 Date: Sun Dec 11 17:44:18 2011 +0100 979 980 Added a "testfunction" to each ...Operation along with handle_connect. 981 982 - this is to test whether we can place the initial connect into the class 983 Operation and have only specific functions required lateron in the derived 984 classes. 985 986 commit 167b63307c9c9cb05dd758fe1c2b80be02bdb4a2 987 Author: Frederik Heber <heber@ins.uni-bonn.de> 988 Date: Sun Dec 11 17:20:52 2011 +0100 989 990 Extracted all other derived Operation's too and placed into folder Controller/Commands. 991 992 - TESTFIX: Changed regression tests Fragmentation/Automation with respect to 993 the exit code from controller. 994 995 commit 73d6fce636ade8bb851250adf52ad79adf5225a2 996 Author: Frederik Heber <heber@ins.uni-bonn.de> 997 Date: Sun Dec 11 17:00:42 2011 +0100 998 999 Shifted all Controller stuff into own subfolder, extract class Operation. 1000 1001 - extracted class Operation from FragmentController and place into subfolder 1002 Controller/Commands. 1003 - all files containing main() functions are also moved to Controller. 1004 1005 commit 1dc209b83f84861106021c6a70d51182a306d7fc 1006 Author: Frederik Heber <heber@ins.uni-bonn.de> 1007 Date: Sun Dec 11 16:24:20 2011 +0100 1008 1009 Enhanced libMolecuilderFragmentationAutomation in Fragmentation/Automation/Makefile.am. 1010 1011 - libMolecuilderFragmentationAutomation needs to occur after (above) 1012 libMolecuilderFragmentJobs. 1013 - FragmentController sources now contained in ...Automation. 1014 1015 commit 5adb84984c3a69ab1022d16497045fd243ee9087 1016 Author: Frederik Heber <heber@ins.uni-bonn.de> 1017 Date: Sat Dec 10 16:17:06 2011 +0100 1018 1019 Factored out Operation and derived all operations from it. 1020 1021 - a number of subclass of FragmentController that encapsulate each operation. 1022 - Operation contains getEndpointIterator(), handle_FinishOperation() and 1023 disconnect(). 1024 - Operation now also contains Exitflag that was formerly in FragmentController. 1025 - new derived Operations: ReceiveJobsOperation(), CheckResultsOperation(), 1026 SendResultsOperation(), ShutdownOperation() that each contain the 1027 connect_..., handle_... functions. 1028 - functions to initiate operation have been placed into these Operation- 1029 derived classes as implemented virtual operator(). 1030 - most of the required member variables have also been associated with the 1031 class that needs them. Getters and Setters have been relayed for the moment. 1032 - each Operation as of now needs ref to connection, host and service. This 1033 should be changed and the stuff around getEndpointIterator() refactored 1034 along with it. 1035 1036 commit fb2324b496d0bc0e217e446455628f8e1d0b0aa5 1037 Author: Frederik Heber <heber@ins.uni-bonn.de> 1038 Date: Fri Dec 9 22:02:14 2011 +0100 1039 1040 Added regression test Fragmentation/Automation with a complete run of Server, Worker, and controllers. 1041 1042 - TESTFIX: Shortened length of regression test Fragmentation/Automation 1043 server-worker as most is extensively tested in complete-run. 1044 1045 commit c837ad09370c4c1c8890297774ef426315ec3856 1046 Author: Frederik Heber <heber@ins.uni-bonn.de> 1047 Date: Fri Dec 9 22:00:50 2011 +0100 1048 1049 Added regression test Fragmentation/Automation on getting results. 1050 1051 commit db34f216525f470ee4838943ab8d5ae0f4c62dd8 1052 Author: Frederik Heber <heber@ins.uni-bonn.de> 1053 Date: Fri Dec 9 21:55:34 2011 +0100 1054 1055 Added regression test Fragmentation/Automation on checking state. 1056 1057 commit 6772ebf1a929237c6928cb6bd9c7f998b7f733e4 1058 Author: Frederik Heber <heber@ins.uni-bonn.de> 1059 Date: Fri Dec 9 21:48:48 2011 +0100 1060 1061 Added regression test Fragmentation/Automation on adding jobs to Server. 1062 1063 commit 03195ad759d9d0369860828cc4436a5ce6afbd8b 1064 Author: Frederik Heber <heber@ins.uni-bonn.de> 1065 Date: Fri Dec 9 21:39:12 2011 +0100 1066 1067 Added regression test Fragmentation/Automation on Server shutdown capability. 1068 1069 - NOTE: each regression test in Fragmentation/Automation needs its own set of 1070 ports such that they may run in parallel as well. Currently, we start at 1071 port 1025 and use an offset of 5 in between tests. 1072 1073 commit dba6d162581bd1026fa90391ce4c3c62bdde0d38 1074 Author: Frederik Heber <heber@ins.uni-bonn.de> 1075 Date: Fri Dec 9 21:33:43 2011 +0100 1076 1077 Added FragmentController::getPresentJobs(). 1078 1079 commit 0196c62295fdde1b6850b1f16abcdfffe6d46877 1080 Author: Frederik Heber <heber@ins.uni-bonn.de> 1081 Date: Fri Dec 9 21:11:50 2011 +0100 1082 1083 Added Shutdown as choice to ControllerChoices. 1084 1085 - new helper app Shutdowner that shuts down Server. 1086 - TESTFIX: Changed regression test Fragmentation/Automation where now 1087 Shutdowner is uses instead of Jobadder with 0 jobs to power down controller 1088 socket. 1089 1090 commit e70b9dc00a22a0801131763acf7c71937581ac4d 1091 Author: Frederik Heber <heber@ins.uni-bonn.de> 1092 Date: Fri Dec 9 20:17:35 2011 +0100 1093 1094 Renamed regression test Fragmentation/Automation. 1095 1096 - there are more to come and this just tests server/worker combination. 1097 1098 commit 778abb8ccf156d1308e41e6fad137c7987dc7c8f 1099 Author: Frederik Heber <heber@ins.uni-bonn.de> 1100 Date: Fri Dec 9 19:18:14 2011 +0100 1101 1102 Added ResultGetter and capabilities to receive calculated results to FragmentController. 1103 1104 - Added enum (and file) ControllerChoices that defines the state of 1105 FragmentScheduler. 1106 - depending on what is desired the Scheduler switches between these states and 1107 either receives or sends information. Requires new member variable choice 1108 because receival is of course asynchronous (see note in previous commit). 1109 - FragmentController has additional functions connect_get() and 1110 handle_connect_get() to receive results. 1111 - connect_calc() and connect_check() now just the choice whereas the actual 1112 sending and receiving is done in handle_... functions. 1113 - handle_FinishOperation() is the common final callback function for all three 1114 of these functions. 1115 - FragmentScheduler contains an internal list of delivered results. 1116 - FragmentScheduler only initiates worker socket when jobs are present. 1117 - FIX: FragmentScheduler does only send results that are done and only once. 1118 - TESTFIX: Removed third Worker that receives NoJob as socket is powered down 1119 before because queue has run empty and we haven't add new jobs. 1120 1121 commit b9c48666be399d007fd031b2d636eba8227f227d 1122 Author: Frederik Heber <heber@ins.uni-bonn.de> 1123 Date: Thu Feb 16 17:14:38 2012 +0100 1124 1125 Added getAllResults() to FragmentQueue. 1126 1127 - added convenience function ::IsPresentResult(). 1128 - this is to replace FragmentSchedulder::getResults() which relies on jobs 1129 being filled still. 1130 - added unit test on getAllResults(). 1131 1132 commit 402bde72b40b66cbc74451c852e07802a12af199 1133 Author: Frederik Heber <heber@ins.uni-bonn.de> 1134 Date: Fri Dec 9 21:10:53 2011 +0100 1135 1136 Placed initiating sockets from Cstor of FragmentScheduler into helper functions. 1137 1138 commit 3c4a5ec6700394439a96a697b6964a634d5ec97f 1139 Author: Frederik Heber <heber@ins.uni-bonn.de> 1140 Date: Fri Dec 9 18:11:55 2011 +0100 1141 1142 Added ResultChecker and capability to check on computed jobs. 1143 1144 - added handle_connect_check() to FragmentController. 1145 - FragmentScheduler::handle_AcceptController() switches between _ReceiveJobs or 1146 _CheckResultState depending on present jobs and done jobs. We use 1147 FragmentQueue::getDoneJobs() to store number of jobs handling connect. 1148 - TESTFIX: Enhanced regression test Fragmentation/Automation to use 1149 ResultChecker as well. 1150 1151 commit db03d94db34e97b2e16df2332a1953abdf66be98 1152 Author: Frederik Heber <heber@ins.uni-bonn.de> 1153 Date: Mon Nov 28 00:20:43 2011 +0100 1154 1155 Added possibility to add jobs via a FragmentController. 1156 1157 - Server listens on another port for a controller to connect, also now has an 1158 Exitflag. 1159 - Controller can add a bunch of jobs. 1160 - JobAdder can successfully add a number jobs to Server, if 0 are sent, the 1161 socket shuts down. 1162 - TESTFIX: extended regression Fragmentation/Automation test to use Jobadder as 1163 by default Server starts with no jobs in the queue. 1164 1165 commit 8ee5ac067548a00b728f1a0f0c9f085fbb85cd93 1166 Author: Frederik Heber <heber@ins.uni-bonn.de> 1167 Date: Mon Nov 28 00:02:30 2011 +0100 1168 1169 Added function getDoneJobs() to FragmentQueue. 1170 1171 - this allows to check on the state of calculations. 1172 1173 commit cde0fedccbba0b6cd10bc0012657ac36bee2f2a9 1174 Author: Frederik Heber <heber@ins.uni-bonn.de> 1175 Date: Sun Nov 27 23:57:39 2011 +0100 1176 1177 Placed FragmentJob, ..Queue, and ..Result into convenience library, atexit into another. 1178 1179 - this speeds up compilation as we don't have to compile some modules multiple 1180 times. 1181 1182 commit 9875ccf9a4c2201731b5bab9675d60bc378e1671 1183 Author: Frederik Heber <heber@ins.uni-bonn.de> 1184 Date: Sun Nov 27 21:52:48 2011 +0100 1185 1186 Added FragmentQueue::pushJobs() to add a bunch of jobs simultaneously. 1187 1188 - also extended unit test. 1189 1190 commit 2445fbdb67fdcb7bbc91286479bf3636ac96f8b1 1191 Author: Frederik Heber <heber@ins.uni-bonn.de> 1192 Date: Sun Nov 27 21:09:01 2011 +0100 1193 1194 Added private default cstor to FragmentResult. 1195 1196 - enhanced unit test by a vector<Fragmentresult> test and this made the above 1197 default cstor necessary. 1198 1199 commit 083490d5d35f5aa2fd1a49ffc80c90fb17f5eff4 1200 Author: Frederik Heber <heber@ins.uni-bonn.de> 1201 Date: Sun Nov 27 20:03:10 2011 +0100 1202 1203 Renamed default handle_..() functions of FragmentSchedulder and ...Worker. 1204 1205 - new names resemble in what context they appear (i.e. at the end of what 1206 operation they are called). 1207 1208 commit ef27671d6947ddc9fc6ee4fd2fbb213a4ab7174a 1209 Author: Frederik Heber <heber@ins.uni-bonn.de> 1210 Date: Sun Nov 27 19:38:26 2011 +0100 1211 1212 Server and Worker now also correctly exchange result. 1213 1214 - Server uses FragmentQueue which also stores the obtained result. 1215 - Worker calls received FragmentJob::Work() function and returns the 1216 thereby calculated FragmentResult. 1217 - Regression test for Server/Worker now checks whether job #1 is listed twice, 1218 this basically checks whether the result has been exchanged. 1219 1220 There have been some concepts to understand to get this working and these 1221 shall be briefly recorded here: 1222 - asynchronous communication can only work on objects that live beyond the 1223 scope of where they have been called, e.g. therefore FragmentScheduler 1224 contains a FragmentResult and FragmentWorker a FragmentJob instance. They 1225 receive this object and need the write access in the scope of the aync. 1226 comm. and not of the caller's scope. This is probably because the initial 1227 argument is only used to set up a buffer of correct length. However, 1228 the received instance is created/deserialized first when the communication 1229 is completed. And this may well be after the caller's scope has been left. 1230 - This is different to read operations as probably there the object to send 1231 is immediately serialized and placed into an internal buffer such that 1232 later access is only to this buffer and not to the original instance 1233 which therefore does not need to exist anymore. That's why the above 1234 Schedulder and Worker do not have the "other" instance as class members 1235 as well. 1236 - chaining asynchronous communications, e.g. a write after a read has been 1237 performed, can only be done by using the callback functions that the 1238 async_write/read gets as parameters. They are called when the one operation 1239 has finished and therein the next operation can then be launched. This 1240 way a successful chain is executed. 1241 1242 commit 630a6e76e8fd0da3d37d517432a74ebda2a494f2 1243 Author: Frederik Heber <heber@ins.uni-bonn.de> 1244 Date: Sun Nov 27 19:35:35 2011 +0100 1245 1246 Increased Verbosity for Server and Worker. 1247 1248 commit 0bdd51bd1d38a734cb760046b677f4ee890ac7b7 1249 Author: Frederik Heber <heber@ins.uni-bonn.de> 1250 Date: Thu Nov 24 21:34:51 2011 +0100 1251 1252 Added regression test for Server/Client construct. 1253 1254 - currently we expect the Server to shut down after the queue is discovered empty. 1255 - added Exitflag and associated enum to FragmentWorker. 1256 - FragmentScheduler exits gracefully when there are no more jobs in the queue. 1257 1258 commit a1b77dd03c096829276e87f213300eb7c4efcfdf 1259 Author: Frederik Heber <heber@ins.uni-bonn.de> 1260 Date: Thu Nov 24 21:24:07 2011 +0100 1261 1262 Added call FragmentJob::Work() to FragmentWorker::handle_read(). 1263 1264 - FragmentWorker also now contains FragmentResult instance, pendant to 1265 FragmentJob. 1266 - added FragmentResult cstor with empty parameters (uses JobId::NoJob). 1267 1268 commit 7b22e9544beb54c2218ef5e47d9851e8603c779d 1269 Author: Frederik Heber <heber@ins.uni-bonn.de> 1270 Date: Thu Nov 24 21:21:20 2011 +0100 1271 1272 FragmentJob now contains Work() function. 1273 1274 - Work() encapsulates all the work to do to calculate the FragmentResult such 1275 that FragmentWorker does not need to know anything about it. 1276 - added WorkTest to unit test along with FragmentResultStub. 1277 - added FragmentResult.[ch]pp to Worker sources in Makefile.am. 1278 1279 - also unit tests are now linked only against boost libs they really need. 1280 1281 commit c7deca229684c7b65fd3575bfb9ad413b64a2dc4 1282 Author: Frederik Heber <heber@ins.uni-bonn.de> 1283 Date: Thu Nov 24 20:21:52 2011 +0100 1284 1285 Added static NoJob (id0) to FragmentScheduler to indicate empty queue to client. 1286 1287 - added enum to class JobId with special ids. 1288 1289 commit b0b64c36d561d4b02ddd580dd842d288f95b6141 1290 Author: Frederik Heber <heber@ins.uni-bonn.de> 1291 Date: Thu Nov 24 20:12:49 2011 +0100 1292 1293 FragmentScheduler now contains a FragmentQueue and serves single jobs therefrom. 1294 1295 - e.g. currently we only push one job, hence only a single worker is served. 1296 Others afterwards don't receive a job. 1297 - we lack a mechanism to give feedback to the client, i.e. a pseudo job such 1298 that he knows that the queue is empty right now. Later this should then 1299 indicate a wait (for a specific amount of time). 1300 1301 commit 12d15a837efe9a69ef0528ec526ba2adbf8f7c09 1302 Author: Frederik Heber <heber@ins.uni-bonn.de> 1303 Date: Sun Oct 23 23:24:18 2011 +0200 1304 1305 FragmentQueue now allows for removal of jobs. 1306 1307 - new static NoResultQueued states whether job has been popped, but result 1308 is missing so far. 1309 - extended FragmentQueueUnitTest. 1310 1311 commit 57876b5bc8ae81d557361f9ed21754f1be23d432 1312 Author: Frederik Heber <heber@ins.uni-bonn.de> 1313 Date: Sun Oct 23 22:54:34 2011 +0200 1314 1315 Added serialization unit tests on FragmentJob and FragmentResult. 1316 1317 commit 02f34688f788967fdd4765560ba2cde4ccd5ba81 1318 Author: Frederik Heber <heber@ins.uni-bonn.de> 1319 Date: Sun Oct 23 22:23:56 2011 +0200 1320 1321 Extended FragmentQueueUnitTest. 1322 1323 - extended by tests on its job and result queues. 1324 1325 commit af81f809ad4251794e6aad0bbbb5a062ccb10153 1326 Author: Frederik Heber <heber@ins.uni-bonn.de> 1327 Date: Sun Oct 23 22:22:27 2011 +0200 1328 1329 FIX: FragmentQueue now obtains id of FragmentResult directly from it. 1330 1331 commit b05673868c5ee97ab3b5a5b15c41567fc0659845 1332 Author: Frederik Heber <heber@ins.uni-bonn.de> 1333 Date: Sun Oct 23 22:20:19 2011 +0200 1334 1335 Introduced JobId as an own class that Job and Result inherit. 1336 1337 - FragmentJob and FragmentResult may thus have all other info as public, only 1338 the id has to be secured from false access. 1339 1340 commit b5ebb569dab339861535e482277051aeb3f8943a 1341 Author: Frederik Heber <heber@ins.uni-bonn.de> 1342 Date: Sun Oct 23 21:07:41 2011 +0200 1343 1344 Added FragmentQueue, FragmentResult, and scaffold for unit test on FragmentQueue. 1345 1346 commit 4b58cccfcae20f61dca5d2d18f77c1db61bb9a98 1347 Author: Frederik Heber <heber@ins.uni-bonn.de> 1348 Date: Sun Oct 23 21:01:52 2011 +0200 1349 1350 JobId is now own type JobId_t. 1351 1352 commit b14f17df0995c6157c06a55a1b9596c3ec9a9d52 1353 Author: Frederik Heber <heber@ins.uni-bonn.de> 1354 Date: Mon Nov 21 11:01:38 2011 +0100 1355 1356 Renamed s11n_example executables to Server and Worker. 1357 1358 commit e3a9c9095467adb37758c5092f95060f1fa98969 1359 Author: Frederik Heber <heber@ins.uni-bonn.de> 1360 Date: Mon Nov 21 09:48:32 2011 +0100 1361 1362 FragmentWorker::handle_connect can deal with multiple endpoint resolution. 1363 1364 commit 00a248e52e820b8b1e298f757c031943126dee7d 1365 Author: Frederik Heber <heber@ins.uni-bonn.de> 1366 Date: Mon Nov 21 09:34:43 2011 +0100 1367 1368 Renamed file client.cpp -> Worker.cpp. 1369 1370 commit f7f99510d4b31a8e2923b0af4c9fc96e6ef2fa3f 1371 Author: Frederik Heber <heber@ins.uni-bonn.de> 1372 Date: Mon Nov 21 09:32:56 2011 +0100 1373 1374 Renamed file server.cpp -> Server.cpp. 1375 1376 commit cd4a6e84fc65152a21053ba13c6d87bca6e724ae 1377 Author: Frederik Heber <heber@ins.uni-bonn.de> 1378 Date: Mon Nov 21 09:22:22 2011 +0100 1379 1380 Renamed file StockServer -> FragmentScheduler. 1381 1382 commit 8c9596e4625116d26a89a0b50b4ed923834abde4 1383 Author: Frederik Heber <heber@ins.uni-bonn.de> 1384 Date: Mon Nov 21 10:45:52 2011 +0100 1385 1386 Renamed class StockClient -> FragmentWorker. 1387 1388 - renamed friend declaration in FragmentJob. 1389 1390 commit 926a490eef5be0923876b74bb122c92134f2147a 1391 Author: Frederik Heber <heber@ins.uni-bonn.de> 1392 Date: Fri Nov 18 21:29:36 2011 +0100 1393 1394 Renamed class StockServer -> FragmentScheduler. 1395 1396 commit af3aedfa905ac3865913f9a11dba55621206e94e 1397 Author: Frederik Heber <heber@ins.uni-bonn.de> 1398 Date: Fri Nov 18 21:29:36 2011 +0100 1399 1400 Introduced Info in several functions, replaced connection.hpp by Connection.hpp. 1401 1402 commit c6bcd0d3471aa10310cb252b40ebb9963d2eb216 1403 Author: Frederik Heber <heber@ins.uni-bonn.de> 1404 Date: Fri Nov 18 21:29:36 2011 +0100 1405 1406 Added MemDebug.hpp to StockServer. 1407 1408 commit 00d4fb757b6bdfe59277afc18c19b31bdab0cd1e 1409 Author: Frederik Heber <heber@ins.uni-bonn.de> 1410 Date: Fri Nov 18 21:29:36 2011 +0100 1411 1412 Added MemDebug.hpp to StockClient. 1413 1414 commit f938420ab6a003f14dcfcd95a908c111ecf80599 1415 Author: Frederik Heber <heber@ins.uni-bonn.de> 1416 Date: Fri Nov 18 21:29:36 2011 +0100 1417 1418 Added config.h inclusion to all Stock*. 1419 1420 commit 31ca5f07f01e2d94689a06092d8e5b8d84a2a909 1421 Author: Frederik Heber <heber@ins.uni-bonn.de> 1422 Date: Fri Nov 18 21:29:36 2011 +0100 1423 1424 StockClient and StockServer now exchange FragmentJob's instead of stock's. 1425 1426 - for the moment StockClient is friend of FragmentJob to access contents. 1427 1428 commit 963c3bb7ef11b28ed00b41281604dbd75f87d0d9 1429 Author: Frederik Heber <heber@ins.uni-bonn.de> 1430 Date: Fri Nov 18 21:29:36 2011 +0100 1431 1432 Took connection out of namespace. 1433 1434 commit a636f8d76f52b58d724bf2ba92f76d2df9c67fd0 1435 Author: Frederik Heber <heber@ins.uni-bonn.de> 1436 Date: Fri Nov 18 21:29:36 2011 +0100 1437 1438 Took StockClient out of namespace s11n_example. 1439 1440 commit 2eff32bc86b5a24a223754e4992ad808b3427255 1441 Author: Frederik Heber <heber@ins.uni-bonn.de> 1442 Date: Fri Nov 18 21:29:36 2011 +0100 1443 1444 Renamed client -> StockClient, split off StockClient into own module. 1445 1446 commit 8b65727b83e15dcfd1ce88625b8a59af32e5baab 1447 Author: Frederik Heber <heber@ins.uni-bonn.de> 1448 Date: Fri Nov 18 21:29:36 2011 +0100 1449 1450 Took stock out of namespace. 1451 1452 commit ed2c5bf77d3337e917dab023057b5246bb07acef 1453 Author: Frederik Heber <heber@ins.uni-bonn.de> 1454 Date: Fri Nov 18 21:29:36 2011 +0100 1455 1456 Took StockServer out of namespace s11n_example. 1457 1458 commit 72eaf7f2ba3489095828d8e575443ea4b1731b0d 1459 Author: Frederik Heber <heber@ins.uni-bonn.de> 1460 Date: Fri Nov 18 21:29:36 2011 +0100 1461 1462 Implemented working s11n example from boost::asio and refactoring ... 1463 1464 - removed Worker test example. 1465 - rename class server -> StockServer. 1466 - split off StockServer into own module. 1467 1468 commit d0b3acad3e369a36eebdac29b1682a4b45be2baf 1469 Author: Frederik Heber <heber@ins.uni-bonn.de> 1470 Date: Fri Oct 21 18:02:54 2011 +0200 1471 1472 Added initial setting for creating client/server for automated fragment calculation. 1473 1474 - we check for boost::asio in configure. 1475 - extra subdir src/Fragmentation/Automation to keep dependencies between new 1476 client/server architecture and rest of MoleCuilder as small as possible 1477 (especially compile-time wise). 1478 - small worker (hello world) program that is linked against boost::asio 1479 containing first example of asio tutorial (timer.1) to underline 1480 functionality. 1481 1482 commit e44956108f0bb594c7954211e93c2d0afcd3d523 1483 Author: Frederik Heber <heber@ins.uni-bonn.de> 1484 Date: Thu Apr 12 09:31:26 2012 +0200 1485 1486 Set version to 1.2.4 1487 1488 - Molecuilder library is now 8:0:1. 1489 1490 - Codename "Mercedes" (the W124 series is one chassis used by Mercedes in its E-class cars) 1491 1492 commit b2c30277e29ff71804fcb5db963189440f56db52 1493 Author: Frederik Heber <heber@ins.uni-bonn.de> 1494 Date: Fri Mar 16 13:29:01 2012 +0100 1495 1496 DOCU: Extended documentation on how values from the user are eventually used by Actions. 1497 1498 - updated ValueStorage docu. 1499 1500 commit be21faee0c27bbf2439e848bacfe01d94e55d9e0 1501 Author: Frederik Heber <heber@ins.uni-bonn.de> 1502 Date: Wed Apr 11 18:18:23 2012 +0200 1503 1504 Moved getParametersfromValueStorage() call from each single Action into base class Action::call(). 1505 1506 commit 3e93332edcd1d53ed12f703581f513aa848ed653 1507 Author: Frederik Heber <heber@ins.uni-bonn.de> 1508 Date: Fri Apr 6 14:51:10 2012 +0200 1509 1510 FIX: Corrected includes of GLWorldScene and GLWorldView. 1511 1512 commit 53059ec2dd3238b5576917fc5f3b886c51b6c88d 1513 Merge: c0ed1e7 3927ef3 1514 Author: Frederik Heber <heber@ins.uni-bonn.de> 1515 Date: Fri Apr 6 13:59:28 2012 +0200 1516 1517 Merge branch 'michi-track-molecules' into stable 1518 1519 Conflicts: 1520 src/World.hpp 1521 1522 - World had removed NotificationType MoleculeChange but added SelectionChanged. 1523 - FIX: World::AtomPositionChanged is no more, GLWorldView listens to 1524 AtomObserver instead. 1525 1526 commit 3927ef32aa0c52dd73d5c9a4fe5eccea8715a379 1527 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1528 Date: Wed Apr 4 16:00:53 2012 +0200 1529 1530 GL: molecule selection boxes 1531 1532 - only instantiated for selected molecules 1533 - no size/position changes tracked yet! 1534 1535 commit 1ce04ba25c600a48cbc8077e87d4f752d2bdb206 1536 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1537 Date: Wed Apr 4 15:59:53 2012 +0200 1538 1539 TYPO in comment 1540 1541 commit a3900675b96bc0f90f73a7fecc419561b8effaa9 1542 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1543 Date: Mon Apr 2 14:11:44 2012 +0200 1544 1545 QtWorldView: only refill on repaint 1546 1547 commit 25b3559dab530b85b3b7f9d2ae6e4fa721bc6c45 1548 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1549 Date: Mon Apr 2 13:50:01 2012 +0200 1550 1551 QtElementList: only refill on repaint 1552 1553 commit 225cf5bb2323a8449a33e059ca95fcbd61c610f5 1554 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1555 Date: Mon Apr 2 12:57:45 2012 +0200 1556 1557 REFACTOR: GL: made drawSelectionBox its own function 1558 1559 commit 3b229e53114d9aef7a92da804468aee8149f13a5 1560 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1561 Date: Mon Apr 2 12:48:10 2012 +0200 1562 1563 GL: made hover/selection materials static 1564 1565 - no more getMaterial(_evil_number_) workaround 1566 1567 commit c6751895e249ac3b8b055b048e09886c9e6b6faf 1568 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1569 Date: Fri Mar 30 16:59:47 2012 +0200 1570 1571 GL: molecules show if they're selected (mostly dummy) 1572 1573 - adden new GLMoleculeObject_molecule class (without mesh) 1574 - draws a cube if molecule is selected 1575 (does NOT use correct position/size yet!) 1576 1577 commit 42c6a471ef0ffc7ff153901aa28b1d9be1a5076a 1578 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1579 Date: Fri Mar 30 15:46:59 2012 +0200 1580 1581 REFACTOR: removed duplicate variable in GLMoleculeObject (m_mesh, m_GLMoleculeObject) 1582 1583 commit 5a2a0637855ca870075b64d371bf7a586b59f786 1584 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1585 Date: Fri Mar 30 12:51:02 2012 +0200 1586 1587 GL: sending more signals to redraw 1588 1589 - atoms send changed() to scene when element or position changed 1590 - atoms send selectionChanged() to scene when (un)selected 1591 - bonds send changed() to scene when an atom changes its position 1592 1593 commit d539023abf66f2db5f41891aeba4d6e409d58146 1594 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1595 Date: Fri Mar 30 12:35:47 2012 +0200 1596 1597 GL: atoms show if they're selected 1598 1599 commit fbb1f1abc80189e7ebceb05b7baec9b319cf4db8 1600 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1601 Date: Thu Mar 29 15:38:37 2012 +0200 1602 1603 GLMoleculeObject_bond: dynamic bond distance via matrices 1604 1605 commit 343a4b93ad2b4402ac08f73a701b3a94f1f4b462 1606 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1607 Date: Thu Mar 29 14:37:44 2012 +0200 1608 1609 GL: bond tracks its atoms' position changes 1610 1611 commit 8a77aceca34c6bfc767e485022aadcae50a7ff12 1612 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1613 Date: Thu Mar 29 13:35:47 2012 +0200 1614 1615 GL: track atoms changing position 1616 1617 - handles World::AtomPositionChanged 1618 - selectionMaterial 1619 1620 commit 69643ae5440d6dddbf875a782811ee16d2941d85 1621 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1622 Date: Thu Mar 29 13:11:02 2012 +0200 1623 1624 World: made selection changes observable 1625 1626 commit 6e6b9000d63e415dcd88d625a8bf097ce425b880 1627 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1628 Date: Thu Mar 29 13:09:40 2012 +0200 1629 1630 VectorQtQuery: allowing negative values 1631 1632 commit 85a23f9feaae1467065551b93789e2310a3b6504 1633 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1634 Date: Tue Mar 20 14:24:49 2012 +0100 1635 1636 FIX: BoxQtQuery crashed (matrix initialized as 0) 1637 1638 commit 85b1126c465b0555e3fcf90ff8032d9abb86d60f 1639 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1640 Date: Tue Mar 20 14:01:11 2012 +0100 1641 1642 made BooleanQtQuery a checkbox 1643 1644 commit 51b5d11f6164373b94b7c426c6fc651ad5363705 1645 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1646 Date: Tue Mar 20 13:41:00 2012 +0100 1647 1648 FIX: missing initializers for QtQueries 1649 1650 commit 4ddcfb56748b600772484d5b11391fec57f3d210 1651 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1652 Date: Thu Mar 15 14:09:56 2012 +0100 1653 1654 FIX: BooleanQtQuery: missing Layout creation before use 1655 1656 commit a14fe398b40b1b536bb476011b0c210663749bae 1657 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1658 Date: Thu Mar 15 13:43:54 2012 +0100 1659 1660 VectorQtQuery implemented 1661 1662 commit 1de61e16ec9243406aa643aaa7f68fa60662ed77 1663 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1664 Date: Tue Mar 13 14:24:27 2012 +0100 1665 1666 QtElementList: selection calls actions 1667 1668 commit b14efe1ed7af1abfc8af894dcaafd29b7d110a4a 1669 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1670 Date: Tue Mar 13 13:58:50 2012 +0100 1671 1672 QtWorldView: selection in widget calls actions 1673 1674 commit 613f8ce92dbe7aa67f0bcf2b469dc117261e6701 1675 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1676 Date: Thu Mar 22 13:30:17 2012 +0100 1677 1678 added a selection material to GLMoleculeObject (still unused) 1679 1680 commit 818201ca31afd939c7344a175135fb8dc1f9665f 1681 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1682 Date: Thu Mar 22 13:29:22 2012 +0100 1683 1684 added a dirty flag to QtElementList (still unused) 1685 1686 commit 79b59b34898604a6632f6ba8004edb82aa1e19ea 1687 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1688 Date: Thu Mar 22 13:27:01 2012 +0100 1689 1690 made QtWorldView a QTreeWidget 1691 1692 commit 575343869aa527e7b87db59d4b3951735678ab11 1693 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1694 Date: Thu Mar 22 13:22:08 2012 +0100 1695 1696 added OBSERVE to molecule::SetNameFromFilename 1697 1698 commit 59a28ec90c4e8631aeaf66b49d200d2e6fc3e72e 1699 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1700 Date: Thu Mar 8 13:41:08 2012 +0100 1701 1702 QtElementList improved 1703 1704 - occurrence added 1705 - connected to molecule observer 1706 1707 commit f20fa5eaab631780e5e575ac7150352538ba9a14 1708 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1709 Date: Thu Mar 8 11:08:44 2012 +0100 1710 1711 made QtElementList a QTreeWidget 1712 1713 commit 0e61565a3b23140c13eb4888983a7b3b30175141 1714 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1715 Date: Tue Mar 6 17:48:08 2012 +0100 1716 1717 new class: QtElementList 1718 1719 commit 244f8167b657eafd126134f5ceff42b58c2c1b05 1720 Author: Michael Ankele <ankele@ins.uni-bonn.de> 1721 Date: Tue Mar 6 14:09:48 2012 +0100 1722 1723 QTabWidget for worldDisplay 1724 1725 commit c0ed1e7cacf4dc5df9d33813e1fd71b00795c4d7 1726 Author: Frederik Heber <heber@ins.uni-bonn.de> 1727 Date: Fri Apr 6 13:31:15 2012 +0200 1728 1729 FIX: WorldTime::setTime only gives update when given time step is different. 1730 1731 - this [closes #183]. 1732 1733 commit d0037049d1e673734b6a2457d940c4d0f7c587d2 1734 Author: Frederik Heber <heber@ins.uni-bonn.de> 1735 Date: Fri Apr 6 13:03:57 2012 +0200 1736 1737 FIX: Box does not notify (though update) when set conditions or matrix is the same. 1738 1739 - TESTFIX: BoxUnitTest adapted accordingly and added checks for no notify on 1740 these cases. 1741 1742 commit 760c4c275e5610869534aa6ad1bb5c87db08d9ae 1743 Author: Frederik Heber <heber@ins.uni-bonn.de> 1744 Date: Fri Apr 6 12:39:22 2012 +0200 1745 1746 Cleaned observer structure in atom. 1747 1748 - Added new channel BondsRemoved and used in bonds removal functions. 1749 - FIX: Removed PropertyChanged for setNr and alikes, Nr is molecule's 1750 responsibility. Made note of this in documentation. 1751 1752 commit 6a3c838abc3c19ed587d178dee4f274fb26b6f8b 1753 Author: Frederik Heber <heber@ins.uni-bonn.de> 1754 Date: Fri Apr 6 11:57:43 2012 +0200 1755 1756 Cleaned observer structure in molecule. 1757 1758 - FIX: Several OBSERVE were not needed, as update trigger was already contained 1759 in sub functions called in these routines. 1760 - Added NotificationType enumeration of channels: Atom insertion, atom removal, 1761 atom nr changes, and molecule name changes. 1762 - OBSERVE and NOTIFY used in the functions only where the direct change occurs. 1763 1764 commit d25bec3da03f889ba40af0111cab8123b30a7b9b 1765 Author: Frederik Heber <heber@ins.uni-bonn.de> 1766 Date: Fri Apr 6 11:48:08 2012 +0200 1767 1768 Cleaned the structure of Observers, i.e. what they report. 1769 1770 - The boundaries between who reports on what are somewhat unclear right now, this 1771 commits fixes it and installs clear responsibilities for each of the major 1772 observer entities. 1773 - DOCU: Added section on observer construct on who reports on what. 1774 - FIX: Removed AtomPositionChanged, AtomChanged, and MoleculeChanged (unused) 1775 channels in World. 1776 1777 commit 006e1ed7d5cc4416cfbfad21491bcfc0fcdda3ce 1778 Author: Frederik Heber <heber@ins.uni-bonn.de> 1779 Date: Fri Apr 6 13:19:10 2012 +0200 1780 1781 FIX: ChangeTracker has not been observing AtomObserver so far. 1782 1783 - This is introduced due to cleaning of observer structure. 1784 - FIX: Cleaned ChangeTracker declaration from false includes. 1785 - FIX: TextWindow.cpp lacked include World. 1786 - TESTFIX: All Parser...UnitTest needed to purge AtomObserver instance. 1787 1788 commit 23fd4308ecfb01cade133b122c6e3e4b440e3141 1789 Author: Frederik Heber <heber@ins.uni-bonn.de> 1790 Date: Fri Apr 6 12:09:07 2012 +0200 1791 1792 FIX: TremoloParser now contains usedFields_load and _save to allow for multiple loading. 1793 1794 - refactored several functions out of ::save(). 1795 - parseAtomDataKeysLine() and isUsedField now require usedFields ref. 1796 - FIX: save() now erases duplicate entries still in usedFields. 1797 - removed setFieldsForSave(), was duplicate of setAtomData(). 1798 - new function makeUsedFieldsUnique() to preserver order of appearance in 1799 usedFields. 1800 - this [closes #141]. 1801 - FIX: made several function parameters constant that were not before. 1802 - FIX: Removed double readAtomDataLine(). 1803 1804 commit 531f27764dc2eabbcb727eb49be1867ac1257e30 1805 Author: Frederik Heber <heber@ins.uni-bonn.de> 1806 Date: Thu Apr 5 10:53:23 2012 +0200 1807 1808 Added SaveSelectedAtomsAsExtTypesAction that creates a tremolo-specific .exttypes file. 1809 1810 - the functionality is implemented in TremoloParser. 1811 - it is required to perform a save on the atoms before such that ids are 1812 correct. 1813 - the actions tells whether ids are valid or not. 1814 - also added regression test Parser/Tremolo-Exttypes. 1815 1816 commit 80ca2949199193b6a0fde7517836465c5a7a214a 1817 Author: Frederik Heber <heber@ins.uni-bonn.de> 1818 Date: Thu Apr 5 17:42:12 2012 +0200 1819 1820 Added regression test Filling/RegularGrid with and without a tesselated surface. 1821 1822 - also repaired FillRegularGridAction such that do/undo/redo works. 1823 1824 commit 72e4c95aeeec393ae183fcfb6ed2cebda6d50771 1825 Author: Frederik Heber <heber@ins.uni-bonn.de> 1826 Date: Fri Apr 6 12:34:16 2012 +0200 1827 1828 tempcommit: regression tests Filling/SphericalSurface Undo/Redo were still marked XFAIL. Merge with ... 1829 1830 commit af9be32aa2e588261aae3f3bcec741a12087b34c 1831 Author: Frederik Heber <heber@ins.uni-bonn.de> 1832 Date: Thu Apr 5 16:09:17 2012 +0200 1833 1834 Added BondInfo to store bond's state information for later re-instantiation. 1835 1836 - also added StoreBondInformationFromAtoms() and AddBondsFromBondInfo() to 1837 UndoRedoHelpers. 1838 1839 commit 06070b7a13e23eedd9701b62d229b17677769304 1840 Author: Frederik Heber <heber@ins.uni-bonn.de> 1841 Date: Thu Apr 5 14:53:38 2012 +0200 1842 1843 AtomicInfo now also stores and restores the bond state information for the atom. 1844 1845 commit cc9119798652998bbd0707a1ab96db1b98d7aa9d 1846 Author: Frederik Heber <heber@ins.uni-bonn.de> 1847 Date: Thu Apr 5 14:51:22 2012 +0200 1848 1849 Refactored BondedParticle::removeAllBonds() into variant with and without time step. 1850 1851 commit 42b6de7c684d4c908777f116dccaf00a8e479cf2 1852 Author: Frederik Heber <heber@ins.uni-bonn.de> 1853 Date: Thu Apr 5 11:38:33 2012 +0200 1854 1855 Filler::operator() has param vector of Cluster's that is filled with inserted ones to allow for undoing. 1856 1857 - FillRegularGrid and FillSphericalSurface have undo and redo functionality 1858 based on the returned vector of Cluster's and UndoRedoHelpers. 1859 1860 commit 57dd40cda8082273cb21c69bba6a7c8b5a561fca 1861 Author: Frederik Heber <heber@ins.uni-bonn.de> 1862 Date: Thu Apr 5 11:37:13 2012 +0200 1863 1864 Extracted removal and adding of atoms from AtomicInfo to UndoRedoHelpers module. 1865 1866 - this way atoms can be quickly re-created, removed from AtomicInfo state 1867 information. 1868 - added ResetAtomPosition(). 1869 - RemoveAction makes use of this. 1870 1871 commit 91be2dbe71d6dc407a0ef58370bc1566d7b01d91 1872 Author: Frederik Heber <heber@ins.uni-bonn.de> 1873 Date: Thu Apr 5 11:53:46 2012 +0200 1874 1875 Added Undo/Redo check to regression test Filling/SphericalSurface. 1876 1877 - both are maked as XFAIL right now. 1878 1879 commit 4187a74c602e4565e9e0fb1929d48384d6792cc5 1880 Author: Frederik Heber <heber@ins.uni-bonn.de> 1881 Date: Wed Apr 4 16:17:22 2012 +0200 1882 1883 Removed MoleculeAction/CreateMicelleAction, is replaced by FillAction/FillSphericalSurfaceAction. 1884 1885 - TESTFIX: removed regression test Molecule/CreateMicelle. 1886 - TESTFIX: created Filling/SphericalSurface. 1887 1888 commit cb76762d774e30e4704076d9c68d27765141559d 1889 Author: Frederik Heber <heber@ins.uni-bonn.de> 1890 Date: Wed Apr 4 13:16:14 2012 +0200 1891 1892 FillSphericalSurface now works on selected molecule and requires an alignment axis. 1893 1894 - the axis is used to perform the rotation assuming the filler molecule is 1895 oriented on this direction. 1896 - also, it now uses CopyAtoms_withBonds. 1897 1898 commit 93eae3672fe61ef67bd3ca7888779afb308aa2e0 1899 Author: Frederik Heber <heber@ins.uni-bonn.de> 1900 Date: Wed Apr 4 13:12:18 2012 +0200 1901 1902 Added new Inserter working on surfaces of Sphere's. 1903 1904 - We also align the given filler Cluster along the surface normal direction. 1905 - Note: Filler nodes may only reside on the Sphere's surface. 1906 1907 commit 50c35d7a80a86a8cda3eba3bc522fa468ed79feb 1908 Author: Frederik Heber <heber@ins.uni-bonn.de> 1909 Date: Tue Apr 3 15:32:46 2012 +0200 1910 1911 Added Line::getRotationMatrix() and RealSpaceMatrix::setRotation(Vector,double). 1912 1913 - setRotation() now allows to set a rotation matrix about an arbitrary axis. 1914 - Line::getRotationMatrix() just forwards to RealSpaceMatrix::setRotation() 1915 with its direction. 1916 - added (simple) unit test function for both. 1917 1918 commit 2db05382555a391b8fe4741acd08266bfc330545 1919 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 1920 Date: Thu Mar 29 19:18:16 2012 +0200 1921 1922 Added action to fill selected atoms on sphere surface. 1923 1924 commit f4cfb689eb8b160e2dc0434074efead7fdc8c8e0 1925 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 1926 Date: Thu Mar 29 19:16:24 2012 +0200 1927 1928 Mesh adaptor to reuse sphere-shape for new filler action. 1929 1930 commit 4a4f3d8ce22775957b51c385fd5f8d8a6fb427cc 1931 Author: Frederik Heber <heber@ins.uni-bonn.de> 1932 Date: Thu Apr 5 11:54:12 2012 +0200 1933 1934 Added regression test Filling/RegularGrid with undo, redo. 1935 1936 commit 6aad6f855826b41c7c32b3b3c9706d5adbcf9acd 1937 Author: Frederik Heber <heber@ins.uni-bonn.de> 1938 Date: Thu Apr 5 13:29:26 2012 +0200 1939 1940 FIX: molecule::containsAtom() is now const and has const param, added AtomIdSet::contains(). 1941 1942 - AtomIdSet::contains() is predicate to whether id is contained, added unit 1943 test function. 1944 - also added molecule::containsAtom() on atomic id only. 1945 1946 commit 57f7434125c2e5fda6c02a28c72e221dd66f64d9 1947 Author: Frederik Heber <heber@ins.uni-bonn.de> 1948 Date: Wed Apr 4 15:56:54 2012 +0200 1949 1950 FIX: AtomIdDescriptor was not using internal_iterator but full ObservedIterator. 1951 1952 - this causes messy update()-cascades because on destruction of the iterator 1953 during the find, which is e.g. used by AtomIdSet::const_iterator(!), an 1954 Observer signal was triggered. 1955 - NOTE: In Descriptors we may _always_ use internal iterators, as this never 1956 does any harm to the World with respect to insertion/removal of atoms or 1957 molecules. 1958 - this [closed #182]. 1959 1960 commit b98a32c9973063fcbc69b436a08b1405b9df5ce1 1961 Author: Frederik Heber <heber@ins.uni-bonn.de> 1962 Date: Tue Apr 3 16:31:03 2012 +0200 1963 1964 FIX: Some fixes to Resize_Impl functions. 1965 1966 - replaced 1/ by 1./. 1967 - volume and surface area are size to the power of three and two, respectively. 1968 1969 commit c4864173a791cccb5a29c6f251b4e9352b31020f 1970 Author: Frederik Heber <heber@ins.uni-bonn.de> 1971 Date: Tue Apr 3 16:29:31 2012 +0200 1972 1973 FIX: ShapeOps::getHomogenous...() were not working. 1974 1975 - replaced for_each by transform (the latter actually replaces). 1976 - also by using ShapeOpsBase_Impl::translateOutPos() we can implement the 1977 getHomogeneous...() functions more generally inside ShapeOpsBase_Impl 1978 instead of specifically for each Shape operation. 1979 - added Implementation of getHomogenousPointsOnSurface unit test function. 1980 1981 commit 5cdd83b4ee7182af3e7f1f1dc01d45d7e02916a2 1982 Author: Frederik Heber <heber@ins.uni-bonn.de> 1983 Date: Thu Apr 5 11:38:02 2012 +0200 1984 1985 FIX: AtomicInfo.hpp lacked some inclusions, had only forward declarations. 1986 1987 commit b3d687bc878019a08e899000aa1d38119f390058 1988 Author: Frederik Heber <heber@ins.uni-bonn.de> 1989 Date: Thu Apr 5 10:14:13 2012 +0200 1990 1991 FIX: Filler::operator() did not create a molecule for each cloned cluster. 1992 1993 - so far we assume (in AtomicInfo) that each atoms always belongs to a 1994 molecule. However, the CopyAtomsInterface copies without creating new 1995 molecules or associating copied ones with the old molecules. 1996 - AtomicInfo asserts that atom is associated to a molecule. 1997 - CopyAtoms_withBonds now associates cloned atoms with molecule of original 1998 atom. 1999 - Filler::operator() creates a molecule for each cloned cluster and associates 2000 all atoms in the cluster with it. 2001 - This [closes #180]. 2002 2003 commit 2598874de68fdc051204a1835045f988d021c922 2004 Author: Frederik Heber <heber@ins.uni-bonn.de> 2005 Date: Thu Apr 5 09:55:23 2012 +0200 2006 2007 FIX: XyzParser stumbled over empty comment line. 2008 2009 - FormatParser< xyz >::load() used operator>> and ws but this skips over the 2010 newline characters if only whitespace follows. Now we use getline. 2011 - added regression test part on the issue to Parser/Xyz/...load-various. 2012 - This [closes #181]. 2013 2014 commit 2034f3c5f9db8e8024a0f4db0cd3d1231e98ac24 2015 Author: Frederik Heber <heber@ins.uni-bonn.de> 2016 Date: Tue Mar 27 14:37:05 2012 +0200 2017 2018 Added AtomInfo::charge along with getter and setter. 2019 2020 - charge is used by both TremoloParser and XmlParser, hence needs to be 2021 exchanged. 2022 - Added charge to state info in AtomicInfo. 2023 - TESTFIX: regression tests Molecules/Copy, Molecules/CreateMicelle, and 2024 Filling/FillVoidWithMolecule's tensid.data file had to be changed due to 2025 present Charge info with precision different to the one arising from new 2026 AtomInfo::Charge. 2027 - removed ParserXmlUnitTest from XFAIL_TESTS. 2028 2029 commit 3d0892b89b1f6f981cce9898d7abd17bfafd158f 2030 Author: Frederik Heber <heber@ins.uni-bonn.de> 2031 Date: Mon Mar 26 11:59:32 2012 +0200 2032 2033 Added an additionalAtomInfo container to XmlParser. 2034 2035 - this stores the parser-specific information such as charge, ... 2036 2037 commit d2596bcb8a99e3a32ebcb51e123bd7fed8235a16 2038 Author: Frederik Heber <heber@ins.uni-bonn.de> 2039 Date: Sat Mar 24 17:39:43 2012 +0100 2040 2041 Added XmlParser for parsing configurations for ScaFaCoS generic test code. 2042 2043 - XML is parsed via pugixml which is placed in subfolder pugixml in src/Parser. 2044 - NOTE: pugixml does not import/export double with high enough precision. 2045 Hence, we always obtain strings and convert them ourselves. 2046 - also added unit test on the new parser. 2047 - NOTE: Unit test is failing as charges are not yet written correctly, hence 2048 marked as XFAIL. 2049 2050 commit 613da6b478df78ec98ab183a9a9bd735adf14586 2051 Author: Frederik Heber <heber@ins.uni-bonn.de> 2052 Date: Sat Mar 24 17:39:04 2012 +0100 2053 2054 Added check for boost::property_tree to boost.m4. 2055 2056 commit ed26ae0a32a705778541a63922f7ba79f0840079 2057 Author: Frederik Heber <heber@ins.uni-bonn.de> 2058 Date: Mon Mar 26 10:06:19 2012 +0200 2059 2060 Renamed calls to element::getNumber() -> ::getAtomicNumber(). 2061 2062 - dropped element::getNumber() as getAtomicNumber has same functionality. 2063 2064 commit 47ed3dbe85194f82787c9dcd9efa83fae922b213 2065 Author: Frederik Heber <heber@ins.uni-bonn.de> 2066 Date: Mon Mar 26 09:48:22 2012 +0200 2067 2068 Removed some old output functions in element, Formula, and molecule. 2069 2070 - This is preparatory for refactoring element into a more general concept that 2071 can contain both chemical and derived elements suitable for empirical 2072 potential parametrization storage. 2073 - Removed functions in element: Output(), Checkout(). 2074 - Removed function Formula::checkOut(). 2075 - Removed function molecule::Checkout(). 2076 - functionality added to periodentafel::OutputElement(). 2077 2078 commit 03a58974943974bda29e50e38854002e694c2f07 2079 Author: Frederik Heber <heber@ins.uni-bonn.de> 2080 Date: Mon Mar 26 09:44:19 2012 +0200 2081 2082 Removed lots of remnant output functions in atom and molecule that are not used anymore. 2083 2084 - Removed functions in atom: OutputMPQCLine(), OutputPsi3Line(), 2085 OutputXYZLine(), OutputTrajectories(), OutputTrajectoryXYZ() 2086 - functionality of outputters has been shifted to Psi3Parser and MPQCParser. 2087 - Removed functions in molecule: OutputTrajectories(), 2088 OutputTrajectoriesXYZ(), OutputXYZ() 2089 - Removed in CounBondsUnitTest: OutputTestMolecule(). 2090 2091 commit ce7bfd57176b8ad23e9bfcc393a41c4798df77ed 2092 Author: Frederik Heber <heber@ins.uni-bonn.de> 2093 Date: Tue Mar 13 20:35:15 2012 +0100 2094 2095 VERBOSE: Subsequent change in verbosity levels of many tesselation functions after Info removal. 2096 2097 commit 2a3124b519027c588e363ec4c5a44171b4715777 2098 Author: Frederik Heber <heber@ins.uni-bonn.de> 2099 Date: Tue Mar 13 18:35:01 2012 +0100 2100 2101 VERBOSE: Removed lots of Info objects in tesselation classes member functions. 2102 2103 commit e791dcfb33d9e278cc697cebebb3ec5731abcfe9 2104 Author: Frederik Heber <heber@ins.uni-bonn.de> 2105 Date: Tue Mar 13 18:52:00 2012 +0100 2106 2107 Removed molecule::doCountAtom() and added molecule::doCountNoNonHydrogen(). 2108 2109 - since the conversion of molecule to being a container for a set of atomicId_t 2110 counting atoms is just an unnecessary O(N^2), since we count through all of 2111 them. With atomIds.size() however the number of atoms is always known. 2112 - Hence, moleucle::AtomCount is no longer a Cacheable, but NoNoHydrogen is 2113 now such a one. LazyEvaluation is only sensible when the evaluations are 2114 few. Due to updates from the GUI however, atomcount is constantly requested. 2115 - FIX: removed doCountAtom() calls in some functions in analysis_correlation. 2116 2117 commit 1089686f4e347a12c5cb5f631aeaa4c165a9f3c0 2118 Author: Frederik Heber <heber@ins.uni-bonn.de> 2119 Date: Tue Mar 13 18:37:53 2012 +0100 2120 2121 FIX: Rewrite of BondGraph's CreateAdjacency() and getMaxPossibleBondDistance(). 2122 2123 - getMaxPossibleBondDistance() is not templated anymore but expects simply a 2124 set of atomicNumber_t. 2125 - new helper function BondGraph::getElementSetFromNumbers() which converts a 2126 set of atomicNumber_t into a set of elements. 2127 - createAdjacency now prepares initially the set of atomicNumber_t and from 2128 it the set of elements such that no further element lookups are necessary 2129 except once for each atom's element. 2130 2131 commit 08a0f52718bbbbe42fd8618c1e90effd0fc6eabb 2132 Author: Frederik Heber <heber@ins.uni-bonn.de> 2133 Date: Tue Mar 13 18:36:46 2012 +0100 2134 2135 AtomInfo has new functions getElement() and getElementNo(). 2136 2137 - getElement() shall replace getType() which still returns a pointer instead 2138 of a reference, is marked as deprecated. 2139 - getElementNo() is a faster way if only the atomicNumber_t of the atom is 2140 desired as no lookup in the World is necessary. 2141 2142 commit ccb487ddab59ad8050ce40929874510f2d9454f0 2143 Author: Frederik Heber <heber@ins.uni-bonn.de> 2144 Date: Thu Mar 15 18:29:54 2012 +0100 2145 2146 TremoloParser now always writes current domain as "# Box ..." into file. 2147 2148 - This is important, as format tremolo is essentially also a domain preserving 2149 type (i.e. tremolo reads Box from .data file). 2150 - TESTFIX: The following regression tests have a "' Box ..." line added to their 2151 .data files: Domain/RepeatBox, Filling/FillVoidWithMolecule, Molecules/Copy, 2152 Molecules/CreateMicelle, Parser/Tremolo-SetAtomdata. 2153 - FIX: Forgot to add testsuite-fill-void-with-tenside-molecule.at to 2154 Makefile.am 2155 2156 commit a275b3f9d246781dcbb1eae64f444246f68aad00 2157 Author: Frederik Heber <heber@ins.uni-bonn.de> 2158 Date: Mon Mar 12 16:11:36 2012 +0100 2159 2160 TremoloParser uses ElementKeys. 2161 2162 - functions parseKnownTypes() and createKnownTypesByIdentity() relay to 2163 respective functions in ElementKeys. 2164 - TremoloParser::readAtomDataLine() catches IllegalParserKeyException to 2165 inform the user of .data with insufficient .potential knowledge. 2166 2167 commit d9005c16a207bbd7364238aaf6dfaa1afe18b7cb 2168 Author: Frederik Heber <heber@ins.uni-bonn.de> 2169 Date: Mon Mar 12 16:08:21 2012 +0100 2170 2171 Extracted TremoloParser::knownTypes into distinct class ElementKeys, and added ParserExceptions. 2172 2173 - added Exceptions.hpp to folder Parser with currently only exception 2174 IllegalParserKeyException. 2175 - ElementKeys contains map that parses contents from file and may set identity 2176 mapping based on periodentafel's elements. 2177 - getter and setter throw IllegalParserKeyException. 2178 2179 commit ebc499bb1355679f4fc65d57497f95261d93f328 2180 Author: Frederik Heber <heber@ins.uni-bonn.de> 2181 Date: Mon Mar 12 18:02:52 2012 +0100 2182 2183 Added InvertMoleculesAction and InvertAtomsAction. 2184 2185 - World has two new functions invertAtomSelection() and ..MoleculeSelection(). 2186 - these actions are needed to get some of the boolean operations working that 2187 are possible inside the code but not outside. Concatenated selections are 2188 on the command-line always combined as OR and never as AND, via an invertion 2189 operation, we may combine these into an effective AND combination. 2190 - also added regression tests Selection/Atoms/InvertAtoms and Selection/ 2191 Molecules/InvertMolecules. 2192 2193 commit 61c364e5234bfac462d451e14f2d8a128787f6bb 2194 Author: Frederik Heber <heber@ins.uni-bonn.de> 2195 Date: Fri Mar 23 09:40:39 2012 +0100 2196 2197 Added AtomOrderDescription along with SelectionAtomByOrder. 2198 2199 - added unit test function AtomOrderTest on new descriptor. 2200 - added regression tests Selection/Atoms/AtomByOrder. 2201 - TESTFIX: Enhanced moltest.py and moltest_check.py by catching ValueError, 2202 when lines in options.dat are faulty. 2203 2204 commit 8de597c3fb205163fbb84791b76d54a43062db72 2205 Author: Frederik Heber <heber@ins.uni-bonn.de> 2206 Date: Thu Mar 1 14:56:51 2012 +0100 2207 2208 FIX: FileQtQueryPipe demanded QFileDialog::ExistingFile. 2209 2210 - for InputAction also non-existing files are allowed. 2211 2212 commit 2935fddcbade4d132f34943ad80b643b77283a4b 2213 Author: Frederik Heber <heber@ins.uni-bonn.de> 2214 Date: Mon Apr 2 13:09:47 2012 +0200 2215 2216 Set version to 1.2.3 2217 2218 - Molecuilder library is now 8:0:0. 2219 2220 - Codename "Serpens Cauda" (yellow dwarf star system 123 light years away, 2221 containing HD 168443b/c, two extrasolar planets). 2222 2223 commit 510f8114d39633be815ec5bf2eb8bf42f5b30f6a 2224 Merge: 0f44e1b 22425a9 2225 Author: Frederik Heber <heber@ins.uni-bonn.de> 2226 Date: Mon Apr 2 12:35:51 2012 +0200 2227 2228 Merge branch 'Fix_Tesselation_InsideOutSideUnitTest' into Candidate_v123 2229 2230 commit 22425a9c1deaa6c8fe8844c40fe08d87a46164b9 2231 Author: Frederik Heber <heber@ins.uni-bonn.de> 2232 Date: Mon Apr 2 12:34:03 2012 +0200 2233 2234 DISTFIX: Tesselation_InsideOutsideUnitTest still wrote temporary file. 2235 2236 commit 0f44e1b5c2cc3d04152871c13aae2b663dd50a45 2237 Author: Frederik Heber <heber@ins.uni-bonn.de> 2238 Date: Mon Apr 2 10:34:35 2012 +0200 2239 2240 Added CodeCheck on header files forgotten to put into a Makefile.am 2241 2242 commit 7256a22b879c94a26db88606e94c6dd807033fd5 2243 Author: Frederik Heber <heber@ins.uni-bonn.de> 2244 Date: Mon Apr 2 10:18:10 2012 +0200 2245 2246 DISTFIX: Forgot to include various header files in Makefile.am's. 2247 2248 - Shapes/ShapeType.hpp was missing in Makefile.am. 2249 - Forgot to add Filling/ClusterInterface.hpp to Makefile.am. 2250 - src/LinkedCel/LinkedCell_Model_inline.hpp was not present in Makefile.am. 2251 2252 commit 896f4a7ada6369e3572c881c6619a64461c0de07 2253 Author: Frederik Heber <heber@ins.uni-bonn.de> 2254 Date: Thu Mar 29 10:21:47 2012 +0200 2255 2256 FillRegularGridAction now uses RandomInserter to fill in the clusters. 2257 2258 - FillRegularGridAction has three new parameters taken over from 2259 FillVoidWithMoleculeAction. 2260 2261 commit 48ab414c9528b756853528365f66102bc5b91219 2262 Author: Frederik Heber <heber@ins.uni-bonn.de> 2263 Date: Thu Mar 29 10:21:35 2012 +0200 2264 2265 Implemented working RandomInserter. 2266 2267 - we copy&paste most of the routines from boundary.cpp use in the filler 2268 functions there. This is to eventually remove these from boundary.cpp. 2269 2270 commit 4fbc4eb3e954566cda24e1994d562cd588d3d6df 2271 Author: Frederik Heber <heber@ins.uni-bonn.de> 2272 Date: Wed Mar 21 11:13:39 2012 +0100 2273 2274 FIX: Filler::operator() now shifts filler cluster out of domain before evaluating predicates. 2275 2276 - Note, we only move the atoms outside, not the shape. 2277 2278 commit e32fa633df40b948e4d2e8a829385c51a6f7d34c 2279 Author: Frederik Heber <heber@ins.uni-bonn.de> 2280 Date: Tue Mar 27 15:53:10 2012 +0200 2281 2282 Modified Filler:operator() such that Inserters only modify position, not clone. 2283 2284 commit 68abe5f58a8e654ce9fa978466f421b7b52a0fa0 2285 Author: Frederik Heber <heber@ins.uni-bonn.de> 2286 Date: Tue Feb 21 15:27:21 2012 +0100 2287 2288 Made Inserter::operator(), Filler::operator() return bool, used by FillRegularGridAction. 2289 2290 - true if at least one node is filled. 2291 - this is preparatory for allowing Inserter to insert and not clone only. 2292 2293 commit f61f610060cf4f27c505a50acd437f8a6b56abf8 2294 Author: Frederik Heber <heber@ins.uni-bonn.de> 2295 Date: Tue Feb 21 14:55:58 2012 +0100 2296 2297 Refactored implementation of Inserter into pimpl pattern. 2298 2299 - this is then much more similar to Predicate. 2300 2301 commit 901d8728439c01d409375e1e3f5d042c4d2d7bb6 2302 Author: Frederik Heber <heber@ins.uni-bonn.de> 2303 Date: Tue Feb 21 14:27:44 2012 +0100 2304 2305 Refactored insertion of cluster into Inserter class. 2306 2307 - this is to allow for random variations and alike with arbitrary inserters. 2308 - Filler now requires an Inserter in cstor which is used when placing a cluster 2309 at a specific node. 2310 - the Inserter::operator() uses CopyAtomsInterface to pass on to 2311 Cluster::clone(). 2312 - FillRegularGridAction uses SimpleInserter now. 2313 - TESTFIX: FillerUnitTest uses SimpleInserter, too, now. 2314 2315 commit dba7b09bd997e1ce6c6342031daa75dfc481bfc0 2316 Author: Frederik Heber <heber@ins.uni-bonn.de> 2317 Date: Wed Mar 21 11:20:18 2012 +0100 2318 2319 Extended filling documentation for Inserter. 2320 2321 commit da1e9282f7aecf587880d71ca5531b04c643fa70 2322 Author: Frederik Heber <heber@ins.uni-bonn.de> 2323 Date: Mon Jan 30 12:06:59 2012 +0100 2324 2325 Shape::getVolume() and ::getSurfaceArea() use Approximators if implementation returns -1. 2326 2327 - We use the approximators via tesselation for surface area and via a stupid 2328 Monte Carlo integration for the volume. 2329 - implemented stubs to use with Shape unit tests. 2330 2331 commit 4c6e70b2ccc22ff8e07d3429981f902de285f40e 2332 Author: Frederik Heber <heber@ins.uni-bonn.de> 2333 Date: Mon Jan 30 12:05:27 2012 +0100 2334 2335 Added functors for calculating surface area and volume of a Shape. 2336 2337 - These are implemented as functors to avoid that Shape and especially its 2338 library become dependent on Tesselation and other libraries. 2339 - Added heuristic for point density to ApproximateShapeArea. 2340 - ApproximateShapeVolume uses RealSpaceMatrix directly and does not 2341 Box::translateIn(). 2342 2343 commit 595cfd9cce8dca421ed34314c2b4e9cb33b6d8ef 2344 Author: Frederik Heber <heber@ins.uni-bonn.de> 2345 Date: Thu Jan 19 16:40:33 2012 +0100 2346 2347 Added NodeGenerator. 2348 2349 commit c67c65d4e13897fc13b0c5ff2c63be4e582854c9 2350 Author: Frederik Heber <heber@ins.uni-bonn.de> 2351 Date: Mon Jan 30 09:18:04 2012 +0100 2352 2353 Added preliminary getVolume() and getSurfaceArea() implementation to all Shapes. 2354 2355 - only BaseShapes are truely usable, the rest is mostly marked as TODO. 2356 - the problem is that intersections are not so easy to handle. Probably, we 2357 have to use polygonal intersections there and approximate volume 2358 calculations. 2359 - the functions return -1 when not implemented yet. this is preparatory to 2360 start approximate calculations at the top node of the Shape "graph" if -1. 2361 is returned from the implementation. 2362 2363 commit 7672551588bebb7aede173ab33a7c92d8ee6bed7 2364 Author: Frederik Heber <heber@ins.uni-bonn.de> 2365 Date: Mon Jan 30 09:14:10 2012 +0100 2366 2367 Split off class definition of LinePoint from module Line.cpp 2368 2369 - added documentation section on the lines. 2370 - some changes due to new include LinePoint.hpp. 2371 2372 commit e9ad4343d882a9eb00d1566d22d9d03580a62a77 2373 Author: Frederik Heber <heber@ins.uni-bonn.de> 2374 Date: Wed Mar 21 11:36:49 2012 +0100 2375 2376 FillRegularGridAction now expects the filler as selected molecule, all selected atoms are tesselated. 2377 2378 commit 345eda8ba424c9dbb13488e397cd25c45027d9bc 2379 Author: Frederik Heber <heber@ins.uni-bonn.de> 2380 Date: Tue Mar 6 16:20:13 2012 +0100 2381 2382 Enhanced FillRegularGridAction to avoid tesselated surfaces. 2383 2384 - selected molecules (if any) are now tesselated ans !IsInsideSurface is used 2385 to only fill outside. 2386 2387 commit 5a4cbcba2db951efef5711b10c3f27755464e607 2388 Author: Frederik Heber <heber@ins.uni-bonn.de> 2389 Date: Thu Mar 1 17:40:31 2012 +0100 2390 2391 VERBOSITY: Increased verbosity threshold of some outputs connected to FillRegularGridAction. 2392 2393 commit a884522bcc22ba620339ea5c6358f0408ce9007d 2394 Author: Frederik Heber <heber@ins.uni-bonn.de> 2395 Date: Fri Jan 20 02:29:57 2012 +0100 2396 2397 Added new Action subfolder, menu, and CommandLine options map, and FillRegularGrid Action in it. 2398 2399 - counts, offset and min-distance as parameters that determine the filling. 2400 - we find bounding sphere for the selected set of atoms. 2401 - CopyAtoms_withBonds is used in cloning the cluster. 2402 - libMolecuilderFilling added to libMolecuilderUI. 2403 2404 commit d505a3699ad22730219478f69fe1a8ad8b608c2f 2405 Author: Frederik Heber <heber@ins.uni-bonn.de> 2406 Date: Thu Jan 19 16:40:18 2012 +0100 2407 2408 Added Filler as general method of filling a Shape. 2409 2410 - Filler::operator()() requires CopyAtomsInterface ref as param. 2411 - added unit test that creates cluster of two atoms and fills a row of nodes. 2412 2413 commit 5d81e514140621e03b61d2bd770397f6d45321d3 2414 Author: Frederik Heber <heber@ins.uni-bonn.de> 2415 Date: Fri Jan 20 02:33:40 2012 +0100 2416 2417 Added CubeMesh derived from Mesh. 2418 2419 - contains a count and a offset Vector, along with a transformation matrix: 2420 - the transformation is to scale the internal cube. 2421 - counts is the axis partitioning, offset changes between 0 and 0.5 and 0.5 and 2422 1 in a partitioning of 2. 2423 2424 commit dd3f4f0b89cda87be8279908c39849664ab7067a 2425 Author: Frederik Heber <heber@ins.uni-bonn.de> 2426 Date: Thu Jan 19 18:02:02 2012 +0100 2427 2428 Added class Mesh for containing a set of Shape-filling Vectors. 2429 2430 commit 8f6e2a881f918244cc0e6fc08507dc72a81dcf74 2431 Author: Frederik Heber <heber@ins.uni-bonn.de> 2432 Date: Tue Jan 17 22:06:35 2012 +0100 2433 2434 Added new class Cluster as atomIdset with a Shape. 2435 2436 - inherits ClusterInterface. 2437 - its clone() requires CopyAtomsInterface ref. 2438 - implements getShape(), transform(), and translate(). 2439 - added unit test. 2440 2441 commit 9e5a306c82483ea0f88a098c86376beb12c62ffe 2442 Author: Frederik Heber <heber@ins.uni-bonn.de> 2443 Date: Wed Mar 28 10:59:32 2012 +0200 2444 2445 Added ClusterInterface. 2446 2447 - this is preparatory for using a Cluster as possible atom sets. 2448 - ClusterInterface has getShape(), transform(), and translate(), 2449 also its clone() requires CopyAtomsInterface. 2450 2451 commit 7adddc77959cfcd6ae003aa73f30942d2e1c3c35 2452 Author: Frederik Heber <heber@ins.uni-bonn.de> 2453 Date: Thu Jan 19 16:41:30 2012 +0100 2454 2455 Added IsInsideSurface_FillPredicate 2456 2457 - added unit test. 2458 2459 commit 83fd7d028ca39a4cd002c097850aa966f267121e 2460 Author: Frederik Heber <heber@ins.uni-bonn.de> 2461 Date: Thu Jan 19 16:43:13 2012 +0100 2462 2463 Added Ops_FillPredicate. 2464 2465 - added unit test. 2466 2467 commit baac793b97fbf4371eca521187baa79207499a83 2468 Author: Frederik Heber <heber@ins.uni-bonn.de> 2469 Date: Thu Jan 19 16:41:45 2012 +0100 2470 2471 Added IsVoidNode_FillPredicate. 2472 2473 - added unit test. 2474 - added documentation and verbosity to IsVoidNode() and IsVoidNode_FillPredicate(). 2475 - creates a LinkedCell_view that is copied when bound to IsVoidNode(). 2476 2477 commit 6499b1ee9307f8ecc39caafba8f8083e036a4bd0 2478 Author: Frederik Heber <heber@ins.uni-bonn.de> 2479 Date: Thu Jan 19 16:46:41 2012 +0100 2480 2481 Added IsInsideDomain_FillPredicate. 2482 2483 - added unit test. 2484 2485 commit 600a5296c7fb2bdb5ffe9f184edc5632d2acb442 2486 Author: Frederik Heber <heber@ins.uni-bonn.de> 2487 Date: Thu Jan 19 17:27:42 2012 +0100 2488 2489 Added IsInDomain_FillPredicate. 2490 2491 - added unit test. 2492 2493 commit b00ab1b88d1ad76942e82e3eece9355ea217a2d7 2494 Author: Frederik Heber <heber@ins.uni-bonn.de> 2495 Date: Thu Jan 19 16:16:09 2012 +0100 2496 2497 AnyFillPredicate takes a specific boost::function as predicate. 2498 2499 - this will allow us to pass on specific boolean function that are used via 2500 boost::bind to serve as predicates, embodied in this class. 2501 2502 commit 9c2cb38007f3f87ae0e49da9d30c337eac0660af 2503 Author: Frederik Heber <heber@ins.uni-bonn.de> 2504 Date: Thu Jan 19 16:40:58 2012 +0100 2505 2506 FillPredicate is working base class, where FillPredicateBase.hpp is the underlying interface. 2507 2508 - FillPredicate is alike to Shape in design, containing a implementation 2509 pointer which has all the functionality and we just point to it. 2510 2511 commit 0d57cbe09325913fcef9dcef6d7f542ede6e61b5 2512 Author: Frederik Heber <heber@ins.uni-bonn.de> 2513 Date: Wed Jan 18 01:21:07 2012 +0100 2514 2515 Added Node and NodeSet for a position and a vector of Positions. 2516 2517 commit b380ed238b7e9f275cf94f77da35860808083f3b 2518 Author: Frederik Heber <heber@ins.uni-bonn.de> 2519 Date: Tue Jan 17 15:57:37 2012 +0100 2520 2521 DOCU: Added concept for new construct Filling. 2522 2523 commit 9e1d01415f93be121370a5079d969cb2451872f0 2524 Author: Frederik Heber <heber@ins.uni-bonn.de> 2525 Date: Wed Mar 21 10:34:00 2012 +0100 2526 2527 Added CopyAtoms structure. 2528 2529 - this creates a copy of a vector of atoms with as much depth as desired by 2530 the user. 2531 - this is a hierarchy of functors that each add additional functionality such 2532 as also re-creating the bonds, ... 2533 2534 commit c67ff9c421296109fd402e1c2e1890d090d2777f 2535 Author: Frederik Heber <heber@ins.uni-bonn.de> 2536 Date: Wed Mar 21 12:56:06 2012 +0100 2537 2538 Added molecule::getBoundingShape() and unit test MoleculeUnitTest on it. 2539 2540 - We now simply have a function to get a sphere as a suitable bounding shape 2541 which allows easy construction of a new cluster. 2542 2543 commit 8e1f9015fa26331d074f80396b4d0f473847dc93 2544 Author: Frederik Heber <heber@ins.uni-bonn.de> 2545 Date: Wed Mar 21 12:41:02 2012 +0100 2546 2547 molecule uses AtomIdSet now, rename getAtoms -> getAtomIds(). 2548 2549 - molecule now relies on AtomIdSet functions, only insert() and erase() have 2550 own functionality to set the molecule internal id and the atom name. 2551 - FIX: removed MoleculeDescriptor include, added to Fragmentation and 2552 DepthFirstSearchAnalysis. 2553 2554 commit 5e65342e2c81c65880890589b38aca41fb13097c 2555 Author: Frederik Heber <heber@ins.uni-bonn.de> 2556 Date: Tue Feb 21 16:45:02 2012 +0100 2557 2558 Refactored transform_iterator out of class molecule as AtomIdSet. 2559 2560 - also added unit test. 2561 2562 commit d927abb3d77a2859e44f0802e7b32cf4c5385ec6 2563 Author: Frederik Heber <heber@ins.uni-bonn.de> 2564 Date: Thu Mar 22 18:39:02 2012 +0100 2565 2566 Renamed AtomByShape -> AtomsByShape and speedup due to LinkedCell usage. 2567 2568 - since each Shape implements Shape::getRadius() and ::getCenter(), we may use 2569 the LinkedCell construct to obtain a smaller neighborhood faster. 2570 2571 commit 3e1b7b6bbc335f8797e72e3edc99ef7639f3b319 2572 Author: Frederik Heber <heber@ins.uni-bonn.de> 2573 Date: Tue Mar 27 15:27:22 2012 +0200 2574 2575 Added regression test on select-atoms-inside-sphere with a small radius. 2576 2577 - this is to test a subsequent implementation using LinkedCell and whther it 2578 is faster. 2579 2580 commit 5a8d6181d9ecac92ad0fd935c5788630721f55b0 2581 Author: Frederik Heber <heber@ins.uni-bonn.de> 2582 Date: Thu Jan 19 01:55:04 2012 +0100 2583 2584 Added new function to all Shape: getHomogeneousPointsInVolume(). 2585 2586 - basically it is not implemented except for ShapeOps, yet. 2587 - there is an initial unit test Shape_HomogeneousPointsUnitTest. 2588 2589 commit 6acc2f3a1b46ec7dee426fa502fd350592a2d3b5 2590 Author: Frederik Heber <heber@ins.uni-bonn.de> 2591 Date: Wed Jan 18 21:17:24 2012 +0100 2592 2593 Added getCenter() and getRadius to all Shapes. 2594 2595 - also extended unit test. 2596 - Added test functions to ShapeOpsUnitTest. 2597 2598 commit 84721b64723f4546ae9f3f1785703ef9fc47d7ed 2599 Author: Frederik Heber <heber@ins.uni-bonn.de> 2600 Date: Wed Jan 18 21:47:29 2012 +0100 2601 2602 Added new unit test ShapeOpsUnitTest, testing all ShapeOps. 2603 2604 - BUGFIX: Stretch_impl() cstor had 1/... not 1./... for reciFactors. 2605 2606 commit 571d048445007f27e1ef0c620af6a034eacacef7 2607 Author: Frederik Heber <heber@ins.uni-bonn.de> 2608 Date: Wed Jan 18 21:25:30 2012 +0100 2609 2610 Renamed ShapeUnitTest -> BaseShapesUnitTest. 2611 2612 commit 735940a1f921b67951e76dc118fcdac077fea6ab 2613 Author: Frederik Heber <heber@ins.uni-bonn.de> 2614 Date: Wed Jan 18 21:15:48 2012 +0100 2615 2616 FIX: Made practically all Shape... member functions const. 2617 2618 - Shape: isInside(), isOnSurface(), getNormal(), getLineIntersections() 2619 - ShapeOps: translateIn(), translateOut(), translateOutNormal(), isInside(). 2620 2621 commit b92e4abd2c9d2269cf58be33cf7cd809f3e304bd 2622 Author: Frederik Heber <heber@ins.uni-bonn.de> 2623 Date: Wed Jan 18 01:21:51 2012 +0100 2624 2625 Shape identify themselves via an enumerated Type. 2626 2627 - this is required lateron for preparing Mesh class out of a given Shape. 2628 2629 commit 6a7fcbb3e0bb0faf7b7f53598e63aac469a4434d 2630 Author: Frederik Heber <heber@ins.uni-bonn.de> 2631 Date: Thu Mar 15 14:16:21 2012 +0100 2632 2633 FIX: Rewrote BoundaryTriangleSet::GetClosestPointInsideTriangle(). 2634 2635 - was broken before, see failing unit test, as it returned points not inside 2636 the triangle (however on the plane). Now, we rely on getClosestPoint of 2637 Space and derived classes. 2638 - TESTFIX: Removed Tesselation_BoundaryTriangleUnitTest from XFAIL. 2639 2640 commit c27ce78e851407f0f868250263487f54ca132cde 2641 Author: Frederik Heber <heber@ins.uni-bonn.de> 2642 Date: Thu Mar 15 14:10:31 2012 +0100 2643 2644 BUG: Added another specific case to Tesselation_BoundaryTriangleUnitTest. 2645 2646 - test case is again from larger filling example. 2647 - Note that this fails with current implementation of ::GetClosestPointInsideTriangle(). 2648 - TESTFIX: Marked test as XFAIL. 2649 2650 commit 6dc3fe8a7a2543b61c47087c39d807556f435119 2651 Author: Frederik Heber <heber@ins.uni-bonn.de> 2652 Date: Wed Mar 14 21:36:47 2012 +0100 2653 2654 Enhanced Tesselation_BoundaryTriangleUnitTest by check on ::GetClosestPointInsideTriangle(). 2655 2656 - checking on rotated triangle as well. 2657 2658 commit 70a0bab4c416abe9213d25fb8105b8fec94a70e9 2659 Author: Frederik Heber <heber@ins.uni-bonn.de> 2660 Date: Thu Mar 15 14:50:00 2012 +0100 2661 2662 FIX: LINALG_MYEPSILON is too high for certain tesselation operations such as in triangleinsectionlist. 2663 2664 - LINALG_MYEPSILON ist now numeric_limits<double>*1.e+4. 2665 - TESTFIX: This fixes failing test in Tesselation_BoundaryTriangleUnitTest. 2666 2667 commit 03a713a76a3c824e6837e1d3899ef50841b38fbe 2668 Author: Frederik Heber <heber@ins.uni-bonn.de> 2669 Date: Thu Mar 15 14:49:06 2012 +0100 2670 2671 BUG: Added failing test case to Tesselation_BoundaryTriangleUnitTest. 2672 2673 - test case is from larger filling example. 2674 2675 commit 471dece7cc1b45cf20a25bfe33c2a44ddf8b481f 2676 Author: Frederik Heber <heber@ins.uni-bonn.de> 2677 Date: Wed Mar 14 21:22:42 2012 +0100 2678 2679 Added BoundaryTriangleSet::IsInsideTriangle(). 2680 2681 - this is preparatory for finding a bug in GetClosestPointInsideTriangle(). 2682 - refactored in-test triangle creation into distinct function. 2683 - added extensive unit test on this function. 2684 2685 commit 368207d37f01a6b6632259661bf2b1af61b2c0e5 2686 Author: Frederik Heber <heber@ins.uni-bonn.de> 2687 Date: Wed Mar 14 18:53:59 2012 +0100 2688 2689 FIX: Incorporated special case affecting TriangleIntersectionList::IsInside(). 2690 2691 - If the closest points happens to be a TesselPoint of the boundary, all of its 2692 triangle's SKPs with the intersection-point vector have to be checked. As the 2693 point is only inside, if all of them are negative. 2694 - TriangleIntersectionList DistannceList is now a multimap, to allow for 2695 multiple triangles at the same distance. 2696 - Now TriangleIntersectionList::GetIteratortoSmallestDistance() goes through 2697 all entries at the same smallest distance and returns the first whose SKP is 2698 positive, otherwise the first. 2699 - TESTFIX: This fixes failing Tesselation_InsideOutsideUnitTest, hence removed 2700 it from XFAIL_TESTs. 2701 2702 commit 53bc04e0e0eb7869d30d001ac78ff41913c780fc 2703 Author: Frederik Heber <heber@ins.uni-bonn.de> 2704 Date: Wed Mar 14 15:16:40 2012 +0100 2705 2706 BUG: Added spherical and non-convex test cases to Tesselation_InsideOutsideUnitTest. 2707 2708 - we now test not only on cube, but also on sphere and a non-convex shape. 2709 - creation is generalized to allow for different shapes, also we use extension 2710 of VectorSet to allow for transformations. 2711 - TESTFIX: Added Tesselation_InOutsideUnitTestto XFAILs. Merge with enhancement 2712 of the test. 2713 2714 commit f6ad4dcceb2ec138a73ad4dea9d2a998a5e21a06 2715 Author: Frederik Heber <heber@ins.uni-bonn.de> 2716 Date: Wed Mar 14 17:14:03 2012 +0100 2717 2718 Added copy cstor from Set to VectorSet and VectorSet::transform(). 2719 2720 - VectorSet::transform() required that Vector.hpp did not contain using 2721 namespace anymore. 2722 - Copy cstor allows to create from e.g. a std::vector<Vector> a VectorSet and 2723 then use the functions contained. 2724 - added unit tests on both. 2725 2726 commit 418b5e0fc8fe4887a7a0b6cf5a74cd0a7c5e80d7 2727 Author: Frederik Heber <heber@ins.uni-bonn.de> 2728 Date: Wed Mar 14 17:18:30 2012 +0100 2729 2730 Added verbosity to some tesselation functions. 2731 2732 - added exception catch to Tesselation::FindStartingTriangle(). 2733 - also added verbosity to TriangleIntersectionList::IsInside(). 2734 2735 commit cc21cdf3ae7333553452e11b90d3c2b214c166ea 2736 Author: Frederik Heber <heber@ins.uni-bonn.de> 2737 Date: Mon Jan 30 12:09:06 2012 +0100 2738 2739 Added Tesselation::operator() that performs a tesselation on a given IPointCloud. 2740 2741 - also changed unit tests TesselationUnitTest and 2742 Tesselation_InsideOutSideUnitTest to use the new function in setUp(). 2743 2744 commit bdf6c8a7439f52e0c190c2ba42725d8be969436a 2745 Author: Frederik Heber <heber@ins.uni-bonn.de> 2746 Date: Mon Jan 30 12:08:46 2012 +0100 2747 2748 Added getter for surface area to class Tesselation. 2749 2750 commit ee0032c6a09dfcf7548908b02426be6ecf812b72 2751 Author: Frederik Heber <heber@ins.uni-bonn.de> 2752 Date: Mon Jan 30 10:33:06 2012 +0100 2753 2754 Extracted VolumeOfConvexEnvelope() from boundary and placed into class Tesselation. 2755 2756 - parameter config replaced by boolean IsAngstroem. 2757 2758 commit 64b197aba26bbb0356392272af6cee97e1086726 2759 Author: Frederik Heber <heber@ins.uni-bonn.de> 2760 Date: Mon Jan 30 10:28:21 2012 +0100 2761 2762 Added getArea() function to BoundaryTriangleSet. 2763 2764 - this is taken from boundary.cpp's VolumeOfConvexEnvelope(). 2765 2766 commit 12c4cb0ce0eba7e7215be478cf3ddd00eae6f263 2767 Author: Frederik Heber <heber@ins.uni-bonn.de> 2768 Date: Thu Mar 22 18:37:28 2012 +0100 2769 2770 FIX: MoleculeOrderDescriptor was not working correctly. 2771 2772 - added MoleculeOrderTest and MoleculeNameTest to MoleculeDescriptorUnitTest. 2773 2774 commit 4824045e8862d592732cdd29e95d5a0630c1e4b9 2775 Author: Frederik Heber <heber@ins.uni-bonn.de> 2776 Date: Thu Mar 22 18:37:03 2012 +0100 2777 2778 FIX: forward declaration of World is unnecessary in AtomDescriptor. 2779 2780 commit 05a8856950a70f7c6632778b990c57698560ee72 2781 Author: Frederik Heber <heber@ins.uni-bonn.de> 2782 Date: Wed Mar 21 10:31:25 2012 +0100 2783 2784 FIX: BondedParticle::addBond returns * const not const *. 2785 2786 - return a non-const ref such that we may modify it but prevent the use from 2787 deleting the instance. 2788 2789 commit 46c832a58fdb69c0a30cc872cc301d1fb049c935 2790 Author: Frederik Heber <heber@ins.uni-bonn.de> 2791 Date: Wed Mar 21 10:28:51 2012 +0100 2792 2793 FIX: PairCorrelation calculated max_distance in Box wrongly. 2794 2795 - mistook Minv for M in AnalysisPairCorrelationAction::performCall(). 2796 2797 commit 4d2b33da0f46516edd4b645ae0897eeb664c36fe 2798 Author: Frederik Heber <heber@ins.uni-bonn.de> 2799 Date: Mon Mar 19 17:42:39 2012 +0100 2800 2801 FIX: molecule does not need a periodentafel. 2802 2803 - removed periodentafel param from cstor. 2804 - removed member variable elemente 2805 - removed AddXyzFile which was sole user of elemente. 2806 - removed depending functions in MoleculeListClass which were all remnants from 2807 old menu interface. 2808 2809 commit 955b91eef584d31f8d9958b67d1ea39b84eb1fb7 2810 Author: Frederik Heber <heber@ins.uni-bonn.de> 2811 Date: Wed Mar 14 19:08:24 2012 +0100 2812 2813 FIX: Removed using namespace std in Vector.hpp. 2814 2815 - this caused some follow-up problems in other LinearAlgebra modules, 2816 mostly stuff from iostream not having std:: prefix then. 2817 - this also caused more of them in MoleCuilder modules, mostly due to string, 2818 stringstream, and numeric_limits with std:: prefix. 2819 2820 commit 912c40f894bf2d9d9a56e65c27810c7464564255 2821 Author: Frederik Heber <heber@ins.uni-bonn.de> 2822 Date: Thu Mar 15 18:00:53 2012 +0100 2823 2824 FIX: AddEmptyBoundaryAction just returns Action::failure if there are no atoms. 2825 2826 commit b49de6734c55dcbdb4d72bbde0e06445e8b5b0cc 2827 Author: Frederik Heber <heber@ins.uni-bonn.de> 2828 Date: Tue Mar 13 18:33:20 2012 +0100 2829 2830 FIX: DepthFirstSearchAction still expected parameter for maximum neighbor search distance. 2831 2832 commit ea0c8b2d99a7cd34a14e10739d5e97ad769403ed 2833 Author: Frederik Heber <heber@ins.uni-bonn.de> 2834 Date: Mon Feb 6 17:15:27 2012 +0100 2835 2836 FIX: ParticleInfo did use ptr instead of const ref in copy cstor. 2837 2838 - is only used for atom's copy cstor. 2839 2840 commit c742fed20df187f0ba5075443daf8db02480de2c 2841 Author: Frederik Heber <heber@ins.uni-bonn.de> 2842 Date: Mon Feb 6 17:12:03 2012 +0100 2843 2844 FIX: atom's copy cstor does not use Observer mechanism on the newly created. 2845 2846 - we used setType() and setFixedIon() instead of AtomInfo copy cstor. 2847 2848 commit fb4086c66a92259dff57dce2194b352aef6d0b4f 2849 Author: Frederik Heber <heber@ins.uni-bonn.de> 2850 Date: Tue Feb 21 20:01:42 2012 +0100 2851 2852 Set version to 1.2.2 2853 2854 - Molecuilder library is now 7:0:1. 2855 2856 - Codename "Hadrian's Wall" (Erection began in 122 AD). 2857 2858 commit a292f69b449c6c5bb67ebe28b692aa692bf02458 2859 Author: Frederik Heber <heber@ins.uni-bonn.de> 2860 Date: Tue Feb 21 20:19:30 2012 +0100 2861 2862 DISTCHECKFIX: Forgot to add IdPool_policy.hpp to Makefile.am. 2863 2864 commit e674c96fcf5679a4296d28d3c68f14356581b782 2865 Author: Frederik Heber <heber@ins.uni-bonn.de> 2866 Date: Tue Feb 21 11:23:05 2012 +0100 2867 2868 FIX: Copy&paste error in tests/CodeChecks memdebug for variable ok. 2869 2870 - we had all the files from MoleCuilder in here, which are not needed. 2871 2872 commit a965b256ab0caa17547ae518bcde87e673b9c103 2873 Author: Frederik Heber <heber@ins.uni-bonn.de> 2874 Date: Tue Feb 21 11:21:29 2012 +0100 2875 2876 Added check on present copyright disclaimer to LinearAlgebra as well. 2877 2878 - fixed missing disclaimers in BoxVector.cpp, LineSegment.cpp, 2879 LineSegmentSet.cpp, and MatrixContent.cpp. 2880 2881 commit 6d608dd5c311453412d113310ff79086151fd29b 2882 Author: Frederik Heber <heber@ins.uni-bonn.de> 2883 Date: Tue Feb 21 11:11:49 2012 +0100 2884 2885 COPYRIGHT: Updated all LinearAlgebra files to have copyright till 2012. 2886 2887 commit 7e3065a1f91331217ec68bfc0a269a60c938a261 2888 Author: Frederik Heber <heber@ins.uni-bonn.de> 2889 Date: Mon Jan 30 09:15:07 2012 +0100 2890 2891 FIX: Updated copyright in mainpage documentation of LinearAlgebra. 2892 2893 commit 2a0271161126f3b47c3cd19c934d5f9e68593ecf 2894 Author: Frederik Heber <heber@ins.uni-bonn.de> 2895 Date: Wed Jan 18 19:13:52 2012 +0100 2896 2897 New function Box::isValid() to be discerned from ::isInside(). 2898 2899 - isValid checks with and isInside without boundary conditions. 2900 - added Box::isValid() check to LinkedCell_Model::getIndexToVector(). 2901 - TESTFIX: regression test Atoms/Add needed Ignore BCs. 2902 2903 commit c96423eec2163f37cc351c88bfd115e0a0446366 2904 Author: Frederik Heber <heber@ins.uni-bonn.de> 2905 Date: Mon Jan 30 09:21:23 2012 +0100 2906 2907 BUGFIX: LinkedCell_Model should use ceil, not floor for calculating array size. 2908 2909 - we stumbled over it because floor(20./2.) = 9 where it should come out as 10. 2910 - along the way: Converted some ASSERTs in LinkedCell_ModelUnitTest to 2911 ASSERT_EQUALs. 2912 2913 commit b49c5dc478bfe5d7475926f8bad84675ae3cf64b 2914 Author: Frederik Heber <heber@ins.uni-bonn.de> 2915 Date: Fri Jan 13 13:40:06 2012 +0100 2916 2917 Regression test Analysis/PairCorrelation sets BC explicitly to Wrap. 2918 2919 - also added check whether the bins have the right number of values. 2920 - Note: we checked that old PairCorrelation test was based on periodic BCs as 2921 well: H8 - O73 are 9.963629 apart, under Ignore BCs correct would be 2922 10.07144. This is due to a wrap around on the z axis, 5.292 to 15.346. 2923 2924 commit c1a9d605954042d9c86d2369f412f1ba332fb3f8 2925 Author: Frederik Heber <heber@ins.uni-bonn.de> 2926 Date: Fri Jan 13 13:39:04 2012 +0100 2927 2928 Rewrote PairCorrelation() to make use of new LinkedCell construct. 2929 2930 - removed PeriodicPairCorrelation() as this case is now contained. 2931 - TESTFIX: Modified regression test Analysis/PairCorrelation-RangeTest because 2932 with new LinkedCell the given range can now actually be heeded. 2933 2934 commit 8fc1a63df8815c14148badf93b4c8d6674909443 2935 Author: Frederik Heber <heber@ins.uni-bonn.de> 2936 Date: Mon Feb 6 18:49:07 2012 +0100 2937 2938 FIX: getDipole() was broken under periodic boundary conditions. 2939 2940 - getDipole() now uses Box::periodicDistanceVector() to get the distance vector 2941 corrected for periodic boundary conditions. 2942 2943 commit a19b4f9e6ce8ff976b11d2cdf26e72073492ef5c 2944 Author: Frederik Heber <heber@ins.uni-bonn.de> 2945 Date: Mon Jan 9 19:14:30 2012 +0100 2946 2947 Removed parameter periodic from DipoleAngularCorrelationAction. 2948 2949 - is obsolete as handled directly through Box' boundary conditions. 2950 2951 commit a8ae6d754f74e46c5174e011c8f6af0cfe94f719 2952 Author: Frederik Heber <heber@ins.uni-bonn.de> 2953 Date: Mon Jan 9 18:49:21 2012 +0100 2954 2955 TESTFIX: Separated regression test Analysis/DipoleAngularCorrelation. 2956 2957 - now parts explicitly tests whether periodic boundaries are working correctly 2958 while the other has molecules entirely within its domain and boundary 2959 conditions are of no importance. 2960 2961 commit 153985073c9f7b358d1a5707d4a4a5d1254d01e1 2962 Author: Frederik Heber <heber@ins.uni-bonn.de> 2963 Date: Wed Jan 4 10:34:58 2012 +0100 2964 2965 Rewrote CountHydrogenBridgeBonds() to use new LinkedCell construct. 2966 2967 - enhanced verbosity of CheckHydrogenBridgeBondAngle() and changed parameters 2968 to be refs not pointers. 2969 - CountHydrogenBridgeBonds() uses LinkedCell to not go through O(N^2) molecules 2970 but through all molecules and then through all molecules in the neighborhood 2971 that have oxygen atoms close enough. 2972 2973 commit 826e8c4cef286b7e87fd674f1ec0a8776fa20f0f 2974 Author: Frederik Heber <heber@ins.uni-bonn.de> 2975 Date: Mon Feb 6 18:46:56 2012 +0100 2976 2977 Introduced new LinkedCell into BondGraph. 2978 2979 - new convenience functions BondGraph::getDomain(), ::getLinkedCell(), 2980 ::getTime() to have World dependency not in header file (circular include). 2981 - new function BondGraph::getMaxPossibleBondDistance() where one element is 2982 given. 2983 - dropped BondGraph::CreateAdjacency(LC_deprecated) as functionality is 2984 better placed directly into templated version directly. 2985 - rewrote templated BondGraph::CreateAdjacency that now makes use of 2986 LinkedCell_View::getAllNeighbours(). 2987 - FIX: BondGraph::CreateAdjacency() created bonds for atom's fathers, not for 2988 atoms. 2989 - TESTFIX: New LinkedCell construct in BondGraph::CreateAdjacency changes order 2990 of ids in adjacency file: 2991 - ids are now in order (unlike to before), hence we simply use the new file in 2992 the regression test. 2993 - this is actually a fault of the test, not of the code as order of ids is not 2994 guaranteed in the file anyway. 2995 - TESTFIX: Removed XFAILs from regression test Graph/SubgraphDissection- 2996 BoundaryCondition. 2997 - TESTFIX: CountBondsUnitTest use two molecules that are on top of each other: 2998 This causes mess with changed LinkedCell BondGraph recognition, and we even 2999 actually need just one molecule for the testing. 3000 3001 commit cbcda6ea79e2f05666c81d9534d4cd710a3125e8 3002 Author: Frederik Heber <heber@ins.uni-bonn.de> 3003 Date: Mon Feb 6 18:51:30 2012 +0100 3004 3005 BUGFIX: LinkedCell_View::getPointsInsideSphere() did not adhere to boundary conditions. 3006 3007 - new function LinkedCell_Model::getDomain() such that view may use the same 3008 domain and use it when checking distances. 3009 3010 commit 5d41b3feb054c87926fecd711b44959b8a632ccd 3011 Author: Frederik Heber <heber@ins.uni-bonn.de> 3012 Date: Mon Feb 6 18:44:02 2012 +0100 3013 3014 FIX: LinkedCell_Model::getStep() uses Box::WrapPeriodically() on given position. 3015 3016 - this is to "ensure" -- given correct BCs -- that index is inside domain. 3017 - we still assert the index lateron (in case of Ignore BCs). 3018 3019 commit ce81e7643f69b7e32a3ea7b3aea0503833075ba1 3020 Author: Frederik Heber <heber@ins.uni-bonn.de> 3021 Date: Thu Jan 5 19:30:28 2012 +0100 3022 3023 LinkedCell_Controller now signs on to Channel WorldTime::TimeChanged. 3024 3025 - we need to know when WorldTime changes because then all atomic positions 3026 change. we might use some more elaborate method here but for the moment we 3027 just use the method which is also employed in case of Box::MatrixChanged. 3028 - renamed LinkedCell_Controller::updateModelsForNewBoxMatrix() -> 3029 ::updateModels(). 3030 3031 commit 5e2864ecffe7aea73c3db2304360ea66fcf192a5 3032 Author: Frederik Heber <heber@ins.uni-bonn.de> 3033 Date: Thu Jan 5 19:27:59 2012 +0100 3034 3035 FIX: LinkedCell_Controller now signs on to Channel Box::MatrixChanged. 3036 3037 - before we just had this in the test but not in _Controller's cstor. 3038 3039 commit 429069f15983a452a937921c8d7a1db8e0fda0fc 3040 Author: Frederik Heber <heber@ins.uni-bonn.de> 3041 Date: Fri Jan 6 10:43:05 2012 +0100 3042 3043 FIX: Forgot that LinkedCell_Controller::updateModels() should also erase Models not viewed currently. 3044 3045 - these models are erased after new ones are created to enforce different 3046 memory addresses upon which unit test check is based. 3047 3048 commit 040a5c4933743745a8fee76949b4470d6e94a33a 3049 Author: Frederik Heber <heber@ins.uni-bonn.de> 3050 Date: Thu Jan 5 19:26:00 2012 +0100 3051 3052 WorldTime is now Observable. 3053 3054 - this is required for the LinkedCell_Controller. It has to know when its 3055 models have to be re-initialized because all atoms changed positions. 3056 - WorldTime::setTime() is no more static and his caused changes in all classes 3057 that are friend and may use this private function. 3058 3059 commit 38c5d1ddf8e15d850c38f402b8751d3f9e227692 3060 Author: Frederik Heber <heber@ins.uni-bonn.de> 3061 Date: Thu Jan 5 17:51:58 2012 +0100 3062 3063 Documentation update on how to use the new linked cell construct. 3064 3065 commit 712886d5dd98ceec6ac7c744cfb1e679619b80cc 3066 Author: Frederik Heber <heber@ins.uni-bonn.de> 3067 Date: Fri Jan 13 13:27:46 2012 +0100 3068 3069 Renamed Box::WrapPeriodically -> ::enforceBoundaryConditions. 3070 3071 commit 7b9fe02f188ea36f9ddfa24ea27ca27e3b422059 3072 Author: Frederik Heber <heber@ins.uni-bonn.de> 3073 Date: Mon Feb 6 18:48:18 2012 +0100 3074 3075 New function Box::periodicDistanceVector(), using VectorSet::minDistance(). 3076 3077 commit c52e08e21874bd6974839eb406e14ffef59a6a4f 3078 Author: Frederik Heber <heber@ins.uni-bonn.de> 3079 Date: Tue Jan 3 12:22:24 2012 +0100 3080 3081 Added new action SetBoundaryConditionsAction. 3082 3083 - Added new getConditionNames and setConditions(string) to Box to ensure that 3084 Observer mechanism is called when conditions are changed. 3085 - added two regression tests: 3086 - Domain/SetBoundaryConditions tests the action itself. 3087 - Graph/SubgraphDissection-BoundaryConditions tests whether the boundary 3088 conditions are used in the subgraph dissection. 3089 Set to XFAIL for now as BondGraph does not yet use BCs. 3090 3091 commit d66cb7b6eecf9fdb226257ff28ed46a6eeec9270 3092 Author: Frederik Heber <heber@ins.uni-bonn.de> 3093 Date: Mon Jan 2 20:04:42 2012 +0100 3094 3095 Replaced Conditions_t by BoundaryConditions::BCContainer in class Box. 3096 3097 commit dd067a91bd5ce81d3092ebda02eb4e1f20978a8f 3098 Author: Frederik Heber <heber@ins.uni-bonn.de> 3099 Date: Mon Jan 2 19:49:32 2012 +0100 3100 3101 Add new namespace BoundaryConditions with class BCContainer. 3102 3103 - BCContainer is a convenience wrapper for the enumeration of the boundary 3104 conditions that allows easy setting/getting via strings. 3105 3106 commit e230757d8b8f73c8889eb565c9aa5a20052cff43 3107 Author: Frederik Heber <heber@ins.uni-bonn.de> 3108 Date: Fri Jan 6 14:57:51 2012 +0100 3109 3110 Added new VectorSetUnitTest. 3111 3112 commit 537dc4be54b76cb25e5cefbf22cab5f1cd58bf6e 3113 Author: Frederik Heber <heber@ins.uni-bonn.de> 3114 Date: Fri Jan 6 15:13:20 2012 +0100 3115 3116 Added operator<(Vector&,Vector&) to allow for comparison based on their length. 3117 3118 - this is to be used in a lambda expression in VectorSet::minDistance(). 3119 3120 commit 8c6d18960b1a413406b9d76e087298e7737bb7f3 3121 Author: Frederik Heber <heber@ins.uni-bonn.de> 3122 Date: Fri Jan 6 15:32:29 2012 +0100 3123 3124 Added VectorSet::minDistance() to return minimum distance under (periodic) boundary conditions. 3125 3126 commit 44f53e999bbb8a07d6654248774d7a3bb802ecaa 3127 Author: Frederik Heber <heber@ins.uni-bonn.de> 3128 Date: Thu Jan 5 17:37:05 2012 +0100 3129 3130 Made various verbosities a lot less annoying. 3131 3132 - LinkedCell_Model does not notify about all updates on default. 3133 - PdbParser notes currently parsed time step. 3134 - WorldTime tells about new time step set. 3135 - MatrixContainer gives its details at level 3 not 0 or 1. 3136 - BondGraph does not tell about each look at its bond length table. 3137 - getDipole() does not shout out each dipole vector. 3138 3139 commit 98c4284495a104d0620d285c47bc7aa2162c3b04 3140 Author: Frederik Heber <heber@ins.uni-bonn.de> 3141 Date: Thu Jan 12 15:23:39 2012 +0100 3142 3143 FormatParserStorage has now two convenience functions ::load(). 3144 3145 - this way one doesn't have to find out the suffix anymore. 3146 3147 commit 3dfd9c9df000029ac47c31db715faaada2d853c9 3148 Author: Frederik Heber <heber@ins.uni-bonn.de> 3149 Date: Thu Jan 12 09:22:20 2012 +0100 3150 3151 BUGFIX: PdbParser stumbles over CONECT because it reads space-separated token, not substring. 3152 3153 - FormatParser< pdb >::getToken has to work on substr(0,6) only to read the 3154 type of entry field-wise. 3155 - added test to Parser/PdbParser load-various. 3156 - Small fix to ::load(), prints now only parsed atoms, not all. 3157 - This fixes ticket #160. 3158 3159 commit ea7a509ec47cbadf7eaf2c826d1b74447ab8b25d 3160 Author: Frederik Heber <heber@ins.uni-bonn.de> 3161 Date: Fri Jan 6 18:53:45 2012 +0100 3162 3163 Rewrote some of the descriptors such that they access World's AtomSet and MoleculeSet directly. 3164 3165 - this is the way they are intended. They are friends of the World and may 3166 use the sets directly without causing update()s although they return non- 3167 const references. This is because here we need not be careful as no atoms 3168 are destroyed or added. 3169 - In most cases we had implemented both predicate() and new find() and findAll() 3170 that were not necessary (default find..() would do the job better). 3171 - This concerned: AtomOfMoleculeSelectionDescriptor, MoleculeNameDescriptor, 3172 MoleculeOfAtomSelectionDescriptor, MoleculeOrderDescriptor, and 3173 MoleculePtrDescriptor. 3174 - We left the specific implementation for AtomIdDescriptor and 3175 MoleculeIdDescriptor as they directly access World's Atom- and MoleculeSet 3176 and may thus find ids significantly faster. 3177 - NOTE: so far some tests are broken and this needs to be fixed yet. 3178 3179 commit 52ed5bd5d6abfc345449328e6008a4089fc6e46d 3180 Author: Frederik Heber <heber@ins.uni-bonn.de> 3181 Date: Wed Feb 8 18:36:46 2012 +0100 3182 3183 Ids handed out by molecule now start with 1. 3184 3185 - this required some changes because of the shifted molecular indices, 3186 especially in: 3187 - BondedParticle::OutputAdjacency(): removed +1 3188 - BondedParticle::OutputBonds(): same 3189 - Fragmentation::StoreFragmentFromKeySet(): increased array size 3190 - Fragmentation::CreateMappingLabelsToConfigSequence() : same 3191 - CheckAgainstAdjacencyFile::ParseInExternalMap(): decreased index by one. 3192 This is actually broken and only working if World's and molecular indices 3193 coincide. 3194 - molecule::CreateFatherLookupTable(): increased array size 3195 - TESTFIX: CheckAgainstAdjacencyFileUnitTest had its internal file strings' 3196 indices decreased by one. 3197 3198 commit cdaae6b93f20964a102f00677c3a056b910a1054 3199 Author: Frederik Heber <heber@ins.uni-bonn.de> 3200 Date: Thu Feb 16 14:38:53 2012 +0100 3201 3202 FIX: BondedParticle::OutputAdjacency() and ::OutputBonds() give uncorrected ids. 3203 3204 - tremolo's Id starts at 1, internal (molecular) ones however start at 0. This 3205 causes undesired behavior when parsing .dbond files. 3206 - TESTFIX: changed ids in .dbond and .adj files of regression tests 3207 Molecules/BondFile, Molecules/SaveAdjacency, and Molecules/SaveBonds. 3208 3209 commit 560bbe654dd2553da2da442b262caa8c19fde130 3210 Author: Frederik Heber <heber@ins.uni-bonn.de> 3211 Date: Fri Jan 6 17:49:11 2012 +0100 3212 3213 AtomicInfo now also (re)stores ParticleInfo::Nr, molecule has own IdPool. 3214 3215 - molecule now also has an internal IdPool to be able to hand out unique ids, 3216 according to uniqueId policy. 3217 - new functions: molecule::changeAtomNr(), molecule::setAtomName() 3218 - molecule::erase() and ::insert() release and set the id (and the name). 3219 - molecule::setAtomName() uses getNr() with id increased by one. 3220 - AtomicInfo stores and sets ParticleInfo::Nr. 3221 - atom::changeNr() is similar to changeId() only for the molecule. 3222 - molecule::AddAtom() does not set the name anymore, is done by ::insert(). 3223 - simplified molecule::doCountAtoms() a lot, no more naming of atoms. 3224 - SPEEDUP: This speeds up the GUI already a lot. 3225 - TESTFIX: changed regression test Tesselation/BigNonConvex due to different 3226 ordering of node ids (due to above), surface is still the same (checked). 3227 3228 commit ac5c3653eb403b7c1ec8325a5e8c423473bf53fb 3229 Author: Frederik Heber <heber@ins.uni-bonn.de> 3230 Date: Fri Jan 6 17:48:47 2012 +0100 3231 3232 FIX: Forgot to remove now unused idpool functions, were replaced by IdPool. 3233 3234 commit 7d46e36d95b842d1a320f748f59b074a84e603c0 3235 Author: Frederik Heber <heber@ins.uni-bonn.de> 3236 Date: Wed Feb 8 11:51:11 2012 +0100 3237 3238 MEMFIX: RandomNumberEngine_Encapsulation<T>::clone() did leak params allocated in getParameterSet(). 3239 3240 commit b97a60ab241f2ecfff0d2258ecdd13f84f8a4f98 3241 Author: Frederik Heber <heber@ins.uni-bonn.de> 3242 Date: Fri Jan 6 15:37:36 2012 +0100 3243 3244 Modified IdPool implementation to give either unique or continuous ids. 3245 3246 - added two class uniqueId and continuousId that get the id type via a template 3247 and contain a getNextId_impl(). Also, contains typedef is is_IdPool_trait: 3248 - uniqueId always return a greater id. 3249 - continuousId implements the old way. 3250 - IdPool is now based on two templates, the second is the template that is 3251 inherited and its contained function used in getNextId(). 3252 - for atoms the id is the sole identifier for which we can guarantee 3253 uniqueness. For molecules uniqueness does not make sense. 3254 - updated World's documentation on its id pools. 3255 3256 - TESTFIX: Filling/FillVoidWithMolecule - both changed because the order of the 3257 ids has changed. In one case the bonding id flipped, in the other one atom 3258 changed places in .xyz file. (Actually, it's surprising that this is the 3259 only glitch occuring due to the changing of the id policy). 3260 3261 commit 3867a77b0b871f3d876032f6535a5d1768b84cd3 3262 Author: Frederik Heber <heber@ins.uni-bonn.de> 3263 Date: Fri Jan 6 16:38:26 2012 +0100 3264 3265 AtomicInfo now stores Father by id not ref. 3266 3267 - this migh have caused a crash before with Remove- and UndoActins by: 3268 - additionalAtomData pointing nowhere because the id might have changed. 3269 - father is stored as ref and not as id. If it's its own father, the ref 3270 is wrong. 3271 - molecule is given as ref and not as id. 3272 - atom::setMolecule() - NULL ref is allowed. 3273 - AtomicInfo: stores ids and not refs, first calls changeId then assigns 3274 father and mol (who both need updated id). 3275 3276 commit 9f8b0194b9ab5a952b72799ceaf29042e6fd1c9c 3277 Author: Frederik Heber <heber@ins.uni-bonn.de> 3278 Date: Tue Feb 7 13:25:24 2012 +0100 3279 3280 FIX: TremoloParser::processNeighbors() always ran through all neighbors. 3281 3282 - processNeighbors() now receives a vector of atoms whose neighbors to process. 3283 3284 commit 812155f3a4f2a57f31b9d8b82748c71eae962ddd 3285 Author: Frederik Heber <heber@ins.uni-bonn.de> 3286 Date: Mon Feb 6 19:35:40 2012 +0100 3287 3288 TremoloParser::save() redistributes ids in a continuous manner. 3289 3290 - i.e. we reset the local to global id associations, set them beforehand and 3291 then save the set of atoms. 3292 3293 commit 8bf9c67e4d413e6c7a6dda4dbcf57aab0311564a 3294 Author: Frederik Heber <heber@ins.uni-bonn.de> 3295 Date: Fri Jan 6 14:11:42 2012 +0100 3296 3297 All additionalAtomData maps now have const atomId_t as key. 3298 3299 commit 2ad1ec843e429f317a78f5fdd2e2b6a4926d4afb 3300 Author: Frederik Heber <heber@ins.uni-bonn.de> 3301 Date: Thu Jan 5 17:10:53 2012 +0100 3302 3303 Rewrite of how GLWorldScene and subsidiaries get notified of changed bonds and atoms. 3304 3305 - we have made the connections from the real atoms and bonds to the nodes 3306 within GLWorldScene a lot easier. Also this fixes a crash when Subgraph- 3307 Dissection is called. 3308 - renamed BondedParticle::BondsChanged -> ::BondsAdded. 3309 - GLMoleculeObject_bond now observes its associated bond. 3310 - added documentation on how the mechanism works in qt-gui.dox. 3311 3312 commit 3f7587934b86878ebafb86295528325d0314db80 3313 Author: Frederik Heber <heber@ins.uni-bonn.de> 3314 Date: Thu Jan 5 12:55:09 2012 +0100 3315 3316 Made bond also an Observable. 3317 3318 - for the moment this is not used. 3319 3320 commit 74ec1fa772ca1ade3fa853bdf3476c4f6dc24010 3321 Author: Frederik Heber <heber@ins.uni-bonn.de> 3322 Date: Thu Jan 5 12:54:22 2012 +0100 3323 3324 BUGFIX: Added new channel BondDegreeChanged to AtomObservable, added some BondsChanged notifications. 3325 3326 - this should fix crashing of the GUI when SubgraphDissection is called. 3327 3328 commit bb645ca228f3668686bf3d842e57a8a6d2b85e4d 3329 Author: Frederik Heber <heber@ins.uni-bonn.de> 3330 Date: Fri Feb 17 10:55:58 2012 +0100 3331 3332 TESTFIX: Removed checking of current year in copyright disclaimer. 3333 3334 - this will only cause trouble in the future, although it helps against 3335 laziness. 3336 3337 commit d08ab389fd2efbb426bd7cda87ea43a90ce9d3f6 3338 Author: Frederik Heber <heber@ins.uni-bonn.de> 3339 Date: Wed Dec 28 18:57:12 2011 +0100 3340 3341 Set version to 1.2.1 3342 3343 - Molecuilder library is now 7:0:0. 3344 - LinearAlgebra library is now 3:1:0 and its API is 1.0.4. 3345 3346 - Codename "Injection" (it is one-to-one and probably onto :). 3347 3348 commit c0e28c07a3ae4cbff46cf20696b4026104ce4e92 3349 Author: Frederik Heber <heber@ins.uni-bonn.de> 3350 Date: Wed Jan 4 19:34:22 2012 +0100 3351 3352 FIX: One could not load another pdb file due to local ids messing up. 3353 3354 - We enhanced FormatParser_common now contains two maps to go from local to 3355 global and back again. Thi is necessary, as ids in a file only make sense 3356 within that file. We added the following functions: resetIdAssociations(), 3357 associateLocaltoGlobalId(), getGlobalId(), getLocalId(). 3358 - adapted TremoloParser and PdbParser because they are the only formats that 3359 also contain bond information and where the associations are needed to 3360 translate the local connections into global ones. 3361 - removed SerialSet entirely from PdbParser, is replaced by new construct, 3362 in similar manner AtomIdMap for TremoloParser. 3363 - TEST: Added regression tests for all Parser to check for loading twice the 3364 same file. 3365 3366 commit fbbcde7f3c99a729f52b053aaf1cbb896e703adb 3367 Author: Frederik Heber <heber@ins.uni-bonn.de> 3368 Date: Tue Jan 3 18:21:33 2012 +0100 3369 3370 FIX: TestRunner is now compiled based on AM_CONDITIONAL set by HAVE_ECUT. 3371 3372 commit 9fd196a18e0a47b5eb4d5d4d98793332ac09cad9 3373 Author: Frederik Heber <heber@ins.uni-bonn.de> 3374 Date: Mon Jan 2 17:50:03 2012 +0100 3375 3376 Added bash_completion file. 3377 3378 - use as . utils/Bash/bash_completion, installed in bin folder. 3379 - moved all python files in utils into subfolder Python therein. 3380 - We scan molecuilder's help output for the present actions and return in 3381 COMPREPLY, fully capable of giving option to last action and all available 3382 actions in any other case. 3383 - we expand files if no "--" is given. 3384 - TESTFIX: Python/BoxMaker needs to call boxmaker.py from utils/Python. 3385 3386 commit b40080ff7038dadce974501ba0921c902ea739e0 3387 Author: Frederik Heber <heber@ins.uni-bonn.de> 3388 Date: Thu Jan 5 12:41:14 2012 +0100 3389 3390 FIX: Forgot to add m4/ax_molecuilder.m4. 3391 3392 commit e65b264429729ac3e8a39b1cff4e0c3da7a1c92a 3393 Author: Frederik Heber <heber@ins.uni-bonn.de> 3394 Date: Wed Jan 4 12:26:47 2012 +0100 3395 3396 FIX: LinkedCell_Model::getNeighborhoodBounds() had wrong relative upper corner on Ignore BC. 3397 3398 commit c9c3c991eb4ad65ee03c9f8497e34b705c0a3478 3399 Author: Frederik Heber <heber@ins.uni-bonn.de> 3400 Date: Wed Jan 4 11:35:18 2012 +0100 3401 3402 MEMFIX: Forgot to purge AtomObserver instance. 3403 3404 commit 5972c38660ce8bfe4abe05aadd3b6670d0ca781c 3405 Author: Frederik Heber <heber@ins.uni-bonn.de> 3406 Date: Wed Jan 4 11:32:35 2012 +0100 3407 3408 MEMFIX: LinkedCell_Model did not release N (Linked cell array). 3409 3410 commit b6f5bca2a8b01f1be50e7ea743e1abeb08e08178 3411 Author: Frederik Heber <heber@ins.uni-bonn.de> 3412 Date: Wed Jan 4 11:31:06 2012 +0100 3413 3414 FIX: Fixes to idpool implementation that did not initialize all its member variables. 3415 3416 commit 7111d4b38b87e5d3ee3f3bc507eb41c049e56243 3417 Author: Frederik Heber <heber@ins.uni-bonn.de> 3418 Date: Tue Jan 3 18:22:09 2012 +0100 3419 3420 FIX: LinkedCell_Model::setPartition() did not assure Dimensions is integer. 3421 3422 - we now assert that LinkedCell_Model::Dimensions is symmetric, diagonal. 3423 - FIX: its components are integer by slightly enlarging the edge length. This 3424 is required to correctly placed nodes inside cells. 3425 3426 commit c9cafae3a5f701f6ad7fcb9c37a3ae80bc41ffcf 3427 Author: Frederik Heber <heber@ins.uni-bonn.de> 3428 Date: Wed Jan 4 10:39:24 2012 +0100 3429 3430 Some warning fixes. 3431 3432 comparison signed/unsigned: 3433 - molecule::FillBondStructureFromReference() 3434 3435 commit b75386102c01f78fed1672b79dacce138116fcf9 3436 Author: Frederik Heber <heber@ins.uni-bonn.de> 3437 Date: Tue Jan 3 17:22:59 2012 +0100 3438 3439 Verbosity fixes to LinkedCell_Model and _View. 3440 3441 commit 57a77028e5559bee9b5052cdd1e9b9a70c695bd2 3442 Author: Frederik Heber <heber@ins.uni-bonn.de> 3443 Date: Wed Jan 4 14:26:47 2012 +0100 3444 3445 Corrected verbosity levels of GLMoleculeObject..., GLWorldScene, and ..View. 3446 3447 - placede messages from Observer's to observerLog. 3448 3449 commit 0aa122d5f3137de21e283fdaa583b526d33a6540 3450 Author: Frederik Heber <heber@ins.uni-bonn.de> 3451 Date: Mon Jan 2 14:57:02 2012 +0100 3452 3453 Updated all source files's copyright note to current year 2012. 3454 3455 commit e215c133f85e17388f702f7bfcad150b1acfb8d9 3456 Author: Frederik Heber <heber@ins.uni-bonn.de> 3457 Date: Wed Dec 28 18:05:04 2011 +0100 3458 3459 DISTCHECKFIX: Forgot to add LinkedCell header files to some targets. 3460 3461 - Forgot to add LinkedCell/types.hpp to target in Makefile.am. 3462 - Forgot to to add LinkedCell/unittests/defs.hpp to targets in akefile.am. 3463 3464 commit c48a51f43b8d3a851064d11f8090962cd66b3cbc 3465 Author: Frederik Heber <heber@ins.uni-bonn.de> 3466 Date: Wed Dec 28 17:50:10 2011 +0100 3467 3468 DISTCHECKFIX: Forgot to remove folder Python from tests/regression/Makefile.am. 3469 3470 commit 7c019170530b54da9d757a092296cc5d2bb6efde 3471 Author: Frederik Heber <heber@ins.uni-bonn.de> 3472 Date: Wed Dec 28 15:57:08 2011 +0100 3473 3474 We now require CodePatterns 1.2.1. 3475 3476 - this is to incorporate the Chronos clock->seconds conversion fix. 3477 - Bug report by Jan Hamaekers. 3478 3479 commit 69459d564dbe1fbe4f211888bdb22d63faa755b5 3480 Author: Frederik Heber <heber@ins.uni-bonn.de> 3481 Date: Thu Dec 22 10:33:28 2011 +0100 3482 3483 Added unit test on changing box to LinkedCell_ControllerUnitTest. 3484 3485 - Added setM() to ObserverBoxStub, needed for updateBoxTest(). 3486 3487 commit 2ced6b357227c511512210e4f9802519b5ff478c 3488 Author: Frederik Heber <heber@ins.uni-bonn.de> 3489 Date: Thu Dec 22 10:26:45 2011 +0100 3490 3491 Replaced Molecuilder library dependencies by stubs in LinkedCell_...UnitTests. 3492 3493 - Implemented stubs for World and AtomObserver. 3494 - Renamed BoxStub to ObserverBoxStub. 3495 - Enhanced stub for TesselPoint, defines its own class to get around all those 3496 virtual inheritances. 3497 - LinkedCell_ControllerUnitTest uses molecuilderLinkedCell lib but no other, 3498 everything else is stubbed. 3499 - LinkedCellUnitTest is now the same. 3500 3501 commit b1c5ddb6c2dc1792b43fa42d24a01b1fcdb3fe98 3502 Author: Frederik Heber <heber@ins.uni-bonn.de> 3503 Date: Thu Dec 22 11:58:21 2011 +0100 3504 3505 FIX: Made TesselPoint's dstor virtual. 3506 3507 - this caused undefined reference to typeinfo for TesselPoint errors when 3508 trying to create a stub for the class. 3509 3510 commit cbdcb10f6cf4dbc5be84a8c1cd660b931affa17f 3511 Author: Frederik Heber <heber@ins.uni-bonn.de> 3512 Date: Thu Dec 22 09:59:40 2011 +0100 3513 3514 Added LinkedCell_View_ModelWrapper to safely keep LinkedCell_Model out of _Views' grasp. 3515 3516 - This is the only way to keep _View away from its own pointer without 3517 declaring it "const" which prevents _Controller from re-instantiating the 3518 model after the Box has changed. 3519 - Added logging to LinkedCell_Controller::updateModelsForNewBoxMatrix(). 3520 - Switched order of delete/create in updateModelsForNewBoxMatrix(). This is 3521 necessary such that newref is not created on top of oldref and hence unit 3522 test may fail. 3523 3524 commit 4a816966425096ec9bd0a17aa70a3dbfe04c7665 3525 Author: Frederik Heber <heber@ins.uni-bonn.de> 3526 Date: Wed Dec 21 19:03:15 2011 +0100 3527 3528 LinkedCell_Controller is now an Observer. 3529 3530 - new function updateModelsForNewBoxMatrix() which updates the models in all 3531 active views. 3532 - so far we are hampered by const LinkedCell_Model& ref. 3533 3534 commit 99f4ee808622819ff9de4956da3988021e56d66a 3535 Author: Frederik Heber <heber@ins.uni-bonn.de> 3536 Date: Wed Dec 21 19:02:07 2011 +0100 3537 3538 Class Box is now also an Observable. 3539 3540 - it has two channels to notify about changes in its Matrix and boundary 3541 conditions. 3542 3543 commit 9ed706d2228d2edefef36a2b55322f6421480603 3544 Author: Frederik Heber <heber@ins.uni-bonn.de> 3545 Date: Wed Dec 21 19:00:53 2011 +0100 3546 3547 Implemented counting of active LinkedCell_View instances in static map. 3548 3549 - this will allow us to exchange the models when the domain changes without the 3550 user noticing. 3551 3552 commit c29915751600543b3ce3bc771ea4eb5b2b9ab924 3553 Author: Frederik Heber <heber@ins.uni-bonn.de> 3554 Date: Wed Dec 21 18:59:27 2011 +0100 3555 3556 LinkedCell_Model cstors are now private but LinkedCell_Controller is friend. 3557 3558 - this way only LinkedCell_Controller can construct new models. 3559 3560 commit 455043c33527649a64f47812a06348673a15ad57 3561 Author: Frederik Heber <heber@ins.uni-bonn.de> 3562 Date: Wed Dec 21 18:57:51 2011 +0100 3563 3564 Changed MapEdgelengthModel to contain const ref as value. 3565 3566 - LinkedCell_Controller::insertNewModel() gets const ref as param now. 3567 3568 commit 54f3d11a82854765641343eac08c593e5d58b8ad 3569 Author: Frederik Heber <heber@ins.uni-bonn.de> 3570 Date: Wed Dec 21 11:35:41 2011 +0100 3571 3572 Removed short-wiring of updates as they are now passed through LinkedCellArrayCache. 3573 3574 - replaced ..._internal() calls by Changes->addUpdate(..) in LinkedCell_Model. 3575 - added some verbosity to allow for following the chain of updates. 3576 - new unit test function lazyUpdatesTest() in LinkedCell_ModelTest. 3577 - TESTFIX: nodeTest() and insertPointCloudTest() needed a forced update at the 3578 right places due to the cached nature now as they access internals bypassing 3579 the automatic updates. 3580 3581 commit 8c318650ec230fdda3b798297d3d0a0d7b7c3776 3582 Author: Frederik Heber <heber@ins.uni-bonn.de> 3583 Date: Tue Dec 20 15:28:33 2011 +0100 3584 3585 Added new class LinkedCellArrayCache that performs the lazy updates on a LinkedCellArray. 3586 3587 - basically, we cache all write operations and perform them first when there 3588 is a read operation that requires an up-to-date structure. 3589 - we cannot do this via the Cacheable pattern was there we always have a return 3590 value of the update structure. It is currently unknown how to initialize a 3591 cached pointer (apart from always checking for this in the update function). 3592 3593 commit e776dc24d230fdf211894710f74ffba42667f5e0 3594 Author: Frederik Heber <heber@ins.uni-bonn.de> 3595 Date: Tue Dec 20 12:50:48 2011 +0100 3596 3597 Added internal classes Update and changeModel to LinkedCell_Model. 3598 3599 - this are not yet used. 3600 - Update contains a single update operation associated to a node. 3601 - changeModel contains a map of all due updates. 3602 3603 commit cf6530fb17aed9982c010170c14317e052722592 3604 Author: Frederik Heber <heber@ins.uni-bonn.de> 3605 Date: Tue Dec 20 11:40:23 2011 +0100 3606 3607 Implemented LinkedCell_Model::moveNode_internal(). 3608 3609 - updated unit test as well. 3610 3611 commit a5b2b6b0760713e75c784f4ffe6c347e206b2359 3612 Author: Frederik Heber <heber@ins.uni-bonn.de> 3613 Date: Tue Dec 20 11:39:44 2011 +0100 3614 3615 Simplified LinkedCell_Model::deleteNode_internal(). 3616 3617 - this is possbile due to making argument of update function always const. 3618 3619 commit db89600810e8e7e4f9a3b70c23556f264f49cdb6 3620 Author: Frederik Heber <heber@ins.uni-bonn.de> 3621 Date: Tue Dec 20 11:25:43 2011 +0100 3622 3623 Shifted functionality of adding, moving, and deleting nodes to internal functions. 3624 3625 - internal functions are so far short-wired to outside. 3626 - this is preparatory for caching changes (lazy evaluation). 3627 3628 commit bbab877acee03ce45c24d618b44ae969011e5e45 3629 Author: Frederik Heber <heber@ins.uni-bonn.de> 3630 Date: Mon Dec 19 22:57:06 2011 +0100 3631 3632 Added test for new descriptor AtomsWithinDistanceOf to AtomDescriptorUnitTest. 3633 3634 - in AtomDescriptorTest::AtomsWithinDistanceOfTest(): ids must not necessarily 3635 be in order, added functions that make comparison based on simple N^2 search 3636 and helper functions. 3637 3638 commit 7afb7733a1431bbb839abcfc5b1dd0d143dba39b 3639 Author: Frederik Heber <heber@ins.uni-bonn.de> 3640 Date: Mon Dec 19 19:34:15 2011 +0100 3641 3642 Added AtomsWithinDistanceOf descriptor. 3643 3644 - this is basically just a nice interface to LinkedCell_View which is used 3645 internally to find the atoms. 3646 3647 commit 4834f4bc1360623d2ad20e7dab653447280b63b3 3648 Author: Frederik Heber <heber@ins.uni-bonn.de> 3649 Date: Mon Dec 19 18:11:22 2011 +0100 3650 3651 World now has a LinkedCell_Controller and function getLinkedCell(). 3652 3653 - we give World's atoms as param to LinkedCell_Controller::getView(), i.e. 3654 obtained views from getView() now contains all atoms (and are not empty). 3655 3656 commit 53d894c34a1a8ff0f2e679e04918aa717133bfd4 3657 Author: Frederik Heber <heber@ins.uni-bonn.de> 3658 Date: Mon Dec 19 22:50:54 2011 +0100 3659 3660 Changed LinkedCell_Model::getNeighborhoodBounds() and LinkedCell_View::getAllNeighbors(). 3661 3662 - NeighborhoodBounds are now index and offset style, not two real bounds 3663 anymore. This way we were able to get getAllNeighbors() actually working. 3664 - getNeighborhoodBounds() was overloaded nonsense for Bounce case, it is now 3665 much simpler: we just crop the interval at the boundary. 3666 3667 commit c806430dd9192196eecf5a8e808273f583a12492 3668 Author: Frederik Heber <heber@ins.uni-bonn.de> 3669 Date: Mon Dec 19 22:49:53 2011 +0100 3670 3671 LinkedCell_Controller::getView() now needs a PointCloud set. 3672 3673 - this will allow the World to initialise new LinkedCell_Model, which at the 3674 very start first need to know about all presents atoms in the World. 3675 3676 commit 4459fcac9c9f1ef9ec32ea88af1da695c2b4e845 3677 Author: Frederik Heber <heber@ins.uni-bonn.de> 3678 Date: Mon Dec 19 22:38:50 2011 +0100 3679 3680 Refactored typedef tripleIndex into own structure. 3681 3682 - we need the struct to accomodate some helpful operators. 3683 3684 commit c8f6b692b88a0dc8e4758c132ca2f8a448ac41cc 3685 Author: Frederik Heber <heber@ins.uni-bonn.de> 3686 Date: Mon Dec 19 22:48:15 2011 +0100 3687 3688 Small fixes to LinkedCell_ViewUnitTest. 3689 3690 commit b49568059bb63eb10a31cce9ac87e75d9a32c8e6 3691 Author: Frederik Heber <heber@ins.uni-bonn.de> 3692 Date: Mon Dec 19 19:09:49 2011 +0100 3693 3694 Added new descriptor AtomOfMolecule. 3695 3696 - also added new unit test function. 3697 3698 commit d7853188762dba95151f1e69c42148748e218394 3699 Author: Frederik Heber <heber@ins.uni-bonn.de> 3700 Date: Mon Dec 19 18:02:23 2011 +0100 3701 3702 Library LinkedCell_refactored is now contained in lib LinkedCell. 3703 3704 commit 6bd7e05ae215210d42ef6cb22768847bee2ce5da 3705 Author: Frederik Heber <heber@ins.uni-bonn.de> 3706 Date: Mon Dec 19 17:46:11 2011 +0100 3707 3708 Renamed old LinkedCell class to LinkedCell_deprecated. 3709 3710 - this is preparatory for a smooth transition to the new implementation. 3711 - note that class LinkedCell and namespace LinkedCell bite each other so far. 3712 3713 commit f55ae56e4b38350f4245571086191b0a40f6e956 3714 Author: Frederik Heber <heber@ins.uni-bonn.de> 3715 Date: Mon Dec 19 17:18:25 2011 +0100 3716 3717 Implemented LinkedCell_Model::recieveNotification(). 3718 3719 - i.e. it now calls addNode(), deleteNode(), and moveNode() on the appropriate 3720 notification. 3721 3722 commit 02987071e3d38c873d62de7816c0f4d69216d14c 3723 Author: Frederik Heber <heber@ins.uni-bonn.de> 3724 Date: Mon Dec 19 17:17:02 2011 +0100 3725 3726 FIX: LinkedCell and LinkedCell_Model now store _const_ TesselPoint ref in their lists and maps. 3727 3728 - this mainly stemmed from changing LinkedCell_Model::addNode() and is required 3729 as World's lastChanged is a const ref (and we do not need to changed the 3730 object itself anyway, we are only bookkeeping!). 3731 3732 commit 402f2c95de22204c80eb8263dcae72f384eae68c 3733 Author: Frederik Heber <heber@ins.uni-bonn.de> 3734 Date: Mon Dec 19 17:00:11 2011 +0100 3735 3736 LinkedCell_Model now signOn/Off to World and AtomObserver. 3737 3738 commit 97c25501cdca20b601f0fa7b5f1e7524cf194d1e 3739 Author: Frederik Heber <heber@ins.uni-bonn.de> 3740 Date: Mon Dec 19 15:12:54 2011 +0100 3741 3742 Added unit test for AtomObserver. 3743 3744 - added position and element channels from AtomObservable to AtomObserver. 3745 - NOTE: AtomObserver does not relay general update() calls. 3746 3747 commit 5dfabdae3cbf78f772003f96b321468cd321f7eb 3748 Author: Frederik Heber <heber@ins.uni-bonn.de> 3749 Date: Wed Nov 30 17:32:43 2011 +0100 3750 3751 Added singleton class AtomObserver that acts as relay station to all atom changes. 3752 3753 - uses Relay pattern. 3754 - is called in World::createAtom() to signOn on time. 3755 - update() relays the update call on to true observer. 3756 3757 commit 2614e2a00e7cda71401ccb728478c22e406f12a3 3758 Author: Frederik Heber <heber@ins.uni-bonn.de> 3759 Date: Wed Nov 30 14:10:23 2011 +0100 3760 3761 LinkedCell_Model now inherits Observer. 3762 3763 - implemented facade for the three Observer-required functions, also adapted 3764 stub. 3765 - next we need to have the World observe each atom and give Notifications 3766 about it. Then, we add each model to this channel and implement the update. 3767 3768 commit fe82539bed03ef657b7febd017e0b3a949cda365 3769 Author: Frederik Heber <heber@ins.uni-bonn.de> 3770 Date: Wed Nov 30 11:26:35 2011 +0100 3771 3772 Added first reasonable heuristic, and added required implementation for Controller. 3773 3774 - LinkedCell_Controller::getBestModel() nows contains some more advanced 3775 heuristics. 3776 - extended unit test on all of the added parts. 3777 3778 commit 9a5649c1cc4ae0e855f0ee7842ecd59dbafeacee 3779 Author: Frederik Heber <heber@ins.uni-bonn.de> 3780 Date: Tue Nov 29 11:15:32 2011 +0100 3781 3782 LinkedCell_ControllerUnitTest only depends on stubs now. 3783 3784 - i.e. we do not link against convenience libMolecuilderLinkedCell_Refactored 3785 anymore. 3786 3787 commit fea945d620239c90af4f79b6ad78cde77e453de4 3788 Author: Frederik Heber <heber@ins.uni-bonn.de> 3789 Date: Fri Nov 18 16:07:38 2011 +0100 3790 3791 Added simple implementation for LinkedCell_Controller. 3792 3793 - getBestModel() contains the (non-working) heuristic stub. 3794 - getView() calls getBestModel() to obtain current best model or creates a new 3795 one and returns the view of this model. 3796 - added unit test that does not yet test any functionality. 3797 3798 commit 6b91e6417f39a42bdd14fb1186aea6a23e51aa9a 3799 Author: Frederik Heber <heber@ins.uni-bonn.de> 3800 Date: Tue Nov 29 10:20:04 2011 +0100 3801 3802 Added convenience library for files of new LinkedCell implementation. 3803 3804 - is used with unit tests only so far. 3805 - name is temporary to vaid class with present convenience library. 3806 3807 - Temporarily added libMolecuilderLinkedCell_refactored to ALLLIBS for 3808 TestRunner. This is changed when we swap the now two LinkedCell libraries. 3809 3810 commit c379f9430a4c84b4863188025cd84941b7267e40 3811 Author: Frederik Heber <heber@ins.uni-bonn.de> 3812 Date: Tue Nov 29 10:17:23 2011 +0100 3813 3814 Extracted defines for unit tests and placed into extra header file for re-use. 3815 3816 commit 5344e4935985c68c502a7e1e2e936a0ac622ef57 3817 Author: Frederik Heber <heber@ins.uni-bonn.de> 3818 Date: Fri Nov 18 09:11:57 2011 +0100 3819 3820 Added implementation of linked cell view part with high-level functions. 3821 3822 - LinkedCell_View has nearest neighbor functionality. 3823 3824 commit d8296152e374a74c483120eb411121989ba27a98 3825 Author: Frederik Heber <heber@ins.uni-bonn.de> 3826 Date: Fri Nov 18 09:50:26 2011 +0100 3827 3828 Added implementation of linked cell model part using LinkedCell. 3829 3830 - setPartition() sets Partition trafo and defines array bounds Dimensions. 3831 - addNode() and deleteNode() are working. 3832 - getStep() returns the number of neighbor shells needed. 3833 - getSize() returns array size for a given dimension. 3834 - getIndexToVector() returns index to LinkedCell for a given position. 3835 - checkArrayBounds() and applyBoundaryConditions() check and apply domain's 3836 boundary conditions. 3837 - getNeighborhoodBounds() returns lower and upper bounds to get through all 3838 LinkedCell's and gather neighbors. 3839 - each is unit tested. 3840 3841 commit 02ce363b06a8f5ac471e055cfd494a84e197010f 3842 Author: Frederik Heber <heber@ins.uni-bonn.de> 3843 Date: Mon Jan 2 13:57:32 2012 +0100 3844 3845 We now require CodePatterns 1.2.0. 3846 3847 - this is due to the updated Observer structure and multi_array MemDebug 3848 bugfix. 3849 3850 commit b3fb31e61f105f4d48d1543c58f2727b4742bf2d 3851 Author: Frederik Heber <heber@ins.uni-bonn.de> 3852 Date: Tue Nov 29 10:25:38 2011 +0100 3853 3854 Added MAX_LINKEDCELLNODES enum to types.hpp. 3855 3856 commit 71d81a4beedb94e61ac57a62dfd6e640ce50f1ee 3857 Author: Frederik Heber <heber@ins.uni-bonn.de> 3858 Date: Fri Nov 18 14:22:33 2011 +0100 3859 3860 FIX: Box::Box did not initialize Conditions_t with RealSpaceMatrix argument. 3861 3862 commit 95422c13513e471b244d90385e0888e332e5fbde 3863 Author: Frederik Heber <heber@ins.uni-bonn.de> 3864 Date: Fri Nov 18 09:50:05 2011 +0100 3865 3866 FIX: LinkedCell/types.hpp now uses NDIM instead of 3. 3867 3868 commit 794bc8a63dc9704a2721bae96fbed047481b255a 3869 Author: Frederik Heber <heber@ins.uni-bonn.de> 3870 Date: Thu Nov 17 13:01:09 2011 +0100 3871 3872 Added LinkedCell as commodity class around LinkedList. 3873 3874 - LinkedList is the container of all points in the cell. 3875 - LinkedCell additionally stores the index to the linked cell structure. 3876 - addPoint() and deletePoint() functions. 3877 - added unit test. 3878 3879 commit df9cbdd687c3bb66560705c8a9ed2c0930d1c1be 3880 Author: Frederik Heber <heber@ins.uni-bonn.de> 3881 Date: Thu Nov 17 12:53:43 2011 +0100 3882 3883 Added documentation on how refactored linked cell structure is supposed to work. 3884 3885 commit 6f0841afb57916ffe2e660310f1ff1062d59144a 3886 Author: Frederik Heber <heber@ins.uni-bonn.de> 3887 Date: Tue Nov 15 15:58:11 2011 +0100 3888 3889 Shifted all modules related to atoms into own subfolder src/Atom/ 3890 3891 - also created own convenience library for this. This makes unit testing on 3892 list containing TesselPoint or atom a lot easier. 3893 - shifted TesselPoint to src/Atom from src/Tesselation and adapted include's. 3894 3895 commit 91f5923f3b692613cf8dacb735a1502afa9471e8 3896 Author: Frederik Heber <heber@ins.uni-bonn.de> 3897 Date: Tue Nov 15 15:15:25 2011 +0100 3898 3899 Added own convenience library for LinkedCell construct. 3900 3901 commit aa6c750e6eb1613052133fde2c7fc67bee85b55c 3902 Author: Frederik Heber <heber@ins.uni-bonn.de> 3903 Date: Tue Nov 15 12:31:56 2011 +0100 3904 3905 Removed some unnecessary LinkedCell.hpp include's. 3906 3907 commit 53c7fc2e5e8198eaf2ef2d962e2e7c72910e48ae 3908 Author: Frederik Heber <heber@ins.uni-bonn.de> 3909 Date: Mon Nov 14 17:29:50 2011 +0100 3910 3911 Moved linkedcell.[ch]pp and related files to folder src/LinkedCell. 3912 3913 - adapted all #include's. 3914 - also sorted includes of modified files. 3915 3916 commit 3e4fb6fae7d3dcc8e46ee174d7b9a70a995ac178 3917 Author: Frederik Heber <heber@ins.uni-bonn.de> 3918 Date: Fri Dec 23 15:48:37 2011 +0100 3919 3920 Added template class IdPool used by World to manage defragmentable id pool. 3921 3922 - this is stuff from World factored into own class (was doubly present in World 3923 anyway). 3924 - added short documentation to constructs/world. 3925 3926 commit 401f9015681e7b504bce7c3914a00d118029c739 3927 Merge: f9b967b adb5cda 3928 Author: Frederik Heber <heber@ins.uni-bonn.de> 3929 Date: Wed Dec 28 16:27:15 2011 +0100 3930 3931 Merge branch 'Removing_molecule_atomSet' into Merge_molecule_atomSet_removal 3932 3933 Conflicts: 3934 src/molecule_geometry.cpp 3935 3936 - molecule::CenterInBox(): don't use BOOST_FOREACH but new transform_iterators. 3937 3938 commit adb5cda5be52f4f5d63932b345da97b6eade88fd 3939 Author: Frederik Heber <heber@ins.uni-bonn.de> 3940 Date: Fri Dec 23 16:17:07 2011 +0100 3941 3942 Removed typedef molecule::atomSet and some commented-out, deprecated sections. 3943 3944 - required changes to LinearInterpolationBetweenSteps, 3945 MinimiseConstrainedPotential, MinimiseConstrainedPotential, and 3946 VerletForceIntegration. 3947 - replaced molecule::atomset by World::AtomComposite. 3948 3949 commit afa9d887de1bca80ec730fa5fb5804363c05a126 3950 Author: Frederik Heber <heber@ins.uni-bonn.de> 3951 Date: Fri Dec 23 12:06:05 2011 +0100 3952 3953 TESTFIX: Fixed regression tests Molecules/BondFile and Tesselation/BigNonConvex again. 3954 3955 - Molecules/BondFile: replaced result file with new one as the only difference 3956 are interchanged ids (and the new ones are more sensible anyway). 3957 - Tesselation/BigNonConvex: same here for the same reason. 3958 - removed XFAILs from both. 3959 3960 commit 59fff1699458425079bb0a93f0c33d6ce50aae7d 3961 Author: Frederik Heber <heber@ins.uni-bonn.de> 3962 Date: Fri Dec 23 11:09:37 2011 +0100 3963 3964 Replaced the molecule::const_iterator by a true const version of the transform_iterator. 3965 3966 - lots of places used const_iterator where it made no sense, atom some others 3967 one could have sensibly done so but details prevented it, e.g. 3968 - FormatParserStorage::save() requires vector<atom*> not const atom *, 3969 - Boundaries (and most of Tesselation for that) requires atom *, not 3970 const atom *. 3971 - Added new function molecule::isInMolecule() to check whether atomic id is in 3972 molecule::atomIds. 3973 - Added const version of atom::GetTrueFather(). 3974 3975 commit 30c7536948400224f2fc3e945a95099d12c23b3a 3976 Author: Frederik Heber <heber@ins.uni-bonn.de> 3977 Date: Thu Dec 22 14:14:16 2011 +0100 3978 3979 Removed atomSet atoms in class molecule and replaced by a boost::transform_iterator. 3980 3981 - atoms causes us a O(N^2) complexity due to having to remove atoms from this 3982 linearized vector (in O(N) not O(log N) as for the atomIds. 3983 - marked Molecules/BondFile and Tesselation/BigNonConvex as XFAIL due to 3984 interchanged ids. 3985 - thanks to Jan Hamaekers for pointing this out. 3986 3987 - NOTE: so far we have not specialized molecule::const_iterator, it simply 3988 points to molecule::iterator. 3989 3990 commit f9b967b72e4892fd47c07969c3776b47bf7f6616 3991 Author: Frederik Heber <heber@ins.uni-bonn.de> 3992 Date: Thu Dec 22 14:38:35 2011 +0100 3993 3994 FIX: Removed unique()'ing usedFields call in each FormatParser< tremolo >::saveLine(). 3995 3996 commit 89a31dfea6d23ffd5380305f11ed7d1ae35a4a7e 3997 Author: Frederik Heber <heber@ins.uni-bonn.de> 3998 Date: Thu Dec 22 14:39:23 2011 +0100 3999 4000 Enhanced verbosity of FormatParser< tremolo >::readAtomDataLine(). 4001 4002 commit f99714d367d279ee28493384986f2e0cf9b2efe7 4003 Author: Frederik Heber <heber@ins.uni-bonn.de> 4004 Date: Wed Dec 21 16:01:47 2011 +0100 4005 4006 FIX: Finally correctly implemented all --enable-... switches in configure. 4007 4008 - The principle is: AC_ARG_ENABLE([option], [help], [if present], [if not present]). 4009 In the last we set the default value of our own variable (e.g. enable_...="no"), 4010 in the last but one we simply set enable_...=$enableval to get the value from the 4011 command line. 4012 - also I used AS_IF everywhere in checking the enable_... value. 4013 4014 commit f2330310e8573c71b1ee3edbcb06336e2a361a3a 4015 Author: Frederik Heber <heber@ins.uni-bonn.de> 4016 Date: Thu Dec 22 13:55:28 2011 +0100 4017 4018 Small fixes to FormatParser< tremolo >::parseKnownTypes() to give more specific error messages. 4019 4020 - also placed info about cleared usedFields in LOG() call. 4021 4022 commit d103d335f1f411ee26c2568846556af546c71b43 4023 Author: Frederik Heber <heber@ins.uni-bonn.de> 4024 Date: Mon Dec 19 15:31:30 2011 +0100 4025 4026 Added additional check in CodeCheck's project disclaimer for current year in copyright. 4027 4028 - had to modify all .cpp files to update to 2011. 4029 4030 commit 908dc743816b2e8b11f5297f04644e47e0d110d9 4031 Author: Frederik Heber <heber@ins.uni-bonn.de> 4032 Date: Thu Dec 22 13:52:15 2011 +0100 4033 4034 FIX: molecule::CenterInBox() made noise on std::cout, banned to LOG. 4035 4036 commit abae35016291f010810eaac8320b7bd3c1e4cf37 4037 Author: Frederik Heber <heber@ins.uni-bonn.de> 4038 Date: Mon Dec 19 15:24:56 2011 +0100 4039 4040 Added CodeCheck on presence of project disclaimer in all .cpp files. 4041 4042 - added disclaimer to missing in Thermostats/*.cpp and MenuInterface.cpp. 4043 4044 commit 6108fde5a8886068ae30de0826b737d61fb539fc 4045 Author: Frederik Heber <heber@ins.uni-bonn.de> 4046 Date: Mon Nov 21 09:13:29 2011 +0100 4047 4048 FIX: Added missing CodePatterns libs to Element's unit tests. 4049 4050 commit bab4f9764a30714f8588b029fa96ea36b46e6b5e 4051 Author: Frederik Heber <heber@ins.uni-bonn.de> 4052 Date: Mon Nov 21 09:12:52 2011 +0100 4053 4054 FIX: Setting up and purging ActionRegistry instance in ActionRegistryTest. 4055 4056 commit 7bace8c6a0fc5f316d62ec82ddff0efda879896b 4057 Author: Frederik Heber <heber@ins.uni-bonn.de> 4058 Date: Fri Nov 11 21:06:48 2011 +0100 4059 4060 FIX: LinearAlgebra's testrunner was not linked against boost serialization. 4061 4062 commit db1a72013fea41fc1ac6c55b5d884661f6460d22 4063 Author: Frederik Heber <heber@ins.uni-bonn.de> 4064 Date: Fri Nov 11 13:30:10 2011 +0100 4065 4066 FIX: Corrected check for gsl's blas requirement. 4067 4068 commit c015b3946b9bb714ae6740f4fbfd3378234a0404 4069 Author: Frederik Heber <heber@ins.uni-bonn.de> 4070 Date: Fri Nov 11 13:16:24 2011 +0100 4071 4072 Added enable-switches for Qt-based GUI and python module and scripts. 4073 4074 - note that encapsulation in AS_IF is absolutely required as otherwise 4075 lateron checks will produce strange errors as required checks reside 4076 in an unseen if ..; then branch, initiated by AC_PROG() ... or other 4077 contained macros. 4078 - Added AM_CONDITIIONAL's to modify Makefile.ams depending on above enable 4079 switches. 4080 - AM_COND_IF controls whether certain Makefile's are produced or not. 4081 - moved Python regression tests into own folder to control whether they 4082 are executed or not. 4083 - molecuildergui and libMolecuilderQtUI are only compiled with qtgui 4084 enabled. 4085 - same for pyMoleCuilder and its scripts only when python enabled. 4086 4087 commit f3b8a5e4ed78b89055bacdcab557b7887840b6a3 4088 Author: Frederik Heber <heber@ins.uni-bonn.de> 4089 Date: Fri Nov 11 13:12:50 2011 +0100 4090 4091 Changed enable switches in configure.ac. 4092 4093 - with-valgrind is protected by AS_IF now. 4094 - corrected AC_MESSAGE for debug and cache. 4095 4096 commit e06010a270e33777c1171131b7a376f7f344b5d5 4097 Author: Frederik Heber <heber@ins.uni-bonn.de> 4098 Date: Fri Nov 11 10:55:47 2011 +0100 4099 4100 FIX: Added missing ax_python.m4, added support for 2.7. 4101 4102 - added python2.7 to the loop. 4103 4104 commit b136f6cb6115f5aa5fd5e6ccb908c72f030b84f4 4105 Author: Frederik Heber <heber@ins.uni-bonn.de> 4106 Date: Tue Nov 29 10:16:30 2011 +0100 4107 4108 FIX: Added Assert_Do to linkedcellUnitTest. 4109 4110 commit 68c92366449b96cba16e719bf1bc16ca92f66370 4111 Author: Frederik Heber <heber@ins.uni-bonn.de> 4112 Date: Tue Nov 29 09:22:26 2011 +0100 4113 4114 Lots of small compiler warning fixes. 4115 4116 Issues: 4117 - non-virtual destructor despite virtual functions. 4118 - unused variables. 4119 - no break at end of switch case. 4120 - no value returned. 4121 4122 commit de29ad6ec3f6c4826f398de6a82efb8324c26e79 4123 Author: Frederik Heber <heber@ins.uni-bonn.de> 4124 Date: Wed Dec 28 15:58:52 2011 +0100 4125 4126 Some optimization to speed up Subgraph dissections. 4127 4128 - Replaced std::list by std::vector in VectorSet<>::minDistSquared() and 4129 Box::internal_explode() as it caused lots of dynamic allocation. This 4130 has been the main cause of the slowdown of Box::internal_explode(). 4131 - Box has internalized vector<int>s coords and index of internal_explode() to 4132 avoid dynamic allocation for them as well. This is worth it as it has a 4133 heavily used function. 4134 - Made Box internal_list non-static. There is only one box anyway. 4135 - changes caused in BoxUnitTest and Box cstor's and dstor. 4136 - speedup of Subgraph 4137 4138 - enhanced verbosity of BondGraph::CreateAdjacency(). 4139 4140 commit bde4a64a31e3c0f73726198e3b7737797d60a1b2 4141 Author: Frederik Heber <heber@ins.uni-bonn.de> 4142 Date: Mon Nov 7 20:30:03 2011 +0100 4143 4144 Set version to 1.2.0 4145 4146 - Molecuilder library is now 6:0:0. 4147 4148 - Codename "Zwoelf" (German word for the number 12 which has too many meanings 4149 to listen them here) 4150 4151 commit 936a02c90039dcc86f22c9ccd060237b13b9ca81 4152 Author: Frederik Heber <heber@ins.uni-bonn.de> 4153 Date: Thu Nov 10 15:57:21 2011 +0100 4154 4155 Creating data dir for bondtables, databases, and molecules. 4156 4157 - Moved .db files from src/Element to data/databases. 4158 - Added bondtable.dat from VSpeShape (kudos Christian Neuen) to data/bondtables 4159 as an initial bond table from geometry optimization of bielemental systems. 4160 - Added some abitrary molecules to data/molecules. 4161 - Added src/documentation/data.dox to explain purpose of the folder. 4162 4163 commit 1a041f358530099250e51de113626e46dc482001 4164 Author: Frederik Heber <heber@ins.uni-bonn.de> 4165 Date: Thu Nov 10 12:22:18 2011 +0100 4166 4167 DOCU: added documentation on how to debug the code. 4168 4169 commit 04e1fb9b749ae4d67250fddbb3bef9aa9a16e259 4170 Author: Frederik Heber <heber@ins.uni-bonn.de> 4171 Date: Thu Nov 10 11:20:20 2011 +0100 4172 4173 Added rules to utils/Makefile.am such that python script can be called directly. 4174 4175 - this is heavily inspired from 4176 http://blog.couchbase.com/installing-python-scripts-automake, which is only 4177 adapted to the usage of pyexecdir and having all variables set by autoconf. 4178 4179 commit 938ffdd39e9b351741dc5a305c9834cbf97a3cd9 4180 Author: Frederik Heber <heber@ins.uni-bonn.de> 4181 Date: Thu Nov 10 11:06:48 2011 +0100 4182 4183 Added Makefile to utils to install python scripts. 4184 4185 commit 0d571d7276ebe9c1a1773e4b2150ee012778f1b4 4186 Author: Frederik Heber <heber@ins.uni-bonn.de> 4187 Date: Wed Nov 9 15:19:29 2011 +0100 4188 4189 DISTCHECKFIX: Forgot to set write permissions for new ec.data test files in RepeatBox regression test. 4190 4191 commit a55be103100d6fcff0fe7045017f879437f76d8f 4192 Author: Frederik Heber <heber@ins.uni-bonn.de> 4193 Date: Wed Nov 9 11:43:42 2011 +0100 4194 4195 DISTCHECKFIX: testsuite does not depends on run scripts. 4196 4197 - Python/run is similarly not a dependency as the molecuilder, joiner, ... 4198 scripts as they are created by configure and not automake. 4199 4200 commit 12facf18b09b4648333e0fe89c03343bc34892d3 4201 Author: Frederik Heber <heber@ins.uni-bonn.de> 4202 Date: Tue Nov 8 09:11:47 2011 +0100 4203 4204 Removed now obsolete Pythontest including regression test. 4205 4206 - as pyMoleCuilder is now fully working (and the obtrusive bug is fixed), we 4207 do not need this test case anymore. 4208 4209 commit dd0f1b1e1a9125755de73d4edd0d787f21f7d5c6 4210 Author: Frederik Heber <heber@ins.uni-bonn.de> 4211 Date: Tue Nov 8 12:44:05 2011 +0100 4212 4213 DISTCHECKFIX: Added AllActionPython.hpp and AllActionHeaders.hpp to exception for config_h code check. 4214 4215 - these are generated for the archive and present there, hence need to be 4216 excluded. 4217 4218 commit 48d3c04f127648994f9bb992902f82fdf27e06e4 4219 Author: Frederik Heber <heber@ins.uni-bonn.de> 4220 Date: Tue Nov 8 09:09:35 2011 +0100 4221 4222 DISTCHECKFIX: Added some missing header files in src/Actions. 4223 4224 - some of the new python files were not in ...HEADERS. 4225 4226 commit 4269cad0335489e8765429362c6500291a09f3e2 4227 Author: Frederik Heber <heber@ins.uni-bonn.de> 4228 Date: Mon Nov 7 17:57:31 2011 +0100 4229 4230 FIX: Some Qt includes were not style-consistent. 4231 4232 commit 5dfeeb2b4133f0bc8c5526397e89e3306f10a2ff 4233 Author: Frederik Heber <heber@ins.uni-bonn.de> 4234 Date: Mon Nov 7 11:08:22 2011 +0100 4235 4236 DISTCHECKFIX: Added forgotten Doxyfile to EXTRA_DIST. 4237 4238 commit 24da485f43375167b5cf182eca27274ba36aeb39 4239 Author: Frederik Heber <heber@ins.uni-bonn.de> 4240 Date: Fri Nov 4 16:40:53 2011 +0100 4241 4242 DISTCHECKFIX: Added missing ActionTraits.hpp to src/Actions/Makefile.am. 4243 4244 commit c1ab1f524dcd3aeba2c82df3d7b694dfdf21e70f 4245 Author: Frederik Heber <heber@ins.uni-bonn.de> 4246 Date: Fri Nov 4 16:15:33 2011 +0100 4247 4248 DISTCHECKFIX: Added all Reaction...hpp to src/Actions/Makefile.am. 4249 4250 commit ed300063c90aa3e4eafcdc71806fd77a7c690f40 4251 Author: Frederik Heber <heber@ins.uni-bonn.de> 4252 Date: Fri Nov 4 16:10:46 2011 +0100 4253 4254 DISTCHECKFIX: Removed bnv_have_qt.m4 from EXTRA_DIST. 4255 4256 commit e85bf295d447e86bfa5bd02fdb4a1e7e30386f3c 4257 Author: Frederik Heber <heber@ins.uni-bonn.de> 4258 Date: Thu Nov 3 20:18:24 2011 +0100 4259 4260 Added code check test whether every .def's Action is listed in GlobalListOfActions.hpp. 4261 4262 commit 5ab79642b2ba78c42f87eb801b807a6eb32d0770 4263 Author: Frederik Heber <heber@ins.uni-bonn.de> 4264 Date: Thu Nov 3 17:09:37 2011 +0100 4265 4266 Added regression test on whether all options in the python module are known with a default value. 4267 4268 - i.e. options.dat is complete and contains a value for each required option in 4269 Python/AllActions test. 4270 - added a few missing options to options.dat (thx test). 4271 4272 commit f894fe4b6a17e5e13a9d4c6a8a91562a6565cfb5 4273 Author: Frederik Heber <heber@ins.uni-bonn.de> 4274 Date: Wed Nov 2 02:17:53 2011 +0100 4275 4276 Changed GetSourceMolareMass() and GetSourceBBabs() of boxmaker.py. 4277 4278 - now all is done in a single molecuilder run, there are no more temporary 4279 files. 4280 - also renamed UpdateSource -> InitialiseSource. 4281 4282 commit f89b45ee33bbea1e1d6d5257495f6e87aeb29aeb 4283 Author: Frederik Heber <heber@ins.uni-bonn.de> 4284 Date: Wed Nov 2 02:13:59 2011 +0100 4285 4286 Added Reaction CalculateBoundingBoxAction. 4287 4288 - calculate bounding box via Box::getBoundingPlanes() of the current domain. 4289 - also added regression test Analysis/CalculateBoundingBox. 4290 4291 exporting std::vector<double> as return value. 4292 - had to add trick with exporting std::vector<double> to python with help from 4293 stackoverflow("does boost python support a function returning a vector, by 4294 ref or value?") answer. We construct a vec_item template class which exports 4295 getter/setter, append, ... functionality to python. 4296 - This ends in typedef doubleVec in namespace MoleCuilder::PythonTypes, while 4297 within the Reaction its just a typedef defined in the .def file. 4298 - this type had to be prefix with PythonType_ to make it distinguishable from 4299 the functions in dir(mol) for Python/AllActions regression test. 4300 - TESTFIX: Also we modified Python/AllActions regression test to go in a loop 4301 over each command, thus stdout and stderr can be uniquely associated to the 4302 very command that caused them. This makes debugging a lot easier ... for 4303 this purpose the dir(mol) and filtering was placed into new listcmds.py. 4304 4305 commit 55f299a96cda2fac6f625bb867138422ecaec949 4306 Author: Frederik Heber <heber@ins.uni-bonn.de> 4307 Date: Wed Nov 2 01:07:42 2011 +0100 4308 4309 Added Reaction CalculateMolarMassAction. 4310 4311 - calculate molar mass (atomicmassunits) of selected atoms. 4312 - also added regression test Analysis/CalculateMolarMass. 4313 4314 commit 6c61a977646015caffe230700aebdc01790a832d 4315 Author: Frederik Heber <heber@ins.uni-bonn.de> 4316 Date: Wed Nov 2 00:53:12 2011 +0100 4317 4318 Added regression test for boxmaker.py. 4319 4320 commit 2aa9eff5378f2eadd12d48e3d6915fb4c37291a5 4321 Author: Frederik Heber <heber@ins.uni-bonn.de> 4322 Date: Wed Nov 2 00:53:28 2011 +0100 4323 4324 UpdateSource function of boxmaker.py is not an external call to molecuilder anymore. 4325 4326 - this is unusable in a test and was contradictory to the intention of a 4327 script. As now we may safely reinit() the pyMoleCuilder module, we may use 4328 it to do the same as the external call did. 4329 4330 commit dfef3fc238df9e0ba66db8ecc94dad83474bf43f 4331 Author: Frederik Heber <heber@ins.uni-bonn.de> 4332 Date: Wed Nov 2 00:27:34 2011 +0100 4333 4334 FIX: empty states Action::success and ::failure are now managed by ActionHistory. 4335 4336 - the python function reinit() runs into trouble because the static entities 4337 Action::success and ::failure are missing after a reinit() causing a 4338 std::exception to be thrown. Now we manage the static state instances via 4339 ActionHistory cstor and dstor. As ActionHistory::init() must be called before 4340 any action is called, this should always work well. 4341 - added static function Action::createStaticStateEntities(). 4342 4343 commit d628da29ae70d201baafa642587e70d7cecb50d1 4344 Author: Frederik Heber <heber@ins.uni-bonn.de> 4345 Date: Tue Nov 1 23:29:39 2011 +0100 4346 4347 Added docstring also to python exported functions without any parameters. 4348 4349 - actually the trick is to not give a std::string but just "...", probably 4350 there is some magic involved that can not deal with real instances but 4351 just with const values or something ... 4352 4353 commit 567357327df58f213deda25db79a4a8e493bf567 4354 Author: Frederik Heber <heber@ins.uni-bonn.de> 4355 Date: Tue Nov 1 23:28:03 2011 +0100 4356 4357 FIX: cleanUp() replaced by module_reinit() and .._exit() in pyMoleCuilder. 4358 4359 - this causes ostream to be set with FormatParserStorage and hence files to be 4360 correctly written. 4361 - module_reinit() is python exported as "reinit". This allows for reuse of the 4362 module. 4363 - both module_... reside in namespace MoleCuilder::detail. 4364 - ..._reinit() does not use cleanUp() but only purgeStaticInstances(). 4365 4366 commit b5d38d24f005e657e47a9754b47a4696cb55a7ff 4367 Author: Frederik Heber <heber@ins.uni-bonn.de> 4368 Date: Tue Nov 1 23:27:22 2011 +0100 4369 4370 Moved dumpMemory() and saveAll() from module builder_init to cleanUp. 4371 4372 commit bcfb774f1eae99eb4252d4bb7fe6ad4d414c73db 4373 Author: Frederik Heber <heber@ins.uni-bonn.de> 4374 Date: Thu Oct 20 15:50:55 2011 +0200 4375 4376 Added correct shebang to boxmaker.py. 4377 4378 - also configure fills in @PYTHON@. 4379 4380 commit 239cc57faea9ab4ff23fdb44d3f06eb29ed9d550 4381 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4382 Date: Thu Oct 20 15:23:48 2011 +0200 4383 4384 Didn't save the file -.-" 4385 4386 commit bfbb62f5982807ebb366202d009e31e5c9e97c0c 4387 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4388 Date: Thu Oct 20 15:22:08 2011 +0200 4389 4390 Final version 1.0 4391 4392 - Added shebang line 4393 - Added short file describtion and author information 4394 4395 commit c0c85f8b81b5784166c5b2636636807351221f02 4396 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4397 Date: Thu Oct 20 15:16:38 2011 +0200 4398 4399 Restructured Code 4400 4401 - temp_source.xyz is created only once 4402 - boolean mapping with dict rather than if-tree 4403 4404 commit b82ededdc872491af61799929b45ad2c39327723 4405 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4406 Date: Wed Oct 19 17:32:48 2011 +0200 4407 4408 Very basic documentation on how to use boxmaker 4409 4410 commit 0ad49ccf93fe4367fe5e4e10f98aad9303587ad9 4411 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4412 Date: Wed Oct 19 16:39:35 2011 +0200 4413 4414 Update: Automatic mass calculation 4415 4416 Also: 4417 - Shortcut for every option 4418 4419 commit 39cbae38d744fa579f22dba076be3334081b2dc3 4420 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4421 Date: Wed Oct 19 13:30:16 2011 +0200 4422 4423 Update: Unit handling 4424 4425 - temp might have a dimension now 4426 - Leading "!" skips processing by tool 'units' so already converted numbers can be used without specifying 'autodim off' resp. '-autodim'. 4427 - Scaling factor in unit-dictionary is float now, proper typing is GOOD. 4428 4429 commit 751d7f1c304a7154fd9d5204d25d894f4d292c74 4430 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4431 Date: Wed Oct 19 13:18:08 2011 +0200 4432 4433 Update: Shortcuts for common Parameters 4434 4435 commit 32bc47763858bb01bae893adc080489b7158d448 4436 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4437 Date: Mon Oct 17 14:08:19 2011 +0200 4438 4439 Update: autorotate 4440 4441 Not tested yet, but it seems like it does *something* (means: paths etc. are correctly handled). 4442 4443 commit 0c83d84852b4a347a220986437c3548d9f81ee7b 4444 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4445 Date: Mon Oct 17 13:03:12 2011 +0200 4446 4447 Less ugly advanced version 4448 4449 - Class (struct) based global options 4450 - Minor bugfixes 4451 - Feature: Cubic cell 4452 - Feature: Skip unit conversion 4453 - Feature: Options via cmd line 4454 - Feature: More settings 4455 4456 TODO: 4457 - Output postprocessing (INPUTCONVs) 4458 - Auto-rotate to minimum BBox 4459 - Documentation 4460 4461 commit 5735ba6c7b20b862fee585bf210001884dd525f6 4462 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4463 Date: Wed Oct 12 18:14:13 2011 +0200 4464 4465 Ugly base version of boxmaker.py 4466 4467 TODO: 4468 - stability fixes 4469 - command parameters 4470 - bbox optimization 4471 - default parameters 4472 4473 commit 54088ade157ccd5da09d83809d019879eb18bca1 4474 Author: Frederik Heber <heber@ins.uni-bonn.de> 4475 Date: Thu Oct 13 12:51:04 2011 +0200 4476 4477 Added first Reaction named CalculateCellVolumeAction. 4478 4479 - this sets the internal result to the volume of the current domain. 4480 - the result is return, when the wrapper function is called in python. 4481 - added regression tests Python/ReturnValueActions and 4482 Analysis/CalculateCellVolume. 4483 4484 commit 6aa48530ab21a608d169e9bd28ff31e047c23a15 4485 Author: Frederik Heber <heber@ins.uni-bonn.de> 4486 Date: Thu Oct 13 12:49:22 2011 +0200 4487 4488 Actions exported to Python may contain a returntype. 4489 4490 - returntype is set in .def file, if none given void is assumed. 4491 4492 commit 15408592ea2fab27dfbc10cc6f5b99cae3244c89 4493 Author: Frederik Heber <heber@ins.uni-bonn.de> 4494 Date: Thu Oct 13 12:47:12 2011 +0200 4495 4496 Added Reaction as Action with a return value. 4497 4498 - this is derived from Calculation, only that it is not a Process but a simpler 4499 Action. 4500 - A Reaction cannot be undone and sets an internal result. 4501 4502 commit 874597dc61c72b0d2831c2aabdfbcb6a2a92fa4f 4503 Author: Frederik Heber <heber@ins.uni-bonn.de> 4504 Date: Thu Oct 13 12:50:36 2011 +0200 4505 4506 FIX: some defines were forgotten to be undefined in Action_impl_python.hpp. 4507 4508 commit 9d613feab4e07d3a202706642be753fe3532e1b3 4509 Author: Frederik Heber <heber@ins.uni-bonn.de> 4510 Date: Mon Oct 10 16:18:16 2011 +0200 4511 4512 FIX: RepeatBoxAction did not use CopyMolecule() but copied by hand. Kudos: Gregor Bollerhey. 4513 4514 - this causes trouble with FormatParsers such as Tremolo... who have internally 4515 additional information stored. 4516 - extended regression tests Domain/RepeatBox with a test of a repeated 4517 .data file with "special" element names. 4518 4519 Kudos to Gregor Bollerhey for finding this bug. 4520 4521 commit f27fa7663d7fbd32d91ed4b31bbb2d9443cd7ba7 4522 Author: Frederik Heber <heber@ins.uni-bonn.de> 4523 Date: Mon Oct 10 16:17:32 2011 +0200 4524 4525 TESTFIX: Added test whether calling not present command truely fails. 4526 4527 - exit code from python is 1. 4528 4529 commit cbb32d6cb47d22cd8f7f67d1c9c85099ca08ab67 4530 Author: Frederik Heber <heber@ins.uni-bonn.de> 4531 Date: Mon Oct 10 16:06:58 2011 +0200 4532 4533 Small cosmetical changes to moltest.py. 4534 4535 - We now use Popen to call an external process and check on its return code. 4536 If an Action fails with an internal Assertion(134), then the command is still 4537 considered as available. We are only interested in failures of the python 4538 interpreter. 4539 - changed the output a bit. Each Command is now embraced by BEGIN and END, 4540 stdout and stderr are given separately but per command. 4541 - removed XFAIL from regression test Python/AllActions. 4542 4543 commit 3493da80dddd81670d46f553e8f9eee1d6e3e762 4544 Author: Frederik Heber <heber@ins.uni-bonn.de> 4545 Date: Thu Oct 6 14:12:35 2011 +0200 4546 4547 Gathered default values for each action and wrote regression test that uses moltest.py. 4548 4549 - options gathered by script getPossibleOptions.sh in file options.dat. 4550 missing.dat contains all currently available action and option tokens for 4551 easier retrieval of possible default values. 4552 - new regression test Python/AllActions that tests callability/presence of all 4553 Actions. This test is so far marked as XFAIL. 4554 - Note that default values in options.dat have slightly different format as 4555 they are directly stored in ValueStorage by COMMAND() call and do not go 4556 through CommandLineParser, e.g. domain is upper now lower diagonal matrix 4557 and vectors are space-, note comma-separated. 4558 4559 commit 6ca7b9fa2e55525a9e8ae30efd5cf902378adb63 4560 Author: Gregor Bollerhey <bollerhe@ins.uni-bonn.de> 4561 Date: Thu Oct 6 14:11:53 2011 +0200 4562 4563 Wrote python script to gather all functions in a pyMoleCuilder module and test them. 4564 4565 commit 3139b207b75597cf0c7353033c5d2be2cfbcb0ae 4566 Author: Frederik Heber <heber@ins.uni-bonn.de> 4567 Date: Mon Sep 26 15:38:55 2011 +0200 4568 4569 Renamed ActionTrait and ActionTraits. 4570 4571 - the specialized Trait contains multiple OptionTraits, hence is now called 4572 ActionTrait_s_, where its base class (that just has the OptionTrait for 4573 itself) is called ActionTrait. 4574 - This caused many changes in other Action related files. 4575 4576 commit c20b356f2eadeb43c500eb53ae0f5b79fd0ec9e1 4577 Author: Frederik Heber <heber@ins.uni-bonn.de> 4578 Date: Mon Sep 26 15:09:24 2011 +0200 4579 4580 Added commented-out stuff for a extra libMolecuilderActionPython.la. 4581 4582 - this library would contain each COMMAND() export in a single module and thus 4583 speed up the compilation when required. 4584 4585 commit 9499532892bd8d49658849069d442402314d3a4b 4586 Author: Frederik Heber <heber@ins.uni-bonn.de> 4587 Date: Mon Sep 26 14:59:25 2011 +0200 4588 4589 pyMoleCuilder now has full functionality. 4590 4591 - For each header file there is a COMMAND_stringargs() function defined. 4592 - boost python module exports all Action's COMMAND_stringargs() that are 4593 present in GlobalListOfActions.hpp. 4594 - new source file AllActionPython.hpp is created in Actions/Makefile.am that 4595 enlists all the headers. 4596 - New implemenations: 4597 - Action_impl_python.hpp: defines COMMAND_stringargs() via some boost:: 4598 preprocessor magic. 4599 - Action_impl_undef.hpp: contains undefs to the Action's .def files. 4600 - also docstrings are working, both for module and for each exported function. 4601 - so far, all arguments have a (in NODEFAULT case empty) default value. This 4602 is because we cannot perform string comparisons with the preprocessor only 4603 numeric ones (i.e. NODEFAULT would have to be 0 or alike). 4604 4605 - Extracted cleanUp() from builder_init.cpp and placed into own module. 4606 - cleanUp() is now also registered atexit() for pyMoleCuilder where it is 4607 needed as well. 4608 - AddStaticEntitiestoIgnoreList() has likewise been extracted. 4609 4610 commit 0712434880db2974e2088075ea714dc43b8900e6 4611 Author: Frederik Heber <heber@ins.uni-bonn.de> 4612 Date: Mon Sep 26 14:45:13 2011 +0200 4613 4614 Enhanced tiny example to resemble action structure. 4615 4616 - Pythontest now also works via a true ActionRegistry along with Actions and 4617 "Atrait" and "Otrait". 4618 - this was done to understand runtime (glibc corruption) errors in the full 4619 pyMoleCuilder module). However, fault was due to forgotten inclusion of 4620 CodePatterns library. 4621 - In the end, we have an Action that contains the wrapped greet function in 4622 a likewise static manner as COMMAND(). 4623 4624 commit 88ba1f95ffea4dff3ac2b0232d8c51420c94f222 4625 Author: Frederik Heber <heber@ins.uni-bonn.de> 4626 Date: Mon Sep 26 14:40:56 2011 +0200 4627 4628 Added Action's COMMAND_stringargs() function call. 4629 4630 - also added ValueStorage::setCurrentValueByString() which gets type only via 4631 template specialization but whose argument is always of type string. 4632 - this allows to call the Action with string arguments only. 4633 - We need this for the (lazy) python exporting where no internal classes such 4634 as BoxVector are exposed to the python outside. 4635 4636 commit ddde10806358ff0435053ab29908ef726307ffa1 4637 Author: Frederik Heber <heber@ins.uni-bonn.de> 4638 Date: Mon Sep 26 14:40:05 2011 +0200 4639 4640 FIX: In Action's COMMAND() we don't need a params instance. 4641 4642 commit 6a2dae6b1981184635d1c474f4ac46456c875e32 4643 Author: Frederik Heber <heber@ins.uni-bonn.de> 4644 Date: Mon Sep 26 14:34:23 2011 +0200 4645 4646 Corrected indenting in ActionTrait<>s cstor. 4647 4648 commit 05736a7a4c0757f4fa2692f61529114df82fbc3a 4649 Author: Frederik Heber <heber@ins.uni-bonn.de> 4650 Date: Mon Sep 26 14:29:05 2011 +0200 4651 4652 Simplified Action's COMMAND() definition a bit. 4653 4654 commit d41313dc0509282e66f0868a09e6a611856991a0 4655 Author: Frederik Heber <heber@ins.uni-bonn.de> 4656 Date: Mon Sep 26 13:16:53 2011 +0200 4657 4658 Added output operators for both ActionTraits and OptionTrait. 4659 4660 commit dad802e0e6e39672b0c30ed680b5553146da8906 4661 Author: Frederik Heber <heber@ins.uni-bonn.de> 4662 Date: Mon Sep 26 13:12:35 2011 +0200 4663 4664 Modified ActionTraits' and OptionTrait's cstor and dstor slightly. 4665 4666 - this is mostly debugging stuff and does not change anything. 4667 4668 commit 83e90c5ba27374b18c88dac99eccef2300119c69 4669 Author: Frederik Heber <heber@ins.uni-bonn.de> 4670 Date: Wed Sep 21 20:56:31 2011 +0200 4671 4672 New function ActionRegistry::fillRegistry() fills instead of static instances. 4673 4674 - this replaces the static instances of each Action in Action_impl_pre.hpp. 4675 - we use a file that has to list all present actions, GlobalListOfActions.hpp, 4676 as it is not possible to build such a list with the preprocessor from all 4677 include files and use it afterwards, as e.g. the define COMMAND only has a 4678 _local_ meaning inside the include but the sequence of actions must be built 4679 up from _global_ ones. 4680 - Actions/Makefile.am: creates AllActionHeaders.hpp out of this list of present 4681 actions. 4682 - specialized Actions do not register themselves anymore. 4683 4684 commit aee2dabfffde9df5844f0967184afb9f4888bc87 4685 Author: Frederik Heber <heber@ins.uni-bonn.de> 4686 Date: Mon Sep 26 15:04:21 2011 +0200 4687 4688 Added BUILT_SOURCES as appendable variable in various Makefile.am's. 4689 4690 commit cb85f24c65f5b7e2949f048923157232b2968421 4691 Author: Frederik Heber <heber@ins.uni-bonn.de> 4692 Date: Mon Sep 26 15:11:33 2011 +0200 4693 4694 Removed using namespace MoleCuilder from TxMenuLeaveAction. 4695 4696 - due to includes this re-appeared at some other places, too. 4697 4698 commit 693a80ce2c6b4945f8d87d19e25048dcc3c12bdf 4699 Author: Frederik Heber <heber@ins.uni-bonn.de> 4700 Date: Wed Sep 21 20:51:12 2011 +0200 4701 4702 Added pyMoleCuilder as python module with single exported function CommandHelp. 4703 4704 - this is working so far only for this single Action. 4705 - Note that we search high and wide for a memory leak (glibc corruption / 4706 double free) caused by the forgotten CodePatterns library (which contains 4707 a overwritten new operator by MemDebug). 4708 4709 commit a02f78efd40bac7cd313cfb7b23877d1db334b4d 4710 Author: Frederik Heber <heber@ins.uni-bonn.de> 4711 Date: Wed Sep 21 20:48:59 2011 +0200 4712 4713 FIX: Undefined preprocessor macro functions in Action_impl_....hpp. 4714 4715 - this allows for multiple inclusion of specific Action headers when one wants 4716 to use the COMMAND's. 4717 4718 commit d470a6c39e34e4b9b5519bea831d792d49997812 4719 Author: Frederik Heber <heber@ins.uni-bonn.de> 4720 Date: Wed Sep 21 20:47:18 2011 +0200 4721 4722 Moved regression test on little test module Pythontest into subfolder. 4723 4724 - also test is now in own test file .at that is just included in main Python 4725 folder. 4726 4727 commit b4e6b490cbef1b6934755e6f5c13a7e46602828c 4728 Author: Frederik Heber <heber@ins.uni-bonn.de> 4729 Date: Wed Sep 21 20:45:00 2011 +0200 4730 4731 Added note that we really may use the address of a type_info object. 4732 4733 - it is static const, hence always the same address is returned by typeid(). 4734 4735 commit 807d91170ae58588000d9d66b2b98bf36218fb73 4736 Author: Frederik Heber <heber@ins.uni-bonn.de> 4737 Date: Wed Sep 21 20:44:09 2011 +0200 4738 4739 MEMFIX: Virtualized destructors of OptionTrait, ActionTraits and ActionTrait<> templates and specialization. 4740 4741 commit b2217903eb4f697a0eb4e0b6bbcc90cd7b9cc750 4742 Author: Frederik Heber <heber@ins.uni-bonn.de> 4743 Date: Wed Sep 21 20:42:29 2011 +0200 4744 4745 FIX: Removed OptionTrait's copy constructor as there are no pointers in it. 4746 4747 - With ActionTraits we need it, with OptionTrait we don't. 4748 4749 commit d44d7b99bdaf4f9e06becc21fdd72562f7b27aff 4750 Author: Frederik Heber <heber@ins.uni-bonn.de> 4751 Date: Wed Sep 21 20:40:00 2011 +0200 4752 4753 Dstor of Action now unregisters itself and its Options in Action- and OptionRegistry. 4754 4755 commit 2d31e15adb589e255571178413b29360fb148592 4756 Author: Frederik Heber <heber@ins.uni-bonn.de> 4757 Date: Tue Sep 20 17:44:52 2011 +0200 4758 4759 Python tests are now launched via small script run.in. 4760 4761 - this is taken over from project GetSpot, see 4762 http://spot.lip6.fr/wiki/GetSpot, such that the test lib does not need to 4763 be installed. 4764 - Also libPythontest now is just -module and has non standard library name 4765 Pythontest. 4766 4767 commit 7150854fe66d2de013c8f0b6c46e3a3158927d58 4768 Author: Frederik Heber <heber@ins.uni-bonn.de> 4769 Date: Tue Sep 20 17:09:29 2011 +0200 4770 4771 Simple boost::python test program added. 4772 4773 - we have a function greet() (as featured in the boost::python tutorial) 4774 exported into a python module libPythontest.so which is test in a separate 4775 regression test for the working function. 4776 4777 commit 46bba069f32a5e5d0491f639e519790fe58e7fa3 4778 Author: Frederik Heber <heber@ins.uni-bonn.de> 4779 Date: Wed Nov 2 04:48:11 2011 +0100 4780 4781 FIX: Removed versioning info from some convenience libraries. 4782 4783 commit 42c9e2b8523492429793bb7da6d7003aa6fe86f7 4784 Author: Frederik Heber <heber@ins.uni-bonn.de> 4785 Date: Wed Nov 2 04:46:07 2011 +0100 4786 4787 FIX: getKeys() and getValues() are now simply internal functions of CheckAgainstAdjacencyFile. 4788 4789 - somehow it was not admonished that the templated variants before did access 4790 private parts of CheckAgainstAdjacencyFile without being friends. 4791 4792 commit 13c969ad686f3d12cdc5bdd93001c93e383c3e24 4793 Author: Frederik Heber <heber@ins.uni-bonn.de> 4794 Date: Wed Nov 2 04:38:43 2011 +0100 4795 4796 FIX: atominfo::getType() does not care whether element exists. 4797 4798 - atoms do temporarily have no element: right after they are created. 4799 Hence, one has to deal with the returned pointer being null. 4800 - this fixes a bug with the debug variant of molecuildergui crashing when 4801 loading a new molecule via WorldInputAction. 4802 4803 commit e5cec4e2cb555c7d4508afa2f6296052dcf2e5ee 4804 Author: Frederik Heber <heber@ins.uni-bonn.de> 4805 Date: Wed Nov 2 03:25:00 2011 +0100 4806 4807 Removed macro bnv_have_qt, replaced by pkg-config info. 4808 4809 - executables are searched via AC_PATH_PROGS in PATH or the one given via 4810 --with-Qt-bin. 4811 4812 commit 22db89e82efc438f389cf621bf3caa0c33f6b876 4813 Author: Frederik Heber <heber@ins.uni-bonn.de> 4814 Date: Wed Nov 2 02:20:28 2011 +0100 4815 4816 Using new version of CodePatterns 1.1.7. 4817 4818 - m4 macro ax_codepatterns.m4 now uses flags and libs set by boost macro in 4819 test compile. 4820 - also now we support boost 1.47. 4821 4822 commit bf33793a0d4ea93c1babd21cadd1d7fc70e7b4ad 4823 Author: Frederik Heber <heber@ins.uni-bonn.de> 4824 Date: Fri Nov 4 11:16:36 2011 +0100 4825 4826 Set version to 1.1.6 4827 4828 - Molecuilder library is now 5:2:0. 4829 4830 - Codename "ununhexium" (atomic number of a so temporarily called element, as 4831 this release is just an intermediate to upcoming 1.2.0 as well) 4832 4833 commit 4faa3024da62e20851f88698fbb5ec07a146908c 4834 Author: Frederik Heber <heber@ins.uni-bonn.de> 4835 Date: Wed Oct 26 10:33:46 2011 +0200 4836 4837 FIX: EmptyQtQuery forgot to initialise thisLayout. 4838 4839 commit 3b5fcad4499d84f2710a43fa1bb78943cb664f7e 4840 Author: Frederik Heber <heber@ins.uni-bonn.de> 4841 Date: Fri Nov 4 15:15:42 2011 +0100 4842 4843 FIX: joiner, analzer and units lacked appropriate ..._LDFLAGS. 4844 4845 - also added _CXXFLAGS (but should change nothing). 4846 - fixes bug with elswhere present boost libs. 4847 4848 commit 3995764b4b2e69dd6c57f464bcaaf4a0839eb9c2 4849 Author: Frederik Heber <heber@ins.uni-bonn.de> 4850 Date: Fri Nov 4 11:59:00 2011 +0100 4851 4852 DISTCHECKFIX: LinearAlgebra CodeChecks testsuite fails due to doubly included atlocal. 4853 4854 commit 6bdba08a7dca2ce506c7552abbefa9853fb32452 4855 Author: Frederik Heber <heber@ins.uni-bonn.de> 4856 Date: Fri Nov 4 10:58:04 2011 +0100 4857 4858 DISTCHECKFIX: all .dox files are now given as EXTRA_DIST. 4859 4860 - otherwise they are not included in the archive and also the date_dox code 4861 check fails. 4862 4863 commit d249533a8bc07628856561bbbef1aa20a677cbbc 4864 Author: Frederik Heber <heber@ins.uni-bonn.de> 4865 Date: Fri Nov 4 10:45:27 2011 +0100 4866 4867 DISTCHECKFIX: target unity.cpp has no MemDebug.hpp or config.h. 4868 4869 - it is now excluded in the config_h and memdebug code check tests. 4870 - also removed ancient Helpers/MemDebug.cpp from unity. 4871 4872 commit 262ecc8c14e55d0f7744557f8db358fa4e387df8 4873 Author: Frederik Heber <heber@ins.uni-bonn.de> 4874 Date: Fri Nov 4 09:07:54 2011 +0100 4875 4876 DISTCHECKFIX: Forgotten .hpp files included. 4877 4878 commit c2808e648134d01905b5a680706cb340fb79319f 4879 Author: Frederik Heber <heber@ins.uni-bonn.de> 4880 Date: Fri Oct 28 12:04:40 2011 +0200 4881 4882 FormatParser< xyz >::save() now uses numeric_limits<size_t>. 4883 4884 commit ab26c32fce16265ba7563805bf70265de2b4e3fe 4885 Author: Frederik Heber <heber@ins.uni-bonn.de> 4886 Date: Thu Oct 27 17:19:48 2011 +0200 4887 4888 Moved ThermoStatContainer to folder src/Thermostats. 4889 4890 commit 41a467397fe65de7b369f9989fc26e6e18070f2e 4891 Author: Frederik Heber <heber@ins.uni-bonn.de> 4892 Date: Thu Oct 27 17:08:36 2011 +0200 4893 4894 LARGE: config class is now just a tiny container. 4895 4896 - this was loooooobg overdue. Config.cpp contained remnants from parsing pcp 4897 files and much else. Also fragmentation depended on it. Since refactoring 4898 of MoleculeListClass and the fragmentation, we don't need it anymore. 4899 - helper functions ParseForParameters(), LoadMolecule() extracted into new 4900 module PcpParser_helper. 4901 - config class now just contains 4 variables that are generally required 4902 (especially IsAngstroem) and they should probably remain with the world. 4903 - removed some places where config.hpp was no unnecessarily included. 4904 - Moved ConfigFileBuffer.* over to subfolder src/Parser/ where it rather 4905 belongs (associated with PcpParser). 4906 4907 commit 47d0416c5a62d6d7eb14391e14c7f3f576fb1673 4908 Author: Frederik Heber <heber@ins.uni-bonn.de> 4909 Date: Thu Oct 27 13:53:58 2011 +0200 4910 4911 HUGE: Removed all calls to Log(), eLog(), replaced by LOG() and ELOG(). 4912 4913 - Replaced DoLog(.) && (Log() << Verbose(.) << ... << std::endl) by Log(., ...). 4914 - Replaced Log() << Verbose(.) << .. << by Log(., ...) 4915 - on multiline used stringstream to generate and message which was finally used 4916 in LOG(., output.str()) 4917 - there should be no more occurence of Log(). LOG() and ELOG() must be used 4918 instead. 4919 - Eventually, this will allow for storing all errors and re-printing them on 4920 program exit which would be very helpful to ascertain error-free runs for the 4921 user. 4922 4923 commit 50e4e51ce46632502842371460680414d8693a72 4924 Author: Frederik Heber <heber@ins.uni-bonn.de> 4925 Date: Thu Oct 27 13:31:25 2011 +0200 4926 4927 Test target installcheck-local now also runs parallel with up to 4 jobs. 4928 4929 - especially important for distcheck. 4930 4931 commit 862b6aced84cfd7115cc1c86598d01d98e597c01 4932 Author: Frederik Heber <heber@ins.uni-bonn.de> 4933 Date: Thu Oct 27 11:32:27 2011 +0200 4934 4935 All Actions are timed now, timings are given on exit. 4936 4937 - Chronos is used for this. 4938 - new function printTiming() called in cleanUp(). 4939 4940 commit 004ae78c93125b8c5ed36354e6ccaf507e1cc290 4941 Author: Frederik Heber <heber@ins.uni-bonn.de> 4942 Date: Thu Nov 3 16:44:19 2011 +0100 4943 4944 FIX: Changes to bnv_have_qt.m4 and boost.m4. 4945 4946 - moved search in /opt to very end of list, wherever occurring. /opt is often 4947 a network drive and hence fails in case of network outtage. 4948 - bnv_have_qt.m4: Moved Libs in test compile to end, gcc 4.6 is picky and we 4949 are checking specifically for QtCore, QtGui, and Qt3D libs, not just any. 4950 4951 commit bbff92c91e480a376335ee7ed85901c02fc38965 4952 Merge: 7ba268a f11c23f 4953 Author: Frederik Heber <heber@ins.uni-bonn.de> 4954 Date: Thu Nov 3 11:38:31 2011 +0100 4955 4956 Merge branch 'Doxygen_Documentation_Enhancement' into mergeMaster 4957 4958 commit f11c23fb087ac6674948e06cc77219f2907614c1 4959 Author: Frederik Heber <heber@ins.uni-bonn.de> 4960 Date: Thu Nov 3 11:35:53 2011 +0100 4961 4962 Added documentation on how to understand the code and its (maybe) future extensions. 4963 4964 commit 1e3265cfdde09115536e60489297dfea655c313f 4965 Author: Frederik Heber <heber@ins.uni-bonn.de> 4966 Date: Thu Aug 26 15:29:33 2010 +0200 4967 4968 Changed userguide a bit. 4969 4970 commit 7ba268a58e24918f9b4f28cee1e5b542596e56ca 4971 Merge: 13510b7 5837ddd 4972 Author: Frederik Heber <heber@ins.uni-bonn.de> 4973 Date: Thu Nov 3 10:52:29 2011 +0100 4974 4975 Merge branch 'DipoleAngularCorrelation' into mergeMaster 4976 4977 Conflicts: 4978 src/World.cpp 4979 4980 - tiny conflict in World.cpp 4981 4982 commit f281c570d3846adae28ef56f504a320da69c7929 4983 Author: Frederik Heber <heber@ins.uni-bonn.de> 4984 Date: Wed Nov 2 23:39:55 2011 +0100 4985 4986 Added .dox check to LinearAlgebra as well and various other test fixes. 4987 4988 - module is now named linearalgebra. 4989 - installcheck-local too runs parallel. 4990 - check uses AUTOTEST_PATH. 4991 - TESTFIX: added missing \date to present .dox files. 4992 4993 commit 5837ddd122c04b048b60eb1c43cd324f37cf1945 4994 Author: Frederik Heber <heber@ins.uni-bonn.de> 4995 Date: Tue Oct 25 17:37:56 2011 +0200 4996 4997 Cosmetical fix to PairCorrelation(). 4998 4999 commit c3a70d2e1acd8ae14b6afd834b7b50bae96f66e5 5000 Author: Frederik Heber <heber@ins.uni-bonn.de> 5001 Date: Thu Oct 13 21:51:31 2011 +0200 5002 5003 Added time-step-zero option to dipole-angular-correlation. 5004 5005 - this allows setting t_0 at some later time step than the very first one (and 5006 thus from an equilibrated moment in time and not the initial one). 5007 - although there is default value, regression tests use time-step-zero with 0. 5008 5009 commit 870b4b91fe9f0b1046abb0bc933ec99ffab7aed1 5010 Author: Frederik Heber <heber@ins.uni-bonn.de> 5011 Date: Thu Oct 13 21:50:52 2011 +0200 5012 5013 Added rejected molecule counting to DipoleAngularCorrelation(). 5014 5015 commit a28cc4b8154803677c2110da6e9dfbc65b7bdb0c 5016 Author: Frederik Heber <heber@ins.uni-bonn.de> 5017 Date: Tue Nov 1 20:57:25 2011 +0100 5018 5019 DOCU: Added python as fourth user interface. 5020 5021 commit 35a88927d82713a677dde8bd7c3df3ce9e9ba429 5022 Author: Frederik Heber <heber@ins.uni-bonn.de> 5023 Date: Tue Nov 1 20:56:58 2011 +0100 5024 5025 DOCUFIX: Prefixes all three userinterface labels with userinterfaces-. 5026 5027 commit bc341152538d05a33d83d52d16a02336b620b1f9 5028 Author: Frederik Heber <heber@ins.uni-bonn.de> 5029 Date: Tue Nov 1 20:56:15 2011 +0100 5030 5031 DOCU: Added some important notes in usual mistakes to serialization.dox. 5032 5033 commit e6c470ccb1b2c074724b8e513510f5f939adc3af 5034 Author: Frederik Heber <heber@ins.uni-bonn.de> 5035 Date: Mon Oct 31 18:29:04 2011 +0100 5036 5037 Fixing documentation. 5038 5039 - removed out-dated documentation. 5040 - removed bugs with doxygen. 5041 5042 commit 39f4c46f89ae322d0db63df2b97dc6bfb003cfe0 5043 Author: Frederik Heber <heber@ins.uni-bonn.de> 5044 Date: Mon Oct 31 18:15:52 2011 +0100 5045 5046 Added CodeChecks test on whether each of .dox files contains a valid date stamp. 5047 5048 - this is to enforce stating whether information is current or not. 5049 5050 commit 5982c5922d9ec80de77b5dbb7184f7cc879c6eac 5051 Author: Frederik Heber <heber@ins.uni-bonn.de> 5052 Date: Mon Oct 31 18:15:21 2011 +0100 5053 5054 FIX: Removed at_local inclusion in nested test scripts and put in into testsuite.at. 5055 5056 - this fixes multiple inclusion warnings. 5057 5058 commit 750cff3758142eb977ca963eb8ede4200620a15e 5059 Author: Frederik Heber <heber@ins.uni-bonn.de> 5060 Date: Mon Oct 31 18:13:52 2011 +0100 5061 5062 HUGE: Update on documenation. 5063 5064 - a general skeleton of the documentation is now in place with all the major 5065 components of MoleCuilder explained to some extent. 5066 - some information has been transfered from TRAC (e.g. install procecure) into 5067 this doxygen documentation where it is general and not specific to the 5068 situation at our institute. 5069 5070 commit e658783525483171aa12ab81bf75d42b28dba211 5071 Author: Frederik Heber <heber@ins.uni-bonn.de> 5072 Date: Wed May 18 21:55:05 2011 +0200 5073 5074 Selection is now done inside DipoleAngularCorrelation. 5075 5076 - as molecules may change over time it makes more sense to select molecules 5077 internally right now. 5078 - DipoleAngularCorrelation() now takes Formula instead of std::vector<atom *>. 5079 - also adjusted const'ness of some parameters. 5080 5081 commit 505d059b8f5c10ec0e270a2fbd0cbe8462d545d9 5082 Author: Frederik Heber <heber@ins.uni-bonn.de> 5083 Date: Wed May 11 18:14:56 2011 +0200 5084 5085 DipoleAngularCorrelation: output now contains name _and position_ of first atom of dipole molecule. 5086 5087 - TESTFIX: Had to change _values...dat files accordingly. 5088 5089 commit 72105aa76e82e63091a7bc60f6846f4866f741ef 5090 Author: Frederik Heber <heber@ins.uni-bonn.de> 5091 Date: Wed May 11 11:59:00 2011 +0200 5092 5093 Verbosity fix: DipoleAngularCorrelation() - info given when ZeroVector and atoms sizes mismatch. 5094 5095 commit 99b87a1a736ed1a74a2c329e71072ba1de294522 5096 Author: Frederik Heber <heber@ins.uni-bonn.de> 5097 Date: Wed May 11 11:57:47 2011 +0200 5098 5099 DipoleAngularCorrelation() can be told not to reset time to old value. 5100 5101 - this should save some unnecessary re-creation of bond structure when the 5102 method is used by AnalysisDipoleAngularCorrelationAction::performCall(). 5103 - new enum ResetWorldTime in analysis_correlation.hpp to make reset statement 5104 in call verbose. 5105 5106 commit a860a19bf886a884948976987e34a1820dac2d8b 5107 Author: Frederik Heber <heber@ins.uni-bonn.de> 5108 Date: Wed May 11 10:50:45 2011 +0200 5109 5110 TESTFIX: Regression test Analysis/DipoleAngularCorrelation now also checks per time step not over all time steps. 5111 5112 - split up zero change (X) and true change (Y) case of the rotating water 5113 molecule; otherwise output files get mixed. 5114 - removed AT_XFAIL_IF from these tests. 5115 5116 commit 13510b793af44e5bc7ff6b3cc7ea35c7ccb86c44 5117 Author: Frederik Heber <heber@ins.uni-bonn.de> 5118 Date: Thu Oct 27 10:21:32 2011 +0200 5119 5120 Added regression test for setting Psi3Parser parameter reference. 5121 5122 commit e5ece417206b4e99cde82d66079cfc947e65c7e7 5123 Author: Frederik Heber <heber@ins.uni-bonn.de> 5124 Date: Wed Oct 26 18:23:57 2011 +0200 5125 5126 Added operator<< to ValueStorage. 5127 5128 - this should ease debugging in case of a "missing" option. 5129 5130 commit 41d023ff8dc20a2b26d06e7c4960972918c6e500 5131 Author: Frederik Heber <heber@ins.uni-bonn.de> 5132 Date: Wed Oct 26 18:22:33 2011 +0200 5133 5134 Renamed SetMpqcParametersAction to SetParserParametersAction and generalized. 5135 5136 - now we may set the parameters of basically any parser, so far it's probably 5137 just mpqc and pis3. 5138 - changed operator<<(FormatParser_Parameters): no output when value is empty 5139 string. 5140 - changed operator>>(FormatParser_Parameters): Asserts were not really making 5141 sure that value_iter and param_iter were readible. 5142 - Added regression test on setting psi3 parameters (wfn). 5143 5144 commit 19bc7497091ba44d7d2c52ee7ba0f5997f9f291e 5145 Author: Frederik Heber <heber@ins.uni-bonn.de> 5146 Date: Fri Oct 28 17:05:03 2011 +0200 5147 5148 Explained most of the tests. 5149 5150 commit 3158e6e7748f2252aa12f1b10e68729ed45ca9fd 5151 Author: Frederik Heber <heber@ins.uni-bonn.de> 5152 Date: Fri Oct 28 11:46:29 2011 +0200 5153 5154 FIX: FIX: broken variable docdir for DX_INIT_DOXYGEN. 5155 5156 commit a2b0ce4a8778356724acb2bcd662a1df29a49344 5157 Author: Frederik Heber <heber@ins.uni-bonn.de> 5158 Date: Wed May 11 10:29:57 2011 +0200 5159 5160 FIX: Filenames are appended with step with fixed width of 4 digits, zero filled. 5161 5162 - FIX: step name preparation placed before. 5163 5164 commit cda81de72ce7ee445f55ec79bd0c6eb340fc1edd 5165 Author: Frederik Heber <heber@ins.uni-bonn.de> 5166 Date: Wed May 11 10:10:27 2011 +0200 5167 5168 DipoleAngularCorrelation is now calculated per time step not over all time steps combined. 5169 5170 - DipoleAngularCorrelation() gets time step to calculate orientation for. 5171 - AnalysisDipoleAngularCorrelationAction::performCall() loops over all present 5172 time steps and calls DipoleAngularCorrelation() for each. 5173 5174 - TESTFIX: Regression tests Analysis/DipoleAngularCorrelation are marked as 5175 XFAIL until new tests are installed. 5176 5177 commit 9e1709721fb1e279fa7c791bd154ef470bc3d091 5178 Author: Frederik Heber <heber@ins.uni-bonn.de> 5179 Date: Wed May 11 10:00:14 2011 +0200 5180 5181 AnalysisDipoleAngularCorrelationAction now calculates zero orientation. 5182 5183 - this is a preparatory step to get DipoleAngularCorrelation() calculate the 5184 orientiation per time step and not over all time steps as it is now. 5185 5186 commit bef3b93af4906063eed476be88fb1537ca4a3326 5187 Author: Frederik Heber <heber@ins.uni-bonn.de> 5188 Date: Wed May 11 09:59:39 2011 +0200 5189 5190 Restructured code in AnalysisDipoleAngularCorrelationAction::performCall(). 5191 5192 commit 32568762b5f514a4aeb82ea1a411bfdc1f623cea 5193 Author: Frederik Heber <heber@ins.uni-bonn.de> 5194 Date: Wed May 11 09:54:00 2011 +0200 5195 5196 DipoleAngularCorrelation() - External zero orientation vector may be given. 5197 5198 commit 07a47e0c167bba50906b5cc3e9289ec6e7f1c6db 5199 Author: Frederik Heber <heber@ins.uni-bonn.de> 5200 Date: Wed Oct 26 17:02:53 2011 +0200 5201 5202 Replaced enable/disable-hydrogen by internal switch. 5203 5204 - changes in Fragmentation, Graph and molecule structures. 5205 - switch is now enum HydrogenSaturation that is constant everywhere except in 5206 the Actions. FragmentMoleculeAction and DepthFirstSearchAction have new 5207 parameter DoSaturation with default value of true. 5208 5209 commit 99b0dc7573c545c2d1ab699c79e875df4d992cb9 5210 Author: Frederik Heber <heber@ins.uni-bonn.de> 5211 Date: Tue Oct 25 14:31:39 2011 +0200 5212 5213 FragmentAction now has instead of path a types parameter. 5214 5215 - new output-types parameter, is a vector<string> for giving a list of desired 5216 output types similar to SetOutputFormatAction. 5217 - TESTFIX: as vector<string> cannot have default value, we had to adapt the two 5218 regression tests Fragmentation/FragmentMolecule.. and the fragmentation 5219 tests. 5220 5221 commit babcc1820497b0340a453fa9b4442f2e06d4da34 5222 Author: Frederik Heber <heber@ins.uni-bonn.de> 5223 Date: Fri Oct 21 01:12:48 2011 +0200 5224 5225 MoleculeListClass::OutputConfigForListOfFragments() now uses FormatParserStorage. 5226 5227 - Fragmentation::FragmentMolecule(): fragments in type mpqc, pcp, and xyz are 5228 stored one after the other. 5229 - MoleculeListClass::OutputConfigForListOfFragments() expects type and uses 5230 FormatParserStorage for writing. 5231 5232 commit 09183883c4af7885de0d266ede8f220dc680b30a 5233 Author: Frederik Heber <heber@ins.uni-bonn.de> 5234 Date: Fri Oct 21 01:48:40 2011 +0200 5235 5236 FormatParserStorage now explicitly needs to know which formats to store automatically. 5237 5238 - new functions FormatParserStorage::setOutputFormat() for giving this info. 5239 - FormatParserStorage::SaveAll() only calls setOstream if the format is 5240 desired. 5241 - FIX: FormatParser_common::FormatParser_common() forget to initialize 5242 saveStream. 5243 - FormatParser_common::update() only stores when saveStream is not NULL, i.e. 5244 set. 5245 - SetOutputFormatsAction now uses add and setOutputFormat(). 5246 - InputAction also adds the format of the input file. 5247 5248 Note that this is needed to allow various output formats for BondFragments in 5249 Fragmentation without these formats eventually also being used for the writing 5250 of the main input file. 5251 5252 commit 0a7fad383c9fd7d10f25e6da08f4bf4a9f244cc6 5253 Author: Frederik Heber <heber@ins.uni-bonn.de> 5254 Date: Wed May 11 09:46:24 2011 +0200 5255 5256 Refactored part of code in DipoleAngularCorrelation into new method CalculateZeroAngularDipole(). 5257 5258 commit 1cc6612f1b1334040e49d3ffce07d7472926e3f1 5259 Author: Frederik Heber <heber@ins.uni-bonn.de> 5260 Date: Wed May 11 09:37:35 2011 +0200 5261 5262 Refactored part of DipoleAngularCorrelation into method getTrajectoryBounds(). 5263 5264 commit be0c61a73bfd606125fbc0307b518e335d3a1ce1 5265 Author: Frederik Heber <heber@ins.uni-bonn.de> 5266 Date: Wed May 11 09:42:43 2011 +0200 5267 5268 FIX: DipoleAngularCorrelation() - ZeroVector is now map over atoms, not vector over molecules. 5269 5270 - Molecules are not consistent over trajectories, atoms however are. 5271 - hence, we store the ZeroVector for each atom of a molecule, not per molecule. 5272 5273 commit 4b8630316b58cd0e54f594244af59c4f9560b633 5274 Author: Frederik Heber <heber@ins.uni-bonn.de> 5275 Date: Sat Feb 19 01:09:43 2011 +0100 5276 5277 World::setTime() now updates bond structure of system and related changes to DipoleAngularCorrelation. 5278 5279 - extended regression test Analysis/DipoleAngularCorrelation with xyz example 5280 whose bond structure is updated per time step. 5281 - FIX: DepthFirstSearchAnalysis::operator() did not reset bonds to unused. 5282 - FIX: DipoleAngularCorrelationAction has to work on atoms not molecules as the 5283 latter are subject to changes due to changing bond structure. 5284 - FIX: DipoleAngularCorrelation() re-calculates current set of molecules from 5285 the select atoms and stores first atom in values file, not molecule name. 5286 5287 commit 4fc828b58deb25fc433599e0a2567df1f7b71101 5288 Author: Frederik Heber <heber@ins.uni-bonn.de> 5289 Date: Wed Feb 16 13:56:48 2011 +0100 5290 5291 DipoleAngularCorrelation working with multi-timestep PDBs with CONECT entries. 5292 5293 - new regression test Analysis/DipolarAngularCorrelation: testing rotated water 5294 dipole. 5295 5296 commit df8759e00f2b2d82d6334340d4d0ecd763ec575b 5297 Author: Frederik Heber <heber@ins.uni-bonn.de> 5298 Date: Fri Feb 11 23:52:53 2011 +0100 5299 5300 Renamed test dirs Analysis/AngularDipoleCorrelation-... ->DipoleCorrelation-... 5301 5302 commit 208237bbbc57a8a1a39e9eba2b8f9ccd181228d8 5303 Author: Frederik Heber <heber@ins.uni-bonn.de> 5304 Date: Fri Feb 11 23:28:51 2011 +0100 5305 5306 Renamed DipoleAngularCorrelation(Action) -> DipoleCorrelation(Action) and new DipoleAngularCorrelation(Action). 5307 5308 - DipoleCorrelation performs dipole orientation calculation. 5309 - DipoleAngularCorrelation calculates the change in dipole orienation over 5310 time. 5311 - new action DipoleAngularCorrelationAction 5312 5313 commit 3a9091f060344cff8516d05b05d191d5b46b5131 5314 Author: Frederik Heber <heber@ins.uni-bonn.de> 5315 Date: Fri Oct 21 01:11:57 2011 +0200 5316 5317 TESTFIX: Fragmentation tests used FRAGMENTPREFIX instead of FILENAME. 5318 5319 - also enhanced test by checking for presence of pcp, mpqc, and xyz files in 5320 correct number. 5321 5322 commit 851be8001d3ee00fa3ac2cfd8ae65a67a8bced04 5323 Author: Frederik Heber <heber@ins.uni-bonn.de> 5324 Date: Thu Oct 20 13:05:14 2011 +0200 5325 5326 Moved functions that deal with adaptivity from fragmentation_helpers into AdaptivityMap. 5327 5328 - Adapted Fragmentation::CheckOrderAtSite() a bit as maps of adaptive values 5329 are now all encapsulated in AdaptivityMap. 5330 5331 commit 730d7a4efc3a2396723036e90420b93ff9ed3b03 5332 Author: Frederik Heber <heber@ins.uni-bonn.de> 5333 Date: Thu Oct 20 12:34:17 2011 +0200 5334 5335 New class AdaptivityMap and moved some functions from fragmentation_helpers into it. 5336 5337 commit 75363b3f88c851b63d6e61e7ac05f88177419a9c 5338 Author: Frederik Heber <heber@ins.uni-bonn.de> 5339 Date: Thu Oct 20 12:17:10 2011 +0200 5340 5341 Extracted functions from fragmentation_helpers and placed them in KeySet or Graph class. 5342 5343 - KeySet: ScanBufferIntoKeySet() 5344 - Graph: ParseKeySetFile(), StoreKeySetFile(), ParseTEFactorsFile(), 5345 StoreTEFactorsFile(), GraphToIndexedKeySet() 5346 5347 commit 42127c3196b85e2b52749471ca9014640269b9fb 5348 Author: Frederik Heber <heber@ins.uni-bonn.de> 5349 Date: Thu Oct 20 11:58:57 2011 +0200 5350 5351 Extracted definition of MoleculeListClass and put into own header module. 5352 5353 commit f7fd17250d78b009d453e4c413831fa516bb4971 5354 Author: Frederik Heber <heber@ins.uni-bonn.de> 5355 Date: Thu Oct 20 11:58:15 2011 +0200 5356 5357 FIX: Removed remnant definition of molecule::StoreForcesFile(). 5358 5359 - function has been shifted over to MoleculeListClass some time ago. 5360 5361 commit d3abb155bcc85709402bb9d4f61ee6386c074874 5362 Author: Frederik Heber <heber@ins.uni-bonn.de> 5363 Date: Thu Oct 20 11:32:35 2011 +0200 5364 5365 Extracted MoleculeLeafClass into own module. 5366 5367 - removed some unnecessary includes in moleculelist.cpp. 5368 5369 commit ba94c53b55b13c65d4a227ddc75d8d7e657d9670 5370 Author: Frederik Heber <heber@ins.uni-bonn.de> 5371 Date: Thu Oct 20 11:14:56 2011 +0200 5372 5373 Removed modules graph.[ch]pp. 5374 5375 - typedef of KeyStack is placed in fragmentation_helpers. 5376 5377 commit dadc744c2f6ef8c2075a7e5a791c33b711bd6e20 5378 Author: Frederik Heber <heber@ins.uni-bonn.de> 5379 Date: Thu Oct 20 11:02:58 2011 +0200 5380 5381 Extracted Graph (map of KeySets) into own class from graph.hpp. 5382 5383 - Placed InsertGraphIntoGraph() as its member function. 5384 5385 commit f0674ad457e26229a9fc919b6f3659591649bf06 5386 Author: Frederik Heber <heber@ins.uni-bonn.de> 5387 Date: Thu Oct 20 10:17:18 2011 +0200 5388 5389 Extracted KeySet from graph.hpp and made into distinct class. 5390 5391 - member function operator<() replaces former KeyCompare struct. 5392 5393 commit 246e135b36a823fc68a5447dc711b024f2d49ce7 5394 Author: Frederik Heber <heber@ins.uni-bonn.de> 5395 Date: Wed Oct 19 19:07:28 2011 +0200 5396 5397 Placed FragmentMolecule, FragmentBOSSANOVA and subfunctions into own class Fragmentation. 5398 5399 commit 212c179a20d30dfd1c8d9f011f4617d5bc87f1fc 5400 Author: Frederik Heber <heber@ins.uni-bonn.de> 5401 Date: Tue Oct 18 15:16:51 2011 +0200 5402 5403 Placed all functions related to BondsPerSPList into own class BondsPerShortestPath. 5404 5405 commit d0b375b2180798e3740178ea430700a3329073f6 5406 Author: Frederik Heber <heber@ins.uni-bonn.de> 5407 Date: Tue Oct 18 15:28:37 2011 +0200 5408 5409 Removed ShortestPathList. 5410 5411 - there have been references in the code that ShortestPathList is probably 5412 obsolete meanwhile (seemingly it is). 5413 5414 commit f67817f7834dceb2a5c0a857fa17b2481b42a01b 5415 Author: Frederik Heber <heber@ins.uni-bonn.de> 5416 Date: Tue Oct 18 14:26:01 2011 +0200 5417 5418 Extracted power set generation into own class PowerSetGenerator. 5419 5420 commit 23fb721d34ba720a6277c697c046193f6203fb09 5421 Author: Frederik Heber <heber@ins.uni-bonn.de> 5422 Date: Tue Oct 18 14:02:04 2011 +0200 5423 5424 Encapsulated UniqueFragments::Root with getter/setter. 5425 5426 commit f6d1d0176076be85059fb287303c6172d2cca0a6 5427 Author: Frederik Heber <heber@ins.uni-bonn.de> 5428 Date: Tue Oct 18 13:56:39 2011 +0200 5429 5430 Made some member variable of UniqueFragments private. 5431 5432 commit a03d25a95438c62d1f4eccba93c94bb3f6281096 5433 Author: Frederik Heber <heber@ins.uni-bonn.de> 5434 Date: Tue Oct 18 13:53:21 2011 +0200 5435 5436 Placed all routines working on UniqueFragments struct inside this class. 5437 5438 - changed struct to class. 5439 5440 commit d9a032dc6846bb5d2cf9a7b5a184c2a68e344dcd 5441 Author: Frederik Heber <heber@ins.uni-bonn.de> 5442 Date: Tue Oct 18 13:52:27 2011 +0200 5443 5444 Initiated own conveniance library for folder src/Fragmentation. 5445 5446 - Makefile.am included in src/Makefile.am, library included in 5447 UIElements/Makefile.am. 5448 5449 commit ba182315c666d68dd36bb0ef46e7f304d4644105 5450 Author: Frederik Heber <heber@ins.uni-bonn.de> 5451 Date: Tue Oct 18 11:12:25 2011 +0200 5452 5453 Moved all helpers fragmentation functions into folder src/Fragmentation. 5454 5455 commit 70879889df9c3fa9ecec560fe07215db0e872f09 5456 Author: Frederik Heber <heber@ins.uni-bonn.de> 5457 Date: Tue Oct 18 10:50:19 2011 +0200 5458 5459 FIX: removed -version-info from libMolecuilderGraph. 5460 5461 - it's just a convenience library that have no versioning. 5462 5463 commit ec87e45589461e444811eea2933d639a2f8b3e6a 5464 Author: Frederik Heber <heber@ins.uni-bonn.de> 5465 Date: Mon Oct 17 17:23:42 2011 +0200 5466 5467 Rewrite of CheckAgainstAdjacencyFile. 5468 5469 - we now construct two multimaps -- one from file, the other from World's 5470 selected atoms -- and compare these two. 5471 - added unit test on the class. 5472 5473 commit 5fd0f4d49b0461d32ede06c7157852e0fb66eb04 5474 Author: Frederik Heber <heber@ins.uni-bonn.de> 5475 Date: Tue Oct 25 11:48:21 2011 +0200 5476 5477 Set version to 1.1.5 5478 5479 - Molecuilder library is now 5:1:0. 5480 5481 - Codename "Melli Beese" (first female German aviator, her flight license 5482 number is 115). 5483 5484 commit f9495313044c5d59ac825fc0648e8ca03265262e 5485 Author: Frederik Heber <heber@ins.uni-bonn.de> 5486 Date: Tue Oct 25 11:47:01 2011 +0200 5487 5488 DISTCHECKFIX: regression test Fragmentations/Joining required writable fragment dirs. 5489 5490 commit 360c8bbc74f8b9ba85e29afb3769876f4b7fd8b1 5491 Merge: fa9d1d1 752bb4e 5492 Author: Frederik Heber <heber@ins.uni-bonn.de> 5493 Date: Fri Oct 21 00:40:59 2011 +0200 5494 5495 Merge branch 'Adding_Psi3Parser' into stable 5496 5497 Conflicts: 5498 src/Parser/FormatParser.hpp 5499 src/Parser/unittests/ParserTremoloUnitTest.cpp 5500 5501 Issues: 5502 - Element and periodentafel have been moved to folder src/Element. 5503 5504 commit fa9d1d1f9bdda596edc780e18f57c4ea62847227 5505 Author: Frederik Heber <heber@ins.uni-bonn.de> 5506 Date: Thu Oct 20 23:29:24 2011 +0200 5507 5508 FIX: CreateAdjacencyAction now uses BondGraph::CreateAdjacency. 5509 5510 commit 539f3262192fc147f35ffbe84d178021484129ba 5511 Author: Frederik Heber <heber@ins.uni-bonn.de> 5512 Date: Thu Oct 20 15:19:21 2011 +0200 5513 5514 Enhanced BondGraph::CreateAdjacency() a bit. 5515 5516 commit 9317be0fb11b31ce2211407310d3957055993f16 5517 Author: Frederik Heber <heber@ins.uni-bonn.de> 5518 Date: Thu Oct 20 15:18:47 2011 +0200 5519 5520 Replaced molecule::atomVector by World::AtomComposite everywhere. 5521 5522 commit 02504849fae5321dbdba4e3e930f7a9dda6edd06 5523 Author: Frederik Heber <heber@ins.uni-bonn.de> 5524 Date: Thu Oct 20 14:39:01 2011 +0200 5525 5526 Enhanced Box::periodicDistanceSquared() by an internal_explode(). 5527 5528 - internal_explode() works on an static internal VECTORSET(list) such that 5529 there is no need for repeated memory allocation/deallocation for said list. 5530 5531 commit 93d78e8de4fa69e04316803de231b7406107b2d9 5532 Author: Frederik Heber <heber@ins.uni-bonn.de> 5533 Date: Thu Oct 20 10:49:51 2011 +0200 5534 5535 TEST: Added missing atom keyword to regression tests on selection of cuboid and sphere. 5536 5537 commit a8b9136123589e07842ffdaf5264dce9ddfeae73 5538 Merge: 9c27b0a 6a51087 5539 Author: Frederik Heber <heber@ins.uni-bonn.de> 5540 Date: Thu Oct 20 10:21:40 2011 +0200 5541 5542 Merge branch 'Fix_Test-Fragmentation_Header' into stable 5543 5544 commit 6a5108701db116011bdc260e154e48610a36cc4a 5545 Author: Frederik Heber <heber@ins.uni-bonn.de> 5546 Date: Thu Oct 20 10:20:53 2011 +0200 5547 5548 FIX: Header name of Fragmentations test was wrong. 5549 5550 commit 9c27b0a005883e62a6fe86a9c2d191e872d16452 5551 Merge: 45f835e b1ac7aa 5552 Author: Frederik Heber <heber@ins.uni-bonn.de> 5553 Date: Thu Oct 20 09:04:50 2011 +0200 5554 5555 Merge branch 'MatrixContainer_Serialization_rewrite' into stable 5556 5557 commit b1ac7aab284bf1319974b1e2e835aba2d14405c8 5558 Author: Frederik Heber <heber@ins.uni-bonn.de> 5559 Date: Mon Sep 19 17:16:12 2011 +0200 5560 5561 Added Undo/Redo capabilities to BondLengthTableAction. 5562 5563 - thanks to serialization of BondGraph. 5564 5565 commit 8297610a06ece879892f92f6ac27321f60251965 5566 Author: Frederik Heber <heber@ins.uni-bonn.de> 5567 Date: Mon Sep 19 17:15:36 2011 +0200 5568 5569 New function BondGraph::CleanupBondLengthTable(). 5570 5571 - allows for removing present BondLengthMatrix. 5572 5573 commit 1ac24b80f6b3f8aba2fbfb1c14a5d63c284fbc40 5574 Author: Frederik Heber <heber@ins.uni-bonn.de> 5575 Date: Fri Sep 16 19:45:13 2011 +0200 5576 5577 Added unit test function SerializationTest to BondGraphUnitTest. 5578 5579 commit f007a17a35c1dd25022c6a180a76cf04611c9546 5580 Author: Frederik Heber <heber@ins.uni-bonn.de> 5581 Date: Fri Sep 16 19:37:27 2011 +0200 5582 5583 Added serialization capability to class BondGraph. 5584 5585 - note that we do not serialize BondThreshold in BondGraph, is nonsense for a 5586 static member anyway. 5587 - added private default constructor for BondGraph. 5588 5589 commit 9b6663a9104435e3330a5789ca82ba9e6f3aa7be 5590 Author: Frederik Heber <heber@ins.uni-bonn.de> 5591 Date: Fri Sep 16 19:47:32 2011 +0200 5592 5593 Added operator==() to BondGraph. 5594 5595 - also added new unit test function EqualityTest to BondGraphUnitTest. 5596 5597 commit 2d5fee5a517443fd00a0fb14e2ac95c440400ff6 5598 Author: Frederik Heber <heber@ins.uni-bonn.de> 5599 Date: Fri Sep 16 19:29:04 2011 +0200 5600 5601 Added unit test functions SerializationTest for KeySetsContainer and MatrixContainer. 5602 5603 commit 942906bb18ea082db1ef88cc4736b482eb87e71a 5604 Author: Frederik Heber <heber@ins.uni-bonn.de> 5605 Date: Tue Sep 20 12:10:14 2011 +0200 5606 5607 Added serialize() template functions to MatrixContainer and KeySetsContainer. 5608 5609 - also we now require CodePatterns 1.1.6 due to valarray inclusion before MemDebug. 5610 5611 commit 752bb4eebc964734dfa22c23ba3e97bd95f58501 5612 Author: Frederik Heber <heber@ins.uni-bonn.de> 5613 Date: Thu Oct 6 16:05:03 2011 +0200 5614 5615 Added regression test Parser/Psi3. 5616 5617 - this is heavily inspired from Parser/Mpqc. 5618 5619 commit d640ea4f513e93f75000fdadbe0789cf1671a383 5620 Author: Frederik Heber <heber@ins.uni-bonn.de> 5621 Date: Thu Oct 6 15:55:45 2011 +0200 5622 5623 Implemented Psi3Parser::save(). 5624 5625 - also we now have working unit test on this functionality. 5626 5627 commit 9011c1ce1292bb6459bc13092fe0c8ad098f64ec 5628 Author: Frederik Heber <heber@ins.uni-bonn.de> 5629 Date: Thu Oct 6 15:55:16 2011 +0200 5630 5631 Added atom::OutputPsi3Line() to output a Psi3 conforming geometry line. 5632 5633 commit 120a864188be57481b4c722362c9ea2925039878 5634 Author: Frederik Heber <heber@ins.uni-bonn.de> 5635 Date: Thu Oct 6 15:54:34 2011 +0200 5636 5637 TESTFIX: Added check whether streams are empty to ParserMpqcUnitTest::writeMpqcTest(). 5638 5639 commit 1b145f245526521e82fb04541ca99bbfce500a42 5640 Author: Frederik Heber <heber@ins.uni-bonn.de> 5641 Date: Fri Sep 16 19:06:19 2011 +0200 5642 5643 Added operator==() to KeySetsContainer and MatrixContainer. 5644 5645 - also added unit test functions for both. 5646 5647 commit 9758f70c8acad564988f204ebc13d19c82b5fa37 5648 Author: Frederik Heber <heber@ins.uni-bonn.de> 5649 Date: Fri Sep 16 18:24:18 2011 +0200 5650 5651 Removed C arrays in KeySetsContainer and MatrixContainer. 5652 5653 - replaced by std::vector<>s. 5654 - transition is so far very minimal, external (range) counters are still 5655 present. 5656 - extracted allocation of memory into own block in 5657 MatrixContainer::parseMatrix(). 5658 5659 commit a9b86da232c3a8beead3fa86a30c4841166788f7 5660 Author: Frederik Heber <heber@ins.uni-bonn.de> 5661 Date: Thu Sep 15 18:02:17 2011 +0200 5662 5663 Split up modules parser.[ch]pp into one module per class. 5664 5665 - fixed inclusion of parser.hpp in some other files. 5666 - for the moment we have to use libMolecuilderUI for joiner and analyzer. 5667 - Removed inline definition from FixedDigitNumber(). 5668 5669 commit c170915bbc3f208c828f605923829245c6a832b9 5670 Author: Frederik Heber <heber@ins.uni-bonn.de> 5671 Date: Thu Oct 6 15:54:10 2011 +0200 5672 5673 Added convenience function Psi3Parser_Parameters::getReferenceName(). 5674 5675 commit a67cf089d410daed85c0fd273c385b1120390f24 5676 Author: Frederik Heber <heber@ins.uni-bonn.de> 5677 Date: Thu Oct 6 15:52:49 2011 +0200 5678 5679 Renamed Psi3Parser_Parameters::multipParam to ::multiplicityParam. 5680 5681 commit 032f31cf80e8ee3e35032df0bfd39da32b7db018 5682 Author: Frederik Heber <heber@ins.uni-bonn.de> 5683 Date: Thu Oct 6 13:15:56 2011 +0200 5684 5685 Implemented Psi3Parser::load(). 5686 5687 - also we now have working unit test on this functionality. 5688 5689 commit 7f570c6517b39d5c867f97f951a6d8b7300e1cdb 5690 Author: Frederik Heber <heber@ins.uni-bonn.de> 5691 Date: Thu Oct 6 13:12:35 2011 +0200 5692 5693 Moved operator<<() and operator>>() from Mpqc/Psi3Parser_Parameters into FormatParser_Parameters. 5694 5695 - setting and getting of values are generalized. 5696 5697 commit f758dd8abf6c4577aedad2b0a76999a202061c35 5698 Author: Frederik Heber <heber@ins.uni-bonn.de> 5699 Date: Wed Oct 5 17:46:00 2011 +0200 5700 5701 ParserPsi3UnitTest::ParameterSetterTest() is working. 5702 5703 commit 154a459603c8dfe4f80902f3317a2b16ae570d5d 5704 Author: Frederik Heber <heber@ins.uni-bonn.de> 5705 Date: Wed Oct 5 17:17:27 2011 +0200 5706 5707 ParserPsi3UnitTest::ParameterCloneTest() is working. 5708 5709 commit 1bef077d3656c91b027c4cf35ca7eb3e79969644 5710 Author: Frederik Heber <heber@ins.uni-bonn.de> 5711 Date: Wed Oct 5 10:52:25 2011 +0200 5712 5713 Added first working version of a Psi3Parser. 5714 5715 - is so far mostly copy&paste from MpqcParser. 5716 - important parameters all are in (including valid ranges). 5717 - also added unit tests. 5718 5719 commit ee50c1deef0fe012d0eaf1e68d36c5bb53c0b663 5720 Author: Frederik Heber <heber@ins.uni-bonn.de> 5721 Date: Fri Sep 30 18:20:34 2011 +0200 5722 5723 Complete rewrite of MpqcParser_Parameters to incorporate new Parameter(Storage) structure. 5724 5725 - FormatParser_Parameters now contains a ParameterStorage instance which 5726 contains all parameters and is easy to clone. 5727 - MpqcParser_Parameters is basically just an Init() function that fills this 5728 storage for the specific case of the FormatParser<mpqc>. 5729 - additionally, there are some convenience functions, enums and maps which 5730 contains strings and make setting and getting parameters more easy. 5731 - adapted MpqcParser. 5732 - adapted Unit test for MpqcParser accordingly: 5733 - no more tests on type 5734 - TESTFIX: regression test Parser/Mpqc/post/empty.in was CLHF instead of 5735 default MBPT2. As the cloning is now working flawlessly, this has been 5736 fixed. 5737 5738 commit 89a67feeca325baa0a621159f142173ffe172e6d 5739 Author: Frederik Heber <heber@ins.uni-bonn.de> 5740 Date: Fri Sep 30 18:19:34 2011 +0200 5741 5742 Added StringParameter as ContinuousParameter<string> as string do not have any sensible valid range. 5743 5744 - this does not inherit any StringValue but implements ValueInterface right 5745 away. 5746 - also added unit test. 5747 5748 commit c0da07019a983e8a4d1b525a29d74725a5c59bf2 5749 Author: Frederik Heber <heber@ins.uni-bonn.de> 5750 Date: Fri Sep 30 18:02:47 2011 +0200 5751 5752 Added constructor that set value to ContinuousParameter and DiscreteParameter. 5753 5754 commit ec0acc0fca5519d83e2d28d3453c58ad0e82b4e2 5755 Author: Frederik Heber <heber@ins.uni-bonn.de> 5756 Date: Fri Sep 30 15:00:15 2011 +0200 5757 5758 Added ParameterStorage which is a Registry for Parameter instances. 5759 5760 - also added unit test. 5761 5762 commit 6b522838f6543ee1ab24529fca07826520e8de92 5763 Author: Frederik Heber <heber@ins.uni-bonn.de> 5764 Date: Tue Oct 4 10:35:42 2011 +0200 5765 5766 Added operator==() to Continuous- and DiscreteParameter classes. 5767 5768 - added comparator function for both Parameter types. 5769 - added unit tests on these. 5770 5771 commit 39fa96414c2fb9b7b844fefc27eef74da86fe2ac 5772 Author: Frederik Heber <heber@ins.uni-bonn.de> 5773 Date: Tue Oct 4 10:34:41 2011 +0200 5774 5775 Added variable name and function getName() to interface Parameter. 5776 5777 - a Parameter always must have a name (cstors without params are private). 5778 - this is preparatory for storage inside a Registry<Parameter>. 5779 - adapted Continuous- and DiscreteParameter's cstors accordingly, pass on to 5780 Parameter's cstor. 5781 5782 commit c4afd1ada21b7e8c7c09cb2144a757477ed4b7f4 5783 Author: Frederik Heber <heber@ins.uni-bonn.de> 5784 Date: Fri Sep 30 14:29:13 2011 +0200 5785 5786 Added Continuous- and DiscreteParameter classes. 5787 5788 - new interface class Parameter which is a clonable ValueInterface. 5789 - Continuous- and DiscreteParameter implement the clone() function for 5790 Continuous- and DiscreteValue respectively. 5791 - also added unit tests on each clone function. 5792 5793 commit 5f61dde6d65664e1c8372220d4cb8bcc04b686d1 5794 Author: Frederik Heber <heber@ins.uni-bonn.de> 5795 Date: Mon Sep 12 11:03:09 2011 +0200 5796 5797 Removed usage of namespace std in module parser.[ch]pp. 5798 5799 commit 3613a21865200b0e605c9c0b4a60e523f04b1811 5800 Author: Frederik Heber <heber@ins.uni-bonn.de> 5801 Date: Mon Sep 19 16:44:45 2011 +0200 5802 5803 FIX: periodentafel::LoadPeriodentafel() did not load color db from path. 5804 5805 commit 4ae823cec9aee17aaa21ae3a9dde58110c0db527 5806 Author: Frederik Heber <heber@ins.uni-bonn.de> 5807 Date: Mon Sep 19 16:43:55 2011 +0200 5808 5809 periodentafel may or may not Load internal databases in its cstor. 5810 5811 - loading extracted into private ScanPeriodentafel() function. 5812 5813 commit 9d4ff35ec4a64e47b992434a7cedc91dad9839ec 5814 Author: Frederik Heber <heber@ins.uni-bonn.de> 5815 Date: Tue Sep 20 11:40:55 2011 +0200 5816 5817 Reduced library dependencies of RandomNumbers and BoxUnitTest. 5818 5819 commit 592be9a388decc9a41c3507b7e5f23289522e8f5 5820 Author: Frederik Heber <heber@ins.uni-bonn.de> 5821 Date: Mon Sep 19 17:29:46 2011 +0200 5822 5823 Moved unitests on Element... into subfolder src/Element/unittests. 5824 5825 - new Makefile is included in src/unitests/Makefile.am. 5826 5827 commit 3bdb6de29d0b7776bda5bfd425ac0a815e8a8d88 5828 Author: Frederik Heber <heber@ins.uni-bonn.de> 5829 Date: Fri Sep 16 12:07:33 2011 +0200 5830 5831 Moved all stuff related to elements into own subfolder and has its own convenience library. 5832 5833 - this induced massive changes in includes in other files. 5834 - we adapted PeriodentafelUnitTest to not get instance from world, but we 5835 create it ourselves. 5836 - also moved all .db files related to elements into subfolder Element/. 5837 5838 commit 2fadb6f6487d66855d2a973ab3e063aa3e0af5b6 5839 Author: Frederik Heber <heber@ins.uni-bonn.de> 5840 Date: Fri Sep 16 12:11:22 2011 +0200 5841 5842 Helpers now reside in own convenience library. 5843 5844 - this allows for stricter dependencies for joiner and analyzer. 5845 5846 commit dd9d69bdbc669c5669e64c225c4cde9454b3be33 5847 Author: Frederik Heber <heber@ins.uni-bonn.de> 5848 Date: Thu Sep 15 18:03:07 2011 +0200 5849 5850 Prefixed double inclusion-preventing defines in header files in Helpers/ with HELPERS_. 5851 5852 - this avoids name conflicts with other defs.hpp and helpers.hpp 5853 5854 commit 9b5a2c623129c569571d4a77eabff8bb2bc84231 5855 Author: Frederik Heber <heber@ins.uni-bonn.de> 5856 Date: Mon Sep 19 17:44:11 2011 +0200 5857 5858 Moved analysis modules into subfolder Analysis along with its unit tests. 5859 5860 - new Makefiles are included in src/Makefile.am and src/unittests/Makefile.am. 5861 5862 commit 498dddb270b5a81a0dc413c9707b1fd0ba8ff7fb 5863 Author: Frederik Heber <heber@ins.uni-bonn.de> 5864 Date: Fri Sep 30 14:26:44 2011 +0200 5865 5866 Added operator==() and operator!=() to Continuous- and DiscreteValue. 5867 5868 - ValueInterface is now inherited virtually. 5869 - this is preparatory for class Parameter which is a clonable ...Value. 5870 - we need comparators for the unit tests on that. 5871 - unit test added for comparators. 5872 5873 commit 84e752ece4991982e2abc41c173b1a6d98ab98b0 5874 Author: Frederik Heber <heber@ins.uni-bonn.de> 5875 Date: Fri Sep 30 11:40:49 2011 +0200 5876 5877 Moved Continuous- and DiscreteValue into subfolder Parameters. 5878 5879 - this folder is to contain all stuff related to internal parameters of the 5880 parsers. 5881 5882 commit a7d753240301a775068e9e813720c7f0c9744b03 5883 Author: Frederik Heber <heber@ins.uni-bonn.de> 5884 Date: Fri Sep 30 11:32:43 2011 +0200 5885 5886 Extended DiscreteValue to ContinuousValue and added ValueInterface for both. 5887 5888 - new template class ContinuousValue representing a continous value with a 5889 valid range. 5890 - in order to store both DiscreteValue and ContinuousValue as parameters, both 5891 have a common interface ValueInterface that works in string only. 5892 - both classes have extensive unit tests. 5893 5894 commit 3308b607408a811d157f5645f1d4a94e5482ebd3 5895 Author: Frederik Heber <heber@ins.uni-bonn.de> 5896 Date: Thu Sep 29 13:03:29 2011 +0200 5897 5898 FIX: 3 out of 4 unit tests have not been told to throw AssertException instead of abort. 5899 5900 commit e09d671ae5398d72cd8e8524d71f9f9b44e6b4d6 5901 Author: Frederik Heber <heber@ins.uni-bonn.de> 5902 Date: Thu Sep 29 09:58:30 2011 +0200 5903 5904 Added class DiscreteValue that contains enums. 5905 5906 - class has extensive unit test. 5907 - this should replace enums in MpqcParser_Parameters. 5908 5909 commit d3d6c66c9874b31665d602a9fb2803e8c7fabdb3 5910 Author: Frederik Heber <heber@ins.uni-bonn.de> 5911 Date: Wed Sep 28 14:58:10 2011 +0200 5912 5913 Added templated InvertMap function to ease MpqcParser_Parameters::Init(). 5914 5915 commit 765f16856478316e039b16a1098e4f2a6bb42332 5916 Author: Frederik Heber <heber@ins.uni-bonn.de> 5917 Date: Tue Sep 27 21:04:36 2011 +0200 5918 5919 Huge Refactoring of FormatParserStorage and all FormatParser's. 5920 5921 FormatParser: 5922 - FormatParser is now a template, specialized by enum ParserTypes. 5923 - new struct FormatParserTrait is as well a template of same type, containing 5924 parser-specific information in static entities. 5925 - all FormatParsers are now specializations of this FormatParser. 5926 - all Parsers can be accessed in a unified manner, given in the new class 5927 FormatParserInterface. 5928 - common functions are placed in FormatParser_common.hpp as one cannot 5929 partially specialize a function class. 5930 - some boost preprocessor magic is used in ParserTypes and FormatParserTraits 5931 to define the template specialization or to create the ParserTypes 5932 enumeration. 5933 5934 FormatParserStorage: 5935 - We construct all lookup tables and alikes via boost preprocessor magic from 5936 a list of all available parser (enums). 5937 - we use the templated getParser() and addParser() functions to serve parsers 5938 to the outside. Instances are as usual created only once. 5939 5940 Tests: 5941 - tests only had to be changed because of the "renaming" of the Parsers. 5942 5943 commit 9a6b76ea7056096d32eb9b5d2f5a438af7e0f720 5944 Author: Frederik Heber <heber@ins.uni-bonn.de> 5945 Date: Tue Sep 27 12:38:50 2011 +0200 5946 5947 Refactored enumeration ParserTypes into extra module. 5948 5949 commit ebb87c7a55e63dedb418fb7cf9a03772ada9111e 5950 Author: Frederik Heber <heber@ins.uni-bonn.de> 5951 Date: Tue Sep 27 12:38:12 2011 +0200 5952 5953 FIX: Added check whether suffix belongs to well-defined parser type. 5954 5955 commit 6d0f058e7c5c56b22245c79b218fae3eadf5b161 5956 Author: Frederik Heber <heber@ins.uni-bonn.de> 5957 Date: Tue Sep 27 11:59:04 2011 +0200 5958 5959 Removed all FormatParserStorage::get() and ::set(). 5960 5961 - we now call directly the template getParser<>(), setParser<>() versions in 5962 the few places needed. 5963 - simplified ::load() and ::save() a lot by using getTypeFromSuffix() instead 5964 of the ugly if sequence. 5965 5966 commit e114e3248317a8dd940a02e562b964986a19cba6 5967 Author: Frederik Heber <heber@ins.uni-bonn.de> 5968 Date: Tue Sep 27 11:34:19 2011 +0200 5969 5970 FormatParserStorage::add...() and ::get...() now use internally the templated functions. 5971 5972 commit db67ea17aa551d3049097b9c184e75073c2fa662 5973 Author: Frederik Heber <heber@ins.uni-bonn.de> 5974 Date: Tue Sep 27 10:32:36 2011 +0200 5975 5976 Added template getParser/setParser to FormatParserStorage. 5977 5978 - specialized templated getParser/setParser in FormatParserStorage will soon 5979 replace all the add..() and get...() functions. 5980 5981 commit 629e436dfaae8a6f744563906c2fb347afa4a696 5982 Author: Frederik Heber <heber@ins.uni-bonn.de> 5983 Date: Mon Sep 19 17:33:51 2011 +0200 5984 5985 Moved unitests on BondGraph into subfolder src/Graph/unittests. 5986 5987 - new Makefile is included in src/unitests/Makefile.am. 5988 5989 commit 45f835e8c203e278cf19fe6699144297ddcc29a7 5990 Author: Frederik Heber <heber@ins.uni-bonn.de> 5991 Date: Fri Oct 14 14:10:02 2011 +0200 5992 5993 Added Undo/Redo capabilities to RepeatBoxAction. 5994 5995 - adapted regression tests. 5996 5997 commit 34fbb3fde7c90f235a86b15ee32ef575800bb53f 5998 Author: Frederik Heber <heber@ins.uni-bonn.de> 5999 Date: Fri Oct 14 14:09:30 2011 +0200 6000 6001 FIX: CopyAction did not simply use removeAtomsinMolecule(). 6002 6003 commit cbfb9a5a855848ef4183265a6f39366c22d0c5df 6004 Author: Frederik Heber <heber@ins.uni-bonn.de> 6005 Date: Wed Sep 14 18:12:12 2011 +0200 6006 6007 Added Undo/Redo capabilities to ScaleBoxAction. 6008 6009 - adapted regression tests. 6010 6011 commit 7b4a290b3d37b54a794d7dc819b69614c3c9a67f 6012 Author: Frederik Heber <heber@ins.uni-bonn.de> 6013 Date: Wed Sep 14 18:00:31 2011 +0200 6014 6015 Added Undo/Redo capabilities to ChangeBoxAction. 6016 6017 - removed XFAIL from regression tests. 6018 6019 commit de7d1dba7824fa30f6db19bd9e5951529efb0758 6020 Author: Frederik Heber <heber@ins.uni-bonn.de> 6021 Date: Wed Sep 14 17:58:15 2011 +0200 6022 6023 Added Undo/Redo capabilities to CenterOnEdgeAction. 6024 6025 - adapted regression test. 6026 6027 commit 23526ca91bfbf2679afc5840c9ee7c434447dce7 6028 Author: Frederik Heber <heber@ins.uni-bonn.de> 6029 Date: Wed Sep 14 17:46:05 2011 +0200 6030 6031 Added Undo/Redo capabilities to CenterInBoxAction. 6032 6033 - adapted regression test. 6034 6035 commit e670e4be73c7724177f5fef761653d7f8432d689 6036 Author: Frederik Heber <heber@ins.uni-bonn.de> 6037 Date: Wed Sep 14 17:25:14 2011 +0200 6038 6039 Added Undo/Redo capabilities to BoundInBoxAction. 6040 6041 - also added regression test. 6042 6043 commit 9cd6bf995419cdfd5a5058be82ebeb15acdb539c 6044 Author: Frederik Heber <heber@ins.uni-bonn.de> 6045 Date: Mon Sep 12 11:07:45 2011 +0200 6046 6047 Added Undo/Redo capabilities to AddEmptyBoundaryAction. 6048 6049 - adapted regression tests. 6050 6051 commit ce133f70502bb6727370591a8ac8595935e943e1 6052 Author: Frederik Heber <heber@ins.uni-bonn.de> 6053 Date: Wed Oct 12 16:29:04 2011 +0200 6054 6055 Initial commit for enhancing doxygen documentation. 6056 6057 - added .dox types to FILE_TYPES in Doxyfile. 6058 - added folders documentation to both src/ and LinearAlgebra/src. 6059 - added some preliminary files to both which should be filled. 6060 - the idea is to have all documentation that is not associable to a specific 6061 class (e.g. serialization) in an extra file. 6062 - also we should introduce groups and generally order and enhance 6063 documentation. 6064 6065 commit 0b004b9c4dd37a728f061baad5c2608f74225c66 6066 Author: Frederik Heber <heber@ins.uni-bonn.de> 6067 Date: Mon Sep 19 17:49:27 2011 +0200 6068 6069 Moved all unittests on Tesselation into subfolder Tesselation/unittests. 6070 6071 - new Makefile.am is included in src/unittests/Makefile.am. 6072 6073 commit d127c80ca46c99e6f56f7584ee0691672287c486 6074 Author: Frederik Heber <heber@ins.uni-bonn.de> 6075 Date: Thu Sep 15 16:51:45 2011 +0200 6076 6077 Moved modules related to Tesselation into own source subfolder. 6078 6079 - This required quite a lot of changes in includes. 6080 6081 commit feb7dfc315521e9dc2c1caf69c64722e14330c18 6082 Author: Frederik Heber <heber@ins.uni-bonn.de> 6083 Date: Fri Sep 16 18:55:27 2011 +0200 6084 6085 Added unittests to Fragmentation subfolder. 6086 6087 - added empty tests for KeySetsContainer and MatrixContainer. 6088 6089 commit bc28b0f3f8149d6034a044085ee96722cb9a75e3 6090 Author: Frederik Heber <heber@ins.uni-bonn.de> 6091 Date: Thu Sep 15 16:43:32 2011 +0200 6092 6093 Moved modules associated with fragmentation into source subfolder Fragmentation. 6094 6095 commit 878044f2802b7b4799a56748e65367ee5b94e541 6096 Author: Frederik Heber <heber@ins.uni-bonn.de> 6097 Date: Thu Oct 13 20:26:44 2011 +0200 6098 6099 Added (simple) regression tests for joiner and analyzer for heptan. 6100 6101 - this is preparatory for rewrite of MatrixContainer upon which both rely. 6102 6103 commit 88f62988b19f6b6b102c0be34eb40d8e219b8414 6104 Author: Frederik Heber <heber@ins.uni-bonn.de> 6105 Date: Thu Sep 15 15:27:16 2011 +0200 6106 6107 Added initial testset of files for regression test on joiner. 6108 6109 commit a8b10ae6556ba2f63b2925e9a9fecdaefaed1d93 6110 Author: Frederik Heber <heber@ins.uni-bonn.de> 6111 Date: Fri Sep 16 12:11:59 2011 +0200 6112 6113 FIX: Shifted ANALYSIS... in src/Makefile.am to alphabetical ordering. 6114 6115 commit f17b5fdb567912c8c5f01b11c6ce2abb2240431c 6116 Author: Frederik Heber <heber@ins.uni-bonn.de> 6117 Date: Thu Sep 15 18:04:31 2011 +0200 6118 6119 FIX: FormatParser does not depend on parser.hpp. 6120 6121 commit 5930bc9d068e2a8cc5f19f5538b7f1a26949ef23 6122 Author: Frederik Heber <heber@ins.uni-bonn.de> 6123 Date: Thu Sep 15 18:03:59 2011 +0200 6124 6125 FIX: AtomIdDescriptor just needs types.hpp include. 6126 6127 commit 2329be5e074c3d04bef8d010b88f72b525e01901 6128 Author: Frederik Heber <heber@ins.uni-bonn.de> 6129 Date: Mon Sep 12 11:01:53 2011 +0200 6130 6131 FIX: Inclusion of Box.hpp is not required in AtomCommandLineQuery. 6132 6133 commit 61ff0550acb166bb41ba1ba619e3778004377a74 6134 Author: Frederik Heber <heber@ins.uni-bonn.de> 6135 Date: Mon Sep 19 16:46:28 2011 +0200 6136 6137 FIX: ElementDbAction uses CleanupPeriodentafel() instead of deleting the instance. 6138 6139 commit ce7fdce7330c2c978a3bf964316aa2dda1dcd1e3 6140 Author: Frederik Heber <heber@ins.uni-bonn.de> 6141 Date: Fri Sep 9 20:42:38 2011 +0200 6142 6143 HUGE: All Action-related codes resides now in namespace MoleCuilder. 6144 6145 - removed all namespace std in Actions..., replaced by MoleCuilder. 6146 6147 commit e0f8c8e2730498c806c8d1900d0c5e3189db8e51 6148 Author: Frederik Heber <heber@ins.uni-bonn.de> 6149 Date: Fri Oct 7 13:01:56 2011 +0200 6150 6151 Set version to 1.1.4. 6152 6153 - FIX: Removed AC_SUBST for LinearAlgebra version. 6154 6155 - Codename "Jiroemon Kimura" (with currently 114 years one of the oldest people 6156 ever and still kicking). 6157 6158 commit 7ff53fd8c0022543fcd10df1c914fc53da585a40 6159 Author: Frederik Heber <heber@ins.uni-bonn.de> 6160 Date: Thu Oct 13 11:20:44 2011 +0200 6161 6162 DISTCHECKFIX: moc_*.cpp and ui_*.h files added to MOSTLYCLEANFILES. 6163 6164 commit bcedf7cc05d257a6654f6aca74ed533f01f2dec1 6165 Author: Frederik Heber <heber@ins.uni-bonn.de> 6166 Date: Wed Oct 12 16:24:26 2011 +0200 6167 6168 DISTCHECKFIX: Added Qt's .ui and .ui.h files to nobase_..._HEADERS such that they are distributed, too. 6169 6170 commit 6016320a5194ab36544ea47ed7dceac6cb61f82e 6171 Author: Frederik Heber <heber@ins.uni-bonn.de> 6172 Date: Wed Oct 12 16:24:07 2011 +0200 6173 6174 DISTCHECKFIX: Added missing m4-files to EXTRA_DIST in Makefile.am. 6175 6176 commit c074cc5fab45d02fbfcd8b94007c09ae41d6209e 6177 Author: Frederik Heber <heber@ins.uni-bonn.de> 6178 Date: Mon Sep 12 10:59:19 2011 +0200 6179 6180 LinearAlgebra version is now 1.0.3. 6181 6182 - Library version is now 3:0:0, API version is 1.0.3. 6183 6184 commit c2e56705b36163307f5a111381f66c386e164bad 6185 Author: Frederik Heber <heber@ins.uni-bonn.de> 6186 Date: Mon Sep 12 10:46:41 2011 +0200 6187 6188 Added serialization capability to RealSpaceMatrix. 6189 6190 - added SerializationTest to MatrixUnitTest. 6191 - Requires CodePatterns 1.1.5 due to serialization header and problems with 6192 MemDebug. 6193 6194 commit 29cbe9eb5045c2dc5460417786abf8dd54510240 6195 Author: Frederik Heber <heber@ins.uni-bonn.de> 6196 Date: Fri Sep 9 23:30:06 2011 +0200 6197 6198 Added serialization capabilities to VectorContent and MatrixContent. 6199 6200 - both a bit tricky due to gsl_vector and gsl_malloc. 6201 - TEST: also added SerializationTest() to either UnitTest. 6202 6203 commit c5038eb29dd533dd1cd33dee2c21d56fbd61fcd0 6204 Author: Frederik Heber <heber@ins.uni-bonn.de> 6205 Date: Fri Sep 9 23:24:02 2011 +0200 6206 6207 Made MatrixContent and VectorContent dimensions const by placing into extra class. 6208 6209 - new classes MatrixDimension and VectorDimension. 6210 - they only displays getters to the outside. Thus, we may savely serialize 6211 them without having to disable the constness. 6212 6213 commit c8b17b55097e09730f211d414d01a4b65d6e8a5b 6214 Author: Frederik Heber <heber@ins.uni-bonn.de> 6215 Date: Tue Oct 11 16:45:18 2011 +0200 6216 6217 DISTCHECKFIX: Added missing chmod u+w were appropriate. 6218 6219 - This is necessary as files are copied as read-only which prevents molecuilder 6220 from writing changes to file. 6221 6222 commit 220cf64c6ebf68c0e5bed116415d5287df404a6a 6223 Author: Frederik Heber <heber@ins.uni-bonn.de> 6224 Date: Fri Sep 9 18:54:58 2011 +0200 6225 6226 Added Undo/Redo capability to ElementDbAction. 6227 6228 - thanks to serialization of periodentafel and element. 6229 - !NOTE! when serializing pointers inside classes: header file of this class 6230 must at some point be present (due to the templated serialize function). 6231 - TESTFIX: Updated regression test for ElementDbAction. Loaded databases are 6232 now different and this reflects in .conf output file. 6233 6234 commit 35a25a5e7b6adf34c70b8e928981ffc70f9b5cd4 6235 Author: Frederik Heber <heber@ins.uni-bonn.de> 6236 Date: Wed Oct 12 15:00:32 2011 +0200 6237 6238 AtomInfo does not store ref to element anymore but only atomic number. 6239 6240 - if we want to allow for elements to be changed, no refs may be stored at 6241 other places. Now we just store the atomic number and look up the element in 6242 the periodentafel on request. 6243 6244 commit b6080419d0487202fd76c9e76fba31c44bf97c46 6245 Author: Frederik Heber <heber@ins.uni-bonn.de> 6246 Date: Fri Sep 9 15:12:21 2011 +0200 6247 6248 Added serialization to class periodentafel. 6249 6250 - added unit test on comparison and serialization. 6251 - FIX: removed inclusion of PeriodentafelUnitTest.hpp in periodentafel.hpp 6252 as forward declaration is sufficient. 6253 - ComparisonTest and fix of operator==() for class periodentafel. 6254 6255 commit d7d0227486bc1c19c9648ca87b259ad4cf6fa8c2 6256 Author: Frederik Heber <heber@ins.uni-bonn.de> 6257 Date: Fri Sep 9 14:02:18 2011 +0200 6258 6259 Added serialization functionality to class element. 6260 6261 - also added extensive unit test on class element. 6262 - we use boost::serialization. 6263 6264 commit bae8b0a28256b8566e57053ad9e6fe49dd1c2b39 6265 Author: Frederik Heber <heber@ins.uni-bonn.de> 6266 Date: Fri Sep 9 14:00:41 2011 +0200 6267 6268 FIX: some smaller changes to class element. 6269 6270 - removed those nonsense ref getter for symbol and name. Now, getter only 6271 return const ref. 6272 - NDIM -> 3 and removed inclusion of defs.hpp. 6273 - int -> size_t as we desire an array size. 6274 - initializing now some forgotten values in default cstor. 6275 6276 commit f08ae71ecd45b3ee35670dda17aad600096f37e5 6277 Author: Frederik Heber <heber@ins.uni-bonn.de> 6278 Date: Wed Sep 7 18:35:59 2011 +0200 6279 6280 Extension of usage of Tsuna's boost.m4 macro. 6281 6282 - boost.m4 from https://github.com/tsuna/boost.m4.git (serial 16 + updates). 6283 - LinearAlgebra does not depend on any boost libs only two headers and 6284 CodePatterns. 6285 - Presence and Usability of every boost header and lib is now checked. 6286 - Using updated ax_codepatterns.m4. 6287 - FIX: boost has not been possible to link with if not residing under some 6288 default path. This is now possible. 6289 6290 commit 78d5b295fa5c42519eac5454fe4513a96fe11df3 6291 Author: Frederik Heber <heber@ins.uni-bonn.de> 6292 Date: Mon Sep 5 19:25:14 2011 +0200 6293 6294 Added Undo/Redo capability to LoadAction. 6295 6296 - Added cloning of FormatParser_Parameters before the file is loaded such that 6297 FormatParser (here only MpqcParser) is returned to original state. 6298 - Additionally, we just store molecule's id and the file's prefix and suffix in 6299 the undo state. 6300 - TESTCHANGE: Removed XFAIL's from all Parser load's Undo/Redo tests. 6301 6302 commit aa8cc2489bb25c1b7c91aff06cb26327b39a7afd 6303 Author: Frederik Heber <heber@ins.uni-bonn.de> 6304 Date: Tue Sep 6 10:34:01 2011 +0200 6305 6306 TESTFIX: Regression tests for Parser load now correctly compares the undo case against empty file. 6307 6308 - added correct emoty file to each Parser test's post folder. 6309 - adapted undo case for each load test to compare against the empty file. 6310 - note that tests for Undo/Redo are still marked as XFAIL. 6311 6312 commit 5c54721f1805c72ffcc7cfd5b2f209ed7ebc7847 6313 Author: Frederik Heber <heber@ins.uni-bonn.de> 6314 Date: Tue Sep 6 10:35:03 2011 +0200 6315 6316 FIX: PdbParser::save() now writes correct empty file. 6317 6318 - PdbParser::save() writes "REMARK...\nEND\n" even if there are no atoms (and 6319 hence no timesteps). 6320 6321 commit 4151b06b3d969dc206995ba2f620979d5dc0a494 6322 Author: Frederik Heber <heber@ins.uni-bonn.de> 6323 Date: Tue Sep 6 10:22:03 2011 +0200 6324 6325 FIX: Parser's dstor were not virtual despite inheritance. 6326 6327 commit c1db05903a75be5fb69205e949bced95e69b4a1c 6328 Author: Frederik Heber <heber@ins.uni-bonn.de> 6329 Date: Tue Sep 6 10:45:22 2011 +0200 6330 6331 Abstracted FormatParser_Parameters and made it "Clone"able. 6332 6333 - this is preparatory for having an undoable LoadAction. 6334 - is so far only used by MpqcParser_Parameters. 6335 - FormatParser_Parameters::clone() clones the instance (uses CodePattern's 6336 Clone pattern). 6337 - FormatParser has pointer to FormatParser_Parameters. 6338 - MpqcParser now has parameters as inheritance from FormatParser, allocates in 6339 cstor, removes in dstor. 6340 - new function MpqcParser_Parameters::makeClone() sets instance to be a copy of 6341 the given one. 6342 - MpqcParser: replaced direct access to params by getParams(). 6343 - added ParameterCloneTest to ParserMpqcUnitTest. 6344 6345 commit e611dcada623ad28011aa5d0079a58228b4f54e8 6346 Author: Frederik Heber <heber@ins.uni-bonn.de> 6347 Date: Mon Sep 5 19:31:55 2011 +0200 6348 6349 FIX: AT_KEYWORDS requires _space_-separated list of keywords. 6350 6351 commit 6bc86c8f315a1909525c8dcf9bfe9a40927a306f 6352 Author: Frederik Heber <heber@ins.uni-bonn.de> 6353 Date: Mon Sep 5 19:24:31 2011 +0200 6354 6355 Implemented specific AtomRemoved(),AtomInserted() for Pdb and Tremolo parsers. 6356 6357 - each remove information from their ..AtomInfoContainers, if present. 6358 6359 commit 38f9917c644ed150841c7a1a6aa20bc1363313c6 6360 Author: Frederik Heber <heber@ins.uni-bonn.de> 6361 Date: Mon Sep 5 19:23:16 2011 +0200 6362 6363 FormatParser now listens to World::AtomRemoved and ::AtomInserted notifications. 6364 6365 - World now has const iterators for selectedAtoms and selectedMolecules. 6366 - FIX: RemoveAction was broken in usage of beginSelectedAtoms() for removing 6367 them! This is fixed. Same for FragmentAction() where non-const iterator had 6368 been used for fragmenting. 6369 - The above was caused by the following (we would stumble over 6370 receiveNotifications() going into void): 6371 - new virtual functions AtomRemoved() and AtomInserted() which the specific 6372 parsers overwrite, e.g. to remove additional information when the associated 6373 atom is removed. 6374 6375 commit ab4a330bb4a5a2e75bd17f63fc36cba9ce4edaad 6376 Author: Frederik Heber <heber@ins.uni-bonn.de> 6377 Date: Mon Sep 5 19:22:26 2011 +0200 6378 6379 FIX: World::destroyAtom() now informs before atom's destruction, not after. 6380 6381 commit 35bf6be58e0770834fcf4a7d8a69d69658043b29 6382 Author: Frederik Heber <heber@ins.uni-bonn.de> 6383 Date: Mon Sep 5 12:46:14 2011 +0200 6384 6385 TESTFIX: Parser/Mpqc-SetParameters/set-theory working. 6386 6387 - removed XFAILs 6388 - MpqcParser_Parameters::setter() yes/no and 1/0 allowed as bool strings. 6389 6390 commit 89643db5d138dd16f16f5289031ddcc7811d46e5 6391 Author: Frederik Heber <heber@ins.uni-bonn.de> 6392 Date: Fri Sep 2 12:12:01 2011 +0200 6393 6394 Enabled also un selection when clicking already selected atoms. 6395 6396 - introduced ... which allow for just knowing the id (which is all needed): 6397 - World::isAtomSelected(), 6398 - World::isMoleculeSelected(). 6399 6400 commit b7ff035ccbca9dd3a5ea57a4476fb4ec3fbec0b7 6401 Author: Frederik Heber <heber@ins.uni-bonn.de> 6402 Date: Fri Sep 2 12:11:27 2011 +0200 6403 6404 Selection NotAtomByIdAction now gets atomId_t not const atom *. 6405 6406 - see Selection AtomByIdAction. 6407 6408 commit 0e9ffe3f980f1dc11a0b7b21a4342660cfc00b4f 6409 Author: Frederik Heber <heber@ins.uni-bonn.de> 6410 Date: Fri Sep 2 11:58:14 2011 +0200 6411 6412 Enabled selection when clicking atoms. 6413 6414 commit 5a88409929fafa0edd9c452df1f3d525d7db4154 6415 Author: Frederik Heber <heber@ins.uni-bonn.de> 6416 Date: Fri Sep 2 11:56:53 2011 +0200 6417 6418 Selection AtomByIdAction now gets atomId_t not const atom *. 6419 6420 - This makes it possible to use it with the GUI where we know the id, not the 6421 ref. (and pointer is too low-level, retrieving it should be the problem of 6422 the action, not the query). 6423 6424 commit 12948c2ccfa9172ddcc2b58e9905c238b969ea5d 6425 Author: Frederik Heber <heber@ins.uni-bonn.de> 6426 Date: Fri Sep 2 11:54:17 2011 +0200 6427 6428 Added new Query for std::vector of unsigned int. 6429 6430 - this is preparatory to make selection rectangle possible. 6431 6432 commit 838cd09f5b0b8fc58fc121f2fad94ab4a811175b 6433 Author: Frederik Heber <heber@ins.uni-bonn.de> 6434 Date: Fri Sep 2 11:21:45 2011 +0200 6435 6436 Added new Query for unsigned int. 6437 6438 - this is preparatory to switch select-atom-by-id to true atomId_t query. 6439 6440 commit 65487f331fd5824af614cee6c3d083360a9f4d4b 6441 Author: Frederik Heber <heber@ins.uni-bonn.de> 6442 Date: Fri Sep 2 10:42:34 2011 +0200 6443 6444 FIX: hoverChanged() and ..Clicked() now also works for loaded molecules. 6445 6446 - introduced signal WorldScene::changeOccured() which triggers a private flag 6447 changesPresent in GLWorldView to call initialize() on next paintGL() event. 6448 6449 commit a099d37e9af2d031e927cb528eae711e79891eef 6450 Author: Frederik Heber <heber@ins.uni-bonn.de> 6451 Date: Fri Sep 2 10:13:35 2011 +0200 6452 6453 FIX: hoverChanged() again working for immediately loaded molecules. 6454 6455 commit df765f38b6dbe853b2dd20ffbd223c4457a00482 6456 Author: Frederik Heber <heber@ins.uni-bonn.de> 6457 Date: Fri Sep 2 10:13:18 2011 +0200 6458 6459 gitignore ignores new .autotools of eclipse. 6460 6461 commit 9c18e48b7af8959648d5a1a088f561ed14050917 6462 Author: Frederik Heber <heber@ins.uni-bonn.de> 6463 Date: Thu Sep 1 20:17:08 2011 +0200 6464 6465 FIX: Observers (GLMoleculeObject_atom, GLWorldScene) sign off on destruction. 6466 6467 commit 5e2f80b94564cd7797be678d694bf8d3012bd825 6468 Author: Frederik Heber <heber@ins.uni-bonn.de> 6469 Date: Thu Sep 1 19:06:04 2011 +0200 6470 6471 BondedParticle no more hands out non-const ListOfBonds. 6472 6473 - the few required instances were always for removing all bonds inL 6474 - GraphCreateAdjacencyAction::performCall(), 6475 - MoleculeCopyAction::performUndo(), 6476 - BondGraph::cleanAdjacencyList(), 6477 - BondGraph::resetBondDegree(), 6478 - molecule::removeBonds(), 6479 - MoleculeListClass::AddHydrogenCorrection(), 6480 - ListOfBondsTest::AddingBondTest(). 6481 - added BondedParticle::removeAllBonds(). 6482 - added BondedParticle::resetBondDegree(). 6483 - BondedParticleInfo::getListOfBonds...() now returns empty list if out of 6484 bounds (emptylist is static member variable of the class). 6485 - ListOfBondsUnitTest runs fine. 6486 6487 commit 37b257551a03bddeeb79df686a845ed3e736653e 6488 Author: Frederik Heber <heber@ins.uni-bonn.de> 6489 Date: Thu Sep 1 18:33:11 2011 +0200 6490 6491 GLMoleculeObject_atom listens to BondsChanged notification. 6492 6493 - signal is sent to slot in GLWorldScene which inserts or removes bonds for 6494 the specific atom. 6495 - i.e. now we may load a file and both atoms and bonds are correctly shown via 6496 the observer mechanism. 6497 6498 commit db7e6dbec5ed7a09556e844d6574a820fe80de92 6499 Author: Frederik Heber <heber@ins.uni-bonn.de> 6500 Date: Thu Sep 1 18:25:34 2011 +0200 6501 6502 BondedParticle:: register and unregister are private. 6503 6504 - adding and removing bonds is possible via addBond(), removeBond(). 6505 - this wat we encapsulate the register and unregister and make sure that never 6506 a lone bond remains at one side. 6507 - adapted: 6508 - BondGraph::CreateAdjacency() 6509 - Register and UnregisterBond are OBSERVEd. 6510 - bond::Contains() is const member function now 6511 6512 commit 7188b130f196698d071c5787a688b84efdfde506 6513 Author: Frederik Heber <heber@ins.uni-bonn.de> 6514 Date: Thu Sep 1 15:49:14 2011 +0200 6515 6516 Introduced atom_observables and GLWorldView observes World, GLMoleculeObject_atom observes its atom. 6517 6518 Observer changes: 6519 - new Channels pattern required from CodePatterns 1.1.5 and that Observable 6520 signing on and off is now with const instance possible. 6521 - class atom is now observable, encapsulated in class AtomObservable: 6522 - enums have notification types 6523 - we use NotificationChannels of Observable to emit these distinct types. 6524 - atominfo, particleinfo, bondedparticleinfo all have OBSERVE and NOTIFY(..) 6525 in their setter functions (thx encapsulation). 6526 - class GLMoleculeObject_atom signs on to atom to changes to position, element, 6527 and index. 6528 - World equally has notifications for atom (new,remove) and molecules (new, 6529 remove). 6530 - GLWorldView now observes World for these changes. 6531 6532 Other changes: 6533 - removed additional hierarchy level for GLWidget of molecules (i.e. 6534 GLMoleculeScene removed and incorporated into GLWorldScene). 6535 6536 commit e638f994597de00dea35ab713ed67450ce61ec6e 6537 Author: Frederik Heber <heber@ins.uni-bonn.de> 6538 Date: Mon Aug 29 12:03:29 2011 +0200 6539 6540 Removed changetypes.hpp. 6541 6542 commit 5fa2bac2fc0563ed676ba8178b07597a44189e58 6543 Author: Frederik Heber <heber@ins.uni-bonn.de> 6544 Date: Mon Aug 29 11:53:53 2011 +0200 6545 6546 Enhanced PdbParser to read ill-formed pdbs. 6547 6548 - conect entries may now contain 0 as filler (and serial 0 presence is 6549 checked). 6550 - ATOM info lines may contain less than 80 chars, then name is parsed for 6551 element. 6552 - added new regression test Parser/Pdb/load-various for this. 6553 6554 commit 029bb4e5c3a78c79d56801bff9ea647fbc143423 6555 Author: Frederik Heber <heber@ins.uni-bonn.de> 6556 Date: Fri Aug 26 18:34:12 2011 +0200 6557 6558 Hovering is now working too. 6559 6560 - signal chain installed from GLMoleculeObject::hoverChanged() through 6561 GLMoleculeObject, over GLWorldScene to GLWorldView which calls updateGL(). 6562 6563 commit 06ebf53dbb995f5e8ab81361cc8b991ca48cb1c8 6564 Author: Frederik Heber <heber@ins.uni-bonn.de> 6565 Date: Fri Aug 26 18:26:42 2011 +0200 6566 6567 Clicking on atoms works. 6568 6569 - GLMoleculeObject_atom, GLMoleculeScene, GLWorldScene have a signal/slot chain 6570 that is gradually enriched with ids of clicked atom part of clicked molecule. 6571 6572 commit 907636a5dab60af4f441f0c8888aadfce03987fc 6573 Author: Frederik Heber <heber@ins.uni-bonn.de> 6574 Date: Fri Aug 26 17:53:28 2011 +0200 6575 6576 First working version of GLWorldView that show atoms and molecules. 6577 6578 - GLWorldView is view of model GLWorldScene. 6579 - GLWorldScene contains GLMoleculeScene for each molecule. 6580 - GLMoleculeScene contains GLMoleculeObject_.. for each atom and two for each 6581 bond. 6582 - GLMoleculeObject_... derive from GLMoleculeObject which hides the specifics 6583 of being sphere or cylinder and allows for initializing and drawing 6584 unifiedly. 6585 - so far clicking the atoms is not working (as in teaservice example). 6586 6587 commit 04f01714d458f4a933c136873fbcc398845e35c2 6588 Author: Frederik Heber <heber@ins.uni-bonn.de> 6589 Date: Fri Aug 26 16:54:28 2011 +0200 6590 6591 Removed teapotview.?pp again. 6592 6593 - Functionality is contained in GLWorldView class now. 6594 6595 commit a08d3c00dcbb9d956c0c86998b341be1da386fb2 6596 Author: Frederik Heber <heber@ins.uni-bonn.de> 6597 Date: Fri Aug 26 16:49:14 2011 +0200 6598 6599 Replaced empty GLWordlView QWidget by TeapotView example from Qt3d. 6600 6601 - this completes the initial test for a QGLView derived class. 6602 6603 commit da8f976db1621e38a0ee1d854a6bd9c8aab85bd0 6604 Author: Frederik Heber <heber@ins.uni-bonn.de> 6605 Date: Fri Aug 26 16:36:52 2011 +0200 6606 6607 MEMFIX: in QtMainWindow and preventing segfault. 6608 6609 - QtMainWindow did not remove its MainMenu. 6610 - QTUIFactory's deleting app causes segfault as of now (close button might 6611 delete app already?). Removed, though causes memory leak. 6612 6613 commit d238e7e948efa1a2e02036034b4407a09d66674d 6614 Author: Frederik Heber <heber@ins.uni-bonn.de> 6615 Date: Fri Aug 26 16:34:14 2011 +0200 6616 6617 Replaced GLMoleculeView by Qt3D/GLWorldView, which is as of now a dummy. 6618 6619 - Qt3D/GLWorldView has no function but compiles. 6620 - will contain a QGLView eventually. 6621 - adapted QtMainWindow to contain the different class. 6622 6623 commit 060ba4d6cd1eae34f74c568b5a8bba925209a97d 6624 Author: Frederik Heber <heber@ins.uni-bonn.de> 6625 Date: Fri Aug 26 16:28:48 2011 +0200 6626 6627 Replaced m4 macro gwqt4.m4 by bnv_have_qt.m4 6628 6629 - as is used with seismolo. 6630 - @MOC@ -> QTMOC, @UIC@ -> QT_UIC. 6631 - QT_LIBS has it all. 6632 - new QT_DEBUG when Qt debug should be printed or not. 6633 6634 commit bd8788bcc2770639f10e6ae00ebace78491ad284 6635 Author: Frederik Heber <heber@ins.uni-bonn.de> 6636 Date: Fri Aug 26 16:24:46 2011 +0200 6637 6638 src/Makefile.am: Adding to variable bin_PRORGRAMS. 6639 6640 commit 573d72e37429185a7a44c99c55ce6c49640a7f88 6641 Author: Frederik Heber <heber@ins.uni-bonn.de> 6642 Date: Mon Aug 15 12:55:56 2011 +0200 6643 6644 FIX: saveAll() had some senseless memory allocation. 6645 6646 - this is a remnant of a test whether MemDebug showed this still allocated 6647 memory correctly. 6648 6649 commit 47812bf29752df13c8f68d7f28e671425f9384a7 6650 Author: Frederik Heber <heber@ins.uni-bonn.de> 6651 Date: Fri Aug 12 18:09:00 2011 +0200 6652 6653 FIX: MolecuilderGUI crashes on selecting molecule. 6654 6655 - QtWorldView::update() set ATOMS column twice, hence FORMULA was NULL item. 6656 - rename in enum COLUMNTYPES: ATOMS->ATOMCOUNT. 6657 6658 commit b40b9d6354d6e302484b05573727b84ac8f4106a 6659 Author: Frederik Heber <heber@ins.uni-bonn.de> 6660 Date: Fri Aug 12 17:16:28 2011 +0200 6661 6662 FIX: Bonds are now displayed correctly. 6663 6664 - using Vector::VectorProduct() to correctly create normal vectors and fixed 6665 therewith GLMoleculeView::makeCylinder(). 6666 6667 commit 29daadd534e411fe720e18c440a42be6eb53edc0 6668 Author: Frederik Heber <heber@ins.uni-bonn.de> 6669 Date: Thu Aug 11 17:14:05 2011 +0200 6670 6671 Added rudimentarily working GlMoleculeView (class was empty before). 6672 6673 - We took over the code from (ancient) branch MolecuilderGUI and adapated it 6674 to the current standards. Atoms are drawn, bonds in some so far wrong 6675 direction as well. 6676 - Note that the guz has trouble showing dialogs for all Actions. This should 6677 be some minor bug. 6678 6679 commit 064178f528b483f670f19f89ffe6723a2f46d988 6680 Author: Frederik Heber <heber@ins.uni-bonn.de> 6681 Date: Thu Aug 11 16:20:59 2011 +0200 6682 6683 Added color database to periodentafel. 6684 6685 - periodentafel::LoadColorDatabase() added and added to cstor. 6686 - element::color as unsigned char[3] added. 6687 - element::getColor() added. 6688 - ColorDB const string in elements_db.[ch]pp added. 6689 - added LoadColorDatabase() to periodentafelTest::LoadStoreTest(). 6690 6691 commit 81c980b965fafebb2dcfa97d9e7af728f828bf96 6692 Author: Frederik Heber <heber@ins.uni-bonn.de> 6693 Date: Tue Aug 9 18:56:31 2011 +0200 6694 6695 Added new action to set the ATOMDATA in tremolo's .data output file. 6696 6697 - new action is set-tremolo-atomdata in ParserAction. 6698 - added regression test. 6699 6700 commit f7c19ef45479bcaff60cc9fdb2998767b71aefb3 6701 Author: Frederik Heber <heber@ins.uni-bonn.de> 6702 Date: Tue Aug 9 18:39:43 2011 +0200 6703 6704 Some fixes to parsing files. 6705 6706 - MpqcParser::save() does not store all atoms but those given in the 6707 parameters. 6708 - FIX: MoleculeListClass::AddHydrogenCorrection() and FilePresent() check with 6709 bad() and eof() whether file is missing or has ended. 6710 6711 commit dc882751b0f5d22558db16527011af688d013cd3 6712 Author: Frederik Heber <heber@ins.uni-bonn.de> 6713 Date: Mon Apr 25 00:34:16 2011 +0200 6714 6715 Set version of LinearAlgebra to 1.0.2. 6716 6717 - LinearAlgebra library is now 2:0:0. 6718 6719 commit 26108c891400d13c6ff2a37395d1a3566003a995 6720 Author: Frederik Heber <heber@ins.uni-bonn.de> 6721 Date: Mon Apr 25 00:30:42 2011 +0200 6722 6723 FIX: Changed ambigious interface for MatrixContent::transpose(). 6724 6725 - now, if we transpose in place, the function is transpose() (active voice). 6726 - if we transpose to other MatrixContent, it is transposed() (passive voice). 6727 - this also changed the interface for RealSpaceMatrix::transpose(). 6728 - fixes in several unit tests where before we always had to explicitly cast 6729 the matrix to const in order to make use of the passive voice form. 6730 6731 commit 59e06352565152e740ef911af808bb55268fba36 6732 Author: Frederik Heber <heber@ins.uni-bonn.de> 6733 Date: Sat Apr 23 22:22:03 2011 +0200 6734 6735 Set version of LinearAlgebra to 1.0.1. 6736 6737 - LinearAlgebra library is now 1:1:1. due to changes to code and adding to 6738 interface VectorContent and MatrixContent. 6739 6740 commit cec7a55776b5068824e2e8a898b8c9ba9b3b6137 6741 Author: Frederik Heber <heber@ins.uni-bonn.de> 6742 Date: Sat Apr 23 22:20:38 2011 +0200 6743 6744 Added Singular Value Decomposition to MatrixContent. 6745 6746 - this allows for solving over-determined linear system of equations in a least 6747 squares sense: || Ax - b ||^2. 6748 - Unit test added on SVD and solving of an example system. 6749 6750 commit 7a03405921dca3b136f7e49c7e1b3797e598c4fc 6751 Author: Frederik Heber <heber@ins.uni-bonn.de> 6752 Date: Sat Apr 23 21:41:36 2011 +0200 6753 6754 Renamed MatrixUnitTest to more appropriate RealSpaceMatrixUnitTest. 6755 6756 commit e420f9699375be338a4e7e5c3b2b6e979946c03c 6757 Author: Frederik Heber <heber@ins.uni-bonn.de> 6758 Date: Sat Apr 23 21:38:12 2011 +0200 6759 6760 Added read/write capability of VectorContent from stream. 6761 6762 - this is all taken and adapted from MatrixContent. 6763 - Unit test function added on this. 6764 6765 commit d2bac9e91c385f9133253b99832fac5878a01c61 6766 Author: Frederik Heber <heber@ins.uni-bonn.de> 6767 Date: Sun Apr 24 00:51:59 2011 +0200 6768 6769 Added VectorContent(gsl_vector *, bool). 6770 6771 - Via the bool it can now be specified whether VectorContent assumes ownership 6772 over the gsl_vector or just wraps it temporarily. 6773 6774 commit 8b8a5b378d2399432b6e5b67d730a223d13d776b 6775 Author: Frederik Heber <heber@ins.uni-bonn.de> 6776 Date: Sat Apr 30 15:58:11 2011 +0200 6777 6778 FIX: Parser/Mpqc-SetParameters and redo/undo are working. 6779 6780 - also Undo would check for CLKS which the file sets and is not the default 6781 value of theory, we now check for MBPT2 and Undo works. 6782 6783 commit 473237055cdf05b40bc70aa53d5b35d6960b4daf 6784 Author: Frederik Heber <heber@ins.uni-bonn.de> 6785 Date: Sat Apr 30 15:10:10 2011 +0200 6786 6787 FIX: PdbParser - CONECTs with full 80 chars were not parsed correctly. 6788 6789 - this fixes ticket #147. 6790 - also, we now write full length CONECTs. 6791 - added regression test to check on this behavior. 6792 - TESTFIX: Parser/Pdb/with-conects now diffs with '-w' to ignore white spaces 6793 errors. CONECT lines need not have full length. 6794 - TESTFIX: Molecules/BondFile/Fragmentation now diffs with '-w' as well. 6795 6796 commit 8990879f0d70e37254ee9c7844475862be401b8a 6797 Author: Frederik Heber <heber@ins.uni-bonn.de> 6798 Date: Sat Apr 30 14:31:44 2011 +0200 6799 6800 FIX: PdbParser - symbol is now parsed and written in capital letters. 6801 6802 - This fixes ticket #146. 6803 - Added regression test to check this behavior. 6804 6805 commit f6ba43405488e9595322b8bef96c7c7fb1191d67 6806 Author: Frederik Heber <heber@ins.uni-bonn.de> 6807 Date: Tue Sep 27 11:07:46 2011 +0200 6808 6809 Many smaller changes to CreateMicelleAction to get it fully working and compliant. 6810 6811 Changes to MoleculeCreateMicelleAction::performCall(): 6812 - returns Action::success when no molecule is selected. 6813 - we check for selection of not more than one molecule. 6814 - we store full undo (positions in selected molecule and added molecules). 6815 - new parameter DoRotate to tell whether to mirror molecule along z axis or 6816 not. 6817 - FIX: we rotate to PAS only in case of more than one atom present in molecule. 6818 - FIX: copied molecules are added to World's MoleculeListClass (and correctly 6819 removed in performUndo()). 6820 - FIX: Placed shifting original molecule into own block and corrected usage of 6821 RotationAxis. 6822 6823 - Also performUndo() is fully implemented. 6824 - we can... and shouldUndo(). 6825 6826 - added regression test on both do and Undo. 6827 6828 commit c521e15fac8ef6fb70fa919455eee4364ac68fa6 6829 Author: Frederik Heber <heber@ins.uni-bonn.de> 6830 Date: Tue Sep 27 11:07:11 2011 +0200 6831 6832 FIX: Shifted CopyMolecule in regression tests to alphabetical order. 6833 6834 commit c88597db2d870358b59615ead9c13f587c938698 6835 Author: Daniel Dueck <dueck@ins.uni-bonn.de> 6836 Date: Mon May 16 18:32:53 2011 +0200 6837 6838 Rotation of the molecule in order to bring the polar side of the molecule to the outer side of the sphere. 6839 6840 commit 37f9d4101597f8ba2fd2cd5b4c37bdbe8c1a9691 6841 Author: Frederik Heber <heber@ins.uni-bonn.de> 6842 Date: Tue May 10 19:30:45 2011 +0200 6843 6844 Changed some non-standard stuff with CreateMicelleAction. 6845 6846 - renamed files CreateMicelle -> CreateMicelleAction. 6847 - rewrote german comments in english. 6848 - removed #define, replaced by typedefs. 6849 - removed commented-out code pieces. 6850 6851 - TESTFIX: regression test 93 failed due to ATOMDATA line being different for 6852 tensid.data and water.data. I use the one from tensid.data and re-created 6853 the water.data with this line. 6854 6855 Changed due to rebase onto v1.1.3: 6856 - renaming done before already. 6857 6858 commit 2e352f30207b69623be3c5c319359d2810255ecd 6859 Author: Daniel Dueck <dueck@ins.uni-bonn.de> 6860 Date: Wed Apr 6 19:17:41 2011 +0200 6861 6862 Because of problems with columns in data-files, some changes were done. 6863 6864 - atom::CorrectFactor() does not set fathet to itself anymore in father's 6865 father case. 6866 - molecule::CopyMolecule() does not correct fathers anymore 6867 6868 Changed due to rebase to v1.1.3: 6869 - removed changes to TremoloParser.cpp and boundary.cpp. 6870 6871 commit faca99c4b3a8189ab455e43e58a6dae918e736fa 6872 Author: Daniel Dueck <dueck@ins.uni-bonn.de> 6873 Date: Sat Jan 15 17:11:41 2011 +0100 6874 6875 MoleculeAction create-micelle: code updated; Baseshapes: procedure getHomogeneousPointsonSurface updated 6876 6877 Changed in rebase onto v1.1.3: 6878 - replaced parser instantiations by getter to FormatParserStorage and World. 6879 - removed doubly present loop over count (creates 194^2 points). 6880 - We create now less than desired points, Unit tests checks for 194 instead of 6881 originally 200 points. 6882 6883 commit 807c0e436d410a1be20e422e058fff53475aaef6 6884 Author: Daniel Dueck <dueck@ins.uni-bonn.de> 6885 Date: Wed Oct 13 10:26:41 2010 +0200 6886 6887 Daniel has recently changed his mizelledata to work as an action "create-micelle" within molecuilder. 6888 6889 - BUGFIX: performCall() did not return an Action::success. 6890 6891 Changes due to rebase to v1.1.3: 6892 - replaced instantiated parsers by getter to FormatParserStorage and World. 6893 - adapted .def file to present standard. 6894 - renamed CreateMicelle to compliant CreateMicelleAction. 6895 6896 commit e2e0a5aeb2de4b1a4ca6145edf6923b383c5bd3c 6897 Author: Frederik Heber <heber@ins.uni-bonn.de> 6898 Date: Thu Sep 16 11:25:01 2010 +0200 6899 6900 Added Daniels version from 2010/09/15 and Makefile stuff to this branch. 6901 6902 - Changed Daniels version a bit such that it compiles: 6903 - removed code that is in comments 6904 - BUG: FragmentationSubgraphDissection() has to be in front of removal of 6905 original molecule. 6906 - rotation done by Line::RotateVector() as well 6907 - replaced while by tighter for loops 6908 6909 Changes from rebase to v1.1.3: 6910 - no need to populate actions, removed MapOfActions include. 6911 - replaced instantiated parsers by getter to FormatParserStorage(). 6912 - added MemDebug.hpp and config.h inclusion to mizelledata.cpp. 6913 6914 commit c4cde16be7aa43dfc48d824ce2782f90be1dc23c 6915 Author: Frederik Heber <heber@ins.uni-bonn.de> 6916 Date: Wed Apr 27 20:37:47 2011 +0200 6917 6918 Set version to 1.1.3. 6919 6920 - Codename "Donald Duck" (the license plate of his first car in a 1938 comic) :) 6921 6922 commit e85333cbdf94b0f1a5c3369818d89b648d323a69 6923 Author: Frederik Heber <heber@ins.uni-bonn.de> 6924 Date: Tue Oct 4 16:04:28 2011 +0200 6925 6926 DISTCHECKFIX: AUTOTEST_PATH is now used as path to moleculder in molecuiler.in for tests. 6927 6928 - this closes ticket #149. 6929 6930 commit b4e3fe35dd420400cf9a1ecb5071f492e53159a1 6931 Author: Frederik Heber <heber@ins.uni-bonn.de> 6932 Date: Tue Oct 4 16:04:03 2011 +0200 6933 6934 DISTCHECKFIX: .moc.cpp files were not in MOSTLYCLEANFILES. 6935 6936 commit 7db9bdca097aa9e4f1c2d317be2952824752399f 6937 Author: Frederik Heber <heber@ins.uni-bonn.de> 6938 Date: Tue Oct 4 13:59:19 2011 +0200 6939 6940 DISTCHECKFIX: Replaced AUTOTEST_PATH by real path (e.g. tests/regression). 6941 6942 - this corrects VPATH problems with 'make distcheck'. 6943 6944 commit 740d40e9b13bb9dbeb059d1f879dae6db1a97e2d 6945 Author: Frederik Heber <heber@ins.uni-bonn.de> 6946 Date: Thu Sep 29 18:56:25 2011 +0200 6947 6948 Rewrote tests/Fragmentations with autotest test driver. 6949 6950 commit 689639d55a02f461620aa8b592dbae38a20aff61 6951 Author: Frederik Heber <heber@ins.uni-bonn.de> 6952 Date: Thu Sep 29 18:14:28 2011 +0200 6953 6954 DISTCHECKFIX: Smaller changes to tests/regression Makefile.am and in configure.ac. 6955 6956 - this is stuff learnt from rewrote of tests/Tesselations. 6957 - also added AC_CONFIG_TESTDIR for CodeChecks in tests and LinearAlgebra/tests. 6958 - atconfig files are removed in DISTCLEANFILES. 6959 6960 commit a85f4542482b1c8da1342c3250ec1e4dbcab52f1 6961 Author: Frederik Heber <heber@ins.uni-bonn.de> 6962 Date: Thu Sep 29 18:12:18 2011 +0200 6963 6964 Rewrote tests/Tesselations with autotest test driver. 6965 6966 - this made the whole tests a lot easier (and working with distcheck hopefully, too). 6967 6968 commit aba610cde06d025a98237132edfdeacef9fe648c 6969 Author: Frederik Heber <heber@ins.uni-bonn.de> 6970 Date: Thu Sep 29 14:46:48 2011 +0200 6971 6972 FIX: EXTRA_DIST in tests/Tesselations and tests/Fragmentations lacked the test files and others. 6973 6974 commit 552597fe713aa65c498025df8719af1f913e8a62 6975 Author: Frederik Heber <heber@ins.uni-bonn.de> 6976 Date: Thu Sep 29 09:44:37 2011 +0200 6977 6978 FIX: Renamed CommandLineParser_ActionRegistry_ConsistenyUnitTest -> CommandLineParser_ActionRegistry_ConsistencyUnitTest. 6979 6980 - both in files and in class name. 6981 6982 commit fec3813f626b40a0ef8ea6647dd2536bc93a711d 6983 Author: Frederik Heber <heber@ins.uni-bonn.de> 6984 Date: Thu Sep 29 09:22:35 2011 +0200 6985 6986 Replaced molecuilder's CXXFLAGS by AM_CPPFLAGS instead of only BOOST_CPP_FLAGS. 6987 6988 commit 79de12a31074a28e29afce5800da9884f1b1cd0d 6989 Author: Frederik Heber <heber@ins.uni-bonn.de> 6990 Date: Tue May 10 14:35:11 2011 +0200 6991 6992 Replaced *_boost_*.m4 by boost.m4 from tsuna. 6993 6994 - https://github.com/tsuna/boost.m4/ has a very nice boost m4 macro to check 6995 for presence of boost headers and libraries, also setting the rpath 6996 correctly. 6997 - required changes in all Makefile.ams as BOOST_... variable names have 6998 changed. 6999 - added all .m4 files to EXTRA_DIST. 7000 - added Boost's LDFLAGS to libMolecuilderUI and ..QtUI's LDFLAGS such that 7001 libs in usual paths are found, too. 7002 7003 commit 5a8f38580d2593615980b7513d7e2e2a4c413589 7004 Author: Frederik Heber <heber@ins.uni-bonn.de> 7005 Date: Wed Sep 7 19:14:23 2011 +0200 7006 7007 FIX: "position" and others were not accepted because they have been added multiple times. 7008 7009 - some newer version (1.46) of boost program options does not seem to like 7010 multiply added options although they are all the same (type, ...). This is 7011 fixed. 7012 7013 commit ec188cd9bf78485f7613e2bea7509b0f99ac5c34 7014 Author: Frederik Heber <heber@ins.uni-bonn.de> 7015 Date: Fri May 6 10:27:22 2011 +0200 7016 7017 Fixed Doxygen usage. 7018 7019 - using now functions from ac_doxygen.m4, added TOP_SRCDIR to DX_ENV_APPENDs. 7020 - Doxyfile's now used environment variables set by these functions. 7021 - ac_doxygen.m4 patched with this due to "not a valid shell variable" bug: 7022 https://issues.apache.org/jira/browse/AMQCPP-191 7023 - used aminclude.m4 from doxample (by Oren Ben-Tiki) renamed to 7024 ac_doxygen_include.am. 7025 - added phony target doc that calls doxygen-doc for both molecuilder and 7026 LinearAlgebra. 7027 - DOCUFIX: fixed a doxygen bug in analysis_correlation.cpp: getDipole(). 7028 - Doxyfile(s): Both INPUTs point now to $(TOP_SRCDIR)/src, which is correct for 7029 both (separate) packages. 7030 - configure sets docdir as doc target dir. 7031 7032 commit 632a52b11abb20d9061552caa17f2fbef9b87353 7033 Author: Frederik Heber <heber@ins.uni-bonn.de> 7034 Date: Tue Aug 9 18:59:24 2011 +0200 7035 7036 FIX: boost::filesystem 1.47 changed output of extension(), stem(), and leaf(). 7037 7038 - fix was to add .string(). 7039 - we check for BOOST_VERSION to be greater equal than 104600 to apply this fix. 7040 7041 commit e5c233cf7fc321481d7f2bd42b55e4580bbc581e 7042 Author: Frederik Heber <heber@ins.uni-bonn.de> 7043 Date: Wed Aug 10 09:31:49 2011 +0200 7044 7045 FIX: replaced boost/exception.hpp by boost/exception/all.hpp. 7046 7047 commit 416f10c2b16b2231b57ec982e4c5132067b090fa 7048 Author: Frederik Heber <heber@ins.uni-bonn.de> 7049 Date: Tue Aug 9 18:34:34 2011 +0200 7050 7051 FIX: help string on domain is wrong. 7052 7053 - CommandHelpAction() gives components of symmetric matrix for domain in wrong 7054 order (upper now lower triagonal). 7055 7056 commit d1912fffef19cf0c1e8759c90abbf98943a9e7fd 7057 Author: Frederik Heber <heber@ins.uni-bonn.de> 7058 Date: Wed Sep 28 11:45:58 2011 +0200 7059 7060 FIX: \text{} replacec by \mathrm{} in doxygen formulas. 7061 7062 commit a08d6609baab55d50214c73a7aa64f50c0786260 7063 Author: Frederik Heber <heber@ins.uni-bonn.de> 7064 Date: Wed Apr 27 20:59:09 2011 +0200 7065 7066 Fixed wrong version numbers in headers of testsuites. 7067 7068 commit 718542b98ffda42460e79001a427f156caa6bcc9 7069 Author: Frederik Heber <heber@ins.uni-bonn.de> 7070 Date: Wed Apr 27 20:34:45 2011 +0200 7071 7072 Filled action's token as keyword in each test. 7073 7074 - also all keywords are now lower case. 7075 - undo and redo are listed as keywords as well if applicable. 7076 - FIX: Removed check for present molecules from SelectionActions. When none can 7077 be selected, this must not yield in failure of the Action but is perfectly 7078 acceptable. 7079 7080 commit 43a0aebcbd9fa87981dbf5339765fb0804d755c8 7081 Author: Frederik Heber <heber@ins.uni-bonn.de> 7082 Date: Wed Apr 27 19:33:30 2011 +0200 7083 7084 FIX: All Unselection actions now have keyword unselection instead of selection. 7085 7086 commit f2872ae885ed8ca989001542d272c75794be73c1 7087 Author: Frederik Heber <heber@ins.uni-bonn.de> 7088 Date: Wed Apr 27 19:31:05 2011 +0200 7089 7090 Split off Unselections from selections in Selection/Atoms. 7091 7092 - each testsuite*.at file now just has a single test (including undo/redo). 7093 - renamed testsuite*.at files: added missing "select-" such that full action 7094 name is contained in filename. 7095 7096 commit d70fffeeaa945095af732c68c3627ca366d9de9f 7097 Author: Frederik Heber <heber@ins.uni-bonn.de> 7098 Date: Wed Apr 27 19:12:12 2011 +0200 7099 7100 Split off Unselections from selections in Selection/Molecules. 7101 7102 - each testsuite*.at file now just has a single test (including undo/redo). 7103 - renamed testsuite*.at files: added missing "select-" such that full action 7104 name is contained in filename. 7105 7106 commit 7c958e3f7ce548c4bf2fc8abe3caa46d9990fd56 7107 Author: Frederik Heber <heber@ins.uni-bonn.de> 7108 Date: Wed Apr 27 19:02:43 2011 +0200 7109 7110 Removed CheckCommand.sh in Selection/Molecules. 7111 7112 - multiple inclusion is currently not handled by autoconf in test part. 7113 7114 commit 93eb00f571cb1fc2dbc48382ec249ff9bc734782 7115 Author: Frederik Heber <heber@ins.uni-bonn.de> 7116 Date: Wed Apr 27 18:16:20 2011 +0200 7117 7118 FIX: Added forgotten regression test for unselect-atom-by-element. 7119 7120 - has been missing so far, though unselect tests present for all others and 7121 select test present as well. 7122 7123 commit 520f93930dc8a9f478562e28fb307e3e18d9b0bc 7124 Author: Frederik Heber <heber@ins.uni-bonn.de> 7125 Date: Wed Apr 27 18:08:44 2011 +0200 7126 7127 Split testsuite*.at files in regressions/Parser. 7128 7129 - one test per file, although undo/redo remain in same file. 7130 7131 commit e69c87634c601039ae61a1acb0b03fc6b7bddd17 7132 Author: Frederik Heber <heber@ins.uni-bonn.de> 7133 Date: Wed Apr 27 14:06:33 2011 +0200 7134 7135 Splitted off Undo and Redo parts into own tests (3-step rule). 7136 7137 - this way tests are cleaner as there are no old files left. 7138 - added lots of Undos/Redos. 7139 7140 Corrected all failing regression tests (of these new Undos/Redos): 7141 - new ActionExceptions, specifically ActionFailureException. 7142 - Action::call() throws ActionFailureException when returned state_ptr equals 7143 failure. 7144 - ActionHistory::undoLast(), ::redoLast() also throw when returning state_ptr 7145 equals failure. 7146 - doUI() checks for thrownActionFailureException and sets World's ExitFlag to 7147 5. 7148 - the following Actions have canUndo/shouldUndo now true (although Undo/Redo 7149 return Action::failure): 7150 - MoleculeBondFileAction 7151 - MoleculeLoadAction 7152 - MoleculeRotateToPrincipalAxisSystemAction 7153 - MoleculeVerletIntegrationAction 7154 - the following Action's regression tests have been corrected when Undo/Redo 7155 capability was already present (e.g. empty.conf created for Undo case): 7156 - MoleculeRotateAroundOrigin 7157 - MoleculeRotateAroundSelf 7158 - MoleculeRotateToPrincipalAxisSystem 7159 - MoleculeTranslation (also for periodic) 7160 - MpqcParser 7161 - PcpParser 7162 - PdbParser 7163 - TremoloParser 7164 - XyzParser 7165 - FindNonConvexBorder(): status was always returned as false as all 7166 CheckListOfBaselines() had been commented out. 7167 7168 commit caeeb80840441e26c65bc21cf81c49717188c5b4 7169 Author: Frederik Heber <heber@ins.uni-bonn.de> 7170 Date: Wed Apr 27 11:16:03 2011 +0200 7171 7172 Changes to regression tests: replaced all $file in ".../post/$file" by file name. 7173 7174 - target files must not be in variables, their name is fixed by the filesystem! 7175 7176 commit 23b0c2555391ed336a0a7589e88eb386466789ce 7177 Author: Frederik Heber <heber@ins.uni-bonn.de> 7178 Date: Wed Apr 27 10:59:00 2011 +0200 7179 7180 Restructured test*.at files: 3-step-rule. 7181 7182 - three-step rule: setup, test, cleanup is now each separated by empty line. 7183 - test file name is (most of the time) placed into variable $file. 7184 7185 commit 61749d17054bcece39fba5420f0e225cd447c600 7186 Author: Frederik Heber <heber@ins.uni-bonn.de> 7187 Date: Thu Apr 21 19:46:27 2011 +0200 7188 7189 DISTFIX: package.m4 missing in several EXTRA_DISTS. 7190 7191 - also, removed $(srcdir) prefix from its Makefile target. 7192 7193 commit 8544a33cea3ab42744bfb8341060547cca13a1f4 7194 Author: Frederik Heber <heber@ins.uni-bonn.de> 7195 Date: Thu Apr 21 19:45:59 2011 +0200 7196 7197 DISTFIX: Missing header file World_calculations.hpp in src/Makefile.am. 7198 7199 commit fdcd1b73588b7c15f87110828836b0ef8c3f12ec 7200 Author: Frederik Heber <heber@ins.uni-bonn.de> 7201 Date: Thu Apr 21 18:35:34 2011 +0200 7202 7203 Moved DummyUI.hpp from unittests to Actions/unittests/stubs. 7204 7205 - note that it is only used there. 7206 - TESTFIX: changed inclusion in ActionSequenceUnitTest.cpp and 7207 ManipulateAtomsUnitTest.cpp. 7208 7209 commit 1e882ae154f988507b4a6df2947209c31d475449 7210 Author: Frederik Heber <heber@ins.uni-bonn.de> 7211 Date: Thu Apr 21 18:34:18 2011 +0200 7212 7213 DISTFIX: Removed unnecessary header file analysis_correlation.hpp in unittests/Makefile.am. 7214 7215 commit 4cf35ac91947662b202e1ff26e201da4fd076dba 7216 Author: Frederik Heber <heber@ins.uni-bonn.de> 7217 Date: Thu Apr 21 18:32:04 2011 +0200 7218 7219 DISTFIX: Missing header files in UIElements/Makefile.am. 7220 7221 - missing: 7222 - Menu/TextMenu/TxMenuLeaveAction.hpp 7223 - Qt4/Pipe/QtQueryPipe.hpp 7224 - removed allmocs.moc.cpp from QTUISOURCE and is added as nodist_SOURCES as it 7225 is a temporary file. 7226 - we now require automake 1.5 due to the above dist_, nodist_ feature. 7227 7228 commit 94c3e76bff1ec090197bc0cff9b1bbf7cf328c05 7229 Author: Frederik Heber <heber@ins.uni-bonn.de> 7230 Date: Thu Apr 21 18:30:58 2011 +0200 7231 7232 DISTFIX: Header file Shapes/ShapeExceptions.hpp missing in Shapes/Makefile.am. 7233 7234 commit f134463bea77189705391c669077a617459502f9 7235 Author: Frederik Heber <heber@ins.uni-bonn.de> 7236 Date: Thu Apr 21 18:30:35 2011 +0200 7237 7238 FIX: .def, .undef files missing in RandomNumbers/Makefile.am. 7239 7240 commit db3dd2dc28f5ae2ebe06a69929596195f91bfa51 7241 Author: Frederik Heber <heber@ins.uni-bonn.de> 7242 Date: Thu Apr 21 18:29:49 2011 +0200 7243 7244 DISTFIX: molecuilder_DATA was missing in EXTRA_DIST. 7245 7246 - caused missing elements.db, ... 7247 7248 commit 36f507b1bd1ba07a2cd1197180a6c112e95869c6 7249 Author: Frederik Heber <heber@ins.uni-bonn.de> 7250 Date: Thu Apr 21 18:28:17 2011 +0200 7251 7252 DISTFIX: Added missing header files to src/Makefile.am. 7253 7254 - missing: 7255 - AtomSet.hpp 7256 - Descriptors/DescriptorBase.hpp and _impl.hpp 7257 - Descriptors/SelectiveIterator.hpp and _impl.hpp 7258 - BoundaryMaps.hpp 7259 - types.hpp 7260 7261 commit 9cd9ab2e11c145454ffd01534ce03b8cc6602d9a 7262 Author: Frederik Heber <heber@ins.uni-bonn.de> 7263 Date: Thu Apr 21 18:27:32 2011 +0200 7264 7265 FIX: version.c is now included in MOLECUILDERSOURCE in src/Makefile.am. 7266 7267 - header has been missing, too. 7268 7269 commit dd8990f0ba7a27ce4aa346f061b8500dc7c9dec0 7270 Author: Frederik Heber <heber@ins.uni-bonn.de> 7271 Date: Thu Apr 21 18:26:04 2011 +0200 7272 7273 FIX: .def files of Actions have not been present in Makefile.am, although similar to headers. 7274 7275 - added third variable ...DEFS to each subdir with all .def files. 7276 7277 commit 3001c9e46cce0362baca007b3c061df5e0baf9aa 7278 Author: Frederik Heber <heber@ins.uni-bonn.de> 7279 Date: Thu Apr 21 18:25:23 2011 +0200 7280 7281 FIX: LoadAction.cpp and RemoveAction.cpp were doubly included instead of header. 7282 7283 commit 7159ed14ff2a781a124ce96659b2d528034556fb 7284 Author: Frederik Heber <heber@ins.uni-bonn.de> 7285 Date: Thu Apr 21 18:23:50 2011 +0200 7286 7287 DISTFIX: Missing header files in Actions/Makefile.am 7288 7289 - missing: Action_impl_header.hpp, Actions_impl_pre.hpp, AtomsCalculation.hpp, 7290 and AtomsCalculation_impl.hpp. 7291 7292 commit c5e91c80bd1884a9970269987ac36bf8184710d6 7293 Author: Frederik Heber <heber@ins.uni-bonn.de> 7294 Date: Thu Apr 21 18:22:49 2011 +0200 7295 7296 DISTFIX: Exceptions.hpp and VectorSet.hpp missing in LinearAlgebra/Makefile.am. 7297 7298 commit c8cfe35f708ba5944ec355cd264568d01a3af341 7299 Author: Frederik Heber <heber@ins.uni-bonn.de> 7300 Date: Thu Apr 21 18:20:42 2011 +0200 7301 7302 DISTFIX: fixed typo in EXTRA_DIST. 7303 7304 commit 768459b03b26501a732a980c136f0b6dcf14a25c 7305 Author: Frederik Heber <heber@ins.uni-bonn.de> 7306 Date: Thu Apr 21 18:20:14 2011 +0200 7307 7308 DISTFIX: replaced testsuite*.at by the filenames. 7309 7310 commit 710dde4aedd658fec9779a8e9013ded56256bef5 7311 Author: Frederik Heber <heber@ins.uni-bonn.de> 7312 Date: Thu Apr 21 18:18:42 2011 +0200 7313 7314 DISTFIX: manpage file man-molecuilder.in is just molecuilder.in. 7315 7316 commit 1bd42dbd8bac0d3b5c6d6c7811c2397026d2e5e4 7317 Author: Frederik Heber <heber@ins.uni-bonn.de> 7318 Date: Thu Apr 21 18:17:23 2011 +0200 7319 7320 DOCUFIX: Fixed formula errors - replaced \text by \mathrm, \acos by \arccos. 7321 7322 commit dc322a95fe9cc369edc721168839af35d157982a 7323 Author: Frederik Heber <heber@ins.uni-bonn.de> 7324 Date: Thu Apr 21 18:16:19 2011 +0200 7325 7326 DISTFIX: need to use tar-pax to allow for longer filenames in dist's archive. 7327 7328 commit 50228e270e2ef3c849bd22b5d3dd8ee9461a9d62 7329 Author: Frederik Heber <heber@ins.uni-bonn.de> 7330 Date: Thu Apr 21 18:15:03 2011 +0200 7331 7332 DISTFIX: in EXTRA_DIST autogen.sh instead of bootstrap was still listed. 7333 7334 commit dac853cbf770cdeafc4bdd7d6a4ed6e9869cea86 7335 Author: Frederik Heber <heber@ins.uni-bonn.de> 7336 Date: Thu Apr 21 14:03:37 2011 +0200 7337 7338 Rewrote HelpAction. 7339 7340 - is currently only useful to CommandLineParser. 7341 - gives general help and either list of Actions or an Action's help. 7342 - TESTFIX: changed regression test on help as output changed (a lot). 7343 7344 commit 406bb5602ebca0fb814a7bc8777383eb42c9599a 7345 Author: Frederik Heber <heber@ins.uni-bonn.de> 7346 Date: Thu Apr 21 14:03:08 2011 +0200 7347 7348 Removed verbosity of CommandLineWindow::display(). 7349 7350 - removed "Checking presence of ...". 7351 7352 commit ec098d161915883c8b8ee3b38268e0ea8e78164d 7353 Author: Frederik Heber <heber@ins.uni-bonn.de> 7354 Date: Thu Apr 21 13:58:38 2011 +0200 7355 7356 Made info of CommandLineParser::AddOptionToParser() prettier. 7357 7358 commit e4b2f62dfca2ad7ca11a6a9379376695981407b1 7359 Author: Frederik Heber <heber@ins.uni-bonn.de> 7360 Date: Thu Apr 21 13:57:28 2011 +0200 7361 7362 Added Action::help(). 7363 7364 - Action::help() returns a string that enlists all of its options including 7365 type of argument and default values. This will be used by HelpAction. 7366 7367 commit 13799e61558eed972ef8a0528faff8bbe010609e 7368 Author: Frederik Heber <heber@ins.uni-bonn.de> 7369 Date: Thu Apr 21 13:57:08 2011 +0200 7370 7371 FIX: Action::getName() is now const member function. 7372 7373 commit 3bd460af052917a45d592fa6b0fec95c039cefb1 7374 Author: Frederik Heber <heber@ins.uni-bonn.de> 7375 Date: Mon Apr 18 18:02:39 2011 +0200 7376 7377 All Actions on domain now state the final domain size. 7378 7379 - default text is "Box domain is now ..." and is checked also in regression 7380 test. 7381 7382 commit b7fbf02193ab395cdbc7ff2dd356938ee5660022 7383 Author: Frederik Heber <heber@ins.uni-bonn.de> 7384 Date: Mon Apr 18 17:42:35 2011 +0200 7385 7386 FIX: select-molecule-by-id crashed when no molecules are present. 7387 7388 - each molecule selection action checks whether molecules are present at all 7389 - rewrote MoleculeByIdActions to take integer from command-line not molecule 7390 reference and perform the MoleculeById selection themselves (as do all other 7391 Actions, too). 7392 - this fixes ticket #134. 7393 7394 commit b404da2c175e7f9b95c08827089310ea2a800703 7395 Author: Frederik Heber <heber@ins.uni-bonn.de> 7396 Date: Sat Apr 2 03:01:21 2011 +0200 7397 7398 Set version to 1.1.2. 7399 7400 - library is now 4:0:0 due to "removal" of LinearAlgebra. 7401 7402 commit 7a1dd0dd732364be0f3893be54188e99c0bbc3ce 7403 Author: Frederik Heber <heber@ins.uni-bonn.de> 7404 Date: Mon Apr 18 12:05:27 2011 +0200 7405 7406 Added regression tests on parsing present but empty files. 7407 7408 - every Parser now first loads an empty file (no newlinw, 0 bytes) as initial 7409 regression test. 7410 - this closes ticket #131. 7411 7412 commit 4fdc6536733f18fb07af327a470c5552ca8c10ce 7413 Author: Frederik Heber <heber@ins.uni-bonn.de> 7414 Date: Mon Apr 18 16:57:15 2011 +0200 7415 7416 FIX: XyzParser and PcpParser fail on empty but present config files. 7417 7418 - XyzParser::load() do..while -> while 7419 - ConfigFileBuffer::InitFileBuffer() do..while -> while 7420 - ParseForParameter() - check whether initially CurrentLine < NoLines. 7421 - NOTE: ConfigFileBuffer is not written in a stable manner, checks and 7422 encapsulation are missing. It should be refactored. 7423 7424 commit 305e7e066de5b54b2aeede90057a8e00faffd49c 7425 Author: Frederik Heber <heber@ins.uni-bonn.de> 7426 Date: Mon Apr 18 14:43:30 2011 +0200 7427 7428 FIX: Type is actually spelled type with TREMOLO. 7429 7430 - corrected in TremoloParser. 7431 - TESTFIX: the following tests has to be changed accordingly: 7432 - Parser/Tremolo 7433 - Parser/Tremolo-Potentials 7434 - Atoms/Add 7435 - Filling/FillVoidWithMolecule 7436 - Molecule/Copy 7437 7438 commit 4217e768dc3bd03c7e60ad2a4aaf951c557eab5a 7439 Author: Frederik Heber <heber@ins.uni-bonn.de> 7440 Date: Mon Apr 18 10:28:40 2011 +0200 7441 7442 Added regression test on --parse-tremolo-potentials. 7443 7444 commit 4555736a848291ba2a2394892fd02081032c5861 7445 Author: Frederik Heber <heber@ins.uni-bonn.de> 7446 Date: Wed Mar 2 17:25:13 2011 +0100 7447 7448 Large Commit: SUBDIRS in src/Makefile.am replaced by include. 7449 7450 - This should let make decide on the dependencies automatically. 7451 - We had to change each Makefile.am due to different relative location 7452 now. 7453 - FIX: convenience libs were not created due to lib_LT... instead of 7454 noinst_LT... (thanks, Ralf!) 7455 - FIX: convenience libs cannot pass on dependencies on real libs, these 7456 (seemingly: libLinearAlgebra) have to be re-specified. 7457 - FIX: RANDOMSOURCE/HEADER were still present to include in libMolecuilder 7458 although RandomNumbers have been outsourced for some time already. 7459 - this should make it a lot easier for unit tests to get away with the 7460 massive dependencies because we may now include single libs and can 7461 construct stubs in replacement. 7462 7463 commit ca2cfa90c7de8dcc5abc2fe3009b82a5946e1c28 7464 Author: Frederik Heber <heber@ins.uni-bonn.de> 7465 Date: Mon Apr 18 14:44:04 2011 +0200 7466 7467 FIX: TremoloParser writes neighbours as sorted list. 7468 7469 - TremoloParser::writeNeighbors(): indices of neighbors are now written in 7470 sorted manner. 7471 7472 commit bf4b9ff97113f58a6031de8f9e67813336ae63f1 7473 Author: Frederik Heber <heber@ins.uni-bonn.de> 7474 Date: Sat Apr 2 02:53:43 2011 +0200 7475 7476 Moved LinearAlgebra from folder src/ into distinct sub-package. 7477 7478 - src/LinearAlgebra folder is now LinearAlgebra/src/LinearAlgebra due to 7479 include consistency. 7480 - src/LinearAlgebra/unittests have been moved to LinearAlgebra/unittests. 7481 - All Makefile.am's had to be changed due to changed location of library. 7482 - renamed libMolecuilderLinearAlgebra to libLinearAlgebra. 7483 - CONFIG_AUX_DIR is build-aux 9for molecuilder and LinearAlgebra). 7484 - m4 is symlinked from below. 7485 - build-aux now contains small README such that it is created automatically. 7486 7487 commit 3e2225f811016c9e0bb983b9e653cc67856805b1 7488 Author: Frederik Heber <heber@ins.uni-bonn.de> 7489 Date: Sat Apr 2 01:11:48 2011 +0200 7490 7491 Removed subdir Exceptions and libMolecuilderExceptions. 7492 7493 - changes in many Makefile.am's. 7494 - this completes replacement of Exceptions by boost::exception. 7495 7496 commit 336e331077ae1495a8fb791f9f59393e6adcb006 7497 Author: Frederik Heber <heber@ins.uni-bonn.de> 7498 Date: Sat Apr 2 01:03:04 2011 +0200 7499 7500 Removed MissingValueException from Exceptions. 7501 7502 - is now boost::exception-derived in ValueStorage.hpp. 7503 7504 commit 88267818974ad107d18379d2ec3d0d19c96351bd 7505 Author: Frederik Heber <heber@ins.uni-bonn.de> 7506 Date: Sat Apr 2 00:29:00 2011 +0200 7507 7508 Removed IllegalTypeException from Exceptions. 7509 7510 - is now boost::exception-derived in ValueStorage.hpp. 7511 7512 commit b94634903469fbb4f8f27672f141d13d2700a169 7513 Author: Frederik Heber <heber@ins.uni-bonn.de> 7514 Date: Sat Apr 2 00:08:13 2011 +0200 7515 7516 Removed NotOnSurfaceException and ShapeException from Exceptions. 7517 7518 - ShapeException is now base class for NotOnSurfaceException, both are derived 7519 from boost::exception. 7520 7521 commit b88fe4cde25eb17a90126edc680f80f5b35c49c9 7522 Author: Frederik Heber <heber@ins.uni-bonn.de> 7523 Date: Sat Apr 2 00:03:21 2011 +0200 7524 7525 Removed Exceptions/FormulaStringParseException. 7526 7527 - is now boost::exceptions-derived and part of Formula. 7528 7529 commit 00bb38e01da38a92854e72c77a6654dea58e2626 7530 Author: Frederik Heber <heber@ins.uni-bonn.de> 7531 Date: Fri Apr 1 23:33:38 2011 +0200 7532 7533 Removed libMolecuilderExceptions from LinearAlgebra. 7534 7535 - now we may place LinearAlgebra into own autoconf sub-package. 7536 7537 commit 783e885947b7814a6e0a4ae6029926646165b744 7538 Author: Frederik Heber <heber@ins.uni-bonn.de> 7539 Date: Fri Apr 1 23:30:33 2011 +0200 7540 7541 Removed LinearDependenceException, MultipleSolutionsException and MathException from Exceptions. 7542 7543 - the first two are now boost::exception-derived. 7544 - LinearAlgebraException takes the place of MathException where both have to be 7545 caught. 7546 7547 commit 8b9c43d8a9fd262a308876876cf5a443b3dbb2b8 7548 Author: Frederik Heber <heber@ins.uni-bonn.de> 7549 Date: Fri Apr 1 22:27:13 2011 +0200 7550 7551 Removed Exceptions/ZeroVectorException. 7552 7553 - is now boost::exception-derived. 7554 - new error_info LinearAlgebraVector. 7555 7556 commit a700c4c185c43a45a447fc2167a3e93e0a5ef567 7557 Author: Frederik Heber <heber@ins.uni-bonn.de> 7558 Date: Fri Apr 1 22:02:47 2011 +0200 7559 7560 Removed Exceptions/NotInvertibleException. 7561 7562 - is now a boost::exception-derived LinearAlgebraException. 7563 - error_info LinearAlgebraMatrixContent now takes const MatrixContent * const. 7564 7565 commit 3bfd78571692d65b69ab59f338e6f7ff197af6f0 7566 Author: Frederik Heber <heber@ins.uni-bonn.de> 7567 Date: Fri Apr 1 21:52:21 2011 +0200 7568 7569 LinearAlgebra now begins having its own exceptions derived from boost::exceptions. 7570 7571 - boost::exceptions allows to add arbitrary information in higher context to 7572 a thrown exception and has a nice diagnostic output, allowing so-called 7573 exception wrapping maintaining exception-neutrality. 7574 - deleted Exceptions/SkewExceptions.* 7575 - new file LinearAlgebra/Exceptions.hpp. 7576 7577 commit 2558294f484d39a0281f98d18f6262ab77448e87 7578 Author: Frederik Heber <heber@ins.uni-bonn.de> 7579 Date: Fri Apr 1 21:26:03 2011 +0200 7580 7581 Removed Helpers.hpp, deleted Helpers.cpp and libMoleCuilderHelpers.la is history. 7582 7583 - defs.cpp is now compiled into libmolecuilder.la. 7584 - ShapeUnitTest alone needs defs.cpp. 7585 - Most changes are removal of Helpers/helpers.hpp. 7586 - performCriticalExit() now inline function in Helpers/helpers.hpp. 7587 - also inclusion possible where performCriticalExit() is needed. 7588 - Helpers/helpers.hpp does not include defs.hpp anymore and this causes 7589 lots of missing Helpers/defs.hpp, CodePatterns/Log.hpp and alikes. 7590 - removed src/Helpers from configure.ac. 7591 7592 commit 8766e72010ab64c79807df9ff4eb81ce55f43598 7593 Author: Frederik Heber <heber@ins.uni-bonn.de> 7594 Date: Fri Apr 1 20:17:43 2011 +0200 7595 7596 FIX: setRandomRotation() used probably faulty rotation matrix. 7597 7598 - MatrixTest::RotationTest() indicated that rotation matrix did not have 7599 a unit determinant. Hence, it cannot be an orthogonal matrix. 7600 - instead we use function RealSpaceMatrix::setRotation() instead. 7601 7602 commit b81f1c37e2cae3aa13b96b83b26fd5091886b161 7603 Author: Frederik Heber <heber@ins.uni-bonn.de> 7604 Date: Fri Apr 1 17:14:39 2011 +0200 7605 7606 Removed libMolecuilderRandomNumbers from LinearAlgebra. 7607 7608 - added RealSpaceMatrix::setRotation() that accepts phi[NDIM]. 7609 - moved RealSpaceMatrix::setRandomRotation() to boundary.cpp where it is solely 7610 used. 7611 7612 commit 819cbed89a1b1c8ad28590a925dbf1e1e2054c50 7613 Author: Frederik Heber <heber@ins.uni-bonn.de> 7614 Date: Fri Apr 1 17:12:21 2011 +0200 7615 7616 FIX: MatrixTest::RotationTest() allowed also rotations matrices with det of -1. 7617 7618 commit 0a60eeb5e43ca7bfc3e01dd52cc33418b116bbed 7619 Author: Frederik Heber <heber@ins.uni-bonn.de> 7620 Date: Fri Apr 1 17:11:55 2011 +0200 7621 7622 Removed libMolecuilderHelpers from LIBADDs in LinearAlgebra. 7623 7624 commit 71129f9baea5c7b294d5612a2cf24cf00ef7b14e 7625 Author: Frederik Heber <heber@ins.uni-bonn.de> 7626 Date: Fri Apr 1 16:28:45 2011 +0200 7627 7628 Removed inclusion of Helpers/...hpp from LinearAlgebra. 7629 7630 - VectorContent needed replacing MYEPSILON by LINALG_MYEPSILON. 7631 - LINALG_MYEPSILON is now function (defines are ugly!) that returns 7632 numeric_limits<double>::epsilon() 7633 7634 commit 5605793b50554c75171309f425f1848783edb5d0 7635 Author: Frederik Heber <heber@ins.uni-bonn.de> 7636 Date: Fri Apr 1 15:42:40 2011 +0200 7637 7638 Moved PLURAL_S from Helpers/helpers to UIElements/Views/Qt4/QtStatusBar. 7639 7640 commit 0d03166b84523d21b5a24e252f06c2d1c8836345 7641 Author: Frederik Heber <heber@ins.uni-bonn.de> 7642 Date: Fri Apr 1 15:36:59 2011 +0200 7643 7644 Removed FixedDigitNumber from Helpers/helpers. 7645 7646 - is now inlined function with MoleculeListClass and parser's MatrixContainer. 7647 7648 commit 67acff3b2b5a7a2780e62d6485ef467f15c03a57 7649 Author: Frederik Heber <heber@ins.uni-bonn.de> 7650 Date: Fri Apr 1 15:30:04 2011 +0200 7651 7652 Removed debug and debug_in that are no longer used. 7653 7654 commit 88874313f4197328929a0851202248fa35de9d9a 7655 Author: Frederik Heber <heber@ins.uni-bonn.de> 7656 Date: Fri Apr 1 15:24:37 2011 +0200 7657 7658 BUGFIX: VectorContent::free_content_on_exit not initialised for VectorBaseCase. 7659 7660 commit cd406d8141ce4864a4ec88d2970d8b496562a3bd 7661 Author: Frederik Heber <heber@ins.uni-bonn.de> 7662 Date: Fri Apr 1 15:24:08 2011 +0200 7663 7664 Moved sign() from Helpers/helpers to LinearAlgebra/fast_functions.hpp. 7665 7666 commit 6f68d6fb6d9ac0188a952835078622c964fe52dc 7667 Author: Frederik Heber <heber@ins.uni-bonn.de> 7668 Date: Wed Mar 30 22:45:38 2011 +0200 7669 7670 Added possibility to parse MatrixContent from stream and to write to. 7671 7672 - MatrixContent::preparseMatrixDimensions() needed due to const members rows 7673 and columns. 7674 - extended present unit test on both features. 7675 7676 commit 0e4aa4d2a8b0ce6daba3c91d5905d1a870b8d520 7677 Author: Frederik Heber <heber@ins.uni-bonn.de> 7678 Date: Wed Mar 30 21:25:24 2011 +0200 7679 7680 FIX: MatrixContent::sortEigenbasis() sorted by magnitude not value. 7681 7682 commit abfb12fe5dc5a45969d3e096df350658a1bfb9e3 7683 Author: Frederik Heber <heber@ins.uni-bonn.de> 7684 Date: Wed Mar 30 21:23:58 2011 +0200 7685 7686 VectorContent also free's ::content when delivered by pointer. 7687 7688 - the constructor with pointer argument is meant as a wrapper around a normal 7689 gsl_vector. Hence, it should not free the gsl_vector itself. 7690 7691 commit 644d03de2a9c4ec1df012d1871b381ea3c5c9d13 7692 Author: Frederik Heber <heber@ins.uni-bonn.de> 7693 Date: Wed Mar 23 21:28:49 2011 +0100 7694 7695 Added operator+ and operator- for two MatrixContent's. 7696 7697 - += and -= have been present and all for VectorContent, but + and - were\ 7698 missing for MatrixContent. Added those two. 7699 7700 commit a9c55698942f788e19972e1ede73d15250e27283 7701 Author: Frederik Heber <heber@ins.uni-bonn.de> 7702 Date: Mon Mar 14 17:15:28 2011 +0100 7703 7704 Removed Subspace stuff from this project. 7705 7706 - has been relayed along with unit test into its own project: 7707 SubspaceFactorizer. 7708 7709 commit 06aedcbf17e4e4c9e8e3bb29a2bca5c03beb986b 7710 Author: Frederik Heber <heber@ins.uni-bonn.de> 7711 Date: Mon Mar 14 11:41:50 2011 +0100 7712 7713 libMolecuilderLinearAlgebra is now a self-contained library fit for external use. 7714 7715 - added LinearAlgebra.pc.in and LinearAlgebra-debug.pc.in (both require 7716 CodePatterns, the latter CodePatterns-debug). 7717 - added LINEARALGEBRA_SO_VERSION (set to 1.0.0) to configure.ac. 7718 - moved NDIM from Helpers/defs.hpp to new file LinearAlgebra/defs.hpp. 7719 7720 commit 9b410d4225f83b0e1aa39d84b3bd1bf3123fc2b3 7721 Author: Frederik Heber <heber@ins.uni-bonn.de> 7722 Date: Mon Mar 14 14:54:08 2011 +0100 7723 7724 Replace MYEPSILON in LinearAlgebra/ by LINALG_MYEPSILON. 7725 7726 - this is preparatory for external use lib libmolecuilderLinearAlgebra. 7727 - new file LinearAlgebra/defs.hpp. 7728 7729 commit 1be8a5db51403592a61b0f3071550ee1f2030c56 7730 Author: Frederik Heber <heber@ins.uni-bonn.de> 7731 Date: Mon Mar 14 14:37:17 2011 +0100 7732 7733 Changed inclusion of LinearAlgebra/Vector.cpp. 7734 7735 - Removed unneeded inclusion of World.hpp from LinearAlgebra/Vector.cpp. 7736 - Added required inclusion of cmath to LinearAlgebra/Vector.cpp. 7737 7738 commit dcc22897f02ef806a05b6d07248b009c7d3925a5 7739 Author: Frederik Heber <heber@ins.uni-bonn.de> 7740 Date: Mon Mar 7 12:02:03 2011 +0100 7741 7742 Added script to check all commits in a given range externally. 7743 7744 - i.e. the repository is cloned and we go through every commit in the range 7745 by a respective git checkout including bootstrap, configure, make, and 7746 make check phase, both with and without debug. 7747 7748 commit a9b20c0e45ff5b27b12063c8931880d9e3b01794 7749 Author: Frederik Heber <heber@ins.uni-bonn.de> 7750 Date: Sat Apr 2 02:58:32 2011 +0200 7751 7752 Set current version to 1.1.1. 7753 7754 - library is now 3:0:0. 7755 7756 commit 37b2f913fa2e9ffae9bf60705af9678b84b39b29 7757 Author: Frederik Heber <heber@ins.uni-bonn.de> 7758 Date: Mon Mar 7 12:01:35 2011 +0100 7759 7760 Added doc/html to gitignore. 7761 7762 commit 61775a83598a3d535d294335a2a8bb6232049f6d 7763 Author: Frederik Heber <heber@ins.uni-bonn.de> 7764 Date: Thu Mar 3 02:29:55 2011 +0100 7765 7766 Removed templated CreateFatherLookupTable from helpers.hpp. 7767 7768 commit 13a95397b14b03aa8f1b4580623690439ed06e5a 7769 Author: Frederik Heber <heber@ins.uni-bonn.de> 7770 Date: Thu Mar 3 02:28:42 2011 +0100 7771 7772 Moved molecule::CheckAdjacencyAgainstFile() into functor in Graph/. 7773 7774 - Note that this is currently not working because there is no correct mapping 7775 from indices in the adjacency file to the indices of the atoms (and without 7776 some fixed mean of aligning atoms, this will never be possible). 7777 7778 commit 2d4334de0df04fbf9bf9d9b86cdd57638d71e072 7779 Author: Frederik Heber <heber@ins.uni-bonn.de> 7780 Date: Thu Mar 3 01:11:14 2011 +0100 7781 7782 Moved BuildInducedSubgraph from molecule into functor in Graph/. 7783 7784 - BuildInducedSubgraph::ParentList has been reworked into map<atom*,atom*>. 7785 7786 commit dda246d334045cb752f130960f92fe011e0d85b8 7787 Author: Frederik Heber <heber@ins.uni-bonn.de> 7788 Date: Wed Mar 2 00:23:25 2011 +0100 7789 7790 Made Helpers into commodity library to prevent double inclusion. 7791 7792 - This is also preparatory for Makefile refactoring. 7793 7794 commit d09093c691897e07d538a3b07ec8605572e2d8a9 7795 Author: Frederik Heber <heber@ins.uni-bonn.de> 7796 Date: Tue Mar 1 15:22:07 2011 +0100 7797 7798 Moved all graph-related Actions into own folder Actions/GraphAction/. 7799 7800 - added new graph menu to MenuDescription. 7801 - added new action menu Graph to CommandLineParser. 7802 7803 commit 197e13d45cf228a9931bce7e6337668093466a83 7804 Author: Frederik Heber <heber@ins.uni-bonn.de> 7805 Date: Wed Mar 2 14:31:11 2011 +0100 7806 7807 Added MenuDescription_ActionRegistry_ConsistenyUnitTest to check whether Actions have menus not listed in MenuDescription. 7808 7809 - Menus may be added to Actions and there is so far no check on whether 7810 MenuDescriptions, i.e. the base for the menus of both QtUI and TextUI, 7811 knows about this Menu (it needs respective entries in three contained maps). 7812 7813 commit 19290fc182f2d682bc1633033fa3d3bb37d1c9d0 7814 Author: Frederik Heber <heber@ins.uni-bonn.de> 7815 Date: Wed Mar 2 14:12:54 2011 +0100 7816 7817 Added CommandLineParser_ActionRegistry_ConsistenyUnitTest to check whether Actions have menus not listed in CommandLineParser. 7818 7819 - Menus may be added to Actions and there is so far no check on whether 7820 CommandLineParser knows about this Menu (it needs a respective 7821 program_options map). 7822 7823 commit c6e5eb04bc75c10ffa001730944df215d101dbb7 7824 Author: Frederik Heber <heber@ins.uni-bonn.de> 7825 Date: Wed Mar 2 15:40:38 2011 +0100 7826 7827 FIX: CommandLineParser::setOptions() added option_descriptions hard-coded. 7828 7829 - this is prone to errors (which took us a while to find), instead all 7830 contained in CmdParserLookup are added to both visible and cmdline_options. 7831 7832 commit 137ae140606b0df28861bb9c9f5359feb7c1bac3 7833 Author: Frederik Heber <heber@ins.uni-bonn.de> 7834 Date: Wed Mar 2 14:32:43 2011 +0100 7835 7836 FIX: Made MenuDescriptionTest::ConsistencyCheck()'s failure message a bit clearer by giving missing token. 7837 7838 commit 7d8aa0ed294faa7d4ce63827ae1a11ba140ffe4d 7839 Author: Frederik Heber <heber@ins.uni-bonn.de> 7840 Date: Wed Mar 2 14:11:04 2011 +0100 7841 7842 Typo in protecting define for MenuDescriptionUnitTest. 7843 7844 commit efe5160ad303df71b958a8e888770461a77b5bae 7845 Author: Frederik Heber <heber@ins.uni-bonn.de> 7846 Date: Tue Mar 1 15:16:44 2011 +0100 7847 7848 Removed bond::nr. 7849 7850 - has only been used by BreadthFirstSearchAdd. 7851 - changed BreadthFirstSearchAdd::AddedBonds into map<bond*,bond*>. 7852 7853 commit 2fa1dcc10971a1dc0e6a4500bbaec2e5135ac6ec 7854 Author: Frederik Heber <heber@ins.uni-bonn.de> 7855 Date: Fri Feb 25 23:49:02 2011 +0100 7856 7857 Removed regression folders Fragmentation/2ndOrder and ./MaxOrder. 7858 7859 commit 49c059c36d49bc80016beb5b2ba5a56947f5f28c 7860 Author: Frederik Heber <heber@ins.uni-bonn.de> 7861 Date: Fri Feb 25 23:15:31 2011 +0100 7862 7863 Moved DepthFirstSearchAnalysis into functor in Graph/. 7864 7865 Smaller fixes: 7866 - molecule::CorrectBondDegree() - does not rely on BondCount which was not 7867 necessary anyway. 7868 7869 - DFS does not copy atoms or molecules anymore but reinitiates the current 7870 molecule structure with present atoms, used new class ConnectedSubgraph for 7871 that. New functions: 7872 - UpdateMoleculeStructure() - reinstantiates molecules. 7873 - getMoleculeStructure() - puts molecules into chained list. 7874 - adapted because of that: 7875 - DepthFirstSearchAction: uses DFS and CSA functors, also 7876 UpdateMoleculeStructure() such that CSA has current structure. 7877 - FragmentationAction: assumes connectivity fully present, DFS created. 7878 - SubgraphDissectionAction: uses DFS and UpdateMoleculeStructure(). 7879 - molecule::FragmentMolecule(): no more DFS, instead DFS has to happen 7880 beforehand and is given as parameter, used to obtain chained list for 7881 compatibility for the moment. 7882 - DepthFirstSearchAnalysis::SetNextComponentNumber() bugfix due to wrong 7883 assert. 7884 7885 TESTFIXES: 7886 - Fragmentation and regression test Fragmentation/FragmentMolecule: 7887 FragmentationAction now needs SubgraphDissectionAction beforehand. 7888 - shifted id (down by one) due to non-copying (before: one big molecule, 7889 copied and split up system started at 1, now it starts at 0): 7890 - (Un)Selection/Atoms/AllAtomsOfMolecule 7891 - Analysis/SurfaceCorrelation 7892 - (Un)Selection/Molecules/MoleculeById (also renamed post-files accordingly) 7893 - (Un)Selection/Molecules/MoleculeByName 7894 7895 commit 1a4d4fe643276ccfaf48040266dbe8e6b192ced2 7896 Author: Frederik Heber <heber@ins.uni-bonn.de> 7897 Date: Fri Feb 25 22:26:03 2011 +0100 7898 7899 FIX: bond::~bond() checks whether the bond is a ring circle, leftatom == rightatom. 7900 7901 - Unregistering the same atom again leads to seg'fault. 7902 7903 commit e73ad9a5d1596d6e9a9f9c6a17bf256479595404 7904 Author: Frederik Heber <heber@ins.uni-bonn.de> 7905 Date: Fri Feb 25 21:52:50 2011 +0100 7906 7907 Moved CyclicStructureAnalysis from molecule_graph.cpp into own functor in Graph/. 7908 7909 - libMolecuilderGraph needed by libMolecuilderAction and libMolecuilder now. 7910 - replacing call to CyclicStructureAnalysis in molecule::FragmentMolecule() 7911 required removing MinimumRingSize from ::FragmentBOSSANOVA() and 7912 ::CheckOrderAtSite(). 7913 - replaced call in DepthFirstSearchAction. 7914 7915 commit 2e4105630d51f1e775d9d45b32869bce5c038470 7916 Author: Frederik Heber <heber@ins.uni-bonn.de> 7917 Date: Fri Feb 25 21:44:07 2011 +0100 7918 7919 molecule::erase() is only used by atom::removeFromMolecule(). 7920 7921 - everywhere else -- even within molecule -- we call 7922 atom::removeFromMolecule(). 7923 - molecule::erase() is private, atom is friend to underline this. 7924 7925 commit 0d9546d9326121813c893132980c5ec73e25ec7f 7926 Author: Frederik Heber <heber@ins.uni-bonn.de> 7927 Date: Fri Feb 25 21:35:47 2011 +0100 7928 7929 new function atom::unsetMolecule(). 7930 7931 - is meant along with setMolecule() to be used by molecule only to allow for 7932 (un)setting mol reference. 7933 - atom::(un)setMolecule() is private. 7934 - AtomicInfo added also as friend to atom::setMolecule(). 7935 7936 commit 1363de855fb482f9b1722a9ca5ef1aa1bde95a88 7937 Author: Frederik Heber <heber@ins.uni-bonn.de> 7938 Date: Fri Feb 25 21:35:17 2011 +0100 7939 7940 DOCUFIX: atom - Moved all doxygen documentation to header file. 7941 7942 commit 09ac12a511805f41520d52c772d21c17d8247458 7943 Author: Frederik Heber <heber@ins.uni-bonn.de> 7944 Date: Fri Feb 25 21:04:45 2011 +0100 7945 7946 Added new class ConnectedSubgraph. 7947 7948 - inherits list<atom *>. 7949 - will be later used by DepthFirstSearchAnalysis. 7950 - mostly contains a function to generate a molecule from the contained atom list. 7951 7952 commit 111387aec9ad3d775c5a8463dc8ce9dafad22cd6 7953 Author: Frederik Heber <heber@ins.uni-bonn.de> 7954 Date: Fri Feb 25 22:01:16 2011 +0100 7955 7956 FIX: BreadthFirstSearchAdd header only includes GraphEdge, not bond anymore. 7957 7958 commit 12920404e7a45c1ac4fe563b7c5a29891f5e662a 7959 Author: Frederik Heber <heber@ins.uni-bonn.de> 7960 Date: Fri Feb 25 20:58:54 2011 +0100 7961 7962 Moved bond.* to Bond/, new class GraphEdge which contains graph parts of bond. 7963 7964 - enums Shading and EdgeType are now part of GraphEdge, hence bigger change in 7965 the code where these are used. 7966 7967 commit 766ba546abe583269feb13496ad21d0857081c89 7968 Author: Frederik Heber <heber@ins.uni-bonn.de> 7969 Date: Fri Feb 25 16:54:48 2011 +0100 7970 7971 bond::GetColor() is now static function bond::getColorName(). 7972 7973 commit 53d6b265421d71dfd6355f93fe27b0b06473194f 7974 Author: Frederik Heber <heber@ins.uni-bonn.de> 7975 Date: Fri Feb 25 16:44:44 2011 +0100 7976 7977 Moved unused function BreadthFirstSearchAdd and subfunctions into functor in Graph/ 7978 7979 - new commodity library libMolecuilderGraph and new subfolder Graph with own 7980 Makefile.am. 7981 7982 commit 99752ac32a6b5b4b90ea6288654d966ac4421175 7983 Author: Frederik Heber <heber@ins.uni-bonn.de> 7984 Date: Fri Feb 25 16:40:39 2011 +0100 7985 7986 Moved FillBondStructureFromReference from MoleculeLeafClass to molecule. 7987 7988 commit c6123b29bfd4ed1187d08572debda704f114b2c4 7989 Author: Frederik Heber <heber@ins.uni-bonn.de> 7990 Date: Fri Feb 25 16:22:51 2011 +0100 7991 7992 Moved FillListOfLocalAtoms() from MoleculeLeafClass to molecule. 7993 7994 commit 341f2216a805ad9df99fc2dabe474ac6089179ff 7995 Author: Frederik Heber <heber@ins.uni-bonn.de> 7996 Date: Fri Feb 25 14:32:43 2011 +0100 7997 7998 Removed molecule_dynamics.cpp 7999 8000 commit 435065d3d9c23062fca0bb67ff882fade26acced 8001 Author: Frederik Heber <heber@ins.uni-bonn.de> 8002 Date: Wed Mar 2 22:48:20 2011 +0100 8003 8004 Rewrote VerletForceIntegration into a functor in Dynamics/. 8005 8006 - we now have the regression test working with checking against an integrated 8007 file which has not been checked though (just by eye and logged output to make 8008 sense, not against other code). 8009 8010 commit eb33c4a913ab83436dbf30ab934797ec2d623036 8011 Author: Frederik Heber <heber@ins.uni-bonn.de> 8012 Date: Wed Mar 2 22:40:51 2011 +0100 8013 8014 LinearInterpolationofTrajectoriesAction only interpolates, does not save. 8015 8016 - This should make the action more versatile. 8017 - Saving generated paths can easily be done (and is done so for regression 8018 test) by a specific SaveSelected..Action. 8019 8020 commit e355762f9447acb9c234eadd3df6adc314e5dee7 8021 Author: Frederik Heber <heber@ins.uni-bonn.de> 8022 Date: Fri Feb 25 12:41:34 2011 +0100 8023 8024 Rewrote MinimiseConstrainedPotential to just use std::map instead of arrays. 8025 8026 - MinimiseConstrainedPotential::operator() needs std::Map<atom*,atom*> as 8027 parameter for PermutationMap. 8028 8029 commit fe6f202b08255305d13ec735eddd6dc5bc8cdcf4 8030 Author: Frederik Heber <heber@ins.uni-bonn.de> 8031 Date: Fri Feb 25 12:20:54 2011 +0100 8032 8033 New Action SaveSelectedAtoms and renamed SaveAction -> SaveSelectedMoleculesAction. 8034 8035 - for molecules we have short cut "s", for atoms "S". 8036 - added regression tests for both: Atoms/SaveSelectedAtoms, 8037 Molecules/SaveSelectedMolecules. 8038 8039 commit 8009ce8388c713891077297db7c3f7b0aa88b397 8040 Author: Frederik Heber <heber@ins.uni-bonn.de> 8041 Date: Fri Feb 25 10:57:50 2011 +0100 8042 8043 Rewrote OutputTemperature into a functor in Dynamics/ 8044 8045 - formerly called molecule::OutputTemperatureFromTrajectories(). 8046 - removed shortform of SaveTemperatureAction. 8047 8048 commit 20943bae7a201e8b438123cacbc942e875e959a9 8049 Author: Frederik Heber <heber@ins.uni-bonn.de> 8050 Date: Fri Feb 25 10:39:10 2011 +0100 8051 8052 Rewrote LinearInterpolationBetweenSteps into a functor in Dynamics/ 8053 8054 - formerly called molecule::LinearInterpolationBetweenConfigurations(). 8055 8056 commit 9e23a3785b6bdd916d370ba9157e9b76a1905c53 8057 Author: Frederik Heber <heber@ins.uni-bonn.de> 8058 Date: Fri Feb 25 00:49:26 2011 +0100 8059 8060 Rewrote MinimiseConstrainedPotential into a functor in Dynamics/. 8061 8062 - most of the stand-alone functions in molecule_dynamics.cpp have been moved to 8063 this functor as wel. 8064 - is used by both molecule::LinearInterpolationBetweenConfiguration() and 8065 molecule::VerletForceIntegration() for constrained dynamics. 8066 - MinimiseConstrainedPotential() works on molecule::atomSet for now. 8067 8068 commit 632508ffb01a2e25577835bce4302a652209e479 8069 Author: Frederik Heber <heber@ins.uni-bonn.de> 8070 Date: Mon Feb 28 17:11:28 2011 +0100 8071 8072 Moved files bondgraph.?pp -> Graph/BondGraph.?pp. 8073 8074 commit 607eab6774ab70357425ace73b68c00a831b78da 8075 Author: Frederik Heber <heber@ins.uni-bonn.de> 8076 Date: Mon Feb 28 17:06:03 2011 +0100 8077 8078 BondGraph::...MinMaxDistance() now return range<double> instead of ref as parameter. 8079 8080 commit cff66ce85fbde649305dc9b561722a14ecc7a26c 8081 Author: Frederik Heber <heber@ins.uni-bonn.de> 8082 Date: Mon Feb 28 16:16:58 2011 +0100 8083 8084 Removed bool is Angstroem from all BondGraph::...() member functions. 8085 8086 - we set IsAngstroem in constructor, and that's it. 8087 8088 commit 111f4abc5bb4e30485671304b58753988cb819bf 8089 Author: Frederik Heber <heber@ins.uni-bonn.de> 8090 Date: Mon Feb 28 16:14:28 2011 +0100 8091 8092 Const-ness and cosmetic fixes to class BondGraph. 8093 8094 - made CreateAdjacency and connected functions const members. 8095 8096 commit 0ec7fe4ea1bdaeb2d3d9ac09962de0ea7fc2bdcd 8097 Author: Frederik Heber <heber@ins.uni-bonn.de> 8098 Date: Mon Feb 28 16:11:16 2011 +0100 8099 8100 Removed BondGraph::max_distance along with getter and setter. 8101 8102 - SetMaxDistanceFromCovalentDistance() was nonsense and prone to faults and 8103 misunderstandings. 8104 - instead getMaxPossibleBondDistance() returns upper cutoff limit based on a 8105 given atomset. 8106 8107 commit 300220077f0507b7ef3d400de839792167c20b51 8108 Author: Frederik Heber <heber@ins.uni-bonn.de> 8109 Date: Mon Feb 28 16:00:34 2011 +0100 8110 8111 BondGraph::..MinMaxDistance() changed to use range<double>. 8112 8113 - requires CodePatterns 1.0.13 due to operator<< (range<T>) 8114 - all ...BondGraph::..MinMaxDistance() work on range, not two doubles. 8115 - only getMinMaxDistance(BondedParticle, BondedParticle, ...) available from 8116 outside. 8117 - new function getMinMaxDistanceSquared( <see above> ) for squared interval 8118 boundaries. 8119 - internal use element pointer: 8120 - getMinMaxDistance() 8121 - BondLengthMatrixMinMaxDistance() 8122 - CovalentMinMaxDistance() 8123 - getBondLength is now private and only unit tests are friends. 8124 8125 commit 0cbad258eb8c0251e3a78b10e2b68fdd0a5d2791 8126 Author: Frederik Heber <heber@ins.uni-bonn.de> 8127 Date: Sat Feb 19 00:39:44 2011 +0100 8128 8129 Moved molecule::CreateAdjacencyListFromDbondFile() over to BondGraph and made more flexible. 8130 8131 - extended molecule::CreateAdjacencyListFromDbondFile() to also parse TREMOLO's dbond files. 8132 - BondFileAction now has two more options: skiplines and offset to control 8133 parsing, default values assure behavior as has been. 8134 - same way CreateAdjacencyListFromDbondFile() has these two options added also. 8135 - extended regression test Molecule/BondFile with unconnected PDB and dbond 8136 file. 8137 8138 commit 3738f09a1261e51cc253cbaa8f4766bb8f945d68 8139 Author: Frederik Heber <heber@ins.uni-bonn.de> 8140 Date: Sat Feb 26 01:10:05 2011 +0100 8141 8142 Moved molecule::CreateAdjacencyList over to class BondGraph. 8143 8144 to make this possible we had to: 8145 - enhance AtomSet such that individual const_ and iterator are templated. 8146 - FIX: FragmentationCreateAdjacencyAction needs to call 8147 BondGraph::SetMaxDistanceToMaxOfCovalentRadii() before getMaxDistance() is 8148 valid. 8149 - new function molecule::getAtomSet() which copies the internal atomSet to a 8150 vector AtomSetMixin and delivers. This is needed as PointCloudAdaptor 8151 needs a reference to a AtomSetMixin and we don't want to expose the internal 8152 set. 8153 8154 other changes: 8155 - the following Actions do not create adjacency beforehand anymore: 8156 - DepthFirstSearchAction 8157 - MoleculeSaveAdjacencyAction 8158 - MoleculeSaveBondsAction 8159 - changes to BondGraph: 8160 - removed CreateAdjacencyForMolecule() 8161 - removed SetMaxDistanceToMaxOfCovalentRadii() 8162 - new function CreateAdjacency on LinkedCell reference 8163 - new BondGraph functions that work on AtomSetMixin reference: 8164 CreateAdjacency(), cleanAdjacencyList(), CorrectBondDegree(), 8165 resetBondDegree(), calculateBondDegree() 8166 8167 TESTFIXES: 8168 - the regression test for all Actions mentioned above that don't create 8169 adjacency themselves anymore needed to be prepended with --select-all-atoms 8170 --create-adjacency. 8171 8172 commit ce5f05ae4a35676c52abcb1eeb3e6e41b8849333 8173 Author: Frederik Heber <heber@ins.uni-bonn.de> 8174 Date: Fri Feb 18 17:24:28 2011 +0100 8175 8176 Moved Shading and EdgeType from defs.hpp to bond.hpp, getColor from molecule to class bond. 8177 8178 commit 4092c5c78798e52e100ca3ce7dfd3bfd5abc6ebb 8179 Author: Frederik Heber <heber@ins.uni-bonn.de> 8180 Date: Mon Feb 21 18:54:26 2011 +0100 8181 8182 Changed BondGraph::...MinMaxDistance()'s parameters to const BondedParticle * const. 8183 8184 - this is preparatory for upcoming PointCloudAdaptor change. 8185 8186 commit b9772ac7019d5e8e80610d7bb4890ee0d7b80b2b 8187 Author: Frederik Heber <heber@ins.uni-bonn.de> 8188 Date: Thu Feb 24 15:10:59 2011 +0100 8189 8190 Renamed function pointer in molecule::CreateAdjacencyList to minmaxdistance. 8191 8192 commit 4b5cf883862ad96db12b381ddaf008aad10edbe4 8193 Author: Frederik Heber <heber@ins.uni-bonn.de> 8194 Date: Mon Feb 21 14:13:04 2011 +0100 8195 8196 BondedParticle::OutputBondOfAtom() now takes stream to print to. 8197 8198 commit 458c3163eb1df36b974240aa85d9aa341ad4408a 8199 Author: Frederik Heber <heber@ins.uni-bonn.de> 8200 Date: Mon Feb 21 14:02:57 2011 +0100 8201 8202 molecule::BondCount is now Cachable and private. 8203 8204 - renamed CountBonds() -> doCountBonds in analogy to AtomCount. 8205 8206 commit d4a44c33452f58b4160eb88383f4287dfc249470 8207 Author: Frederik Heber <heber@ins.uni-bonn.de> 8208 Date: Mon Feb 21 15:04:46 2011 +0100 8209 8210 Renamed ConstructBondGraphAction -> CreateAdjacencyAction. 8211 8212 commit 715b678cb8ad05a00a33a86ee0b1583591a34ff1 8213 Author: Frederik Heber <heber@ins.uni-bonn.de> 8214 Date: Fri Feb 18 15:43:09 2011 +0100 8215 8216 Renamed BondGraph::ConstructBondGraph -> CreateAdjacencyForMolecule. 8217 8218 - first step in moving CreateAdjacencyList over to class BondGraph. 8219 8220 commit 7adf0f0365b80d1ba77645d14621706d522f8573 8221 Author: Frederik Heber <heber@ins.uni-bonn.de> 8222 Date: Fri Feb 18 15:28:52 2011 +0100 8223 8224 Removed molecule::BondDistance, replaced by BondGraph::getMinMaxDistance(). 8225 8226 - changed in: 8227 - molecule::AddHydrogenReplacementAtom() 8228 - StoreFragmentFromKeySet_Init() 8229 - molecule::DeterminePeriodicCenter() 8230 - molecule::CreateAdjacencyList() 8231 8232 commit e7350d47f72235f2bf1666ed2a77b529c06832a4 8233 Author: Frederik Heber <heber@ins.uni-bonn.de> 8234 Date: Fri Feb 18 15:27:56 2011 +0100 8235 8236 DOCUFIX: BondGraph - moved doxygen comments from cpp to header. 8237 8238 commit 72d90ed8a430eeb713d9ac53bb337fd6e8d4b404 8239 Author: Frederik Heber <heber@ins.uni-bonn.de> 8240 Date: Fri Feb 18 15:24:43 2011 +0100 8241 8242 New function BondGraph::getMinMaxDistance(). 8243 8244 - Covalent and BondLengthMatrix criteria are hidden behind that depending on 8245 whether the bond length matrix is set or not. 8246 - now private: 8247 - BondGraph::CovalentMinMaxDistance() 8248 - BondGraph::BondLengthMatrixMinMaxDistance() 8249 - adapted: 8250 - FragmentationConstructBondGraphAction 8251 - FragmentationDepthFirstSearchAction 8252 - FragmentationFragmentationAction 8253 8254 commit f71bafdd0857cf18158866b8a7878c1b33d586b6 8255 Author: Frederik Heber <heber@ins.uni-bonn.de> 8256 Date: Fri Feb 18 11:42:01 2011 +0100 8257 8258 Made BondGraph an instance of World, removed from config. 8259 8260 - BondGraph is instantiated from start of World and destroyed therein. 8261 - new getter and setter for BondGraph in World. 8262 - rewritten BondLengthTableAction. 8263 8264 commit 5309ba2259d81aba279e4520a5ebc51c898d8b75 8265 Author: Frederik Heber <heber@ins.uni-bonn.de> 8266 Date: Tue Feb 22 10:59:11 2011 +0100 8267 8268 Renamed ParticleInfo_nr back to Nr. 8269 8270 - Note that this mostly affected comments. 8271 8272 commit 735b1c1514f0f9ac27c1a3ef683b9fa6ea2cf010 8273 Author: Frederik Heber <heber@ins.uni-bonn.de> 8274 Date: Tue Feb 22 01:15:33 2011 +0100 8275 8276 ParticleInfo::ParticleInfo_nr is protected and accessed via getter/setter. 8277 8278 - many changes (~400) in molecule- and tesselation-related functions. 8279 8280 commit a479fa6f7cb1bddf84d6c12af3c09dc810b66580 8281 Author: Frederik Heber <heber@ins.uni-bonn.de> 8282 Date: Tue Feb 22 00:50:41 2011 +0100 8283 8284 Renamed ParticleInfo::nr to ParticleInfo::ParticleInfo_nr for easier privatization. 8285 8286 commit 5702cdb754fb52d78cf83a79c432e91bd88f4d4c 8287 Author: Frederik Heber <heber@ins.uni-bonn.de> 8288 Date: Thu Feb 24 23:07:45 2011 +0100 8289 8290 Removed molecule_pointcloud.cpp. 8291 8292 commit caa06ef709f013cc367466c6e351f0a834a0fc0d 8293 Author: Frederik Heber <heber@ins.uni-bonn.de> 8294 Date: Tue Feb 22 00:49:30 2011 +0100 8295 8296 Added name to PointCloudAdaptor, set by constructor. 8297 8298 - name is used in Tesselation to store in file and difficult to obtain via the 8299 PointCloud (e.g. std::list have not name, need to be wrapped again, ...) 8300 - removed expected-to-fail again from Tesselation/Convex, 8301 Tesselation/NonConvex, and Tesselation/BigNonConvex tests. 8302 8303 commit 34c43ab2d4d21658cd8b9c3134bf2f845cacdcfc 8304 Author: Frederik Heber <heber@ins.uni-bonn.de> 8305 Date: Mon Feb 21 19:02:41 2011 +0100 8306 8307 Bigger change: Replaced PointCloud by PointCloudAdaptor. 8308 8309 - PointCloud is no more inherited by classes molecule and Tesselation but an 8310 interface to an (templated) adaptor called PointCloudAdaptor. 8311 - As BoundaryPointSet only wraps TesselPoint member, we needed 8312 - use CodePatterns/IteratorAdaptors.hpp to access the value (TesselPoint*) in 8313 the map Tesselation::BoundaryPointSet, requiring now v1.0.11. 8314 - lots of places in Actions, Tesselation, and boundary had to be adapted to the 8315 new PointCloudAdaptor. 8316 - LinkedCell also now only has constructor requesting a IPointCloud structure. 8317 - this all will make BondGraph construction a lot easier (note that World has map 8318 containing atoms, where molecule has list. Hence, we need this 8319 IteratorAdaptor). 8320 - TESTFIX: Marked Tesselation/Convex, Tesselation/NonConvex, and 8321 Tesselation/BigNonConvex as expected to fail due to wrong name in teecplot 8322 file. This is gonna be fixed in next issue. 8323 8324 commit ba5215d3dbc9e6ab23c70d0fda53db52f4cd8547 8325 Author: Frederik Heber <heber@ins.uni-bonn.de> 8326 Date: Mon Feb 21 19:00:37 2011 +0100 8327 8328 Extended BoundaryPointSet by functions to directly access TesselPoint member. 8329 8330 - new functions: GetTesselPoint(), getPosition(), getNr(). 8331 - TesselPoint extended by getTesselPoint(), returning this reference, is only 8332 required due to BoundaryPointSet only having member and we need to access 8333 the TesselPoint via a iterator concept in upcoming PointCloudAdaptor 8334 directly. 8335 8336 commit fa60dd6ab972774fb82fd1f2c954d36536b47b41 8337 Author: Frederik Heber <heber@ins.uni-bonn.de> 8338 Date: Mon Feb 21 18:55:39 2011 +0100 8339 8340 Removed molecule::GetName() usage in QtMoleculeView. 8341 8342 - in QTMoleculePage::update() and QtMoleculeView::moleculeSelected(). 8343 - this is prepatory for upcoming PointCloudAdaptor and PointCloud removal from 8344 molecule. 8345 8346 commit fff733ba0da4911da79885991c417b12b441b071 8347 Author: Frederik Heber <heber@ins.uni-bonn.de> 8348 Date: Fri Feb 18 22:47:30 2011 +0100 8349 8350 Fixed PointCloud implementation in class Tesselation. 8351 8352 - removed virtual keywords in class Tesselation definition. 8353 - implemented GetMaxId(). 8354 - GetCenter() different to interface PointCloud had parameter ostream, removed. 8355 8356 commit e34254f6f44a0fc809b9be46216b2b2b7751e710 8357 Author: Frederik Heber <heber@ins.uni-bonn.de> 8358 Date: Tue Mar 1 10:57:21 2011 +0100 8359 8360 Changed operator<< (AtomInfo), less verbose for single time step. 8361 8362 commit 4d5553190df6b00219ae526683b5f0c395269db2 8363 Author: Frederik Heber <heber@ins.uni-bonn.de> 8364 Date: Tue Mar 1 10:56:05 2011 +0100 8365 8366 Changed verbosity for LoadMolecule(). 8367 8368 commit b23e2638588a1ce300fdbc376e3b3e42c6fd02b0 8369 Author: Frederik Heber <heber@ins.uni-bonn.de> 8370 Date: Wed Feb 23 18:50:29 2011 +0100 8371 8372 Added operator<< for MatrixContainer class. 8373 8374 commit 1bfc8edf28ec4138bd64215de19458a5fb6de8ab 8375 Author: Frederik Heber <heber@ins.uni-bonn.de> 8376 Date: Fri Feb 18 11:41:00 2011 +0100 8377 8378 Removed ThermostatContainer instance from config, instance from World is used. 8379 8380 - config functions obtain instance Thermostats from World. 8381 8382 commit 9b8387bbe8a066a5a05ebfc59629199ffa203cb1 8383 Author: Frederik Heber <heber@ins.uni-bonn.de> 8384 Date: Wed Feb 16 11:18:51 2011 +0100 8385 8386 DOCUFIX: enhanced description of RotateAroundSelfByAngleAction's parameters. 8387 8388 commit 9d37ac94df87f79ff09b0742de1324c7e04ddf56 8389 Author: Frederik Heber <heber@ins.uni-bonn.de> 8390 Date: Thu Feb 24 15:39:14 2011 +0100 8391 8392 DOCUFIX: Removed *out as parameter from waaay back ... 8393 8394 commit 4afa469aea6b6b679ff56ab7e5839c913cb3c602 8395 Author: Frederik Heber <heber@ins.uni-bonn.de> 8396 Date: Sat Feb 26 01:06:01 2011 +0100 8397 8398 Added call to molecule::getAtomCount() to end of each parser's ::load(). 8399 8400 - this ensures that atom::nr and name is up-to-date. 8401 8402 commit 63735800b9b9f1a62b08bbaad51b2f7a1bec8c00 8403 Author: Frederik Heber <heber@ins.uni-bonn.de> 8404 Date: Sat Feb 19 00:38:44 2011 +0100 8405 8406 Changed slightly XyzParser::load(). 8407 8408 - AddedAtoms is now a vector. 8409 8410 commit 0180d65014cd485abba4217d46346ac7065712ed 8411 Author: Frederik Heber <heber@ins.uni-bonn.de> 8412 Date: Fri Feb 18 19:50:08 2011 +0100 8413 8414 Enhanced XyzParser to load and save multiple time steps. 8415 8416 - Extended regression test Parser/Xyz. 8417 - Extended unit test ParserXyzUnitTest. 8418 8419 commit c6aeb18b62d4b842084aa91283b2e0fb0461c6b1 8420 Author: Frederik Heber <heber@ins.uni-bonn.de> 8421 Date: Wed Feb 16 13:43:40 2011 +0100 8422 8423 Added regression test for Parser/Pdb for PDB files with CONECT entries. 8424 8425 commit 48801adac3e7e09310f1b6015d415ba05afd6d61 8426 Author: Frederik Heber <heber@ins.uni-bonn.de> 8427 Date: Thu Feb 24 15:42:38 2011 +0100 8428 8429 Decreased verbosity of PdbParser for multiple time steps. 8430 8431 - using AtomInfo's adapted operator<< that prints start and end only. 8432 8433 commit 3e383d399707efe3ee0cb56bc0d78abc3af2ca70 8434 Author: Frederik Heber <heber@ins.uni-bonn.de> 8435 Date: Thu Feb 24 15:34:43 2011 +0100 8436 8437 Removed PdbKey::timestep from PdbAtomInfoContainer as readNeighbors,readAtomDataLine are with step now. 8438 8439 commit b0a2e3bef0fc1ae84db5824e8cd3fa72d2a5bf21 8440 Author: Frederik Heber <heber@ins.uni-bonn.de> 8441 Date: Thu Feb 24 21:18:39 2011 +0100 8442 8443 Removed use of PdbKey::timestep, steps are parsed sequentially. 8444 8445 - PdbParser::readAtomDataLine() and PdbParser::readNeighbors() have additional 8446 parameter steps. 8447 8448 commit 09c7a9f369617114ccfc84cd12692ecd98a2c615 8449 Author: Frederik Heber <heber@ins.uni-bonn.de> 8450 Date: Thu Feb 24 15:17:12 2011 +0100 8451 8452 VERBOSE: PdbParser::save() print parsed trajectories. 8453 8454 commit 873037b34219cd2ee7dadacca5869547533b1f56 8455 Author: Frederik Heber <heber@ins.uni-bonn.de> 8456 Date: Fri Feb 11 10:11:32 2011 +0100 8457 8458 Refined static filling of PdbAtomInfoContainer::knownDataKeys. 8459 8460 - have static bool which says whether map is filled or not. 8461 - static clearknownDataKeys() called by PdbParser's dstor. 8462 8463 commit 9dba5f7e07c3f2a1265a0dfae56599d0c6a08e26 8464 Author: Frederik Heber <heber@ins.uni-bonn.de> 8465 Date: Thu Feb 10 23:01:26 2011 +0100 8466 8467 PdbParser can now load and save multiple time steps. 8468 8469 - WARNING: Molecules are not yet updated, it only works on simple test. 8470 - TEST: Parser/Pdb regression test on loading/storing multiple steps added. 8471 - PdbAtomInfoContainer: 8472 - private static knownDataKeys map from enum to strings, filled in cstor when 8473 empty by fillknownDataKeys() and cleared by befriended PdbParser's dstor. 8474 - operator << to easily print container. 8475 - getter function getDataKey. 8476 - PdbKey: 8477 - EndOfFile -> EndOfTimestep. 8478 - new DataKey timestep to allow storing of timestep. 8479 - Pdbparser: 8480 - extended load() and added verbosity. 8481 - readAtomDataLine() can parse trajectories into present atoms. 8482 - extended save() and added verbosity. 8483 - new helper functions getAtomToParse() and readPdbAtomInfoContainer(). 8484 8485 commit fcac720d9b6b26c107f65986d20e213556f266e5 8486 Author: Frederik Heber <heber@ins.uni-bonn.de> 8487 Date: Thu Feb 24 13:48:45 2011 +0100 8488 8489 Added multiple time steps to PcpParser::OutputAtoms(). 8490 8491 - removed Fastparsing part in comments in LoadMolecule(). 8492 8493 commit 6a465e4248cc6569f489730a4176224357fc5126 8494 Author: Frederik Heber <heber@ins.uni-bonn.de> 8495 Date: Thu Feb 24 12:20:52 2011 +0100 8496 8497 Rewrote LoadMolecule() for PcpParser. 8498 8499 - LoadMolecule() rewritten as only because of getter/setter introduction the 8500 PcpParser did not work properly anymore. Used boost::tokenizer for parsing 8501 all Ion_Type stuff. 8502 - TESTFIX: Molecules/SaveTemperature - has been buggy since a long time! 8503 LoadMolecule() did the messed up sequence of Ion_Type right only for the 8504 first step not for all subsequent steps. Hence, we lacked the velocities 8505 of all non-hydrogen atoms and obtained a different (wrong) temperature. 8506 - TESTFIX: ParserPcpUnitTest made first atom at (1,0,0) instead of (0,0,0) as 8507 this rather shows up parsing errors than zero vector which is default value. 8508 8509 commit 03c77c8433e48594a1c472d7a86b4e799d81c363 8510 Author: Frederik Heber <heber@ins.uni-bonn.de> 8511 Date: Wed Feb 16 15:02:14 2011 +0100 8512 8513 bonds::previous and ::next removed, lists.hpp deleted. 8514 8515 - the last of the concatenated lists has fallen to STL lists and vectors. 8516 - greatest impact is on fragmentation functions. 8517 - rewritten UniqueFragments::BondsPerSPList to vector<list<bond*> >. 8518 - removed include of lists.hpp. 8519 - removed lists.hpp from Makefile.am. 8520 8521 commit 8aba3cf36e533e8aa7e73d15c6c4a093625770cf 8522 Author: Frederik Heber <heber@ins.uni-bonn.de> 8523 Date: Thu Feb 24 15:33:18 2011 +0100 8524 8525 TEST: Extended ListOfBondsUnitTest for multiple time steps ListOfBonds checking. 8526 8527 commit af897f5c8ae6115ef8c2ea41ec18740adb18eaf0 8528 Author: Frederik Heber <heber@ins.uni-bonn.de> 8529 Date: Thu Feb 24 16:13:41 2011 +0100 8530 8531 Small change to BondedParticle::UnregisterAllBond(). 8532 8533 - As ListOfBonds is only protected, BondedParticle::UnregisterAllBond() may 8534 access list at step directly. 8535 8536 commit 58308193c86ef72a50785b82954ae67c62555f30 8537 Author: Frederik Heber <heber@ins.uni-bonn.de> 8538 Date: Thu Feb 24 16:13:07 2011 +0100 8539 8540 New function BondedParticle::ClearBondsAtStep(), used by MoleculeLeafClass::FillBondStructureFromReference(). 8541 8542 commit 38c44b50db18b128b1f79878f0bfc914bd7228fe 8543 Author: Frederik Heber <heber@ins.uni-bonn.de> 8544 Date: Thu Feb 24 16:26:11 2011 +0100 8545 8546 Added verbosity to AppendTrajectoryStep() of BondedParticle. 8547 8548 commit 1e6249eb2248ee72299523a569acc77b83efcb60 8549 Author: Frederik Heber <heber@ins.uni-bonn.de> 8550 Date: Thu Feb 24 15:50:47 2011 +0100 8551 8552 BondedParticle has virtual UpdateSteps() to allow consistent extending of trajectories. 8553 8554 - atom::UpdateSteps() calls now not only UpdateSteps of AtomInfo but also of 8555 BondedParticle. 8556 8557 commit 073a9e455fb766186d4ee793eade170e51db2c0c 8558 Author: Frederik Heber <heber@ins.uni-bonn.de> 8559 Date: Thu Feb 24 15:32:36 2011 +0100 8560 8561 BondedParticle::(Un)RegisterBond,AddBond,IsBondedTo with step. 8562 8563 - adding, removing and checking of bonds at a desired time step. 8564 8565 commit d557374f0c843b5f8e4d8eeb8756784840b4ab07 8566 Author: Frederik Heber <heber@ins.uni-bonn.de> 8567 Date: Thu Feb 24 15:56:28 2011 +0100 8568 8569 Cosmetic changes to class bond::~bond and BondedParticle::UnregisterBond. 8570 8571 commit 93c6e95d641c6236fc420db0e7100f7b9cbef2fb 8572 Author: Frederik Heber <heber@ins.uni-bonn.de> 8573 Date: Thu Feb 24 15:13:00 2011 +0100 8574 8575 BondedParticle::UnregisterBond() uses BondedParticle::ContainsBondAtStep() with step. 8576 8577 - ContainsBondAtStep() is used to find the right bond and remove it. 8578 8579 commit 9a3a53e116a51e3bfb00959b2168c8888ced7191 8580 Author: Frederik Heber <heber@ins.uni-bonn.de> 8581 Date: Thu Feb 24 19:59:11 2011 +0100 8582 8583 BondedParticleInfo::ListOfBonds is (just) protected to allow inheriting classes access. 8584 8585 commit a2bdbe5a31d9df8092c716db0d9ec503f5ad04cb 8586 Author: Frederik Heber <heber@ins.uni-bonn.de> 8587 Date: Thu Feb 24 15:09:27 2011 +0100 8588 8589 BondedParticle::UnregisterAllBond with new parameter step. 8590 8591 - cleans ListOfBonds at desired step. 8592 8593 commit 9d83b69ef70cf27f82b8fcaaf764866bcda9a143 8594 Author: Frederik Heber <heber@ins.uni-bonn.de> 8595 Date: Thu Feb 24 15:41:13 2011 +0100 8596 8597 BondedParticleInfo now has vector<BondList> 8598 8599 - vector<BondList> ListOfBonds is private, getter for (non-)const access. 8600 - Access everywhere to ListOfBonds replaced by respective getter. 8601 - Access is as of now always to time step zero. 8602 - greatest impact is on molecule... files, and ListOfBondsUnitTest. 8603 8604 commit c0d9ebc6c65d3d9cc5fc8234ff04f147c042c124 8605 Author: Frederik Heber <heber@ins.uni-bonn.de> 8606 Date: Thu Feb 24 15:06:53 2011 +0100 8607 8608 FIX: Moved BondedParticle::CountBonds() from atom.cpp to atom_bondedparticle.cpp. 8609 8610 commit fb9eba56a801211c0f27284432416dfa281858d2 8611 Author: Frederik Heber <heber@ins.uni-bonn.de> 8612 Date: Thu Feb 24 16:25:56 2011 +0100 8613 8614 Added verbosity to AppendTrajectoryStep() of AtomInfo. 8615 8616 commit e2373df507fb916476ab8df9646079e2551e04f2 8617 Author: Frederik Heber <heber@ins.uni-bonn.de> 8618 Date: Thu Feb 24 15:48:51 2011 +0100 8619 8620 TesselPoint, Atom and AtomInfo have virtual UpdateSteps() to allow consistent extending of trajectories. 8621 8622 - TesselPoint and Atom just implement it virtually. 8623 - AtomInfo implements it by new function AppendTrajectoryStep() that adds 8624 steps. 8625 8626 commit fb0b62770f84f722e7a844612b7cf575bb534f0e 8627 Author: Frederik Heber <heber@ins.uni-bonn.de> 8628 Date: Thu Feb 24 15:49:35 2011 +0100 8629 8630 AtomInfo: Commented-out operator* and *= with double. 8631 8632 - this is preparatory for virtual AtomInfo::UpdateSteps(). 8633 8634 commit 443547ef85f9f10bd39602b49607dcb0e763fc55 8635 Author: Frederik Heber <heber@ins.uni-bonn.de> 8636 Date: Sat Feb 12 19:29:48 2011 +0100 8637 8638 AtomInfo: AtomicPosition, ..Velocity, ..Force are protected to allow inheriting classes access. 8639 8640 - This is necessary for atom::clone() have access to full trajectory. 8641 8642 commit b1a5d9e1f506282abb82d0dc29746c490b4f3522 8643 Author: Frederik Heber <heber@ins.uni-bonn.de> 8644 Date: Thu Feb 24 15:43:21 2011 +0100 8645 8646 operator<< for AtomInfo now prints just start and end of timestep. 8647 8648 commit 1b558c94a455c9a61f4f1954f9b8d7b149b1532f 8649 Author: Frederik Heber <heber@ins.uni-bonn.de> 8650 Date: Fri Feb 11 10:25:16 2011 +0100 8651 8652 All Accessor to position, velocity or force use WorldTime::CurrentTime. 8653 8654 commit 6b020f24f85828b35cb7d1e2cb4137d9b9ad39e1 8655 Author: Frederik Heber <heber@ins.uni-bonn.de> 8656 Date: Thu Feb 24 14:24:46 2011 +0100 8657 8658 AtomInfo::getter and setter's step is now unsigned int. 8659 8660 commit 056e70f8db18805ec5c34898e22ee461a1e6ceb7 8661 Author: Frederik Heber <heber@ins.uni-bonn.de> 8662 Date: Thu Feb 24 18:56:03 2011 +0100 8663 8664 Suffixed getters and setters for AtomInfo trajecories with AtStep. 8665 8666 - AtomInfo:: getters are now const members 8667 - added lots of ASSERTS to getters with time step to assure no out-of-bounds 8668 access. 8669 8670 commit 6625c3d80c1d7b0bad97e9d543982f10829d358b 8671 Author: Frederik Heber <heber@ins.uni-bonn.de> 8672 Date: Thu Feb 24 12:18:59 2011 +0100 8673 8674 Removed atom_trajectoryparticle*, replaced by AtomInfo class now having std::vector<> for trajectories. 8675 8676 AtomInfo: 8677 - AtomInfo stores position, velocity, and force in vectors. 8678 - getter and setter implemented for velocity and force. 8679 - all functions from TrajectoryParticle put into AtomInfo. 8680 - Direct access to velocity and force exchanged by getter/setter everywhere. 8681 - FIX: molecule::LinearInterpolationBetweenConfiguration() extends trajectory 8682 to MaxSteps+1 (for endstep). 8683 8684 Other changes: 8685 - gsl_rng_gaussian() exchanged by boost::random specific type. 8686 8687 commit 54b42e9e210027bb6e47d8594317475629bdb453 8688 Author: Frederik Heber <heber@ins.uni-bonn.de> 8689 Date: Mon Feb 7 19:56:11 2011 +0100 8690 8691 AtomInfo::AtomicPosition, ::AtomicVelocity, ::AtomicForce are now a std:vector. 8692 8693 - This is preparatory for trajectories. 8694 8695 commit bce72cbbc8d98307d21f1b4cd8f174336341e927 8696 Author: Frederik Heber <heber@ins.uni-bonn.de> 8697 Date: Mon Feb 7 19:35:30 2011 +0100 8698 8699 AtomicInfo::AtomicVelocity and ::AtomicForce are now private. 8700 8701 - Access is granted via getters and setters. 8702 8703 commit c864a86df7c305c97952030b2f51ac5148ffcce3 8704 Author: Frederik Heber <heber@ins.uni-bonn.de> 8705 Date: Mon Feb 7 18:58:50 2011 +0100 8706 8707 Moved TrajectoryParticle::EvaluateConstrainedForce() into molecule::EvaluateConstrainedForces(). 8708 8709 commit 76163d6467c1ce116865eff7bd937b783a980bc7 8710 Author: Frederik Heber <heber@ins.uni-bonn.de> 8711 Date: Wed Feb 16 11:19:36 2011 +0100 8712 8713 World::setTime() now checks whether CurrentTime changes at all. 8714 8715 - this prepares calling FragmentSubgraphDissection call there. 8716 8717 commit d297a3ade933149a1d5ada1c3db8b483e89fb3ca 8718 Author: Frederik Heber <heber@ins.uni-bonn.de> 8719 Date: Fri Feb 11 23:28:17 2011 +0100 8720 8721 World::setTime() is single access point to modifying WorldTime::CurrentTime. 8722 8723 commit 6bb6057aa21db4fa1c6005eaa7f932cd8e2c9875 8724 Author: Frederik Heber <heber@ins.uni-bonn.de> 8725 Date: Fri Feb 11 10:12:36 2011 +0100 8726 8727 Worldtime now has static CurrentTime and static (inline) getter/setter. 8728 8729 - setter is private such that time is not globally modifiable. 8730 - WorldTime::CurrentTime is now _unsigned_ int. 8731 - TESTFIX: WorldTimeUnitTest also against unsigned ints. 8732 8733 commit aa04aec0a6f98bba03446ef81b876c0dee5f6db8 8734 Author: Frederik Heber <heber@ins.uni-bonn.de> 8735 Date: Mon Feb 7 14:23:52 2011 +0100 8736 8737 Implemented SetWorldTimeAction and regression test on that. 8738 8739 - SetWorldTimeAction currently only allows to change current time, not step 8740 width. 8741 8742 commit f649ded43f091c7788ac076fc2e73fb8fee4bd35 8743 Author: Frederik Heber <heber@ins.uni-bonn.de> 8744 Date: Mon Feb 7 14:12:01 2011 +0100 8745 8746 Implemented class WorldTime. 8747 8748 - WorldTime contains the current, globally valid time step, e.g. to show within 8749 the gui ... 8750 8751 commit 7a51bed0ac43de73ef69542c07ec8d25a2b6d4cc 8752 Author: Frederik Heber <heber@ins.uni-bonn.de> 8753 Date: Fri Feb 11 22:37:26 2011 +0100 8754 8755 new function FormatParserStorage::get to obtain specialized FormatParser instance. 8756 8757 - used in FillVoidWithMoleculeAction and FillWithMoleculeAction. 8758 - both Actions also now use MoleculeByOrder descriptor to obtain last molecule. 8759 - FillBoxWithMolecule() now returns void. 8760 - implemented FillVoidWithMoleculeAction::performUndo(). 8761 - TEST: Filling/FillWithMolecule - added undo test. 8762 - TESTFIX: Filling/FillVoidWithMolecule - due to loading of filler molecule 8763 with parser, water.data had to be adapted in its ATOMDATA line to match 8764 test.data. Otherwise, resulting file will have non-matching ATOMDATA 8765 although being otherwise consistent. (This is a workaround to ticket #141). 8766 8767 commit 170ba6e440672fc3912107325618abdd35c6437e 8768 Author: Frederik Heber <heber@ins.uni-bonn.de> 8769 Date: Fri Feb 11 21:55:44 2011 +0100 8770 8771 BUGFIX: MoleculeOrderDescription was not working in reverse because of bug in ObservedContainer. 8772 8773 - we now require v1.0.9 of Codepatterns where bug in ObservedContainer is 8774 fixed. 8775 - TEST: added regression test Selection/Molecules/MoleculeByOrder with separate 8776 forward and backward test. 8777 - TEST: split up Selection/testsuite file into one on atoms, the other on 8778 molecules. 8779 8780 commit 69948e5f49ca5ca15fa7f148e0e7d53f7f814866 8781 Author: Frederik Heber <heber@ins.uni-bonn.de> 8782 Date: Fri Feb 11 18:55:25 2011 +0100 8783 8784 BUGFIX: FillVoidWithMolecule() crashed when filling molecule is wholly outside of domain. 8785 8786 - Filling molecule might have gotten completely removed and hence, we have to 8787 check for NULL pointer. 8788 - bug reported by Daniel Dueck. 8789 8790 commit 844b2e3be80de8690beefc6f7dcd4b178159cf8c 8791 Author: Frederik Heber <heber@ins.uni-bonn.de> 8792 Date: Thu Feb 10 19:40:18 2011 +0100 8793 8794 We now require CodePatterns v1.0.8 for LOG() shorthand to logger and asserts aborting by default. 8795 8796 commit 23d7fff4124bc4e1f444a780def098bb6b68e508 8797 Author: Frederik Heber <heber@ins.uni-bonn.de> 8798 Date: Thu Feb 10 19:35:12 2011 +0100 8799 8800 Added default rotation angles to (Not)AllAtomsInsideCuboidAction. 8801 8802 - also added check to Action cstor such that options for different Actions 8803 still have type, same short form, and default value. 8804 - TEST: Selection/Atoms/AllAtomsInsideCuboid - new regression test with 8805 defaults. 8806 8807 commit 528b3e649ba6df7f9bb48df7750426f110ae4f92 8808 Author: Frederik Heber <heber@ins.uni-bonn.de> 8809 Date: Thu Feb 10 19:31:41 2011 +0100 8810 8811 Added conversion functions to VectorValue and BoxValue and changed internals. 8812 8813 - VectorValue now has array vector instead of x,y,z. 8814 - BoxValue now has array matrix instead of xx,yx,yy,zx,zy,zz. 8815 - adapted validate()'s, Vector(s)CommandLineQuery, and BoxCommandLineQuery. 8816 - new cstor Box(RealSpaceMatrix *). 8817 - restructured Box' cstor code a bit. 8818 - new operator<< for Box. 8819 8820 commit b6b3b2db19444a7431f85964bdb2550a87243367 8821 Merge: 0bfe731 311da7b 8822 Author: Frederik Heber <heber@ins.uni-bonn.de> 8823 Date: Thu Feb 10 20:08:22 2011 +0100 8824 8825 Merge branch 'MpqcParser_fixes' into stable 8826 8827 commit 0bfe73198acf0b25ec0a7bb4d1fbea55f5b248d1 8828 Merge: acd6384 c14c78b 8829 Author: Frederik Heber <heber@ins.uni-bonn.de> 8830 Date: Thu Feb 10 20:07:17 2011 +0100 8831 8832 Merge branch 'RandomNumber_fixes' into stable 8833 8834 commit 311da7bdf02dce8825b29e60fbe79e0688c15ca6 8835 Author: Frederik Heber <heber@ins.uni-bonn.de> 8836 Date: Thu Feb 10 19:36:56 2011 +0100 8837 8838 FIX: Changed MpqcParser. 8839 8840 - some ASSERTs were missing and showed up failure in parsings. 8841 - in MpqcSection keywords molecule and basis are now ignored. 8842 - BUGFIX: due to missing whitespacefilter most of the keys were actually not 8843 really parsed which lead to strange "A'" and ""A'"" behavior, because 8844 in unit test key was without whitespace, hence recognized (and there 8845 we switch theories from CLHF parsed file only), whereas in regression test 8846 key was not recognized. 8847 - TESTFIX: ParserMpqcUnitTest - now checks whether MpqcParser_Parameters:: 8848 getInt() throws and also if ::operator>> throws in case of debugging. 8849 8850 commit c14c78b2ee8b6b53c94294861301c8b2cdcc1161 8851 Author: Frederik Heber <heber@ins.uni-bonn.de> 8852 Date: Thu Feb 10 16:25:59 2011 +0100 8853 8854 Some bugfixes for RandomNumber... stuff. 8855 8856 - BUGFIX: Asserts contained wrong variable name: params -> paramtokens. 8857 - BUGFIX: replaced forward declarations in respective Factory's to ...Engine 8858 and ..Distribution by includes. Note that they are need in other files due to 8859 inclusion of ManipulatePrototypeFactory and alikes of CodePatterns. 8860 - Added some additional ASSERTs to ...Engine... and ...Distribution_Parameters. 8861 - TESTFIX: RandomNumberEngineFactoryUnitTest - Setting seed to 0 was not 8862 allowed for this engine. 8863 - LEAKFIX: SetRandomNumbersDistributionAction::performCall() leaked a parameter 8864 set from prototype. 8865 8866 commit acd6384437ea7f3b26a729204e334bc1069b111a 8867 Author: Frederik Heber <heber@ins.uni-bonn.de> 8868 Date: Wed Feb 9 21:03:34 2011 +0100 8869 8870 BUGFIX: copied atoms were not correctly stored with respect to Type, reported by Daniel Dueck. 8871 8872 - TremoloParser::saveLine() Father-check has been missing so far. 8873 - TEST: Molecules/Copy - added test for copying from tremolo config. 8874 8875 commit 4d4d3346f69d10a12e419ef86b730fdd6a4ec2a1 8876 Author: Frederik Heber <heber@ins.uni-bonn.de> 8877 Date: Wed Feb 9 17:18:50 2011 +0100 8878 8879 Added tremolo's potential file parsing, reported by Daniel Dueck. 8880 8881 TremoloParser cannot interpret Type with HLA2 because it lacks mapping of the 8882 value to an element. Hence, ... 8883 - new Action ParseTremoloPotentialsAction. 8884 - TremoloParser::knownTypes new map to contain: HLA2 -> H, ... map. 8885 - TremoloParser::createKnownTypesByIdentity() creates identity mapping. 8886 - TremoloParser::parseKnownTypes() parses potentials file. 8887 8888 commit 1a6bda5f924ebd715e1f7b6b804f62142360552f 8889 Author: Frederik Heber <heber@ins.uni-bonn.de> 8890 Date: Fri Feb 4 15:04:23 2011 +0100 8891 8892 Removed basis from config, which now resides in MpqcParser_Parameters. 8893 8894 commit 4cbca0e8710efb136e5936feefe9dd2e7a865873 8895 Author: Frederik Heber <heber@ins.uni-bonn.de> 8896 Date: Fri Feb 4 15:03:06 2011 +0100 8897 8898 Implemented full MpqcParser::load(). 8899 8900 - regression tests for four theories: CLHF, CLKS, MBPT2, MBPT2_R12. 8901 - extended regression test on set-mpqc-parameters by checking changed value 8902 against a written file. 8903 8904 commit 963321a9c39219a067721dc5f8f1bf433d2e0e92 8905 Author: Frederik Heber <heber@ins.uni-bonn.de> 8906 Date: Fri Feb 4 14:23:20 2011 +0100 8907 8908 Converted SetGaussianBasisAction into SetMpqcParametersAction. 8909 8910 - new actions does not only allow to set basis, but most of the other 8911 parameters, too. 8912 - regression test Parser/Mpqc-SetBasis -> Mpqc-SetParameters and extended. 8913 - operator<< needed an ugly const hack to avoid doubling the function. 8914 8915 commit 44fce5cb3fdeb1556c1c02a020dfa99136e835d7 8916 Author: Frederik Heber <heber@ins.uni-bonn.de> 8917 Date: Fri Feb 4 13:43:30 2011 +0100 8918 8919 Extended MpqcParser_Parameters, can set and get all values. 8920 8921 - new test case in ParserMpqcUnitTest: ParameterSetterTest. 8922 8923 commit 61d69a4cb73f0b86aacc2d6ca57bf28462918da9 8924 Author: Frederik Heber <heber@ins.uni-bonn.de> 8925 Date: Thu Feb 3 12:56:26 2011 +0100 8926 8927 Added MpqcParser_Parameter class to MpqcParser. 8928 8929 - contains all extra info for the mpqc style config file. 8930 - so far not prepared for setting details via action. 8931 8932 commit 9cff8b40dbce0e08a022e7778ac2e12db6f6b9b2 8933 Author: Frederik Heber <heber@ins.uni-bonn.de> 8934 Date: Thu Feb 3 10:39:54 2011 +0100 8935 8936 Moved SetGaussianBasisAction and SetOutputFormatsAction from World to Parser. 8937 8938 commit aa8ef2ac2cb67b09185d5a3df58db2a29f253ed6 8939 Author: Frederik Heber <heber@ins.uni-bonn.de> 8940 Date: Wed Feb 2 21:39:54 2011 +0100 8941 8942 Implemented MpqcParser::load(). 8943 8944 - extended ParserMpqcUnitTest to check minimal functionality of load. 8945 8946 commit f31edc7590b4e5829926599185285edb1412d62d 8947 Author: Frederik Heber <heber@ins.uni-bonn.de> 8948 Date: Tue Feb 1 17:39:55 2011 +0100 8949 8950 Extended MpqcParser to write config files for all possible theory levels: CLHF, CLKS, MBPT2, MBPT2_R12. 8951 8952 - ParserMpqcUnitTest tests all four cases now and each contained string with 8953 the config file has been tested to work with mpqc-3.0.0-alpha. 8954 8955 commit bb74ba726668aa113942901b3b4e73e8786149c0 8956 Author: Frederik Heber <heber@ins.uni-bonn.de> 8957 Date: Tue Feb 1 16:23:51 2011 +0100 8958 8959 MpqcParser now writes correct MP2 configuration. 8960 8961 - while the construct has been working, maxiter was inside the wrong group. 8962 - ParserMpqcUnitTest and Parser/Mpqc and Atoms/Add, Atoms/Remove had to be 8963 changed due to literal diffs present there. 8964 8965 commit 9e4fd1ddec881550116572abf3d4c0dedb07b1b8 8966 Author: Frederik Heber <heber@ins.uni-bonn.de> 8967 Date: Wed Feb 2 20:38:08 2011 +0100 8968 8969 Split up ParserCommonUnitTest into a UnitTest for each Parser. 8970 8971 commit 881c0591436d2892dfe4f605d06902bb7a21e338 8972 Author: Frederik Heber <heber@ins.uni-bonn.de> 8973 Date: Wed Feb 2 19:41:47 2011 +0100 8974 8975 Changed regression testsuite structure of Tesselation. 8976 8977 - all numbered test cases now have meaningful names. 8978 - re-activated big convex test and marked as expectedly fail. 8979 8980 commit b5ad3937b230f3d9f5d14f9e793a837b44de0486 8981 Author: Frederik Heber <heber@ins.uni-bonn.de> 8982 Date: Wed Feb 2 18:45:44 2011 +0100 8983 8984 Removed Simple_configuration testsuite. 8985 8986 - removed test on creation of xyz file, is present in Parser/Xyz. 8987 8988 commit 2700983eab89463c26130cc0d2c853f1d4d13c02 8989 Author: Frederik Heber <heber@ins.uni-bonn.de> 8990 Date: Wed Feb 2 18:35:28 2011 +0100 8991 8992 Extended regression testsuite structure of Options from standard_options. 8993 8994 - most of the stuff is from standard_options, placed each into own folder 8995 and each test into its own module. 8996 8997 commit d445e4bcef716346dd1b3a5d6c4fe27dd4b70f74 8998 Author: Frederik Heber <heber@ins.uni-bonn.de> 8999 Date: Wed Feb 2 18:19:04 2011 +0100 9000 9001 Changed regression testsuite structure of Atoms. 9002 9003 - All atom-related stuff from Simple_configuration has been moved over to new 9004 subfolder Atoms. 9005 9006 commit f2230ed4cddad16052b0be557fd8f58130a361a2 9007 Author: Frederik Heber <heber@ins.uni-bonn.de> 9008 Date: Wed Feb 2 15:21:29 2011 +0100 9009 9010 Changed regression testsuite structure of Parser. 9011 9012 - specifics placed in Parser subfolder. 9013 - Moved Simple_configuration/2 over to Parser and splitted each Parser off into 9014 its own subfolder. 9015 - added test for Tremolo parser. 9016 9017 commit 0a2b3405b30a5c56bc3bf3a9c26ef22143e4a683 9018 Author: Frederik Heber <heber@ins.uni-bonn.de> 9019 Date: Wed Feb 2 15:19:19 2011 +0100 9020 9021 Changed regression testsuite structure of Options. 9022 9023 - standard_options placed in Options subfolder. 9024 9025 commit b9bfa63421aae8bda04dea61800ff9fe25d337b5 9026 Author: Frederik Heber <heber@ins.uni-bonn.de> 9027 Date: Wed Feb 2 15:09:44 2011 +0100 9028 9029 Changed regression testsuite structure of Selection/Atoms and ../Molecules. 9030 9031 - all numbered test cases now have meaningful names. 9032 - (Un)Selection/Molecule action renames: by-formula and by-name have plural 9033 molecules (they can select multiple ones), by-id is singular. 9034 - renamed token of AtomAction/RotateAroundOriginByAngleAction: 9035 rotate-origin -> rotate-around-origin. 9036 - TESTFIX: Analysis/AngularDipoleCorrelation-Empty due to renaming of 9037 molecule_s_-by-formula 9038 - TESTFIX: Analysis/SurfaceCorrelation due to renaming of 9039 molecule_s_-by_formula 9040 9041 commit 967b3cc1d5bcc09f04bc4e2f99bb7620de669545 9042 Author: Frederik Heber <heber@ins.uni-bonn.de> 9043 Date: Wed Feb 2 14:39:15 2011 +0100 9044 9045 Changed regression testsuite structure of Molecules. 9046 9047 - all numbered test cases now have meaningful names. 9048 - renamed token of AtomAction/RotateAroundOriginByAngleAction: 9049 rotate-origin -> rotate-around-origin. 9050 - renamed token of LinearInterpolationofTrajectoriesAction: linear-interpolate 9051 -> linear-interpolation-of-trajectories. 9052 - renamed token of RotateAroundSelfByAngleAction: rotate-self -> 9053 rotate-around-self. 9054 - renamed token of RotateToPrincipalAxisSystemAction: rotate-to-pas -> 9055 rotate-to-principal-axis-system. 9056 - renamed token of VerletIntegrationAction: verlet-integrate -> 9057 verlet-integration. 9058 - re-added test for periodic translation (was Molecules/7 but unused). 9059 - TESTFIX: Analysis/AngularDipoleCorrelation-DiscreteAngles due to renaming of 9060 rotate-around-self. 9061 9062 commit 70269a5925ba82007a722de93f0b9207048e59be 9063 Author: Frederik Heber <heber@ins.uni-bonn.de> 9064 Date: Wed Feb 2 14:00:36 2011 +0100 9065 9066 Changed regression testsuite structure of Graph. 9067 9068 - all numbered test cases now have meaningful names. 9069 - renamed token of SubgraphDissectionAction: subgraph-dissect -> 9070 subgraph-dissection. 9071 9072 commit 7811bfbefd39871560750cd667c077688c37af6e 9073 Author: Frederik Heber <heber@ins.uni-bonn.de> 9074 Date: Wed Feb 2 13:53:11 2011 +0100 9075 9076 Changed regression testsuite structure of Fragmentation. 9077 9078 - all numbered test cases now have meaningful names. 9079 - renamed token of FragmentMoleculeAction: fragment-mol -> fragment-molecule. 9080 - removed test case 1 where test.conf is checked, this is made sure elswhere. 9081 9082 commit 08e6c8afef22dd16b9fe558118d4f67b0618a650 9083 Author: Frederik Heber <heber@ins.uni-bonn.de> 9084 Date: Wed Feb 2 13:41:45 2011 +0100 9085 9086 Changed regression testsuite structure of Filling. 9087 9088 - all numbered test cases now have meaningful names. 9089 - TESTFIX: Suspend in water is now marked to expectedly fail instead of as 9090 BROKEN. 9091 9092 commit 8a957e8b6a87527326d7123e0d60c7848a69a814 9093 Author: Frederik Heber <heber@ins.uni-bonn.de> 9094 Date: Wed Feb 2 13:35:23 2011 +0100 9095 9096 Changed regression testsuite structure of Domain. 9097 9098 - all numbered test cases now have meaningful names. 9099 - renamed TOKEN of AddEmptyBoundaryAction: boundary -> add-empty-boundary. 9100 9101 commit ad28ef1b99395d16be5653d1e9ae8d6d66d16083 9102 Author: Frederik Heber <heber@ins.uni-bonn.de> 9103 Date: Wed Feb 2 13:01:01 2011 +0100 9104 9105 Changed regression testsuite structure of Analysis. 9106 9107 - all numbered test cases now have meaningful names. 9108 - PairCorrelation range test split off (needs its own directory anyway). 9109 9110 commit f0d1f071d10979518f405b8b6b011c4a03c4b6a3 9111 Author: Frederik Heber <heber@ins.uni-bonn.de> 9112 Date: Tue Feb 1 16:24:57 2011 +0100 9113 9114 Inserted manner how to avoid warning about muplitply included CheckCommand.sh, but commented out. 9115 9116 - thx Ralf, but is yet not working due to autotest bug. 9117 9118 commit a947e9a19899361083696b2380e242777199a425 9119 Author: Frederik Heber <heber@ins.uni-bonn.de> 9120 Date: Wed Feb 2 10:41:35 2011 +0100 9121 9122 Verbosity added to Load- and InputAction. 9123 9124 commit 48d43fef6fd364948bcdc9509ae49364f5edc942 9125 Author: Frederik Heber <heber@ins.uni-bonn.de> 9126 Date: Wed Feb 2 10:51:29 2011 +0100 9127 9128 molecule::FragmentMolecule() - Bond degree is now re-calculated by default. 9129 9130 - if we load bond graph from file (e.g. pdb), bond degree is not given and set 9131 to 1 by default which may not be correct. As bond degree is very important 9132 to the fragmentation, we rather re-calculate it before fragmenting. 9133 9134 commit 4c264326bd61e1ea4f3234937aa02b05c6bcf21e 9135 Author: Frederik Heber <heber@ins.uni-bonn.de> 9136 Date: Wed Feb 2 10:50:02 2011 +0100 9137 9138 Fix: MoleculeListClass::OutputConfigForListOfFragments with zero edge length of domain. 9139 9140 - when molecule contains only two atoms and is aligned along an axis, one edge 9141 length of the domain will be calculated as being of zero length. This is 9142 fixed by adding a minimum of 1A. 9143 9144 commit 3c58f8fb4e50513505ccd15a7e9c36b34f276129 9145 Author: Frederik Heber <heber@ins.uni-bonn.de> 9146 Date: Wed Feb 2 10:43:01 2011 +0100 9147 9148 Changed molecule::ScanForPeriodicCorrection(). 9149 9150 - it still used templated link stuff for the bonds which is deprecated and 9151 hence not usable. 9152 - now simply bool is returned, whether periodic fixing _would_ be necessary. 9153 - the number of of periodic fixings is counted and printed in 9154 MoleculeListClass::OutputConfigForListOfFragments(). 9155 9156 commit 72d108d078550736c603bab52caa5d7586985f44 9157 Author: Frederik Heber <heber@ins.uni-bonn.de> 9158 Date: Tue Feb 1 16:23:06 2011 +0100 9159 9160 Rewrote TremoloParser::readAtomDataLine() to use boost::tokenizer. 9161 9162 - The problem was that while the previous construct worked fine, it made it 9163 very hard to know what is wrong about a file because it did not operate 9164 on single tokens but on lines. 9165 9166 commit 266875d4d7ac759da8b913a7815cb5e3e6ced275 9167 Author: Frederik Heber <heber@ins.uni-bonn.de> 9168 Date: Tue Feb 1 12:09:17 2011 +0100 9169 9170 FIX: ParserError did not adhere to naming convention. 9171 9172 - excepetions are suffixed with ...Exception. 9173 - also, ParseError does not suggest that it is a _formula_ parser error. 9174 - renamed to FormulaStringParseException. 9175 9176 commit 15f6e9c4484a9b8097f8c48695fb81dfd93e4911 9177 Author: Frederik Heber <heber@ins.uni-bonn.de> 9178 Date: Mon Jan 17 19:58:49 2011 +0100 9179 9180 Extended Fragmentations tests by check for number of fragments per order. 9181 9182 - Numbers are taken directly from one year old calculations (and still match). 9183 9184 commit 03871391ca6c9494c227476e9ffca5d4ad581339 9185 Author: Frederik Heber <heber@ins.uni-bonn.de> 9186 Date: Mon Jan 17 17:05:15 2011 +0100 9187 9188 Added Fragmentations test in the spirit of the Tesselations test. 9189 9190 - configuration were taken over from Tesselations. 9191 - defs.in has been adapted to a new function called Fragmentation_run 9192 - the test files call this function along with order and distance argument. 9193 - so far we just check that exitcode of molecuilder is 0. 9194 - all tests are working. 9195 9196 commit 00b59d53958fb689993d2537537ba47012ef9eaa 9197 Author: Frederik Heber <heber@ins.uni-bonn.de> 9198 Date: Mon Jan 17 15:05:30 2011 +0100 9199 9200 FIX: molecule::FragmentMolecule() did not remove copied atoms and molecules. 9201 9202 - Subgraph copies molecules, are now removed in MoleculeLeafClass dstor. 9203 - BondFragments's molecules, i.e. the created fragments, are not removed, 9204 hence the output file got a lot bigger ... 9205 9206 commit 1d5afa54793ab68a5248839eebb3f4a806cc460c 9207 Author: Frederik Heber <heber@ins.uni-bonn.de> 9208 Date: Mon Jan 17 12:21:17 2011 +0100 9209 9210 BUGFIX: CheckAdjacencyFileAgainstMolecule() hiccup'ed on parsed files. 9211 9212 - we checked for iostream::eof() which seemed not to work in all cases. Now 9213 we use while (line << tmp) directly and this works. 9214 - maximum number of bonds is now (at least) a define MAXBONDS. 9215 - ASSERT that we parse not more than MAXBONDS bonds. 9216 9217 commit 17f3cdb7d5c7b935f4e518c4cdbe4503d48542b9 9218 Author: Frederik Heber <heber@ins.uni-bonn.de> 9219 Date: Mon Jan 17 11:41:29 2011 +0100 9220 9221 Placed regression tests Fragmentation into own folder and one file each test case. 9222 9223 commit febef3def9964a3995a74f80fea41b3d7b1f3cf5 9224 Author: Frederik Heber <heber@ins.uni-bonn.de> 9225 Date: Fri Feb 4 18:16:05 2011 +0100 9226 9227 Removed verbosity of LoadElectronegativityDb. 9228 9229 commit 4e855e867fa84e16d3c418b917eb36c8f1b45f90 9230 Author: Frederik Heber <heber@ins.uni-bonn.de> 9231 Date: Fri Feb 4 19:54:12 2011 +0100 9232 9233 BondGraph::LoadBondLengthTable() now accepts istream instead of const char *. 9234 9235 - This has been quite a lot of work because the matrix parsing is involved. 9236 - Hence, the fix is not really clean, this should get fixed as soon as we deal 9237 with the BondGraph implementation. 9238 - This fixes ticket #130. 9239 9240 commit fd378853756ce2d629fc774e7c82d6739ae1be78 9241 Author: Frederik Heber <heber@ins.uni-bonn.de> 9242 Date: Mon Jan 17 18:35:34 2011 +0100 9243 9244 Corrected CLEANUP use for Tesselations tests. 9245 9246 - CLEANUP wrongly contained cd .. 9247 - trap is now evaluating CLEANUP variable on call not before. 9248 - This allows for clearing of CLEANUP in case of execution failure of the test. 9249 9250 commit 89c953d85256f5bffcf12e7a0539f4afd28d633b 9251 Author: Frederik Heber <heber@ins.uni-bonn.de> 9252 Date: Mon Jan 17 15:45:13 2011 +0100 9253 9254 Removed config.guess and config.sub that are created by autconf. 9255 9256 commit 5817efa0e8e615d6c84a733fd6f933a293aed46d 9257 Author: Frederik Heber <heber@ins.uni-bonn.de> 9258 Date: Sun Jan 16 20:00:39 2011 +0100 9259 9260 FIX: regression test Selections/Atoms/6 did not use /bin/cp. 9261 9262 - if cp is an alias to 'cp -i' this causes trouble. 9263 9264 commit a5028f9fe5de8314faeb80f8192d465807b8d3f0 9265 Author: Frederik Heber <heber@ins.uni-bonn.de> 9266 Date: Fri Jan 7 16:38:52 2011 +0100 9267 9268 RandomNumberGeneratorFactory is now used instead of rand() throughout the code. 9269 9270 - FillVoidWithMolecule(): this is not sensible for all distributions. Maybe so, 9271 for now this is just to test the dipole angular correlation implementation. 9272 Here, one should rather hard-code one. 9273 9274 commit 63839fc79e8c290c3140390c805105bc4563c078 9275 Author: Frederik Heber <heber@ins.uni-bonn.de> 9276 Date: Sat Jan 15 15:38:57 2011 +0100 9277 9278 RandomNumberGeneratorFactory does not clone anymore. 9279 9280 - cloning of the generator was nonsense, as (because of same seed), we always 9281 start at same random number sequence. I.e. if we often obtain new random 9282 number generator we hardly get random numbers. 9283 - RandomNumberGeneratorFactory::makeRandomNumberGenerator() returns now 9284 reference to avoid accidental free'ing of the instance (that is still 9285 contained in the prototype table of the factory). 9286 - unit test of RandomNumberGenerator now checks for non-copy received. 9287 - RandomNumberGenerator()::get...Name() are now const members. 9288 - in many cases where pointer *rng was received and ref &random obtained from 9289 it, we now receive ref directly (and then don't accidentally forget to delete 9290 the clone anymore. Which is good in any case!). 9291 9292 commit 5347cd4e514abf1b1aa9c7c234f7ba2c0622c8fd 9293 Author: Frederik Heber <heber@ins.uni-bonn.de> 9294 Date: Sat Jan 15 15:37:27 2011 +0100 9295 9296 Added mt19937 to list of possible engines. 9297 9298 commit ecb6c5d6da5d51fee9c1327a6586913c65696e7d 9299 Author: Frederik Heber <heber@ins.uni-bonn.de> 9300 Date: Fri Jan 7 16:36:14 2011 +0100 9301 9302 min(), max() now implemented for all remaining random number distributions. 9303 9304 - min and max are essential to re-adjust the range. Have been hard-coded from 9305 the properties of the distribution if not min(), max() not available. 9306 9307 commit 9964ff08ae3e4aef63704e318e818e8e0f0430af 9308 Author: Frederik Heber <heber@ins.uni-bonn.de> 9309 Date: Fri Jan 7 16:35:13 2011 +0100 9310 9311 RandomNumberGeneratorFactory now uses Engine and DistributionFactory defaults directly. 9312 9313 - added unit test were these factory defaults are set and a composed Generator 9314 is made and its contained types tested. 9315 9316 commit 0275ad195a931bec57fdd26321f927b08c267597 9317 Author: Frederik Heber <heber@ins.uni-bonn.de> 9318 Date: Fri Jan 7 01:15:49 2011 +0100 9319 9320 Final step in Random numbers is done ... 9321 9322 - requires CodePatterns 1.0.7. 9323 - RandomNumberDistributionFactory and RandomNumberEngineFactory are now 9324 ManipulablePrototypeFactory's (and ...Engine and ..Distribution_Encapsulation 9325 are ManipulableClone's). 9326 - new sets of manipulation parameters RandomNumberDistribution_Parameters and 9327 RandomNumberEngine_Parameters. 9328 - added Query for RandomNumberDistribution_Parameters because GUI will need to 9329 change for specific parameters depending on selected distribution. ... 9330 actually, this happened accidentally and was an enormous amount of work ... 9331 - added string parser for distribution parameters from CommandLine, TextUI and 9332 QtUI with boost::tokenizer. 9333 - ValueStorage uses this parser for query and setting of CurrentValue. 9334 - unit tests are working and are doing their job very well (found a bug with 9335 clone not using the distriubtion to clone's parameters). 9336 - added PrototypeManipulationTest to engine and distribution factory unit test. 9337 - regression tests with Undo/Redo are done. 9338 - what's missing is an extension of the test of RandomNumberGeneratorFactory. 9339 9340 commit 1ee3b8d85bc3b82115508a188e0b73f52d7404db 9341 Author: Frederik Heber <heber@ins.uni-bonn.de> 9342 Date: Thu Jan 6 13:30:08 2011 +0100 9343 9344 Made RandomNumbers sources into its own library libMolecuilderRandomNumbers. 9345 9346 - this makes the unit test stuff fast, they use the new lib and not recompiled 9347 modules. 9348 - lib is included in Actions, Descriptors, Parser and general unittests, also 9349 as a dependency for LinearAlgebra lib. 9350 9351 commit 6ff0c86cbaac5717bf62b0ad078300179e43e3e1 9352 Author: Frederik Heber <heber@ins.uni-bonn.de> 9353 Date: Thu Jan 6 13:28:31 2011 +0100 9354 9355 SetRandomNumbersEngineAction now only requires RandomNumberEngineFactory and uses seed. 9356 9357 - requires CodePatterns 1.0.7. 9358 - prototype is manipulated for new seed via ugly const_cast. 9359 - FIX: forgot to undefine engine_seq[_a] in RandomNumberEngineFactory.undef. 9360 9361 commit 081e5d776b34e30d39d3d2bd6b9706066bba6950 9362 Author: Frederik Heber <heber@ins.uni-bonn.de> 9363 Date: Wed Jan 5 18:30:01 2011 +0100 9364 9365 Implemented all possible parameter functions for engine and distribution in interface. 9366 9367 - template member function has an ASSERT. 9368 - and then for each actually present parameter function of a specific engine or 9369 distribution there is a function specialization that passes on the request. 9370 - minimal use is made in the engine and distribution factory unit tests and 9371 everything is fine so far. 9372 9373 commit 15911c97898d09d69931fb955bf4db5cea2b7dc1 9374 Author: Frederik Heber <heber@ins.uni-bonn.de> 9375 Date: Wed Jan 5 17:09:12 2011 +0100 9376 9377 Made some cstor of RandomNumber... protected. 9378 9379 - RandomNumberGenerator now contains refs to engine and distribution instead 9380 of encapsulation as it can be made friend of these classes to allow acccess 9381 to dstor. 9382 9383 commit 9b3476e89c8176ecacfb1a4825157fcc620108b1 9384 Author: Frederik Heber <heber@ins.uni-bonn.de> 9385 Date: Wed Jan 5 15:18:11 2011 +0100 9386 9387 RandomNumberDistribution and RandomNumberEngine inherit Clone instead of Creator, ...Factory are Prototype Factory. 9388 9389 - requires CodePatterns 1.0.5. 9390 - RandomNumberDistribution inherits Clone<> and implements a clone() function. 9391 - RandomNumberEngine inherits Clone<> and implements a clone() function. 9392 - that is RandomNumberGenerator clones can from now on be directly manipulated 9393 via prototypes in RandomNumberEngineFactory and 9394 RandomNumberDistributionFactory. 9395 - Removed PrototypeManipulationTest() from Engine and DistributionFactoryUnitTest. 9396 9397 commit 076a7747f6149944af692526338b96c2659d9e53 9398 Author: Frederik Heber <heber@ins.uni-bonn.de> 9399 Date: Wed Jan 5 12:13:54 2011 +0100 9400 9401 RandomNumberGeneratorFactory nows uses Clone instead of Creator pattern. 9402 9403 - requires CodePatterns 1.0.4. 9404 - RandomNumberGenerator_Encapsulation implements clone() with calls the 9405 constructor ... 9406 - ... who in turn (sadly) needs some evil dynamic_cast to get the complex type 9407 from the simple interface, because we need access to true engine and 9408 distribution. The instances themselves are obtained properly from the 9409 respective factories. However, the constructor is protected now. 9410 - FIX: friend classes can actually be forward declared. 9411 9412 commit 1d5a8713812642e80f03e59bcd85a3ffedbe20b5 9413 Author: Frederik Heber <heber@ins.uni-bonn.de> 9414 Date: Tue Jan 4 13:09:44 2011 +0100 9415 9416 Factored out Factory pattern (no pun intended). 9417 9418 - the Factory pattern half-way residing already in RandomNumberDistribution- 9419 and -EngineFactory has been extracted, outsourced into CodePatterns 9420 project and is used here. 9421 - same for Creator pattern. 9422 - the prototype problem has not yet been solved. 9423 - FIX: forgot to clean up RandomNumberDistribution- and -EngineFactory 9424 instances in cleanUp(). 9425 - we now require 1.0.2 of CodePatterns. 9426 9427 commit c9bc2b7e55bf61ed1abfd0a5314ce53adea45fa9 9428 Author: Frederik Heber <heber@ins.uni-bonn.de> 9429 Date: Mon Jan 3 15:01:22 2011 +0100 9430 9431 Bigger rewrite of RandomNumbers ... due to cloning of prototypes. 9432 9433 - in order to copy the prototypes and not use the original instance, we have 9434 implemented a new pattern called "Creator" that wraps a templated class in a 9435 creation interface class such that this abstract class can instaniate the 9436 particular types (see here http://stackoverflow.com/questions/3506026/c-clone-abstract-base-class-without-meddling-with-derived). 9437 This is also wrapped up in ..._Creator.hpp files. 9438 - meanwhile we also tried to have factories for Engine and Distribution but 9439 this failed due to boost::variate_operator<> having to know the particular 9440 types of engine and distribution. One could go forth with some cast's but 9441 this is very unclean and not what we want. ... Downside is that we can't 9442 set global options for engines or distributions as of now. 9443 - For the moment Engine- and DistributionFactory both have a prototype table, 9444 i.e. the same wrapped ones as above, but they are not used for the 9445 GeneratorFactory. 9446 9447 - For all we have written unit tests: 9448 - RandomNumberDistributionFactory 9449 - RandomNumberEngineFactory 9450 - RandomNumberGeneratorFactory 9451 - RandomNumberGenerator 9452 The last one especially checks that two given generators are independent, 9453 i.e. first call produce the same number from the pseudo-random number 9454 sequence. 9455 9456 commit 3f9eba726fa6ba97ad9f47ad397aa83f8f1fc923 9457 Author: Frederik Heber <heber@ins.uni-bonn.de> 9458 Date: Sat Jan 1 23:27:54 2011 +0100 9459 9460 New classes for random number generation. 9461 9462 - we use boost::random as a basis. It implements a lot of pseudo-random engines 9463 and various distributions. However, everything is templated and there are no 9464 base classes to store prototypes of the instances in a map. We need these 9465 such that we are able to offer the user at run-time every choice possible. 9466 - Hence, we need to encapsulate all engines, distributions and (engine, 9467 distribution) tuples: RandomNumber..._Encapsulation classes. 9468 - each with an abstract base class as the interface: RandomNumber... classes. 9469 - RandomNumberGeneratorFactory is then a singleton that contains all the 9470 Maps and tables: 9471 - from string (user input is string) to enum (storing enum is more efficient 9472 that a lengthy string) 9473 - from enum to instance (of the abstract class). 9474 - RandomNumberGeneratorFactory is a singleton to allow for global control of 9475 what kind of numbers are generated, hence there are also two new Actions: 9476 - SetRandomNumbersDistributionAction 9477 - SetRandomNumbersEngineAction 9478 to specify which (engine,distribution) tuple to use. There are two new 9479 regression tests for these Actions. 9480 - The user in the end only uses two classes: RandomNumberGeneratorFactory 9481 and RandomNumberGenerator. The first only for obtaining a specific variant 9482 of the latter and the latter to generate the numbers (operator() is passed 9483 on to boost::variate_generator::operator()). 9484 - There is a unit test on the RandomNumberGeneratorFactory that checks some 9485 of the table entries and whether one of the RandomNumberGenerator is 9486 working (uniform_smallint so far). 9487 9488 Details: 9489 - As there are ~25 engines and ~15 distributions this makes an enormous amount 9490 of possible combinations. To automatically construct these, we use some 9491 stuff from boost::preprocessor in order to generate enums, tables and maps 9492 automatically just from a sequence of the typenames. 9493 - we have be-friended the unit test a lot to allow for easier testing, e.g. 9494 we need access to internal ..._type to test whether their type is correct. 9495 - cleanUp() purges the instance of RandomNumberGeneratorFactory. 9496 - in RandomNumber..._Encapsulation::name() functions are only used for the 9497 unit tests. 9498 - this all resides in its own subfolder RandomNumbers. So far, it is completely 9499 independent of everything else. 9500 9501 commit 1f91f4d142b3890c0ea0c60d27ff628498b897f0 9502 Author: Frederik Heber <heber@ins.uni-bonn.de> 9503 Date: Mon Jan 10 23:31:40 2011 +0100 9504 9505 factored functionality in PrincipalAxisSystemAction() and RotateToPrincipalAxisSystemAction() into class molecule: 9506 9507 - new functions in molecule 9508 - getInertiaTensor() 9509 - RotateToPrincipalAxisSystem() 9510 - PrepareClustersinWater() then does not need to call an Action anymore. 9511 9512 commit 4782599cc2cedbb40da7b38c15b2bf5c0d183589 9513 Author: Frederik Heber <heber@ins.uni-bonn.de> 9514 Date: Mon Jan 3 09:58:54 2011 +0100 9515 9516 FIX: new regression test for PrincipalAxisSystemAction is prone to numerical instability. 9517 9518 - if we test for 0, 1e-17 is not a match ... 9519 - renamed former subfolder 5 to PrincipalAxisSystem according to new naming 9520 scheme. 9521 - Action also now solves for the eigen system of the 3x3 inertia tensor and 9522 prints eigenvalues. 9523 9524 commit b25fa374bf59ffcdade5ca861bcb1d97d99159cc 9525 Author: Frederik Heber <heber@ins.uni-bonn.de> 9526 Date: Thu Dec 30 14:38:46 2010 +0100 9527 9528 Added Angular Dipole Correlation - Discrete angles test suite part. 9529 9530 - Analysis/7: Due to different centers, one plane of water molecules looses a 9531 hydrogen, being rendered outside domain. Then, dipole is not practical 9532 anymore. 9533 Instead we use the option distance-to-boundary with "1." but have to give a 9534 new waterbox(-mirrored) and new histograms (as there are now only 216 9535 molecules filled into domain). 9536 9537 commit 92e5cbdb87cf8cd20127f2dff627b843dfad5ae2 9538 Author: Frederik Heber <heber@ins.uni-bonn.de> 9539 Date: Thu Dec 30 12:10:50 2010 +0100 9540 9541 Refactored Output..Correlation...() code into a single templated one. 9542 9543 - template function OutputCorrelationMap() that accepts two function pointers 9544 for header and value to print the map's specifics. 9545 - all other function have been refactored into these two output functions per 9546 CorrelationMap type. 9547 9548 TESTFIXES: 9549 - Analysis/1-4,6: as the output files changed due to different header and 9550 extended contents, we had to replace them. However, each single one was 9551 checked by eye whether it differed in the old places (and they did not). 9552 - AnalysisCorrelationToPointUnitTest: OutputCorrelation -> OutputCorrelationMap 9553 - AnalysisCorrelationToSurfaceUnitTest: OutputCorrelation -> 9554 OutputCorrelationMap 9555 9556 commit cd7a874697981628f16debf304ae5c1ff4d0f0ce 9557 Author: Frederik Heber <heber@ins.uni-bonn.de> 9558 Date: Thu Dec 30 10:41:56 2010 +0100 9559 9560 Refactored Analysis regression tests, added angular dipole correlation - empty test. 9561 9562 - structure is now same as for Selection tests. 9563 - Principal Axis System is now implemented (commented-out before). 9564 - new Angular Dipole Correlation - empty test group created. 9565 - templates for discrete angles and random distribution that are skipped for 9566 the moment. 9567 9568 TESTFIXES: 9569 - Analysis/6-7: lengths was dropped (default value of "0." is sufficient). 9570 9571 commit caa30bb728eba9087798caddea7ae014d9ba4f4f 9572 Author: Frederik Heber <heber@ins.uni-bonn.de> 9573 Date: Wed Dec 29 12:02:55 2010 +0100 9574 9575 BUGFIX: Correlation functions return NULL outputmap when something is wrong. 9576 9577 - we return allocated empty map instead. 9578 9579 commit be945c354a323c7dfc428278d0959f40f791b566 9580 Author: Frederik Heber <heber@ins.uni-bonn.de> 9581 Date: Fri Dec 17 19:52:44 2010 +0100 9582 9583 New DipoleAngularCorrelationAction that calculates angular correlation between dipoles. 9584 9585 commit 67c92bc74e63aa32a5591cb97787b1ac983f9ee0 9586 Author: Frederik Heber <heber@ins.uni-bonn.de> 9587 Date: Fri Dec 17 19:51:30 2010 +0100 9588 9589 Added Electronegativity database and member value to class element. 9590 9591 - periodentafel contains new loading functions. 9592 - also all periodentafel::load...() now accept reference of istream, not 9593 pointer. This causes changes in PeriodentafelUnitTest. 9594 9595 commit ea430a82140f37b1e0e63e084a2bff60d5685366 9596 Author: Frederik Heber <heber@ins.uni-bonn.de> 9597 Date: Wed Dec 15 18:23:34 2010 +0100 9598 9599 Initial versions of DipoleAngularCorrelation(). 9600 9601 - no implementation yet, just function signatures. 9602 9603 commit 9df680e1ca4592968b96c9d82a4e85fee43ab4c5 9604 Author: Frederik Heber <heber@ins.uni-bonn.de> 9605 Date: Sat Jan 15 16:04:18 2011 +0100 9606 9607 FIX: FillVoidWithMolecule() now centers filler molecule at its center of gravity. 9608 9609 - this is the only sensible option if we later rotate the molecule. 9610 - atom::clone() reduced a lot, as copy constructors contains it all. 9611 - FillVoidWithMolecule() - filler is now selected to reside entirely within 9612 the domain. Otherwise, we seg'fault on save on exit, as one of the father 9613 atoms for all copied atoms is missing and hence, we cannot look at its 9614 additional...Data for various parsers. 9615 - new function molecule::removeAtomsInMolecule() which destroys all the 9616 molecule's atoms. 9617 9618 TESTFIXES: 9619 - Filling/3: filled water box has changed due to different center of water 9620 molecules. 9621 9622 commit d6f8869464bd2208482a0f62cc438db4939fc16d 9623 Author: Frederik Heber <heber@ins.uni-bonn.de> 9624 Date: Mon Jan 10 11:55:48 2011 +0100 9625 9626 changed stupid --lengths parameter of fill...-with-molecule into three distinct ones. 9627 9628 - in this Vector length three distinct things had been mixed, with --distance 9629 it made sense, with lengths this's been just nonsense. 9630 - new parameters are --distance-to-molecule --random-atom-displacement and 9631 --random-molecule-displacement and all default to zero. 9632 - moved files into regression/Filling and three files, one for each test case 9633 according to new scheme. 9634 9635 TESTFIXES: 9636 - Filling/1-3: lengths mostly replaced by --distance-to-molecule 9637 9638 commit 66fd499538327fa9d63d45ec481787c8650b9509 9639 Author: Frederik Heber <heber@ins.uni-bonn.de> 9640 Date: Thu Dec 30 21:52:17 2010 +0100 9641 9642 Rewrite of FillVoidWithMoleculeAction. 9643 9644 FillVoidWithMoleculeAction: 9645 - new parameter MinDistance and default value of 0. 9646 - BUGFIX: filler is already created when parsing file, removed useless creation 9647 of it initially (also caused lots of confusion due to an "extra" molecule). 9648 - Undo implemented, regression test inserted. 9649 - Redo is somewhat hard to implement, as one would use performCall() if it only 9650 it would not retrieve its values from ValueStorage ... 9651 9652 FillVoidWithMolecule(): 9653 - filler is now the zeroth not the last molecule, marked by firstInsertion and 9654 firstInserter. Filler is removed if no molecules are filled. 9655 - outsourced stuff into smaller functions 9656 - RandomizeMoleculePositions() 9657 - RemoveAtomsOutsideDomain() 9658 - isSpaceAroundPointVoid() 9659 - removed FillIt to through every atom despite only 9660 CurrentPosition, indepedent of atom position, is checked. 9661 9662 TESTFIXES: 9663 - Analysis/3: test.xyz changed because boundary is now 1.5 instead of 2.1 as 9664 2.1 is not enough of molecules get filled in (and the filler already is). 9665 - Analysis/3: tensid.data was actually lacking water at (0,0,0) which is after 9666 the rewrite present. 9667 9668 commit 0b15bbf617ce267e166ff4e7e1454ca420c1488f 9669 Author: Frederik Heber <heber@ins.uni-bonn.de> 9670 Date: Fri Dec 17 19:50:12 2010 +0100 9671 9672 BUGFIX: fill-molecule was rotating randomly per atom, not per molecule. 9673 9674 commit c00d359f173d2e16a9424a03c781f723da85fa93 9675 Author: Frederik Heber <heber@ins.uni-bonn.de> 9676 Date: Wed Dec 29 17:30:04 2010 +0100 9677 9678 RotateAroundSelfByAngle now acts on all selected molecules. 9679 9680 commit cb9de4fed6a381fa6220088cb1a1b919167e8e82 9681 Author: Frederik Heber <heber@ins.uni-bonn.de> 9682 Date: Wed Dec 29 15:40:08 2010 +0100 9683 9684 Parameter for rotate-around-self axis is now called 'axis' not 'position' anymore. 9685 9686 - this is only needed due to multiple tokens not yet possible. 9687 9688 TESTFIX: Molecules/Rotate around self parameter adapted. 9689 9690 commit aa4b2d50a6822ca41e873badba032107ce6d6d6d 9691 Author: Frederik Heber <heber@ins.uni-bonn.de> 9692 Date: Wed Dec 29 17:53:52 2010 +0100 9693 9694 All (Un)SelectionActions now state how many atoms or molecules (remain) selected. 9695 9696 commit d1115de89a5962b3b03f159e145f3860d6a3b410 9697 Author: Frederik Heber <heber@ins.uni-bonn.de> 9698 Date: Thu Dec 30 20:43:58 2010 +0100 9699 9700 FIX: paramdefaults values have to be in "", now enforced by constructing std::string from it. 9701 9702 - before we could say (0) as a paramdefault which did not give any clear 9703 indication why compilation failed. Now, it states that std::string cstor for 9704 this type is missing, which should point to writing ("0") instead. 9705 - Action.hpp: NODEFAULT changed to "" instead of std::string(""). 9706 9707 commit e5bf2b22c0042a67710fb901a98aa2af11f93f72 9708 Author: Frederik Heber <heber@ins.uni-bonn.de> 9709 Date: Mon Jan 10 23:34:20 2011 +0100 9710 9711 removed CPPUNIT_LIBS/FLAGS from most Makefile.am and LIBS/libs -> LIBADD. 9712 9713 - CPPUNIT_LIBS/FLAGS is only needed for unit tests. 9714 - LIBS/libs should actually be LIBDADD, see also ticket #133. 9715 9716 commit b2ae3bbc113d5260710b637dd098d36ee28dc655 9717 Author: Frederik Heber <heber@ins.uni-bonn.de> 9718 Date: Tue Jan 4 13:14:59 2011 +0100 9719 9720 Removed smaller warning, mostly due to NDEBUG. 9721 9722 - ASSERTs are not compiled in with NDEBUG but some stuff is assigned before and 9723 then checked within the ASSERT. If NDEBUG, the compiler will issue a warning 9724 because of unused variable. These have been excluded by a 9725 #ifndef NDEBUG,#endif 9726 block. 9727 9728 commit dd88cb86f41b3bd7928c6029b08d07f211ecb31f 9729 Author: Frederik Heber <heber@ins.uni-bonn.de> 9730 Date: Thu Dec 23 19:14:41 2010 +0100 9731 9732 Set current version to 1.0.8. 9733 9734 commit 6d2207705fa65aba62ae39144897529bc80eb3a3 9735 Author: Frederik Heber <heber@ins.uni-bonn.de> 9736 Date: Thu Dec 23 17:45:39 2010 +0100 9737 9738 FIX: Forgot Shapes/unittests and made Shapes into own library. 9739 9740 - Shapes only depend on LinearAlgebra and Exceptions, hence own lib module. 9741 9742 commit acbe1b77b823d2bb1821c128fc01df591be27828 9743 Author: Frederik Heber <heber@ins.uni-bonn.de> 9744 Date: Thu Dec 23 17:35:16 2010 +0100 9745 9746 All libraries don't have version in name anymore. 9747 9748 - we used gained knowledge from CodePatterns library for .pc file and 9749 and the generated libs to finalize their use (for SubspaceFactorizer 9750 soon the factored out into independent project). 9751 - .pc now contains all libs and named correctly. 9752 9753 Makefile.am's 9754 - include_HEADERs corrected 9755 - pkgconfig_.. thrown out except in src/, it's always the same file 9756 - at a later point we might have specialized .pc files for specific 9757 libraries such as Shapes,LinearAlgebra and Exceptions, ... 9758 - no more version attached, only via -version-info, as .pc file checks 9759 for version anyway. 9760 9761 commit dc031cb33b9d55462239994b557d00d9554e07f7 9762 Author: Frederik Heber <heber@ins.uni-bonn.de> 9763 Date: Wed Dec 22 18:16:07 2010 +0100 9764 9765 Added enable-debug and enable-cache switches to configure. 9766 9767 - These set NDEBUG or MEMDEBUG. 9768 - The user does not need to have to know about this stuff, configure should 9769 tell him his options in a easy to understand manner. 9770 - also, we use CodePatterns-debug library if debug is specified and we need 9771 v1.0.1 from CodePatterns. 9772 - updated ax_codepatterns.m4. 9773 9774 commit 56f73b5512dfb946d0cfe382fc8564d60e182c52 9775 Author: Frederik Heber <heber@ins.uni-bonn.de> 9776 Date: Wed Dec 22 18:10:02 2010 +0100 9777 9778 Added config.h also to all header files, code check test ascertain this in the future. 9779 9780 - as we want to use config.h to pass stuff such as MEMDEBUG, NDEBUG, 9781 LOG_OBSERVER, we have to make sure that it is present in each and every 9782 file. 9783 - split up CodeChecks/testsuite.at: each test has its own .at file. 9784 9785 commit ad011c5ac0c9bfcf699f41ee11dd4a8aa0abb89a 9786 Author: Frederik Heber <heber@ins.uni-bonn.de> 9787 Date: Wed Dec 22 11:33:36 2010 +0100 9788 9789 CodePatterns places all includes now in subfolder CodePatterns/. 9790 9791 - change all includes accordingly. 9792 - this was necessary as Helpers and Patterns are not very distinctive names 9793 for include folders. Already now, we had a conflict between Helpers from 9794 CodePatterns and Helpers from this project. 9795 - changed compilation test in ax_codepatterns.m4 when changing CodePatterns includes. 9796 9797 commit a0064eed42643b1cce8b62a957d12e2bdfc5e696 9798 Author: Frederik Heber <heber@ins.uni-bonn.de> 9799 Date: Wed Dec 22 10:18:48 2010 +0100 9800 9801 Moved stuff in src/Helpers and src/Patterns out to stand-alone project CodePatterns. 9802 9803 Makefile.am's: 9804 - CodePatterns added to AM_LDFLAGS and AM_CFLAGS 9805 - libMoleCuilderHelpers removed 9806 9807 Helpers/... 9808 - defs.hpp include prefixed with Helpers/ 9809 - helpers.?pp removed lots of old, unused functions: bound, ask_value, ... 9810 - fast_functions.hpp has lots of functions removed as well. 9811 - all other files and unit tests moved to project CodePatterns. 9812 9813 Patterns/... 9814 - all files mnd unit tests oved to project CodePatterns. 9815 9816 - added ax_codepatterns.m4 containing AM_PATH_CODEPATTERNS to configure.ac 9817 9818 commit f28a26ae355bb241ae04316dbd135e284fbb92a6 9819 Author: Frederik Heber <heber@ins.uni-bonn.de> 9820 Date: Mon Dec 20 22:18:34 2010 +0100 9821 9822 Added ChangeLog file and config dir creation to bootstrap. 9823 9824 commit 78bb14109cfdffd92df5a209d6c6f435f90b1369 9825 Author: Frederik Heber <heber@ins.uni-bonn.de> 9826 Date: Fri Dec 17 16:57:59 2010 +0100 9827 9828 BUGFIX: SetOutputFormatsAction seemed to add last format twice. Thanks Daniel! 9829 9830 - this was a bug in ValueStorage: while-loop checked for stream.fail(), but 9831 the stream might also fail within and nonetheless we pushed the (then 9832 unaltered from last iteration) temp value. Hence, doubly occuring last 9833 item. 9834 - to prevent this, we test within for stream.fail() and for all others we 9835 placed ASSERT's everywhere (as internally strings are used for conversion 9836 and for a vector, we have to parse (at least) three strings). 9837 - if std::vector<>'s are parsed, we ASSERT only that at least one value was 9838 parsed. 9839 - FormatParserStorage now just gives a warning, when an already presen Parser 9840 is added again, but gives a not that input type is not needed to be specified 9841 as output type as well. 9842 9843 thanks Daniel for pointing this out! 9844 9845 commit ff3c4002a716034c90ecc45a2447e144ee900ffe 9846 Author: Frederik Heber <heber@ins.uni-bonn.de> 9847 Date: Fri Dec 17 16:26:30 2010 +0100 9848 9849 BUGFIX: TremoloParser would store "noKey" if other format given as input. 9850 9851 - If not originating from a tremolo type file, i.e. when TremoloParser has to 9852 fall back to its default value, it wrongly output also the noKey. 9853 - also we placed setter and getter for noKey, getter gives "noKey" string. 9854 9855 commit e6f9c5924a09731d92bcf9977f544c3c06f0099d 9856 Author: Frederik Heber <heber@ins.uni-bonn.de> 9857 Date: Fri Dec 17 15:46:13 2010 +0100 9858 9859 Removed all -e ${abs_top_srcdir} from regression tests. 9860 9861 - Now only the test on external element database uses still "-e" switch. 9862 - Note that this was utter nonsense before anyway. Molecuilder writes the 9863 database in the end, i.e. make check would change elements.db in the 9864 source folder ... Evil! 9865 - This closes ticket #78. 9866 9867 commit 5d6f38416b4c5e08382366362df9df4bac7f185a 9868 Merge: d0a7193 dd97a92 9869 Author: Frederik Heber <heber@ins.uni-bonn.de> 9870 Date: Fri Dec 17 15:20:26 2010 +0100 9871 9872 Merge branch 'Fix_TremoloAtomInfoContainer_MemDebug' into stable 9873 9874 commit dd97a92224a10b645572d2e62e316c7cf76175e6 9875 Author: Frederik Heber <heber@ins.uni-bonn.de> 9876 Date: Fri Dec 17 15:20:07 2010 +0100 9877 9878 Added missing MemDebug.hpp to TremoloAtomInfoContainer.cpp. 9879 9880 commit d0a719337605ff092ec30a9628eacac47018187c 9881 Author: Frederik Heber <heber@ins.uni-bonn.de> 9882 Date: Fri Dec 17 15:17:44 2010 +0100 9883 9884 Added new testsuite called CodeChecks. 9885 9886 - this testsuite is meant to capture coding pardigms and ascertain that they 9887 are adhered to. 9888 - the first test is on whether MemDebug.hpp is included in every source file 9889 which is quite necessary since we have set all unknown mem source to be 9890 ignored in counting and admonishing. 9891 9892 commit f844ef1d2617f49c942d373969b847f7fc5ae831 9893 Author: Frederik Heber <heber@ins.uni-bonn.de> 9894 Date: Thu Dec 16 22:40:03 2010 +0100 9895 9896 Renamed all remaining unit tests in src/unittests to Capitalized naming scheme. 9897 9898 - some includes had to be changed. 9899 - some other files too due to befriended member functions of unit tests. 9900 9901 commit dfafe75c0a321601e7c5213a34a8e595a074c4f4 9902 Author: Frederik Heber <heber@ins.uni-bonn.de> 9903 Date: Thu Dec 16 22:07:59 2010 +0100 9904 9905 Moved VectorContentUnittest and vectorunittest to LinearAlgebra/unittests/VectorContentUnitTest and ../VectorUnitTest. 9906 9907 commit 0b3cbdf61fac3c20da86e10708e1eb6f38434f9e 9908 Author: Frederik Heber <heber@ins.uni-bonn.de> 9909 Date: Thu Dec 16 22:02:50 2010 +0100 9910 9911 Moved ShapeUnittest to Shapes/unittests/ShapeUnitTest. 9912 9913 commit 57d976e0915dfd9310443b244dfde9c7d398ab8e 9914 Author: Frederik Heber <heber@ins.uni-bonn.de> 9915 Date: Thu Dec 16 21:56:56 2010 +0100 9916 9917 Moved RegistryUnitTest to Patterns/unittests/RegistryUnitTest. 9918 9919 - renamed unit test exe Registry -> RegistryUnitTest. 9920 9921 commit 5bc8229c9ad8aacd95f80f0270ccd72aad8fb4a8 9922 Author: Frederik Heber <heber@ins.uni-bonn.de> 9923 Date: Thu Dec 16 21:52:09 2010 +0100 9924 9925 Moved PlaneUnittest to LinearAlgebra/unittests/PlaneUnitTest. 9926 9927 commit f890244320184388b550201562b2a865b1b496ee 9928 Author: Frederik Heber <heber@ins.uni-bonn.de> 9929 Date: Thu Dec 16 21:47:33 2010 +0100 9930 9931 Moved LineUnittest to LinearAlgebra/unittests/LineUnitTest. 9932 9933 commit 41396af72cb96bbfe713a3fdf03c9101ef077da5 9934 Author: Frederik Heber <heber@ins.uni-bonn.de> 9935 Date: Thu Dec 16 15:59:07 2010 +0100 9936 9937 Moved Parser...UnitTest to Parser/unittests/Parser...UnitTest. 9938 9939 commit a2c4f3a25768bdc125e4bb1a2d1a55d910d0b53b 9940 Author: Frederik Heber <heber@ins.uni-bonn.de> 9941 Date: Thu Dec 16 15:54:02 2010 +0100 9942 9943 Moved ObserverTest to Patterns/unittests/ObserverUnitTest. 9944 9945 commit 6c9adcb840c14f7f035c42223e0c8e915c72fde5 9946 Author: Frederik Heber <heber@ins.uni-bonn.de> 9947 Date: Thu Dec 16 15:47:29 2010 +0100 9948 9949 Moved MoleculeDescriptorTest to Descriptors/unittests/MoleculeDescriptorUnitTest. 9950 9951 commit 0e20316989ca2bc429f9b3d052d7b3e9ba3d26cc 9952 Author: Frederik Heber <heber@ins.uni-bonn.de> 9953 Date: Thu Dec 16 15:44:27 2010 +0100 9954 9955 Moved MenuDescriptionUnitTest to UIElements/Menu/unittests. 9956 9957 commit efd61bd3e7212dbd914dab44397fc2a2e40bff21 9958 Author: Frederik Heber <heber@ins.uni-bonn.de> 9959 Date: Thu Dec 16 15:32:21 2010 +0100 9960 9961 Moved manipulateAtomsTest to Actions/unittests/ManipulateAtomsUnitTest. 9962 9963 commit 4076fcc9b9d836715dfe1bba1c9247bfdd385a93 9964 Author: Frederik Heber <heber@ins.uni-bonn.de> 9965 Date: Thu Dec 16 15:28:25 2010 +0100 9966 9967 Moved logunittest to Helpers/unittests/LogUnitTest. 9968 9969 commit 78b59342efdef84002909010c97948f27e3de0dd 9970 Author: Frederik Heber <heber@ins.uni-bonn.de> 9971 Date: Thu Dec 16 15:19:18 2010 +0100 9972 9973 Moved linearsystemofequations to LinearAlgebra/unittests/LinearSystemOfEquationsUnitTest. 9974 9975 - also renamed linearsystemofequations.?pp to LinearSystemOfEquations.?pp. 9976 9977 commit fff54fc0db0a4acc85e41914d8ef5c4e74bd0e7f 9978 Author: Frederik Heber <heber@ins.uni-bonn.de> 9979 Date: Wed Dec 15 20:12:13 2010 +0100 9980 9981 Moved all Matrix...Unittest to LinearAlgebra/unittests/Matrix...UnitTest. 9982 9983 commit 3c8e8bb4ac545196f3097a1517f779726212885b 9984 Author: Frederik Heber <heber@ins.uni-bonn.de> 9985 Date: Thu Dec 16 21:29:04 2010 +0100 9986 9987 Moved atomsCalculationTest to Actions/unittests/AtomsCalculationUnitTest. 9988 9989 commit e7da1f59b247209d90468802fd9412179ff04717 9990 Author: Frederik Heber <heber@ins.uni-bonn.de> 9991 Date: Thu Dec 16 21:23:58 2010 +0100 9992 9993 Moved CacheableTest to Patterns/unittests/CacheableUnitTest. 9994 9995 commit d766b57dc12ce7778425d65155b7159612ed7211 9996 Author: Frederik Heber <heber@ins.uni-bonn.de> 9997 Date: Wed Dec 15 19:40:21 2010 +0100 9998 9999 Moved AtomDescriptorTest to Descriptors/unittests/AtomDescriptorUnitTest. 10000 10001 commit 456e78e35fb62976d5ccc14000867cdfdf3da8bc 10002 Author: Frederik Heber <heber@ins.uni-bonn.de> 10003 Date: Wed Dec 15 19:32:19 2010 +0100 10004 10005 Removed ActOnAllUnitTest. 10006 10007 - Till had replaced all ActOnAll by for_each() with boost::bind. Hence, 10008 ActOnAll is not used anymore. 10009 10010 commit f7c0c4875e5eed9b9b820e4cd989c0203179be0b 10011 Author: Frederik Heber <heber@ins.uni-bonn.de> 10012 Date: Wed Dec 15 19:18:36 2010 +0100 10013 10014 Moved ActionSequenceTest to Actions/unittests, renamed to ActionSequenceUnitTest. 10015 10016 commit deddf60dcef024b8000d9a49d0357ae4601a46de 10017 Author: Frederik Heber <heber@ins.uni-bonn.de> 10018 Date: Thu Dec 16 23:13:41 2010 +0100 10019 10020 New unit test for ActionRegistry. 10021 10022 - checks whether a short form has been used by more than once Action. 10023 - unit test is placed in Actions/unittests but called from 10024 unittests/Makefile.am via SUBDIRS to ensure that all libs are compiled. 10025 10026 commit c0bccbecd01c28def7f751995f67ff1a54f4c1c4 10027 Author: Frederik Heber <heber@ins.uni-bonn.de> 10028 Date: Thu Dec 16 23:12:19 2010 +0100 10029 10030 Moved SingletonTest to Patterns/unittests/SingletonUnitTest. 10031 10032 commit 85949a638ffde393b44b0671e40b3ccedb46ce2f 10033 Author: Frederik Heber <heber@ins.uni-bonn.de> 10034 Date: Wed Dec 15 18:53:45 2010 +0100 10035 10036 Split off unittests Makefile.am's in configure.ac into own AC_CONFIG_FILES. 10037 10038 commit 2a0a9e3fc16c166da2f43bcf25a079b018b47785 10039 Author: Frederik Heber <heber@ins.uni-bonn.de> 10040 Date: Wed Dec 15 18:17:48 2010 +0100 10041 10042 FIX: CommandLineParser::getShortFormToActionMap() const member function now. 10043 10044 commit ad727091ea334c1a264e49463c1dfd9494856a64 10045 Author: Frederik Heber <heber@ins.uni-bonn.de> 10046 Date: Wed Dec 15 17:26:52 2010 +0100 10047 10048 Reduced initial verbosity of code. 10049 10050 FIX: 10051 - initUI() - no more admonishing of missing bond length table. 10052 10053 The following messages have been placed in comments: 10054 - Registering of Action/Options. 10055 - Looking for KnownTypes. 10056 - Stating MenuNames, Separators and submenu creations. 10057 - No more listing of parsed elements. 10058 - No more listing of thermostats. 10059 10060 The following messages have been added: 10061 - prepended scanning arguments in CommandLineParser::scan...(). 10062 - prepended running arguments in CommandLineWindow::display(). 10063 - additional new line after ProgamHeader(). 10064 - correct CommandLine UI setting to occur before arguments are parsed. 10065 - changed verbosity levels of CommandLineParser::scanforSequenceOfArguments(), 10066 also all use DoLog(), i.e. global verbosity makes them be listed again. 10067 10068 NOTE: 10069 - MemDebug: as delete NULL is safe, we do not warn when this occurs. Also, in 10070 Qt this happens a lot. 10071 10072 TESTFIX: 10073 - setting global verbosity to 1, messed with Standard_Options/1. There 10074 we set verbosity to 9 to avoid this in the future. 10075 10076 commit f4d06356f58f97d60e79eab5f19874cf6cd3d55c 10077 Author: Frederik Heber <heber@ins.uni-bonn.de> 10078 Date: Wed Dec 15 16:54:40 2010 +0100 10079 10080 MEMFIX: MemDebug ignores all unknown sources. Removed all dependencies around main(), moved to builder_init.?pp. 10081 10082 - this has been an attempt to fix the warning of a memory leak that 10083 actually results into the libboost_filesystem.so over which we have no 10084 control. As of now, i I do not quite look through the whole affair. 10085 That is, I have a now idea why Till's new memory allocator is used 10086 during the initialization of some external library already, but 10087 apparently it must have to do with lookup tables present in the 10088 exectuable already. Hence, we can not do much about. 10089 - Nonetheless, we split up main() into some initializating functions 10090 which have been outsourced to builder_init.cpp. 10091 - The only fix then is that we ignore all values of unknown source 10092 in MemDebug. 10093 - Note: We only do accouting of stuff allocated on the heap (e.g. 10094 int *test = new int;) and not on stack (int test;)! However, stack 10095 space is limited anyway. 10096 10097 commit c77ac834b1961f9274456206890fd358c78dcd5b 10098 Author: Frederik Heber <heber@ins.uni-bonn.de> 10099 Date: Sat Dec 11 23:02:50 2010 +0100 10100 10101 Added regression test for each SelectionAction on molecules. 10102 10103 - new subfolder Selection/Molecules. 10104 - contains a testsuite-selection-....at per selection present. 10105 - extensive and very well checked tests. 10106 10107 commit ff237cac90abf3bb5724922b22e18dfefccb8028 10108 Author: Frederik Heber <heber@ins.uni-bonn.de> 10109 Date: Sat Dec 11 23:01:10 2010 +0100 10110 10111 FIX: Simplified SelectionNotMoleculeByFormulaAction::performCall() with descriptor. 10112 10113 commit 1a0987486025bfa5a57b606108e288ec7f8fe19f 10114 Author: Frederik Heber <heber@ins.uni-bonn.de> 10115 Date: Sat Dec 11 22:10:26 2010 +0100 10116 10117 BUGFIX: SelectionMoleculeByIdAction::performRedo() uses wrong (_)state. 10118 10119 - thanks new regression tests for noting this one, causes segfault. 10120 10121 commit c42e60ed725925e7ac0c237a354103f0a7089314 10122 Author: Frederik Heber <heber@ins.uni-bonn.de> 10123 Date: Sat Dec 11 22:05:11 2010 +0100 10124 10125 Two new descriptors: AtomOfMoleculeSelection, MoleculeOfAtomSelection. Rewrote associated SelectionActions. 10126 10127 - AtomOfMoleculeSelectionDescriptor: represents all atoms of currently selected 10128 molecules 10129 - MoleculeOfAtomSelectionDescriptor: represents all molecules of currently 10130 selected atoms 10131 - rewrote Selection(Not)AllAtomsOfMoleculeAction: simply uses selectAllAtoms() and 10132 descriptor, no parameter anymore 10133 - rewrote Selection(Not)MoleculeOfAtomAction: simply uses 10134 selectedAllMolecules() and descriptor, no parameter anymore 10135 - renamed (un)select-molecule-of-atom to (un)select-atoms-molecules. 10136 10137 That is, the SelectionActions are meant to use one selection and turn the 10138 other accordingly. It is a sort of exchange between the two. I can convert 10139 a selection of atoms to molecules and vica versa, but this "mapping" is NOT 10140 injective but always surjective. 10141 10142 Testchange: 10143 - Selection/Atoms/testsuite-selection-atoms-of-molecule.at: Due to the absent 10144 parameter now, we first select the molecule by id and then ... 10145 10146 commit fc5c3aecf61bf757b27c7c4f9060569db2b116c7 10147 Author: Frederik Heber <heber@ins.uni-bonn.de> 10148 Date: Sat Dec 11 17:30:38 2010 +0100 10149 10150 Molecule's SaveAction saves selected molecules, World's OutputAction saves World. 10151 10152 - we make use of the extended FormatParserStorage::save...() functions. 10153 - OutputAction now has a single parameter, the file name. Before it was quite 10154 useless anyway as the World is stored on program exit anyway, overwriting 10155 anything that would have been stored by the Action in between. 10156 10157 Testchanges: 10158 - SimpleConfiguration/2 are now called "--output" and not "-s" due to other 10159 Action being called. 10160 10161 commit 73916fa693ce5fb3da8ee860f66532d555f21bca 10162 Author: Frederik Heber <heber@ins.uni-bonn.de> 10163 Date: Sat Dec 11 16:57:00 2010 +0100 10164 10165 Extended FormatParser::save() to use vector<atom *> to save. 10166 10167 - This is needed to make the save functions also work on selected atoms or 10168 molecules only. 10169 - Within ParserCommonUnitTest, ParserTremoloUnitTest we create the vector by 10170 calling World's getAllAtoms() (which would have been done before in the 10171 specialized save() functions). 10172 - new functions in FormatParserStorage: 10173 - saveSelectedAtoms(). 10174 - saveSelectedMolecules(). 10175 - saveWorld(). 10176 - renamed ::get() and ::put() to ::load() and ::save() to have it more 10177 consistent with underlying FormatParser functions and also to avoid 10178 misinterpretation with all ::get...() functions. 10179 10180 commit 512f85d322a6e9f33d30dd5c0407a7abb6513ce2 10181 Author: Frederik Heber <heber@ins.uni-bonn.de> 10182 Date: Fri Dec 10 19:07:09 2010 +0100 10183 10184 Added regression test for each SelectionAction on atoms. 10185 10186 - Moved testsuite-selection.at to subfolder Selection. 10187 - testsuite-selection.at just contains includes for each Action. 10188 - Therein subfolder Atoms contains: 10189 - testsuite-selection-....at: one for each Action. 10190 - all folders with pre and post files. 10191 - all tests include Undo/Redo and select/unselect 10192 - each regression file has been tested thoroughly, especially for cuboid and 10193 sphere selection. 10194 10195 commit 17c1a8e8744f0689e0dfd763a4ba3027a68fe52a 10196 Author: Frederik Heber <heber@ins.uni-bonn.de> 10197 Date: Wed Dec 8 00:55:21 2010 +0100 10198 10199 Added regression test for SelectionAction to testsuite. 10200 10201 - so far only for AllAtomsAction. 10202 10203 commit 125002e81c98512135b35e1b6d522def2717dad7 10204 Author: Frederik Heber <heber@ins.uni-bonn.de> 10205 Date: Tue Dec 7 23:23:03 2010 +0100 10206 10207 Splitted SelectionAction modules into two groups - atoms, molecules - and each into a subfolder. 10208 10209 - had to adapt includes in all .cpp files as they contained some stupid 10210 relative path. 10211 - This is sensible as there are quite a large amount of SelectionActions and 10212 it is hard to discern the ones which select atoms and which select molecules. 10213 10214 commit 92d756fffdac8a3b844d1d562292a4c99a853093 10215 Author: Frederik Heber <heber@ins.uni-bonn.de> 10216 Date: Tue Dec 7 23:05:18 2010 +0100 10217 10218 Larger update of selections. 10219 10220 - new selections: 10221 - NotMoleculeByOrderAction 10222 - MoleculeByNameAction 10223 - NotMoleculeByNameAction 10224 - exchanged all loops in present selections by BOOST_FOREACHs 10225 - used AtomsBySelection() and MoleculesBySelection() to more cleverly store 10226 stuff for undo state. 10227 10228 - new MoleculeOrderDescriptor (outsource from SearchMoleculeByOrder). 10229 10230 commit 0bbfa1f442f20bde96b5119e3b620b99bc8c62d9 10231 Author: Frederik Heber <heber@ins.uni-bonn.de> 10232 Date: Wed Dec 8 02:10:03 2010 +0100 10233 10234 BUGFIX: Parsing a second .data file failed. 10235 10236 - atomIdMap was not cleared in TremoloParser::load(). 10237 - neighbors of first parsing get processed again after second parsing, hence 10238 bonds are added twice. 10239 10240 commit 93fd43e59ae1cd1a2ca84e03e23e808197ff8076 10241 Author: Frederik Heber <heber@ins.uni-bonn.de> 10242 Date: Tue Dec 7 15:00:19 2010 +0100 10243 10244 new function PdbParser::getadditionalAtomData() that also adds new entries. 10245 10246 - either we get the present one, or create from next father, topmost father 10247 or from defaultValues a new entry. 10248 10249 commit 1d02fe3308df262c745ee1939a67abc233e2f804 10250 Author: Frederik Heber <heber@ins.uni-bonn.de> 10251 Date: Tue Dec 7 14:18:46 2010 +0100 10252 10253 MEMFIX: PdbParser::readAtomDataLine() additionalAtomData entries leaked. 10254 10255 - entries were created by *(new PdbAtomInfoContainer) instead of 10256 PdbAtomInfoContainer() which copies default values from temp instances. 10257 10258 commit 16462f8c5b097f56fd1c2c03e31b5cd9daef6a0f 10259 Author: Frederik Heber <heber@ins.uni-bonn.de> 10260 Date: Tue Dec 7 13:54:42 2010 +0100 10261 10262 PdbParser is now complete with respect to additionalAtomData. 10263 10264 - serial, name, resName, resSeq, element, and charge are updated if changed, 10265 otherwise we use values from PdbAtomInfoContainer. 10266 - PdbParser::saveLine() completely uses information from PdbAtomInfoContainer. 10267 10268 Testchanges: 10269 - Simple_configuration/2/post/test.pdb updated as we are now closer to real 10270 PDB format also concerning alignment and the resName changed again. 10271 10272 commit 031e2c6660707d072a402cb12517f617d42c8d3c 10273 Author: Frederik Heber <heber@ins.uni-bonn.de> 10274 Date: Tue Dec 7 14:09:39 2010 +0100 10275 10276 Splitted off classes TremoloKey and TremoloAtomInfoContainer into own modules. 10277 10278 commit 24f1282e1df2c72138841c78643facb494f0b9ed 10279 Author: Frederik Heber <heber@ins.uni-bonn.de> 10280 Date: Tue Dec 7 14:16:13 2010 +0100 10281 10282 MEMFIX: TremoloParser::readAtomDataLine() additionalAtomData entries. 10283 10284 - entries have been filled with *(new TremoloAtomInfoContainer) instead of 10285 TremoloAtomInfoContainer() which copies default values from temp instance. 10286 10287 commit 4c12306495978f073faf37a21b00f168b04041bf 10288 Author: Frederik Heber <heber@ins.uni-bonn.de> 10289 Date: Mon Dec 6 21:47:33 2010 +0100 10290 10291 FIX: PdbParser::writeNeighbors() uses getAtomId not getSerial. 10292 10293 - additionalAtomData is as of now not used for storing. Hence, we first fix 10294 this. Now, the set id in PdbParser::save is also used for the neighbor 10295 connectivity. 10296 10297 commit a564be038aa43b68337fb7e9294c7feed0300ab0 10298 Author: Frederik Heber <heber@ins.uni-bonn.de> 10299 Date: Mon Dec 6 20:15:03 2010 +0100 10300 10301 Removed ancient StackClass, replaced by std::deque. 10302 10303 - all PopLast replaced by pop_front. 10304 - all PopFirst replaced by pop_front. 10305 - and we have two remove items in two steps, first get item, then pop. 10306 10307 commit fd19ffcfb7e86ca4783fbcedf0584c4608df7c1c 10308 Merge: 001f8a9 ca03c73 10309 Author: Frederik Heber <heber@ins.uni-bonn.de> 10310 Date: Sun Dec 5 01:21:11 2010 +0100 10311 10312 Merge branch 'SelectMoleculesByOrderAction' into stable 10313 10314 commit 001f8a9151f2367cc32119fef0f83b2bfdaf9222 10315 Merge: f03705f cabb467 10316 Author: Frederik Heber <heber@ins.uni-bonn.de> 10317 Date: Sun Dec 5 01:21:03 2010 +0100 10318 10319 Merge branch 'ExtendLoadSaveXyztoAnyFormatParser' into stable 10320 10321 commit ca03c737b18c4f2c7a74bb5afa10aef73a7369e8 10322 Author: Frederik Heber <heber@ins.uni-bonn.de> 10323 Date: Sat Dec 4 23:22:31 2010 +0100 10324 10325 Added select-molecule-by-order Action. 10326 10327 commit cabb4679cb9a88d3965bf3c046c49ed900a21865 10328 Author: Frederik Heber <heber@ins.uni-bonn.de> 10329 Date: Sat Dec 4 22:23:07 2010 +0100 10330 10331 Extended LoadXyz and SaveXyz to any format. 10332 10333 - renamed ParserAction/LoadXyz -> MoleculeAction/Load (same with Save). 10334 - also changed .def for both. 10335 - LoadAction then uses stuff from InputAction but without output name setting. 10336 - new function FormatParserStorage::put() which is opposite to get and stores 10337 world to a given ofstream with type from suffix. 10338 - SaveAction uses new FormatParserStorage::put(). 10339 - short form of LodAction is "l" not "p" 10340 - short form of SaveAction is "s", ScaleBox has no short form anymore 10341 10342 Testchanges: 10343 - copied all from Simple_configuration/2/pre to ./post. 10344 - changes to test.conf: 10345 MaxPsiStep (if 0 given, then 3 is set). 10346 MaxMinGapStopStep (if 0 given, then 1 is set). 10347 InitMaxMinGapStopStep (if 0 given, then 1 is set). 10348 - changes to test.pdb: 10349 segName is tes (from _tes_t.pdb) not non. 10350 Obtaining molecule names from pdb file's segName is not implemented yet. 10351 - ParserCommonUnitTest::rewriteAnXyzTest(), we don't check for string equality 10352 but parse the output stream again and check whether first and second half 10353 of all atoms are equal with respect to position and element. 10354 - all regression test that diff an xyz file now use -I '.*Created by....*' 10355 - changed regression tests with respect to changed short forms. 10356 10357 commit f03705f696ab4a9d6c37935af9a29048f199bdf9 10358 Merge: 6e06bd5 e828c07 10359 Author: Frederik Heber <heber@ins.uni-bonn.de> 10360 Date: Sun Dec 5 01:19:33 2010 +0100 10361 10362 Merge branch 'SubspaceFactorizer' into stable 10363 10364 commit 6e06bd5894042aa085863fea17cf566f42e7a31b 10365 Merge: 589112b bbf1bd9 10366 Author: Frederik Heber <heber@ins.uni-bonn.de> 10367 Date: Sun Dec 5 01:19:19 2010 +0100 10368 10369 Merge branch 'MatrixVectorContentRefactoring' into stable 10370 10371 commit 589112be6795a12a7a887ba4005dda978bda9870 10372 Merge: 5d4b731 a01144e 10373 Author: Frederik Heber <heber@ins.uni-bonn.de> 10374 Date: Sun Dec 5 01:18:31 2010 +0100 10375 10376 Merge branch 'FixingMemDebugChunks' into stable 10377 10378 commit 5d4b731ab716069a5f604dfb95a1db006dfeaba1 10379 Merge: 41e15b8 d754bbb 10380 Author: Frederik Heber <heber@ins.uni-bonn.de> 10381 Date: Sun Dec 5 01:17:34 2010 +0100 10382 10383 Merge branch 'MenuStructureChange' into stable 10384 10385 commit 41e15b8d296401abbd6d9901e3ad1a9692986df2 10386 Merge: 0af7ef3 b295ca6 10387 Author: Frederik Heber <heber@ins.uni-bonn.de> 10388 Date: Sun Dec 5 01:16:53 2010 +0100 10389 10390 Merge branch 'FixLexicalCastTextDialog_QtQueryListPipe' into stable 10391 10392 commit 4fbca9c2b6785a7839394eeab5fe9c6dad6c28cd 10393 Author: Frederik Heber <heber@ins.uni-bonn.de> 10394 Date: Sat Dec 4 19:05:33 2010 +0100 10395 10396 PdbParser::save() fully working. 10397 10398 - added UnitTest for PdbParser. 10399 - split ParserUnitTest into Common and Tremolo. 10400 - split off classes PdbAtomInfoContainer and PdbKey into own modules. 10401 - PdbParser can now load ATOM and CONECT entries. 10402 10403 commit e828c07cc83828399b494f75295e73daf5ad0852 10404 Author: Frederik Heber <heber@ins.uni-bonn.de> 10405 Date: Sat Dec 4 19:10:56 2010 +0100 10406 10407 SubspaceFactorizer is now hierarchical. 10408 10409 - higher order subspace matrices are only corrections to lower order ones. 10410 - i.e. eigenvectors obtained from there have all lower ones projected and 10411 substracted. 10412 10413 commit 1fb318e13ebc1029d5ba1a68d3b01c62237ab05b 10414 Author: Frederik Heber <heber@ins.uni-bonn.de> 10415 Date: Sat Dec 4 19:11:17 2010 +0100 10416 10417 Added helper template function: ConvertTo() that converts a string to a desired value. 10418 10419 commit 286af5fb9ad803eaed15af491597fbf6b924d817 10420 Author: Frederik Heber <heber@ins.uni-bonn.de> 10421 Date: Mon Nov 22 19:00:17 2010 +0100 10422 10423 SubspaceFactorizerUnittest::SubspaceTest() - fully working compared to EigenvectorTest(). 10424 10425 - we also have an iteration and the results are exactly the same for a 3x3 10426 matrix at run 2 and 9. 10427 - classes Eigenspace and Subspace are thus for now fully working. 10428 10429 commit 7d059dd842ec69d4f92d90a9d682739b6028ab89 10430 Author: Frederik Heber <heber@ins.uni-bonn.de> 10431 Date: Mon Nov 22 18:59:56 2010 +0100 10432 10433 SMALLFIX: MatrixContent::setIdentity() - made cast from bool to double explicit. 10434 10435 commit 9f9b5a8050ebe660ec28f9e48b98cdc192c90821 10436 Author: Frederik Heber <heber@ins.uni-bonn.de> 10437 Date: Mon Nov 22 18:27:26 2010 +0100 10438 10439 Added some template operator<<() functions for std::list,map,multimap,set,vector. 10440 10441 commit a06042e843c266378c28a07d857634215eb6f8b9 10442 Author: Frederik Heber <heber@ins.uni-bonn.de> 10443 Date: Mon Nov 22 17:23:18 2010 +0100 10444 10445 SubspaceFactorizerUnittest::SubspaceTest() enhanced. 10446 10447 - Now projection matrices and therefrom eigenspace matrices are constructed 10448 correctly. 10449 10450 commit 58605562acab64d92776eafdb01c18caf23d7b60 10451 Author: Frederik Heber <heber@ins.uni-bonn.de> 10452 Date: Mon Nov 22 17:22:59 2010 +0100 10453 10454 Made VectorContent::operator=() ASSERT more verbose. 10455 10456 commit 9c529645733d09290760e9ebeff51081f40223b8 10457 Author: Frederik Heber <heber@ins.uni-bonn.de> 10458 Date: Mon Nov 22 15:57:20 2010 +0100 10459 10460 New classes Eigenspace and Subspace that contain eigen(sub)spaces. 10461 10462 - also added new test to SubspaceFactorizerUnitTest::Subspacetext(). 10463 - so far only constructs the full and nested sub spaces. 10464 10465 commit f5bca22b78eaf9625472526767aee30ef21eac07 10466 Author: Frederik Heber <heber@ins.uni-bonn.de> 10467 Date: Mon Nov 22 12:10:57 2010 +0100 10468 10469 SubspaceFactorizer now has the matrix dimension as an enum. 10470 10471 commit 74237190563beadc942e60dbd56f5fd7b388031b 10472 Author: Frederik Heber <heber@ins.uni-bonn.de> 10473 Date: Thu Nov 18 19:24:28 2010 +0100 10474 10475 Subspace Factorizer is almost working. 10476 10477 - for the testing (4x4) matrix, the middle eigenvectors are good, but the 10478 smallest and biggest are off by a few percent, yet converged ... 10479 10480 commit a062e1a2664e207eac45146412e88672ce76b9c9 10481 Author: Frederik Heber <heber@ins.uni-bonn.de> 10482 Date: Thu Nov 18 19:22:14 2010 +0100 10483 10484 BUGFIX: MatrixContent::operator*=(MatrixContent&)'ASSIGNS were wrong. 10485 10486 - for a product with another matrix, not lhs.row==rhs.row, but rhs squared and 10487 lhs.columns == rhs.rows. 10488 10489 commit 14cce656977d7ff643161db58293c9cca7ab5f3b 10490 Author: Frederik Heber <heber@ins.uni-bonn.de> 10491 Date: Thu Nov 18 19:21:41 2010 +0100 10492 10493 New getter for VectorContent::dimension. 10494 10495 commit aab177d98e690f1248a0b4baa792a2038f929536 10496 Author: Frederik Heber <heber@ins.uni-bonn.de> 10497 Date: Thu Nov 18 19:20:51 2010 +0100 10498 10499 BUGFIX: MatrixContent::getColumnVector() and MatrixContent::getRowVector() had calls to gsl_... swapped. 10500 10501 commit 35fbef23b9da4ffe3159ed9a4a1fd9672698a932 10502 Author: Frederik Heber <heber@ins.uni-bonn.de> 10503 Date: Thu Nov 18 19:20:11 2010 +0100 10504 10505 BUGFIX: MatrixContent::get...() not const member functions as should be. 10506 10507 commit 3da2fb469f9384e940eef17ba9935099f76b7967 10508 Author: Frederik Heber <heber@ins.uni-bonn.de> 10509 Date: Thu Nov 18 15:55:04 2010 +0100 10510 10511 New module MatrixVector_ops that contains matrix vector products. 10512 10513 - all functions are made friend of Vector, VectorContent and MatrixContent as 10514 needed. Hence, has to be in distinct header file from these. 10515 10516 commit 694eaeaa8cfed90f0d1a6fcce33a04b118565314 10517 Author: Frederik Heber <heber@ins.uni-bonn.de> 10518 Date: Thu Nov 18 15:53:46 2010 +0100 10519 10520 Implemenation of Vector::Norm(), ... now depend on VectorContent. 10521 10522 - made operator*[=](double) into member functions. 10523 10524 commit 3dd9c7ca1b89a4b30a84806b5db5b0fa21e6fcca 10525 Author: Frederik Heber <heber@ins.uni-bonn.de> 10526 Date: Thu Nov 18 15:50:54 2010 +0100 10527 10528 New functions for VectorContent, partially copied from Vector. 10529 10530 - new: Norm(), NormSquared(), Normalize(), getNormalized(). 10531 - implemented: DistanceSquared(), ScalarProduct(), Angle(). 10532 - FIX: operator*(VectorContent) is const member now. 10533 10534 commit 40be553e468c5432cecad628aa323b3b2a23cf28 10535 Author: Frederik Heber <heber@ins.uni-bonn.de> 10536 Date: Tue Nov 16 16:43:58 2010 +0100 10537 10538 Current stable version of SubspaceFactorizer. 10539 10540 can: 10541 - functions embedSubspaceMatrix() and getSubspaceMatrix() to embed and to 10542 obtain the small block matrix from/in a big one 10543 - we construct the index set 10544 - we construct the block matrices 10545 - we solve the eigensystems 10546 - we transfer the eigenvalues back 10547 - we associate to original eigenvectors by parallelness, uniquely within a 10548 subset of indices. 10549 - we construct the new set of eigenvectors by averaging. 10550 10551 can't: 10552 - resulting ev are not orthonormalized or checked to be 10553 - no iteration yet 10554 10555 commit 0fd3f24772a3babab73bf386ab1328777738a36e 10556 Author: Frederik Heber <heber@ins.uni-bonn.de> 10557 Date: Tue Nov 16 16:43:30 2010 +0100 10558 10559 Scalar product operator implemented, taken from Vector. 10560 10561 commit f453d2ed88e83b50d828778afe4b41f3afb313a3 10562 Author: Frederik Heber <heber@ins.uni-bonn.de> 10563 Date: Tue Nov 16 16:43:17 2010 +0100 10564 10565 New VectorContent copy constructor for gsl_vector. 10566 10567 commit 60dada681c8d81d228c315a78be44fcee3bdc6f4 10568 Author: Frederik Heber <heber@ins.uni-bonn.de> 10569 Date: Tue Nov 16 16:41:53 2010 +0100 10570 10571 Added getter for MatrixContent:rows and ::columns, and for Row/Column/DiagonalVector. 10572 10573 - RealSpaceMatrix::createViews() uses these get functions now. 10574 10575 commit 4c57fbfc2c8aed284634ebccfde4fc6d01292498 10576 Author: Frederik Heber <heber@ins.uni-bonn.de> 10577 Date: Tue Nov 16 14:20:29 2010 +0100 10578 10579 FIX: _object for toString() can and has to be const without any loss. 10580 10581 commit d85c28d0a60ffc7686e3aab064475dce354a5cbb 10582 Author: Frederik Heber <heber@ins.uni-bonn.de> 10583 Date: Tue Nov 16 13:33:51 2010 +0100 10584 10585 Added Hadamard product by overloading MatrixContent::operator&(..) and operator&=(..). 10586 10587 - the Hadamard product is a component-wise product which we need for 10588 subspace factorization. 10589 10590 commit 04146220b0862ff96425b73f0ee9076a31b357ce 10591 Author: Frederik Heber <heber@ins.uni-bonn.de> 10592 Date: Tue Nov 16 13:22:39 2010 +0100 10593 10594 BUGFIX: operator<< for VectorContent placed "," at wrong position. 10595 10596 commit 17fa816510f6b950b8a5edbeacf4f3cd95693f08 10597 Author: Frederik Heber <heber@ins.uni-bonn.de> 10598 Date: Tue Nov 16 12:42:47 2010 +0100 10599 10600 MatrixContent::transformToEigenbasis() also working for non-symmetric real matrices. 10601 10602 - we don't have to look for zero columns OR rows, as eigenvectors are stored 10603 column-wise and eigenvalues give clear identification of the right/non-zero 10604 ones. 10605 - also added ASSERT to MatrixContent::operator*(). 10606 10607 commit 5eec98fc74e20ebf464cd1f75c19e0d45b825c07 10608 Author: Frederik Heber <heber@ins.uni-bonn.de> 10609 Date: Tue Nov 16 12:22:30 2010 +0100 10610 10611 Subspacefactorizer can now be linked with just GSLLIBS. 10612 10613 - i.e. we don't need ALLLIBS anymore. 10614 10615 commit 13d1504cb6c549a18c96fb24463172b5f411e4c2 10616 Author: Frederik Heber <heber@ins.uni-bonn.de> 10617 Date: Tue Nov 16 12:21:40 2010 +0100 10618 10619 Moved leastsquaremin.?pp to LinearAlgebra. 10620 10621 - changed Makefile.am and LinearAlgebra/Makefile.am. 10622 - changed include in molecule.cpp, molecule_geometry.cpp and vector_ops.cpp. 10623 10624 commit 6d5a104a348d8b5b9e69f59a022509811fb750cc 10625 Author: Frederik Heber <heber@ins.uni-bonn.de> 10626 Date: Tue Nov 16 12:17:37 2010 +0100 10627 10628 Added/Sorted some includes in LinearAlgebra and Exceptions. 10629 10630 commit e4fe8d6bab9cf4dd5525442cf6174806c453318a 10631 Author: Frederik Heber <heber@ins.uni-bonn.de> 10632 Date: Tue Nov 16 12:16:06 2010 +0100 10633 10634 Moved defs.?pp to subdir (and library) Helpers. 10635 10636 - hence, include had to be changed to Helpers/defs.hpp 10637 - and Makefile.am and Helpers/Makefile.am adapted 10638 - also in LinearAlgebra where MYEPSILON appears we have added the above include 10639 10640 commit ef0c6bec93c0171ad946293a423b49bee2708b58 10641 Author: Frederik Heber <heber@ins.uni-bonn.de> 10642 Date: Tue Nov 16 12:08:02 2010 +0100 10643 10644 Deleted gslvector.?pp from repository. 10645 10646 commit 8e9ce1f9895161c968ecfcdfd3228bebdd711671 10647 Author: Frederik Heber <heber@ins.uni-bonn.de> 10648 Date: Tue Nov 16 11:42:35 2010 +0100 10649 10650 Added MatrixViewContent to allow views on blocks of a gsl_matrix. 10651 10652 - dummy struct BaseCase is now Matrix/VectorBaseCase. 10653 10654 commit b4cf2b752620d3a300d2fa3fef55de302a2b7065 10655 Author: Frederik Heber <heber@ins.uni-bonn.de> 10656 Date: Tue Nov 16 10:45:32 2010 +0100 10657 10658 First commit of SubspaceFactorizerUnitTest. 10659 10660 commit bbf1bd95420fd2556318900509aeb2a2b49865e8 10661 Author: Frederik Heber <heber@ins.uni-bonn.de> 10662 Date: Mon Nov 15 21:00:30 2010 +0100 10663 10664 Extended VectorContent class. 10665 10666 - VectorContent formerly has been just a structure to contain the gsl_vector 10667 due to forward declaration reasons. 10668 - now VectorContent is a true wrapper to gsl_vector, i.e. all functionality 10669 that is now specific to 3 dimensions has been shifted from GSLVector over to 10670 VectorContent. 10671 - VectorContentView is preserved to allow for VectorContent as a view on a 10672 row or column of a matrix. 10673 - changed and renamed unit test gslvectorunittest -> VectorContentUnitTest 10674 - GSLVector is not used anymore anywhere 10675 - one long-sough error was a missing assignment operator filled-in in a wrong 10676 manner by the compiler for VectorContent. 10677 10678 Note that: 10679 - gsl_vector is still used at many places 10680 10681 commit 5ada941f20587a943dbda6033b6e4d8c01b3ce67 10682 Author: Frederik Heber <heber@ins.uni-bonn.de> 10683 Date: Mon Nov 15 15:06:20 2010 +0100 10684 10685 Removed files gslmatrix.?pp. 10686 10687 - also removed last include in vector_ops.cpp. 10688 10689 commit 6c1cd12eee33413bbb6cb70f425ff114bacb2e5b 10690 Author: Frederik Heber <heber@ins.uni-bonn.de> 10691 Date: Mon Nov 15 15:04:49 2010 +0100 10692 10693 tempfix: typo in MatrixContent::...pointer contained ref to GSLMatrix. 10694 10695 commit c134d91b31b1473ed8101493c441a723f670152a 10696 Author: Frederik Heber <heber@ins.uni-bonn.de> 10697 Date: Mon Nov 15 15:04:02 2010 +0100 10698 10699 tempfix: removed transpose ... messages. 10700 10701 commit 0d4424de796ea0eb6de8098859070b5acdb6edae 10702 Author: Frederik Heber <heber@ins.uni-bonn.de> 10703 Date: Mon Nov 15 15:02:38 2010 +0100 10704 10705 Made gslmatrix obsolete. 10706 10707 - Transfered property and swap...() functions from GSLMatrix to MatrixContent. 10708 - Line::getIntersection() uses now MatrixContent. 10709 - made unit tests for gslmatrix into unit test for MatrixContent. 10710 10711 commit cca9efb7bf18583f35d0380acb97e9034c42bbe7 10712 Author: Frederik Heber <heber@ins.uni-bonn.de> 10713 Date: Mon Nov 15 13:58:27 2010 +0100 10714 10715 Renamed Matrix to RealSpaceMatrix. 10716 10717 - class Matrix only represents 3x3 matrices, whereas we are now going to 10718 extend the class MatrixContent to contain arbritrary dimensions. 10719 - renamed class and file 10720 10721 commit 3bc9264606122a0c59b0d7bf20669cc353efbbec 10722 Author: Frederik Heber <heber@ins.uni-bonn.de> 10723 Date: Mon Nov 15 13:36:18 2010 +0100 10724 10725 Extended MatrixContent class. 10726 10727 - MatrixContent formerly has been just a structure to contain the gsl_matrix 10728 due to forward declaration reasons. 10729 - now MatrixContent is a true wrapper to gsl_matrix, i.e. all functionality 10730 that is now specific to 3 dimensions has been shifted from Matrix over to 10731 MatrixContent. 10732 10733 commit 9eb7580cd9f1b192263dddcbef45a27b39fc5eca 10734 Author: Frederik Heber <heber@ins.uni-bonn.de> 10735 Date: Mon Nov 15 11:29:25 2010 +0100 10736 10737 Renamed Matrix setter functions to unify naming. 10738 10739 - Matrix::one -> Matrix::setIdentity 10740 - Matrix::zero -> Matrix::setZero 10741 - Matrix::rotation -> Matrix::setRotation 10742 10743 commit cfc53b40fcd322688790ea68e3e591670d3880ae 10744 Author: Frederik Heber <heber@ins.uni-bonn.de> 10745 Date: Mon Nov 15 11:24:24 2010 +0100 10746 10747 Added template function toString(), is included in Assert.hpp. 10748 10749 - std::string() only works on char* not e.g. int. There we have to use 10750 stringstream. This function encapsulates this conversion. 10751 10752 commit a01144ecd22d2dc72de922a73d53eb3e8a06c02b 10753 Author: Frederik Heber <heber@ins.uni-bonn.de> 10754 Date: Thu Nov 11 19:49:23 2010 +0100 10755 10756 MEMFIX: quitAction is not free'd anymore. 10757 10758 - this is done by ActionRegistry, as it is registered. 10759 - also we empty returnFromActions list properly. 10760 10761 commit 0e08d58b5b181aaa9bc39669605f110092dab17f 10762 Author: Frederik Heber <heber@ins.uni-bonn.de> 10763 Date: Thu Nov 11 19:48:45 2010 +0100 10764 10765 MEMFIX: Submenus were not free'd. 10766 10767 - introduced list of submenus to class TextMenu. 10768 - Submenu TextMenus are deleted in destructor of TextMenu. 10769 - also ShortcutMap is cleared there. 10770 - in TxMenu list of MenuItems is properly erased now. 10771 10772 commit b2151f5f3c6feafd6bdc52bcb8ae01e32953dec6 10773 Author: Frederik Heber <heber@ins.uni-bonn.de> 10774 Date: Thu Nov 11 19:45:09 2010 +0100 10775 10776 Removed some virtual keywords in front of classes that are not base classes, but only derived ones. 10777 10778 commit c82d0c82d4b642535ea65dae019a045eb40cf376 10779 Author: Frederik Heber <heber@ins.uni-bonn.de> 10780 Date: Thu Nov 11 19:43:28 2010 +0100 10781 10782 MenuDescription is now a singleton. 10783 10784 - also all Maps are static objects, allocated and filled dynamically in the 10785 constructor, removed in the destructor. 10786 10787 commit d5240d74405d4ff10e28079491467650d6a36d25 10788 Author: Frederik Heber <heber@ins.uni-bonn.de> 10789 Date: Thu Nov 11 15:39:10 2010 +0100 10790 10791 FIX: Linking to non-system boost is working now. 10792 10793 - FIX: BOOST_CPPFLAGS was not present in AM_CPPFLAGS in all Makefile.am 10794 - Hence, not the correct includes were used and linking occured with undefined 10795 reference errors (because of version conflict between system-wide installed 10796 and non-system boost) 10797 - validate()s now make version check of boost as signature of 10798 validation_error)_ changed in boost 1.42 10799 - added AX_BOOST_SYSTEM to configure.ac and BOOST_SYSTEM_LIB to src/Makefile.am 10800 and src/unittests/Makefile.am. Otherwise we have to set an rpath to let 10801 it find the lib needed by other boost libs in non-system boost configs. 10802 10803 commit ae21cbd6997bd376bb6a338f21a97f19796d175b 10804 Author: Frederik Heber <heber@ins.uni-bonn.de> 10805 Date: Wed Nov 10 15:21:55 2010 +0100 10806 10807 MEMFIX: new function AddStaticEntitiestoIgnoreList() for putting static variables on ignore list. 10808 10809 - static classes still may have dynamically allocated contents in their 10810 constructors. Hence, we have to put their contents - which will get 10811 deleted - into the Memory::ignore map to avoid their admonishing. 10812 10813 commit 41449c171ea776d7dcc91a7b1eaaa12893873edd 10814 Author: Frederik Heber <heber@ins.uni-bonn.de> 10815 Date: Tue Nov 9 22:56:18 2010 +0100 10816 10817 MEMFIX: Action::success and Action::failure are not recognized by MemDebug. 10818 10819 - Although these are placed into boost::share_ptr with Memory::ignore, this 10820 does not work out of the same reasons we have given in the last commit: 10821 boost::shared_ptr makes same dynamic allocation which is not ignored. 10822 - Hence, we have a new (static) function removeStaticStateEntities() that 10823 calls reset() on these shared_ptrs and which is called in cleanUp(). 10824 10825 commit 052afe13bdc0d95e03536a565fb005e73ef89520 10826 Author: Frederik Heber <heber@ins.uni-bonn.de> 10827 Date: Tue Nov 9 17:16:58 2010 +0100 10828 10829 MEMFIX: ofstreams in ...logger.hpp as static objects were not recognized by MemDebug. 10830 10831 - now they are allocated via new in the constructor of the ...logger's. 10832 - Calling new ofstream(..) globally would cause segfaults in some unit tests. 10833 - Constructor is private (due to logger's being singletons), hence this is safe. 10834 10835 NOTE: the problem is not the static object itself, but what is allocated 10836 dynamically inside the object's constructor (this also concerns previous 10837 fixes) 10838 10839 commit 694d841455d8fa728517b6d9113d7a59531897be 10840 Author: Frederik Heber <heber@ins.uni-bonn.de> 10841 Date: Tue Nov 9 16:42:30 2010 +0100 10842 10843 MEMFIX: static factories map of UIFactory was not clear()'ed in destructor. 10844 10845 - hence, boost::shared_ptr still had a user and have not been deleted. 10846 - TESTFIX: ActionSequenceTest and manipulateAtomsTest segfault. 10847 - the problem was the static hasDescriptor boolean. It made the dummy factory 10848 getting registered only once, despite its being removed during UIFactory:: 10849 purgeInstance() in tearDown(). 10850 - hasDescriptor is now a member variable and set to false in tearDown(). 10851 10852 commit 95c0abf00cb1dbccd2cda17e2e09fc0f295e2ffd 10853 Author: Frederik Heber <heber@ins.uni-bonn.de> 10854 Date: Tue Nov 9 16:16:40 2010 +0100 10855 10856 MEMFIX: MemDebug was confused by const Action objects, changed to dynamically allocated. 10857 10858 - before we used: const ACTION INSTANCE, now we allocate via new. 10859 10860 commit d2b28f15457da25888fab2bdd7e87cf6216948e4 10861 Author: Frederik Heber <heber@ins.uni-bonn.de> 10862 Date: Tue Nov 9 16:13:12 2010 +0100 10863 10864 Added missing MemDebug include to various implementation files. 10865 10866 commit d754bbb30af7537ab3706f0b5cec46f0acb27940 10867 Author: Frederik Heber <heber@ins.uni-bonn.de> 10868 Date: Tue Nov 9 16:03:10 2010 +0100 10869 10870 All TextQuery now show getDescription()+": " on handle() call. 10871 10872 - getTitle() is only a token ... not a description 10873 10874 commit 5eebbc78b9dba5f107dc6b3f23314d94c91f7469 10875 Author: Frederik Heber <heber@ins.uni-bonn.de> 10876 Date: Tue Nov 9 16:02:27 2010 +0100 10877 10878 FIX: FileTextQuery was not working properly. 10879 10880 - somehow getline from std::cin does not work ... but std::cin >> ... does 10881 10882 commit 670cd1cb385612d421aad5ee421eab45bc65f878 10883 Author: Frederik Heber <heber@ins.uni-bonn.de> 10884 Date: Mon Nov 8 18:19:07 2010 +0100 10885 10886 FIX: Missing MemDebug.hpp before TextMenu template declaration. 10887 10888 commit 1e086111afdb5ad88cee32c659e63cfd0cef4a02 10889 Author: Frederik Heber <heber@ins.uni-bonn.de> 10890 Date: Mon Nov 8 17:48:38 2010 +0100 10891 10892 Qt stuff is not compiled into libMolecuilder but libMolecuilderQtUI. 10893 10894 commit 87db7aecda4c8363f0b67c5eab5d571842b9c9a0 10895 Author: Frederik Heber <heber@ins.uni-bonn.de> 10896 Date: Mon Nov 8 15:19:35 2010 +0100 10897 10898 Moved declaration for all CommandLineQuery.. into own header file. 10899 10900 - Query module just need this header file. 10901 - CommandLineDialog declaration just has forward declarations. 10902 10903 commit a5ddf04694c4e27ef6c7c442361c2092c16af622 10904 Author: Frederik Heber <heber@ins.uni-bonn.de> 10905 Date: Mon Nov 8 15:06:23 2010 +0100 10906 10907 All Qt...QueryPipe now have their own header file. 10908 10909 - Query just include the QueryPipe they need. 10910 - old declarations moved out of QtDialog.hpp which became a lot slimmer in the 10911 process. 10912 10913 commit 308aa43f3e30fb9a88d9923d90ff3940289ce5a3 10914 Author: Frederik Heber <heber@ins.uni-bonn.de> 10915 Date: Mon Nov 8 14:22:05 2010 +0100 10916 10917 Moved declaration for all QtQuery.. into own header file. 10918 10919 - Query module just need this header file. 10920 - QtDialog declaration just has forward declarations. 10921 10922 commit 738ae1e8b6d1be253565c15e50c3cb7b0cdfabba 10923 Author: Frederik Heber <heber@ins.uni-bonn.de> 10924 Date: Mon Nov 8 14:05:32 2010 +0100 10925 10926 Moved declaration for all TextQuery.. into own header file. 10927 10928 - Query module just need this header file. 10929 - TextDialog declaration just has forward declarations. 10930 10931 commit 3a21a725fe8654c46053fbab3d721519872c4fa0 10932 Author: Frederik Heber <heber@ins.uni-bonn.de> 10933 Date: Mon Nov 8 14:04:37 2010 +0100 10934 10935 Moved validate() functions for boost::program_options into own module. 10936 10937 - removed from CommandLineParser.cpp. 10938 10939 commit e9be39efd3548091ce2ee01c2e279982afc4c11d 10940 Author: Frederik Heber <heber@ins.uni-bonn.de> 10941 Date: Mon Nov 8 13:32:45 2010 +0100 10942 10943 Renamed SeperatorItem -> SeparatorMenuItem. 10944 10945 - in files and declarations. 10946 10947 commit f0f9a60bdc0af971268af45d96cd8b8a9875cb05 10948 Author: Frederik Heber <heber@ins.uni-bonn.de> 10949 Date: Mon Nov 8 13:15:08 2010 +0100 10950 10951 Placed TxMenu::LeaveAction implementation and declaration into its own module. 10952 10953 - TxMenu now only contains forward declaration 10954 10955 commit 8f3f407211aab85d7d899e17a7d633813f02ad83 10956 Author: Frederik Heber <heber@ins.uni-bonn.de> 10957 Date: Mon Nov 8 11:31:40 2010 +0100 10958 10959 Added documentation on the new menu structure. 10960 10961 commit 0af7ef3b3ed30f65ad3059fd8a14ef773be0e070 10962 Author: heber <heber@ins.uni-bonn.de> 10963 Date: Wed Nov 10 15:11:13 2010 +0100 10964 10965 MEMFIX: quitAction is still deleted in TextWindow's destructor. 10966 10967 - deletion is done by ActionRegistry, where is is registered. 10968 10969 commit b59da6e8dbaa0c9c1ed4e190d2b7cd4ccec6152a 10970 Author: Frederik Heber <heber@ins.uni-bonn.de> 10971 Date: Mon Nov 8 10:36:45 2010 +0100 10972 10973 Refactoring of Menu structure for Qt and Text UI done. 10974 10975 - Menu is now the initialising class for the menu structure. 10976 - MenuInterface contains virtual declarations of all functions that Menu needs 10977 to call. 10978 - TextMenu and QtMenu are templated classes which contain both Menu and 10979 MenuInterface and implement the virtual functions. 10980 - class TxMenu and its ...MenuItems contain most of the old Menu code for the 10981 text-based system. Most of the stuff, such as triggers, are now hidden 10982 internally. 10983 - in ..MainWindow() we basically just construct the desired Menu and 10984 call init at the correct time. 10985 10986 commit 5813ac0cc79578b47db146eb94c5be04a9e6ac7b 10987 Author: Frederik Heber <heber@ins.uni-bonn.de> 10988 Date: Sat Dec 4 23:54:22 2010 +0100 10989 10990 FIX: forgot to move using boost::lexical_cast from TextDialog to QtQueryListPipe. 10991 10992 commit b295ca6bd0b38b48a6070c17818c7b8f1ab98686 10993 Author: Frederik Heber <heber@ins.uni-bonn.de> 10994 Date: Sat Dec 4 23:54:22 2010 +0100 10995 10996 FIX: forgot to move using boost::lexical_cast from TextDialog to QtQueryListPipe. 10997 10998 commit ffb9ad3ad26c892a8aa0013c675637237728b887 10999 Author: Frederik Heber <heber@ins.uni-bonn.de> 11000 Date: Mon Nov 1 21:29:58 2010 +0100 11001 11002 FIX: Menu entries are again correctly added to QtGui part. 11003 11004 - also expanded MenuDescriptions to contain position for each menu and submenuing. 11005 - MenuDescriptions::MenuSet was replaced by MenuPositionMap which is iterable. 11006 11007 commit e262c76e616587e3eb48650a71afa8c79d2eeb09 11008 Author: Frederik Heber <heber@ins.uni-bonn.de> 11009 Date: Mon Nov 1 18:26:54 2010 +0100 11010 11011 Removed conversion scripts for ActionTraits refactoring. 11012 11013 commit 7cb4501e7de75b105a08a21b90edfc17c59e2e9f 11014 Merge: c38826b 76cec6c 11015 Author: Frederik Heber <heber@ins.uni-bonn.de> 11016 Date: Tue Nov 9 16:37:52 2010 +0100 11017 11018 Merge branch 'FixOptionRegistryMemLeak' into stable 11019 11020 commit 76cec6c27521e13434c84ce3ad89ba64ea437510 11021 Author: Frederik Heber <heber@ins.uni-bonn.de> 11022 Date: Tue Nov 9 16:35:53 2010 +0100 11023 11024 MEMFIX: OptionRegistry has not been purged in cleanUp(). 11025 11026 commit c38826b3bf15f17943193456d55be73246628ebd 11027 Author: Frederik Heber <heber@ins.uni-bonn.de> 11028 Date: Mon Nov 1 18:26:25 2010 +0100 11029 11030 Removed debug statements in ..Traits() constructors. 11031 11032 commit e4afb4b989433224538ab4ba0f471e4573bbeaf2 11033 Author: Frederik Heber <heber@ins.uni-bonn.de> 11034 Date: Sat Oct 30 21:55:54 2010 +0200 11035 11036 Huge refactoring: Introduction of Traits to Actions. 11037 11038 This change is really big but the introduction of the Trait concept (at least 11039 in its current light form) is so fundamental that lots of pieces had to be 11040 changed in order to get everything working. 11041 11042 The main point why it was necessary to add these traits in the first place was 11043 to comfortably allow for adding extension of Actions information-wise, i.e. 11044 with stuff that is only important for the QtUI, such as icons, or tooltips, ... 11045 This extra information should not be stored with Action itself, as it has 11046 nothing to do with the workings of the Action. And neither should it get 11047 stored with some blown-out-of-proportions MapOfActions class ... 11048 11049 The gist of the change is as follows: 11050 - OptionTrait contains the token, description, shortform and type of an option, 11051 such as ("position", "position in space, none, typeid(Vector)). 11052 - ActionTrait is the derived form for actions where additionally MenuPosition 11053 and MenuName are stored (and probably more to come for the GUI), also 11054 we have a set of OptionTrait instances, one for each option of the Action. 11055 - Action then contains this ActionTrait, specialized for each Action. 11056 - the preprocessor macros have been enhanced to gather all this information 11057 from the .def files. 11058 - MapOfActions is gone. Completely. Most of its use was to store this extra 11059 information and the ValueStorage part now is just in class ValueStorage. 11060 - ValueStorage is no more an interface to MapOfActions but as the name says 11061 a (type-safe) ValueStorage. 11062 11063 Listing the (remaining) changes in alphabetical order of the class: 11064 - Action 11065 - member value ::name dropped, ::getName() uses ActionTraits::getName() 11066 - new define NODEFAULT which is used in paramdefaults in .def files 11067 - all derived actions classes such as Process, Calculations, MakroAction,... 11068 have been adapated to use the ActionTrait concept as well. 11069 11070 - ActionHistory 11071 - extraced RedoAction and UndoAction, shifted implementation into their own 11072 object files and they use .def files as well (i.e. streamlined with method 11073 used for other actions) 11074 11075 - CommandLineParser 11076 - CommandLineParser goes through ActionRegistry to get arguments and types to 11077 add 11078 - we use TypeEnumContainer which before was present in MapOfActions, 11079 as CommandLineParser::AddOptionsToParser() needs enums in its switch 11080 statement, we can't switch on types and types are not known until 11081 run-time. Hence, templates won't do either. 11082 - ShortFormMap is created here now (and used here only) 11083 - File was moved over to UIElements/CommandLineUI. 11084 11085 - MenuDescription 11086 - contain information on Menus such as name, ... 11087 - new unit test checks for consistency 11088 11089 - molecule 11090 - const member functions: Copy(), Output() and OutputBonds() 11091 11092 - OptionRegistry 11093 - new registry class for options only 11094 - we want the same type throughout the code for each token, e.g. "position" 11095 - the registry containts checks for consistency 11096 11097 - OptionTrait 11098 - default values are specified in paramdefaults, none are given by NODEFAULT 11099 - introduced default for translate-atoms, point-correlation, pair-correlation 11100 11101 - Registry pattern 11102 - new unit test, but only sceleton code so far 11103 11104 - ...Query, also ...Pipe 11105 - atoms, molecule and elements are now all const 11106 - also ValueStorage's signatures all have const therein 11107 11108 - ValueStorage 11109 - set/queryCurrentValue from MapOfActions 11110 - at times VectorValue has been in .def files where Vector was in the 11111 signature. This is cleared. Such stuff is only present for e.g. BoxVector 11112 being queried as a Vector. But this is a feature and intended. 11113 11114 - World 11115 - most of the (un)selection functions now work on const atoms and molecules 11116 - in one case we need a const_cast to remove this, but this is intentional, 11117 as the vector of selected atoms stores non-const pointers and this is ok. 11118 11119 There is only one test which had to be changed slightly because a specific 11120 option token as "position" must now have the same type everywhere, e.g. always 11121 Vector. 11122 - TESTFIX: Simple_configuration/2: --position -> --domain-position (and 11123 associated to BoxVector) 11124 11125 commit 23359f078466fee0fe57f86bed6e93885acb877e 11126 Author: Frederik Heber <heber@ins.uni-bonn.de> 11127 Date: Sat Oct 30 21:53:44 2010 +0200 11128 11129 Assert's internal check now uses std::string instead of const char *. 11130 11131 - This allows for stuff like: "i = "+std::string(i)+" is too big" 11132 - no changes are necessary elsewhere 11133 11134 commit c1012b535514cd90386af7e9511caed69adfc649 11135 Author: Frederik Heber <heber@ins.uni-bonn.de> 11136 Date: Tue Oct 26 16:14:41 2010 +0200 11137 11138 Constructor of TextMenu now takes const string as 2nd argument. 11139 11140 commit 20d46cdad72d15ed708a6d07cac8d9a32eacb773 11141 Author: Frederik Heber <heber@ins.uni-bonn.de> 11142 Date: Tue Oct 26 16:14:20 2010 +0200 11143 11144 FIX: Removed unnecessary MapOfActions include. 11145 11146 commit 53be342642ecc5d8c92481d78bf7924d629aad3f 11147 Author: Frederik Heber <heber@ins.uni-bonn.de> 11148 Date: Tue Oct 26 16:04:10 2010 +0200 11149 11150 ActionTraits returns also MenuName(), MenuPosition(), and also OptionDescriptions(). 11151 11152 - is filled within ../src/Actions/Action_impl_header.hpp from MENUNAME and 11153 MENUPOSITION. 11154 - OptionDescriptions taken from paramdescriptions and paramtokens. 11155 - OptionDescrptions are also iterable. 11156 11157 commit 8bcf3f12b38ffa3e7252dadca491edacb57f7d05 11158 Author: Frederik Heber <heber@ins.uni-bonn.de> 11159 Date: Tue Oct 26 15:57:49 2010 +0200 11160 11161 New class MenuDescription containing information on menu items. 11162 11163 - basically, shifted information away from MapOfActions. 11164 11165 commit d57341daabb0139273e143142890dd48dd9c3dd5 11166 Author: Frederik Heber <heber@ins.uni-bonn.de> 11167 Date: Tue Oct 26 15:56:46 2010 +0200 11168 11169 Replaced ACTION::NAME in .def files by contents DESCRPTION. 11170 11171 - in ActionTrait constructor we cannot access Action (i.e. NAME) 11172 - also, this is inconsistent and errorprone 11173 - ACTION::NAME has to be remembered as the shortform for an Action beloning 11174 to the action 11175 - ACTION may be spelled out and thus also mis-spelled. 11176 - conversion script contained in src/Actions/convert4.sh. 11177 11178 commit 052bfd8c4d6d461cd6c8c5091bd84124a8586af1 11179 Author: Frederik Heber <heber@ins.uni-bonn.de> 11180 Date: Tue Oct 26 14:24:03 2010 +0200 11181 11182 Added MENUNAME and MENUPOSITION to each Action's .def. 11183 11184 - MENUNAME is lower case of CATEGORY and within ticks "". 11185 - MENUPOSITION has been extracted from MapOfActions. 11186 - conversion script is in src/Actions/convert3.sh. 11187 11188 commit fc192f60e82753a72ba51f024fbbd313fb147f0f 11189 Author: Frederik Heber <heber@ins.uni-bonn.de> 11190 Date: Tue Oct 26 14:16:57 2010 +0200 11191 11192 Added paramdescriptions to the .def of all Actions. 11193 11194 - option descriptions from MapOfActions. 11195 - action description taken for (...::NAME) parameters. 11196 - conversion script is in src/Actions/convert2.sh. 11197 11198 commit 24fbf3fd91769be68fa1acf1a82f01ac52df3ca1 11199 Author: Frederik Heber <heber@ins.uni-bonn.de> 11200 Date: Tue Oct 26 12:43:36 2010 +0200 11201 11202 All specialization of ActionTraits now contain specific information. 11203 11204 - new defines in Action_impl_header.hpp: DEFAULTVALUE, DESCRiPTION, SHORTFORM, 11205 TYPEINFO. 11206 - i.e. removed the MapOfActions' short-wiring. 11207 - script used for extraction is in src/Actions/convert.sh. 11208 - we cause a compilation error if DESCRIPTION or TYPEINFO are missing. 11209 - FIX: added some typeinfos as void where missing. 11210 11211 commit 2a6a2c7c7d2319e0df9b71e8317ab569311ebbd8 11212 Author: Frederik Heber <heber@ins.uni-bonn.de> 11213 Date: Tue Oct 26 11:44:19 2010 +0200 11214 11215 Removed MapOfActions::populateActions(). 11216 11217 - Action prototypes are now instantiated within the object file, as they 11218 register automatically with the ActionRegistry and can henceforth be used. 11219 - new define INSTANCE with a sort of unique name. 11220 - instance is const and hence not to be used directly. 11221 - MapOfActions::populateActions() removed in CommandLineWindow, QtMainWindow 11222 and TextWindow classes. 11223 - NOTE: this hopefully remedies the problem of forgetting to add new Actions. 11224 - Registry does not cleanup() in its destructor, but function may be called 11225 from derived class if desired. 11226 - All Action prototypes are destroyed at end of program and hence cleanup() 11227 would cause memory corruption. 11228 11229 commit bc2990df0e403a03ab9f9fcaeb6c54b49d50ae81 11230 Author: Frederik Heber <heber@ins.uni-bonn.de> 11231 Date: Tue Oct 26 11:34:45 2010 +0200 11232 11233 Using ActionTraits::getDescrption instead of MapOfActions::... 11234 11235 - i.e. this is the short-wiring 11236 - note that third UI (CommandLine) uses MapOfActions indirectly (through 11237 CommandLineParser) 11238 11239 commit 4885f85a66df7b06abe99c32b66b07d82405fc5a 11240 Author: Frederik Heber <heber@ins.uni-bonn.de> 11241 Date: Tue Oct 26 11:27:08 2010 +0200 11242 11243 Introduced new getters to MapOfActions and ValueStorage. 11244 11245 - new functions are getCurrentValue (string not as type!), getDescription, 11246 getShortForm, getType 11247 - these are need to short-wire Traits through MapOfActions. 11248 11249 commit a8188deed094aea508332ee44b27c211808bf172 11250 Author: Frederik Heber <heber@ins.uni-bonn.de> 11251 Date: Tue Oct 26 11:20:41 2010 +0200 11252 11253 Renaming MapOfActions::CurrentValue -> CurrentValueMap. 11254 11255 commit df32eec66d050ebe15e7e87b16f4dc75abca8de8 11256 Author: Frederik Heber <heber@ins.uni-bonn.de> 11257 Date: Tue Oct 26 11:06:37 2010 +0200 11258 11259 New class ActionTrait(s). 11260 11261 - ActionTrait is the template class that is specialized for every Action. 11262 - ActionTraits is the interface that is inherited by every specialization. 11263 - the interface Action contains AcionTraits itself. 11264 - each specific Action has a specialized ActionTrait<> contained. 11265 11266 note 11267 - so far, everything is short-wired through MapOfActions. 11268 - later the specialization will have specific constructors and get info therein. 11269 11270 commit 6e1e107497aecdfcac9e31ef5756edfec6b550c0 11271 Author: Frederik Heber <heber@ins.uni-bonn.de> 11272 Date: Tue Oct 26 10:44:34 2010 +0200 11273 11274 Put cleaning of Registry out of destructor into cleanup() function. 11275 11276 commit 573ca5fad13d63566ba36dd8f4507d519d51fa15 11277 Merge: 8df74db 6940bb5 11278 Author: Frederik Heber <heber@ins.uni-bonn.de> 11279 Date: Sat Oct 30 20:43:54 2010 +0200 11280 11281 Merge branch 'FixBoostFilesystem' into stable 11282 11283 commit 6940bb556236165ebf89b8495b117042efebb708 11284 Author: Frederik Heber <heber@ins.uni-bonn.de> 11285 Date: Sat Oct 30 20:43:26 2010 +0200 11286 11287 FIX: Forgot to add m4 scripts for boost::filesystem. 11288 11289 commit 8df74dbef13fb1628a8f98eeaac6b7c477e95818 11290 Author: Frederik Heber <heber@ins.uni-bonn.de> 11291 Date: Mon Oct 25 19:11:33 2010 +0200 11292 11293 Split off all ...Query and ...Pipe boilerplate classes. 11294 11295 - each subclass in the dialog nor resides in its own file in a folder called Query (or Pipe). 11296 - only submoduled (no header files created, except for templated QtQueryListPipe class) 11297 - includes have been separated 11298 11299 commit 57a6ea1a91e89f394ecb0bdcf58b45e3ca1587e9 11300 Merge: 9784cf6 379b7e0 11301 Author: Frederik Heber <heber@ins.uni-bonn.de> 11302 Date: Mon Oct 25 19:14:20 2010 +0200 11303 11304 Merge branch 'FixQtRenamed' into RemainingQtQueries 11305 11306 commit 379b7e0da2e4b8cdad2824a51921e5596c46515c 11307 Author: Frederik Heber <heber@ins.uni-bonn.de> 11308 Date: Mon Oct 25 19:13:30 2010 +0200 11309 11310 BUGFIX: Fixed wrong renaming of USE_GUI_QT to USE_GUI_Qt. 11311 11312 commit 9784cf64a18612bd681f2b6731f193dddc39cc25 11313 Merge: 4cf323d bd23909 11314 Author: Frederik Heber <heber@ins.uni-bonn.de> 11315 Date: Mon Oct 25 16:36:30 2010 +0200 11316 11317 Merge branch 'FixBoostFilesystemintegration' into RemainingQtQueries 11318 11319 commit bd239098c2f3804d7b8294ca80990baa48c79c2e 11320 Author: Frederik Heber <heber@ins.uni-bonn.de> 11321 Date: Mon Oct 25 16:29:06 2010 +0200 11322 11323 BUGFIX: new boost::filesystem led to non-parsing of files. 11324 11325 - BUGFIX: MapOfActions::TypeMap is not only important for set/queryCurrentValue 11326 but also for CommandLineParser. 11327 - CommandLineDialog::FileCommandLineQuery::handle() expects 11328 boost::filesystem::path 11329 - new validate for boost::filesystem::path 11330 - AddOptionsToParser was missing case for enum File 11331 - no enum File in TypeEnumMap 11332 - BUGFIX: InputAction 11333 - now setting prefix for all parsers even if filename nor present 11334 - now always setting name of last inserted molecule in 11335 World::getInstance().getMolecules() 11336 - not returning Action::failure when not present, only when not has_filename() 11337 - BUGFIX: PdbParser and TremoloParser were not inserting, but only creating a new 11338 molecule 11339 - BUGFIX: TremoloParser::load() nad no ASSET(false) as it's not implemented. 11340 - BUGFIX: as molId of 0 may occur, PdbParser::save() prints -1 for homeless atoms now 11341 - TESTFIX: Simple_configuration/2/test.pdb has molnr of 0 instead of former 1 (see 11342 above) 11343 11344 commit 4cf323d81658274e55e522306030678b93d2c779 11345 Author: Frederik Heber <heber@ins.uni-bonn.de> 11346 Date: Mon Oct 25 14:08:39 2010 +0200 11347 11348 Renamed QT -> Qt in files, dirs, and class names. 11349 11350 commit 81126aaa1c532d13341be518be2f6758858a3902 11351 Author: Frederik Heber <heber@ins.uni-bonn.de> 11352 Date: Mon Oct 25 11:13:19 2010 +0200 11353 11354 Added ElementsQTQuery, MoleculesQTQuery, VectorsQTQuery. 11355 11356 - note: implementation was present but queries were not registered. 11357 11358 commit 41167c8739c609a9dafeb48042b2cf1989edf758 11359 Author: Frederik Heber <heber@ins.uni-bonn.de> 11360 Date: Mon Oct 25 11:10:22 2010 +0200 11361 11362 Added BoxQTQuery. 11363 11364 commit c96c66b9929d064bdd99474f03b644e0fa4ea88d 11365 Author: Frederik Heber <heber@ins.uni-bonn.de> 11366 Date: Mon Oct 25 10:32:49 2010 +0200 11367 11368 Added Atom(s)QTQuery. 11369 11370 commit ee62e410040b62b213378576c1c85f0f6526af60 11371 Author: Frederik Heber <heber@ins.uni-bonn.de> 11372 Date: Sun Oct 24 22:24:01 2010 +0200 11373 11374 Added BooleanQTQuery. 11375 11376 commit 9d457dd65f4781fc374f639f526e2d46b36dfbf0 11377 Author: Frederik Heber <heber@ins.uni-bonn.de> 11378 Date: Sat Oct 23 16:36:51 2010 +0200 11379 11380 Added EmptyQTQuery. 11381 11382 commit f001ca4daf524d143bf68c17775ef50b2edf5a8a 11383 Author: Frederik Heber <heber@ins.uni-bonn.de> 11384 Date: Sat Oct 23 16:36:11 2010 +0200 11385 11386 FIX: result variable Dialog::FileQuery::tmp is now set. Label added in front of QLineEdit. 11387 11388 commit db7cb048c490f5b4cabe2c62cd255faa628d2cca 11389 Author: Frederik Heber <heber@ins.uni-bonn.de> 11390 Date: Sat Oct 23 16:32:46 2010 +0200 11391 11392 DOCU: Added howto to add queries. 11393 11394 commit 6f5dfe559a8279d64fa1e293a546f8d74ece2ef3 11395 Author: Frederik Heber <heber@ins.uni-bonn.de> 11396 Date: Fri Oct 22 18:13:36 2010 +0200 11397 11398 Added boost::filesystem usage for input files. 11399 11400 - parameters for Action input now have type boost::filesystem. 11401 - rewritten Actions to use boost::filesystems 11402 - in the progress of writing FileQtQuery to present a file dialog. 11403 11404 commit e4decc83cfcf83ef6b15c6d95ce0c741a748f8dd 11405 Author: Frederik Heber <heber@ins.uni-bonn.de> 11406 Date: Fri Oct 22 18:12:42 2010 +0200 11407 11408 Changed a bit the sequence of adding BOOST_LIBs. 11409 11410 commit 94962cafa77b2f6b6b6b08ea294de0af431f5009 11411 Author: Frederik Heber <heber@ins.uni-bonn.de> 11412 Date: Thu Oct 14 14:56:21 2010 +0200 11413 11414 boost::filesystem required in configure.ac 11415 11416 commit 7230be17a3c947931703abdd76da666a44588cf3 11417 Author: Frederik Heber <heber@ins.uni-bonn.de> 11418 Date: Thu Oct 14 11:57:24 2010 +0200 11419 11420 Added WarrantyAction. 11421 11422 This closed ticket #117. 11423 11424 commit ef3640ed17b05e29b1b7c6a1a72ba7e5024af5fc 11425 Author: Frederik Heber <heber@ins.uni-bonn.de> 11426 Date: Sat Aug 28 08:21:48 2010 +0200 11427 11428 TESTFIX: Filling/3 does not need MaxDistance as parameter. 11429 11430 commit eee966fe34197e1773f114db10205f2b7ad6f78e 11431 Author: Frederik Heber <heber@ins.uni-bonn.de> 11432 Date: Sat Aug 28 08:08:52 2010 +0200 11433 11434 New Action FillVoidWithMoleculeAction. 11435 11436 - in contrast to FillWithMoleculeAction we fill all empty space, not just 11437 outside of surfaces. 11438 - TEST: new tests in Filling/3 that fill with butane and a tenside micelle. 11439 - new function FillVoidWithMolecule(). 11440 11441 commit a42054a57dce05541025613b38ddca2bfb93603a 11442 Author: Frederik Heber <heber@ins.uni-bonn.de> 11443 Date: Sat Aug 28 08:07:02 2010 +0200 11444 11445 Extended FormatParserStorage. 11446 11447 - renamed ParserSuffix -> ParserSuffixes. 11448 - new lookup table ParserLookupSuffixes. 11449 - renamed getType -> getTypeFromName. 11450 - new function getTypeFromSuffix. 11451 11452 commit 1997630777d65898f53a1899c5ea260a2850aa17 11453 Merge: a6e6b5c f8982c4 11454 Author: Frederik Heber <heber@ins.uni-bonn.de> 11455 Date: Sat Aug 28 06:13:06 2010 +0200 11456 11457 Merge branch 'FixDoublesinExceptionsMakefile.am' into stable 11458 11459 commit f8982c42eb467c7951ed37f012f50d6066733d46 11460 Author: Frederik Heber <heber@ins.uni-bonn.de> 11461 Date: Sat Aug 28 06:12:50 2010 +0200 11462 11463 FIX: NotInvertibleException.hpp was present twice. 11464 11465 commit a6e6b5ce7c3675b17615ce9fc4f938f0ccc32ef7 11466 Merge: 6c438f9 45924c1 11467 Author: Frederik Heber <heber@ins.uni-bonn.de> 11468 Date: Sat Aug 28 06:08:45 2010 +0200 11469 11470 Merge branch 'FixExceptionsIncludeDir' into stable 11471 11472 commit 45924c1c4900321275c7d22c75650d2dcff4a2c1 11473 Author: Frederik Heber <heber@ins.uni-bonn.de> 11474 Date: Sat Aug 28 06:08:25 2010 +0200 11475 11476 FIX: include dir for Exceptions headers was wrong. 11477 11478 commit 6c438f95957e5e36d17eaf3a715bb46a41596300 11479 Merge: 2ad4824 fd49053 11480 Author: Frederik Heber <heber@ins.uni-bonn.de> 11481 Date: Sat Aug 28 05:17:48 2010 +0200 11482 11483 Merge branch 'StructureRefactoring' into Shapes 11484 11485 Conflicts: 11486 src/Box.cpp 11487 src/Box.hpp 11488 src/Descriptors/AtomShapeDescriptor.cpp 11489 src/Descriptors/AtomShapeDescriptor.hpp 11490 src/Descriptors/AtomShapeDescriptor_impl.hpp 11491 src/LinearAlgebra/Line.cpp 11492 src/LinearAlgebra/Line.hpp 11493 src/LinearAlgebra/Matrix.cpp 11494 src/LinearAlgebra/Matrix.hpp 11495 src/Makefile.am 11496 src/Shapes/BaseShapes.cpp 11497 src/Shapes/BaseShapes_impl.hpp 11498 src/Shapes/Shape.cpp 11499 src/Shapes/Shape.hpp 11500 src/Shapes/ShapeOps_impl.hpp 11501 src/Shapes/Shape_impl.hpp 11502 src/unittests/ShapeUnittest.cpp 11503 11504 - AtomShapeDescriptor had been implemented doubly. 11505 - LineSegment* moved to LinearAlgebra/ 11506 - BaseShapes:: Cuboid is from (0,0,0) and not from (-1,-1,-1) to (1,1,1) 11507 - had to fix ShapeUnittest 11508 - some overlap in Shapes due to getHomogeneousPointsOnSurface added in stable. 11509 - BUGFIX: Matrix::transpose() did not allocate MatrixContent::content. 11510 - merged BaseShapesUnitTest into ShapeUnitTest. 11511 11512 commit fd49053e27109f166b1c159007a0e33103499934 11513 Merge: 8fd9346 6535429 11514 Author: Frederik Heber <heber@ins.uni-bonn.de> 11515 Date: Sat Aug 28 03:45:13 2010 +0200 11516 11517 Merge branch 'stable' into StructureRefactoring 11518 11519 commit 6535429872e16678107267e6d6209cddb72d7faa 11520 Merge: 74a444f 701ad64 11521 Author: Frederik Heber <heber@ins.uni-bonn.de> 11522 Date: Sat Aug 28 03:39:35 2010 +0200 11523 11524 Merge branch 'FixSubgraphDissectionMerge' into stable 11525 11526 Conflicts: 11527 src/Actions/FragmentationAction/SubgraphDissectionAction.cpp 11528 11529 removed merger leftover stuff, conflicted with later updates, but later are 11530 current. 11531 11532 commit 701ad6436949415e2b3ee7e2aa502fe7180c1859 11533 Author: Frederik Heber <heber@ins.uni-bonn.de> 11534 Date: Sat Aug 28 03:31:44 2010 +0200 11535 11536 FIX: Merge stuff still left inside. 11537 11538 commit 74a444f9266857ac3c0a69758f1ef0a44d0f7ede 11539 Author: Frederik Heber <heber@ins.uni-bonn.de> 11540 Date: Sat Aug 28 02:31:59 2010 +0200 11541 11542 TremoloParser can now deal with copied molecules/atoms. 11543 11544 - as some information of atoms is not stored in the World but in an internal 11545 struct, we can not easily have this information in place when atoms have 11546 been copied. Default values would be used instead those of the original 11547 atoms. Instead, we now use the father to take its values. 11548 11549 commit dc1d9ec000ed76a1da691408cbc5dab357860d82 11550 Author: Frederik Heber <heber@ins.uni-bonn.de> 11551 Date: Sat Aug 28 00:17:27 2010 +0200 11552 11553 Several bugfixes for TremoloParser. 11554 11555 - overloaded readAtomDataLine to also accept molecule*. 11556 - BUGFIX: TremoloParser::writeNeighbors() and TremoloParser::saveLine() write ...->getId()+1. 11557 - BUGFIX: TremoloParser::writeNeighbors() forgot to increase currentBond iterator. 11558 11559 commit 1a7fd2c0335923642805cc4cb8ae59ca58748ad8 11560 Author: Frederik Heber <heber@ins.uni-bonn.de> 11561 Date: Fri Aug 27 23:44:59 2010 +0200 11562 11563 New Action MoleculeAction/CopyAction. 11564 11565 commit 76ff552147ff66b9fe10e30958abcb4ef05aa517 11566 Author: Frederik Heber <heber@ins.uni-bonn.de> 11567 Date: Sat Aug 28 00:14:33 2010 +0200 11568 11569 BUGFIX: molecule::CopyMolecule() was broken. 11570 11571 fixes: 11572 - for loop over Bonds was wrong (copy&paste from one where bonds are removed) 11573 - leftiter and rightiter were looking wrongly at the original, not the copy molecule. 11574 11575 commit 7d8342bd474d4727096bdd22952cb35fbc6b3e72 11576 Author: Frederik Heber <heber@ins.uni-bonn.de> 11577 Date: Fri Aug 27 23:15:03 2010 +0200 11578 11579 SubgraphDissectionAction does not delete bonds anymore and bugfixes regarding its redo. 11580 11581 - Only creates BondGraph of system when no bonds are present. 11582 11583 - redo was not working correctly due to wrong end state of performCall(): 11584 - ids were wrong. 11585 - general MoleculeListClass was not filled correctly. 11586 - fathers were not corrected. 11587 - NOTE: This is all obsolet when DepthFirstSearchAnalysis does not copy 11588 anymore. 11589 11590 commit c449d9b8a0ac9cca5b6e85e320c3732e5c61ccee 11591 Author: Frederik Heber <heber@ins.uni-bonn.de> 11592 Date: Fri Aug 27 23:05:18 2010 +0200 11593 11594 Added new Action ConstructBondGraphAction. 11595 11596 commit af2c424c3fdc756190dc3577a68e02c637a3883b 11597 Author: Frederik Heber <heber@ins.uni-bonn.de> 11598 Date: Fri Aug 27 22:58:40 2010 +0200 11599 11600 LinkedCell constructor rewritten. 11601 11602 - had to introduce getValue(iterator) to: molecule, tesselation, LinkedCell::LinkedNodes 11603 - LinkedCell::LinkedNodes is not a typedef anymore 11604 - new class LinkedCell::LinkedNodes derived from stl::list<TesselPoint *> to add getValue(iterator). 11605 - LinkedCell constructors changed: 11606 - use template for all classes that have begin(), end() and ... sigh ... getValue() 11607 - Argh! STL containers do all have begin() and end() but no consistent operator* (maps return pair<> ...) 11608 - specialized version for PointCloud derivatives 11609 - various functions had to be changed due to changed signature of LinkedCell constructor 11610 11611 commit 21585fa783cda272b17cdf72bc467cda038347a8 11612 Author: Frederik Heber <heber@ins.uni-bonn.de> 11613 Date: Fri Aug 27 14:30:25 2010 +0200 11614 11615 Added getter/setter for PdbParser::atomIdMap(). 11616 11617 commit bb6193865ee69d221ba8b130353ded6a0f4eb7e3 11618 Author: Frederik Heber <heber@ins.uni-bonn.de> 11619 Date: Fri Aug 27 12:37:13 2010 +0200 11620 11621 Added PdbParser with save capability. 11622 11623 - load does not yet work. 11624 - added test part to Simple_configuration/2 (new file test.pdb) 11625 11626 commit 5c6946cfd5f8773c487f84e0b4a983678eec8c83 11627 Author: Frederik Heber <heber@ins.uni-bonn.de> 11628 Date: Fri Aug 27 12:25:55 2010 +0200 11629 11630 FormatParserStorage extended a bit. 11631 11632 - new functions add(type) that accept either parser name or ParserTypes and 11633 adds the respective class. 11634 - new function getType(type) that accepts a parser name and returns the type. 11635 11636 commit 3ae731331613c6806f4a83a01d7417d215c6877a 11637 Author: Frederik Heber <heber@ins.uni-bonn.de> 11638 Date: Tue Aug 17 15:44:11 2010 +0200 11639 11640 Added initial PdbParser. 11641 11642 commit fbcd5cbe1065a55330f11fa45b6b125f92124b39 11643 Author: Frederik Heber <heber@ins.uni-bonn.de> 11644 Date: Fri Aug 27 14:29:12 2010 +0200 11645 11646 BUGFIX: FragmentationSubgraphDissectionAction::performCall() did not produce bond structure in disconnected molecules. 11647 11648 - removed FillBondStructureFromReference() call at some point which is 11649 necessary to re-create the bond structure as long as we copy the atoms. 11650 11651 commit b5cf6c48a6bcd491bcd50d6838adbfd498feae9e 11652 Author: Frederik Heber <heber@ins.uni-bonn.de> 11653 Date: Fri Aug 27 14:08:50 2010 +0200 11654 11655 BUGFIX: BondGraph::max_distance is used for LinkedCell cell length but does not contain BondGraph::BondThreshold. 11656 11657 commit e8926e1b8f716585ac54ff5480a69b8bfa36d526 11658 Author: Frederik Heber <heber@ins.uni-bonn.de> 11659 Date: Fri Aug 27 12:42:08 2010 +0200 11660 11661 BUGFIX: molecule::AddCopyAtom() did not set the copied atom's molecule. 11662 11663 commit f9183b6731150d9efa274b21694d769ecc6183b1 11664 Author: Frederik Heber <heber@ins.uni-bonn.de> 11665 Date: Fri Aug 27 11:44:17 2010 +0200 11666 11667 BUGFIX: graph info per bond is now output nicely. 11668 11669 - added operator<< to GraphNode class. 11670 - changed GraphNode::OutputComponentNumber to receive ostream as parameter. 11671 - is used in rewrite of GraphNode::OutputGraphInfo(), molecule::OutputGraphInfoPerBond() 11672 11673 commit 231b5e21a06b3aa8f014d4f11b9c5d5dc1c1ec31 11674 Author: Frederik Heber <heber@ins.uni-bonn.de> 11675 Date: Fri Aug 27 11:32:03 2010 +0200 11676 11677 Added debug* to .gitignore. 11678 11679 commit 73a85720b45b5f7d02bd8e205b45936d58055ed1 11680 Author: Frederik Heber <heber@ins.uni-bonn.de> 11681 Date: Fri Aug 27 11:08:51 2010 +0200 11682 11683 FIX: some getter functions (name, id, formula) in class molecule were not const. 11684 11685 commit c6653745c7e2c1a9d5510ee8ec11e0b97d5951ef 11686 Author: Frederik Heber <heber@ins.uni-bonn.de> 11687 Date: Fri Aug 27 11:30:34 2010 +0200 11688 11689 FIX: changed minimal bondddistance threshold to 0.1, as otherwise molecular hydrogen is not scanned. 11690 11691 - introduced MAX_LINKEDCELLNODES in class LinkedCell as an upper bound for the 11692 number of cells allocated. 11693 11694 commit 10fa1d73391bc70c0607c7e764f5977ce65ff276 11695 Author: Frederik Heber <heber@ins.uni-bonn.de> 11696 Date: Thu Aug 26 23:36:28 2010 +0200 11697 11698 DOCU: Updated Action Howto to contain the new macro framework. 11699 11700 commit 966e12d8a822176e4558e3229d5f45d6231cc1c0 11701 Author: Frederik Heber <heber@ins.uni-bonn.de> 11702 Date: Thu Aug 26 23:07:17 2010 +0200 11703 11704 Removed the conversion script files again. 11705 11706 They have been added to have them in the repo just in case ... 11707 11708 commit 1fd67574a5cc6c07a5638d5d343eae3b6bbdb9bf 11709 Author: Frederik Heber <heber@ins.uni-bonn.de> 11710 Date: Thu Aug 26 23:05:34 2010 +0200 11711 11712 All Actions are converted to the new macro framework. 11713 11714 - included all three values that have been used to create or convert the files 11715 - createdef.sh 11716 - createCpp.sh 11717 - createHeader.sh 11718 11719 commit 53d01c162db75173725d553f4f149598163822b5 11720 Author: Frederik Heber <heber@ins.uni-bonn.de> 11721 Date: Thu Aug 26 20:59:34 2010 +0200 11722 11723 Renamed dir Actions/CmdAction -> Actions/CommandAction, renamed class CommandLine... -> Command... 11724 11725 - this is necessary to get the naming scheme consistent. 11726 11727 commit 8bb05ec5f3d1431cfd3d423bae88f557686697ef 11728 Author: Frederik Heber <heber@ins.uni-bonn.de> 11729 Date: Thu Aug 26 15:27:09 2010 +0200 11730 11731 AtomAddAction converted to use macro framework. 11732 11733 - State generation is working. 11734 11735 commit 72f6112db6cf5a1c617c8ce97530a68134b38d76 11736 Author: Frederik Heber <heber@ins.uni-bonn.de> 11737 Date: Thu Aug 26 15:26:15 2010 +0200 11738 11739 Added set/queryCurrentValue for BoxVector and Dialog::quer<> specialization. 11740 11741 - uses queryVector but with "true" instead of "false". 11742 11743 commit e3e6e24ee59391a5a3d54edddf8e9a8a6c0e1b3e 11744 Author: Frederik Heber <heber@ins.uni-bonn.de> 11745 Date: Thu Aug 26 15:24:45 2010 +0200 11746 11747 Added BoxVector class. 11748 11749 BoxVector is simply a Vector with a different class name. This is needed to 11750 discern in a template between (Box)Vectors that adhere to the boundary conditions 11751 of the box and such (normal) Vectors that don't. 11752 11753 commit b4fa106066497a55bc2e47cdbd46bf7f293eaf34 11754 Author: Frederik Heber <heber@ins.uni-bonn.de> 11755 Date: Thu Aug 26 15:23:21 2010 +0200 11756 11757 Extended action generating macro framework to create specialized ActionState, too. 11758 11759 - types, tokens, references -> param... 11760 - new statetypes, statereferences that have to be defined for additional variables in the state 11761 11762 commit 9ee38b1c3b23a38c779c8e4ad098fe0677a3a5b7 11763 Author: Frederik Heber <heber@ins.uni-bonn.de> 11764 Date: Wed Aug 25 19:20:37 2010 +0200 11765 11766 Extended macro framework. 11767 11768 Extensions: 11769 - all central definitions reside in .def files 11770 - This if file is necessary because we need the definitions at two places: 11771 hpp and cpp 11772 - And as we always use the same define names, we have to undefine them at 11773 the end of both (otherwise we get compiler warnings and are prone to 11774 dumb mistakes of forgotten defines seeming present) 11775 - the .hpp is just a very tiny header, that should be possible to batch- 11776 construct inside Makefile as well 11777 - .cpp includes some Action_...hpp files and implements the function 11778 11779 For later (i.e. when ActionRegistry becomes prototype copier) 11780 - instead of waiting for clone(), for now we simply call the prototype. 11781 - in the action command we must not yet prefix paramreferences with "params." 11782 11783 Changes: 11784 - Dialog::query<> is a template which is specialized for every present 11785 query...() function. We need it to automatize fillDialog() 11786 - all AnalysisAction's are now converted, i.e. framework is functional 11787 with parameters and queries (MolecularVolume had none). 11788 11789 commit 0b2ce98def2d6ab9548ba5ac25acbb2ab5bc233c 11790 Author: Frederik Heber <heber@ins.uni-bonn.de> 11791 Date: Wed Aug 25 15:22:58 2010 +0200 11792 11793 Implemented macros for automatically generating repetitive stuff around Actions. 11794 11795 The idea is that only the following items have to be provided for by the user 11796 - parameters (i.e. for each the following tupel: type, token and reference) 11797 - perform...(), ...Undo(), ... 11798 11799 Therefore, we have three new files: 11800 - Action_impl_header.hpp: Is for the declarations in the header 11801 - Action_impl_pre.hpp: Is before definition of functions 11802 - Action_impl_post.hpp: is after definition of functions (cleanup) 11803 11804 Changes: 11805 - MolecularVolumeAction() has already been refactored accordingly. 11806 - new struct ActionParameters, alike to ActionState, to be specialized for each 11807 Action's parameters 11808 - new function Action::getParametersfromValueStorage() handles retrieval of 11809 parameters from ValueStorage. 11810 11811 commit 9c1c89d06cf8e6779213c5c5181524247fd05e85 11812 Author: Frederik Heber <heber@ins.uni-bonn.de> 11813 Date: Thu Aug 26 15:28:45 2010 +0200 11814 11815 FIX: all ...:getHomogeneousPointsOnSurface() now have size_t instead of int parameter. 11816 11817 commit 8fd9346e5c090b879b93dad5c7820919964e4a47 11818 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11819 Date: Thu Aug 26 14:46:06 2010 +0200 11820 11821 Removed template structure from molecule class 11822 11823 commit 32ea5695f81eb947c7da924c8808ff91acc4f552 11824 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11825 Date: Thu Aug 26 14:44:19 2010 +0200 11826 11827 Removed last occurences of molecule::SetIndexedArrayForEachAtomTo() 11828 11829 commit e8a21f0608f0217a98fd8f5da54cc9e8b703bcc1 11830 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11831 Date: Thu Aug 26 14:20:17 2010 +0200 11832 11833 Added an atom::getNr() method to atom class 11834 11835 commit 882a8ac67e05a95dfd3b4c1ee07141dbadd4273d 11836 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11837 Date: Thu Aug 26 13:02:41 2010 +0200 11838 11839 made the atom::OutputTrajectories() method use an enumeration of elements instead of lookup table 11840 11841 commit 487ebb366f1058c4cbfa1b8d7c39068ab4217e29 11842 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11843 Date: Thu Aug 26 12:46:37 2010 +0200 11844 11845 Removed old debug output from atom.cpp 11846 11847 commit aed5582c7a2b19b1798cf507a34e01d1bf8d4e05 11848 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11849 Date: Thu Aug 26 12:37:47 2010 +0200 11850 11851 Removed old debug message from molecule::Output() 11852 11853 commit e5f64de0ed94021d6e3e72fb7d6109348fa75860 11854 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11855 Date: Thu Aug 26 12:35:39 2010 +0200 11856 11857 Added a method that allows comparison of atoms by their atomic number 11858 11859 commit 9e78135793860f7ecac4b92852424b3775909010 11860 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11861 Date: Thu Aug 26 11:55:05 2010 +0200 11862 11863 Removed ActOnAllAtoms from config.cpp 11864 11865 commit 0dc86e2c7b7adc23848ded2fea283fd7d8386a3a 11866 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11867 Date: Thu Aug 26 11:34:49 2010 +0200 11868 11869 Removed unused AtomNo parameter in atom::OutputMPQCLine() 11870 11871 commit 5cd333c61ec493a027760439b5ef6ff498115676 11872 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11873 Date: Wed Aug 25 18:12:17 2010 +0200 11874 11875 Replaced call to Vector::Scale() with operator notation 11876 11877 commit 00ef5cd5635babd648ea219db1abf0b5b6f22e03 11878 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11879 Date: Wed Aug 25 18:10:54 2010 +0200 11880 11881 Removed several calls to molecule::ActOnEachAtom() from molecule_graph.cpp 11882 11883 - Added a function to initialize the DFS inside the molecule 11884 11885 commit 14b65e7d50e8fe7d7dad07de49e7a29035639c88 11886 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11887 Date: Wed Aug 25 18:10:02 2010 +0200 11888 11889 Added a method to reset the graphNr of an atom 11890 11891 commit a3948b7a65055d6d627fa462a6f493b6341f029e 11892 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11893 Date: Wed Aug 25 17:32:29 2010 +0200 11894 11895 Removed unused TrajectoryParticle::CorrectVelocity() method 11896 11897 commit 9b355f18d097539505bf3a7f3e18c7a604b51b6f 11898 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11899 Date: Wed Aug 25 16:03:45 2010 +0200 11900 11901 Removed unused TrajectoryParticle::SumUpKineticEnergy() method 11902 11903 commit 259b2b69cc967f3848c060bc49cb3cdd604ae961 11904 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11905 Date: Wed Aug 25 16:01:19 2010 +0200 11906 11907 Made the molecule::VerletForceIntegration() use the atomSetMixin to correct velocities 11908 11909 commit 5ac6903c7db612b466759cd7646416f2c4289a2d 11910 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11911 Date: Wed Aug 25 16:00:33 2010 +0200 11912 11913 Added a method to the AtomSetMixin that allows adding a velocity to all velocity elements of the trajectory of a set of atoms 11914 11915 commit 1f83378713b1bfbb4e64a67186df84e3524e8d19 11916 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11917 Date: Wed Aug 25 15:41:56 2010 +0200 11918 11919 Moved AtomInfo::getMass() method to class atom to avoid problems with virtual inheritance 11920 11921 commit 5e99bcb3afe6825d60ef5e1cc3ae6144178d1aa8 11922 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11923 Date: Wed Aug 25 15:22:11 2010 +0200 11924 11925 Added a method to the AtomSetMixin that allows calculating the total moment of arbitrary sets of Atoms 11926 11927 commit e95a59cf14c62c478df7c29aa6448bf917ea615d 11928 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11929 Date: Wed Aug 25 15:06:42 2010 +0200 11930 11931 Added a method that allows querying the momentum of a particle 11932 11933 commit cddda78467e08dd61afb0ff7c34c05de04e1e19b 11934 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11935 Date: Wed Aug 25 15:02:26 2010 +0200 11936 11937 Added a method to the AtomSetMixin that allows calculating the total mass of an arbitrary set of Atoms 11938 11939 commit 9184bdb6dcfab3be594b5b39d67115f0a8522717 11940 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11941 Date: Wed Aug 25 14:58:02 2010 +0200 11942 11943 Added a method that allows querying the mass of an atom directly 11944 11945 - allows replacement of atom->getType()->getMass() with simpler atom->getMass() 11946 11947 commit 2be37bebc2369db6d04a0f65494abf633b1fceea 11948 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11949 Date: Wed Aug 25 14:33:00 2010 +0200 11950 11951 Removed some more calls to molecule::ActOnAllAtoms() 11952 11953 commit 51c3e4347f7ed1dc3bd82d6b45eeaf3ebfbf0e7c 11954 Merge: 14c57a9 d17f3dc 11955 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11956 Date: Wed Aug 25 14:25:28 2010 +0200 11957 11958 Merge branch 'stable' into StructureRefactoring 11959 11960 Conflicts: 11961 src/atom_trajectoryparticle.cpp 11962 11963 commit 14c57a9b8ce2c94b3ca4d4d59b36bd5aa57cabf1 11964 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11965 Date: Wed Aug 25 14:04:11 2010 +0200 11966 11967 Made all parts of the programm use the new thermostat structure 11968 11969 commit 8d1dd4fcc7d507ccaf7345578b875e0a40064ac1 11970 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11971 Date: Wed Aug 25 12:42:21 2010 +0200 11972 11973 Removed obsolete load methods from config class 11974 11975 commit 3e4162451cda2418307cb0c93ebf19ec43a6d0cf 11976 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11977 Date: Wed Aug 25 12:16:11 2010 +0200 11978 11979 Added several default constructors with some default values to Thermostats 11980 11981 commit c0c650847435dcb508e3ddcaccc0d96a196e2fbd 11982 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11983 Date: Wed Aug 25 11:24:25 2010 +0200 11984 11985 Added structure that allows construction of thermostats from parameters in a configfile 11986 11987 commit 0b882abd64ff741eb96c26e6fa3ec61251b77ca4 11988 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11989 Date: Wed Aug 25 10:57:44 2010 +0200 11990 11991 Added Inheritance structure to ThermostatTraits 11992 11993 commit 579a8164cf780e621cb4e727d195e84fdcd5698a 11994 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 11995 Date: Fri Aug 20 15:54:23 2010 +0200 11996 11997 Added a basic self-descriptive structure for Thermostats 11998 11999 commit 194649564d0311bec3d5d03acaa519a7a24a5611 12000 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12001 Date: Fri Aug 20 13:43:39 2010 +0200 12002 12003 Added class structure to represent thermostats 12004 12005 commit d17f3dc57329f8bf69e73f21166b7985cb4d1a79 12006 Author: Frederik Heber <heber@ins.uni-bonn.de> 12007 Date: Thu Aug 19 18:56:30 2010 +0200 12008 12009 FIX: Using getSuitableShortForm() in TextWindow::TextWindow() for all triggers. 12010 12011 - also reserving q and s by initially pytting them into the list. 12012 12013 commit 9c7e0f93616747e1a524ff1bc6b6beca81cda730 12014 Author: Frederik Heber <heber@ins.uni-bonn.de> 12015 Date: Thu Aug 19 18:55:17 2010 +0200 12016 12017 deleted function MoleculeListClass::flipChosen() and setMoleculeActiveAction from TextMenu. 12018 12019 commit 994713afde7cd130d68e8417cfee8669e3d96182 12020 Merge: 4b76502 8006eed 12021 Author: Frederik Heber <heber@ins.uni-bonn.de> 12022 Date: Thu Aug 19 18:59:10 2010 +0200 12023 12024 Merge branch 'FixRedoAction_isActive' into stable 12025 12026 commit 8006eed2788de714f5d76c85a5cb7d0c5891ef58 12027 Author: Frederik Heber <heber@ins.uni-bonn.de> 12028 Date: Thu Aug 19 18:58:24 2010 +0200 12029 12030 FIX: "Redo" message was in wrong function. 12031 12032 - in ActionHistory::RedoAction::isActive() instead of ActionHistory::RedoAction::performCall(). 12033 12034 commit 4b76502568e217ff079156bad174952770f35084 12035 Merge: 80cecb5 c6081e5 12036 Author: Frederik Heber <heber@ins.uni-bonn.de> 12037 Date: Thu Aug 19 18:27:32 2010 +0200 12038 12039 Merge branch 'FixTextUI_undo' into stable 12040 12041 commit c6081e5308fdedcfd6d64ecc65f597a8c8fbd17e 12042 Author: Frederik Heber <heber@ins.uni-bonn.de> 12043 Date: Thu Aug 19 18:26:53 2010 +0200 12044 12045 BUGFIX: TextWindow::TextWindow() has Undo/Redo names still with capital letters. 12046 12047 commit 80cecb59e1dd972f90cbd31cd301f1e3aaae1ce7 12048 Author: Frederik Heber <heber@ins.uni-bonn.de> 12049 Date: Thu Aug 19 17:21:30 2010 +0200 12050 12051 MEMFIX: Matrix::transformToEigenbasis() did not free evec and eval. 12052 12053 commit 6543946e6fc68bde4047505df9233ee229b408fc 12054 Author: Frederik Heber <heber@ins.uni-bonn.de> 12055 Date: Thu Aug 19 17:09:15 2010 +0200 12056 12057 MEMFIX: World::numMoleculeDefragSkips and World::lastMoleculePoolSize were not set in constructor. 12058 12059 commit 146cff20ef08f9e72090351efc803d678278fe81 12060 Author: Frederik Heber <heber@ins.uni-bonn.de> 12061 Date: Thu Aug 19 15:32:48 2010 +0200 12062 12063 FIX: include <cmath> missing in some files. 12064 12065 commit 73c5ca926af8e466cdb3a46c2f6677235fe603f5 12066 Author: Frederik Heber <heber@ins.uni-bonn.de> 12067 Date: Thu Aug 19 15:28:53 2010 +0200 12068 12069 FIX: gsl/gsl_inline.h not needed in atom_trajectoryparticle.hpp. 12070 12071 commit 9f99b38262d85a2d8917cb47c5b52d88465624d7 12072 Author: Frederik Heber <heber@ins.uni-bonn.de> 12073 Date: Thu Aug 19 10:54:01 2010 +0200 12074 12075 MEMFIX: periodentafel::LoadElementsDatabase() leaked memory. 12076 12077 - if element was replaced by one from parsedElements, the content was copied, 12078 but the allocated element in the map not deleted. 12079 12080 commit 2a745784af224f1a124be7ae6bdcf0a3b38bb95d 12081 Author: Frederik Heber <heber@ins.uni-bonn.de> 12082 Date: Thu Aug 19 10:52:42 2010 +0200 12083 12084 MEMFIX: operator*(Matrix,Vector) leaked memory. 12085 12086 - a gsl_vector was callocated twice as such and inside a VectorContent. 12087 12088 commit 83f17610150f59038d04ff05a300df1d76c5df81 12089 Author: Frederik Heber <heber@ins.uni-bonn.de> 12090 Date: Tue Aug 17 19:21:25 2010 +0200 12091 12092 Made all member variables of class element private, added accessor functions and periodentafel is friend. 12093 12094 commit 1ee380f25018990c930f81125ef904282f7f3887 12095 Author: Frederik Heber <heber@ins.uni-bonn.de> 12096 Date: Wed Aug 18 18:11:16 2010 +0200 12097 12098 Replaced autogen.sh with TREMOLO-derivate bootstrap shell. 12099 12100 - bootstrap keeps ChangeLog up to date. 12101 - this allows for consistent docu generation on jupiter for TRAC. 12102 12103 commit 2f6f5103d9ed45cb9dee4880b5a85503d4bfb2ae 12104 Author: Frederik Heber <heber@ins.uni-bonn.de> 12105 Date: Wed Aug 18 18:10:07 2010 +0200 12106 12107 Enabled XML file of valgrind errors, can be viewed with memcheckview. 12108 12109 commit ea2c76cb353581745939e7353cd8282849c7f9d3 12110 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12111 Date: Wed Aug 18 18:09:47 2010 +0200 12112 12113 Removed definition of unused method in ThermostatContainer class 12114 12115 commit bc8a4159f58ff2993d942c9ae0a4eb6b9635c012 12116 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12117 Date: Wed Aug 18 16:10:33 2010 +0200 12118 12119 Added a warning to keep people from using VectorContent directly 12120 12121 commit c743f8a315d7845beb1acf951a15abd447c15e55 12122 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12123 Date: Wed Aug 18 16:09:58 2010 +0200 12124 12125 Removed some more invocations of ActOnAllAtoms 12126 12127 commit 7329c3712616286c539153409d0ece7591cdea9f 12128 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12129 Date: Wed Aug 18 15:34:33 2010 +0200 12130 12131 Removed obsolete method for summing up temperature 12132 12133 commit 90040282fe2db00e50217b4b4d05068552b8077e 12134 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12135 Date: Wed Aug 18 15:30:26 2010 +0200 12136 12137 Made the molecule::OutputTemperatureFromTrajectories() method use the totalTemperature method provided by the AtomSet 12138 12139 commit ddc85b155533cc7cf648e5fbccea698f7935b927 12140 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12141 Date: Wed Aug 18 15:19:14 2010 +0200 12142 12143 Added a method that allows calculation of the total temperature of a set of atoms at a given time step 12144 12145 commit 4900387e8dbe2570987662bf273f57b95ab6acc3 12146 Author: Frederik Heber <heber@ins.uni-bonn.de> 12147 Date: Tue Aug 17 16:14:34 2010 +0200 12148 12149 added --with-valgrind switch to configure script. 12150 12151 - if given, we use valgrind in the testsuite call and fail when valgrind reports errors or leaking memory. 12152 - is off by default. 12153 - test_all.sh: 12154 - CXXFLAGS needs to be stated after configure such that configure can store the set value (also in its log) 12155 - always compiles with -Wall 12156 - in case of -g3 we use --with-valgrind to enable valgrinding of testsuite 12157 - extended function configure() to three arguments, to allow for recognizing "-g3" 12158 12159 commit 293afd2518c85a25e2ebc908251dabe09d635582 12160 Merge: 5f8660a f304905 12161 Author: Frederik Heber <heber@ins.uni-bonn.de> 12162 Date: Tue Aug 17 15:34:08 2010 +0200 12163 12164 Merge remote branch 'wildenhues/stable' into stable 12165 12166 commit 5f8660ad2bcd7c4039fa6d9f537658dacdc0b1d4 12167 Author: Frederik Heber <heber@ins.uni-bonn.de> 12168 Date: Tue Aug 17 15:17:22 2010 +0200 12169 12170 Changed PACKAGENAME and version. 12171 12172 - rename ESPACKVersion in src/version.h -> MOLECUILDERVERSION 12173 - changed PACKAGENAME to MoleCuilder 12174 - FIX: changed version number in configure.ac to 1.0.0 12175 12176 commit bcf653d9a0b46f52fc007e0fbb11d60cc4aa49a2 12177 Author: Frederik Heber <heber@ins.uni-bonn.de> 12178 Date: Tue Aug 17 15:14:22 2010 +0200 12179 12180 Added copyright note to each .cpp file and an extensive one to builder.cpp. 12181 12182 commit 9cd8071f2b87fbfff8c3eb03ad49e2c1ceda7b74 12183 Author: Frederik Heber <heber@ins.uni-bonn.de> 12184 Date: Tue Aug 17 14:50:34 2010 +0200 12185 12186 FIX: Other authors were missing again in AUTHORS (thx Ralf!). 12187 12188 - probably went missing when Repo was splitt off from ESPACK? 12189 12190 commit 49a1362bb32b57e917e16bb423d8f5a7ec95ac2f 12191 Merge: a19d73e 8e463e3 12192 Author: Frederik Heber <heber@ins.uni-bonn.de> 12193 Date: Tue Aug 17 14:43:46 2010 +0200 12194 12195 Merge branch 'FixMerge_TestSHBranch' into stable 12196 12197 commit 8e463e3743873aa2485a58f66cc88fde13f11d11 12198 Author: Frederik Heber <heber@ins.uni-bonn.de> 12199 Date: Tue Aug 17 14:43:04 2010 +0200 12200 12201 FIX: COPYING AND README still had conflict markers (thx Ralf!). 12202 12203 commit f304905bdd65ac1553aaccf2a94ac5910ded50b5 12204 Author: Ralf Wildenhues <wildenhues@ins.uni-bonn.de> 12205 Date: Tue Aug 17 14:28:29 2010 +0200 12206 12207 Enable colored testsuite output if available. 12208 12209 * configure.ac: Enable the Automake option 'color-tests'. 12210 Require version >= 1.11, needed for color-tests and parallel-tests, 12211 for a sensible error message from older versions. 12212 * tests/regression/testsuite.at: Use AT_COLOR_TESTS if available. 12213 12214 commit a19d73e6949af32bd9194e482beadb7786ba5775 12215 Author: Frederik Heber <heber@ins.uni-bonn.de> 12216 Date: Fri Aug 13 18:42:47 2010 +0200 12217 12218 FIX: GetCenterofCircumcircle() has check for division by zero. 12219 12220 commit bb440860e72c18e7341f20fc84c9321267e02e6a 12221 Author: Frederik Heber <heber@ins.uni-bonn.de> 12222 Date: Fri Aug 13 18:18:01 2010 +0200 12223 12224 BUGFIX: Removed adding of parsed atoms in LoadXyzAction. 12225 12226 - a molecule is created and added already in XyzParser::load(). 12227 - this caused the id of a newly parsed in xyz file to be 2 instead of 1 and the 12228 creation of an empty molecule. 12229 12230 commit 0adac17286dfddc176e65a475257636490346e05 12231 Author: Frederik Heber <heber@ins.uni-bonn.de> 12232 Date: Fri Aug 13 18:16:37 2010 +0200 12233 12234 Added "periodic" as optional argument to TranslateAction. 12235 12236 - entails execution of Box::WrapPeriodically() if true. 12237 - BUGFIX: friend declaration had wrong signature. 12238 12239 commit 5f1d5b842f0b34e83a8b8253e98b4bb0defe850e 12240 Author: Frederik Heber <heber@ins.uni-bonn.de> 12241 Date: Fri Aug 13 16:08:39 2010 +0200 12242 12243 BUGFIX: fixed undefined ref to ObservedContainer<...>::begin()/end()/count()/... at -O1 12244 12245 - test_all.sh did not fail compilation at -O1 (though working fine at -g3, i.e. -O0). 12246 - Seems like a compiler bug (optimization makes some assumption we do not fulfill, ...) 12247 - FIX: wrote macro to explicitly instantiate all member functions of ObservedContainer, 12248 called CONSTRUCT_OBSERVEDCONTAINER(name). 12249 - Is used by the world for AtomSet and MoleculeSet 12250 - had to introduce typedefs for the STL-Sets as "set<bla,bla>" is parsed as two arguments 12251 by the preprocessor ... d'oh. 12252 12253 commit ae959a63102374911f70ae2030155c2100ffa747 12254 Author: Frederik Heber <heber@ins.uni-bonn.de> 12255 Date: Thu Aug 12 20:15:33 2010 +0200 12256 12257 element::group, period, block converted from char[] to std::string. 12258 12259 - came up as test_all.sh showed strncpy to as undefined reference on -O1. 12260 12261 commit faa1c97ea48c451ad4f2217cd2d40c7d8a22509e 12262 Author: Frederik Heber <heber@ins.uni-bonn.de> 12263 Date: Thu Aug 12 18:32:32 2010 +0200 12264 12265 BUGFIX: SubgraphDissectionAction() does not copy system anymore, has Undo/Redo. 12266 12267 - This fixes ticket #88. 12268 - Added Undo/Redo, needed World::changeMoleculeId() for that 12269 - BUGFIX: performCall() let DepthFirstSearchAnalysis() copy atoms and copied 12270 the molecules once more. 12271 - BUGFIX: performCall() did not reset fathers of copied atoms to point to 12272 themselves (BUG with redo arose). 12273 - TEST: Added Undo/Redo part to Graph/2 (subgraph dissection). 12274 - TESTFIX: Analysis/4 uses --unselect-molecule-by-formula and id of this 12275 molecule is 1 (as system is not copied anymore). 12276 12277 commit a7a087b4161e29ab90bf567b4c104f88cc4a1336 12278 Author: Frederik Heber <heber@ins.uni-bonn.de> 12279 Date: Thu Aug 12 18:31:02 2010 +0200 12280 12281 new function World::changeMoleculeId(). 12282 12283 - copied from changeAtomId() 12284 - needed for undoing changes to the set of molecules in the World. 12285 12286 commit 51769f1ad434c697ff72558611b3163dbe892aa8 12287 Author: Frederik Heber <heber@ins.uni-bonn.de> 12288 Date: Thu Aug 12 17:08:47 2010 +0200 12289 12290 Added (un)select-molecule-by-formula/..-atom-by-element actions.. 12291 12292 commit 60896f551f7f5652f208883f10b4f13ef6c1383e 12293 Author: Frederik Heber <heber@ins.uni-bonn.de> 12294 Date: Thu Aug 12 16:24:42 2010 +0200 12295 12296 BUGFIX: molecule::Add...Atom() and molecule::RemoveAtom() called formula::operator+ effectively twice. 12297 12298 - formula::operator+/- is called by insert() and erase() only. 12299 12300 commit fa7989d779d06bef120bc5ceb8a80825582a3e66 12301 Author: Frederik Heber <heber@ins.uni-bonn.de> 12302 Date: Thu Aug 12 16:23:34 2010 +0200 12303 12304 FIX: World::destroyMolecule(mol *) - assert that pointer is not NULL. 12305 12306 - added docu to some atom member functions. 12307 12308 commit 2b7d1b4a8971f8404e446082f8f129a126eb6922 12309 Author: Frederik Heber <heber@ins.uni-bonn.de> 12310 Date: Thu Jul 29 14:07:40 2010 +0200 12311 12312 Merged MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() into FragmenationSubgraphDissectionAction. 12313 12314 - also rewrote the function a bit: 12315 - no more copying of atoms 12316 - we just take the molecule out of the MoleculeLeafs 12317 - molecule that contains all atoms is destroyed including all original atoms (they are copied by DFS). 12318 12319 commit 31fb1df09428e7671debb5867061ee049cbbd546 12320 Author: Frederik Heber <heber@ins.uni-bonn.de> 12321 Date: Wed Aug 11 16:58:43 2010 +0200 12322 12323 (un)select-atoms-inside-cuboid: cuboid may be rotated. 12324 12325 - Matrix::rotate() sets contents to arbitrary rotation matrix. 12326 - BUGFIX: Matrix::transpose() was working only for symmetric matrices. 12327 - TEST: unit test cases for rotation() and transpose(). 12328 - new options "angle-x", "angle-y", "angle-z" 12329 - (un)select-atoms-inside-cuboid: have these as optional arguments. 12330 12331 commit 03c902cad860797759acc84bc47e60d6ebb414ca 12332 Author: Frederik Heber <heber@ins.uni-bonn.de> 12333 Date: Wed Aug 11 16:04:15 2010 +0200 12334 12335 Actions may now have optional parameters. 12336 12337 - an additional parameter in ValueStorage::queryCurrentValue() states whether 12338 value is optional or not in which case no assertion is thrown but wrong 12339 returned 12340 - new function MapOfActions::isCurrentValuePresent() 12341 12342 commit 13e3c3f109157595d19a92de57a74cb60bb23ce9 12343 Merge: b8d15ba 6b5657d 12344 Author: Frederik Heber <heber@ins.uni-bonn.de> 12345 Date: Wed Aug 11 13:47:46 2010 +0200 12346 12347 Merge branch 'SmallFixes' into stable 12348 12349 Conflicts: 12350 src/Shapes/BaseShapes.cpp 12351 12352 - include Helpers/Assert.hpp has been introduced, conflicted in position with new MemDebug.hpp 12353 12354 commit b8d15ba4d785c75f9e4833a2ac21ff18d4f73608 12355 Merge: fa18306 23badec 12356 Author: Frederik Heber <heber@ins.uni-bonn.de> 12357 Date: Wed Aug 11 13:45:57 2010 +0200 12358 12359 Merge branch 'HomogeneousPointsOnSurface' into stable 12360 12361 commit 6b5657d58a1afe011e7485a3153286cdf3aa899c 12362 Author: Frederik Heber <heber@ins.uni-bonn.de> 12363 Date: Wed Aug 11 12:01:24 2010 +0200 12364 12365 Decoupled typedef for some STL maps used in boundary.cpp from those used in molecule_dynamics.cpp 12366 12367 - change in maps 12368 - Distance... are now called TesselPointDistance... 12369 - now work on TesselPoint* not atom* (conversion work seamlessly). 12370 - have been shifted over to BoundaryMaps.hpp 12371 - boundary.cpp just includes BoundaryMaps.hpp 12372 12373 commit b0b0867ddbb84cdb7620f200173863edebd89447 12374 Author: Frederik Heber <heber@ins.uni-bonn.de> 12375 Date: Wed Aug 11 11:41:43 2010 +0200 12376 12377 BUGFIX: Fixed unity target. 12378 12379 - MemDebug.cpp has to appear before any cpp file that includes MemDebug.hpp 12380 - Helpers/MemDebug.cpp is now first to be given to unity.cpp, is excluded in 12381 Helpers/Makefile.am 12382 12383 commit 26cf178241bc1745d1cd55a41d90128034ce1112 12384 Author: Frederik Heber <heber@ins.uni-bonn.de> 12385 Date: Wed Aug 11 11:41:20 2010 +0200 12386 12387 Added Formula WidgetItem to QTWorldView. 12388 12389 - int are converted to QString by QString::number() 12390 - new entry FORMULA in QTWorldView::COLUMNTYPES and added in constructor out of molecule::formula. 12391 12392 commit 81a9bcd340bc215f75c1bc0683fbff0d1fd3437d 12393 Author: Frederik Heber <heber@ins.uni-bonn.de> 12394 Date: Wed Aug 11 11:41:00 2010 +0200 12395 12396 BUGFIX: fixed initializer list sequence of MoleculeListClass. 12397 12398 commit ff58f19bf2a221d3e7a0f50bb78a6a88b348e87f 12399 Author: Frederik Heber <heber@ins.uni-bonn.de> 12400 Date: Wed Aug 11 11:28:42 2010 +0200 12401 12402 BUGFIX: fixed initializer list sequence of LinkedCell. 12403 12404 commit bf38179e7a1590020bad970c4931116d7d7e9bbb 12405 Author: Frederik Heber <heber@ins.uni-bonn.de> 12406 Date: Wed Aug 11 11:27:47 2010 +0200 12407 12408 Added ifdef HAVE_CONFIG and config.h include to each and every cpp file. 12409 12410 - is now topmost in front of MemDebug.hpp (and any other). 12411 12412 commit bbbad57a15d672125aae51443910d6e2cde8123d 12413 Author: Frederik Heber <heber@ins.uni-bonn.de> 12414 Date: Wed Aug 11 10:36:24 2010 +0200 12415 12416 Added MemDebug.hpp to each and every .cpp file (were it was still missing). 12417 12418 - is topmost include and separated by a newline from rest. 12419 - NOTE: QT includes have to appear before MemDebug.hpp due to strange magic happening therein. 12420 12421 commit 23badec4d9e3dbd58b27a7436536bc0a426b576a 12422 Author: Frederik Heber <heber@ins.uni-bonn.de> 12423 Date: Wed Aug 11 10:19:33 2010 +0200 12424 12425 Actually, AndShape_impl::getHomogeneousPointsOnSurface() was not non-trivial at all ... 12426 12427 - just and simply the opposite to OrShape_impl ... 12428 12429 commit fa18306cccc4f64d475a7deb6a244ce56bae8b61 12430 Merge: 95e6b13 c5186e9 12431 Author: Frederik Heber <heber@ins.uni-bonn.de> 12432 Date: Tue Aug 10 21:26:03 2010 +0200 12433 12434 Merge branch 'HomogeneousPointsOnSurface' into stable 12435 12436 commit 95e6b132cb0973feda4ff43eba6ed2a7366ca78d 12437 Merge: 7aa3cf7 61951bf 12438 Author: Frederik Heber <heber@ins.uni-bonn.de> 12439 Date: Tue Aug 10 21:25:28 2010 +0200 12440 12441 Merge branch 'SmallFixes' into stable 12442 12443 commit c5186e909d411ff3c5b6bc38edd607738818eab0 12444 Author: Frederik Heber <heber@ins.uni-bonn.de> 12445 Date: Tue Aug 10 21:21:52 2010 +0200 12446 12447 Added getHomogenousPointsOnSurface() function to Shapes. 12448 12449 - missing is so far: AndShape_impl which is not trivial, as surface is inside of both probably (ASSERT(false,...) present). 12450 - missing also (although trivial): Cuboid_impl (ASSERT(false,...) present). 12451 12452 commit 0d02fbf6b0433481fd17dc075f5b57ba0c694fe6 12453 Author: Frederik Heber <heber@ins.uni-bonn.de> 12454 Date: Tue Aug 10 21:20:13 2010 +0200 12455 12456 BUGFIX: Cuboid_impl had faulty isInside() and wrongly returned Sphere_impl(). 12457 12458 - Cuboid_impl::isInside() did not check point[i]>=0 12459 - Cuboid() did not return Cuboid_impl() 12460 12461 commit 61951bf7003a204e8280efea5cd01f49ec7e6e94 12462 Author: Frederik Heber <heber@ins.uni-bonn.de> 12463 Date: Tue Aug 10 16:56:27 2010 +0200 12464 12465 Removed molecule merging functions from MoleculeListClass. 12466 12467 - was only used in config::SaveConfig() 12468 12469 commit 1883f997b2f0a47488e06c9f7e2d810e23e925a3 12470 Author: Frederik Heber <heber@ins.uni-bonn.de> 12471 Date: Tue Aug 10 16:47:43 2010 +0200 12472 12473 Removed molecule::Center. 12474 12475 - QTWorldView now more has entry "Center". 12476 - Center..() all act on the atoms, not on molecule::Center. 12477 12478 commit 8eca62b52cf508d9f13ee217c9e418d2fae4ed6c 12479 Author: Frederik Heber <heber@ins.uni-bonn.de> 12480 Date: Tue Aug 10 16:27:11 2010 +0200 12481 12482 Removed Legacy from src. 12483 12484 commit fc7504ee394871cd7925b1895a13402a2940f34e 12485 Author: Frederik Heber <heber@ins.uni-bonn.de> 12486 Date: Tue Aug 10 15:04:18 2010 +0200 12487 12488 FIX: initializer list of QTStatusBar was in wrong order. 12489 12490 commit 4e6d749689378ad453c95f2780d751098f31e5b5 12491 Author: Frederik Heber <heber@ins.uni-bonn.de> 12492 Date: Tue Aug 10 14:47:22 2010 +0200 12493 12494 Removed output of headers in periodentafel::LoadElementsDatabase(). 12495 12496 commit 7aa3cf76e35112b1c90a348e736a82000423cfa3 12497 Author: Frederik Heber <heber@ins.uni-bonn.de> 12498 Date: Tue Aug 10 14:44:56 2010 +0200 12499 12500 Added undo/redo test for Standard_options/7 (SetDefaultNameAction). 12501 12502 commit 7e37a3d8ccc143139396a0dbee575c20c7754340 12503 Author: Frederik Heber <heber@ins.uni-bonn.de> 12504 Date: Tue Aug 10 14:40:42 2010 +0200 12505 12506 Added undo/redo test to Standard_configuration/6 (FastParsingAction). 12507 12508 commit 92c52fdd0dbb51a766227197634f4c32f2a65ffa 12509 Author: Frederik Heber <heber@ins.uni-bonn.de> 12510 Date: Tue Aug 10 14:34:10 2010 +0200 12511 12512 Added undo/redo test to standard_options/1 (VerboseAction). 12513 12514 - added Logger::getVerbosity(), errorLogger::getVerbosity() and getVerbosity() in Log.[ch]pp. 12515 - VerboseAction is more verbose :) about undo/redo. 12516 12517 commit 7847082d0a6a540ca0c1c81ab0fc49d2d040f7fa 12518 Author: Frederik Heber <heber@ins.uni-bonn.de> 12519 Date: Tue Aug 10 14:09:07 2010 +0200 12520 12521 Added undo/redo test to Simple_configuration/8 (remove sphere/cuboid of atoms). 12522 12523 commit ea283032ddd46712979979db56184f81e207ffd4 12524 Author: Frederik Heber <heber@ins.uni-bonn.de> 12525 Date: Tue Aug 10 14:00:51 2010 +0200 12526 12527 Added Undo/Redo capability to AddAction. 12528 12529 - added test for undo/redo to Simple_configuration/3. 12530 12531 commit f8456cc5b864ea00415d64f971dce5a982883a58 12532 Author: Frederik Heber <heber@ins.uni-bonn.de> 12533 Date: Tue Aug 10 13:44:37 2010 +0200 12534 12535 Added Undo/Redo capability to ChangeElement. 12536 12537 - added test for undo/redo to Simple_configuration/4. 12538 12539 commit e41c48e834f26d3742f334149b34497a3b8c486c 12540 Author: Frederik Heber <heber@ins.uni-bonn.de> 12541 Date: Tue Aug 10 13:29:23 2010 +0200 12542 12543 RemoveAction has Undo/Redo capability. 12544 12545 - FIX: atom::getMolecule() is now const member function 12546 - new class AtomicInfo that stores essential info contained in atom. 12547 - TESTFIX: had to pre/replace test.conf due to wrong MaxMinStopSteps, PsiNumbers 12548 in original file ... (this never occured because we compared against this in 12549 post/) 12550 - added test for undo/redo to Simple_configuration/5 12551 12552 commit 353e829674413f3274b6e25f31a255a19024aa77 12553 Merge: b5c53d0 1cc87ed 12554 Author: Frederik Heber <heber@ins.uni-bonn.de> 12555 Date: Mon Aug 9 20:34:36 2010 +0200 12556 12557 Merge branch 'AddMoreActions' into stable 12558 12559 commit b5c53d0007611f38495bf2e4a8c7348258cf1e7e 12560 Merge: 4584471 e588312 12561 Author: Frederik Heber <heber@ins.uni-bonn.de> 12562 Date: Mon Aug 9 20:33:29 2010 +0200 12563 12564 Merge branch 'StructureRefactoring' into stable 12565 12566 Conflicts: 12567 src/Actions/AtomAction/AddAction.cpp 12568 src/Actions/AtomAction/ChangeElementAction.cpp 12569 src/Parser/XyzParser.cpp 12570 src/analysis_correlation.cpp 12571 src/atom.cpp 12572 src/config.cpp 12573 src/molecule.cpp 12574 12575 - AtomInfo::element were privatized in stable and element::symbol, ::name in StructureRefactoring (overlapped in various lines). 12576 12577 commit 1cc87ed369fad8326bd48fd53bf9078b19efe5a9 12578 Author: Frederik Heber <heber@ins.uni-bonn.de> 12579 Date: Mon Aug 9 19:11:50 2010 +0200 12580 12581 Added select-atoms-inside-sphere/cuboid and unselect-.. 12582 12583 - new selections to (un)select atoms inside a BasicShape Sphere or Cuboid. 12584 - BUGFIX: (Not)AllAtomsInsideCuboid did not query for Vector but double. 12585 - TEST: Simple_configuration/8 12586 - does not use RemoveSphereOfAtoms anymore 12587 - uses select-atoms-inside-... 12588 - checks both sphere and cuboid, invert and normal removel 12589 - also checks recombination of both to yield original configuration. 12590 - deleted RemoveSphereOfAtomsAction.[ch]pp 12591 12592 commit 7a7ad1df3587efd882b5162f3593677b96ad9590 12593 Author: Frederik Heber <heber@ins.uni-bonn.de> 12594 Date: Mon Aug 9 18:22:34 2010 +0200 12595 12596 Added AtomShapeDescriptor. 12597 12598 commit 446bc1c64fd03e02bb239a7216a6031de224f0e6 12599 Author: Frederik Heber <heber@ins.uni-bonn.de> 12600 Date: Mon Aug 9 17:53:13 2010 +0200 12601 12602 Added Undo/Redo actions to MapOfActions. 12603 12604 - ActionHistory:UndoAction and ::RedoAction now have ::NAME[], "undo", "redo" 12605 - added as command line arguments 12606 - TESTFIX: added translation of atom test (Simple_configuration/9) 12607 - TESTFIX: added undo/redo for this translation test 12608 12609 From now on, undo/redo should be tested within the testsuite by adding under the 12610 same test case block another one with additional "--undo" and "--undo --redo" 12611 added to check for correct implementation of ::performUndo() and ::performRedo() 12612 as well. 12613 12614 commit c89fb414440748d449fe711ececeddc654c9a71f 12615 Author: Frederik Heber <heber@ins.uni-bonn.de> 12616 Date: Mon Aug 9 17:13:35 2010 +0200 12617 12618 FIX: Some Actions still accessed MapOfActions instead of ValueStorage. 12619 12620 commit c7f5c2473338fbfae12f3ebc925f7aa3be9b8efe 12621 Author: Frederik Heber <heber@ins.uni-bonn.de> 12622 Date: Mon Aug 9 17:09:00 2010 +0200 12623 12624 Help and Version Actions should not be undoned (ShouldUndo returns false now). 12625 12626 commit 22c44bfbfc88dd812e7266c337d681697971b4bd 12627 Author: Frederik Heber <heber@ins.uni-bonn.de> 12628 Date: Mon Aug 9 17:03:05 2010 +0200 12629 12630 Changed RotateAroundOriginByAngleAction from acting on molecules to acting on selected atoms. 12631 12632 commit 34c338bb9488bd56607ec1c6e8571df32ba115d2 12633 Author: Frederik Heber <heber@ins.uni-bonn.de> 12634 Date: Mon Aug 9 16:13:27 2010 +0200 12635 12636 Changed TranslateAction from acting on molecules to acting on selected atoms. 12637 12638 - removed periodic from TranslateAction, this will be replaced by another action (enforce-boundary-conditions or something like that) 12639 12640 commit 75a80fa17f1d93225b82f8ef166306e615a37e33 12641 Author: Frederik Heber <heber@ins.uni-bonn.de> 12642 Date: Mon Aug 9 15:19:58 2010 +0200 12643 12644 New selection: unselect-molecule-of-atom. 12645 12646 commit 381c5fe8fd9ca93694a21da8584771be55a797fc 12647 Author: Frederik Heber <heber@ins.uni-bonn.de> 12648 Date: Mon Aug 9 15:15:15 2010 +0200 12649 12650 New selection: unselect-molecules-atoms. 12651 12652 commit 481e9213138a06f3024b941f985d8988719fa579 12653 Author: Frederik Heber <heber@ins.uni-bonn.de> 12654 Date: Mon Aug 9 15:10:33 2010 +0200 12655 12656 New selection: select-molecule-of-atom. 12657 12658 commit 770287d80fd62a4701803c0bc5a84438f8d5043b 12659 Author: Frederik Heber <heber@ins.uni-bonn.de> 12660 Date: Mon Aug 9 14:57:20 2010 +0200 12661 12662 new selection: select-molecules-atoms. 12663 12664 commit 2218d94da90f7417d65be48472c11c4a30562458 12665 Author: Frederik Heber <heber@ins.uni-bonn.de> 12666 Date: Mon Aug 9 14:49:19 2010 +0200 12667 12668 New selection: clear-molecule-selection. 12669 12670 commit e212ff44099f167003b8536a5d60337d9b9100be 12671 Author: Frederik Heber <heber@ins.uni-bonn.de> 12672 Date: Mon Aug 9 14:43:36 2010 +0200 12673 12674 New selection: clear-atom-selection. 12675 12676 commit 458447148305e8652c9767fbb7d7dd8fe57fbb22 12677 Author: Frederik Heber <heber@ins.uni-bonn.de> 12678 Date: Sat Aug 7 17:05:07 2010 +0200 12679 12680 Little hack (thanks Ralf!) allows for parallel execution of regression testsuite. 12681 12682 - TODO: would be great to actually extract the number of threads from make somehow 12683 12684 commit 97b8250638c1abf3f888625d1d3888a08cb06cb2 12685 Author: Frederik Heber <heber@ins.uni-bonn.de> 12686 Date: Sat Aug 7 16:44:24 2010 +0200 12687 12688 Shortened constructors [Meyers, "Effective C++" item 12] 12689 12690 - also rearranged some initialization list (one per line). 12691 12692 commit 5b4605879f206787e91bf952de2889919646bf52 12693 Author: Frederik Heber <heber@ins.uni-bonn.de> 12694 Date: Sat Aug 7 15:59:43 2010 +0200 12695 12696 operator[+-*] return const instance [Meyer, "Effective C++", item 21]. 12697 12698 - class Vector had this correct, class Matrix not (also for *=,+=). 12699 12700 commit 88b400a534a193491b7a14d803ade4432b9130f5 12701 Author: Frederik Heber <heber@ins.uni-bonn.de> 12702 Date: Sat Aug 7 15:46:16 2010 +0200 12703 12704 converted #define's to enums, consts and typedefs [Meyers, "Effective C++", item 1]. 12705 12706 basic changes: 12707 - #define bla 1.3 -> const double bla = 1.3 12708 - #define bla "test" -> const char * const bla = "test 12709 - use class specific constants! (HULLEPSILON) 12710 const int Class::bla = 1.3; (in .cpp) 12711 static const int bla; (in .hpp inside class private section) 12712 - "enum hack": #define bla 5 -> enum { bla = 5 }; 12713 - if const int bla=5; impossible 12714 - e.g. necessary if constant is used in array declaration (int blabla[bla];) 12715 12716 details: 12717 - new file defs.cpp where const double reside in and are referenced by extern "C" const double 12718 - joiner.cpp: main() had to be changed due to concatenation of two #define possible, of two const char * not 12719 - class specific constants: HULLEPSILON, BONDTHRESHOLD, SPHERERADIUS 12720 - extended GetPathLengthonCircumCircle to additional parameter HULLEPSILON 12721 12722 commit 44de80aad4e4cc3c602e36897dda27b31e4eacfc 12723 Author: Frederik Heber <heber@ins.uni-bonn.de> 12724 Date: Fri Aug 6 17:15:49 2010 +0200 12725 12726 Added blurred INS logo in the background of the TRAC logo. 12727 12728 commit 25b9d246a82b6caaece7f1c6156c22c010172cb4 12729 Author: Frederik Heber <heber@ins.uni-bonn.de> 12730 Date: Fri Aug 6 14:34:05 2010 +0200 12731 12732 Removed some unused variables. 12733 12734 commit 2d292d0f4846ba3244d8f5f54b475dd72cd28fe4 12735 Author: Frederik Heber <heber@ins.uni-bonn.de> 12736 Date: Fri Aug 6 14:26:27 2010 +0200 12737 12738 FIX: Removed unnecessary "Process.hpp" included from some normal derived Actions. 12739 12740 commit 8f4df1ef77448922e1b977a3e138bcc2a4a4dad0 12741 Merge: 8d6d31e d740776 12742 Author: Frederik Heber <heber@ins.uni-bonn.de> 12743 Date: Sat Aug 7 14:07:04 2010 +0200 12744 12745 Merge branch 'AtomicPositionEncapsulation' into stable 12746 12747 Conflicts: 12748 src/Actions/AtomAction/ChangeElementAction.cpp 12749 src/Actions/WorldAction/RemoveSphereOfAtomsAction.cpp 12750 src/Makefile.am 12751 src/UIElements/TextUI/TextDialog.cpp 12752 src/analysis_correlation.hpp 12753 src/atom.cpp 12754 src/atom_atominfo.hpp 12755 src/bond.cpp 12756 src/boundary.cpp 12757 src/molecule_geometry.cpp 12758 src/tesselation.cpp 12759 src/tesselationhelpers.cpp 12760 src/triangleintersectionlist.cpp 12761 src/unittests/Makefile.am 12762 12763 - fixed #includes due to moves to Helpers and LinearAlgebra 12764 - moved VectorInterface.* and vector_ops.* to LinearAlgebra 12765 - no more direct access of atom::node, remapped to set/getPosition() 12766 - no more direct access to atom::type, remapped to set/getType() (also in atom due to 12767 derivation and atominfo::AtomicElement is private not protected). 12768 12769 commit 8d6d31e159e6d6b40179835f02717acb3398e53f 12770 Merge: 3273649 1bab08d 12771 Author: Frederik Heber <heber@ins.uni-bonn.de> 12772 Date: Fri Aug 6 19:13:53 2010 +0200 12773 12774 Merge branch 'FixTesselationXyzParser' into stable 12775 12776 commit 1bab08dd8769615421ff6911352f85a1980b1b2a 12777 Author: Frederik Heber <heber@ins.uni-bonn.de> 12778 Date: Fri Aug 6 19:12:54 2010 +0200 12779 12780 Tesselations now work directly on the xyz file and don't parse them in. 12781 12782 - due to changes to XyzParser::load() a new molecule is created (which does not have id 0) anymore. 12783 - also, as we don't change the xyz file there is no need to create a config file. 12784 12785 commit 3273649ad568fc4313b80bd99826e13471458132 12786 Author: Frederik Heber <heber@ins.uni-bonn.de> 12787 Date: Fri Aug 6 18:56:59 2010 +0200 12788 12789 Rotate to PAS is fixed. 12790 12791 - was marked BROKEN before in test case, is now fixed. 12792 - test case is extended to multiple rotated system. 12793 - Note that only the alignment to z axis is fixed, there is still a degree of freedom in rotating around the axis. Hence, each rotated initial needs its own final configuration. 12794 12795 commit 31db5bec2df65d790b2347935eb2728b268a6a52 12796 Author: Frederik Heber <heber@ins.uni-bonn.de> 12797 Date: Fri Aug 6 18:49:14 2010 +0200 12798 12799 Added test cases for Actions rotate-origin and rotate-self. 12800 12801 commit 90bc51774be4b7f550eb9afe64fe3212c4a8abbc 12802 Author: Frederik Heber <heber@ins.uni-bonn.de> 12803 Date: Fri Aug 6 18:48:21 2010 +0200 12804 12805 FIX: RotateAroundSelfByAngleAction also gets position, using a selected atom is nonsense. 12806 12807 - fixed friend signature 12808 - fixed state 12809 12810 commit 4a06d6f6edff640f888191895deb3c368a27121b 12811 Author: Frederik Heber <heber@ins.uni-bonn.de> 12812 Date: Fri Aug 6 18:45:09 2010 +0200 12813 12814 FIX: friend function of RotateAroundOriginByAngleAction had wrong signature. 12815 12816 - also fixed RotateAroundOriginByAngleAction::performCall(): RotationAxis and "done" out of loop. 12817 12818 commit e0ba10aefbf9eb54616b612a684311eb6f9bc3e9 12819 Author: Frederik Heber <heber@ins.uni-bonn.de> 12820 Date: Fri Aug 6 18:43:34 2010 +0200 12821 12822 Added output operator to Line class. 12823 12824 commit dddbfeb3a4d92c72574c1adc455880b061dd829b 12825 Author: Frederik Heber <heber@ins.uni-bonn.de> 12826 Date: Fri Aug 6 17:50:00 2010 +0200 12827 12828 FIX: XyzParser::Load() did not create a molecule wherein all atoms were placed. 12829 12830 - BUGFIX: atom::setMolecule() invokes mol->AddAtom which again invokes setMolecule ... infinite loop, instead use insert() 12831 - ChangeElementAction needs to remove and re-add the atom such that molecule is notified of element change. 12832 - this makes later use of the molecule only possible via subgraph dissection. 12833 - hence, we create a molecule, set it active and put it into World's deprecated MoleculeListClass. 12834 12835 commit e97a44b5119094d977c214dd391137f01d79794c 12836 Author: Frederik Heber <heber@ins.uni-bonn.de> 12837 Date: Fri Aug 6 17:25:38 2010 +0200 12838 12839 Added verbose message on save to all derived FormatParser and ChangeTracker. 12840 12841 commit 2204b0a72e99629eca90c7fd007625e223635cbd 12842 Author: Frederik Heber <heber@ins.uni-bonn.de> 12843 Date: Fri Aug 6 17:25:16 2010 +0200 12844 12845 Added Undo/Redo capability to rotate-origin and rotate-self Actions. 12846 12847 commit 4bb63cebe2b2dd7978e57bf927ba4d503023a824 12848 Author: Frederik Heber <heber@ins.uni-bonn.de> 12849 Date: Fri Aug 6 17:24:50 2010 +0200 12850 12851 made molecule::DetermineCenterOfGravity() a const member function. 12852 12853 commit e5883128c9b538e00e0039add7baf84f55d413c4 12854 Merge: 822f019 311d688 12855 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12856 Date: Fri Aug 6 16:10:26 2010 +0200 12857 12858 Merge branch 'stable' into StructureRefactoring 12859 12860 commit 822f019130ed6abc1bd095b4f6652208527de7a9 12861 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12862 Date: Fri Aug 6 16:09:12 2010 +0200 12863 12864 Removed obsolete molecule::IsEqualToWithinRange() method 12865 12866 commit e5c0a1f2c378f5ba38776b0cbdd720632338e25c 12867 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12868 Date: Fri Aug 6 16:01:13 2010 +0200 12869 12870 Made the periodentafel return only "const element *" instead of "element * const", to avoid unexpected changes to stored elements 12871 12872 - Note: returning "type * const" from a function does not make sense, since the pointer has to be copied anyway (calling convention), 12873 so the calling function can just do another copy to get a non const version of the pointer 12874 12875 commit eaf4aedf2479140bfa1a55533ac0f0e740d87acb 12876 Author: Frederik Heber <heber@ins.uni-bonn.de> 12877 Date: Fri Aug 6 14:35:12 2010 +0200 12878 12879 Added two new actions. 12880 12881 - RotateAroundOriginByAngle: Rotates around a given axis (origin to "position") by an angle. 12882 - RotateAroundSelfByAngle: Rotates around axis (CoG to selected atom) by angle. 12883 12884 commit 6e5084ba8942d5b07318fb32c642c0078c9dafe5 12885 Author: Frederik Heber <heber@ins.uni-bonn.de> 12886 Date: Thu Aug 5 16:34:18 2010 +0200 12887 12888 Fixed PrincipalAxisSystemAction. 12889 12890 - PrincipalAxisSystemAction:performCall() now has initial parts of former molecule::PrincipalAxisSystem() 12891 - RotateToPrincipalAxisSystemAction::performCall () now has former molecule::PrincipalAxisSystem() 12892 - call in PrepareClustersinWater() replaced by call to this Action 12893 - changes in PrincipalAxisSystemAction/RotateToPrincipalAxisSystemAction: 12894 - use Matrix class for InertiaTensor 12895 - use Vector class for axis 12896 - use Line class for rotation axis 12897 12898 commit a439e552b524ad69d77533afc340c392ecf15aab 12899 Author: Frederik Heber <heber@ins.uni-bonn.de> 12900 Date: Thu Aug 5 16:27:34 2010 +0200 12901 12902 New functions vor class Vector and Matrix. 12903 12904 Matrix: 12905 - transpose() (returning copy and on itself) 12906 - zero() (initialize to zero) 12907 - transformToEigenbasis() (columns are eigenvectors, return value has eigenvalues) 12908 12909 Vector: 12910 - GreatestComponent() (yields index of greatest component) 12911 - SmallestComponent() (same for smallest) 12912 12913 commit 2a76b0d2f8f171ff646f96c33fad3043938bdb23 12914 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12915 Date: Fri Aug 6 14:33:59 2010 +0200 12916 12917 Added copy constructor and assignment operator to class element 12918 12919 commit 7e3fc94fcde548b6969916aca84f22f11e3403d7 12920 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12921 Date: Fri Aug 6 14:21:14 2010 +0200 12922 12923 Made the element class use strings to store name and symbol 12924 12925 commit 2fe9719f8a0aa9ecd805749ffe7ff7b10ebcc6fe 12926 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12927 Date: Fri Aug 6 14:13:51 2010 +0200 12928 12929 Made fields name and symbol of element class private 12930 12931 commit ff6a100b82687d82d4c2fef31bdf265072bad599 12932 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12933 Date: Fri Aug 6 13:53:30 2010 +0200 12934 12935 Added setter for fields name and symbol of element class 12936 12937 commit 592ccdb22c79d58b6ed3521acb70f7f78faab27e 12938 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 12939 Date: Fri Aug 6 13:37:28 2010 +0200 12940 12941 Removed some obsolete fields from element class 12942 12943 commit 311d688cceaee3c8edc791df712eb8acd1912436 12944 Author: Frederik Heber <heber@ins.uni-bonn.de> 12945 Date: Fri Aug 6 11:36:58 2010 +0200 12946 12947 Replaced ostream and iostream includes in header by iosfwd. 12948 12949 Note that <iosfwd> is explicitly the forward declaration for iostream to speed up compilation (iostream is heavily templated/tepydef'd hence usualy "class ostream;" is not valid) 12950 12951 commit d223d5e07c484fa4ef7f54e88e97fa78b5c0b504 12952 Merge: b6da28a 2559719 12953 Author: Frederik Heber <heber@ins.uni-bonn.de> 12954 Date: Fri Aug 6 11:24:26 2010 +0200 12955 12956 Merge branch 'SharedLibraries' into stable 12957 12958 - BUGFIX: MemDebug.cpp in case of no MEMDEBUG defined, iosfwd include was missing. 12959 12960 Conflicts: 12961 src/Actions/AnalysisAction/PointCorrelationAction.hpp 12962 src/Actions/Makefile.am 12963 src/Makefile.am 12964 src/UIElements/Makefile.am 12965 src/unittests/Makefile.am 12966 src/unittests/ShapeUnittest.cpp 12967 12968 - Mostly took over stuff from branch SharedLibraries as ..LIBS statments in Makefile.ams changed. 12969 - target unity always put at very end, added also to Exceptions, LinearAlgebra, Parser 12970 - ShapeUnittest lacked changes of files moved to LinearAlgebra 12971 12972 commit b6da28aa93e0ef0e0a6bd47a13b2455fbe34caff 12973 Merge: 6d587e8 06f4ef6 12974 Author: Frederik Heber <heber@ins.uni-bonn.de> 12975 Date: Thu Aug 5 22:15:01 2010 +0200 12976 12977 Merge branch 'FixShapeUnittest' into stable 12978 12979 commit 6d587e8c4db7b798bb3b5d7a0b1bdf18f8b3ecef 12980 Author: Frederik Heber <heber@ins.uni-bonn.de> 12981 Date: Thu Aug 5 22:07:32 2010 +0200 12982 12983 TEST: Removed heptan from Tesselations testsuite due to instability of results with regards to Delauney degeneracy. 12984 12985 commit a881f5b49bdbb93ecd4c8ff5c5d3e58eea5101f6 12986 Merge: 5fbaeb0 f761c4e 12987 Author: Frederik Heber <heber@ins.uni-bonn.de> 12988 Date: Thu Aug 5 22:06:42 2010 +0200 12989 12990 Merge branch 'StructureRefactoring' into stable 12991 12992 Conflicts: 12993 src/Actions/AnalysisAction/PairCorrelationAction.hpp 12994 src/Actions/AnalysisAction/SurfaceCorrelationAction.hpp 12995 12996 - due to different ordering of vector, string includes 12997 12998 commit f761c4ebcd2d4747f7ad2cc0dfad35b150f76bd0 12999 Merge: ec149d5 7baf4a7 13000 Author: Frederik Heber <heber@ins.uni-bonn.de> 13001 Date: Thu Aug 5 21:56:22 2010 +0200 13002 13003 Merge branch 'StructureRefactoring' of jupiter:molecuilder into StructureRefactoring 13004 13005 commit 255971975c50c64de776d5989f15e9fe00fe9e44 13006 Author: Frederik Heber <heber@ins.uni-bonn.de> 13007 Date: Thu Aug 5 19:48:17 2010 +0200 13008 13009 Converted libMolecuilder to shared lib via libtool. 13010 13011 - joiner and analyzer now also need libMolecuilderLinearAlgebra and ..Exceptions 13012 13013 commit b37436fa9715dfb6e1303adf13e96697e9e8306b 13014 Author: Frederik Heber <heber@ins.uni-bonn.de> 13015 Date: Thu Aug 5 21:46:06 2010 +0200 13016 13017 Converted libMolecuilderUI to shared lib via libtool. 13018 13019 commit 952f384acb0e9ac4e3de4c2ad9da1e8ceaf2c797 13020 Author: Frederik Heber <heber@ins.uni-bonn.de> 13021 Date: Thu Aug 5 21:41:21 2010 +0200 13022 13023 created LibMolecuilderHelpers. 13024 13025 - is shared 13026 - renamed log.[ch]pp -> Log.[ch]pp 13027 - renamed verbose.[ch]pp -> Verbose.[ch]pp 13028 - renamed info.[ch]pp -> Info.[ch]pp 13029 - contains: Assert, MemDebug, Log, logger, errorlogger, Verbose, Info 13030 - had to change includes practically everywhere. 13031 13032 commit 57f243922d6a515597472d712ff918560df755e2 13033 Author: Frederik Heber <heber@ins.uni-bonn.de> 13034 Date: Thu Aug 5 21:19:15 2010 +0200 13035 13036 Created libMolecuilderLinearAlgebra. 13037 13038 - is shared. 13039 - contains the following classes: Line, Plane, Space, Vector, Matrix, gslvector, gslmatrix, linearsystemofequations 13040 - had to change include path almost everywhere 13041 - change linkin in src/ and src/unittests/Makefile.am 13042 13043 commit f4b5b7b506c66a34d10f4528f8da8719ccd423c8 13044 Author: Frederik Heber <heber@ins.uni-bonn.de> 13045 Date: Thu Aug 5 21:10:07 2010 +0200 13046 13047 Created LibMolecuilderExceptions. 13048 13049 - is shared. 13050 - contains all Exceptions. 13051 13052 commit 06f4ef645cd755820805c9c8357f3bc4975bd8d6 13053 Author: Frederik Heber <heber@ins.uni-bonn.de> 13054 Date: Thu Aug 5 21:20:18 2010 +0200 13055 13056 BUGFIX: typo included vector.cpp not .hpp as intended. 13057 13058 commit 7baf4a755fce74f03900c50aea2f05421b08eac9 13059 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13060 Date: Thu Aug 5 18:03:16 2010 +0200 13061 13062 Made the molecule::OutputTrajectoriesXYZ() and molecule::OutputXYZ() use the STL 13063 13064 commit 0eea14179ca714a27601bfd4af614290fe11ba9e 13065 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13066 Date: Thu Aug 5 17:49:25 2010 +0200 13067 13068 Made the molecule::OutputListOfBonds() method use STL algorithms 13069 13070 commit 6a86ce181051608f478cba18847ac221130edb5e 13071 Author: Frederik Heber <heber@ins.uni-bonn.de> 13072 Date: Thu Aug 5 16:21:47 2010 +0200 13073 13074 libparser is now a shared library libMolecuilderParser 13075 13076 Necessary changes: 13077 - libMolecuilderActions now depends on libMolecuilderParser 13078 - libparser.a exchanged by libMolecuilderParser-@...@.la 13079 - added lib to description in ../molecuilder.pc.in 13080 - new Makefile.am in src/Parser 13081 13082 commit 8618749ecbb50515e1e0493c477373586170ee2f 13083 Author: Frederik Heber <heber@ins.uni-bonn.de> 13084 Date: Thu Aug 5 17:46:45 2010 +0200 13085 13086 libMolecuilderAction is now a shared lib via libtool. 13087 13088 This is all taken from the example available at http://www.openismus.com/documents/linux/building_libraries/building_libraries/building_libraries.shtml. 13089 13090 Necessary changes: 13091 - ValueStorage is now part of Actions, not of UIElements anymore (which is actually as it should have been right away, only Dialog uses ValueStorage and for all Actions ValueStorage is the simple adapter pattern to MapOfActions needed the relax (compilation) dependencies). 13092 - new files: 13093 - config/ltmain.sh (scipt for libtool) 13094 - libmolecuilder_config.h.in (extra config.h which is copied along with lib to contain how it has been compiled) 13095 - molecuilder.pc.in (package config information 13096 - BUGFIX: m4/gwqt4.m4 added -L$X_libraries, however $X_libraries was nowhere set and libtool admonished the empty "-L" 13097 - libMolecuilderUI now depends on libMolecuilderAction 13098 - all unit tests now have libMolecuilderAction and libMolecuilderUI due to non-interactive calls of actions 13099 13100 commit 0ba4103fb29b3b7e601800e6a20213e08ebef164 13101 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13102 Date: Thu Aug 5 17:46:01 2010 +0200 13103 13104 made the molecule::Output() method use STL algorithms 13105 13106 commit bf8e2011562f9d20279686ee614b46b1841057b6 13107 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13108 Date: Thu Aug 5 17:40:24 2010 +0200 13109 13110 Added missing OBSERVE markers and formula updates in molecule class 13111 13112 commit 6cb9c7693351852c2d0ddaed62d6aa758c69bf10 13113 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13114 Date: Thu Aug 5 17:31:44 2010 +0200 13115 13116 Changed order of destruction in World destructor 13117 13118 commit e345e3bcd6441a307cf3d1c99cbaaaf71fe6fdc1 13119 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13120 Date: Thu Aug 5 17:16:03 2010 +0200 13121 13122 Added output operator for element class 13123 13124 commit 0cc92bd647a343a5a88f690412f93ba23d423db5 13125 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13126 Date: Thu Aug 5 16:39:37 2010 +0200 13127 13128 Made the molecule::CopyMolecule() method use STL algorithms 13129 13130 commit 00abfcfa5a74be07945fa53e805a43f3868a7993 13131 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13132 Date: Thu Aug 5 16:32:25 2010 +0200 13133 13134 Added a method to class atom that determines if the father of this atom is some pointer 13135 13136 commit 426f2ac4fc2c6790953b4c927a1b9d9cc85dd8d0 13137 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13138 Date: Thu Aug 5 16:24:41 2010 +0200 13139 13140 Added a method to enumerate formulas 13141 13142 commit d36ffbab8040e6048ca9da1dc9895d50041e2e05 13143 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13144 Date: Thu Aug 5 16:23:55 2010 +0200 13145 13146 Removed unused field No in element class 13147 13148 commit d9f51cb280e98ac944ead00ed03c5ba44dea72a4 13149 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13150 Date: Thu Aug 5 16:23:23 2010 +0200 13151 13152 Added some basic structures for enumeration of STL containers 13153 13154 commit 097902be5ff8ef57bf1cc3c04b8b7a9b5647e471 13155 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13156 Date: Thu Aug 5 14:35:29 2010 +0200 13157 13158 Made the Programm dump some memory statistics to a file when an assertion fails 13159 13160 commit ec149d57eafe254945c9fd3a0cf4a7328635e2bd 13161 Author: Frederik Heber <heber@ins.uni-bonn.de> 13162 Date: Thu Aug 5 16:25:40 2010 +0200 13163 13164 BUGFIX: ActionSequenceTest::doesUndoTest() had typo, used wasCalled1 twice instead of wasCalled2. 13165 13166 commit 0078393b69ff604aa9582a10c2b058d0fa571aeb 13167 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13168 Date: Thu Aug 5 14:12:25 2010 +0200 13169 13170 Made the Programm abbort when an assertion fails in non-interactive mode 13171 13172 commit 997b2a6a84c3c8d0693efb66718dbd538215da33 13173 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13174 Date: Thu Aug 5 14:02:37 2010 +0200 13175 13176 Added one more complex test to formulatest 13177 13178 commit 38e075ea05aab70de5bf8ff6266d02dd21e2b43b 13179 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13180 Date: Thu Aug 5 13:10:03 2010 +0200 13181 13182 Added one more error condition for formula parsing 13183 13184 commit 668e2869001135836aeeff00a70261130c6ce31a 13185 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13186 Date: Thu Aug 5 12:46:38 2010 +0200 13187 13188 Added testing for more complex formulas 13189 13190 commit 4d1d4360e09cdfacfe99c95631de6c82c32aa3aa 13191 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13192 Date: Thu Aug 5 12:46:06 2010 +0200 13193 13194 Improved formula parsing to include more complex expressions 13195 13196 commit 9d580369e5b1b993a658fb00a53cf0fcc2da9e1f 13197 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13198 Date: Thu Aug 5 11:51:03 2010 +0200 13199 13200 Added a method that allows adding complete formulas to one another 13201 13202 commit 68047038369d89ac57d37246b5395f854b7950f7 13203 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13204 Date: Thu Aug 5 11:49:50 2010 +0200 13205 13206 Fixed some missing return statements 13207 13208 commit 506d2f46e4d2d0dcb38acbd0f2eb161166af5cae 13209 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13210 Date: Wed Aug 4 16:43:44 2010 +0200 13211 13212 Speed up of ASSERT macro by only calling the _my_assert::check() function when an assertion needs to be handled 13213 13214 commit 00fca342f5a4daaf7dfd8f749ff2e5ea93cf37be 13215 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13216 Date: Wed Aug 4 16:43:16 2010 +0200 13217 13218 Removed duplicate include of MemDebug.hpp in TextWindow.cpp 13219 13220 commit 90aeb9429ecb7ac9202ee9810aa2ed003e1612f8 13221 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13222 Date: Wed Aug 4 16:17:49 2010 +0200 13223 13224 Added a method to access the backtrace when an assert fails 13225 13226 commit 796aa6109f3bcda0d0023cb6b215cc697b7f10b4 13227 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13228 Date: Wed Aug 4 15:25:25 2010 +0200 13229 13230 Added faster unity build target to makefiles 13231 13232 - unity build means a single compilation unit is build which is then send to the compiler for compilation 13233 - unity build is for fast recompiles when a lot of compilation units are covered 13234 - see: http://buffered.io/2007/12/10/the-magic-of-unity-builds/ 13235 13236 commit 10d29055035af308d1f48af87d768242f73e471b 13237 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13238 Date: Wed Aug 4 14:50:20 2010 +0200 13239 13240 Repaired build of testrunner for unittests 13241 13242 commit d193a2dee7706bf98b76733a9baf103bb6afd0a7 13243 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13244 Date: Wed Aug 4 14:37:50 2010 +0200 13245 13246 Simplyfied building of QT4 mocfiles needed for GUI 13247 13248 commit ca275d750e80aa558cd420b123b22061e5c42f1d 13249 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13250 Date: Wed Aug 4 14:27:21 2010 +0200 13251 13252 Seperated some basic parts of the molecuilder inside their own library 13253 13254 commit 839e850f2c609aafed3de79cbd46463a49fb8515 13255 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13256 Date: Wed Aug 4 12:19:50 2010 +0200 13257 13258 Removed some unecessary opened namespaces 13259 13260 commit c4b85d6ea1f5d2cf83890375367e8b2d50b68ca6 13261 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13262 Date: Wed Aug 4 12:03:57 2010 +0200 13263 13264 Removed typo in Header guard of SubgraphDissectionAction.hpp 13265 13266 commit 8dc761403e0832fbb5a835e5d44e9cfde8c500d3 13267 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13268 Date: Wed Aug 4 12:02:48 2010 +0200 13269 13270 Added missing header guards in linearsystemofequations.hpp 13271 13272 commit 53fb711e3dd431c8723ef18853d48e058d5f8378 13273 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13274 Date: Wed Aug 4 11:58:12 2010 +0200 13275 13276 Changed name of state in NotAllAtomsAction from SelectionAllAtomsState to SelectionNotAllAtomsState 13277 13278 commit 11e20632b415a9873a895417c6ff2f4b36ac2909 13279 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13280 Date: Wed Aug 4 11:34:45 2010 +0200 13281 13282 Removed multiple definitions of some global constants from executeable 13283 13284 commit d74077614bf2a27f66c91bf6bce70250442a0463 13285 Author: Frederik Heber <heber@ins.uni-bonn.de> 13286 Date: Sat Jul 31 17:23:10 2010 +0200 13287 13288 Member variable Vector and element of class atom are now private. 13289 13290 - renamed to AtomicPosition 13291 - created interface class VectorInterface with alle functions from class Vector as virtual ones 13292 - implemented in AtomInfo 13293 - everywhere direct access to AtomicPosition has been replaced by get/setPosition() and others 13294 - for element get/setType() have been present already, direct access has been replaced by calling of these. 13295 - class TesselPoint now derives from AtomInfo and ParticleInfo 13296 - tesselation.cpp split up 13297 - new files for the classes: BoundaryLineSet, BoundaryPointSet, BoundaryPolygonSet, BoundaryTriangleSet, CandidateForTesselation, PointCloud, TesselPoint 13298 - all defines are in BoundaryMaps.hpp 13299 13300 commit 0632c5011c407d14824f9834dbe1d8ffa6cbd014 13301 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13302 Date: Fri Jul 30 16:10:27 2010 +0200 13303 13304 Removed some BOOST_FOREACH iterations and replaced with simpler mapping on the Set 13305 13306 commit a33ea5ee15b185147dacaeb121ba462dfa2bdf6b 13307 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13308 Date: Fri Jul 30 16:09:36 2010 +0200 13309 13310 Added a method to the AtomSetMixin that allows mapping arbitrary functions to the position of all atoms 13311 13312 commit 14d54126c5f1aa147041e69c8aec444f7c7197f9 13313 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13314 Date: Fri Jul 30 16:09:06 2010 +0200 13315 13316 Made the molecule class use the new mixin 13317 13318 commit 4d72e4d6e030dc6233596e0465f6514d6797fbd8 13319 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13320 Date: Fri Jul 30 15:07:00 2010 +0200 13321 13322 Made the World use the new mixin for sets of atoms 13323 13324 commit 5a5c476a662f9c7033228100437ed54dbb00f75c 13325 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13326 Date: Fri Jul 30 15:05:55 2010 +0200 13327 13328 Added a mixin for STL-Containers that carry atom* to add specialized functions to those containers 13329 13330 commit 316d3abc887e74a9f66240c743395e313347964b 13331 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13332 Date: Fri Jul 30 14:38:01 2010 +0200 13333 13334 More testing added for BoxUnittest 13335 13336 commit e1ab975f05cdcd75e351896a3442ae67466fd10a 13337 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13338 Date: Fri Jul 30 14:26:49 2010 +0200 13339 13340 Added a function that allows fast creation of a cuboid box by giving the second endpoint 13341 13342 commit d2938f559cdfcf2c43689e8fd5ac000b44e4456b 13343 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13344 Date: Fri Jul 30 14:18:18 2010 +0200 13345 13346 FIX: Several problems with Wrap and Explode code of box detected by unittest 13347 13348 commit 77bc4fe0cdca64f3dfd9a7c6099d2fae25eb1562 13349 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13350 Date: Fri Jul 30 14:17:56 2010 +0200 13351 13352 Added Unittest for Box class 13353 13354 commit 04e61ae7b58467011d8a43d40965adf5c17ef5db 13355 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13356 Date: Fri Jul 30 10:41:24 2010 +0200 13357 13358 Fixed a small bug in the valgrinding part of the test script 13359 13360 commit 16648f2a24b05c56b2e93ec5618bf5332f5ce6c8 13361 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13362 Date: Thu Jul 29 18:09:57 2010 +0200 13363 13364 Made the Box::explode() method handle boundary conditions 13365 13366 commit f3be871105a51d83420a3be4cb717bc407fcadcb 13367 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13368 Date: Thu Jul 29 16:48:25 2010 +0200 13369 13370 Made the Box::isInside() method respect ignored boundaries 13371 13372 commit f1c8382b9f9fe8d0ed8c2cf899995c147189853f 13373 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13374 Date: Thu Jul 29 16:45:56 2010 +0200 13375 13376 FIX: periodicDistance could be off, if both vectors are more then one Box-lenght apart 13377 13378 commit c7256258ce9028e987b6933cf437a2e6f7674e9b 13379 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13380 Date: Thu Jul 29 16:35:53 2010 +0200 13381 13382 Added a method that allows periodic wrapping of points depending on the boundary condition 13383 13384 commit 29ac783cec550c47c227635304d0424ceb3f0714 13385 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13386 Date: Thu Jul 29 15:47:31 2010 +0200 13387 13388 Added a method that produces the bounding planes for a Box 13389 13390 commit 77374ea2c8074d8013ec77f48bccfe1fdc84182c 13391 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13392 Date: Thu Jul 29 15:33:14 2010 +0200 13393 13394 Added BoundaryConditions to the Box class 13395 13396 commit 031f629b0c3db6e79c133dfa3b75ce4ca9fb6212 13397 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13398 Date: Thu Jul 29 15:53:17 2010 +0200 13399 13400 Made the Action test if the dialog contains queries, when interactive calls are handled 13401 13402 commit c508ef501e6259b2d06b29fc1c28beafbb772063 13403 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13404 Date: Thu Jul 29 15:52:07 2010 +0200 13405 13406 Added a method to test wether a Dialog actually has queries to do 13407 13408 commit 112f90d8bcaa5639e2da0aacacc5b07896bbb981 13409 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13410 Date: Thu Jul 29 14:23:21 2010 +0200 13411 13412 Fixed ActionSequenceTest and ManipulateAtomsTest 13413 13414 commit 047878507f119431554d5b20d04f22722ba5bbed 13415 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13416 Date: Thu Jul 29 13:46:26 2010 +0200 13417 13418 made all actions pass on the dialogs and add the corresponding queries 13419 13420 commit f7ee68455b736a8ecdfe1712d7827666c2b1f792 13421 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13422 Date: Thu Jul 29 13:39:41 2010 +0200 13423 13424 Added a simple UI-Stub to be used in Unittests 13425 13426 commit 5fbaeb0a70534a7d02d8188750e4dc9128380676 13427 Author: Frederik Heber <heber@ins.uni-bonn.de> 13428 Date: Thu Jul 29 12:51:43 2010 +0200 13429 13430 TESTFIX: test_all.sh used "all install" under compile() which causes glitches when compiling with multiple threads. 13431 13432 - This caused e.g. error code of 2 due to two glitches despite the executables still got compiled in the end. 13433 - As all tests are done on not-installed binaries, we can safely removed "install" from the make command. 13434 13435 commit 519e6385868c3113e826f198368bbe6242ea3e51 13436 Author: Frederik Heber <heber@ins.uni-bonn.de> 13437 Date: Thu Jul 29 12:51:01 2010 +0200 13438 13439 BUGFIX: includes for vector and string were missing. 13440 13441 commit 0bb05aafb7fc529b88af2f985c63c3371f82b845 13442 Author: Frederik Heber <heber@ins.uni-bonn.de> 13443 Date: Thu Jul 29 12:50:42 2010 +0200 13444 13445 BUGFIX: include for boost/lexical_cast.hpp was missing. 13446 13447 commit 4c9a97f55a0e6bff73cafb2b760c75bbe1474ac5 13448 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13449 Date: Thu Jul 29 10:57:20 2010 +0200 13450 13451 FIX: added some forgotten includes to fix NO_MEMDEBUG builds 13452 13453 commit 9106c6402d2f9b63468cbd99c4736296903cc4cb 13454 Merge: b1a39b1 a7b777c 13455 Author: Frederik Heber <heber@ins.uni-bonn.de> 13456 Date: Wed Jul 28 15:48:50 2010 +0200 13457 13458 Merge branch 'StructureRefactoring' into stable 13459 13460 commit b1a39b130749accaf2cd0103a233cf86ae75ba4d 13461 Author: Frederik Heber <heber@ins.uni-bonn.de> 13462 Date: Wed Jul 28 15:43:41 2010 +0200 13463 13464 Logo for the TRAC of molecuilder created. 13465 13466 commit 2ad48247b6f9de9eea8821024e501debd95f776e 13467 Merge: 69baa45 a7b777c 13468 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13469 Date: Wed Jul 28 15:01:13 2010 +0200 13470 13471 Merge branch 'StructureRefactoring' into Shapes 13472 13473 commit a7b777c63b3b50eee5da3df0edbd51b6e7eaad91 13474 Merge: 677e130 b2d8d07 13475 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13476 Date: Wed Jul 28 15:01:02 2010 +0200 13477 13478 Merge branch 'stable' into StructureRefactoring 13479 13480 commit b2d8d07287f34d6bfded72d40c2a8d0ac000fbf2 13481 Author: Frederik Heber <heber@ins.uni-bonn.de> 13482 Date: Wed Jul 28 14:33:02 2010 +0200 13483 13484 Registry pattern split off of ActionRegistry, the latter converted to derive from Registry<Action> 13485 13486 - new header files Registry.hpp and Registry_impl.hpp containing templated registry pattern. 13487 - ActionRegistry derives from Singleton and Registry<Action> 13488 - renamed ... to ActionRegistry::isActionPresentByName(). 13489 13490 commit 69baa45336bd99a7c3f9d346cd21720262f66f4e 13491 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13492 Date: Wed Jul 28 12:28:47 2010 +0200 13493 13494 Added a method to rotate arbitrary planes 13495 13496 commit b596482eafb1c4cbb09102c86f50316403155523 13497 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13498 Date: Wed Jul 28 12:05:01 2010 +0200 13499 13500 Added methods that allow rotation of complete lines 13501 13502 commit f12805044cf8664fb21e56e7d0168c021d26ae87 13503 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13504 Date: Wed Jul 28 11:43:54 2010 +0200 13505 13506 BUGFIX: Normals were not normalized in shape operations 13507 13508 commit 400170ef8c981c94a522a25f84e44fa7d7fe2ed3 13509 Merge: c6f3950 677e130 13510 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13511 Date: Wed Jul 28 11:35:44 2010 +0200 13512 13513 Merge branch 'StructureRefactoring' into Shapes 13514 13515 commit 677e130f3cbb80cdb1d7c6766dd729592710cd05 13516 Merge: 7067bd6 0430e31 13517 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13518 Date: Wed Jul 28 11:21:14 2010 +0200 13519 13520 Merge branch 'stable' into StructureRefactoring 13521 13522 Conflicts: 13523 src/Makefile.am 13524 13525 commit d6e7193f589711260bf0478059c147774ab152b9 13526 Author: Frederik Heber <heber@ins.uni-bonn.de> 13527 Date: Tue Jul 27 11:51:40 2010 +0200 13528 13529 BUGFIX: some Molecule...Descriptors::find() function copied the MoleculeSet from getMolecules() instead of using it as reference. 13530 13531 - Strangely though, this caused problems only when checking with test_all.sh and not with normal build (error was undefined ref to ObservedContainer::ObservedContainer(...)) 13532 13533 commit 0430e3120648e3906f33481ea1869d1cb3df52a9 13534 Author: Frederik Heber <heber@ins.uni-bonn.de> 13535 Date: Mon Jul 26 20:42:57 2010 +0200 13536 13537 FIX: ActionCalls.hpp removed, ActionRegistry.hpp included instead 13538 13539 - also, extended documentation of Action (Action howto). 13540 13541 commit e076cd4f3c751dde2a536163d4fb7f787a2b947e 13542 Author: Frederik Heber <heber@ins.uni-bonn.de> 13543 Date: Mon Jul 26 20:06:18 2010 +0200 13544 13545 Moved each action call function definition into the header file of the respective action. 13546 13547 commit a8f6ae5ce536803ae6e82914f2201d0c1aa13cc8 13548 Author: Frederik Heber <heber@ins.uni-bonn.de> 13549 Date: Mon Jul 26 19:34:11 2010 +0200 13550 13551 All WorldActions contain now a ActionCall.hpp function. 13552 13553 commit 628b52952e0e149c79ef35a9bb2f6642e2d6e984 13554 Author: Frederik Heber <heber@ins.uni-bonn.de> 13555 Date: Mon Jul 26 19:15:18 2010 +0200 13556 13557 All TesselationsActions contain now a ActionCall.hpp function. 13558 13559 commit 3b7dfb2ecf62a955b44dcc1485337e8a43d366bf 13560 Author: Frederik Heber <heber@ins.uni-bonn.de> 13561 Date: Mon Jul 26 19:15:04 2010 +0200 13562 13563 All SelectionActions contain now a ActionCall.hpp function. 13564 13565 commit 215b89c1e9cba45cc93cbfeab08c569dbea299a7 13566 Author: Frederik Heber <heber@ins.uni-bonn.de> 13567 Date: Mon Jul 26 19:05:46 2010 +0200 13568 13569 All ParserActions contain now a ActionCall.hpp function. 13570 13571 commit 1a3c26204c80008fe2a3b47468292577da52d672 13572 Author: Frederik Heber <heber@ins.uni-bonn.de> 13573 Date: Mon Jul 26 19:03:48 2010 +0200 13574 13575 All MoleculeActions contain now a ActionCall.hpp function. 13576 13577 commit 4ff081f9606c7d6af266d01f479ccdf42cf89038 13578 Author: Frederik Heber <heber@ins.uni-bonn.de> 13579 Date: Mon Jul 26 18:52:24 2010 +0200 13580 13581 All FragmentationActions contain now a ActionCall.hpp function. 13582 13583 commit ecbc9a8de3b5aafb1e22bbde2a54f5a05b496f73 13584 Author: Frederik Heber <heber@ins.uni-bonn.de> 13585 Date: Mon Jul 26 18:47:07 2010 +0200 13586 13587 All CmdActions contain now a ActionCall.hpp function. 13588 13589 - to have the Action's NAME, the action call function has to be friend of the Action. 13590 13591 commit 1a8fbf6987028809244a95a9e6da79edce2cc271 13592 Author: Frederik Heber <heber@ins.uni-bonn.de> 13593 Date: Mon Jul 26 18:41:03 2010 +0200 13594 13595 All AtomActions contain now a ActionCall.hpp function. 13596 13597 - to have the Action's NAME, the action call function has to be friend of the Action. 13598 13599 commit 4e4c4d1e9642e0bc2ac442c428c43eb29952c651 13600 Author: Frederik Heber <heber@ins.uni-bonn.de> 13601 Date: Mon Jul 26 15:39:27 2010 +0200 13602 13603 Shifted select-.. actions from arguments to actions in MapOfActions::DescriptionMap. 13604 13605 commit b31cfad9c427552e0dc8eb0d844f9d10b356c755 13606 Author: Frederik Heber <heber@ins.uni-bonn.de> 13607 Date: Mon Jul 26 15:38:38 2010 +0200 13608 13609 All AnalysisActions contain now a ActionCall.hpp function. 13610 13611 - to have the Action's NAME, the action call function has to be friend of the Action. 13612 13613 commit aa3d7a6b21cecea7518512034a2aaa7e8c66e862 13614 Author: Frederik Heber <heber@ins.uni-bonn.de> 13615 Date: Mon Jul 26 15:37:29 2010 +0200 13616 13617 ActionCalls.hpp header added that contains concise function calls of all actions. 13618 13619 - the pattern is always the same: 13620 - put parameters into respective entries of ValueStorage 13621 - call Action::call(NonInteractive) 13622 13623 commit b763940dbc4ff4cab84e0997b21e0e62696f757b 13624 Author: Frederik Heber <heber@ins.uni-bonn.de> 13625 Date: Mon Jul 26 15:36:09 2010 +0200 13626 13627 PrincipalAxisSystemAction takes molecule from selection. 13628 13629 commit a8a010e328f77377ca5cf5d0610c43e918811836 13630 Author: Frederik Heber <heber@ins.uni-bonn.de> 13631 Date: Sun Jul 25 23:55:48 2010 +0200 13632 13633 TESTFIX: tests/Tesselations needed --select-molecule-by-id and removal of sphere-radius. 13634 13635 - TESTFIX: tests/Tesselations/heptan/1.5 ... again a degenerated polygon has its centerline (two triangles) flipped. 13636 13637 commit e65de81ec88b9121fda86385147b35c5ae50fbfc 13638 Author: Frederik Heber <heber@ins.uni-bonn.de> 13639 Date: Sun Jul 25 23:43:56 2010 +0200 13640 13641 Fixed all correlations for new selected sets of molecules. 13642 13643 - MapOfActions: added missing action names point-correlation and surface-correlation. 13644 - BUGFIX: AnalysisPairCorrelationAction::createDialog() - needs to query for multiple element_s_. 13645 - BUGFIX: MapOfActions::queryCurrentValue() - added values twice, due to ..ID or Z was not set to -1 after push_back. 13646 - TESTFIX: Analysis/* all needed --select-all-molecules in front. 13647 - TESTFIX: Analysis/4 need additional --unselect-molecule-by-id 207 to avoid correlating againts itself. 13648 - TESTFIX: changed all correlation unit tests, i.e. replaced TestList by allMolecules from getSelectedMolecules(). 13649 - analysis_correlation.[ch]pp: 13650 - Replaced MoleculeListClass by const std::vector<molecule *> 13651 - ActiveFlag check is removed, we hand over getSelectedMolecules() from World (or any other vector of molecules) instead. 13652 13653 commit 521bbfdcb3f9d76603e416866b36445f50dddcf1 13654 Author: Frederik Heber <heber@ins.uni-bonn.de> 13655 Date: Sun Jul 25 23:42:34 2010 +0200 13656 13657 DOCUFIX: Filename in header was missing ...Action.[ch]pp. 13658 13659 commit e472eab9f7f6929151469defe1f2df63c0c7f1f5 13660 Author: Frederik Heber <heber@ins.uni-bonn.de> 13661 Date: Sun Jul 25 23:41:34 2010 +0200 13662 13663 Added new all/none selection actions for atoms and molecules. 13664 13665 - new function World::getSelected...() needed for Undo/Redo of new (Not)AllAtoms/AllMoleculesActions. 13666 13667 commit 8d4aa17e45d4c4924afa38b6058dad577c3d5117 13668 Author: Frederik Heber <heber@ins.uni-bonn.de> 13669 Date: Sun Jul 25 21:41:08 2010 +0200 13670 13671 TESTFIX: Filling/2 needed replacement of option --molecule-by-id by action --select-molecule-by-id in front of. 13672 13673 commit 1d9b7d286b00ba8325055cd0a5629ca79e89b120 13674 Author: Frederik Heber <heber@ins.uni-bonn.de> 13675 Date: Sun Jul 25 21:37:53 2010 +0200 13676 13677 TESTFIX: Tesselation/* all needed replacement of option --molecule-by-id by action --select-molecule-by-id in front of, Action changes. 13678 13679 - MapOfActions: removed sphere-radius. 13680 - NonConvexEnvelopeAction: own argument is now sphere-radius, molecule is by selection. 13681 - ConvexEnvelopeAction: argument is void, molecule is by selection. 13682 13683 commit 898e0a4df391ec8fe6678473aa1fa316501fd25c 13684 Author: Frederik Heber <heber@ins.uni-bonn.de> 13685 Date: Sun Jul 25 21:34:09 2010 +0200 13686 13687 TESTFIX: Fragmentation/* all needed replacement of option --molecule-by-id by action --select-molecule-by-id in front of. 13688 13689 commit 5b5c4d941263e481d3740de8543772b60dd0020a 13690 Author: Frederik Heber <heber@ins.uni-bonn.de> 13691 Date: Sun Jul 25 21:29:18 2010 +0200 13692 13693 TESTFIX: Molecules/* all needed replacement of option --molecule-by-id by action --select-molecule-by-id in front of. 13694 13695 - MapOfActions: removed molecule-by-id and molecule-by-name 13696 - MapOfActions: Added selection menu and all four selections, changed descriptions of submenus 13697 - BUGFIX: MoleculeSaveBondsAction::createDialog() - missing return statement. 13698 13699 commit 8467dfc175bccf3411a7128d55ac9cf9ac50454a 13700 Author: Frederik Heber <heber@ins.uni-bonn.de> 13701 Date: Sun Jul 25 21:16:55 2010 +0200 13702 13703 BUGFIX: BoxValue were upper not lower tridiagonal. 13704 13705 Due to pcp's BoxLength we parse a lower diagonal symmetric matrix and hence BoxValue should parse these as well: 13706 - FIX: MapOfActions::validate(), BoxCommandLineQuery::handle() and BoxTextQuery::handle() 13707 13708 commit 12008824fc3670b41b975698811410dde6d7084e 13709 Author: Frederik Heber <heber@ins.uni-bonn.de> 13710 Date: Sun Jul 25 21:12:45 2010 +0200 13711 13712 TESTFIX: Simple_configuration/5 needs select-atom-by-id in front of and remove-atom now has MapOfActions::TypeMap entry of void. 13713 13714 commit 02397167df0b91137a5e13eb261a51fddb70bd1e 13715 Author: Frederik Heber <heber@ins.uni-bonn.de> 13716 Date: Sun Jul 25 21:10:44 2010 +0200 13717 13718 TESTFIX: Simple_configuration/4 now needs select-atom-by-id in front. 13719 13720 commit 533838bb6258839e008c280c894b054f56860285 13721 Merge: e971c49 e2009b3 13722 Author: Frederik Heber <heber@ins.uni-bonn.de> 13723 Date: Sun Jul 25 21:07:06 2010 +0200 13724 13725 Merge branch 'SelectionActions' into SplitDialogFromAction_performCall 13726 13727 Conflicts: 13728 src/World.cpp 13729 src/World.hpp 13730 13731 - World had two new functions isSelected() and countSelected...() which both were incorporated. 13732 - CommandLineParser::Parse() did also add visible which is nonsense, only needed for help screen and prevented parsing of non-generic. 13733 13734 commit e971c49b6c013bf75893b7075dc19dd848a645cc 13735 Author: Frederik Heber <heber@ins.uni-bonn.de> 13736 Date: Sun Jul 25 20:27:39 2010 +0200 13737 13738 Added .gitignore 13739 13740 commit 8d410058bb178563a508e22240f5a6904b36d10e 13741 Author: Frederik Heber <heber@ins.uni-bonn.de> 13742 Date: Sun Jul 25 20:24:40 2010 +0200 13743 13744 BUGFIX: AtomChangeElementAction wrongly expected vector of elements instead of single element. 13745 13746 commit 33b7508a57788b7cdfd9c4759f14b19d528942ae 13747 Author: Frederik Heber <heber@ins.uni-bonn.de> 13748 Date: Sun Jul 25 20:17:35 2010 +0200 13749 13750 TESTFIX: Simple_configuration/3 now discards vector 0,0,-1 being outside of domain. 13751 13752 commit 39b639da773383a72e7b82b0ea762ed7ecc723ab 13753 Author: Frederik Heber <heber@ins.uni-bonn.de> 13754 Date: Sun Jul 25 20:14:09 2010 +0200 13755 13756 Lots of small fixes to MapOfActions: 13757 13758 - MapOfActions::TypeEnumMap added ListOfVectors. 13759 - BUGFIX: queryCurrentValue(..,Box) did not set the box matrix. 13760 - BUGFIX: setCurrentValue(..,Box/Vector) had typeid Box and Vector instead of ...Value 13761 - AddOptionsToParser() - atoi/atof of default CurrentValue replaced by lexical_cast 13762 13763 commit 8bc7336e7ee4c47d976c2ede9ebfa2e8c10ad89e 13764 Author: Frederik Heber <heber@ins.uni-bonn.de> 13765 Date: Sun Jul 25 20:11:53 2010 +0200 13766 13767 BoxQuery contains Box not double[6]. 13768 13769 - BUGFIX: VectorCommandLineQuery - isInside..() should have been !isInside...() 13770 - BoxCommandLineQuery::handle(),BoxTextQuery::handle() - use box class 13771 - BoxQuery has class Box as member variable 13772 13773 commit 3037bebd7259883448f4e5f8462ee5ba3cf1f705 13774 Author: Frederik Heber <heber@ins.uni-bonn.de> 13775 Date: Sun Jul 25 20:11:02 2010 +0200 13776 13777 WorldChangeBoxAction::performCall() - don't need cell_size from the World and only need to set it once. 13778 13779 commit 0ae36b0d684e99d9f522b1a8d721382802fd6aba 13780 Author: Frederik Heber <heber@ins.uni-bonn.de> 13781 Date: Sun Jul 25 20:06:17 2010 +0200 13782 13783 Box::isInside() now uses MYEPSILON as additional boundary of the [0,1) domain. 13784 13785 commit 85537af8294c6e9489540850a5bd0ec864a0f10f 13786 Author: Frederik Heber <heber@ins.uni-bonn.de> 13787 Date: Sun Jul 25 20:04:50 2010 +0200 13788 13789 BUGFIX: AtomAddAction::performCall() expect vector of elements instead of single element. 13790 13791 commit e2f311462bda68e5bd58fe63105915364c2d7653 13792 Author: Frederik Heber <heber@ins.uni-bonn.de> 13793 Date: Sun Jul 25 20:04:24 2010 +0200 13794 13795 MissingValueException is not caught in Action::call() anymore. 13796 13797 commit 7cd6e7ab696a3676cd5e8add0454d596f7c6cf0f 13798 Author: Frederik Heber <heber@ins.uni-bonn.de> 13799 Date: Sun Jul 25 17:07:42 2010 +0200 13800 13801 Add all possible versions of queries where the user is asked for multiples of the same. 13802 13803 - Note that these are correctly implemented in TextUI and CommandLineUI, but not yet in QT4. 13804 13805 commit 0ff6b538342f7d2df5bc0d9e46d66cdd205ae887 13806 Author: Frederik Heber <heber@ins.uni-bonn.de> 13807 Date: Sun Jul 25 17:07:07 2010 +0200 13808 13809 Box::isInside() function added to check whether a given vector is inside simulation domain or not. 13810 13811 commit 85f35e76fdf51e84ed1a45e0b8d55715d7fef858 13812 Author: Frederik Heber <heber@ins.uni-bonn.de> 13813 Date: Sun Jul 25 17:06:27 2010 +0200 13814 13815 BUGFIX: setCurrentValue was not correctly templated. 13816 13817 commit c6f3950823f0d994bbcf963786243385a0ef3a90 13818 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13819 Date: Sat Jul 24 13:43:18 2010 +0200 13820 13821 Added methods to calculate the intersections of Shapes with arbitrary lines 13822 13823 commit 40196a0aea164ac0333f8918bdc9b72e107db6a3 13824 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13825 Date: Sat Jul 24 13:29:55 2010 +0200 13826 13827 Removed unecessary assert in LinePoint class 13828 13829 commit d6f3954f8cbe5b1fcad21b7d0e8d67b6603fbea6 13830 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13831 Date: Sat Jul 24 13:25:21 2010 +0200 13832 13833 Added iterator structure for LineSegmentSets 13834 13835 commit 0b0a20eccd97295d1e20b853c15636671763345f 13836 Author: Frederik Heber <heber@ins.uni-bonn.de> 13837 Date: Fri Jul 23 19:30:57 2010 +0200 13838 13839 Inserted all possible queries into MapOfActions. 13840 13841 - MapOfActions::query/setCurrentValue(): only special classes such as atom, Box, element, molecule, Vector need a specialization of the template. 13842 - also added missing MissingValueException files. 13843 13844 commit dde125b0d55be10505f7893922a77c27d75e2f3f 13845 Author: Frederik Heber <heber@ins.uni-bonn.de> 13846 Date: Fri Jul 23 19:30:12 2010 +0200 13847 13848 SetOutputFormatsAction says which format it could not understand. 13849 13850 commit eeacbc9259d9d1fb1e8e3b74090b8bdf58c24064 13851 Author: Frederik Heber <heber@ins.uni-bonn.de> 13852 Date: Fri Jul 23 19:29:39 2010 +0200 13853 13854 BUGFIX: ValueStorage::getDescription did not return the string from MapOfActions. 13855 13856 commit 6bf52f5115bd3250661048f901748f626f16a39b 13857 Author: Frederik Heber <heber@ins.uni-bonn.de> 13858 Date: Fri Jul 23 19:28:56 2010 +0200 13859 13860 BUGFIX: default flag of call was NonInteractive instead of Interactive. 13861 13862 commit 4e145c4e099c7b64eef25a68a2f37a14cb86cec0 13863 Author: Frederik Heber <heber@ins.uni-bonn.de> 13864 Date: Fri Jul 23 18:24:35 2010 +0200 13865 13866 Actions can now be called non-interactively, MissingValueException thrown. 13867 13868 - new exception MissingValue which is thrown when MapOfActions does not have a desired entry in CurrentValue map. 13869 - new enum Action::QueryOptions. 13870 - Action::call() has flag whether call should be interactive (popping up dialog) or not. 13871 - cleaned-up Makefile.am a bit ... 13872 13873 commit 655c98e8813e3c220ff0aee30f2ab51b12bbf935 13874 Author: Frederik Heber <heber@ins.uni-bonn.de> 13875 Date: Fri Jul 23 18:23:13 2010 +0200 13876 13877 Some derived Actions lacked return NULL in createDialog(). 13878 13879 - Actions are: ActionHistory (Undo/Redo), ErrorAction, ManipulateAtomsAction, MethodAction. 13880 13881 commit ed476ecff64cd916489e2ddb99649474900e7c49 13882 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13883 Date: Fri Jul 23 16:43:02 2010 +0200 13884 13885 Added a Class that allows description of sets of LineSegments from the same line 13886 13887 commit 49d3d394a554ea272f374fc7bb58313091c1f258 13888 Merge: a4e9bb5 7067bd6 13889 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13890 Date: Fri Jul 23 16:07:10 2010 +0200 13891 13892 Merge branch 'StructureRefactoring' into Shapes 13893 13894 Conflicts: 13895 src/Makefile.am 13896 13897 commit a4e9bb5add6b79d2cf25d14ee0e30aa2f2fd6271 13898 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13899 Date: Fri Jul 23 13:59:28 2010 +0200 13900 13901 Added a class that allows specifying Segments of a Line 13902 13903 commit 6256f5f31eca13a77c3ab8175d56dc82de37ad35 13904 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13905 Date: Fri Jul 23 13:10:03 2010 +0200 13906 13907 Added a class that allows specifying points on a line 13908 13909 commit 82cf7935cdf448a9e42acfbb7f0211a8c378e155 13910 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 13911 Date: Fri Jul 23 12:49:09 2010 +0200 13912 13913 Added comparison operators to Line and Plane 13914 13915 commit 358577c738840fb75b2f1424dc01e889a87c14c6 13916 Author: Frederik Heber <heber@ins.uni-bonn.de> 13917 Date: Fri Jul 23 00:02:54 2010 +0200 13918 13919 Fixed used iterators in World::countSelected..() functions. 13920 13921 commit c46d63e5bfa9a26f824025bbe7c8e680be6a63a0 13922 Author: Frederik Heber <heber@ins.uni-bonn.de> 13923 Date: Fri Jul 23 00:02:37 2010 +0200 13924 13925 TextMenu::LeaveAction still lacked createDialog(). 13926 13927 commit 3731b4909c6d6ae4b595859d66058d1e878886f9 13928 Author: Frederik Heber <heber@ins.uni-bonn.de> 13929 Date: Fri Jul 23 00:02:01 2010 +0200 13930 13931 Fixed remainder of Dialog and derived classes for still present _target's. 13932 13933 commit 7cd469035250605f6e00967cd82540daddab131e 13934 Author: Frederik Heber <heber@ins.uni-bonn.de> 13935 Date: Fri Jul 23 00:00:57 2010 +0200 13936 13937 Using ostringstream to convert all templated values in MapOfActions::queryCurrentValue(). 13938 13939 commit 30db643034390bf55f17c017b529b8119ce6f813 13940 Author: Frederik Heber <heber@ins.uni-bonn.de> 13941 Date: Fri Jul 23 00:00:15 2010 +0200 13942 13943 FIX: IllegalTypeException had wrong base constructor call (Math instead of CustomException). 13944 13945 commit 80951deb21b4e43ca4cfbc56dc84d5dc794d03b5 13946 Author: Frederik Heber <heber@ins.uni-bonn.de> 13947 Date: Thu Jul 22 23:59:37 2010 +0200 13948 13949 Fixed all remaining Action's and derived classes that lacked createDialog(). 13950 13951 commit 4c5aafe44e0553c9f3a5d4fab8d4b5c64f2fe624 13952 Author: Frederik Heber <heber@ins.uni-bonn.de> 13953 Date: Thu Jul 22 23:29:39 2010 +0200 13954 13955 Some fixes to class ValueStorage. 13956 13957 - it's _std::_string 13958 13959 commit 3e54d09c77f638758ad6641ed6f248e16acddeab 13960 Author: Frederik Heber <heber@ins.uni-bonn.de> 13961 Date: Thu Jul 22 23:23:35 2010 +0200 13962 13963 converted VersionAction to new createDialog() and implemented trivial Undo/Redo. 13964 13965 - two new functions MapOfActons::query/setCurrentValue() for vector of strings, needed in SetOutputFormatsAction. 13966 13967 commit ff22c5488c443910ae2ed9f42323b573f3ed8ca1 13968 Author: Frederik Heber <heber@ins.uni-bonn.de> 13969 Date: Thu Jul 22 23:22:18 2010 +0200 13970 13971 converted SetOutputFormatsAction to new createDialog(). 13972 13973 commit aee3b1c4af887c0e1015aed573475c28e87a121f 13974 Author: Frederik Heber <heber@ins.uni-bonn.de> 13975 Date: Thu Jul 22 23:20:19 2010 +0200 13976 13977 converted SetGaussianBasisAction to new createDialog() and implemented Undo/Redo. 13978 13979 commit 792597e9e0381a667a6b5f4b2ed054594ce29761 13980 Author: Frederik Heber <heber@ins.uni-bonn.de> 13981 Date: Thu Jul 22 23:16:38 2010 +0200 13982 13983 converted SetDefaultNameAction to new createDialog() and implemented Undo/Redo. 13984 13985 commit 22e780bbf6f5c725e027d9ab132ca1db5499d184 13986 Author: Frederik Heber <heber@ins.uni-bonn.de> 13987 Date: Thu Jul 22 23:12:42 2010 +0200 13988 13989 converted ScaleBoxAction to new createDialog(). 13990 13991 commit bfe2c2376eef4d25597c46dffbc8be4aa9e641ad 13992 Author: Frederik Heber <heber@ins.uni-bonn.de> 13993 Date: Thu Jul 22 23:11:25 2010 +0200 13994 13995 converted RepeatBoxAction to new createDialog(). 13996 13997 commit 9a9b2a4e7522425066fc6a1bd09f6514fd33aa0a 13998 Author: Frederik Heber <heber@ins.uni-bonn.de> 13999 Date: Thu Jul 22 23:10:03 2010 +0200 14000 14001 converted RemoveSphereOfAtomsAction to new createDialog(). 14002 14003 commit 37c282377309e6c7314b694b5ac9d214f2f02322 14004 Author: Frederik Heber <heber@ins.uni-bonn.de> 14005 Date: Thu Jul 22 23:08:38 2010 +0200 14006 14007 converted OutputAction to new createDialog(). 14008 14009 commit 7882e97372845c4211b7017289b0767c7640f0e2 14010 Author: Frederik Heber <heber@ins.uni-bonn.de> 14011 Date: Thu Jul 22 23:07:35 2010 +0200 14012 14013 converted InputAction to new createDialog(). 14014 14015 commit 1ba67dc303482db5e8e806e9d5a77130e6559d8f 14016 Author: Frederik Heber <heber@ins.uni-bonn.de> 14017 Date: Thu Jul 22 23:06:09 2010 +0200 14018 14019 converted CenterOnEdgeAction to new createDialog(). 14020 14021 commit 8da96a6db3fd51cb98b529276b79af27bed95f2e 14022 Author: Frederik Heber <heber@ins.uni-bonn.de> 14023 Date: Thu Jul 22 23:04:59 2010 +0200 14024 14025 converted ChangeBoxAction to new createDialog(). 14026 14027 commit 4aece0c92bada6519a2b0585e7f1ac407f98aa3b 14028 Author: Frederik Heber <heber@ins.uni-bonn.de> 14029 Date: Thu Jul 22 23:03:05 2010 +0200 14030 14031 converted CenterInBoxAction to new createDialog(). 14032 14033 commit 805636c1a84c537ffb7e4a0f828e53da2248cfee 14034 Author: Frederik Heber <heber@ins.uni-bonn.de> 14035 Date: Thu Jul 22 23:00:40 2010 +0200 14036 14037 converted BoundInBoxAction to new createDialog(). 14038 14039 commit afd9f3990504557f2919c5b1008d8e8482ca0a7f 14040 Author: Frederik Heber <heber@ins.uni-bonn.de> 14041 Date: Thu Jul 22 22:59:33 2010 +0200 14042 14043 converted AddEmptyBoundaryAction to new createDialog(). 14044 14045 commit ff4fd2aeb1112a75a19f272dba7cc5f812c8bfd0 14046 Author: Frederik Heber <heber@ins.uni-bonn.de> 14047 Date: Thu Jul 22 22:57:58 2010 +0200 14048 14049 converted NonConvexEnvelopeAction to new createDialog(). 14050 14051 commit 8ae5d5cf568f384acb7eb804f5dd59b1cd24f9ba 14052 Author: Frederik Heber <heber@ins.uni-bonn.de> 14053 Date: Thu Jul 22 22:55:17 2010 +0200 14054 14055 converted ConvexEnvelopeAction to new createDialog(). 14056 14057 commit ce875582fbb5f5e18e6066f03770f84c4062f205 14058 Author: Frederik Heber <heber@ins.uni-bonn.de> 14059 Date: Thu Jul 22 22:52:46 2010 +0200 14060 14061 converted SaveXyzAction to new createDialog(). 14062 14063 commit 0454de24d7826c743e8bf72803de5150dcaad02e 14064 Author: Frederik Heber <heber@ins.uni-bonn.de> 14065 Date: Thu Jul 22 22:50:59 2010 +0200 14066 14067 converted LoadXyzAction to new createDialog(). 14068 14069 commit bcd16af2f919ca538832e3da2a39a8dcb526001b 14070 Author: Frederik Heber <heber@ins.uni-bonn.de> 14071 Date: Thu Jul 22 22:48:46 2010 +0200 14072 14073 converted VerletIntegrationAction to new createDialog(). 14074 14075 commit a20fb922828a2cae71ce2599c7292517e36e3e0d 14076 Author: Frederik Heber <heber@ins.uni-bonn.de> 14077 Date: Thu Jul 22 22:47:06 2010 +0200 14078 14079 converted TranslateAction to new createDialog(). 14080 14081 commit b9b26b4f8c9a891e4d9e93fb71e4b7ed88b734fe 14082 Author: Frederik Heber <heber@ins.uni-bonn.de> 14083 Date: Thu Jul 22 22:45:04 2010 +0200 14084 14085 converted SuspendInWaterAction to new createDialog(). 14086 14087 commit 09cf39f004540b4a1fa4f428f06e3b9090501ab6 14088 Author: Frederik Heber <heber@ins.uni-bonn.de> 14089 Date: Thu Jul 22 22:42:19 2010 +0200 14090 14091 converted SaveTemperatureAction to new createDialog(). 14092 14093 commit fdf19840a41b116b91cdc084945b7e4eb18ade74 14094 Author: Frederik Heber <heber@ins.uni-bonn.de> 14095 Date: Thu Jul 22 22:40:47 2010 +0200 14096 14097 converted SaveBondsAction to new createDialog(). 14098 14099 commit e58fad1a254e20c7edff713925a268abc3fc1177 14100 Author: Frederik Heber <heber@ins.uni-bonn.de> 14101 Date: Thu Jul 22 22:39:15 2010 +0200 14102 14103 converted SaveAdjacencyAction to new createDialog(). 14104 14105 commit 8456137692c93232b395cca90f2a3f70b35e0e4f 14106 Author: Frederik Heber <heber@ins.uni-bonn.de> 14107 Date: Thu Jul 22 22:37:24 2010 +0200 14108 14109 converted RotateToPrincipalAxisSystemAction to new createDialog(). 14110 14111 commit 620fe517294c6b1eb0a1188fa65ee5c1a3e23f3d 14112 Author: Frederik Heber <heber@ins.uni-bonn.de> 14113 Date: Thu Jul 22 22:35:06 2010 +0200 14114 14115 converted LinearInterpolationofTrajectoriesAction to new createDialog(). 14116 14117 commit a001b7bae7fc080027af24c287be6ce37c2ce629 14118 Author: Frederik Heber <heber@ins.uni-bonn.de> 14119 Date: Thu Jul 22 22:31:41 2010 +0200 14120 14121 converted FillWithMoleculeAction to new createDialog(). 14122 14123 commit 5bc8520c0e46db93e06dda9f34e87f99e9b8d6cb 14124 Author: Frederik Heber <heber@ins.uni-bonn.de> 14125 Date: Thu Jul 22 22:28:53 2010 +0200 14126 14127 converted ChangeNameAction to new createDialog(). 14128 14129 commit eacc3ba7af0a741a17b78b3cd4e0b82e63fba3a5 14130 Author: Frederik Heber <heber@ins.uni-bonn.de> 14131 Date: Thu Jul 22 22:21:15 2010 +0200 14132 14133 converted BondFileAction to new createDialog(). 14134 14135 - new functions World::countSelectedAtoms(), ::countSelectedMolecules() 14136 14137 commit 1015fd16890804d2d405c29e0c84d6d75b318c8e 14138 Author: Frederik Heber <heber@ins.uni-bonn.de> 14139 Date: Thu Jul 22 22:16:32 2010 +0200 14140 14141 converted SubgraphDissectionAction to new createDialog(). 14142 14143 commit 70d9b9588923a2b82bacfd9bcc82df00fe4e4d89 14144 Author: Frederik Heber <heber@ins.uni-bonn.de> 14145 Date: Thu Jul 22 22:15:02 2010 +0200 14146 14147 converted FragmentationAction to new createDialog() and implemented trivial Undo/Redo. 14148 14149 commit f394a631235ecfc70559d4b69abfc161fe834ab2 14150 Author: Frederik Heber <heber@ins.uni-bonn.de> 14151 Date: Thu Jul 22 22:11:36 2010 +0200 14152 14153 converted DepthFirstSearchAction to createDialog() and implemented trivial Undo/Redo. 14154 14155 commit 2dfeeb72918023992c28db24bd7a07782516893b 14156 Author: Frederik Heber <heber@ins.uni-bonn.de> 14157 Date: Thu Jul 22 22:09:33 2010 +0200 14158 14159 converted HelpAction to new createDialog() and implemented trivial Undo/Redo. 14160 14161 commit 1d2d17710355e348eae106bab707de2345eb7d5d 14162 Author: Frederik Heber <heber@ins.uni-bonn.de> 14163 Date: Thu Jul 22 22:07:51 2010 +0200 14164 14165 converted VerboseAction to new createDialog() and implemented Undo/Redo. 14166 14167 commit ccf31f7057c3906c5737703833cb5fd5d2d0a959 14168 Author: Frederik Heber <heber@ins.uni-bonn.de> 14169 Date: Thu Jul 22 22:03:45 2010 +0200 14170 14171 converted FastParsingAction to new createDialog() and implemented Undo/Redo. 14172 14173 commit a12e8e5341e9215b37c06f03b9620ebc80e559a9 14174 Author: Frederik Heber <heber@ins.uni-bonn.de> 14175 Date: Thu Jul 22 21:59:36 2010 +0200 14176 14177 converted ElementDbAction to new createDialog(). 14178 14179 commit bb2b2ca0ff9608fa56b820ca8736401f4e2106b8 14180 Author: Frederik Heber <heber@ins.uni-bonn.de> 14181 Date: Thu Jul 22 21:57:57 2010 +0200 14182 14183 converted BondLengthTableAction to new createDialog(). 14184 14185 commit 5cb3cb5366716e8e9c5de8107dd6ea020682b380 14186 Author: Frederik Heber <heber@ins.uni-bonn.de> 14187 Date: Thu Jul 22 21:56:02 2010 +0200 14188 14189 converted RemoveAction to new createDialog() and uses selectedAtoms. 14190 14191 commit 454065b27717ea548c0964c38faa741b66b99a94 14192 Author: Frederik Heber <heber@ins.uni-bonn.de> 14193 Date: Thu Jul 22 21:51:42 2010 +0200 14194 14195 Changed ChangeElementAction to new createDialog() and uses selectedAtoms. 14196 14197 commit 9d33ba90b201569cf2a4636a4a601a51ac2d6c93 14198 Author: Frederik Heber <heber@ins.uni-bonn.de> 14199 Date: Thu Jul 22 21:45:26 2010 +0200 14200 14201 Added ValueStorage::getDescription(), i.e. now all occurences of MapOfActions in classes ...Action can be replaced. 14202 14203 - MapOfActions replaced by ValueStorage in: MolecularVolumeAction, PairCorrelationAction, PointCorrelationAction, PrincipalAxisSystemAction, SurfaceCorrelationAction, AddAction. 14204 - AddAction converted to new createDialog(). 14205 14206 commit ca1ba5fa8bafa494e600c237413e227f206e5cac 14207 Author: Frederik Heber <heber@ins.uni-bonn.de> 14208 Date: Thu Jul 22 21:38:03 2010 +0200 14209 14210 Adapted dialog->query...() calls of all CorrelationAction()s to removed _target. 14211 14212 commit 75dc28fc85d478b74ec291d17bf76e24467a04bc 14213 Author: Frederik Heber <heber@ins.uni-bonn.de> 14214 Date: Thu Jul 22 21:36:18 2010 +0200 14215 14216 Dialog->query...() don't need a _target anymore, 14217 14218 - new class ValueStorage servers as a mediator to MapOfActions to relax inter-dependencies. 14219 - setResult() now puts the value as string into ValueStorage. 14220 - all class Dialog and derivatives don't have a _target in their functions and bodies anymore. 14221 14222 commit d02e07dab3e4ea3de415734aa0c09a9055b903bf 14223 Author: Frederik Heber <heber@ins.uni-bonn.de> 14224 Date: Thu Jul 22 21:11:35 2010 +0200 14225 14226 Split PairCorrelation into Pair, Point and SurfaceCorrelation. 14227 14228 - also converted to new createDialog(). 14229 14230 commit 0c9cc3712a5c382c45c76450228053bec2bc4637 14231 Author: Frederik Heber <heber@ins.uni-bonn.de> 14232 Date: Thu Jul 22 19:57:15 2010 +0200 14233 14234 MolecularVolumeAction rewritten to new createDialog(). 14235 14236 commit ab9a271cb834ee7a2ab0b27a13e8cb1df70f6566 14237 Author: Frederik Heber <heber@ins.uni-bonn.de> 14238 Date: Thu Jul 22 19:53:44 2010 +0200 14239 14240 MapOfActions::TypeMap now contains type_info. 14241 14242 We are going to use the information contained in MapOfActions to split Dialog (information gathering) from the performCall (execution) of the Action. 14243 Therefore, Dialogs will store information as string in MapOfActions' maps and the Actions will retrieve the needed information therefrom. 14244 14245 - TypeMap now contains pointers to type_info 14246 - new TypeEnumMap mapping *type_info to enum Options 14247 - renamed map DefaultValue -> CurrentValue 14248 - new functions MapOfActions::getCurrentValue(), ...::setCurrentValue() as getter and setter of current value 14249 - new exception IllegalTypeException derived from CustomException, thrown when getCurrentValue is asked for value from an action/option-name with different type than stored in TypeMap. 14250 14251 commit ba741882931cf414d8a361ce994b9e69acca3497 14252 Author: Frederik Heber <heber@ins.uni-bonn.de> 14253 Date: Thu Jul 22 19:53:21 2010 +0200 14254 14255 new virtual function Action::createDialog(). 14256 14257 commit e2009b3268f38b1451745713d4dccf21d2fee1b5 14258 Author: Frederik Heber <heber@ins.uni-bonn.de> 14259 Date: Thu Jul 22 18:11:07 2010 +0200 14260 14261 Added a number of SelectionActions. 14262 14263 - (un)select atom/molecule. 14264 - not integrated into MapOfActions so far 14265 14266 commit 421a1fef86dc4ec954ba797991f1a9d2a371272d 14267 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14268 Date: Thu Jul 22 17:22:22 2010 +0200 14269 14270 Added a method that allows simple construction of new normalized Vectors from old ones 14271 14272 commit 41da131154b8abb9caede9f906df297c2ff1fb8c 14273 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14274 Date: Thu Jul 22 17:21:53 2010 +0200 14275 14276 Added assignment operator to Line class 14277 14278 commit 89ebc05f9d25fc22084c73a9c9b8760cb5150208 14279 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14280 Date: Thu Jul 22 17:21:30 2010 +0200 14281 14282 Added assignment operator to plane class 14283 14284 commit 79dd0e9e3fa1e814f7c51e2f278422ca285c24aa 14285 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14286 Date: Thu Jul 22 17:20:43 2010 +0200 14287 14288 Added forgotten return statement in translate_impl::toString() 14289 14290 commit 7067bd6466a60f69edb4e9266035bf78437cb954 14291 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14292 Date: Thu Jul 22 16:17:42 2010 +0200 14293 14294 Made all methods of the range struct explicitly inline 14295 14296 commit e0e156d85fdcaa23fb674516eae0bcd9145a6870 14297 Author: Frederik Heber <heber@ins.uni-bonn.de> 14298 Date: Thu Jul 22 16:09:53 2010 +0200 14299 14300 Added World::isSelected() for selectedAtoms and selectedMolecules. 14301 14302 commit dc11c9885b5f04eecfb275bda7687c5c1da10440 14303 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14304 Date: Thu Jul 22 16:08:22 2010 +0200 14305 14306 Made the id-pools in the World use range objects 14307 14308 commit ee86a01bf2b6b9841d0ca5f11c1b068aec775fd6 14309 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14310 Date: Thu Jul 22 16:07:55 2010 +0200 14311 14312 Simplyfied formula parsing using range objects 14313 14314 commit 23761b2b68bd1bee3bc1be44564447aa972a481a 14315 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14316 Date: Thu Jul 22 16:07:25 2010 +0200 14317 14318 Added a small struct that allows specifying arbitrary ranges 14319 14320 commit c17975fa05a0fa3b09c0db67796feee3b0020060 14321 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14322 Date: Thu Jul 22 14:14:47 2010 +0200 14323 14324 Added a method to check whether two points lie on the same side of a plane 14325 14326 commit f80e2088c830255b34275501faf65d8c7af6b0ee 14327 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14328 Date: Thu Jul 22 14:14:05 2010 +0200 14329 14330 Added a helper method that allows calculating the sign of a value 14331 14332 commit 6d858c9886dca71766cd6b0447dde5afed9f1efd 14333 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14334 Date: Thu Jul 22 13:46:18 2010 +0200 14335 14336 Added Descriptor that allows specifying atoms within a given geometric shape 14337 14338 commit c83b9867c0e8889457b66bd2ef73e753c6979558 14339 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14340 Date: Thu Jul 22 13:23:28 2010 +0200 14341 14342 Made the instantiation of Formula::iterator and Formula::const_iterator less ugly by refering to typedefs 14343 14344 commit 6e7147fbf707c3d045b0c5a64c360ce369ca6e10 14345 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14346 Date: Thu Jul 22 13:14:08 2010 +0200 14347 14348 Added a Descriptor that allows querying molecules by their Formula 14349 14350 commit f17e1c00afd55d3250e08fa28d2ae1c3d9a93e7e 14351 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14352 Date: Thu Jul 22 13:13:19 2010 +0200 14353 14354 Made the molecule::getFormula() method return an acutal formula object 14355 14356 commit 3d27e625ab3656bec994850209304b7d17780c4c 14357 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14358 Date: Thu Jul 22 12:09:46 2010 +0200 14359 14360 Added more unittests to the FormulaUnittest 14361 14362 commit d8a0ec5447cc54d61ca78725dce7690db3edd7aa 14363 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14364 Date: Thu Jul 22 11:17:45 2010 +0200 14365 14366 Made the Formula array resize itself in both directions 14367 14368 - resizing the array to its smallest form helps speed up comparison of formulas and keeps the STL-equal algorithm from running over vector boundaries 14369 14370 commit c644a524bbb56313dae40aa985d36e6ced862539 14371 Author: Frederik Heber <heber@ins.uni-bonn.de> 14372 Date: Thu Jul 22 10:16:55 2010 +0200 14373 14374 test_all.sh now accepts "-j" to allow for parallel compiling, autotests used parallel-tests testdriver. 14375 14376 commit e24c781fe9d1c42abdc27f5773fd0bc933008606 14377 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14378 Date: Thu Jul 22 10:14:55 2010 +0200 14379 14380 Made the full log script more readable 14381 14382 commit 1e1dac5d1c26592f4cda16544662cd19744d935c 14383 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14384 Date: Thu Jul 22 10:06:43 2010 +0200 14385 14386 Fixed old path in memcheck part of the test-script 14387 14388 commit 9f632c18063d4f6ea1ed618c952feb9cf391178a 14389 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14390 Date: Wed Jul 21 17:48:22 2010 +0200 14391 14392 Added Unittest for formula class 14393 14394 commit fefe0d73e0d99722995c4ecd07f09e9e949e86eb 14395 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14396 Date: Wed Jul 21 17:47:47 2010 +0200 14397 14398 FIX: Bug with vector resizing in Formula 14399 14400 commit add42ac597f63fa61861a40489329fc4a5f1985f 14401 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14402 Date: Wed Jul 21 17:25:04 2010 +0200 14403 14404 Removed reverse formula iterators, because they would cause memory corruptions 14405 14406 commit a6d6a964b111c9a4edb650b08d8aae44ad5d3f5a 14407 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14408 Date: Wed Jul 21 16:36:38 2010 +0200 14409 14410 Added explicit instantiation and fixed some bug for formula class 14411 14412 commit d03bb14106e04d88a0fafff8de40436be73197a1 14413 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14414 Date: Wed Jul 21 15:55:18 2010 +0200 14415 14416 Added methods to produce formulas from strings 14417 14418 commit 574ddc1997af36d8056510e9d9e9c8a85a9d18e9 14419 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14420 Date: Wed Jul 21 15:17:18 2010 +0200 14421 14422 Added an exception to indicate failures in parsing. 14423 14424 commit 389cc816e8a29096dc750ee31848fa67835b3e9d 14425 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14426 Date: Wed Jul 21 15:09:30 2010 +0200 14427 14428 Used the formual class instead of single variables inside molecule 14429 14430 commit 6f43ab53afcb10b11789dfb8789489256a97116b 14431 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14432 Date: Wed Jul 21 11:43:50 2010 +0200 14433 14434 Added a class that allow simple handling of molecules formulas 14435 14436 commit f308e66546defa4255f80fbf3c82f29c462acdb7 14437 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14438 Date: Wed Jul 21 10:48:30 2010 +0200 14439 14440 Changed signature of periodentafel::findElement(const char * const) to periodentafel::findElement(const std::string&) 14441 14442 commit 4b6777882941b3ff2f74ea0433e4d8f60ce7ecc5 14443 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14444 Date: Wed Jul 21 10:47:59 2010 +0200 14445 14446 Added forgotten include in MoleculePtrDescriptor.cpp 14447 14448 commit 3d078db43513ccb8235950baa165cf56607d9167 14449 Merge: c538d1b be97a84 14450 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14451 Date: Wed Jul 21 09:49:33 2010 +0200 14452 14453 Merge branch 'stable' into Shapes 14454 14455 commit be97a841b19bbe05e88f3d3ac69c9cb5cd562f10 14456 Merge: ba9f5bc 818eda2 14457 Author: Frederik Heber <heber@ins.uni-bonn.de> 14458 Date: Tue Jul 20 15:01:11 2010 +0200 14459 14460 Merge branch 'StructureRefactoring' into stable 14461 14462 Conflicts: 14463 test_all.sh 14464 14465 - test_all.sh was modified by Till in StructureRefactoring (these changes taken over). 14466 - World::setDomain() was missing OBSERVE macro. 14467 - MapOfActions: "molecule-by-name" needs String not Molecule. 14468 - TESTFIX: Tesselations/defs.in - paths changed such that @srcdir@ may be absolute. 14469 - TESTFIX: Tesselations/heptan/1.5/NonConvexEnvelope.dat - exchanged due to same surface but different polygon triangulation. 14470 - TESTFIX: Domain/4 molecule-by-id changed from 208 to 207 due to different handling of molecule ids. 14471 14472 commit 818eda2ca9fc579caeeb6a28a62acdafefdec317 14473 Author: Frederik Heber <heber@ins.uni-bonn.de> 14474 Date: Tue Jul 20 12:20:49 2010 +0200 14475 14476 Till forgot to add new MoleculeSelectionDescriptor files. 14477 14478 commit cf0ca17240043fb2292a10bc3a162e9d0bc519d6 14479 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14480 Date: Fri Jul 16 15:11:45 2010 +0200 14481 14482 Added Descriptors that allow description of all Selected molecules 14483 14484 commit 48dcbd91eedf0cfdedd6629302e8f99743299f7f 14485 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14486 Date: Fri Jul 16 15:02:31 2010 +0200 14487 14488 Added descriptors that allow description of all selected atoms 14489 14490 commit 8cce2b5df463530a83fa8856d708bdb2b2d3a553 14491 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14492 Date: Fri Jul 16 14:46:42 2010 +0200 14493 14494 Made the MoleculeDescriptor and AtomDescriptor use faster STL-Algorithms for finding 14495 14496 commit a1e0b6f1be63e55d242038e2c64dd5f9823775d6 14497 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14498 Date: Fri Jul 16 13:07:08 2010 +0200 14499 14500 Improved speed of MoleculeDescriptor by using reference to MoleculeSet 14501 14502 commit 41aa398d7989f0243a76894eb1e464a32fa1a1c1 14503 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14504 Date: Fri Jul 16 12:58:56 2010 +0200 14505 14506 Made MoleculeIdDescriptor and AtomIdDescriptor faster by avoiding copy of the MoleculeSet/AtomSet 14507 14508 commit 3839e5f035312ca46bfb725d2d888acf96119627 14509 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14510 Date: Fri Jul 16 12:43:38 2010 +0200 14511 14512 Added iterators over selected atoms and molecules 14513 14514 commit 61d655e9a4ef5bbca6eb19c0f978e9afd556ba93 14515 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14516 Date: Fri Jul 16 12:34:12 2010 +0200 14517 14518 Added methods for unselecting molecules and atoms 14519 14520 commit 90c4280af5b046af47159f7008b4dc774fe44e6c 14521 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14522 Date: Thu Jul 15 17:30:55 2010 +0200 14523 14524 Added several methods for selecting specific atoms in the World 14525 14526 commit c084cc2e958b451246dd895b6538361c1917b4e4 14527 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14528 Date: Thu Jul 15 17:21:06 2010 +0200 14529 14530 Added a method to query the molecule an atom belongs to. 14531 14532 commit 1a76a68d49feaf784563ca346e88231d600c45ed 14533 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14534 Date: Thu Jul 15 16:24:04 2010 +0200 14535 14536 Removed public direct access to Atoms from world 14537 14538 commit 3bf9e29f08c50350485e8aad28ef2508d9126efb 14539 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14540 Date: Thu Jul 15 16:14:42 2010 +0200 14541 14542 Replaced check for Symmetric matrix in Box class with check for invertible matrix 14543 14544 commit c538d1b5308f3901321a944f8cd19ee51bd710f7 14545 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14546 Date: Thu Jul 15 15:50:54 2010 +0200 14547 14548 Added a method that allows producing a Shape from a box 14549 14550 commit d76a7c96ff64ff880a182051dbdc7b1efcf5385d 14551 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14552 Date: Thu Jul 15 13:49:49 2010 +0200 14553 14554 Added simpler method to create cuboids with arbitrary corners 14555 14556 commit f3526d607890f3fcfd8b5d23a6ad1a35db5dc389 14557 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14558 Date: Thu Jul 15 13:35:30 2010 +0200 14559 14560 Added simpler methods for constructing different spheres and ellipsoids 14561 14562 commit 6d750fb7c5d9332c64781a7a84c9c52a9c1814a2 14563 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14564 Date: Thu Jul 15 13:30:52 2010 +0200 14565 14566 More unittests for Shapes added 14567 14568 commit 4506cc20472b8d58db669a251c79f21b2224a96c 14569 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14570 Date: Thu Jul 15 12:38:19 2010 +0200 14571 14572 Added more testing to Shape mechanism 14573 14574 commit cfda6595600dae247edea8ccf14890385d812e0d 14575 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14576 Date: Thu Jul 15 12:37:56 2010 +0200 14577 14578 Added methods to output shapes on the screen 14579 14580 commit ef84cadc5db4086525a9f34ca5107a692d7958a3 14581 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14582 Date: Wed Jul 14 17:52:48 2010 +0200 14583 14584 FIX: Mixed up "And" and "Or" cases for Shape-Surface calculation 14585 14586 commit 5de9da792c0c6d5f23931e92eabdc77e4eb40404 14587 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14588 Date: Wed Jul 14 16:52:07 2010 +0200 14589 14590 Added some important Methods to Shape class hierachy 14591 14592 - Shape::isOnSurface() 14593 - Shape::getNormal() 14594 14595 commit 06300d00d22af71ed91871edbb1f04beff7b122c 14596 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14597 Date: Wed Jul 14 16:48:58 2010 +0200 14598 14599 Added some Exceptions that can be used by shapes to indicate various Problems 14600 14601 commit 41ea3cd028fbf7ccea2699a1196524dd812f9536 14602 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14603 Date: Wed Jul 14 16:48:09 2010 +0200 14604 14605 Added a Method to transpose matrices 14606 14607 commit 4077821c1d6e0aefa5d6c385ff9c8290589d0295 14608 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14609 Date: Wed Jul 14 14:42:13 2010 +0200 14610 14611 Replaced the three single unitVectors with an array to the unitVectors 14612 14613 commit 5d880eb5a85f18d42f59f32306129b4caa42662c 14614 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14615 Date: Wed Jul 14 14:00:29 2010 +0200 14616 14617 Allowed observed access to iterators on Molecules 14618 14619 commit e3d8654e1fbac6e503309807866493a373bc9d1c 14620 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14621 Date: Wed Jul 14 13:51:31 2010 +0200 14622 14623 Madet the internal iterators provided by the world unobserved 14624 14625 commit 51be2aec80c917e90f5e10db857f1dd1874f26df 14626 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14627 Date: Wed Jul 14 12:36:29 2010 +0200 14628 14629 Made iterator access to the molecules observed 14630 14631 commit 8774c5c1ce2e91c27547acbca62ebdfe34d3880a 14632 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14633 Date: Wed Jul 14 12:27:19 2010 +0200 14634 14635 Added operator-> for Observed Iterators 14636 14637 commit b99bf3363a6a508d1a23884aaa7720f0f9124c92 14638 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14639 Date: Sat Jul 10 16:48:44 2010 +0200 14640 14641 Moved the observedContainer templates to the Pattern directory 14642 14643 commit 4ef9b7aecfb5daae2edf520a3935241c1540f1ca 14644 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14645 Date: Sat Jul 10 16:46:51 2010 +0200 14646 14647 Made the observed sets for Atoms more abstract using template mechanisms 14648 14649 commit 4d7462383cb90d484c5fb2d357df84cb4cbf35ed 14650 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14651 Date: Sat Jul 10 16:22:25 2010 +0200 14652 14653 FIX: Repaired broken optimized builds 14654 14655 commit 127a8ed2e2c789fb778e76459224ec0726bd9de4 14656 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14657 Date: Thu Jul 8 18:04:11 2010 +0200 14658 14659 Improved managing of Ids in the World 14660 14661 - Improved algorithm for managing ids to use less time and space 14662 - Made the moleculeIds managed 14663 14664 commit 40f92823967a356c96216f245f50835157d08ba3 14665 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14666 Date: Thu Jul 8 14:57:07 2010 +0200 14667 14668 Fixed a small misnaming of a variable 14669 14670 commit fa0b18007c6019da11597450d8db648ae786ee6d 14671 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14672 Date: Thu Jul 8 14:51:15 2010 +0200 14673 14674 Added Observed and Selectiv iterators over internal Structures of the World. 14675 14676 commit 61ea5b9b2b106f510b81b3dc13ab775fcd191126 14677 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14678 Date: Thu Jul 8 10:20:49 2010 +0200 14679 14680 Added a macro that allows locking observer from outside of the observer 14681 14682 commit 77a57041dc97cf87e9319cb8d08b0533fc2078e5 14683 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14684 Date: Thu Jul 8 10:32:55 2010 +0200 14685 14686 Removed unused VectorSet.cpp 14687 14688 commit ba9f5bcda4dd421dcb79d4ccff0dc34cfc072a6e 14689 Merge: ed6dd86 b21cb9d 14690 Author: Frederik Heber <heber@ins.uni-bonn.de> 14691 Date: Wed Jul 7 19:27:39 2010 +0200 14692 14693 Merge branch 'TestSHBranch' of ../espack into stable 14694 14695 Conflicts: 14696 AUTHORS 14697 COPYING 14698 Makefile.am 14699 README 14700 configure.ac 14701 14702 ./test_sh.all was not in molecuilder subdirectory. Hence, i introduced it by hand again, cherry-picking commits from the ESPACK repo. 14703 14704 commit b21cb9dbead4d40950777be4260bea1a6560f9b6 14705 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14706 Date: Thu Jul 1 14:19:13 2010 +0200 14707 14708 Made the test directories more easily recognizeable 14709 14710 commit 164262634c50f779da253ab0f003d5c821f1bb93 14711 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14712 Date: Thu Jul 1 14:06:23 2010 +0200 14713 14714 FIX,IMPORTANT: Deletion of temporary directory was accidently commented out in test-script. 14715 14716 Please clean all installation files in /tmp manually after applying this patch 14717 14718 commit 720eb1347c9459a296ca45ee9390ee979b68a269 14719 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14720 Date: Fri Jun 25 16:25:21 2010 +0200 14721 14722 Some more minor fixes for the script 14723 14724 commit 56f4affd338750671dc419656459ea2c3d37a6f3 14725 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14726 Date: Fri Jun 25 11:43:46 2010 +0200 14727 14728 Fixed minor bugs in the test script 14729 14730 commit d78b15b859249e96893a56e47d7623ee67842891 14731 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14732 Date: Thu Jun 24 13:24:49 2010 +0200 14733 14734 Added several options to test script 14735 14736 commit d6f4d5d91de1096fca84d3031c3d9b394f4dbf5b 14737 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14738 Date: Fri Jun 18 10:28:16 2010 +0200 14739 14740 Made the test script do optimizations as well as compiling options 14741 14742 commit a9b6d1f87def83ebab99d4665c004ad28a6851b4 14743 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14744 Date: Wed Jun 16 12:13:08 2010 +0200 14745 14746 Added memory check to exhaustive check script 14747 14748 commit 31aea27fa5f3161faa142b812687b96c547eac1e 14749 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14750 Date: Thu Jun 10 14:09:09 2010 +0200 14751 14752 Added script to do a full test of several compilation options at once. 14753 14754 commit 4e10f5d3fadc22df7922e32755bde52849c4ba53 14755 Merge: 5630bd7 192f6ec 14756 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14757 Date: Wed Jul 7 18:08:32 2010 +0200 14758 14759 Merge branch 'stable' into StructureRefactoring 14760 14761 Conflicts: 14762 src/Actions/WorldAction/CenterOnEdgeAction.cpp 14763 src/Actions/WorldAction/ChangeBoxAction.cpp 14764 src/Actions/WorldAction/RepeatBoxAction.cpp 14765 src/Actions/WorldAction/ScaleBoxAction.cpp 14766 src/World.cpp 14767 src/boundary.cpp 14768 14769 commit 5630bd7d92d4ee87e211f07ad39dcf77c488377e 14770 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14771 Date: Wed Jul 7 17:55:33 2010 +0200 14772 14773 Added Unittests for the matrix class 14774 14775 commit 0eb2dcf976a53b98c2a52db8f6e98eb0cf0ac46d 14776 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14777 Date: Wed Jul 7 15:57:05 2010 +0200 14778 14779 Added comparison Operator to matrix class 14780 14781 commit ed6dd86b06f1b9f08a9fcdad0c1f58b4685276e2 14782 Author: Frederik Heber <heber@ins.uni-bonn.de> 14783 Date: Wed Jul 7 15:46:59 2010 +0200 14784 14785 FIX: newly parsed-in atoms should always end up in their own molecule 14786 14787 - This is to make them addressable to further actions such as translations. 14788 14789 commit 3dbb9d0898f6f18f42bd3d2c9f115ece51b8e6b6 14790 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14791 Date: Wed Jul 7 15:11:46 2010 +0200 14792 14793 Added methods to matrix to create vectors for rows and columns 14794 14795 commit 8e17d683057bcb99b7dfa0c1a4d6d4952428b9ad 14796 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14797 Date: Wed Jul 7 14:43:34 2010 +0200 14798 14799 Added VectorContent types that allow making vectors from views 14800 14801 commit 5e8e02502f123714bbc9e2a6c6fa52a1eb3dc69f 14802 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14803 Date: Wed Jul 7 14:26:05 2010 +0200 14804 14805 Repaired broken NO_MEMDEBUG build-path 14806 14807 commit 86cff86835bac81d60b4a25d08f3dacca7c0768c 14808 Author: Frederik Heber <heber@ins.uni-bonn.de> 14809 Date: Wed Jul 7 13:53:05 2010 +0200 14810 14811 InputAction now parses all possible formats, not only pcp. 14812 14813 - new function FormatParserStorage::get() that checks on the suffix and calls the load() function of the respective specialized FormatParser. 14814 - InputAction changed such that ... 14815 - prefix and suffix are extracted. 14816 - FormatParserStorage::get() is used. 14817 - empty configs are handled, too. 14818 - FormatParserStorage::ParserSuffix changed, removed ".conf". 14819 - TESTFIX: renamed all files to diff accordingly: .conf.xyz -> .xyz, .conf.in -> .in 14820 - BUGFIX: xyz files were written without initial tab in front of comment, fix in ParserUnitTest necessary (i.e. a tab was missing there as we always write it now) 14821 - ChangeElementAction: now needs --atom-by-id and takes the element as argument 14822 14823 commit 9d5ddfc3f05b89f53f393682e4d66e4fbca6401c 14824 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14825 Date: Wed Jul 7 13:51:34 2010 +0200 14826 14827 Added constructor and destructor to VectorContent struct 14828 14829 commit 7e0a6d2fb595d035aa60737447d978c6fca615c9 14830 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14831 Date: Wed Jul 7 13:35:49 2010 +0200 14832 14833 Re-Added test script to split up version of molecuilder 14834 14835 commit 192f6eced29258ef080a11bcbb78fd9ff514a41a 14836 Author: Frederik Heber <heber@ins.uni-bonn.de> 14837 Date: Wed Jul 7 10:35:30 2010 +0200 14838 14839 FIX: Removed positional action "input". 14840 14841 - BUG: This caused that input files were parsed twice when added with -i and in general is disfavoured now 14842 - CommandLineParser::scanforSequenceOfArguments() - removed default adding 14843 - CommandLineParser::Parse() - removed positional() for boost::program_options 14844 - TESTFIX: All test case calls had to be adapted, i.e. molecuilder test.conf -> molecuilder -i test.conf, but ran after this without glitch 14845 14846 commit b540f3ef3547381772f90b51e2a9fcc31911a1df 14847 Author: Frederik Heber <heber@ins.uni-bonn.de> 14848 Date: Tue Jul 6 17:50:04 2010 +0200 14849 14850 changed validate() for VectorValue, parsing not 10. 10. 10. but "10., 10., 10." to allow for negative values. 14851 14852 - i.e. we now parse a single string and tokenize it ourselves. 14853 - TESTFIX: alle test cases asking the user for vectors had to be changed accordingly. 14854 14855 commit 62c3dde8462dc6657ada97afbcc616f271e3b4ad 14856 Author: Frederik Heber <heber@ins.uni-bonn.de> 14857 Date: Tue Jul 6 14:09:56 2010 +0200 14858 14859 Added m4 files containing AX_LANG_COMPILER_MS and AM_PATH_CPPUNIT to repository. 14860 14861 - kudos to Ralf for pointing this out 14862 14863 commit f8be39adf455d74b343b19e96922dd72ca70bac2 14864 Author: Ralf Wildenhues <wildenhues@ins.uni-bonn.de> 14865 Date: Tue Jul 6 13:44:44 2010 +0200 14866 14867 Fix .git-version rule. 14868 14869 * src/Makefile.am ($(srcdir)/.git-version): Use correct path 14870 to toplevel .git directory. Use --dirty --always if available. 14871 14872 commit 01a547dc748506bb626bf6114ac4da7889432486 14873 Author: Ralf Wildenhues <wildenhues@ins.uni-bonn.de> 14874 Date: Tue Jul 6 13:44:23 2010 +0200 14875 14876 Document Boost requirement. 14877 14878 * README: Update. 14879 14880 commit f2e50276f11817144b9f45619a50936f92d205cf 14881 Author: Frederik Heber <heber@ins.uni-bonn.de> 14882 Date: Mon Jul 5 19:36:30 2010 +0200 14883 14884 FIX: still wrong path given for tests/Tesselations/defs.in 14885 14886 commit 42c6483aa1e292c862b15d969ea11942d02dd331 14887 Author: Frederik Heber <heber@ins.uni-bonn.de> 14888 Date: Mon Jul 5 19:23:47 2010 +0200 14889 14890 BUGFIX: wrong absolute path was given instead of @srcdir@ in tests/Tesselations/defs.in 14891 14892 commit 6ac15b415070ed53d242694d8c013f516030906e 14893 Author: Frederik Heber <heber@ins.uni-bonn.de> 14894 Date: Mon Jul 5 19:23:32 2010 +0200 14895 14896 Switched off ecut testrunner use by default. 14897 14898 commit 361ba71e577fc2a51017d9da6c9b95f8c98d72d6 14899 Author: Frederik Heber <heber@ins.uni-bonn.de> 14900 Date: Mon Jul 5 19:03:53 2010 +0200 14901 14902 Trailing whitespace in src/Actions/Makefile.am 14903 14904 commit 013a1f1b464aa250a0352e60f738480eec5c8411 14905 Author: Frederik Heber <heber@ins.uni-bonn.de> 14906 Date: Mon Jul 5 19:02:42 2010 +0200 14907 14908 config/*, INSTALL and COPYING have not been present in the repo. 14909 14910 commit 2a374eb47a8c1eecd2cffeee96ad7530b3537554 14911 Author: Frederik Heber <heber@ins.uni-bonn.de> 14912 Date: Sat Jul 3 16:02:50 2010 +0200 14913 14914 MEMFIX: AnalysisPairCorrelationAction::performCall() did not free LCList, TesselStruct and Actives 14915 14916 - also Actives have not been used to re-set the ActiveFlag of all molecules. 14917 14918 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 14919 14920 commit c27778c8cf9d03d323711246738e105de9b3c9d4 14921 Author: Frederik Heber <heber@ins.uni-bonn.de> 14922 Date: Sat Jul 3 15:24:25 2010 +0200 14923 14924 MEMFIXES: ListOfLocalAtoms in molecule::FragmentMolecule() was not free'd correctly. 14925 14926 - FragmentationDepthFirstSearchAction::performCall() - uses now just ListOfAtoms, free'd and set to NULL in while loop 14927 - changed signature: FillBondStructureFromReference(), FillListOfLocalAtoms() do not get FragmentCounter and ListOfLocalAtoms is now atom** (i.e. directly the local list of this fragment not the global one) 14928 - MoleculeLeafClass::FillListOfLocalAtoms() - simplified a lot due to the above 14929 - no more removal of global list if this is the first fragment in MoleculeLeafClass::FillBondStructureFromReference(), MoleculeLeafClass::AssignKeySetsToFragment() 14930 - molecule::FragmentMolecule() - for one we just use ListOfAtoms and around AssignKeySetstoFragments() call we properly allocate, set each component to NULL and free it afterwards. 14931 14932 NOTE: All of these lists and maps are hard to understand and make the code very confusing. It's really high time for refactoring. 14933 14934 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 14935 14936 commit 08d9595e524d41acb5f2556750f13de7c51c081e 14937 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14938 Date: Fri Jul 2 18:00:59 2010 +0200 14939 14940 removed GSL-Headers from tesselationhelpers.hpp 14941 14942 commit 797126567f0200a7de1f47f3329b98a9732473dd 14943 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14944 Date: Fri Jul 2 17:58:53 2010 +0200 14945 14946 Removed two more unused functions 14947 14948 commit 4178131c71823a6899287f00ea147f58b7024cd2 14949 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14950 Date: Fri Jul 2 17:32:22 2010 +0200 14951 14952 Removed unused DetGet() method 14953 14954 commit 04ef48e904a30674119f2715fc93ec9b9cfef49a 14955 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14956 Date: Fri Jul 2 17:29:21 2010 +0200 14957 14958 Made the GetSphere() function use matrix objects 14959 14960 commit fee0794e90e50281a6f8a20468a8904a274cfd92 14961 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14962 Date: Fri Jul 2 17:11:22 2010 +0200 14963 14964 Added a "forward declaration" of the gsl_matrix struct in file Matrix.hpp 14965 14966 commit aafd7737af09b4111bf30cab050e67fa581a43c9 14967 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14968 Date: Fri Jul 2 16:55:52 2010 +0200 14969 14970 Removed all inclusions of GSL-Headers from molecule.hpp 14971 14972 commit 962d8d2f1a29043f5023988fb45bd1ed40afd4ff 14973 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14974 Date: Fri Jul 2 16:36:24 2010 +0200 14975 14976 Added forgotten inclusion of config.h in molecule.hpp 14977 14978 commit d4103c803af56c6175c96bd982367a740bdb0307 14979 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14980 Date: Fri Jul 2 16:33:32 2010 +0200 14981 14982 Removed opening of namespace from molecule.hpp 14983 14984 commit c37386e2c7b2ed3696191aba5aba8faa85a21464 14985 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14986 Date: Fri Jul 2 16:28:52 2010 +0200 14987 14988 Replaced several defines in Graph.hpp with typedefs 14989 14990 commit ce3d2b318c5b1e070682a808827f927c7acb3335 14991 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 14992 Date: Fri Jul 2 15:45:20 2010 +0200 14993 14994 Added a "forward declaration" to the gsl_vector struct to avoid inclusion of the GSL-Headers in too many files 14995 14996 - because the gsl structure does not allow for forward declarations a dumb object is used instead to simulate forwarding 14997 14998 commit b9c8477258cb157c5302eaf6c3b8c3a846877820 14999 Author: Frederik Heber <heber@ins.uni-bonn.de> 15000 Date: Fri Jul 2 15:44:23 2010 +0200 15001 15002 New SetOutputFormatsAction introduced. 15003 15004 Fixes: 15005 - World::setDomain() is now OBSERVE'd and used to the set the domain. 15006 - FIX: CenterInBoxAction, CenterOnEdgeAction, ChangeBoxAction, RepeatBoxAction, ScaleBoxAction did not tell the World that is cell_size has been changed, now they call setDomain() 15007 15008 new SetOutputFormatsAction: 15009 - new action SetOutputFormatsAction which instantiates various specializations of FormatParser in FormatParserStorage. 15010 - main(): mpqc, pcp and xyz and no more added by default to FormatParserStorage, this now has to be done by specifying them (e.g. on the command line as -o pcp mpqc xyz) 15011 - TESTFIXES: case 10,11,13,16,17,22 all failed due to the missing -o specification which has been added (this has been intended in this way from the very beginning of the ParseCommandLineOptions() refactoring) 15012 - action "convex-envelope" now more has ShortForm "-o" due to obvious reasons. 15013 15014 commit 986ed31d916bf484692facd7d688db4be5d6021e 15015 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15016 Date: Fri Jul 2 15:19:32 2010 +0200 15017 15018 COMPILE_SPEEDUP: Replaced all implicit inclusions of iostream with forwards 15019 15020 commit 36166d0baeb554d5194ca8550fe89d2ea46ca643 15021 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15022 Date: Fri Jul 2 15:09:37 2010 +0200 15023 15024 Removed left over parts from old memory-tracker 15025 15026 commit 4a611e3670a1f64878803f279635ff022e7471c1 15027 Author: Frederik Heber <heber@ins.uni-bonn.de> 15028 Date: Fri Jul 2 15:07:29 2010 +0200 15029 15030 OutputAction written and used in TextWindow::TextWindow(). 15031 15032 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15033 15034 commit cd8e55e569af57209f37ce90b3bf55ed71ad6d52 15035 Author: Frederik Heber <heber@ins.uni-bonn.de> 15036 Date: Fri Jul 2 15:05:08 2010 +0200 15037 15038 New StringsQuery that returns space-separated vector of strings. 15039 15040 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15041 15042 commit edb454f225715c8d558cd5602a7e4cca50e48a72 15043 Author: Frederik Heber <heber@ins.uni-bonn.de> 15044 Date: Fri Jul 2 13:29:56 2010 +0200 15045 15046 MEMFIX: correlationmap was not free'd correctly in AnalysisPairCorrelationAction. 15047 15048 - correlationmap pointer was instantiated before the ifs and inside, hence after them the wrong pointer (containing NULL) was free'd. 15049 - surfacemap (type == S) was not free'd at all. 15050 15051 commit 5ec8e3b251db03ba84a62d656f8f84526948e941 15052 Merge: 56fb093 7ac4af5 15053 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15054 Date: Fri Jul 2 11:51:01 2010 +0200 15055 15056 Merge branch 'VectorRefactoring' into StructureRefactoring 15057 15058 Conflicts: 15059 molecuilder/src/Makefile.am 15060 15061 commit 7ac4af546aef569bad618c4f3e4286eafbb6a0dd 15062 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15063 Date: Fri Jul 2 11:36:29 2010 +0200 15064 15065 Added an optimized version of the Box::explode() method for n=1 15066 15067 commit a630fd7d23fa913ba7b568df0f81d926d3eebcfb 15068 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15069 Date: Fri Jul 2 11:28:10 2010 +0200 15070 15071 Made the Box::explode() method take an aditional parameters specifying the number of times the box is expanded 15072 15073 commit abd8f73bcb2eb4148929715360644bedcefda2e6 15074 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15075 Date: Fri Jul 2 11:12:10 2010 +0200 15076 15077 Added comments for Box class 15078 15079 commit cd82eca885c252c6b2a0e0879409287a273993cf 15080 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15081 Date: Fri Jul 2 11:00:17 2010 +0200 15082 15083 Improved comments of matrix class 15084 15085 commit 4563418550cbca164a52af1135e86656963869b2 15086 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15087 Date: Thu Jul 1 16:57:02 2010 +0200 15088 15089 Moved all Exceptions and Matrix class from LinAlg module back to main module 15090 15091 commit 4b94bb2ad3a7a76ccc9814a68fb93b49a65b1a64 15092 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15093 Date: Thu Jul 1 16:48:50 2010 +0200 15094 15095 Moved Vector-Matrix operations to matrix class 15096 15097 commit c550dde8f9a55abc5bb3d1e577f8d58c31313732 15098 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15099 Date: Thu Jul 1 16:37:53 2010 +0200 15100 15101 Removed the VectorIsInParallelepiped in favor of more general methods in the Shape class 15102 15103 commit bdc91e4bc61aad726bc471a78705e01522cc4998 15104 Author: Frederik Heber <heber@ins.uni-bonn.de> 15105 Date: Thu Jul 1 16:26:41 2010 +0200 15106 15107 MEMFIXES: Tesselation routines were leaking memory. 15108 15109 - FindConvexBorder() - new parameter *BoundartyPts and checks whether it has to GetBoundaryPoints() or not. 15110 - PrepareClustersInWater() 15111 - MEMFIX: TesselStruct not removed. 15112 - MEMFIX: GreatestDiameter not removed. 15113 - MEMFIX: LCList not removed. 15114 - MEMFIX: BoundaryPoints not removed. 15115 - GetDiametersOfCluster() uses calculated BoundaryPoints. 15116 - Tesselation::InsertStraddlingPoints() 15117 - MEMFIX: triangles not removed. 15118 - MEMFIX: Use Flag to avoid memory leak in case of early return. 15119 - BUGFIX: LinkedCell::GetNeighbourBounds() - returns wrong bounds if current cell is out of bounds and made unnecessary calculations. 15120 - FIX: made type conversion in divison explicit: molecule::CenterOrigin(), molecule::DetermineCenterOfAll(), molecule::DetermineCenterOfGravity() 15121 - Tesselation::FindStartingTriangle() - introduced map for wrapped coordinates axis 15122 - MEMFIX: TriangleIntersectionList::GatherIntersectionsWithTriangles() - used scoped_ptr to avoid memory loss of points 15123 15124 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15125 15126 commit 205d9b8bb1f1bafa0def6c63eff6b932e15b7885 15127 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15128 Date: Thu Jul 1 16:29:52 2010 +0200 15129 15130 Added missing const to Shape::isInside() method 15131 15132 commit 5e588b597a4bec93c790fd6f6ceca487ee3773de 15133 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15134 Date: Thu Jul 1 16:24:25 2010 +0200 15135 15136 Added more Shape operations 15137 15138 commit b5bf848c84bcb25c70cc7c0dc6b8e670d94b58d8 15139 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15140 Date: Thu Jul 1 16:10:14 2010 +0200 15141 15142 Added a method that allows to scale all components of one vector with all components of another vector. 15143 15144 commit 8f822caef9489cf5ff93568a90bb7abed9901aa8 15145 Merge: 0d5dce8 0144756 15146 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15147 Date: Thu Jul 1 15:55:08 2010 +0200 15148 15149 Merge branch 'VectorRefactoring' into Shapes 15150 15151 commit 0144756049ef4f14261279d28c04e19261b9ff7d 15152 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15153 Date: Thu Jul 1 15:44:39 2010 +0200 15154 15155 Made all places use the periodicDistance() and periodicDistanceSquared() methods provided by the Box class 15156 15157 commit 12cf773059b576c65583614e5aad329f0dd03dec 15158 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15159 Date: Thu Jul 1 14:44:37 2010 +0200 15160 15161 Added a define that makes the definition of VectorSets simpler 15162 15163 commit 527de22f017bb0356fc8ca5a5ed766a9457f10bf 15164 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15165 Date: Wed Jun 30 18:46:53 2010 +0200 15166 15167 Added a function that allows to find the closest periodic point in a Box 15168 15169 commit ec7f5cfe5b22f62e7d0d4560b9f1cdaeb2777856 15170 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15171 Date: Wed Jun 30 18:17:56 2010 +0200 15172 15173 Added a method that allows the calculation of the minimum distance of a point to a set of vectors 15174 15175 commit 89e820674b376e863e62be166bc14b6e8d248927 15176 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15177 Date: Wed Jun 30 18:17:24 2010 +0200 15178 15179 Added a function that allows an expansion of a Point into its 27 periodic continuations 15180 15181 commit f429d7fcd44499560286adf7dea1cac00249abce 15182 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15183 Date: Wed Jun 30 17:39:55 2010 +0200 15184 15185 Move Vector::WrapPeriodically to Box class 15186 15187 commit 3dcb1fbe66c95e1473208ab3eefbd14acd66c2f9 15188 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15189 Date: Wed Jun 30 16:45:38 2010 +0200 15190 15191 Added two functions to Box class to translate Vectors from Box-Space to normal space 15192 15193 commit 6e00ddff3c4fbf233fa517f23431c7fd3ebae6c6 15194 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15195 Date: Wed Jun 30 16:41:46 2010 +0200 15196 15197 Added check for symmetricity in Box::setM() 15198 15199 commit ac272479ab593989831ae7d86c423844f00eb05a 15200 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15201 Date: Wed Jun 30 16:34:11 2010 +0200 15202 15203 FIX: RepeatBoxAction was using a reference to the Box size instead of a copy 15204 15205 commit 082215113a5db70685f369e097f2087319b1ee7b 15206 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15207 Date: Wed Jun 30 16:03:43 2010 +0200 15208 15209 FIX: ScaleBoxAction did not set the new Box Matrix in the World 15210 15211 commit 4907a3bc2ada49ac58ab09c7e207c9d34f641fd0 15212 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15213 Date: Wed Jun 30 15:57:31 2010 +0200 15214 15215 TESTFIX: Repaired regression test that tried to produce a non-invertible matrix as cell size 15216 15217 commit 84c494528bbd3943769972df639fbc01ec0bed4e 15218 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15219 Date: Wed Jun 30 15:55:42 2010 +0200 15220 15221 Made the world store the cell_size within a Box object. 15222 15223 commit 9df5c6800ee6ef2b8e834cd973cc0c165a9587d6 15224 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15225 Date: Wed Jun 30 14:20:34 2010 +0200 15226 15227 Made the Vector::IsInParallelepiped() method take a matrix instead of a double* 15228 15229 commit 4b0cbb5d713a46a9aed2ab44377f403ca3acc743 15230 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15231 Date: Wed Jun 30 12:47:06 2010 +0200 15232 15233 Made the Vector::PeriodicDistance() and Vector::PeriodicDistanceSquared() methods take Matrices instead of double * 15234 15235 commit 7579a4bcbb167ec80ed46431296f3b57d98e4a9a 15236 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15237 Date: Wed Jun 30 12:21:12 2010 +0200 15238 15239 Added Copy constructor and Assignment operator to Box class 15240 15241 commit 83c09a4128bfebd7dc93d3ef069901c9572ba4c6 15242 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15243 Date: Wed Jun 30 11:42:58 2010 +0200 15244 15245 Added a basic Box class to store cell_size as well as inverse of cell_size 15246 15247 commit c49c96b4713aa56687bee43886a27e6da84000b2 15248 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15249 Date: Wed Jun 30 11:41:55 2010 +0200 15250 15251 Added an output function for matrices 15252 15253 commit 1da5f598a5996a8d0b1d0291644c2ac185fe8f83 15254 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15255 Date: Wed Jun 30 11:08:19 2010 +0200 15256 15257 Added method that allows fast construction of Unity matrices 15258 15259 commit 5108e1ee1cf9c498299f8b2bf556d3a3275459c6 15260 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15261 Date: Wed Jun 30 11:00:19 2010 +0200 15262 15263 Removed MatrixMultiplication() method from Vector class 15264 15265 commit 56fb093e0167ef69ea5f8c9737745e22deff50ee 15266 Merge: 51a5c88 8e0c637 15267 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15268 Date: Wed Jun 30 10:35:38 2010 +0200 15269 15270 Merge branch 'stable' into StructureRefactoring 15271 15272 commit 8e0c63737339627f63c419ca95326da1336297c1 15273 Author: Frederik Heber <heber@ins.uni-bonn.de> 15274 Date: Tue Jun 29 17:25:53 2010 +0200 15275 15276 MEMFIX: MatrixContainer::MatrixContainer() made some initial allocations that were simply overwritten afterwards and not free'd. 15277 15278 - This probably originates from the removal of Malloc/Free. 15279 - TESTFIX: Molecules/5 now returns 0 and not 134 anymore. (but still BROKEN as it seems) 15280 15281 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15282 15283 commit ef7d30483f1801e573483fe5210661e86dc379ad 15284 Author: Frederik Heber <heber@ins.uni-bonn.de> 15285 Date: Tue Jun 29 15:04:40 2010 +0200 15286 15287 MEMFIX: ForceMatrix in VelocityVerletIntegration had a stupid offset. 15288 15289 - this offset is now generalized and needed as an additional parameter in TrajectoryParticle::VelocityVerletUpdate() and molecule::VerletForceIntegration() 15290 15291 commit 52d777d1601f9030a5927fbca2ed90bfd50b5cbc 15292 Author: Frederik Heber <heber@ins.uni-bonn.de> 15293 Date: Tue Jun 29 12:43:09 2010 +0200 15294 15295 MEMFIX: molecule::CenterInBox() did not delete CenterBox vector returned by DetermineCenterOfBox(). 15296 15297 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15298 15299 commit 5773a9de40d6fe1f3288879dc3301f45718866a4 15300 Author: Frederik Heber <heber@ins.uni-bonn.de> 15301 Date: Tue Jun 29 12:32:32 2010 +0200 15302 15303 MEMFIX: PcpParser::StructOpt was not initialized in constructor. 15304 15305 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15306 15307 commit 60239f18abcd9188cedaba56cf38cef8bfcb62ef 15308 Author: Frederik Heber <heber@ins.uni-bonn.de> 15309 Date: Tue Jun 29 12:25:54 2010 +0200 15310 15311 MEMFIX: output streams in FormatParserStorage::SaveAll() were not free'd 15312 15313 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15314 15315 commit 11428f8ce2021ae66b5a6bfe2bf9edd3c49f49b4 15316 Author: Frederik Heber <heber@ins.uni-bonn.de> 15317 Date: Tue Jun 29 10:59:19 2010 +0200 15318 15319 COMPILEFIX: using namespace std with std:: in the implementation and not in the definition confused compiler with "-O0 -DNDEBUG" 15320 15321 I think that this is rather a compiler bug. The compilation failure was gone, after using namespace std; had been removed. 15322 15323 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15324 15325 commit 24c35aafa08fa4ef2e58c5113ea202f3081ef5e2 15326 Author: Frederik Heber <heber@ins.uni-bonn.de> 15327 Date: Tue Jun 29 10:59:01 2010 +0200 15328 15329 Removed unused variables. 15330 15331 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15332 15333 commit cfa7957454d1a79e2551d4b5b5a743e2ba165c59 15334 Author: Frederik Heber <heber@ins.uni-bonn.de> 15335 Date: Mon Jun 28 19:02:50 2010 +0200 15336 15337 GetCenterofCircumcircle(0 - Removed old calculation that is superceded by use of barycentric coordinates. 15338 15339 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15340 15341 commit 13892b0f345f9589fbbc5c03efa50305466eea2c 15342 Merge: bdb1432 de8e451 15343 Author: Frederik Heber <heber@ins.uni-bonn.de> 15344 Date: Mon Jun 28 18:53:51 2010 +0200 15345 15346 Merge branch 'UIElementsExplained' into stable 15347 15348 commit 51a5c882321fa978a575883a8e26918f06508900 15349 Merge: bdb1432 f0f1cc8 15350 Author: Frederik Heber <heber@ins.uni-bonn.de> 15351 Date: Mon Jun 28 17:50:54 2010 +0200 15352 15353 Merge branch 'StructureRefactoring' of jupiter:espack into StructureRefactoring 15354 15355 commit bdb143247eccc7c91b16ff0f4b58e8e1946856d2 15356 Merge: b2531f5 c39cc4a 15357 Author: Frederik Heber <heber@ins.uni-bonn.de> 15358 Date: Mon Jun 28 16:53:18 2010 +0200 15359 15360 Merge branch 'StructureRefactoring' into stable 15361 15362 Conflicts: 15363 molecuilder/src/analysis_bonds.cpp 15364 molecuilder/src/analysis_bonds.hpp 15365 molecuilder/src/builder.cpp 15366 molecuilder/src/unittests/Makefile.am 15367 molecuilder/src/unittests/TestRunnerMain.cpp 15368 15369 - TESTFIX: Tesselations/heptan - Due to different implementations of GetCircumCenter() sequence of triangles nodes has changed in degenerate case 15370 - TESTFIX: Tesselation/1-3 - Due to convexity criterion fourth argument (i.e. the value at the node) has changed. 15371 15372 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15373 15374 commit c39cc4a287829a1c0da6147754970a5045cfb269 15375 Author: Frederik Heber <heber@ins.uni-bonn.de> 15376 Date: Mon Jun 28 10:04:25 2010 +0200 15377 15378 TestRunnerMain.cpp admonished missing TestRunner despite no HAVE_ECUT. 15379 15380 Here, TestRunner files were included without checking for HAVE_ECUT define, when not given we use UnitTestMain.cpp. 15381 15382 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15383 15384 commit b2531f58b99abea1c74e576621a963d2f22b369f 15385 Author: Frederik Heber <heber@ins.uni-bonn.de> 15386 Date: Sun Jun 27 01:55:00 2010 +0200 15387 15388 Introduced a MenuBar and Menus to the QT interface. 15389 15390 - new map MapOfActions::MenuDescriptionMap which contains short and long descriptions of the menus. 15391 - MapOfActions::populateActions() - rotate-to-pas and suspend-in-water actions were missing. 15392 - QTMainWindow 15393 - QTMainWindow() - creates a MenuBar and QTMenus and fills them with the actions from the maps in MapOfActions. 15394 - new function populateMenu() - same as in TextWindow. 15395 - new function getSuitableShortForm() - same as in TextWindow. 15396 - TextWindow::TextWindow() - also makes use of the new map MenuDescriptionMap. 15397 - MoleculeSuspendInWaterAction - changed argument to density and molecule is obtained by molecule-by-id 15398 15399 - TESTFIX: Molecule/8 had wrong argument for rotate-to-pas 15400 - TESTFIX: Filling/2 had missing molecule-by-id 15401 15402 commit b0acc3a7b5b3ca40d4aa3940fd46ba4055624f89 15403 Merge: b800215 326bbe4 15404 Author: Frederik Heber <heber@ins.uni-bonn.de> 15405 Date: Sun Jun 27 00:14:22 2010 +0200 15406 15407 Merge branch 'stable' into QT4Refactoring 15408 15409 Conflicts: 15410 molecuilder/src/Makefile.am 15411 15412 - molecuilder/src/Makefile.am: No more present (in stable) Legacy was conflicting 15413 15414 commit b800215c062e714dbeab7570ef2a6df003c54c1c 15415 Author: Frederik Heber <heber@ins.uni-bonn.de> 15416 Date: Sun Jun 27 00:13:24 2010 +0200 15417 15418 Menubar added to QTMainWindow. 15419 15420 commit 01a51f94ff24a022319e8b9bb5f087c52d60443b 15421 Author: Frederik Heber <heber@ins.uni-bonn.de> 15422 Date: Sun Jun 27 00:12:38 2010 +0200 15423 15424 BUGFIX: variable molecules in QTWorldView used uninitialized. 15425 15426 commit b6dbff660c2628bf17ab96e04ccc8cb543e3fb8a 15427 Author: Frederik Heber <heber@ins.uni-bonn.de> 15428 Date: Sun Jun 27 00:11:52 2010 +0200 15429 15430 BUGFIX: ax_check_glu.m4 has a bracket closed to early. 15431 15432 - It was the reason why CXXFLAGS was set to "" and debugging was impossible. 15433 15434 commit 4d206f76b42ca48e260cc39a9dcdaecaff8ec863 15435 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15436 Date: Sat Jun 26 14:38:28 2010 +0200 15437 15438 Replaced Vector::PeriodicDistance() method with call to Vector::PeriodicDistanceSquared() 15439 15440 commit a679d14665015795544b36884112591b171d0d36 15441 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15442 Date: Sat Jun 26 14:35:18 2010 +0200 15443 15444 Replaced Matrix access with direct access at several places 15445 15446 commit 436f0460fd2ba3e355fd4198fddee77f72a8f22d 15447 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15448 Date: Sat Jun 26 14:21:48 2010 +0200 15449 15450 Added a method that allows faster setting of matrix elements using direct access to the gsl_matrix_set() function 15451 15452 commit e3ffd3712ea849a94d9158d455849fb72640c7fa 15453 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15454 Date: Sat Jun 26 14:12:50 2010 +0200 15455 15456 Added ASSERTions to test inidices for matrix access 15457 15458 commit cadbc1fb3669b7855eee3fd6f30ff3fdfe118643 15459 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15460 Date: Sat Jun 26 14:08:48 2010 +0200 15461 15462 Made the matrix class handle const correct 15463 15464 commit 63d2b8b63768e631588dad2ca098054284d345b1 15465 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15466 Date: Sat Jun 26 13:59:50 2010 +0200 15467 15468 Removed unused Vector::KeepPeriodic() method. 15469 15470 commit d10eb6f3865b497d9398ecf46f86b0b565e82cd1 15471 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15472 Date: Sat Jun 26 13:52:50 2010 +0200 15473 15474 Made the ReturnFullMatrixForSymmetric return a Matrix object directely instead of a double array 15475 15476 commit f66b67ef25f8215db4696ae4d1b5f670050f9e30 15477 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15478 Date: Sat Jun 26 13:40:12 2010 +0200 15479 15480 Removed InverseMatrix() function from helpers.cpp 15481 15482 commit d0f1111bbe00c12da35e9d10566f6148b2bab529 15483 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15484 Date: Sat Jun 26 13:33:17 2010 +0200 15485 15486 Changed Vector::WrapPeriodically to use matrixes instead of double* 15487 15488 commit 2f1a7afd3dd955636f42122eb3485ffe4337ccbd 15489 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15490 Date: Sat Jun 26 13:17:50 2010 +0200 15491 15492 Removed Vector::InverseMatrixMultiplication() method 15493 15494 commit c7b39aba0c5bbf0cd82e49fb3793c618e6374c7e 15495 Merge: 33d774f f0f1cc8 15496 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15497 Date: Sat Jun 26 13:03:06 2010 +0200 15498 15499 Merge branch 'StructureRefactoring' into VectorRefactoring 15500 15501 commit f0f1cc841801082b74fbe0a203cc8ebbbc78b481 15502 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15503 Date: Sat Jun 26 13:01:57 2010 +0200 15504 15505 Simplified the #ifdef and #define structure in MemDebug.hpp 15506 15507 commit daa5f1c954173ff3503ce39d99851286b9775f32 15508 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15509 Date: Sat Jun 26 12:45:09 2010 +0200 15510 15511 Added forgotten include in TextWindow.hpp 15512 15513 commit 33d774f89e3f2ad4459ea37163f2fa15abf35cac 15514 Merge: c94eeb0 0c5eeb4 15515 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15516 Date: Fri Jun 25 17:54:48 2010 +0200 15517 15518 Merge branch 'StructureRefactoring' into VectorRefactoring 15519 15520 Conflicts: 15521 molecuilder/src/Makefile.am 15522 15523 commit c94eeb07a5a15f078d531c1d8ad2cffd9ba09b40 15524 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15525 Date: Fri Jun 25 17:27:35 2010 +0200 15526 15527 Replaced several double* that were used as Matrixes with actuall matrix objects 15528 15529 commit 0c5eeb409cae578bdec87b091364dde4c8b6940e 15530 Merge: 0d1ad00 326bbe4 15531 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15532 Date: Fri Jun 25 16:27:26 2010 +0200 15533 15534 Merge branch 'stable' into StructureRefactoring 15535 15536 commit 325390d0efa70ca974c1bc1c47244bd26c28bc39 15537 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15538 Date: Fri Jun 25 12:52:58 2010 +0200 15539 15540 Started work on basic matrix class to be used with Vector class 15541 15542 commit 326bbe40da9599dc046e0fdfe636d1742946e288 15543 Author: Frederik Heber <heber@ins.uni-bonn.de> 15544 Date: Fri Jun 25 15:04:13 2010 +0200 15545 15546 Legacy/oldmenu is no more. 15547 15548 - TextWindow::TextWindow() now properly uses the actions that have been created during the Refactoring of CommandLineUI. 15549 - removed TextWindow::populateEditMolecules() as there is a more general function now 15550 - new Textwindow::populateMenu() - populates the menu by looking at MapOfActions::MenuContainsActionMap. 15551 - new TextWindow::getSuitableShortForm() - educatedly guesses good key for action in menu. 15552 - Hence, Legacy/oldmenu.* is dropped from molecuilder/src/Makefile.am 15553 - new map MapOfActions::MenuContainsActionMap with menu names and all desired actions therein 15554 - new MapOfActions::populateActions() which instantiate all possible actions (moved over from CommandLineWindow) 15555 - DOCU: MapOfActions has full documentation explaining how to add new actions 15556 - main(): CommandLineUI is taken if at least argument it present, otherwise text menu. 15557 15558 Still missing: 15559 - testsuite cases should work for both command line AND text menu (just add by calling with "< input", where input has all the user input needed) 15560 15561 commit 923b6cca0028d3b4eea5fdb75a369201bd898f35 15562 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15563 Date: Fri Jun 25 12:29:57 2010 +0200 15564 15565 Used BLAS support of GSL to calculate scalarProducts 15566 15567 commit 93987b81a24d8a945d0ec25efb8896deadd85f28 15568 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15569 Date: Fri Jun 25 12:17:22 2010 +0200 15570 15571 Made the Vector use more gsl-operations internally 15572 15573 commit 04488addea09a3c04b3c0a81d5e47ff9959d5f70 15574 Merge: ce4487e 0d1ad00 15575 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15576 Date: Fri Jun 25 11:57:15 2010 +0200 15577 15578 Merge branch 'StructureRefactoring' into QT4Refactoring 15579 15580 Conflicts: 15581 molecuilder/src/Makefile.am 15582 molecuilder/src/builder.cpp 15583 15584 commit 0d1ad007b5dcf34ce5860802ca2d4a7cd5ebeebf 15585 Merge: 6d574a7 a356f2d 15586 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15587 Date: Fri Jun 25 11:42:28 2010 +0200 15588 15589 Merge branch 'stable' into StructureRefactoring 15590 15591 Conflicts: 15592 molecuilder/src/World.cpp 15593 15594 commit a356f2d04dbc5c43b28b20131421f2cee7cf693d 15595 Author: Frederik Heber <heber@ins.uni-bonn.de> 15596 Date: Fri Jun 25 10:31:18 2010 +0200 15597 15598 Cleaned up builder.cpp 15599 15600 - ParseComandLineOptions() along with the already #ifdef 0'd functions removed from builder.cpp 15601 - DOCU: Rewrote introductory to Molecuilder. 15602 15603 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15604 15605 commit 4f7f34ebe3887720f1827172d2ebad1e1c5ca8aa 15606 Author: Frederik Heber <heber@ins.uni-bonn.de> 15607 Date: Fri Jun 25 10:11:20 2010 +0200 15608 15609 ParseCommandLineOptions() is not used anymore. 15610 15611 - new Actions InputAction and OutputAction. 15612 - ParseCommandLineOptions() is not called anymore in main(), instead all is handled by CommandLineUI 15613 - Creating first molecule and loading Bondgraph is done in main() 15614 15615 - TESTFIX: boost::program_options returns 134 in case of missing argument, not 255 and also no more CRITICAL message is given: testsuite-standard_options and testsuite-simple_configurations 15616 15617 commit d0fbecbcdc3487bcfb490f5e818f9b9b96b5f4d2 15618 Author: Frederik Heber <heber@ins.uni-bonn.de> 15619 Date: Fri Jun 25 10:08:59 2010 +0200 15620 15621 Added const_iterator get[Begin\End]Iter() and ostream& operator << to ActionRegistry. 15622 15623 commit 6d574a751346812745b54fae2e6cf3966d6e579e 15624 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15625 Date: Thu Jun 24 16:31:45 2010 +0200 15626 15627 Replaced several old-style asserts with more usable ASSERTs 15628 15629 commit 906822f7830d141ace8f9b3ec266397f64fd05d7 15630 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15631 Date: Thu Jun 24 15:21:26 2010 +0200 15632 15633 Removed forgotten debug message 15634 15635 commit 7a176b4f26d1366174c839d048828e1641fdbc5c 15636 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15637 Date: Thu Jun 24 14:33:24 2010 +0200 15638 15639 Repaired ObserverUnittest for -DNDEBUG build mode 15640 15641 commit ce4487e287996b6b95f3542d631d6a770fb44ba4 15642 Merge: 9f3b85c da3024e 15643 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15644 Date: Thu Jun 24 12:33:22 2010 +0200 15645 15646 Merge branch 'MenuRefactoring' into QT4Refactoring 15647 15648 commit 0d5dce8ae3af20bb3bf02caa0d122f24e7e0b9f4 15649 Merge: f932b7b da3024e 15650 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15651 Date: Thu Jun 24 12:20:24 2010 +0200 15652 15653 Merge branch 'StructureRefactoring' into Shapes 15654 15655 commit 35b6985cb4b968c855916ec0ced6e74b690ac7b1 15656 Author: Frederik Heber <heber@ins.uni-bonn.de> 15657 Date: Wed Jun 23 17:20:35 2010 +0200 15658 15659 BIG CHANGE: config::load and config::save in ParseCommandLineOptions() and main() replaced with FormatParser replacements. 15660 15661 Fragmentation: 15662 - FragmentMolecule() - configuration is not needed anymore, but a path (including prefix) 15663 - class molecule: 15664 - lots of changes from char * to std:string (due to above): LinearInterpolationBetweenConfiguration(), CheckOrderAtSite(), StoreBondsToFile(), StoreAdjacencyToFile(), CheckAdjacencyFileAgainstMolecule(), CheckAdjacencyFileAgainstMolecule_Init(), ParseOrderAtSiteFromFile(), StoreOrderAtSiteFile(), StoreForcesFile(), ScanAdaptiveFileIntoMap(), StoreForcesFile(), AddHydrogenCorrection(), OutputConfigForListOfFragments() 15665 - in all above functions, also stringstreams have been replaced by simple strings and file != NULL by file.good() 15666 - no more CalculateOrbitals(), shifted to class PcpParser 15667 - FragmentationAction: argument of -f is now the prefix, molecule is obtained by molecule-by-id 15668 - no more strcpy needed in: MoleculeLinearInterpolationofTrajectoriesAction, MoleculeSaveAdjacencyAction, MoleculeSaveBondsAction 15669 - oldmenu::FragmentAtoms() - needs to ask for path with prefix now 15670 - config: RetrieveConfigPathAndName() and configpath removed (replaced by above path with prefix) 15671 - changes due to this removal: SaveConfig(), config::Load(), config::LoadOld() 15672 15673 - FIX: MoleculeFillWithMoleculeAction: filler atoms have to be removed before the system can be stored to file. 15674 - FIX: PcpParser::load() - has to put the molecule also into World's MoleculeListClass (otherwise the name cannot be set right after loading) 15675 15676 - ParseCommandLineOptions() 15677 - new parameter BondGraphFileName and creation of bond graph is done in main() 15678 - no more config::load, just parser->load(), ConfigFileName is set extra and we always set configPresent to present. 15679 - FIX: filename is only set when no molecule was allocated before 15680 - FIX: case 't' and 'f' had wrong argc checks 15681 - main() 15682 - FormatParserStorage is set with mpqc, pcp and xyz 15683 - BondGraph is constructed from new string BondGrapghFileName 15684 15685 - new Libparser.a 15686 - all sources from PARSER subdir are compiled into libparser such that only ParserUnitTest is recompiled. 15687 15688 Testfixes: 15689 - testsuite-fragmentation - changes to due to different -f calling syntax. 15690 - most of the xyz files had to be replaced due to a single whitespace at the end of each entry: Domain/6, Simple_configuration/2, Simple_configuration/3, Simple_configuration/4, Simple_configuration/5, Simple_configuration/8 15691 - in many cases were the number orbitals (and thus MaxMinStopStep) wrong: Filling/1, Simple_configuration/4, Simple_configuration/5 15692 15693 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15694 15695 commit dc0d21a1aefd1ba76a3deb4c8d9439ef512260f4 15696 Author: Frederik Heber <heber@ins.uni-bonn.de> 15697 Date: Wed Jun 23 12:35:25 2010 +0200 15698 15699 FIXes to FormatParserStorage. 15700 15701 - renamed Add..() to add..() 15702 - new functions get which return a reference to the (in absence instantiated) parser. 15703 - FIX: add..() did not set ParserPresent. 15704 - increment operator for enum ParserTypes was implemented in .hpp not .cpp and hence occured multiple times. 15705 15706 commit df481f901d0d4c8cc3a41e10aa64882c27d2778b 15707 Author: Frederik Heber <heber@ins.uni-bonn.de> 15708 Date: Wed Jun 23 10:51:33 2010 +0200 15709 15710 BUGFIX: XyzParser::save() - substr needs to be (0, pos), not just (pos). 15711 15712 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15713 15714 commit 2fd80b56d5b7d29736198f4a8490428ffd019e9f 15715 Author: Frederik Heber <heber@ins.uni-bonn.de> 15716 Date: Tue Jun 22 17:33:06 2010 +0200 15717 15718 FIXES: ParserUnitTest was broken 15719 15720 - XyzParser: ctime returns endline, has to be cut away as variable comment is without. 15721 - TESTFIX: ParserUnitTest had 0.00000 instead of 0 (noshowpoint is in action). 15722 - TESTFIX: MpqcParser: due to newly used center, ParserUnitTest had wrong coordinates. 15723 - PcpParser::CalculateOrbitals() - used Valence instead of NoValenceOrbitals 15724 - PcpParser::Load() - PsiType changes parsing of PsiMaxNoUp/Down in place for MaxPsiDouble, but the others should be parsed optionally to ensure the taking over of the values if present. 15725 - BUGFIX: MpqcParser::MpqcParser() - HessianPresent was not initialized, causing failures when ParserUnitTest is run with gdb and none without 15726 15727 commit 52baf9e6c40a11d21dbc723f3b31eca45daef2f5 15728 Author: Frederik Heber <heber@ins.uni-bonn.de> 15729 Date: Tue Jun 22 16:09:14 2010 +0200 15730 15731 new class FormatParserStorage takes care of allocation, uniqueness and de-allocation. 15732 15733 This is necessary as otherwise ofstream have to be given to each Parser on instantiation. I.e. files are written over at the start of the program. Critical exits will thus results in empty files. 15734 15735 - new class FormatParserStorage: 15736 - singleton 15737 - contains a vector of all possible parsers 15738 - allows for a common naming with a prefix 15739 - SaveAll() can be used at the end of the program 15740 - TremoloParser::TremoloParser() - default usedFields has all keys from knownKeys. 15741 - FIX: TremoloParser::parseAtomDataKeysLine() - added clear for usedFields such that the function can be called more than once. 15742 15743 commit 4ac1aa6e568bca366690efdb5d300829725129b8 15744 Author: Frederik Heber <heber@ins.uni-bonn.de> 15745 Date: Tue Jun 22 11:33:48 2010 +0200 15746 15747 Removed two unused variables. 15748 15749 commit 650ca8cc5cd79b7bdc9e6dccdeb2e2d235d94356 15750 Author: Frederik Heber <heber@ins.uni-bonn.de> 15751 Date: Tue Jun 22 11:30:03 2010 +0200 15752 15753 FIX: PcpParser had wrong default values for testsuite cases, number orbitals are wrong, no defaults for NULL strings. 15754 15755 - Variables in paths are all NULL as default, this has to be caught on output and default values given. 15756 - some default values were not consistent with testsuite cases (Simple_configuration/2). 15757 - PcpParser::save() - removed some commented-out sections. 15758 - new function PcpParser::CalculateOrbitals() - transfered from class molecule, acting now on vector<atom *>. 15759 - BUGFIX: PcpParser::OutputAtoms() - wrong index for ZtoCountMap used. 15760 15761 commit 1434c98f6218169a6a495cedbaf97beec43ca83d 15762 Author: Frederik Heber <heber@ins.uni-bonn.de> 15763 Date: Tue Jun 22 11:29:01 2010 +0200 15764 15765 FIX: XyzParser needed comment and correctly formatted numbers to pass testsuite cases. 15766 15767 - if comment is empty, we set it to "Create by moleculder" with date 15768 - numbers are formated by noshowpoint 15769 15770 commit d6b8e155f9cafd168e638fb519c9e3f72657177f 15771 Author: Frederik Heber <heber@ins.uni-bonn.de> 15772 Date: Tue Jun 22 11:24:54 2010 +0200 15773 15774 FIX: center calculation was missing in order to pass testsuite cases. 15775 15776 commit d3dff06e8fff78fceae7c93eb68106e91329b667 15777 Merge: a1e9297 f34c238 15778 Author: Frederik Heber <heber@ins.uni-bonn.de> 15779 Date: Mon Jun 21 16:07:25 2010 +0200 15780 15781 Merge branch 'stable' into PcpAndMpqcParser 15782 15783 commit f34c238ce5cc901d49c2b7d96c15786b1d2d390d 15784 Author: Frederik Heber <heber@ins.uni-bonn.de> 15785 Date: Mon Jun 21 16:04:36 2010 +0200 15786 15787 MEMFIX: Periodentafel constructor would instantiate stringstreams in database load calls but not remove them. 15788 15789 commit 61b5f07893ccd22d60b3aed36aa1152a08528f2a 15790 Author: Frederik Heber <heber@ins.uni-bonn.de> 15791 Date: Mon Jun 21 15:46:42 2010 +0200 15792 15793 MEMFIX: When periodentafel::LoadElementsDatabase() is called again, new element is copied into old one, but not removed afterwards. 15794 15795 commit a1e929783e7c845e1b7c256a42d24ecf7f449c2d 15796 Author: Frederik Heber <heber@ins.uni-bonn.de> 15797 Date: Mon Jun 21 15:07:58 2010 +0200 15798 15799 Case 'p' is now handled by CommandLineUI. 15800 15801 - ~XyzParser() did destroy falsely its own comment. 15802 - TremoloParser and XyzParser used include with Parser path. 15803 - ParserLoadXyzAction: 15804 - corrected NAME. 15805 - uses XyzParser and adds all new atoms to the first present molecule. 15806 - CommandLineWindow::display() - now states when action is launched or found absent. 15807 - builder.cpp: cleanup() - purges ChangeTracker 15808 - ParseCommandLineOptions() - sets configPresent to present without check (as parsing is done afterwards, but arguments of other cases will be thrown away in case of empty world) 15809 15810 commit 2f40c0ec191fde0edba78d75107fffb1ecd2edbe 15811 Author: Frederik Heber <heber@ins.uni-bonn.de> 15812 Date: Mon Jun 21 14:56:35 2010 +0200 15813 15814 ChangeTracker now uses the Singleton pattern. 15815 15816 - ChangeTracker is now using Patterns/Singleton[_impl].hpp 15817 - ParserUnitTest then has to destroy the Tracker explicitely and before World is purged! 15818 15819 commit 55240c456666db3cd70a6e0f1825c1af25cd9e70 15820 Merge: 1b2d30e da3024e 15821 Author: Frederik Heber <heber@ins.uni-bonn.de> 15822 Date: Mon Jun 21 09:56:00 2010 +0200 15823 15824 Merge branch 'stable' into PcpAndMpqcParser 15825 15826 Conflicts: 15827 molecuilder/src/Makefile.am 15828 15829 - a single space after a "\" 15830 15831 commit a7c3445deee89b704b2f94ca3ceacb70d02e389e 15832 Merge: b32dbbf 27ac00c 15833 Author: Frederik Heber <heber@ins.uni-bonn.de> 15834 Date: Sat Jun 19 18:06:59 2010 +0200 15835 15836 Merge branch 'StructureRefactoring' of jupiter:espack into StructureRefactoring 15837 15838 commit da3024e9900eac30b2cab75bedab6250961eb4f3 15839 Author: Frederik Heber <heber@ins.uni-bonn.de> 15840 Date: Sat Jun 19 17:58:32 2010 +0200 15841 15842 Fixed various compiler warnings. 15843 15844 - Process::Process() - Action and Observer in wrong order. 15845 - WorldRepeatBoxAction::performCall() - parenthesis missing. 15846 - builder.cpp: SaveConfig() removed by extending #endif, function is not used. 15847 - ParseCommandLineOptions() - unused variables removed. 15848 - main() - unused variables removed. 15849 15850 commit bf0edf6cc675dc6b4fcb371e999060afd9323b60 15851 Author: Frederik Heber <heber@ins.uni-bonn.de> 15852 Date: Sat Jun 19 17:58:01 2010 +0200 15853 15854 Added Searchengine to generated doxygen documentation. 15855 15856 I.e. One has now a little search text field up and right, where one can enter function names or others and obtains links to their explanatory pages. I think this is helpful as the whole code has grown quite a lot recently. 15857 15858 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15859 15860 commit 274d45ac1a71ab65f0579050d6a972f174caf5e2 15861 Author: Frederik Heber <heber@ins.uni-bonn.de> 15862 Date: Sat Jun 19 14:35:01 2010 +0200 15863 15864 FIX: Atoms were stored not in the sequence they were loaded. 15865 15866 1. The main problem is molecule::atomSet which is a set<atom *>, i.e. atoms are sorted by their appearance in memory. As memory need not be allocated sequentially, this gives rise to extreme arbitririty which is not desired. Instead the atoms should be stored in the sequence they were loaded/created. The solution is as follows: 15867 - config::SaveAll() 15868 - uses SimpleMultiMerge() instead of SimpleMultiAdd(). I.e. no atoms are copied (with new ids) but are relinked into a single molecule. 15869 - also, in case of only a single molecule in the list, we don't merge anything to avoid mol id changes. 15870 - MaxMinSteps were set according to MaxPsiDouble overriding correct results from molecule::CalculateOrbitals() 15871 - molecule::atomSet is now a list<atom *> 15872 - molecule::atomIds is a new set<atomId_t> (atomIdSet) which controls that (global) ids remain unique in the no more Atomset's set (but list) 15873 - molecule::erase() erases also in atomIds 15874 - molecule::insert() checks whether id is present by atomIds 15875 - molecule::find() as std::list does not have a find, we just go through the list until the object is found (or not), this may be speeded up by another internal list. 15876 - molecule::InternalPointer made lots of confusion as virtual function GoToFirst() is const, hence begin() (needed therein) returns const_iterator, which then cannot be simply re-cast into an iterator: We make it a pointer, reinterpret_cast the pointer and reference it back. Although InternalPointer is mutable, the compiler cannot use the non-const function begin() (it cannot be made const, as overloading is not allowed). (this is noted in the code also extensively.) 15877 - molecule::containsAtom() does not use count but the new find, as it returns only boolean anyway. 15878 - rewrote MoleculeListClass::SimpleMerge() to get rid of the extra iterator, as we remove all atoms in the end anyway. 15879 - FIX: MoleculeListClass::SimpleMultiMerge() - the created mol was not inserted into the moleculelist in the end, although it is the only one to remain. 15880 15881 2. All other databases had missing headers with respect to those stored in elements_db.cpp. Hence, valence of hydrogen was not parsed and this caused several failures in CalculateOrbitals() (Psi numbers and MaxMinSetp in pcp conf file). 15882 15883 3. Subsequenytly, various test cases (12, 21, 30, 31, 36-38, 39) were broken. This had two reasons: 15884 - Seemingly, CalculateOrbitals() was broken before hence MaxMinStep (pcp config) and MaxPsiDouble/PsiMaxNn[Up|Down] were always 0. (10-21,30-31,39) 15885 - As the order is now correct, fixes from commits c9217161ec2a5d5db508557fe98a32068461f45b and 22a6da8380911571debebd69444d2615450bbbd8 were obselete and have been reverted (order of the Ion?_Type...): Molecules/6 (30), Molecules/7 (31), Filling/1 (39) 15886 - Due to different ordering, Tesselation/3 (38) had completely different .dat file (though same tesselation) 15887 - r3d had small differences, mostly order or epsilon (0 not being 0 but ..-e16), hence diffing was deactivated, as r3d is deprecated anyway (since vmd can render triangles as well and better). 15888 15889 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15890 15891 commit ad2b411bce1e0560ebf2e3ba6134e4b38b4681ea 15892 Author: Frederik Heber <heber@ins.uni-bonn.de> 15893 Date: Sat Jun 19 14:13:45 2010 +0200 15894 15895 atom::getId() should be a const function as it changes nothing in the class. 15896 15897 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15898 15899 commit f2cefdb2905d750f0ec25e01b28d6ca3d82fe2a7 15900 Author: Frederik Heber <heber@ins.uni-bonn.de> 15901 Date: Sat Jun 19 14:10:47 2010 +0200 15902 15903 FIX: ObservedIterator::operator--() (prefix) was missing return statement. 15904 15905 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 15906 15907 commit f932b7b1786c6ff2283e1fed18917476a226e500 15908 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15909 Date: Fri Jun 18 16:40:02 2010 +0200 15910 15911 Added a method to calculate the intersection of a line with the unit sphere 15912 15913 commit 394529331b65caadbef479aaeeaa1e16ed50a188 15914 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15915 Date: Fri Jun 18 12:46:57 2010 +0200 15916 15917 Added small sanity check to the arguments of Resize_impl 15918 15919 commit e09b70d7a588dbbff293dc4d06351cffd07f187a 15920 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15921 Date: Fri Jun 18 12:44:04 2010 +0200 15922 15923 Added basic operations on shapes 15924 15925 commit e38447444304566cccc4a9f79d61ec95482b450b 15926 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15927 Date: Fri Jun 18 12:18:10 2010 +0200 15928 15929 Added some basic shapes to the shape framework 15930 15931 commit 997784156d1dc26d2ac261687508df7c71e2a7b7 15932 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15933 Date: Fri Jun 18 12:03:23 2010 +0200 15934 15935 Added basic structure for definition of geometric 3D shapes. 15936 15937 commit 9f3b85ca21f1768f8726e03a5aba27f042618333 15938 Merge: b47bfce d386e85 15939 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15940 Date: Thu Jun 17 17:24:24 2010 +0200 15941 15942 Merge branch 'stable' into QT4Refactoring 15943 15944 commit b47bfce85c995a562a7a73f752c8e74cc40cc9de 15945 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15946 Date: Thu Jun 17 17:23:53 2010 +0200 15947 15948 Added forgotten files in previous commit 15949 15950 commit d386e85d6e0aa4e0e8ea9ee687510515e0592c35 15951 Merge: 1dc9ece cb16fe0 15952 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15953 Date: Thu Jun 17 17:12:54 2010 +0200 15954 15955 Merge branch 'VectorSetMixin' into stable 15956 15957 commit 1dc9ece817dde18f1ddda86a6a9bf1ceed029ec3 15958 Merge: 5f5a7be 0c7ed86 15959 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15960 Date: Thu Jun 17 17:09:22 2010 +0200 15961 15962 Merge branch 'VectorRefactoring' into stable 15963 15964 Conflicts: 15965 molecuilder/src/vector.cpp 15966 15967 commit 257c77c0c7706fd4745edd8fffdb365d94c06777 15968 Merge: 992fd78 5f5a7be 15969 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15970 Date: Thu Jun 17 16:55:56 2010 +0200 15971 15972 Merge branch 'stable' into QT4Refactoring 15973 15974 Conflicts: 15975 molecuilder/src/Actions/TesselationAction/ConvexEnvelopeAction.hpp 15976 molecuilder/src/Helpers/MemDebug.hpp 15977 molecuilder/src/Makefile.am 15978 molecuilder/src/UIElements/Dialog.cpp 15979 molecuilder/src/UIElements/MainWindow.cpp 15980 molecuilder/src/UIElements/TextUI/TextUIFactory.cpp 15981 molecuilder/src/builder.cpp 15982 15983 commit 5f5a7be8b7a95cd7fe35e9d728b89d6bc36b2f6a 15984 Merge: fc60537 190326d 15985 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15986 Date: Thu Jun 17 14:56:48 2010 +0200 15987 15988 Merge branch 'MenuRefactoring' into stable 15989 15990 Conflicts: 15991 molecuilder/src/UIElements/TextUIFactory.cpp 15992 molecuilder/src/UIElements/UIFactory.cpp 15993 molecuilder/src/UIElements/UIFactory.hpp 15994 molecuilder/src/builder.cpp 15995 15996 commit fc60537725dce1fccdbfab4a892a9fb6d37d5f8c 15997 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 15998 Date: Thu Jun 17 14:25:43 2010 +0200 15999 16000 Made the complete MemDebug file conditional, to speed up compilation 16001 16002 commit 4922793995be9d95cb066183ffb6f6bd1f01af1f 16003 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16004 Date: Thu Jun 17 13:55:29 2010 +0200 16005 16006 FIX: Repaired MemDebug to use safe (C-Style) pthread-mutexes instead of object oriented boost::thread::mutexes 16007 16008 commit e6317b4b368fa20de1aaa2983bd1421caecd6287 16009 Merge: f8e4867 980dd65 16010 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16011 Date: Wed Jun 16 14:24:21 2010 +0200 16012 16013 Broken: Merge commit 'Gitosis/stable' into stable 16014 16015 Conflicts: 16016 16017 molecuilder/src/Actions/AnalysisAction/PairCorrelationToPointAction.cpp 16018 molecuilder/src/Actions/AnalysisAction/PairCorrelationToSurfaceAction.cpp 16019 molecuilder/src/Makefile.am 16020 16021 commit 1b2d30e4f20f9cf99960f0856222c0470911beec 16022 Author: Frederik Heber <heber@ins.uni-bonn.de> 16023 Date: Sat Jun 12 23:59:36 2010 +0200 16024 16025 Extended PcpParser, completed MpqcParser. 16026 16027 - BUGFIX: ConfigFileBuffer::InitFileBuffer() did not clear istream before re-use. 16028 - class PcpParser 16029 - operator== - compares every variable by ASSERTs. 16030 - constructor initializes variables all to sensible values. 16031 - class MpqcParser 16032 - new function save() - calls either SaveHessian() or Save() according to flag HessianPresent. 16033 - new functions SaveHessian() and Save() which contain both parts of config::SaveMPQC(). 16034 - no function load() - this functionality has not been present and is not needed right away. 16035 - Extended ParserUnitTest 16036 - new test case readwritePcpTest() - load from static string, store, load again and compare both. 16037 - new test case writeMpqcTest() - write a state of the world and compare to one from static string. 16038 - all static strings have been made static and set before all functions. 16039 - new string containing an example pcp config file. 16040 - we check whether hydrogen and oxygen are known to the world as we test with these two elements. 16041 - atom::OutputMPQCLine() - now takes ostream instead of ofstream. 16042 - config::SaveMPQC() - adapted accordingly (cast is necessary) 16043 16044 commit 43dad65dfe7e2b0ebca47285b180df260a3dfd9c 16045 Author: Frederik Heber <heber@ins.uni-bonn.de> 16046 Date: Sat Jun 12 17:54:26 2010 +0200 16047 16048 Introducing (but not yet incorporated) FormatParser specializations for MPQC and PCP config files. 16049 16050 - new modules MpqcParser.[ch]pp and PcpParser.[ch]pp. 16051 - class MpqcParser: 16052 - just a skeleton so far 16053 - class PcpParser: 16054 - load and save basically adapted from config::Load and config::Save. 16055 - new functions OutputAtoms() and OutputElements() from molecule::Output() and molecule::CheckOut(). 16056 - ne function ParseThermostats() - as the parsing is specific to the format it should be handled by the FormatParser, not bz ThermoStatContainer. 16057 - most of the variables from config placed into struct to put them into groups (for later splitting up load&save into subfunctions). 16058 - new overload ConfigFileBuffer::InitFileBuffer() accepting streams (FormatParser works on streams, config still with filenames). 16059 - World: new member Thermostats which contains all thermostat parameters with getter function. 16060 - ThermoStatContainer::ParseThermostats() moved over to PcpParser and re-introduced in config. 16061 - atom::OutputArrayIndexed() now works on ostream, not ofstream. 16062 - molecule::Output() adapted to ostream change. 16063 16064 commit a3fded485f7f96b3a75bd175b6c7cdda9af47a7a 16065 Author: Frederik Heber <heber@ins.uni-bonn.de> 16066 Date: Sat Jun 12 15:05:12 2010 +0200 16067 16068 New class ThermoStatContainer containing all parameters and changes to ConfigFileBuffer. 16069 16070 - include "bondgraph.hpp" replaced by forward declaration 16071 - Hence, include missing in the following files: BondLengthTableAction.cpp, DepthFirstSearchAction.cpp, FragmentationAction.cpp, moleculelist.cpp, config.cpp 16072 - ConfigFileBuffer changes: 16073 - new functions: Init/RemoveMapping(), InitFileBuffer() and RemoveBuffer() 16074 - new flag: MapAllocated states whether LineMapping is allocated 16075 - new class ThermoStatContainer: 16076 - gets InitThermostats() and ParseThermostats() from config.cpp 16077 - all thermostat-related parameters moved from config thereto 16078 - TrajectoryParticle(), config::Load() and molecule:Thermostats() adapted due to new Thermostats container. 16079 - define MaxThermostats and enum thermostats moved from molecule.hpp to declaration of ThermoStatContainer 16080 16081 commit 88104f086073b22665cda040c1703bc0f50a7de1 16082 Author: Frederik Heber <heber@ins.uni-bonn.de> 16083 Date: Sat Jun 12 13:12:20 2010 +0200 16084 16085 Placed class ConfigFileBuffer into its own module. 16086 16087 - this is a first step in clearing up config.[ch]pp and implementing PcpParser. 16088 16089 commit 980dd655b657aeb3ce3173a95b5ac1122b2f7062 16090 Author: Frederik Heber <heber@ins.uni-bonn.de> 16091 Date: Fri Jun 11 21:41:45 2010 +0200 16092 16093 Case 'N' is now handled by CommandLineUI. 16094 16095 - TESTFIX: Tesselation/1 and Tesselation/3 molecuilder calls have been changed. 16096 - TESTFIX: Tesselation/defs.in call of molecuilder has been changed. 16097 16098 commit f6bd32663ea9fa338315b53ec627587c5be08a37 16099 Author: Frederik Heber <heber@ins.uni-bonn.de> 16100 Date: Fri Jun 11 21:22:37 2010 +0200 16101 16102 Case 'o' is now handled by CommandLineUI. 16103 16104 - As of now, multiple "--offset" do not work. Hence, we invented new --convex-file and --nonconvex-file. 16105 16106 commit f8e48676b87bf0f42739924444d277b2d0744db3 16107 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16108 Date: Fri Jun 11 18:01:49 2010 +0200 16109 16110 Repaired compilation with -DNO_CACHING option 16111 16112 commit 6866aa7c49cdc09ce8a84ee021aa65f313e82887 16113 Author: Frederik Heber <heber@ins.uni-bonn.de> 16114 Date: Fri Jun 11 17:59:53 2010 +0200 16115 16116 Case 'I' is now handled by CommandLineUI. 16117 16118 commit a802418d734a3ae0fa779a318ce2fc35ae74868d 16119 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16120 Date: Fri Jun 11 17:53:52 2010 +0200 16121 16122 Made the atoms remove all their bonds upon destruction 16123 16124 commit a307afaf868689418b2f1803da4afde3c8e01e78 16125 Author: Frederik Heber <heber@ins.uni-bonn.de> 16126 Date: Fri Jun 11 17:52:44 2010 +0200 16127 16128 Case 'S' is now handled by CommandLineUI. 16129 16130 commit a024627b6670da09d98bfc67ad4d3d28393f939c 16131 Author: Frederik Heber <heber@ins.uni-bonn.de> 16132 Date: Fri Jun 11 17:48:32 2010 +0200 16133 16134 Case 'L' is now handled by CommandLineUI. 16135 16136 commit 6cfa368945b3056d4735abf7d3286f8d7a07aa72 16137 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16138 Date: Fri Jun 11 17:41:41 2010 +0200 16139 16140 Made atoms remove themselves from molecules upon destruction 16141 16142 commit aacce839dff40761d1bbe945e9724e91fa2b50ea 16143 Author: Frederik Heber <heber@ins.uni-bonn.de> 16144 Date: Fri Jun 11 17:27:20 2010 +0200 16145 16146 Case 'P' is now handled by CommandLineUI. 16147 16148 - TESTFIX: "--molecule-by-id 0" added to test call. 16149 16150 commit 77b2d7c74ef5d3d1f96600b9768c905b445340ac 16151 Author: Frederik Heber <heber@ins.uni-bonn.de> 16152 Date: Fri Jun 11 17:21:51 2010 +0200 16153 16154 Cases 't' and 'T' are now handled by CommandLineUI. 16155 16156 - TESTFIX: both cases have "--molecule-by-id 0 --periodic 0/1" added. 16157 - ParseCommandLineOptions()- case 'T' removed as is handled by --periodic switch. 16158 - added missing Action instantiation to CommandLineWindow::populateMoleculeActions(). 16159 16160 commit e2b47c937167a3e72fb72e019f375a4bbd32d280 16161 Author: Frederik Heber <heber@ins.uni-bonn.de> 16162 Date: Fri Jun 11 17:07:11 2010 +0200 16163 16164 Case 'R' is now handled by CommandLineUI. 16165 16166 - again, for each atom to remove all molecules are gone through and it is tried to be erased (due to storing done molecule- not atom-wise) 16167 - TESTFIX: "--position" introduced 16168 16169 commit 9d2a9276f94fe257f7259e9ad59fcd484a8722c2 16170 Author: Frederik Heber <heber@ins.uni-bonn.de> 16171 Date: Fri Jun 11 16:49:15 2010 +0200 16172 16173 ParseCommandLineOptions() - re-added removed argument count checking in cases to make new notation of action calls clearer. 16174 16175 commit f4bd01c2def3fb661cc9b90940415de28b290f9b 16176 Author: Frederik Heber <heber@ins.uni-bonn.de> 16177 Date: Fri Jun 11 16:38:34 2010 +0200 16178 16179 Case 'A' is now handled by CommandLineUI. 16180 16181 - TESTFIX: "--molecule-by-id 0" added to test call. 16182 16183 commit d55743edc4142644288d8bf9343d19ea95e5c454 16184 Author: Frederik Heber <heber@ins.uni-bonn.de> 16185 Date: Fri Jun 11 16:37:51 2010 +0200 16186 16187 Case 'r' is now handled by CommandLineUI. 16188 16189 commit 77de817d0562d36c9416af818dbfc17a59a68a99 16190 Author: Frederik Heber <heber@ins.uni-bonn.de> 16191 Date: Fri Jun 11 16:18:22 2010 +0200 16192 16193 Cases 'J' and 'j' are now handled by CommandLineUI. 16194 16195 - TESTFIX: "--molecule-by-id 0" added to calls. 16196 16197 commit 54b95350c635ef205ff520b17801e884164b717f 16198 Author: Frederik Heber <heber@ins.uni-bonn.de> 16199 Date: Fri Jun 11 12:39:39 2010 +0200 16200 16201 Case 'E' is now handled by CommandLineUI. 16202 16203 - TESTFIX: --element is required now. 16204 16205 commit f0a3ec30883f7671a6d9b42f3fef781efea8f232 16206 Author: Frederik Heber <heber@ins.uni-bonn.de> 16207 Date: Fri Jun 11 12:22:45 2010 +0200 16208 16209 Case 'a' is now handled by CommandLineUI. 16210 16211 - NOTE: atom has still to be added to a molecule to get saved in the end, this is fixed with new parser and should be corrected then (TODO is in the code) 16212 - TESTFIX: Scanning for "Not enough or invalid" for invalid commands test cases has been replaced by just "Not enough" 16213 16214 commit 6c7352cd441286633d02a559a31f6b99a0e2658f 16215 Author: Frederik Heber <heber@ins.uni-bonn.de> 16216 Date: Fri Jun 11 11:40:23 2010 +0200 16217 16218 Removed commented-out LoadPeriodentafel() and (second) LoadBondLengthTable() parts from ParseCommandLineOptions(). 16219 16220 commit 387b36d5638a57ee36515af008ca45c020f7a49f 16221 Author: Frederik Heber <heber@ins.uni-bonn.de> 16222 Date: Fri Jun 11 11:36:09 2010 +0200 16223 16224 Case 'X' is now handled by CommandLineUI, World::get/setDefaultName() operate on std:string not on char * anymore. 16225 16226 - the char array is very fault-prone and is deprecated. Hence, replacement by std::string is good idea in any case. 16227 - Here, setDefaultName deleted and re-allocated the pointer with a certain length. Good for memory, bad for safety. 16228 - molecule::molecule() - changes due to the above. 16229 16230 commit f821d64e8528cffecaf27ded1ba9fa8fce0cb4e5 16231 Author: Frederik Heber <heber@ins.uni-bonn.de> 16232 Date: Fri Jun 11 10:44:25 2010 +0200 16233 16234 Case 'n' is now handled by CommandLineUI. 16235 16236 - TESTFIX: fastparsing switch now has a parameter (0/1). This is due to queryEmpty being designed for messages only, fastparsing instead has a default value of 0. 16237 16238 commit bdaacd8efe6f6b9ef2489b1334a0503013b89d42 16239 Author: Frederik Heber <heber@ins.uni-bonn.de> 16240 Date: Thu Jun 10 18:46:07 2010 +0200 16241 16242 Case 'M' is now handled by CommandLineUI. 16243 16244 commit 48c338b962fc8c9728af30644409aeeabaea8a7d 16245 Merge: 39af9fc 0bcd11d 16246 Author: Frederik Heber <heber@ins.uni-bonn.de> 16247 Date: Fri Jun 11 12:44:46 2010 +0200 16248 16249 Merge branch 'FixTestSuiteMaxOrderFail2' into stable 16250 16251 commit 0bcd11dd8367158918c04ef1c4dda2a7559fc49f 16252 Author: Frederik Heber <heber@ins.uni-bonn.de> 16253 Date: Fri Jun 11 12:43:16 2010 +0200 16254 16255 TESTFIX: Deactivated check of return code for MaxOrder, is declared BROKEN anyway. 16256 16257 commit 756b5318facc694e4cc281e7d9b72ff50dc8c0f9 16258 Author: Frederik Heber <heber@ins.uni-bonn.de> 16259 Date: Thu Jun 10 18:25:42 2010 +0200 16260 16261 TESTFIX: Fragmentation/3 is set to BROKEN. 16262 16263 - somehow sequence of atoms is mixed about in each call and thus adjacencies are never the same. 16264 - this bug should be mentioned, hence set test case to BROKEN and have remark why close-by. 16265 16266 commit 39af9fcd84261dabd6be575928275dd216d89fc2 16267 Author: Frederik Heber <heber@ins.uni-bonn.de> 16268 Date: Thu Jun 10 18:24:24 2010 +0200 16269 16270 Case 'g' is now handled by CommandLineUI. 16271 16272 commit 198494d9bdb96377e7d421a1ab096e7cec9ef909 16273 Author: Frederik Heber <heber@ins.uni-bonn.de> 16274 Date: Thu Jun 10 18:20:36 2010 +0200 16275 16276 Case 'e' is now handled by CommandLineUI. 16277 16278 - BUGFIX: ElementDbAction did copy databasepath not when dialog was finished but before. 16279 16280 commit 61745ccc38dc041f5dfcbdd3771f3ac5c9c786cf 16281 Author: Frederik Heber <heber@ins.uni-bonn.de> 16282 Date: Thu Jun 10 18:17:22 2010 +0200 16283 16284 BUGFIX: LoadPeriodentafel() did not close files and elements have to be replaced in-place. 16285 16286 - LoadPeriodentafel() - input file was never closed or cleared. 16287 - LoadPeriodentafel() - new element in case of presence of same-Z, deleted the old one and installed a new one. However, atoms::type knows nothing about this change! Has to be done in-place. 16288 - LoadPeriodentafel() - insertion is now tested with ASSERT 16289 - periodentafel::RemoveElement() now return number of removed elements (good for ASSERT checks) 16290 16291 commit 7e6b008345766c6fe1944b6cb57c2847aa592191 16292 Author: Frederik Heber <heber@ins.uni-bonn.de> 16293 Date: Thu Jun 10 18:13:23 2010 +0200 16294 16295 FIX: Sequence of actions called from command line is now corrected. 16296 16297 - MapOfActions: new function getShortFormToActionMap() which gives the inverse of the ShortFormMap. 16298 - CommandLineParser: new function scanforSequenceOfArguments() added to Run() which: 16299 - goes through the arguments 16300 - picks out the command 16301 - if prefixed by "-" uses the map to look up the actionname, for "--" the name is the command. 16302 - main(): creates the map by calling getShortFormToActionMap() and handing over to CommandLineParser::Run() 16303 16304 commit 623e89168dc407fe77c5dbbf192859477cae91d7 16305 Author: Frederik Heber <heber@ins.uni-bonn.de> 16306 Date: Thu Jun 10 18:05:53 2010 +0200 16307 16308 Compilation took ages because of CommandLineParser.hpp being unnecessarily included in every action. 16309 16310 - it was actually needed in HelperAction.cpp and copy&pasted itself from there into almost all others. 16311 16312 commit 6d6b5491705c9d7eaf181c02b89e656d2ad2ae18 16313 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16314 Date: Thu Jun 10 17:10:19 2010 +0200 16315 16316 Made the memory-tracker output the function from which it was called. 16317 16318 commit 112b090c14e4507fb9dde0a3a340b9a3d61823ba 16319 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16320 Date: Thu Jun 10 15:11:28 2010 +0200 16321 16322 Added #include "Helpers/MemDebug.hpp" to all .cpp files 16323 16324 commit 2b5574e2ed38f6d3582dab8cd70d735f7f0a370b 16325 Author: Frederik Heber <heber@ins.uni-bonn.de> 16326 Date: Wed Jun 9 17:05:22 2010 +0200 16327 16328 Case 'm' is now handled by CommandLineUI. 16329 16330 - TESTCHANGE: Analysis/5 had to be switched off, as --principal-axis-system is hard to put into argclist by hand and counterproductive. 16331 16332 commit 31b09efe60555434eafcd99fb4bf0adf4626b407 16333 Author: Frederik Heber <heber@ins.uni-bonn.de> 16334 Date: Wed Jun 9 17:09:55 2010 +0200 16335 16336 Added new MoleculeDescriptor by name. 16337 16338 - molecule Ids are rather clumsy to use (not as efficiently handled yet as those of atoms by World). 16339 - but this would need another queryMolecule as the one present so far, looks for ints not strings. 16340 16341 commit 58bbd3f2e470541a11fee67100edb3e8b589c40f 16342 Author: Frederik Heber <heber@ins.uni-bonn.de> 16343 Date: Wed Jun 9 17:08:46 2010 +0200 16344 16345 Cases 'C' are now handled by CommandLineUI. 16346 16347 - TESTFIX: Analysis/3/post/bin_output.csv was wrong, bins had max around 10, not 5. (which must be the max, as the box of water molecules is from 5:15 centered at 10 for each axis) 16348 - PeriodicPairCorrelartion(): Old commented-out block removed. 16349 - MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() - MolName and id is printed. 16350 16351 commit cd504777a814c6a07f5ee0afa968688b74c98db2 16352 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16353 Date: Wed Jun 9 16:30:10 2010 +0200 16354 16355 Added Logging capabilities to Observer Framework 16356 16357 commit 1e6913b9968cc6beb553ca42434c08a099e00d98 16358 Author: Frederik Heber <heber@ins.uni-bonn.de> 16359 Date: Wed Jun 9 16:09:46 2010 +0200 16360 16361 Order of actions called did not conincide with order on command line. 16362 16363 CommandLineWindow::display() 16364 - Actions were called by going through the repository and checking whether present on CommandLine, this causes different sequence of actions to be called. 16365 - Now, we go through all command lind parameters and check whether they correspond to an action in the registry which we call. 16366 16367 ActionRegistry: 16368 - new function: ActionRegistry::isActionByNamePresent() checks whether action is present in registry 16369 16370 - TESTFIX: MaxOrder now failws if not another action is called before (here now, -v 1). Otherwise, return code only occurs on third call not on second 16371 16372 commit 94d131220b911d708c24560616b4800dd3578f08 16373 Author: Frederik Heber <heber@ins.uni-bonn.de> 16374 Date: Wed Jun 9 16:06:23 2010 +0200 16375 16376 Helpful messages added to find failing queries in CommandLineUI. 16377 16378 - all ..CommandLineQuery() functions give missing warning on failure 16379 - Dialog::display() admonished which query failed (and needed to friend of its own Query subclass for that ...) 16380 16381 commit 1045249f0bb2378aa1e7ffeb512c7f6a371bc022 16382 Author: Frederik Heber <heber@ins.uni-bonn.de> 16383 Date: Wed Jun 9 13:21:58 2010 +0200 16384 16385 Changed PairCorrelationAction to incorporate all three cases and handled different parameters needed for each, changed queryElement to list of elements. 16386 16387 PairCorrelationAction: 16388 - PairCorrelationAction has now three cases for Pair, Point and Surface. 16389 - removed PairCorrelationToPointAction, PairCorrelationToSurfaceAction files and from Makefile.am 16390 16391 queryElement: 16392 - queryElement, ElementCommandLineQuery, ElementTextQuery, ElementQuery all changed to use vector<element *>* instead of element ** 16393 - ChangeElementAction changed accordingly 16394 - oldmenu::AddAtoms() changed accordingly 16395 16396 Others: 16397 - CommandLineWindow::populateAnalysisActions() - missing MolecularVolumeAction and PrinicipalAxisSystemAction. 16398 16399 commit c78d4478f91e8205044bcdcfb3ee915115126e76 16400 Author: Frederik Heber <heber@ins.uni-bonn.de> 16401 Date: Wed Jun 9 13:12:08 2010 +0200 16402 16403 Change to PairCorrelation...() functions, accept now vector<element *> instead of ptrs to element *. 16404 16405 - modified ParseCommndLineOptions for all three cases 'C': Pair (E), Point (P) and Surface (S). 16406 - modified all Analysis(Pair)Correlation...() unit tests to have a vector of elements be delivered. 16407 16408 commit 8540f07e82cb345c4dd82592eefae4aeb47705f4 16409 Author: Frederik Heber <heber@ins.uni-bonn.de> 16410 Date: Tue Jun 8 15:57:09 2010 +0200 16411 16412 Case 'D' is now handled by CommandLineUI. 16413 16414 commit e4b5de3092d7deccd5df82703dcd50757372d70a 16415 Author: Frederik Heber <heber@ins.uni-bonn.de> 16416 Date: Tue Jun 8 15:49:27 2010 +0200 16417 16418 Case 'f' is now handled by CommandLineUI. 16419 16420 - FragmentationFragmentationAction::handle() has not been implemented, copied from ParseCommandLineOptions() 16421 - FIX: FragmentationFragmentationAction had wrong NAME. 16422 - World has new ExitFlag variable and getter and setter functions. 16423 - TESTFIX: Fragmentation/3 does not copy all BondFragment* files from pre but runs Fragmentation twice and tests the ExitFlag. This makes the test more independent and closer to what it's suppose to test (i.e. iterative fragmentation with increasing order). 16424 - TESTFIX: removed all Fragmentation/3/pre/BondFragment* files 16425 - FIX: CommandLineWindow::populateFragmentationActions() was missing two of its three actions still. 16426 16427 commit 48ab70ab46459550f30b5526d868ebaef5b918e5 16428 Author: Frederik Heber <heber@ins.uni-bonn.de> 16429 Date: Tue Jun 8 14:13:11 2010 +0200 16430 16431 Case 'u' is now handled by CommandLineUI. 16432 16433 commit f2a1d3a2a5da8edb824b9f513362646108169507 16434 Merge: 4ed18b5 e58856b 16435 Author: Frederik Heber <heber@ins.uni-bonn.de> 16436 Date: Tue Jun 8 13:18:45 2010 +0200 16437 16438 Merge branch 'FixRemovedElementsDBFromMakefile' into stable 16439 16440 - elements_db.[ch]pp had been removed as it was inserted too early (before files were added), but this confused recursive merge. Hence had to be reintroduced by hand here. 16441 16442 commit 4ed18b5079e3f4ea8a189543a78e279bb579b049 16443 Merge: 9907e77 b0e9c9b 16444 Author: Frederik Heber <heber@ins.uni-bonn.de> 16445 Date: Tue Jun 8 13:13:33 2010 +0200 16446 16447 Merge branch 'FixPeriodenTafelConstructorLoadDBs' into stable 16448 16449 commit e58856b1e8e0c3cba8153a568d0e09b787f1ce5c 16450 Author: Frederik Heber <heber@ins.uni-bonn.de> 16451 Date: Tue Jun 8 13:12:24 2010 +0200 16452 16453 BUGFIX: elements.db has disappeared to early from .._DATA. 16454 16455 - we need it till the switch to CommandLineUI and internal elements' db is done. 16456 - FIX: elements_db.cpp/.hpp were already in den Makefile, but not added yet. 16457 16458 commit b0e9c9b269a10c150b013b7fb592c9bf4771717b 16459 Author: Frederik Heber <heber@ins.uni-bonn.de> 16460 Date: Tue Jun 8 13:00:53 2010 +0200 16461 16462 BUGFIX: Constructor of periodentafel had ASSERTs with function calls inside. 16463 16464 - This is very serious as when debugging is switched off, ASSRTs are not getting compiled anymore, hence the functions to load the database are never called. 16465 16466 commit 9907e774dbebe0f523b34cdd51927af10f1b83c2 16467 Author: Frederik Heber <heber@ins.uni-bonn.de> 16468 Date: Tue Jun 8 01:55:30 2010 +0200 16469 16470 Case '-F' is now handled by CommandLineUI. 16471 16472 - FIX: FillWithMoleculeAction was still using internally created water instead of molecule parsed from xyz file. 16473 16474 commit 19c0e3e1d4f92d1e97268b4dba8d29dcbfc80b9c 16475 Author: Frederik Heber <heber@ins.uni-bonn.de> 16476 Date: Tue Jun 8 01:54:32 2010 +0200 16477 16478 FIX: Boost >1.38 is needed for program_options to have working multitoken() 16479 16480 commit 0286bc68dfc4d223023e8fa98a68a958f8bc8a40 16481 Author: Frederik Heber <heber@ins.uni-bonn.de> 16482 Date: Tue Jun 8 01:48:31 2010 +0200 16483 16484 BUGFIX: ListOfDoubles changed to Box and Vector. 16485 16486 - ListOfDoubles is now Box/Vector at appropriate places thanks to new validators and types 16487 - new types BoxValue and VectorValue, being structures for symmetric 3x3 matrices and 3-dim vectors 16488 - new file Values.hpp, containing the definitions added to Makefile.am 16489 - new overloaded validate functions for boost::program_options 16490 - CommandLineUI 16491 - adapted VectorCommandLineQuery and BoxCommandLineQuery to expect VectorValue and BoxValue 16492 - BUGFIX: CommandLineDialog::BooleanCommandLineQuery::handle() had copy&paste from Menu instead of program_options 16493 - MapOfActions 16494 - center-in-box and change-box expect Box not ListOfDoubles 16495 - distances and lengths expect Vector not ListOfDoubles 16496 - new DoRotate option 16497 - inserted fill-molecule action 16498 16499 commit 2c893432d10d5f709a426218ed12192005dc55e8 16500 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16501 Date: Fri Jun 4 14:19:41 2010 +0200 16502 16503 Repaired broken NDEBUG mode of ASSERT 16504 16505 commit 76c0d685b7570bb1f520bbd307e7486df6502bb4 16506 Merge: e058267 27ac00c 16507 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16508 Date: Fri Jun 4 11:28:46 2010 +0200 16509 16510 Merge branch 'StructureRefactoring' into stable 16511 16512 Conflicts: 16513 16514 molecuilder/src/Makefile.am 16515 molecuilder/src/periodentafel.cpp 16516 16517 commit e0582670720906c59f098684b31f4fd9f892fc21 16518 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16519 Date: Fri Jun 4 11:01:15 2010 +0200 16520 16521 Small corrections on Makefile 16522 16523 commit 3610bbd6dd22cef268eb768a7a49227356ab66d0 16524 Author: Frederik Heber <heber@ins.uni-bonn.de> 16525 Date: Wed Jun 2 18:31:10 2010 +0200 16526 16527 test.conf.in was missing for test Simple_configuration/5. 16528 16529 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16530 16531 commit e30ce84fbef084941d63f2e2a7066172cc844cb4 16532 Author: Frederik Heber <heber@ins.uni-bonn.de> 16533 Date: Wed Jun 2 17:41:52 2010 +0200 16534 16535 Case 'd' is now handled by CommandLineUI (RepeatBoxAction). 16536 16537 - rewritten the RepeatBoxAction quite a bit by allowing to build (x,y,z) matrices out of single molecules. 16538 - implemented bew MoleculePtrDescriptor, which accepts the pointer to a molecule (so far, CommandLineQuery is as of yet lacking maybes/default values). 16539 16540 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16541 16542 commit cb16fe02e8ab0e4ed02ea5cf121e406af58e092c 16543 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16544 Date: Wed Jun 2 17:18:11 2010 +0200 16545 16546 Added a mixin that allows specifying methods for complete sets of vectors. 16547 16548 commit 584a2a322e04645b47cee8b1353d66e700542023 16549 Author: Frederik Heber <heber@ins.uni-bonn.de> 16550 Date: Wed Jun 2 16:39:32 2010 +0200 16551 16552 Case '-O' is now handled by CommandLineUI (CenterOnEdgeAction). 16553 16554 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16555 16556 commit 116f37657626f7b5645e891423a19cb605191b28 16557 Author: Frederik Heber <heber@ins.uni-bonn.de> 16558 Date: Wed Jun 2 16:38:07 2010 +0200 16559 16560 Case '-c' is now handled by CommandLineUI. 16561 16562 - BUGFIX: WorldAddEmptyBoundaryAction() - forgot to add boundary on atom translation. 16563 16564 commit accebe8bc59ac265078590b2779dbe11dbaa7e55 16565 Author: Frederik Heber <heber@ins.uni-bonn.de> 16566 Date: Wed Jun 2 16:25:12 2010 +0200 16567 16568 Fix of PrepareClustersInWater (at least it does not stumble over memory issues). 16569 16570 - note: this was just done to make check test Filling/2 work again (which only runs and does not check the output) 16571 - GetBoundaryPoints() - using now left and right to have a good runner even if it is discarded/deleted, flag check when loop is through 16572 - PrepareClustersinWater() - LCList is now a pointer and removed after FindConvexBorder() 16573 - DOCUFIX: Tesselation::RemoveTesselationTriangle() - triangles attached to lines are printed starting on next line, not current 16574 - BUGFIX: Tesselation::FlipBaseline() - as we remove the two connected triangles, the baseline who they are attached to will be deleted and removed, hence the loop over the line's triangles does not work. Now, we first put all into a list, then delete the triangles. 16575 16576 This was the last test to fail. All unit tests (33), all testsuite cases (45) and all tesselation tests (15) work. 16577 16578 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16579 16580 commit 7fd416194cc480b9626bf9368e61666164c47ec7 16581 Author: Frederik Heber <heber@ins.uni-bonn.de> 16582 Date: Wed Jun 2 14:22:47 2010 +0200 16583 16584 FIX: CorrelationToSurface() was broken. 16585 16586 - DOCU: CorrelationToSurface() is more verbose on empty molecules, molecule::doCountAtoms() is verbose on naming atoms only for high verbosity levels 16587 - MEMFIX: ParseCommandLineOptions() - case 'CP' did not set counter to zero for re-setting active flag. 16588 - BUGFIX: molecule::DeterminePeriodicCenter() - InverseMatrix() was called with cell_size instead of full matrix. 16589 - rewritten MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() a bit: 16590 - molname and contained atoms are given 16591 - no more stupid map, atoms are directly transfered from Leaf to molecules[] 16592 - mol that contained all was not destroyed after use 16593 16594 commit 6ef0a48dcb16ec5e06a6051a6f5432a8f9e8f020 16595 Author: Frederik Heber <heber@ins.uni-bonn.de> 16596 Date: Wed Jun 2 14:21:38 2010 +0200 16597 16598 Removed Info objects from the small pointcloud implementation functions in molecule_pointcloud.cpp. 16599 16600 - They made lots of noise for little use. 16601 16602 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16603 16604 commit 992fd78d0cb2f68ddae2cbbc7bf29ef8a4fdc1d8 16605 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16606 Date: Wed Jun 2 14:11:52 2010 +0200 16607 16608 Repaired some QT4 related memory leaks 16609 16610 commit 67c75bd2dd15c9031c4c7a08a824e1a1fd2b47b7 16611 Merge: 82b71ad 190326d 16612 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16613 Date: Wed Jun 2 13:44:00 2010 +0200 16614 16615 Merge branch 'MenuRefactoring' into QT4Refactoring 16616 16617 Conflicts: 16618 16619 molecuilder/src/Makefile.am 16620 molecuilder/src/builder.cpp 16621 molecuilder/src/unittests/Makefile.am 16622 molecuilder/src/vector.cpp 16623 16624 commit 190326dfcdf83119424cbc4a7e16803961408c23 16625 Merge: 9cf88c1 27ac00c 16626 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16627 Date: Wed Jun 2 13:19:27 2010 +0200 16628 16629 Merge branch 'StructureRefactoring' into MenuRefactoring 16630 16631 commit 0c7ed8641ea0c9f19538167d4633515f9dc0bc2e 16632 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16633 Date: Wed Jun 2 13:03:06 2010 +0200 16634 16635 Passed the internal gsl_vector structure from Vector to linearSystemOfEquations. 16636 16637 commit d690faa6ae4fab0442354d2d17cf5b7dd59c0f1e 16638 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16639 Date: Wed Jun 2 12:51:38 2010 +0200 16640 16641 Replaced array inside of Vector with gsl_vector structure. 16642 16643 commit d466f0823884cfb859e6b670d503b847b4f9f716 16644 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16645 Date: Wed Jun 2 12:46:31 2010 +0200 16646 16647 Made the internal parts of Vector use accessor functions instead of direct access 16648 16649 commit 27ac00cfe9f7342b99332c01a04df19c1db85e13 16650 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 16651 Date: Fri May 28 14:44:09 2010 +0200 16652 16653 Made the line-plane intersection method take a line instead of two vectors 16654 16655 commit 98a8b413a5a918be28c8c6dd7fe6fbaf41364d59 16656 Author: Frederik Heber <heber@ins.uni-bonn.de> 16657 Date: Wed Jun 2 10:37:17 2010 +0200 16658 16659 TESTFIX: Analysis/... no more diff of output.csv (nameing dependent) 16660 16661 - bin_output.csv in Analysis/1-2 were false! This was checked against version from commit 075729fddff01a99fa949f619de12b443235cd81. 16662 - As, 62 in the bin of 0.5 is sensible, as there are 31 water molecules with 62 hydrogens, each seeing on oxygen (the one it is bound to) in 0.95 distance 16663 - bin_output.csv are replaced by the ones generated from the above commit (not from the current one) and they perfectly match. 16664 16665 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16666 16667 commit 009607edc36ccb36a9ffaf235b0da1289b350e41 16668 Author: Frederik Heber <heber@ins.uni-bonn.de> 16669 Date: Tue Jun 1 23:36:36 2010 +0200 16670 16671 Small changes to ...Correlation...(). 16672 16673 - Calling doCountAtoms on all molecules before performing correlation calculations in ...Correlation...() 16674 - Output of correlationmap in ParseCommandLineOptions(). 16675 16676 commit d51975159322114aa06fdaf99922a91c0070c4bd 16677 Author: Frederik Heber <heber@ins.uni-bonn.de> 16678 Date: Tue Jun 1 23:36:22 2010 +0200 16679 16680 Small changes to FindConvexBorder(). 16681 16682 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16683 16684 commit e0aee2b0c326989ff24c035a5908461cfca18048 16685 Author: Frederik Heber <heber@ins.uni-bonn.de> 16686 Date: Tue Jun 1 23:04:17 2010 +0200 16687 16688 Bugfix of FillBoxWithMolecule() and Testfix of Filling/1 16689 16690 - BUGFIX: FillBoxWithMolecule() - increased filler in loop instead of iter (and iter is const now) 16691 - FillBoxWithMolecule() - uses now const int FillerCount instead of filler->getAtomCount() 16692 - TESTFIX: Filling/1 - replaced test.conf, as is exactly the same (after filling!) except ordering of initial atoms (of butane), checked visually and by diff. 16693 16694 commit 15b670b004539c99ea55f410a0b9129ca76edf7c 16695 Author: Frederik Heber <heber@ins.uni-bonn.de> 16696 Date: Tue Jun 1 22:25:36 2010 +0200 16697 16698 Testfixes for Tesselations/1-3 and bugfixes for molecule::DetermineCenterOfAll() 16699 16700 - BUGFIX: molecule::DetermineCenterOfAll() - would scale by -1./Num, which is not the right center. 16701 - TESTFIX: Tesselations/1-3 all suffered ... replaced in regression dir. 16702 - (Non)ConvexEnvelope.r3d to be disordered, due to IonType2 appear before IonType1 in test.conf 16703 - (Non)ConvexEnvelope.r3d from test and from regression to differ by 4.4e-16 and 0 (now nodes coordinates are set to 0, if fabs(.) is below MYEPSILON) 16704 - Tesselations/3: NonConvexEnvelope.dat was disorder (but the exactly same tesselation) due to IonType (did not occur for Tesselations/1-2) 16705 16706 commit 0de7e81363c14651e95003837debfa7013ab2edb 16707 Author: Frederik Heber <heber@ins.uni-bonn.de> 16708 Date: Tue Jun 1 21:59:25 2010 +0200 16709 16710 FIX: Test Fragmentation is at MaxOrder was broken. 16711 16712 - BUGFIX: molecule::CheckAdjacencyFileAgainstMolecule() called AtomCount() all the time instead of storing in const integer. 16713 - DOCUFIX: "done"/"failed" is now always indented by hand "\t" for better readability 16714 - DOCUFIX: Improved wordiness of CreateFatherLookupTable(), CheckAdjacencyFileAgainstMolecule_CompareBonds(), molecule::CheckAdjacencyFileAgainstMolecule() 16715 - TESTFIX: Molecules/2 created a dir sdt and movedf all BondFragment*conf* files thereto and counted, what for? 16716 - TESTFIX: Molecules/3 actually made only one fragmentation call. I guess before old stuff was not cleaned up and thus worked. But we need present KeySet and OrderAtSite to recognize MaxOrder! Hence, we now call it twice, first expecting 0, then 2 as return code which marks the correct procedure. 16717 16718 commit acf8008e455ed1851656ff9d81044edf766929e0 16719 Author: Frederik Heber <heber@ins.uni-bonn.de> 16720 Date: Tue Jun 1 10:02:48 2010 +0200 16721 16722 TESTFIX: Wrong (old) ordering of conf files (IonTyp2 before IonType1) causes wrong id's in dbond and adj. 16723 16724 - replaced test.conf, replaced test.dbond and test.adj to correct. 16725 - bonds are ok and have been checked to be correct. 16726 16727 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16728 16729 commit bd6bfac107ab7ca8d1788ff529d3fa4c3a27439f 16730 Author: Frederik Heber <heber@ins.uni-bonn.de> 16731 Date: Tue Jun 1 09:28:15 2010 +0200 16732 16733 Fixes after first,last removal. 16734 16735 - BUGFIX: molecule::OutputGraphInfoPerBond() - had removal loop, not go-through-each-loop. 16736 - BUGFIX: MoleculeListClass::~MoleculeListClass() - did falsely destroy molecules too although this is done by World. 16737 - new function MoleculeListClass::erase() - handles signing off molecule as observer and removes from list. 16738 - FIX: MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() 16739 - all molecules are removed from MoleculeListClass and also from World. 16740 - all bonds are removed, by going through all atoms of World. 16741 - molecule::getAtomCount() - calls doCountAtoms() which re-numbers and -labels atoms. This confused stuff. 16742 - TESTFIX: Molecules/6 and Molecules/7 had wrong (old) ordering in their test.conf 16743 16744 commit 1b93210482401ac84634a9154269150b34017ddf 16745 Author: Frederik Heber <heber@ins.uni-bonn.de> 16746 Date: Mon May 31 21:46:59 2010 +0200 16747 16748 Added missing test.conf.xyz for Domain/6. 16749 16750 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16751 16752 commit e08c46a527abafdd358c8cd066c13f33e9b77ab1 16753 Author: Frederik Heber <heber@ins.uni-bonn.de> 16754 Date: Mon May 31 20:41:12 2010 +0200 16755 16756 Removed molecule::first, molecule::last. 16757 16758 - molecule does not have a chained list of bonds. 16759 - we have to go through atoms and its bonds, by checking (*BondRunner)->leftatom against (*AtomRunner) we exclude the other half. 16760 - first,last were present in only a few structures. 16761 - new functions: 16762 - molecule::hasBondStructure() - replaces first->next != last construct 16763 - molecule::CountBonds() - replaces first->next->next == last (i.e. one bond present) and alikes. 16764 16765 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16766 16767 commit 1024cbc27eef62ed70b770868d078bd3df38ada6 16768 Merge: 42af9ec a7b761b 16769 Author: Frederik Heber <heber@ins.uni-bonn.de> 16770 Date: Mon May 31 19:29:30 2010 +0200 16771 16772 Merge commit 'jupiter/MoleculeStartEndSwitch' into CommandLineActionMapping 16773 16774 Conflicts: 16775 16776 molecuilder/src/Makefile.am 16777 molecuilder/src/builder.cpp 16778 molecuilder/src/config.cpp 16779 molecuilder/src/helpers.hpp 16780 molecuilder/src/molecule.cpp 16781 molecuilder/src/molecule_dynamics.cpp 16782 molecuilder/src/molecule_fragmentation.cpp 16783 molecuilder/src/molecule_geometry.cpp 16784 molecuilder/src/molecule_graph.cpp 16785 molecuilder/src/moleculelist.cpp 16786 molecuilder/src/unittests/AnalysisCorrelationToPointUnitTest.cpp 16787 molecuilder/src/unittests/listofbondsunittest.cpp 16788 16789 Integration of MoleculeStartEndSwitch had the following consequences: 16790 - no more AtomCount -> getAtomCount() 16791 - no more start/end -> begin(), end() and iterator 16792 - no more decent ordering in atomic ids (hence, Simple_configuration/8 and Domain/5, Domain/6 now check by comparing sorted xyz, not confs) 16793 16794 There is still a huge problem with bonds. One test runs into an endless loop. 16795 16796 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16797 16798 commit 42af9ec72d1b004ed85b6db33bdcaeeecd94a23a 16799 Author: Frederik Heber <heber@ins.uni-bonn.de> 16800 Date: Mon May 31 16:27:12 2010 +0200 16801 16802 MEMFIXES: no more default saving/loading of element's db, config::SaveTREMOLO(), molecule::CreateMappingLabelsToConfigSequence() 16803 16804 - ParseCommandLineOptions() - loading element's db only when path was given 16805 - main() - default storing at end removed, should be handled by config::~config() 16806 - config::SaveTREMOLO() - LocalNotoGlobalNoMap is now an STL map, id must not be continuous, so old way is very error-prone 16807 - molecule::CreateMappingLabelsToConfigSequence() - don't delete SortIndex (is done in FragmentMolecule) 16808 - molecule::FragmentMolecule() - dont' delete FragmentList in the block 16809 - testsuite-simple_configuration.at - removing atoms around sphere is not broken anymore, changed testsuite accordingly. 16810 16811 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16812 16813 commit 920c708861f3c5528d44b9973722fa719f892ce0 16814 Author: Frederik Heber <heber@ins.uni-bonn.de> 16815 Date: Mon May 31 15:09:58 2010 +0200 16816 16817 Removed all Malloc/Calloc/ReAlloc (&Free) and replaced by new and delete/delete[]. 16818 16819 Due to the new MemDebug framework there is no need (or even unnecessary/unwanted competition between it and) for the MemoryAllocator and ..UsageObserver anymore. 16820 They can however still be used with c codes such as pcp and alikes. 16821 16822 In Molecuilder lots of glibc corruptions arose and the C-like syntax make it generally harder to get allocation and deallocation straight. 16823 16824 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16825 16826 commit 87b5978573759a5d986895a3ec448a92690612fc 16827 Author: Frederik Heber <heber@ins.uni-bonn.de> 16828 Date: Mon May 31 10:34:52 2010 +0200 16829 16830 TESTFIX: Removed diff of output.csv for surface correlation as this is very tesselation-dependent. 16831 16832 - i.e. it may fail without being wrong just because triangles are in different ordering (same as with comparison of triangles in Tesselations testpart) 16833 16834 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16835 16836 commit 5ddb8a76c0957333ad68a9e64b106326e5855b32 16837 Author: Frederik Heber <heber@ins.uni-bonn.de> 16838 Date: Mon May 31 10:34:09 2010 +0200 16839 16840 Added out-sourced testsuite files to Makefile.am such that they are checked for changes, too. 16841 16842 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 16843 16844 commit 158c594ea323081685d67516e8bc7041f8e453fc 16845 Author: Frederik Heber <heber@ins.uni-bonn.de> 16846 Date: Mon May 31 01:40:04 2010 +0200 16847 16848 Case '-b' now handled by CommandLineUI and fixes. 16849 16850 - ParseCommandLineOptions() - rather use the old code still to check whether appropriate number of arguments present 16851 - bound-in-box is just ensuring all atoms are within current box, i.e. no new box is specified (there is no pendant to that in ParseCommandLineOptions) 16852 - WorldCenterInBox action however has to parse a box, corrected. 16853 16854 commit 2a92ffb38b7c7646235b990f61cd5dc07e6290fd 16855 Author: Frederik Heber <heber@ins.uni-bonn.de> 16856 Date: Mon May 31 01:12:50 2010 +0200 16857 16858 Case '-s' now handled by CommandLineUI. 16859 16860 - FIX: Type Vector has to be ->multitoken() in MapOfActions. 16861 - action scale-box was also missing DesriptonMap entry 16862 16863 commit 6ca1f7793fa2dad297e98f4405497e00f487dc9b 16864 Author: Frederik Heber <heber@ins.uni-bonn.de> 16865 Date: Mon May 31 00:52:33 2010 +0200 16866 16867 case '-B' now handled by CommandLineUI. 16868 16869 commit 26f75a9168a4715bd185c7d52b9736805d848a59 16870 Author: Frederik Heber <heber@ins.uni-bonn.de> 16871 Date: Mon May 31 00:49:13 2010 +0200 16872 16873 FIX: Box was not parsed correctly. 16874 16875 - ListOf... types have to be multitoken() in MapOfActions class. 16876 - BoxQuery::setResult() - had *target[] instead of (*target)[] (priorities of ops) 16877 - change-box, bound-in-box, center-in-box all have ListOfDoubles now 16878 16879 commit 8c574b448e9fad0becd230ba3f007eeeac383aed 16880 Author: Frederik Heber <heber@ins.uni-bonn.de> 16881 Date: Sun May 30 22:55:12 2010 +0200 16882 16883 Split up testsuite into several at-scripts. 16884 16885 - the testsuite has grown quite large due to the numerous new tests and is more readible now. 16886 16887 commit afd01c58a1876a8f3b51eadda0ef2372a5eb92c6 16888 Author: Frederik Heber <heber@ins.uni-bonn.de> 16889 Date: Sun May 30 21:40:32 2010 +0200 16890 16891 Added case '-d' (duplicate box) to testsuite. 16892 16893 commit 746c57f266b68036ce9d31c51dc74a5d2fab1db8 16894 Author: Frederik Heber <heber@ins.uni-bonn.de> 16895 Date: Sun May 30 21:05:43 2010 +0200 16896 16897 Added case '-u' (suspend in water) to testsuite. 16898 16899 - this is broken still and quite so. 16900 16901 commit d6d6c1f0c133722c713970e693c90b090ce669c2 16902 Author: Frederik Heber <heber@ins.uni-bonn.de> 16903 Date: Sun May 30 20:24:05 2010 +0200 16904 16905 Added case '-m' (principal axis system) to testsuite. 16906 16907 commit 8048a4d343c98d242baafca3011e38863181ead3 16908 Author: Frederik Heber <heber@ins.uni-bonn.de> 16909 Date: Sun May 30 19:31:15 2010 +0200 16910 16911 Added case '-s' (scaling box) to testsuite. 16912 16913 commit eddea2f743da55581bef38f6a884adf1edc42937 16914 Author: Frederik Heber <heber@ins.uni-bonn.de> 16915 Date: Sun May 30 19:03:25 2010 +0200 16916 16917 Added case '-T' (periodic translation) to testsuite. 16918 16919 - BUGFIX: Vector::WrapPeriodically() added half of the box on top which is not as intended. 16920 - this broke testcase '-b', which relied on the half of the box adding. 16921 - new function molecule::DetermineCenterOfBox() 16922 - is used instead to additionally add this center in molecule::CenterInBox() 16923 - BUGFIX: molecule::TranslatePeriodically() subtracted vector instead of adding. 16924 16925 commit 5d12d2d5999e6272d2e2354b6cde0d11cccf0c04 16926 Author: Frederik Heber <heber@ins.uni-bonn.de> 16927 Date: Sun May 30 18:55:04 2010 +0200 16928 16929 Added case '-t' (translation) to testsuite. 16930 16931 commit 9b7db1407040d125d217e62995a5301e5038bfd3 16932 Author: Frederik Heber <heber@ins.uni-bonn.de> 16933 Date: Sun May 30 18:51:45 2010 +0200 16934 16935 Added case '-R' (removing atoms outside of sphere) to testsuite. 16936 16937 - basically works, but molecuilder crashes with SIGABT when destroying world. 16938 16939 commit c7a473c7b271cbf7b6e3555547735d4fb61d8f77 16940 Author: Frederik Heber <heber@ins.uni-bonn.de> 16941 Date: Sun May 30 18:09:06 2010 +0200 16942 16943 Added cased '-P' (force integration) to testsuite. 16944 16945 - this is currently not working at all with los of memory corruption, hence testsuite checks for this failure only. 16946 16947 commit f8f14dff3949f34b6f8ef531f3cb3a99aa629c12 16948 Author: Frederik Heber <heber@ins.uni-bonn.de> 16949 Date: Sun May 30 17:37:53 2010 +0200 16950 16951 Added case '-L' (linear interpolation) to testsuite. 16952 16953 - this just calls the function and does not check anyhting, as this is currently not at all working properly. 16954 16955 commit 13bfeb275d19d51dbc53ba9b18ec9c8ceae993df 16956 Author: Frederik Heber <heber@ins.uni-bonn.de> 16957 Date: Sun May 30 17:30:32 2010 +0200 16958 16959 Added case '-S' (storing temperature) to testsuite. 16960 16961 - made three trajectory steps by shifting atoms per step by (0.1,0,0) and giving speed (0.1,0,0) 16962 16963 commit 72e36f72d796c7991497b7d6eb601e376977b8dc 16964 Author: Frederik Heber <heber@ins.uni-bonn.de> 16965 Date: Sun May 30 17:24:29 2010 +0200 16966 16967 Added cases '-j' (storing bonds) and '-J' (storing adjacency) to testsuite. 16968 16969 commit c68c90483054a6450b0cf9cfb7d30fc4333e125b 16970 Author: Frederik Heber <heber@ins.uni-bonn.de> 16971 Date: Sun May 30 17:18:50 2010 +0200 16972 16973 Added case '-A' (parsing bonds) to testsuite. 16974 16975 - ParseCommandLineOptions() - input was not delete'd, is now instantiated directly. 16976 - molecule::CreateAdjacencyListFromDbondFile() was buggy, needed line-by-line parsing via stringstream ro fix. 16977 - bond file has been created by storing bond information. 16978 16979 commit 1325ba2a70cd4c53a15d898817be78a5d79deb8a 16980 Author: Frederik Heber <heber@ins.uni-bonn.de> 16981 Date: Sun May 30 16:46:39 2010 +0200 16982 16983 Added case '-F' (filling with molecule) to testsuite. 16984 16985 commit 5e11e475d9ec76d0b6a2f8a1f765cdafef0a17fe 16986 Author: Frederik Heber <heber@ins.uni-bonn.de> 16987 Date: Sun May 30 16:45:50 2010 +0200 16988 16989 In-code created water molecule has been removed in ParseCommandLineOptions() - case 'F'. 16990 16991 Water can really be obtained anywhere (at least its coordinates). 16992 16993 commit ef2b39795daace9d596f4ac75173cba4e7a59e07 16994 Author: Frederik Heber <heber@ins.uni-bonn.de> 16995 Date: Sun May 30 15:58:31 2010 +0200 16996 16997 Added case '-C S' (correlation to surface) to testsuite. 16998 16999 - created test.conf with a butane surrounded by 205 water molecules. 17000 17001 commit 08f6ff74de126d266b8c8b83e1a528520ef6447c 17002 Author: Frederik Heber <heber@ins.uni-bonn.de> 17003 Date: Sun May 30 15:42:26 2010 +0200 17004 17005 Added case '-C P' (correlation to point) to testsuite. 17006 17007 - DOCUFIX: Same as above also for this part. 17008 17009 commit 06f8ee2cd45a117a11b0b58435dfe842c76dbcc7 17010 Author: Frederik Heber <heber@ins.uni-bonn.de> 17011 Date: Sun May 30 14:27:08 2010 +0200 17012 17013 Added case '-C E' (pair correlation analysis) to testsuite. 17014 17015 - DOCUFIX: ParseCommandLineOptions() - lacked parameters binstart and binend on error description 17016 - FIX: test.conf for regression test was not centered to (20, 0, 20, 0, 0, 20)-box 17017 17018 commit 046a1e94c023e06f7a7ca03a07a7ad4ccb14fa10 17019 Author: Frederik Heber <heber@ins.uni-bonn.de> 17020 Date: Sun May 30 13:51:28 2010 +0200 17021 17022 Added case '-I' (subgraph dissection) to testsuite. 17023 17024 - constructed example with 31 water molecules which are to be dissected. 17025 17026 commit 5188f5195ea3fe98810ef55e431af37da97c2a31 17027 Author: Frederik Heber <heber@ins.uni-bonn.de> 17028 Date: Sun May 30 13:31:10 2010 +0200 17029 17030 Added case '-M' (MPQC basis) to testsuite. 17031 17032 - ParseCommandLineOptions() - moved case 'M' to area, where no present config is needed (just sets a string after all) 17033 - DOCUFIX: Error message for case 'M' would say -B instead of -M 17034 17035 commit 93d732be93a6b37406163b3a4e71ccf9f75741ba 17036 Author: Frederik Heber <heber@ins.uni-bonn.de> 17037 Date: Sun May 30 13:05:54 2010 +0200 17038 17039 Added case '-X' (default mol name) to testsuite and bugfix. 17040 17041 - rewrote World::SetDefaultName() a bit to make memory allocation more fail-proof 17042 - BUGFIX: ParseCommandLineOptions() used getDefaultName() with a *, hence only the first character was printed. 17043 17044 commit e8e48ab6455f4577a906de8472a0a43c10e27f4c 17045 Author: Frederik Heber <heber@ins.uni-bonn.de> 17046 Date: Sun May 30 12:57:14 2010 +0200 17047 17048 Added case '-n' (fast parsing) to testsuite. 17049 17050 commit 403637277d7c37d5622eb4c88b966a4c0f40108a 17051 Author: Frederik Heber <heber@ins.uni-bonn.de> 17052 Date: Sun May 30 12:56:08 2010 +0200 17053 17054 Added case '-g' (load bond table) to testsuite. 17055 17056 commit ff73a278ed6aab371dc050b0b8eece6637145589 17057 Author: Frederik Heber <heber@ins.uni-bonn.de> 17058 Date: Sun May 30 12:53:16 2010 +0200 17059 17060 Refined check for case '-e' of testsuite and some found bugfixes of periodentafel loading. 17061 17062 - LoadPeriodentafel() gives always a properly allocated istream, hence checking for NULL in all Load..Database() is nonsense, checking for fail() is needed. 17063 - LoadElementsDatabase() 17064 - counts the number of parsed elements (returns false when zero) 17065 - discards empty lines (elements that dont' make sense) 17066 17067 commit 2f0c427f05cd991c397883e37e6c66062634ba5f 17068 Author: Frederik Heber <heber@ins.uni-bonn.de> 17069 Date: Sun May 30 12:00:41 2010 +0200 17070 17071 Added test for parsing specified element database to testsuite. 17072 17073 commit a97f55878bc66c3c8475e3c3d6feefcbe3478eff 17074 Author: Frederik Heber <heber@ins.uni-bonn.de> 17075 Date: Sun May 30 11:54:26 2010 +0200 17076 17077 Extended standard options part of testsuite to include further tests. 17078 17079 commit 745874088f9b5e6fda5ef4e8ae0793f1c9c6a9de 17080 Author: Frederik Heber <heber@ins.uni-bonn.de> 17081 Date: Sun May 30 11:49:37 2010 +0200 17082 17083 Added case '-O' to testsuite. 17084 17085 commit 8df4e3beb4f36ea13856fd0578c1d6a96aa0156c 17086 Author: Frederik Heber <heber@ins.uni-bonn.de> 17087 Date: Sun May 30 11:46:13 2010 +0200 17088 17089 Removed src/Actions from subdirs as this is handled in src/Makefile.am already. 17090 17091 - this broke 'make distclean' as distclean was executed twice in src/Actions and Makefile was thus missing on second run. 17092 17093 commit 0335a28413a0412462fc56a5d6b6fd870f0c6146 17094 Author: Frederik Heber <heber@ins.uni-bonn.de> 17095 Date: Sun May 30 11:45:41 2010 +0200 17096 17097 Added case '-c' to testsuite. 17098 17099 commit 318cea7c681aa1b7cad2c3f8eb67b410c41fe1ea 17100 Author: Frederik Heber <heber@ins.uni-bonn.de> 17101 Date: Sun May 30 11:21:01 2010 +0200 17102 17103 FIX: Tesselations test failed on first. 17104 17105 - defs.in would go into first testdir and perform all tests therein instead of own testdir per molecule to tesselate, fixed. 17106 17107 commit b2b47f735d9af7a5b6d1967e4cb3c041f3959512 17108 Author: Frederik Heber <heber@ins.uni-bonn.de> 17109 Date: Sun May 30 11:18:14 2010 +0200 17110 17111 Shifted regression testsuite into folder regression. 17112 17113 This is to allow for calling make check only on the regression testsuite without Tesselations test, too. 17114 - atlocal.in, molecuilder.in, Makefile.am were moved 17115 - molecuilder.in had ../../atconfig now sourced and call of molecuilder is different 17116 - configure.src has TEST_DIR tests/regression (to create atconfig at the right place) 17117 - Makefile.am in tests folder just SUBDIRs to regression and Tesselations 17118 17119 commit e3989ae15496fb502928eef192b39ea83fe71dbc 17120 Author: Frederik Heber <heber@ins.uni-bonn.de> 17121 Date: Sat May 29 20:57:36 2010 +0200 17122 17123 Added case '-b' to testsuite. 17124 17125 commit c827202aa2e314c8cd2fb20e7cb636483025addc 17126 Author: Frederik Heber <heber@ins.uni-bonn.de> 17127 Date: Sat May 29 20:29:33 2010 +0200 17128 17129 Added case '-B' to testsuite. 17130 17131 - added new set of tests 'Domain' 17132 17133 commit d8c0edb40a1eb91db8b50b37f1515e671fca963f 17134 Merge: 62680ec f37746b 17135 Author: Frederik Heber <heber@ins.uni-bonn.de> 17136 Date: Sat May 29 17:13:36 2010 +0200 17137 17138 Merge branch 'FixTestsuiteDetermineCenterOfAllBug' into CommandLineActionMapping 17139 17140 commit f37746b3594740cf70d4b40cfba179f483b06139 17141 Author: Frederik Heber <heber@ins.uni-bonn.de> 17142 Date: Sat May 29 17:11:06 2010 +0200 17143 17144 FIX: As molecule::DetermineCenterOfAll() was broken, centers used in .r3d files were wrong. 17145 17146 - All .r3d files in the regression tests have been replaced with those with correct center calculation. 17147 17148 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17149 17150 commit 62680ec4fe7be04b13dec92780c0774fe489775b 17151 Merge: 9757d99 99fcafa 17152 Author: Frederik Heber <heber@ins.uni-bonn.de> 17153 Date: Sat May 29 16:18:41 2010 +0200 17154 17155 Merge branch 'FixReintroduceExitFlagtoParseCommandLineCall' into CommandLineActionMapping 17156 17157 Conflicts: 17158 17159 molecuilder/src/builder.cpp 17160 17161 Due to this old merge, at the end of main() there were still old memory cleanup routines which got mixed in again. 17162 17163 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17164 17165 commit 99fcafa9e68ebff1a10d32cc5cb21cccebb6350f 17166 Author: Frederik Heber <heber@ins.uni-bonn.de> 17167 Date: Sat May 29 16:10:24 2010 +0200 17168 17169 FIX: Flag returned by ParseCommandLineOptions() needs to be heeded, e.g. for FragmentMolecule(). 17170 17171 - now, there is again an ExitFlag and if {0,1} we return 0 and else the ExitFlag on exit. 17172 17173 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17174 17175 commit 9757d99965979a40ce365519c2cb709297772849 17176 Merge: b13ea48 60f50af 17177 Author: Frederik Heber <heber@ins.uni-bonn.de> 17178 Date: Sat May 29 16:00:12 2010 +0200 17179 17180 Merge branch 'FixTestsuiteCode134onElementsDB' into CommandLineActionMapping 17181 17182 commit b13ea48e067db1fc970a347074f5df706a4ec190 17183 Merge: 0fb9f62 6670a97 17184 Author: Frederik Heber <heber@ins.uni-bonn.de> 17185 Date: Sat May 29 16:00:08 2010 +0200 17186 17187 Merge branch 'FixtestsuiteforVerboseChanges' into CommandLineActionMapping 17188 17189 commit 6670a97b53114ec805580d45caaa85f9b2b8731e 17190 Author: Frederik Heber <heber@ins.uni-bonn.de> 17191 Date: Sat May 29 15:16:55 2010 +0200 17192 17193 Change to testsuite as verbosity is now defined as (-v 3) not as (-vvv) anymore. 17194 17195 - MapofActions.cpp: verbose and version shortforms were mixed (-v,-V), corrected. 17196 17197 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17198 17199 commit 60f50af51620d85b7bb4c37d9d46626c8d561e24 17200 Author: Frederik Heber <heber@ins.uni-bonn.de> 17201 Date: Sat May 29 15:24:29 2010 +0200 17202 17203 TESTFIX: Testuite expected return code 134 instead of 255 for wrong element's db. 17204 17205 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17206 17207 commit 0fb9f623c5aff409731c2b2cb3a7b97ccb5a6812 17208 Author: Frederik Heber <heber@ins.uni-bonn.de> 17209 Date: Sat May 29 15:11:22 2010 +0200 17210 17211 Fixes to prevent seg'faults. 17212 17213 - CommandLineWindow::~CommandLineWindow() - does not unregister and delete all actions as this is done by the ActionRegistry anyway 17214 - main() - use atexit(cleanUp) (by Till) to ensure correct order of the cleanup 17215 - performCriticalExit() - don't free still allocated memory as this is handled by any good operation system nowadays 17216 17217 commit b32dbbf2ada08a37282007f3e8fe996602fb6e14 17218 Author: Frederik Heber <heber@ins.uni-bonn.de> 17219 Date: Thu May 27 13:04:42 2010 +0200 17220 17221 Fixes and changes to tesselation and concavity measurements. 17222 17223 Here, we implement two attempts for a concavity measure: 17224 1. Measure concavity per point by looking at neighbouring triangles 17225 - BoundaryLineSet::CheckConvexityCriterion() split up (calculation of angle outsourced to CalculateConvexity()) 17226 - CHANGE: CalculateConcavityPerBoundaryPoint() uses new concavity measure per BoundaryPointSet containing: 17227 - concavity per line uses angle instead of +/-1 for line, averaged by number of lines 17228 - also concavity over all attached triangles uses area of triangle and only in case of concavity, averaged by total area 17229 - new functions 17230 - BoundaryLineSet::CalculateConvexity() - calculates the angle between two triangles. 17231 - BoundaryLineSet::GetOtherTriangle() - for a closed line returns the other triangle for a given one 17232 - BoundaryTriangleSet::GetThirdLine() - for a given boundary point returns the line of the three which does not contain it (opposite line to a point) 17233 - CalculateAreaofGeneralTriangle() - calculates area of arbitrary triangle 17234 17235 2. Measure concavity by the distance to a more convex envelope (i.e. created with bigger sphere radius) 17236 - ParseCommandLineOptions(): case 'N' - two envelopes are created and the distance used as concavity measure via CalculateConstrictionPerBoundaryPoint() 17237 - FIX: CandidateForTesselation::CheckValidity() - checked against OptCenter instead of (*VRunner), animate_sphere line is printed as error, hence always visible 17238 - FIX: Tesselation::FindThirdPointForTesselation() - error if circumcenter is not the equidistant from each triangle node is now an error mesage 17239 - BUGFIX: Tesselation::RemoveDegeneratedTriangles() - would fail for more than two degenerate triangles to remove due to faulty loop construction and break instead of continue 17240 - BUGFIX: GetCenterofCircumcircle() - is numerically unstable (>1e-10) for big sphere radii, there are two other variants, not using angles. 17241 - FindNonConvexBorder() - RemoveDegeneratedTriangles() commented-out as runs into infinite loop for small radii (<5) for L-shaped cluster 17242 17243 Other unrelated stuff: 17244 - DOCUFIX: CalculateVolumeofGeneralTetraeder() - four times "first vector" 17245 - FIX: Tesselation::FindAllDegeneratedTriangles() - iterator integrated into for-loop statement 17246 17247 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17248 17249 commit 55898585945a37bf6084730eeeafcd2047d6a8f8 17250 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17251 Date: Fri May 28 13:50:14 2010 +0200 17252 17253 Added methods to construct orthogonal planes from lines and vice versa 17254 17255 commit ccf826e812f27853833b1b3f0938dcdcf4675568 17256 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17257 Date: Fri May 28 13:41:08 2010 +0200 17258 17259 Removed Vector::mirror() in favour of Plane::mirror() 17260 17261 commit 42a101a868efe57386bf87ed2524b862729e936a 17262 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17263 Date: Fri May 28 10:25:27 2010 +0200 17264 17265 Removed RotateVector() function in favor of Line::rotateVector() method. 17266 17267 Line::rotateVector() is able to rotate any vector around any line in space. 17268 17269 commit 643e7632e285a017dfb1b785b9f930ba145de897 17270 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17271 Date: Thu May 27 16:24:34 2010 +0200 17272 17273 Removed getIntersectionOfTwoLinesOnPlane() in favor of the Line::getIntersection() method. 17274 17275 commit 45ef76d8bee7dfcd142bef7a7cea8b1bc62fbafd 17276 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17277 Date: Thu May 27 16:15:57 2010 +0200 17278 17279 Added several methods to the line class. 17280 17281 commit 47191b1ae27caa0201c747b3e4ef4f867251bd9d 17282 Merge: 215df0b 1ac51b4 17283 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17284 Date: Thu May 27 13:28:58 2010 +0200 17285 17286 Merge branch 'PeriodenRefactoring' into StructureRefactoring 17287 17288 commit 215df0bc95301e8d9ef7ed1a4816b6367f8dc1b4 17289 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17290 Date: Thu May 27 13:28:37 2010 +0200 17291 17292 Simplified some methods. 17293 17294 commit a7b761bc6e1b696b9f7a380da8984083300d3d7b 17295 Merge: 8f215dc 05a97c1 17296 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17297 Date: Thu May 27 12:46:54 2010 +0200 17298 17299 Merge branch 'MoleculeStartEndSwitch' into StructureRefactoring 17300 17301 Conflicts: 17302 17303 molecuilder/src/Helpers/Assert.cpp 17304 molecuilder/src/Helpers/Assert.hpp 17305 molecuilder/src/Legacy/oldmenu.cpp 17306 molecuilder/src/Makefile.am 17307 molecuilder/src/Patterns/Cacheable.hpp 17308 molecuilder/src/Patterns/Observer.cpp 17309 molecuilder/src/Patterns/Observer.hpp 17310 molecuilder/src/analysis_correlation.cpp 17311 molecuilder/src/boundary.cpp 17312 molecuilder/src/builder.cpp 17313 molecuilder/src/config.cpp 17314 molecuilder/src/helpers.hpp 17315 molecuilder/src/molecule.cpp 17316 molecuilder/src/molecule.hpp 17317 molecuilder/src/molecule_dynamics.cpp 17318 molecuilder/src/molecule_fragmentation.cpp 17319 molecuilder/src/molecule_geometry.cpp 17320 molecuilder/src/molecule_graph.cpp 17321 molecuilder/src/moleculelist.cpp 17322 molecuilder/src/tesselation.cpp 17323 molecuilder/src/unittests/AnalysisCorrelationToSurfaceUnitTest.cpp 17324 molecuilder/src/unittests/ObserverTest.cpp 17325 molecuilder/src/unittests/ObserverTest.hpp 17326 17327 commit bfd839afaa19cf687475c7163024108135b3d1ce 17328 Author: Frederik Heber <heber@ins.uni-bonn.de> 17329 Date: Thu May 27 11:17:11 2010 +0200 17330 17331 Changed and added counting of hydrogen bonds to menu. 17332 17333 - CountHydrogenBonds() now receives two interface elements. This was needed to overcome double-couting in CSH-experiments. 17334 - Unit test CountHBonds has been changed accordingly, but not test for the new feature has been added. 17335 - case 'H' in builder.cpp is now used for counting hydrogen bonds not for giving help screen 17336 - option has been added to MeasureAtoms() menu 17337 17338 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17339 17340 commit 1ac51b41d9e008b83bb1c5e147817fbfb179f6d1 17341 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17342 Date: Fri May 21 12:23:40 2010 +0200 17343 17344 Made the construction of the names of database files simpler 17345 17346 commit 8f215dce65749c25388ebef18067edea4650186a 17347 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17348 Date: Fri May 21 12:08:40 2010 +0200 17349 17350 Simplified tesselation.cpp by allowing direct access to derived triangle internals 17351 17352 commit f2f4ae653593ee7da86b543fbbb0de89955e6797 17353 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17354 Date: Thu May 20 18:12:03 2010 +0200 17355 17356 Made the memory debugger thread safe 17357 17358 commit 93dfc7b133daaec4158cbde03034fcda54d7f1b6 17359 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17360 Date: Thu May 20 17:57:02 2010 +0200 17361 17362 Made the delete handle deletion of NULL pointers more gracefully 17363 17364 commit d4c9ae30e4ca0690c71556dd2dc87a2d3a54a18b 17365 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17366 Date: Thu May 20 17:51:14 2010 +0200 17367 17368 Removed the DistanceToPlane method in the Vector class in favor of a method that computes the distance to arbitrary spaces 17369 17370 commit 570228002c9c11af2f39436798c605553bace8bb 17371 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17372 Date: Thu May 20 15:42:43 2010 +0200 17373 17374 Made it possible to disable the MemoryTracker using Compileflags 17375 17376 commit 8de375a10c8076bafe565e2807dd494420ff8f2f 17377 Merge: eff648e bab12a0 17378 Author: Frederik Heber <heber@ins.uni-bonn.de> 17379 Date: Wed May 19 20:45:23 2010 +0200 17380 17381 Merge branch 'StructureRefactoring' into CommandLineActionMapping 17382 17383 Conflicts: 17384 molecuilder/src/atom_particleinfo.cpp 17385 molecuilder/src/builder.cpp 17386 17387 The following conflicts were solved: 17388 - in atom_particleinfo constructor the bugfix could not be merged automatically 17389 - in builder.cpp at the end of main() cleanup and memory:getstate() were still present. 17390 17391 commit eff648ea6c40f6b6387a20155b52c998f6b8b8a3 17392 Author: Frederik Heber <heber@ins.uni-bonn.de> 17393 Date: Wed May 19 20:41:05 2010 +0200 17394 17395 BUGFIX: In ParseCommandLineOptions() -v and -V were mixed. 17396 17397 - execution was interrupted for -v (verbose) instead of -V (version) 17398 17399 commit bab12a0d45377cc2d9b3ced24da38260bf5153bd 17400 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17401 Date: Wed May 19 16:03:42 2010 +0200 17402 17403 FIX: Fix of bug introduced during Vector Refactoring 17404 17405 Testsuite now working again 17406 17407 commit 673c7f581ef700fbed50d573fc0eb6126c06cb19 17408 Author: Frederik Heber <heber@ins.uni-bonn.de> 17409 Date: Tue May 18 17:58:58 2010 +0200 17410 17411 BUGFIX: molecule::DetermineCenterOfAll() was broken for single atom. 17412 17413 - in case of single atom center would be (nan, nan, nan) due to wrong list treatment. 17414 17415 commit 4eb4fe704b5f87bedd7f4eec06861f2f98bff9df 17416 Author: Frederik Heber <heber@ins.uni-bonn.de> 17417 Date: Tue May 18 17:20:52 2010 +0200 17418 17419 "-e <db path>" not necessary anymore. 17420 17421 Removed necessity of specifying path to databases (this was one check of molecuilder/test/testsuite.at which cannot be fulfilled anymore with boost::program_options) 17422 For this to work a great number of small changes have been necessary: 17423 17424 class periodentafel: 17425 - all .db files merged into const char * arrays in elements_db.cpp 17426 - periodentafel rewritten: 17427 - each database has its own function and uses a istream: LoadElementsDatabase(), LoadValenceDatabase(), LoadOrbitalsDatabase(), LoadHBondAngleDatabase(), LoadHBondLengthsDatabase() 17428 - constructor periodentafel::LoadPeriodentafel() calls each function on the above const char * arrays 17429 - it is still possible to call LoadPeriodentafel with an external path. 17430 - FindElement(), AskElement() and EnterElement return element * const instead of const element * (i.e. the contents of the pointer is const (the element) not the pointer itself which is very vexatious (i.e. FindElement() yields const element * which can subsequently not be used for RemoveElement(), ...) 17431 - parsedElems is not needed anymore. Instead we operate on map elements directly 17432 - new unittest periodentafelTest which is made friend of periodentafel to be able to access private loading functions directly 17433 17434 A number of unit tests had to be changed (all that create elements during setUp() which is now unnecessary) 17435 - element creation removed: AnalysisCorrelationToPointUnitTest, AnalysisCorrelationToSurfaceUnitTest, AnalysisPairCorrelationUnitTest, CountBondsTest, LinkedCellTest, ParserUnitTest, AnalysisBondsTest, BondGraphTest, ListOfBondsTest 17436 - adapted parsed bond table (carbon is no Z=6 not 2): AnalysisBondsTest, BondGraphTest 17437 17438 Some of the analysis_bonds function's signatures were changed in the process: 17439 - have const element * instead of element *: MinMeanMaxBondDistanceBetweenElements(), CountHydrogenBridgeBonds() 17440 17441 Finally, the respective tests are removed from molecuilder/tests/testsuite.at. 17442 17443 commit 5079a05ba5b3e06c57bfc08de15dc8d8b7709ce8 17444 Author: Frederik Heber <heber@ins.uni-bonn.de> 17445 Date: Tue May 18 17:18:24 2010 +0200 17446 17447 Actions put into libMolecuilderActions, UIElements into libMolecuilderUI 17448 17449 - due to great number of Actions it is sensible to put them into their own library 17450 - this is advantageous overall, but right now especially as all the unit tests do not depend on this lib. 17451 - it was also needed as Actions depend on UIElements and to resolve to correct ordering, UIElements have to be available before the libMolecuilderActions is aded (if compiled into libmolecuilder it is appended after!) 17452 17453 commit 2a5eb766139b7fca18d10b77fc10658f94bc8b6b 17454 Author: Frederik Heber <heber@ins.uni-bonn.de> 17455 Date: Mon May 17 19:32:33 2010 +0200 17456 17457 TESTFIX: Changed return code on wrong arguments from 255 to 134. 17458 17459 - boost::program_options returns 134, not 255 in case of invalid arguments. 17460 17461 commit f65e1fecf1431cd336fb21966248bbb25b4aa5fc 17462 Author: Frederik Heber <heber@ins.uni-bonn.de> 17463 Date: Mon May 17 19:31:35 2010 +0200 17464 17465 FIX: list of arguments passed to ParseCommandLineOptions() should be unique. 17466 17467 - converted list<> to set<> such that argument counters are unique. 17468 17469 commit a779764488e271567f195eef285c14446c560663 17470 Author: Frederik Heber <heber@ins.uni-bonn.de> 17471 Date: Mon May 17 19:31:00 2010 +0200 17472 17473 TESTFIX: testsuite looks for a very specific help message. 17474 17475 - changed message in MapOfActions for Action help to this message. 17476 17477 commit daa714c145cf3d58c83832bb88aec6d5e7fe68a9 17478 Merge: f941b14 4917cc4 17479 Author: Frederik Heber <heber@ins.uni-bonn.de> 17480 Date: Sun May 16 14:06:42 2010 +0200 17481 17482 Merge remote branch 'bespin/CommandLineActionMapping' into CommandLineActionMapping 17483 17484 commit f941b14c7a92d23575eccdfcd7bbb7ef127d1bad 17485 Merge: 97ebf8b 12872df 17486 Author: Frederik Heber <heber@ins.uni-bonn.de> 17487 Date: Sun May 16 00:14:44 2010 +0200 17488 17489 Merge branch 'FixTesselationTestDiff' into CommandLineActionMapping 17490 17491 commit 12872df33639e521d4b0225d6064ea91bd4f18e8 17492 Author: Frederik Heber <heber@ins.uni-bonn.de> 17493 Date: Sun May 16 00:11:50 2010 +0200 17494 17495 FIX: Don't compare tesselation files directly but rather sorted list of triangle nodes. 17496 17497 - As the order of the triangle's creation is not fixed (unknown why), the order of the triangle nodes in the tesselation files is not fixed. 17498 - Hence, checking by diff'ing whether it's the same as the reference is not sensible. 17499 - Now, we pick out the triangle nodes, sort them and compare against reference. 17500 17501 commit 97ebf8b2670d891c06f34ede7594c6708e07d886 17502 Author: Frederik Heber <heber@ins.uni-bonn.de> 17503 Date: Fri May 14 22:14:27 2010 +0200 17504 17505 Added all commands defined in ParseCommandLineOptions() as Actions. 17506 17507 - Actions are not yet used, except verbose, version and help. 17508 - Files are present and included in Makefile.am 17509 - not unit tests written so far 17510 - no action has been tested so far (except for MapOfActions) 17511 - structure introduced to to transition from ParseCommandLineOptions to actions. 17512 - program name and config file are fixed arguments. 17513 17514 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17515 17516 commit 498c519f5f85d12aba5dc98b7adde3d2c7f45c5b 17517 Merge: 50dfdae cee0a17 17518 Author: Frederik Heber <heber@ins.uni-bonn.de> 17519 Date: Fri May 14 21:57:06 2010 +0200 17520 17521 Merge remote branch 'bespin/FixTestRunnerClient' into CommandLineActionMapping 17522 17523 commit 4917cc47b998f048c7f61a1a4ba94748ca92aad2 17524 Merge: 50dfdae cee0a17 17525 Author: Frederik Heber <heber@ins.uni-bonn.de> 17526 Date: Fri May 14 21:55:36 2010 +0200 17527 17528 Merge branch 'FixTestRunnerClient' into CommandLineActionMapping 17529 17530 commit cee0a17a1e62832f65ac6bb6775b3263ef3122d0 17531 Author: Frederik Heber <heber@ins.uni-bonn.de> 17532 Date: Fri May 14 21:53:36 2010 +0200 17533 17534 FIX: TestRunner is broken when TestRunnerClient.[h|cpp] can not be found. 17535 17536 - config.h is included (has define HAVE_ECUT) 17537 - UnitTestMain.cpp is included if HAVE_ECUT is not set 17538 17539 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17540 17541 commit de8e451f9ad5eaab2568025e291c290ca4ec1ddd 17542 Author: Frederik Heber <heber@ins.uni-bonn.de> 17543 Date: Wed May 12 11:47:20 2010 +0200 17544 17545 Added explanation to various UIElements. 17546 17547 - documentation in CommandLineParser.hpp on how to create new actions to appear by doxygen documentation. 17548 - explaination of UIFactory, Dialog and Query. 17549 17550 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17551 17552 commit 50dfdae6d8f0ccc9165dcc2f73a1adcd35dd66e1 17553 Author: Frederik Heber <heber@ins.uni-bonn.de> 17554 Date: Sun May 9 14:00:08 2010 +0200 17555 17556 Added VersionAction. 17557 17558 - new CmdAction/VersionAction that prints the ESPACKVERSION using EmptyQuery. 17559 - in CommandLineWindow populater functions for all Action types have been added. 17560 17561 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17562 17563 commit 86466e070d1b66f70981d199068ca4eb345320b0 17564 Author: Frederik Heber <heber@ins.uni-bonn.de> 17565 Date: Sun May 9 13:15:17 2010 +0200 17566 17567 new query class EmptyQuery for showing text messages. 17568 17569 - new class in Dialog EmptyQuery and function queryEmpty to install and register 17570 - specializations added to Text and CommandLine UI 17571 - new class EmptyTextQuery that prints "title:description" to console 17572 - new class EmptyCommandLineQuery that prints "title:description" to console 17573 - FIX: CommandLineDialog was so far lacking the added _description parameter 17574 - FIX: CommandLineUIFactory::makeDialog() was returning NULL instead of available new CommandLineDialog 17575 - HelpAction now uses EmptyQuery to show the help message 17576 17577 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17578 17579 commit 148d8f042c90bf58b016bf5fd1feec9a2b925406 17580 Author: Frederik Heber <heber@ins.uni-bonn.de> 17581 Date: Sun May 9 00:59:14 2010 +0200 17582 17583 FIX: cleanup() still deleted configuration although is part of the World now. 17584 17585 - note: HelpAction is working! (i.e. molecuilder -h, or molecuilder --help prints help and exits) 17586 17587 commit bcd0729d739a3d164c82e6ae9c756aeca8ec236a 17588 Author: Frederik Heber <heber@ins.uni-bonn.de> 17589 Date: Sun May 9 00:57:18 2010 +0200 17590 17591 FIX: wrong use of Singleton pattern for CommandLineParser. 17592 17593 - we set _may_create to false, which is only needed for Factories. 17594 - if we set to true, then we have to make constructor and destructor private and introduce the Singleton<> as friend. 17595 - BUGFIX: setOptions() was called with internal argc,argv instead of given parameters in CommandLineParser::Run(). 17596 17597 commit d90762f553a3a92fdd57a313cd732767d945cc01 17598 Author: Frederik Heber <heber@ins.uni-bonn.de> 17599 Date: Sun May 9 00:52:19 2010 +0200 17600 17601 Rewrote all CommandLineDialog's Query... to use the prorgam_options::vm. 17602 17603 - we scan for the given title of the Query in program_options::vm and return the value. 17604 - in case of molecule we use MoleculeIdDescriptor. 17605 - in case of vector, new vector is created and components initialized from vector<double> 17606 - in case of element we use Periodetafel::FindElement() 17607 17608 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17609 17610 commit 4380afb3a800522b34cadb57cb8428e36bee274f 17611 Author: Frederik Heber <heber@ins.uni-bonn.de> 17612 Date: Sun May 9 00:51:22 2010 +0200 17613 17614 CommandLineWindow::display() goes through all Actions in ActionRegistry. 17615 17616 - we check whether title of Action can be found in program_options::vm and if so, execute Action. 17617 17618 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17619 17620 commit e3ecc1abd0ddd62a2dfc2aa75739cd9a03141338 17621 Author: Frederik Heber <heber@ins.uni-bonn.de> 17622 Date: Sun May 9 00:00:57 2010 +0200 17623 17624 New HelpAction that will print the help from boost::program_options. 17625 17626 - new class CommandLineHelpAction that will print the boost::program_options help 17627 - therefore CommandLineParser::visible had to be made public 17628 - CommandLineHelpAction is instantiated in CommandLineWindow::populateParserActions() 17629 17630 commit fa56f00d317e981e0d73607b8a0861b1088fd307 17631 Author: Frederik Heber <heber@ins.uni-bonn.de> 17632 Date: Sun May 9 00:00:16 2010 +0200 17633 17634 ActionRegistry now is iterable due to new functons getBeginIter() and getEndIter(). 17635 17636 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17637 17638 commit 808fd3b9b29a086418d64f85da19ca7f14e55a0f 17639 Author: Frederik Heber <heber@ins.uni-bonn.de> 17640 Date: Sun May 9 00:00:03 2010 +0200 17641 17642 performUndo/Redo were missing for ParserLoadXyzAction and ParserSaveXyzAction, added stubs. 17643 17644 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17645 17646 commit d893f79361685f6c7211b58647e4225285583faa 17647 Author: Frederik Heber <heber@ins.uni-bonn.de> 17648 Date: Sat May 8 23:59:27 2010 +0200 17649 17650 removed menuPopulaters from MainWindow. 17651 17652 - menuPopulaters is too specific to TextUIFactory. 17653 - for CommandLineUIFactory a different structure was needed. 17654 - the shift of struct menuPopulaters inside of class MainWindow makes it superflous. 17655 17656 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17657 17658 commit 8e1f7afc1ebe0013bd96a58b79957fdade051cb8 17659 Author: Frederik Heber <heber@ins.uni-bonn.de> 17660 Date: Sat May 8 22:30:27 2010 +0200 17661 17662 class config added to World. 17663 17664 - World now has the global configuration. 17665 - new function World::getConfig(). 17666 - TextWindow::TextWindow() uses thr above to obtain the configuration. 17667 17668 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17669 17670 commit 4a75d9fe88b150cd8a65bf75e04c21f37e355b28 17671 Author: Frederik Heber <heber@ins.uni-bonn.de> 17672 Date: Sat May 8 22:14:04 2010 +0200 17673 17674 ...UIFactory::makeMainWindow() now has only a single parameter, namely menuPopulaters. 17675 17676 - as molecules and periodentafel can be accessed globally from singleton World, there is no need to pass these around anymore. 17677 - typedef MenuMaker and populateEditMoleculesMenu() equally stripped. 17678 17679 commit ecb799f93fbb2fa0d7303a32021e627c4640f375 17680 Author: Frederik Heber <heber@ins.uni-bonn.de> 17681 Date: Sat May 8 22:06:45 2010 +0200 17682 17683 shortened NAME of ParserLoadXyz and ParserSaveXyz actions, as it is the key in the ActionRegistry. 17684 17685 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17686 17687 commit c6efc1bebb2dfa54bcc55b4be6a63f1b8b1eb9d2 17688 Author: Frederik Heber <heber@ins.uni-bonn.de> 17689 Date: Sat May 8 20:40:49 2010 +0200 17690 17691 Begin of Refactoring of ParseCommandLineOptions(). 17692 17693 - new singleton class CommandLineParser which wraps boost's program_options 17694 - main() uses the new CommandLineParser and calls UIFactory with CommandLine specizliation if commands detected. 17695 - files added toe Makefile.am 17696 - BOOST_PROGRAM_OPTIONS added to configure.ac 17697 - BOOST_PROGRAM_OPTIONS_LIB added to molecuilder/src/Makefile.am 17698 17699 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17700 17701 commit 18eecfae17fd836c83b37d4b2f283254e413cadc 17702 Author: Frederik Heber <heber@ins.uni-bonn.de> 17703 Date: Sat May 8 20:39:10 2010 +0200 17704 17705 minor change: put entries in molecuilder/src/unittests/Makefile.am into alphabetical ordering and also single-tab indenting 17706 17707 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17708 17709 commit 03bb998b19ff3476cb46cd730ffbbf4258d54389 17710 Author: Frederik Heber <heber@ins.uni-bonn.de> 17711 Date: Sat May 8 20:36:22 2010 +0200 17712 17713 Introducing small actions. 17714 17715 - new directory MoleculeAction to contain actions manipulating molecules. 17716 - small_actions.?pp renamed to MoleculeAction/ChangeNameAction.?pp 17717 - classes ChangeMoleculeName... renamed to MoleculeChangeName... 17718 - builder.cpp: populateEditMoleculesMenu() adapted accordingly. 17719 - new parser actions and new directory ParserAction 17720 - LoadXyzAction 17721 - SaveXyzAction 17722 - new variables for all grouped actions in molecuilder/src/Makefile.am 17723 - all files added to Makefile.am 17724 17725 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17726 17727 commit a2ab15ba2cc94cbece043d75b16c7c3e7c81f308 17728 Author: Frederik Heber <heber@ins.uni-bonn.de> 17729 Date: Sat May 8 20:30:53 2010 +0200 17730 17731 Extended UIFactory to a CommandLine derivate. 17732 17733 - Dialog now has besides the title also a description, which however may be left empty. 17734 - added standard files for CommandLineUIFactory, CommandLineDialog, CommandLineWindow and CommandLineStatusIndicator. 17735 - also all added to Makefile.am, compiles fine. 17736 17737 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17738 17739 commit efc3cb9ffa0e3dc29c97a339e0879a611a41bf3f 17740 Author: Frederik Heber <heber@ins.uni-bonn.de> 17741 Date: Sat May 8 20:27:57 2010 +0200 17742 17743 minor change: put entries in molecuilder/src/Makefile.am into alphabetical ordering and also single-tab indenting 17744 17745 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17746 17747 commit 6d789df588a0f8ea0b282dc989b29a5fe69f76eb 17748 Merge: 68f03de bdedb12 17749 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17750 Date: Sat May 8 14:48:58 2010 +0200 17751 17752 Merge commit 'Gitosis/StructureRefactoring' into StructureRefactoring 17753 17754 commit 68f03de65d20f5bc62721f02e90844545a292e53 17755 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17756 Date: Sat May 8 14:47:57 2010 +0200 17757 17758 FIX: Memory corruption in particleInfo class 17759 17760 commit b9b604056c3887ec9d83c4814e5d8b0c68daabc1 17761 Merge: bdedb12 b8d4a36 17762 Author: Frederik Heber <heber@ins.uni-bonn.de> 17763 Date: Sat May 8 14:17:30 2010 +0200 17764 17765 Merge branch 'StateAndFormatParser' into CommandLineActionMapping 17766 17767 Conflicts: 17768 17769 molecuilder/src/Makefile.am 17770 molecuilder/src/tesselation.cpp 17771 molecuilder/src/unittests/Makefile.am 17772 17773 The following conflicts had to be resolved: 17774 - molecuilder/src/Makefile.am had an old version of the HEADER definition which would not be merged automatically. ${PARSERHEADER} was missing. 17775 - molecuilder/src/unittests/Makefile.am had an blank line too much 17776 - TesselPoint::TesselPoint() had an older version where TesselPoint::Name was initialized to "-" instead of NULL. The latter should be correct due to missing delete(Name) in destructor. 17777 - compilation errors arose due to the private nature of Vector::x[] introduced in the branch VectorRefactoring. This has been fixed in XyzParser, TremoloParser and the ParserUnitTest. 17778 - ParserUnitTest runs fine. 17779 17780 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17781 17782 commit bdedb126fe1a1073239174c61698ac3e49dc53b1 17783 Author: Frederik Heber <heber@ins.uni-bonn.de> 17784 Date: Sat May 8 13:33:50 2010 +0200 17785 17786 Change of the Tesselation testsuite. 17787 17788 - tests C16_0Torus, cluster, round_cluster removed (they need too long and don't add much safety). 17789 - all tests have been extended by the following radii: 1.5, 2, 2.5, 3, 3.5 and 25. 17790 - standard tesselations for all radii added. 17791 - diff is re-introduced but should be changed by a more sensible check (i.e. checking the tesselations not the file structure). 17792 17793 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17794 17795 commit b8d4a36310666e7e35fa9d7064e994e48d9b0e54 17796 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 17797 Date: Sun May 2 18:47:18 2010 +0200 17798 17799 Tremolo format parser 17800 17801 commit 6f646daac2a79d773e6c693f4b1be99293a5b3a1 17802 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17803 Date: Fri Apr 30 16:01:28 2010 +0200 17804 17805 Added a line class that represents one dimensional subspaces 17806 17807 commit fa5a6afe5abec6b36502dfd0ee72e520831287b7 17808 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17809 Date: Fri Apr 30 15:33:12 2010 +0200 17810 17811 Added unittests for planes 17812 17813 commit 1513a7402fe19aa16ecbdf33eddd7a4e2e403ff8 17814 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17815 Date: Fri Apr 30 12:07:23 2010 +0200 17816 17817 Declared the Vector class as single point spaces 17818 17819 commit 005e18586d73b26dba1b60be3f7e42777f664c67 17820 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17821 Date: Fri Apr 30 11:53:16 2010 +0200 17822 17823 Added const correctness to plane class and simplified interface 17824 17825 commit 0e01b4d1d3f78f1c315ae92840cd9657481799c3 17826 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17827 Date: Fri Apr 30 11:35:01 2010 +0200 17828 17829 FIX: small bug in the Plane::isContained() method 17830 17831 commit 2cbe979219340e83dbe8f5f98c73fcef7c337d12 17832 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17833 Date: Fri Apr 30 11:32:59 2010 +0200 17834 17835 Added exception specifiers to plane class 17836 17837 commit 3cdd1646dce0ec74ac3a0a447635dc12e8b69841 17838 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17839 Date: Fri Apr 30 11:23:37 2010 +0200 17840 17841 Added more Exceptions to the project to signal differen Math erorrs 17842 17843 commit 2247a948dcf209ad31d8e876f040a37ae13d4500 17844 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17845 Date: Fri Apr 30 10:26:28 2010 +0200 17846 17847 Added a class Space to represent general subspaces of R^3 (planes and lines) 17848 17849 commit cdf8fbb689ef19e7da3a7b5ba93f051dfa3e50a1 17850 Merge: c61c872 28c3510 17851 Author: Frederik Heber <heber@ins.uni-bonn.de> 17852 Date: Thu Apr 29 23:25:44 2010 +0200 17853 17854 Merge branch 'FixMemDebug_strncpy' into StructureRefactoring 17855 17856 commit 28c351085177bd0f8014422f461b534e27b03063 17857 Author: Frederik Heber <heber@ins.uni-bonn.de> 17858 Date: Thu Apr 29 23:23:24 2010 +0200 17859 17860 FIX: strncpy was lacking cstring include. 17861 17862 commit c61c8725850c6d02d926e8d32afdd26a187113b8 17863 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17864 Date: Thu Apr 29 18:11:43 2010 +0200 17865 17866 Added a method that allows construction of three arbitrary points on a plane. 17867 17868 commit 1829c4c468952cea89d8bceafd5e4fe3acaefe96 17869 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17870 Date: Thu Apr 29 18:03:30 2010 +0200 17871 17872 FIX: Bug that caused memory corruption in Vector::GetOneNormalVector() when a two component system was given 17873 17874 commit 1f7864b5174f61bde9636b387233ebf96161518c 17875 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17876 Date: Thu Apr 29 17:30:55 2010 +0200 17877 17878 FIX: Stupid bug in the Debug-new that destroyed some memory 17879 17880 commit d7963907ebbad1cc3ce39e6e25909d13d2b83c40 17881 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17882 Date: Thu Apr 29 16:38:29 2010 +0200 17883 17884 Improved comments for the memory tracker 17885 17886 commit 8cbb9792c39564b3033f03b7e9dc61143585d5f4 17887 Merge: 632bc3e 753f026 17888 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17889 Date: Thu Apr 29 15:55:21 2010 +0200 17890 17891 Merge branch 'VectorRefactoring' into StructureRefactoring 17892 17893 Conflicts: 17894 17895 molecuilder/src/Legacy/oldmenu.cpp 17896 molecuilder/src/Makefile.am 17897 molecuilder/src/analysis_correlation.cpp 17898 molecuilder/src/boundary.cpp 17899 molecuilder/src/builder.cpp 17900 molecuilder/src/config.cpp 17901 molecuilder/src/ellipsoid.cpp 17902 molecuilder/src/linkedcell.cpp 17903 molecuilder/src/molecule.cpp 17904 molecuilder/src/molecule_fragmentation.cpp 17905 molecuilder/src/molecule_geometry.cpp 17906 molecuilder/src/molecule_graph.cpp 17907 molecuilder/src/moleculelist.cpp 17908 molecuilder/src/tesselation.cpp 17909 molecuilder/src/tesselationhelpers.cpp 17910 molecuilder/src/unittests/AnalysisCorrelationToSurfaceUnitTest.cpp 17911 molecuilder/src/unittests/bondgraphunittest.cpp 17912 molecuilder/src/vector.cpp 17913 molecuilder/src/vector.hpp 17914 17915 commit 753f026a17e1d05846e903705efe2ac582c0d091 17916 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17917 Date: Wed Apr 28 16:52:56 2010 +0200 17918 17919 Removed Algebraic Hierachy from vector. 17920 17921 commit 632bc3e6a3aa135a6299c878abd3a7b67f1b355c 17922 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 17923 Date: Wed Apr 28 15:31:57 2010 +0200 17924 17925 Added a small memory tracker to the programm. 17926 17927 commit 5f612eea044e919bffc18a83cd7ddd35f981c765 17928 Merge: 13d5a97 c695c94 17929 Author: Frederik Heber <heber@ins.uni-bonn.de> 17930 Date: Tue Apr 27 16:25:42 2010 +0200 17931 17932 Merge branch 'Analysis_PairCorrelation' into StructureRefactoring 17933 17934 Conflicts: 17935 17936 molecuilder/src/Makefile.am 17937 molecuilder/src/World.cpp 17938 molecuilder/src/World.hpp 17939 molecuilder/src/boundary.cpp 17940 molecuilder/src/builder.cpp 17941 molecuilder/src/log.cpp 17942 molecuilder/src/moleculelist.cpp 17943 molecuilder/src/periodentafel.cpp 17944 molecuilder/src/tesselation.cpp 17945 molecuilder/src/unittests/AnalysisCorrelationToSurfaceUnitTest.cpp 17946 molecuilder/src/unittests/Makefile.am 17947 molecuilder/src/unittests/bondgraphunittest.cpp 17948 molecuilder/src/unittests/gslvectorunittest.cpp 17949 molecuilder/src/unittests/logunittest.cpp 17950 molecuilder/src/unittests/tesselation_boundarytriangleunittest.hpp 17951 molecuilder/src/vector.cpp 17952 molecuilder/tests/Tesselations/defs.in 17953 17954 Conflicts have been many and too numerous to listen here, just the few general cases 17955 - new molecule() replaced by World::getInstance().createMolecule() 17956 - new atom() replaced by World::getInstance().createAtom() where appropriate. 17957 - Some DoLog()s added interfered with changes to the message produced by Log() << Verbose(.) << ... 17958 - DoLog() has been erroneously added to TestRunner.cpp as well, there cout is appropriate 17959 - ... 17960 17961 Additionally, there was a bug in atom::clone(), sort was set to atom::nr of the atom to clone not of the clone itself. This caused a failure of the fragmentation. 17962 17963 This merge has been fully checked from a clean build directory with subsequent configure,make all install and make check. 17964 It configures, compiles and runs all test cases and the test suite without errors. 17965 17966 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17967 17968 commit c695c94acd7f6fb7cff4a57d3acd27a99260ce7b 17969 Merge: 260c291 4918764 17970 Author: Frederik Heber <heber@ins.uni-bonn.de> 17971 Date: Mon Apr 26 20:19:38 2010 +0200 17972 17973 Merge branch 'FixMolecuilderTestsTesselations_defs' into Analysis_PairCorrelation 17974 17975 commit 4918764d5f9ad800cf1507450f4ee80856aaeff4 17976 Author: Frederik Heber <heber@ins.uni-bonn.de> 17977 Date: Mon Apr 26 20:13:40 2010 +0200 17978 17979 FIX: Tesselation does not work in first run due to still present directories (defs.in in molecuilder/tests/Tesselations) 17980 17981 - now all NonConvexEnvelope*-files, .xyz- and .dbond--file is removed in CLEANUP of defs.in 17982 - also there has been an additional erroneous files tecplot.phy in the case 1_2-dimethylbenzene 17983 17984 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17985 17986 commit 260c2914633232cd5779aa590938d8580093a085 17987 Author: Frederik Heber <heber@ins.uni-bonn.de> 17988 Date: Mon Apr 26 19:25:44 2010 +0200 17989 17990 Regression test of Tesselation for test case 15 "Big non-convex envelope" changed. 17991 17992 - the sequence of the triangles had changed due to the changes in the algorithm. The surface itself has not changed (checked). 17993 17994 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 17995 17996 commit d6c4852478486ca47c1d76135f0f112ac8432077 17997 Merge: b8c9d83 70378e0 17998 Author: Frederik Heber <heber@ins.uni-bonn.de> 17999 Date: Mon Apr 26 18:38:47 2010 +0200 18000 18001 Merge branch 'FixWorld_wrongauthor' into Analysis_PairCorrelation 18002 18003 commit 70378e0022d1bf398dbed67806604b9cadb6026a 18004 Author: Frederik Heber <heber@ins.uni-bonn.de> 18005 Date: Mon Apr 26 18:38:14 2010 +0200 18006 18007 FIX: Author of World.cpp has been wrongly set (by eclipse) to heber instead of crueger. 18008 18009 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18010 18011 commit b8c9d83bb0cc97b1525626cec620fdde02ec69e7 18012 Merge: 6cd16bc fd179fd 18013 Author: Frederik Heber <heber@ins.uni-bonn.de> 18014 Date: Mon Apr 26 18:35:42 2010 +0200 18015 18016 Merge branch 'FixWorld_differentdefaultcell_size' into Analysis_PairCorrelation 18017 18018 Conflicts: 18019 18020 molecuilder/src/World.cpp 18021 18022 Conflict has been due to added cell_size initialization. 18023 18024 commit fd179fd5d64c806adc39173b9bf6cbb44ffe8065 18025 Author: Frederik Heber <heber@ins.uni-bonn.de> 18026 Date: Mon Apr 26 18:34:22 2010 +0200 18027 18028 FIX: cell_size in World has not been set to a default size, i.e. has been uninitialized. 18029 18030 - cell_size is now set to {20,0,20,0,0,20}, the default value it was set to before. 18031 18032 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18033 18034 commit 6cd16bc4b2635b48c1eb855a13b887a00af82259 18035 Merge: fe6c3eb 6056f1f 18036 Author: Frederik Heber <heber@ins.uni-bonn.de> 18037 Date: Mon Apr 26 18:22:17 2010 +0200 18038 18039 Merge branch 'FixAnalysisBonds_carbonwrongZ' into Analysis_PairCorrelation 18040 18041 Conflicts: 18042 18043 molecuilder/src/unittests/analysisbondsunittest.cpp 18044 18045 Conflict has been due to mixing of lines setting Z and vDw and CoV of carbon. 18046 18047 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18048 18049 commit 6056f1f6a543f7dbfa9dde0b7705d6820addf1c4 18050 Author: Frederik Heber <heber@ins.uni-bonn.de> 18051 Date: Mon Apr 26 18:19:32 2010 +0200 18052 18053 FIX: AnalysisBondsUnitTests has been broken due to Z of carbon same as of hydrogen. 18054 18055 - carbon now has Z equal to 2. 18056 18057 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18058 18059 commit fe6c3ebb308cd98263ce878b67158bb765693f51 18060 Merge: 3b9e349 3d9df58 18061 Author: Frederik Heber <heber@ins.uni-bonn.de> 18062 Date: Mon Apr 26 18:13:02 2010 +0200 18063 18064 Merge branch 'FixAnalysisCorrelation_zeroinitallbins' into Analysis_PairCorrelation 18065 18066 commit 3d9df58fa479a3d17fada0e138f7a5e3aa5e1851 18067 Author: Frederik Heber <heber@ins.uni-bonn.de> 18068 Date: Mon Apr 26 18:11:23 2010 +0200 18069 18070 FIX: AnalysisCorrelationToPointUnitTest has been broken due to init of all bins in range to zero. 18071 18072 - number of bins is thus 3, not 2, though there are only two non-zero values, in AnalysisCorrelationToPointUnitTest::CorrelationToPointBinNoRangeTest() 18073 - also shifted and corrected (new parameter ofstream) OutputCorrelation() in front of ASSERT to allow checking in case of failure. 18074 18075 commit 3b9e3493fade0a8429f762185dce340105f3ea8a 18076 Merge: ee7e252 c6394d0 18077 Author: Frederik Heber <heber@ins.uni-bonn.de> 18078 Date: Mon Apr 26 18:04:41 2010 +0200 18079 18080 Merge branch 'FixAnalysisCorrelation_zeroinitallbins' into Analysis_PairCorrelation 18081 18082 Conflicts: 18083 18084 molecuilder/src/unittests/AnalysisCorrelationToSurfaceUnitTest.cpp 18085 18086 There have been conflicts due to shifted OutputCorrelation() and being commented-out in one commit, not in the other though. 18087 18088 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18089 18090 commit c6394d07942e077c77082bff7fb9f99306df5ccc 18091 Author: Frederik Heber <heber@ins.uni-bonn.de> 18092 Date: Mon Apr 26 18:00:24 2010 +0200 18093 18094 FIX: AnalysisCorrelationToSurfaceUnitTest has been broken since change of initialisizing bins to zero. 18095 18096 - test of binmap size in CorrelationToSurfaceCarbonBinNoRangeTest() has to find 9, not 2 bins (due to init). There are still only two non-zero bins. 18097 - Shifted output of binmap in front of size() test as then the error can be spotted, otherwise execution is interrupted before binmap is output. 18098 18099 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18100 18101 commit ee7e252e66e5303e8480b6ab88de56905f963244 18102 Merge: b5c2d79 e5ad5c3 18103 Author: Frederik Heber <heber@ins.uni-bonn.de> 18104 Date: Mon Apr 26 17:47:54 2010 +0200 18105 18106 Merge branch 'FixBondGraphUnitTest_hydrogencarbon' into Analysis_PairCorrelation 18107 18108 Conflicts: 18109 18110 molecuilder/src/molecule_graph.cpp 18111 18112 There have been conflicts due to LinkedNodes now being local in context LinkedCell. 18113 18114 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18115 18116 commit e5ad5c3df7c9095bb2e7bac5d6425aa9d5c295b3 18117 Author: Frederik Heber <heber@ins.uni-bonn.de> 18118 Date: Mon Apr 26 17:42:45 2010 +0200 18119 18120 BUGFIX: BondGraphUnitTest was not working. 18121 18122 Changes: 18123 - atoms are now carbon, not hydrogen 18124 - added covalent and van-der-Waals radii to element creation 18125 - FIX: carbon now has Z = 2. 18126 - added test case for NULL BondTable (i.e. from covalent radii) 18127 18128 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18129 18130 commit 13d5a97104c8a5c13d2e78b8d620f8f625a062ac 18131 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18132 Date: Mon Apr 26 15:49:59 2010 +0200 18133 18134 Added macros that allow type safe casting using the Assert mechanism 18135 18136 commit 8bb2fdac28a006989f0feae29f712cc826b109ee 18137 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18138 Date: Sun Apr 25 15:36:17 2010 +0200 18139 18140 FIX: Repaired some of the NDEBUG macros for ASSERT 18141 18142 commit 8de8f7b299a3c2fc402aaddc75ea02cd83785773 18143 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18144 Date: Sun Apr 25 15:16:09 2010 +0200 18145 18146 Made the input methods more robust to invalid inputs. 18147 18148 commit 033a05dea520cc72044418c6e997d23c15418bf7 18149 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18150 Date: Sun Apr 25 14:48:24 2010 +0200 18151 18152 Small improvements to Observer code 18153 18154 commit ccacba2c5291cdd3b8dd37487372b1fbff7ed55c 18155 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18156 Date: Sat Apr 24 17:27:00 2010 +0200 18157 18158 Added methods for specialized Notifications from the Observer Framework 18159 18160 commit b5c2d7967acac9af4702516eb19840fbca47017d 18161 Author: Frederik Heber <heber@ins.uni-bonn.de> 18162 Date: Fri Apr 23 10:09:40 2010 +0200 18163 18164 Don't exit when no starting triangle has been found. 18165 18166 - The issue is that this is not a bug, but just a limitation of the so-far employed algorithm for obtaining a starting triangle. 18167 - If we exit, no .dat file is written, not even an empty one, indicating a perpetual running of the routine, which it does not. 18168 18169 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18170 18171 commit b1a6d85a26df47e4dee079a76deafefb5dad552f 18172 Author: Frederik Heber <heber@ins.uni-bonn.de> 18173 Date: Thu Apr 22 22:09:48 2010 +0200 18174 18175 BUGFIX in Tesselation::FindThirdPointForTesselation() - ThirdPoint of the base triangle must never have the smaller angle, but must always be the backside (i.e. the other center). 18176 18177 - this fixes a bug with CNTorus (16,0) with (56,1) (l,r) working and (57,1) not, due to angle suddenly being 0 for the same as the base triangle. 18178 18179 commit ce709706c3fffbf879b5a176c285e789f97d7218 18180 Author: Frederik Heber <heber@ins.uni-bonn.de> 18181 Date: Thu Apr 22 17:47:22 2010 +0200 18182 18183 FIX: Tesselation::FindStartingTriangle() returns false when no triangle could have been created. 18184 18185 - this may act in the future as the beginning to some mean of increasing radii or another way to find a starting triangle. 18186 18187 commit cfe56d268fef163363819b54b51553e5ec95214b 18188 Author: Frederik Heber <heber@ins.uni-bonn.de> 18189 Date: Thu Apr 22 17:03:42 2010 +0200 18190 18191 BUGFIX of Tesselation::FindStartingTriangle() - second Point Temporary not initialised to NULL. 18192 18193 - this caused a segfault with tesselating cluster with radius 1., as the second point added was not present actually. 18194 18195 commit b0a5f12326a780d951acf8dedc559132ca922fac 18196 Author: Frederik Heber <heber@ins.uni-bonn.de> 18197 Date: Thu Apr 22 16:13:32 2010 +0200 18198 18199 BUGFIX of Tesselation::AddTesselationLine() - comparing Vector against Vector is numerically unstable. 18200 18201 - Instead of checking the Vector of both Centers by operator==, we use DistanceSquared(). 18202 - This fixes a bug in tesselating bpti with radius 1.5, where three lines remained open due to not being correctly associated with their degenerated other sides. 18203 18204 commit 620a3f003153866f96efb363bfba5564699acbfe 18205 Author: Frederik Heber <heber@ins.uni-bonn.de> 18206 Date: Thu Apr 22 16:10:08 2010 +0200 18207 18208 BUGFIX in Tesselation::FindThirdPointForTesselation() - regarding three points in a line 18209 18210 - three points in a line, i.e. the baseline with the candidate on this extended line, is numerically unstable. 18211 - GetCenterofCircumCircle() warns already about "aum of angle"s 18212 - now, candidate is rejected if the distance from both baseline's endpoints to the NewPlaneCenter is not equal as it should be. 18213 - i.e. the error message present before has been converted into an additional check. 18214 18215 - This solved problems with tesselating a CNT (6,0) with radius 1.5 which has lots of triples in a line. 18216 18217 commit f04f11a7b99101e6d35061360e4ca6061b20dea2 18218 Author: Frederik Heber <heber@ins.uni-bonn.de> 18219 Date: Thu Apr 22 16:07:14 2010 +0200 18220 18221 small changes to tesselation. 18222 18223 - Tesselation::FindDegeneratedCandidatesforOpenLines() - sets CandidateLine::T to Tesselation::BTS, being the last added triangle. 18224 - Tesselation::AddCandidatePolygon() - remark about above added to call of function 18225 - Tesselation::FindCandidatesforOpenLines() - added assert to check that there is only one triangle attached to this CandidateForTesselation::baseline 18226 18227 commit b40a93e770ee2969e2bdd4cc63e56a5205c664b9 18228 Author: Frederik Heber <heber@ins.uni-bonn.de> 18229 Date: Thu Apr 22 16:05:32 2010 +0200 18230 18231 FindNonConvexBorder(): Instead of listing all open lines, just list those without candidates. 18232 18233 commit 29955407eeb6f84cd775a755f6e7b4d9beba3aa5 18234 Author: Frederik Heber <heber@ins.uni-bonn.de> 18235 Date: Thu Apr 22 16:02:09 2010 +0200 18236 18237 Changed verbosity of "sum of angle"-warning in GetCenterofCircumcircle() to 2 instead of 1. 18238 18239 - This is in most case an error, but due to linearity of the involved three points. And we don't check it. 18240 - The check is done later by comparing the lengths from both baseline's endpoints to NewPlaneCenter, which have to be equal. 18241 18242 commit a67d19a01c3b0bbb8bd6d255ed9a4ffbe37f3138 18243 Author: Frederik Heber <heber@ins.uni-bonn.de> 18244 Date: Thu Apr 22 16:00:03 2010 +0200 18245 18246 Huge change: Log() << Verbose(.) --> DoLog(.) && (Log() << Verbose(.) << ...); 18247 18248 Most of the files are affected, but this is necessary as if DoLog() says verbosity is not enough, all the stream operators won"t get executed which saves substantial amount of computation time. 18249 18250 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18251 18252 commit 6613ec959229c059f4df050384fc4621ea87dcc0 18253 Author: Frederik Heber <heber@ins.uni-bonn.de> 18254 Date: Wed Apr 21 13:51:53 2010 +0200 18255 18256 Rewrite of tesselation: treatment of degenerated triangles and polygons 18257 18258 several tricks have been necessary to make it work for heptane: 18259 - AddDegeneratedTriangle() is not used, instead AddCandidateTriangle() gets told which OptCenter to use, i.e. which triangle side to add 18260 - afterwards, in the case of a polygon (multiple candidates for a baseline) we have to set the candidate of internal edges in the polygon to the next point, such that AddTesselationLine() picks the right one 18261 - The we fill other open lines, needed in case of a degenerated triangle 18262 - If CheckDegeneracy() - which removes all candidates from the ListOfPoints, not just the first - results in true 18263 - Then we call AddCandidateTriangle() for the other side of it 18264 - and again in the case of a polygon, set the candidate for the internal edge accordingly. 18265 18266 - new 18267 - Tesselation::FindCandidatesforOpenLines() - checks for OpenLines with no candidates and calls FindNextSuitableTriangle() for each 18268 - Tesselation::FindDegeneratedCandidatesforOpenLines() - sets the candidate of an open line between two points to a given point (for above polygons) 18269 - enum centers is either Opt or OtherOpt for normal or back side of the triangle, used in AddCandidateTriangle() 18270 18271 - associated changes: 18272 - Tesselation::CheckDegeneracy() - needs current CandidateForTesselation for Baseline's endpoints and candidate list (not just the current trianglre in TPS), removes these instead of TPS 18273 - lots of identation changes made by eclipse, bust mostly sensible, due to coding on other laptop before 18274 - Tesselation::AddCandidateTriangle() - picks OptCenter according to given enum centers 18275 - Tesselation::AddTesselationLine() - in polygon case, a base line may have multiple candidates, though with same OptCenter, we check all of these against desired ThirdNode 18276 - FindNonConvexBorder() - removed call of CorrectAllDegeneratedPolygons(), as they should be created correctly now 18277 18278 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18279 18280 commit bc84ffc76ba4d3b32c0699d8504d57183a64c18f 18281 Author: Frederik Heber <heber@ins.uni-bonn.de> 18282 Date: Wed Apr 21 13:46:40 2010 +0200 18283 18284 Made some remaining cout's "info Log() << Verbose(.)"'s ... 18285 18286 - changes in: MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs(), TriangleIntersectionList::GatherIntersectionsWithTriangles() and Vector::GetIntersectionOfTwoLinesOnPlane() 18287 18288 commit 90f680c53e4ddbba28a2d848d6a36d17b1d66325 18289 Author: Frederik Heber <heber@ins.uni-bonn.de> 18290 Date: Wed Apr 21 13:42:54 2010 +0200 18291 18292 FIX: errorLogger now has absolute verbosity (i.e. CRITIAL is whatever level of recursion printed to screen) 18293 18294 - new function Verbose::DoErrorOutput() which does check only against given verbosityLevel, not plus Info:verbosity ad DoOutput() 18295 - operator<< of errorLogger 18296 - uses this function DoErrorOutput() 18297 - everything above or at verbositylevel of 2 two is prefixed with WARNING: 18298 - setVerbosity() does not set verbosity of errorLogger, is set to 2 in the code and is fixed 18299 - DoLog() and DoeLog() have their return value in parenthesis (no change, just safer) 18300 18301 commit 711ac235cedd19a7f06cfb285964b12e50269c03 18302 Author: Frederik Heber <heber@ins.uni-bonn.de> 18303 Date: Tue Apr 20 14:20:10 2010 +0200 18304 18305 Memory leak fixes and code cleanup after tesselation rewrite. 18306 18307 - MEMFIX: 18308 - Tesselation::FindStartingTriangle() - BaseLine was not deleted when triangle had been created 18309 - Tesselation::FindStartingTriangle() - BaseLine was not deleted when no second point had been found 18310 - Tesselation::CorrectAllDegeneratedPolygons() - DegeneratedTriangles was not deleted 18311 18312 - cleanup 18313 - BoundaryTriangleSet - removed function SetTopNode() and variables top and AngleFromTop 18314 - Tesselation::AddDegeneratedTriangle() - returns now void, the second triangle is not needed 18315 - Tesselation::AddDegeneratedTriangle() - removed comment out parts and switch cases, also setting top and AngleFromTop 18316 - Tesselation::AddDegeneratedTriangle() - open lines from second triangle are associated to second triangle 18317 - Tesselation::AddCandidateTriangle() - removed setting of top and AngleFromTop 18318 18319 commit a26ca5140652c255825d40c6ec097d98b9ff01c1 18320 Author: Frederik Heber <heber@ins.uni-bonn.de> 18321 Date: Tue Apr 20 14:19:24 2010 +0200 18322 18323 Fixed a warning in BondGraph::LoadBondLengthTable() due to missing parenthesis. 18324 18325 commit b60a29bb0956cffca4efd9bd9eab1da4ac478f14 18326 Author: Frederik Heber <heber@ins.uni-bonn.de> 18327 Date: Tue Apr 20 12:35:15 2010 +0200 18328 18329 WriteTecplotFile() checked whether Tesselation::LastTriangle is not NULL. 18330 18331 commit f07f86dfd5c3d53451892e6e07e8f3b5b79e84dd 18332 Author: Frederik Heber <heber@ins.uni-bonn.de> 18333 Date: Tue Apr 20 11:26:30 2010 +0200 18334 18335 Rewrite of tesselation procedure: treatment of degenerated triangles. 18336 18337 The central idea is that when matching open lines are present, then we have to check whether candidate matches desired ThirdPoint and that the calculated OptCenter matches as well. The latter is essential for degenerated triangles, that can only be decerned by their (Other)OptCenter. 18338 18339 - BoundaryTriangleSetCheckDegeneracy() moved back to Tesselation and gets points from TPS.- 18340 - Tesselation:.AddCandidateTriangle() 18341 - candidates are now in TPS 18342 - sole parameter is CandidateLine which contains other data to be stored in the new triangle. 18343 - which is done here not in AddCandidatePolygon() anymore 18344 - Tesselation::AddTesselationLine() 18345 - new parameter OptCenter to pick the right OpenLine if multiples present 18346 - functions adapted: Tesselation::RemovePointFromTesselatedSurface(), Tesselation::AddBoundaryPointByDegeneratedTriangle(), Tesselation::CorrectAllDegeneratedPolygons() 18347 - when an open line is present, we check whether the candidate matches ThirdPoint and OptCenter's match as well 18348 - FIX: CandidateForTesselation::CheckValidity() 18349 - endpoint and candidate inside check have both been wrong way round (< instead of >) 18350 - MYEPSILON replaced by HULLEPSILON (there are case with 1.16e-13) 18351 - Tesselation::FindStartingTriangle() 18352 - if one axis fail for obtaining a starting triangle, the other two are tried as well 18353 - For this BaseLine is now a pointer, allocated newly for each axis 18354 - Tesselation::AddCandidatePolygon() 18355 - everything is done in either AddCandidateTriangle() or AddDegeneratedTriangle() 18356 - only setting TPS to the current three endpoints and calling CheckDegeneracy() remains 18357 - Tesselation::AddDegeneratedTriangle() 18358 - parameter triangle replaced by CandidateLine 18359 - no more LineCase et al, but subsequent creation of two triangles and everything done in AddTesselationLine() 18360 - FIX: Tesselation::FindThirdPointForTesselation() - we check whether we actually have candidates before CheckValidity() is called. 18361 18362 Asparagine is now tesselated correctly from radius 1.5 up to 25. 18363 18364 commit 061b06f8530350ff81a7566f11cc3defeed3d984 18365 Author: Frederik Heber <heber@ins.uni-bonn.de> 18366 Date: Tue Apr 20 11:21:51 2010 +0200 18367 18368 BUGFIXES: LinkedCell::SetIndexToNode() had wrong boundaries in zero case, LinkedCell::GetPointsInsideSphere() took only half the right radius 18369 18370 - BUGFIX: LinkedCell::SetIndexToNode() - upper and lower were set to 0 instead of n[i] when step=0 only worked 18371 - BUGFIX: LinkedCell::GetPointsInsideSphere() called GetallNeighbours() with RADIUS instead if 2.*RADIUS 18372 18373 commit d5fea7a6cc54da0d3f5270434d5c95520d12570a 18374 Author: Frederik Heber <heber@ins.uni-bonn.de> 18375 Date: Fri Apr 16 15:52:20 2010 +0200 18376 18377 FIX: If multiple open lines can be chosen in AddTesselationLine(), then pick the one for which candidate matches first. 18378 18379 - Tesselation::AddTesselationLine() adapted by setting a WinningLine and calling AddExistingTesselationTriangleLine() afterwards. 18380 - therefore, we need additional parameter which is the third point. 18381 - Tesselation::AddDegeneratedTriangle() adds itself to CandidateForTesselation of its open lines. 18382 18383 commit 474961217a06b448d3cee3f8771fba98ec83555f 18384 Author: Frederik Heber <heber@ins.uni-bonn.de> 18385 Date: Fri Apr 16 14:26:16 2010 +0200 18386 18387 New approach to degenerated triangles: Recognize on creation and add both sides at once. 18388 18389 - FindNonConvexBorder(): Approach with constructing a tree of smallest ShortestAngle has bee abandoned. 18390 18391 - new function BoundaryTriangleSet::CheckDegeneracy(): Similar to CandidateForTesselation::CheckValidity() 18392 - checks by looking whether points are inside the sphere at OtherOptCenter 18393 - new function AddCandidateTriangle(): refactored out of AddCandidatePolygon() 18394 - new function AddDegenerateTriangle(): basically just checks which lines to take, newly created or existing ones and which 18395 - AddCandidatePolygon(): (renamed from AddCandidateTriangle()) 18396 - Now needs radius of sphere and LinkedCell structure (for the degenerated searches), adapted where called 18397 - calls AddCandidateTriangle() for one triangle in the polygon, subsequently calls CheckDegeneracy() 18398 - if appropriate, calls AddDegenerateTriangle() for the other side triangle 18399 - rename AlwaysAddTesselationTriangleLine() -> AddNewTesselationTriangleLine() 18400 - new function AddExistingTesselationTriangleLine(), refactored out of AddTriangleLine() 18401 18402 commit ebb50e92f343ddc5757c15e6f311911268da15c7 18403 Author: Frederik Heber <heber@ins.uni-bonn.de> 18404 Date: Thu Apr 15 17:22:51 2010 +0200 18405 18406 Renamed AddCandidateTriangle() -> AddCandidatePolygon() 18407 18408 - AddCandidateTriangle() may actually add more than one triangle in degenerated Delauney case. 18409 18410 commit bc3f2a8883e09abf804f9f9ab52fe2cc70f5e8cd 18411 Author: Frederik Heber <heber@ins.uni-bonn.de> 18412 Date: Thu Apr 15 16:57:49 2010 +0200 18413 18414 FIX: string instead of string.h was included for strcpy() 18415 18416 commit 8a343929d462595f19dbd79fc4a77406c88f7b7a 18417 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18418 Date: Thu Apr 15 15:17:15 2010 +0200 18419 18420 Improved documentation for the Action pattern 18421 18422 commit 1bd79efa209ce2203a329de83169d52ea290fa17 18423 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18424 Date: Thu Apr 15 12:54:26 2010 +0200 18425 18426 Changed implementation of Vector to forward operations to contained objects 18427 18428 commit 2733825a2c3f421fa61f61e58f954fa295e6e23d 18429 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18430 Date: Tue Apr 13 15:22:42 2010 +0200 18431 18432 Prepared interface of Vector Class for transition to VectorComposites 18433 18434 commit f8bd7d3884f6cedfee5aabbd81b91b0a44140bce 18435 Author: Frederik Heber <heber@ins.uni-bonn.de> 18436 Date: Mon Apr 12 18:45:07 2010 +0200 18437 18438 FIX: changed the order in which triangles are picked next during tesselation. 18439 18440 - FindNonConvexBorder(): we do a check based on AngleFromTop. We always want AngleFromTop to be smaller than the Runner's ShortestAngle. If then no open line can be found, we discard this criteria. 18441 - FindNonConvexBorder(): also we store initial starting triangle if DoSingleStepOutput 18442 18443 commit 09898c37093ccfcb202b1fbcb57f502704896dc9 18444 Author: Frederik Heber <heber@ins.uni-bonn.de> 18445 Date: Mon Apr 12 18:35:12 2010 +0200 18446 18447 Changes to BoundaryTriangleSet and CandidateForTesselation. 18448 18449 - BoundaryTriangleSet: 18450 - new member variable top which references the triangle we have been "tesselated from" 18451 - new member variable AngleFromTop which stores the angle that was used during tesselation from top 18452 - new member function SetTopNode() 18453 - Tesselation::AddCandidateTriangle() sets top and AngleFromTop 18454 18455 - CandidateForTesselation: 18456 - new member ThirdPoint contains third point of triangle whose baseline is the base line 18457 - new member T which contains the whole triangle 18458 - constructor receives this third point additionally 18459 - destructor does not set Baseline to NULL (due to being const) 18460 - BUGFIX: CheckValidity() checks only OptCenter, other is not valid anyway!, did not went through pointlist at all (begin, begin), some verbosity changes, added animate_sphere script call 18461 - Tesselation::FindThirdPointForTesselation() sets ThirdPoint 18462 - Tesselation::FindNextSuitableTriangle() sets T 18463 18464 - BUGFIX: Tesselation::FindThirdPointForTesselation() clear CandidateLine.pointlist, which seemed to have contained old candidates from old runs. 18465 - Tesselation::FindNextSuitableTriangle(): tesselPoint ThirdNode is now a BoundaryPointSet ThirdPoint (which has a name!) 18466 18467 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18468 18469 commit ffe885d4a42092788786723c1711831629789caa 18470 Author: Frederik Heber <heber@ins.uni-bonn.de> 18471 Date: Mon Apr 12 18:25:50 2010 +0200 18472 18473 BUGFIX: LinkedCell::GetPointsInsideSphere() did not work if center of sphere was outside of LinkedCell's domain. 18474 18475 - new function LinkedCell::SetClosestIndexToOutsideVector() similar to LinkedCell::SetIndexToVector(), only vector may be outside of domain. Then, closest cell is taken and minimum distance calculated. 18476 - LinkedCell::GetPointsInsideSphere() uses LinkedCell::SetClosestIndexToOutsideVector() instead of LinkedCell::SetIndexToVector() 18477 18478 commit 72e7faca3bcf25ab3ecf4cbdb09c889f2985787f 18479 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18480 Date: Fri Apr 9 16:45:49 2010 +0200 18481 18482 Started work on the VectorComposites 18483 18484 commit 4f9e47db1137edf81831073a1fe536e3a06b1945 18485 Author: Frederik Heber <heber@ins.uni-bonn.de> 18486 Date: Fri Apr 9 15:41:52 2010 +0200 18487 18488 Full-working LinkedCellUnitTest. 18489 18490 - new unit test for class LinkedCell now checks all functions and runs fine. 18491 18492 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18493 18494 commit a3696fd1bc3d13bd782c3786b4647a8407d74d8f 18495 Author: Frederik Heber <heber@ins.uni-bonn.de> 18496 Date: Fri Apr 9 15:41:26 2010 +0200 18497 18498 ofstream operators now check for Name being NULL and print NULL in that case. 18499 18500 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18501 18502 commit 893bea4f34d6843af595d33ac7763c591e64648a 18503 Author: Frederik Heber <heber@ins.uni-bonn.de> 18504 Date: Fri Apr 9 15:39:03 2010 +0200 18505 18506 changes to LinkedCell::GetNeighbourBounds(), LinkedCell::GetallNeighbours() and LinkedCell::GetPointsInsideSphere() 18507 18508 - LinkedCell::GetNeighbourBounds() has a step up to which step-nearest neighbours cells are included, heeding boundaries 18509 - LinkedCell::GetallNeighbours() uses GetNeighbourBounds() 18510 - LinkedCell::GetPointsInsideSphere() uses GetallNeighbours() and then removes all points outside sphere from this list. 18511 18512 commit 82b71ada15772f942643cd59ff97a96b8a7f71bf 18513 Merge: fdd840f 9cf88c1 18514 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18515 Date: Fri Apr 9 14:32:59 2010 +0200 18516 18517 Merge branch 'MenuRefactoring' into QT4Refactoring 18518 18519 Conflicts: 18520 18521 molecuilder/src/UIElements/UIFactory.cpp 18522 molecuilder/src/UIElements/UIFactory.hpp 18523 molecuilder/src/builder.cpp 18524 18525 commit 9cf88c12264eb5a7b3d1f383cbeb3db314a03b0e 18526 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18527 Date: Fri Apr 9 14:15:58 2010 +0200 18528 18529 Changed UIFactory to use injector pattern to let it know about existing factories. 18530 18531 commit dcea0ff41d177c467f6145566a26f86eb3065627 18532 Author: heber <heber@ins.uni-bonn.de> 18533 Date: Fri Apr 9 11:14:20 2010 +0100 18534 18535 New Unit test for class LinkedCell. 18536 18537 - this is just the skeleton, so far it does nothing useful. 18538 18539 Signed-off-by: heber <heber@ins.uni-bonn.de> 18540 18541 commit 734816af34f8c7429239e028a7a80e4081d008ab 18542 Author: heber <heber@ins.uni-bonn.de> 18543 Date: Fri Apr 9 10:55:39 2010 +0100 18544 18545 LinkedNodes is now declared inside LinkedCell and some new functions. 18546 18547 - as prepraratory measure we placed LinkedNodes as typedef into LinkedCell class. This caused same namespace changes elsewhere where LinkedNodes is used. 18548 - new function GetallNeighbours() which performs going through linked cells. 18549 - new function GetPointsInsideaSphere() which performs going through linked cells and returns all neighbours up to a given distance to a given center. 18550 18551 Note: New functions are not yet used elsewhere. Unit test has to be written beforehand. 18552 18553 Signed-off-by: heber <heber@ins.uni-bonn.de> 18554 18555 commit fdd840f75304796b41bf1a6c5bfe0a99b2f29f01 18556 Merge: 68d781e a295d1e 18557 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18558 Date: Thu Apr 8 16:28:59 2010 +0200 18559 18560 Merge branch 'StructureRefactoring' into QT4Refactoring 18561 18562 commit a295d1e6f8f5e96d80fab1f8dd96d22c12d51408 18563 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18564 Date: Thu Apr 8 16:28:21 2010 +0200 18565 18566 More documentation for Action class added 18567 18568 commit 2efa90bc8adc160c042069f38fe65a8bd9258496 18569 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18570 Date: Thu Apr 8 16:00:11 2010 +0200 18571 18572 Added detailed documentation for the Action class 18573 18574 commit 0a4f7fd0df08c7bf001c21de0e7b7462fb56da1d 18575 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18576 Date: Wed Apr 7 17:45:38 2010 +0200 18577 18578 Made data internal data-structure of vector class private 18579 18580 - Replaced occurences of access to internals with operator 18581 - moved Vector-class into LinAlg-Module 18582 - Reworked Vector to allow clean modularization 18583 - Added Plane class to describe arbitrary planes in 3d space 18584 18585 commit fe238cf71232d91769e9d08c5867eb5c16052491 18586 Author: Frederik Heber <heber@ins.uni-bonn.de> 18587 Date: Thu Apr 1 20:52:09 2010 +0200 18588 18589 Enhanced CountHydrogenBridgeBonds() a bit. 18590 18591 - new functions CheckHydrogenBridgeBondAngle() and CalculateAngle() 18592 - CountHydrogenBridgeBonds() now discards when two oxygen show each both a hydrogen (two test cases in CountBondsUnitTest.cpp for this) 18593 - this however also no effect over the criteria by Marry, Rotenberg and Turq. 18594 18595 commit 388049e8a31cd0cd058d1ddd9577886a8a3c2fa8 18596 Author: Frederik Heber <heber@ins.uni-bonn.de> 18597 Date: Thu Apr 1 14:42:07 2010 +0200 18598 18599 Moved functions CountBondsOfTwo(), CountBondsOfThree() and CountHydrogenBridgeBonds() from bondgraph.cpp to analysis_bonds.cpp 18600 18601 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18602 18603 commit 4415da8b5d52d38b3578718b456b8c0b28cad75d 18604 Merge: 9131f32 f9352dc 18605 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 18606 Date: Thu Apr 1 14:16:29 2010 +0200 18607 18608 Merge Till's structure refactoring 18609 18610 Merge commit 'till/StructureRefactoring' into StateAndFormatParser 18611 18612 Conflicts: 18613 18614 molecuilder/src/Makefile.am 18615 molecuilder/src/unittests/Makefile.am 18616 18617 commit 62c9c0c2483b1a08eff78913d9f36d67e8168744 18618 Author: Frederik Heber <heber@ins.uni-bonn.de> 18619 Date: Thu Apr 1 11:35:42 2010 +0200 18620 18621 Added output of test cases for visualization. Is commented out though. 18622 18623 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18624 18625 commit dfe8ef3f8a081bf5a259359237ae9e5b9f66cdb1 18626 Author: Frederik Heber <heber@ins.uni-bonn.de> 18627 Date: Tue Mar 30 20:49:01 2010 +0200 18628 18629 BUGFIX: CountHydrogenBridgeBonds() was half-broken, CountBondsOfThree() double-counted. 18630 18631 - CountBondsOfThree() was counting O-H molecules as having a H-O-H and also a O-H-O triple bond because of a missing break. 18632 - CountHydrogenBridgeBonds() was broken in several places: 18633 - Checking for Hydrogen on the other oxygen atom is not part of the criteria by Marry, Rotenberg and Turq. 18634 - HydrogenFlag could have been set by previous atom making next hydrogen also a h-bridge bond. 18635 18636 Found thanks to newly implemented unit test CountBondsUnitTest. 18637 18638 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18639 18640 commit 9131f3237e4267925646cb453f950b49e3540f7f 18641 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 18642 Date: Tue Mar 30 15:22:20 2010 +0200 18643 18644 WIP tremolo parser 18645 18646 commit f9352dcaf0cbc4cbcee464d7d03984eb5eeee659 18647 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18648 Date: Fri Mar 26 16:13:31 2010 +0100 18649 18650 Added mechanism that deactivates undo and redo menupoint if not applicable 18651 18652 commit 68d781e05c955813adeac99c094cf27f14b90f46 18653 Merge: cd032d4 f6bbc6f 18654 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18655 Date: Thu Mar 25 14:36:36 2010 +0100 18656 18657 Merge branch 'MenuRefactoring' into QT4Refactoring 18658 18659 Conflicts: 18660 18661 molecuilder/src/Makefile.am 18662 molecuilder/src/defs.hpp 18663 18664 commit f6bbc6fe2ddb7221bc4f6acc3efeef505cfb0301 18665 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18666 Date: Thu Mar 25 14:08:39 2010 +0100 18667 18668 Added undo and redo menupoints 18669 18670 TODO: make it possible to disable menupoints conditionally 18671 18672 commit 5605032d8e19d603e79ac940ea3a26205e7e7fdc 18673 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18674 Date: Thu Mar 25 14:01:35 2010 +0100 18675 18676 Repaired code that was broken by merge 18677 18678 commit 9848bad258f40a89bb332d796c0c40bdaa89fc99 18679 Merge: b31bc44 975a116 18680 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18681 Date: Thu Mar 25 14:00:29 2010 +0100 18682 18683 Merge branch 'StructureRefactoring' into MenuRefactoring 18684 18685 commit 975a1166eddd2bdd29dd2ff9f0637ce8834b71d5 18686 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18687 Date: Thu Mar 25 13:59:20 2010 +0100 18688 18689 Repaired broken unittest 18690 18691 commit b31bc446e44e3bd112547bd6f6c98e4deebd860d 18692 Merge: 66e95ea d566405 18693 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18694 Date: Thu Mar 25 13:01:58 2010 +0100 18695 18696 Merge branch 'StructureRefactoring' into MenuRefactoring 18697 18698 commit d56640502d4cc2a4450b681ccb0bc442573add28 18699 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18700 Date: Thu Mar 25 12:59:56 2010 +0100 18701 18702 Added full undo functioniality 18703 18704 commit 5b0b98b2ea8b24976731e525dc2aa2811d18dc20 18705 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18706 Date: Thu Mar 25 11:06:49 2010 +0100 18707 18708 Switched type of pointer used for ActionStates 18709 18710 commit 67e2b3572734296ec6d1bd4e7c867fa823cee04f 18711 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18712 Date: Wed Mar 24 17:26:21 2010 +0100 18713 18714 Added methods that allow bookkeeping of actions for undo/redo methods 18715 18716 commit 05a97c1f2c9e8ddf80a668a86107708aa36770e5 18717 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18718 Date: Wed Mar 24 14:58:30 2010 +0100 18719 18720 Replaced some error conditions with ASSERTs 18721 18722 commit c721129bba15cb7f2e3255bdf6f7c8df64cbc52a 18723 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18724 Date: Wed Mar 24 13:54:47 2010 +0100 18725 18726 Repaired GetMAxId() method of molecule 18727 18728 commit ce1d8c6dd957c9a4ffa937e721e549badd23c4e5 18729 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18730 Date: Wed Mar 24 11:27:37 2010 +0100 18731 18732 Added detailed instruction on how to use ASSERT() 18733 18734 commit adc42b8134b08a947db2f24929ef450e6470041f 18735 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18736 Date: Fri Mar 19 17:24:47 2010 +0100 18737 18738 Made the cacheable always recalculate when the owner is in the process of updating 18739 (cherry picked from commit 6234ef6106a5d0b8c1d29976e4e4304c66bb5c8b) 18740 18741 commit 4fb5a3f0f43733a24f210c3e9a5c666bd091f7dc 18742 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18743 Date: Fri Mar 19 17:13:28 2010 +0100 18744 18745 Improved Observer Framework to include methods to report the state 18746 18747 - bool Observable::isBlocked() will tell if the Observer is currently updating itself 18748 - The Circle detection test now uses ASSERT to report when a circle was detected (can be caught by CPPUNIT) 18749 18750 commit 052b8d0f457c092d6ce25003e75db72970ba2fb0 18751 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18752 Date: Fri Mar 19 16:50:01 2010 +0100 18753 18754 Rebuilt Cacheables using the state pattern 18755 18756 commit 5be0eb5b503e36533a617d7c857b0c9324a0e178 18757 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18758 Date: Fri Mar 19 11:50:06 2010 +0100 18759 18760 Added more functionality to custom asserts. 18761 18762 - Asserts allow now setting any choice as default behaviour 18763 - Asserts allow setting of hooks that have to be performed before the exit is done 18764 18765 commit 760ef4a258435c48d94d371f74c03c5c5c7c6858 18766 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18767 Date: Fri Mar 19 17:24:47 2010 +0100 18768 18769 Made the cacheable always recalculate when the owner is in the process of updating 18770 18771 commit b64313e36c83a0a04f3ea0272076852e9bcd8016 18772 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18773 Date: Fri Mar 19 17:13:28 2010 +0100 18774 18775 Improved Observer Framework to include methods to report the state 18776 18777 - bool Observable::isBlocked() will tell if the Observer is currently updating itself 18778 - The Circle detection test now uses ASSERT to report when a circle was detected (can be caught by CPPUNIT) 18779 18780 commit e0b6fd7a16e107779197cef07ad3b711cc457e33 18781 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18782 Date: Fri Mar 19 16:50:01 2010 +0100 18783 18784 Rebuilt Cacheables using the state pattern 18785 18786 commit f18185ccc3610b5c8c0eae54138d97f1e55c8bca 18787 Author: Frederik Heber <heber@ins.uni-bonn.de> 18788 Date: Fri Mar 19 15:03:54 2010 +0100 18789 18790 Implemented counting of bonds over all atoms. 18791 18792 - new functions in bondgraph.cpp: CountBondsOfTwo(), CountBondsOfThree() 18793 - both are introduced into MergeMolecules(), case 'b' and 'B' 18794 18795 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18796 18797 commit ea71760f1257d93e6396b87b269d71544d16a690 18798 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18799 Date: Fri Mar 19 14:29:01 2010 +0100 18800 18801 FIX: Made AtomCount a Cacheable so that the number of atoms in a molecule will always be correct 18802 18803 All unittests working. 18804 All Complete testcases fail. 18805 18806 commit 80c63dfc81000104a9b183a1ba9f5565e15b9757 18807 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18808 Date: Fri Mar 19 11:50:06 2010 +0100 18809 18810 Added more functionality to custom asserts. 18811 18812 - Asserts allow now setting any choice as default behaviour 18813 - Asserts allow setting of hooks that have to be performed before the exit is done 18814 18815 commit 8d27720451e7340d82da7537d832ffb204273b10 18816 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18817 Date: Thu Mar 18 17:45:41 2010 +0100 18818 18819 Changed conditional criticalExit in constructor of BoundaryTriangleSet to Assertion. 18820 18821 commit 24725c2fc8fd6c005751d91c920162a6e74b1f8c 18822 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18823 Date: Thu Mar 18 16:59:46 2010 +0100 18824 18825 FIX: repaired PairCorrelation() by using IDs assigned by the world instead of internal molecule numbers 18826 18827 commit 53731fa36c4e43ccfbcc75e2b60b6036be2ec500 18828 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18829 Date: Thu Mar 18 16:40:37 2010 +0100 18830 18831 Fixed two unittests by forcibly assigning numbers on Atoms in CreateAdjacencyList 18832 18833 commit 1cbf477d77154171f9c093ad6d333a48cd3d068b 18834 Author: Frederik Heber <heber@ins.uni-bonn.de> 18835 Date: Thu Mar 18 16:29:54 2010 +0100 18836 18837 Introduced CountHydrogenBridgeBonds() function. 18838 18839 - CountHydrogenBridgeBonds() in bondgraph.cpp counts hydrogen bridges in a system. 18840 - MergeMolecules has a new case 'h'. The placement is this menu is however nonsense and should be corrected, when MeasureAtoms has a MoleculeListClass as parameter instead of a single molecule. 18841 18842 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18843 18844 commit f2bb0ffe6b4609ebd531d524d61604a99d4ec5fd 18845 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18846 Date: Thu Mar 18 16:32:00 2010 +0100 18847 18848 FIX: Repaired memory smashing in CreateAdjacencyList 18849 18850 BROKEN: Unittests still fail 18851 18852 commit 75ac0c5e42d4edfac5a3b6e0939f309270191119 18853 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18854 Date: Thu Mar 18 15:48:20 2010 +0100 18855 18856 Added custom Assert makro that allows ignoring asserts 18857 18858 commit 229e3ccb4e9cb5051f35390f07ad9812609ea0d4 18859 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18860 Date: Thu Mar 18 15:48:20 2010 +0100 18861 18862 Added custom Assert makro that allows ignoring asserts 18863 18864 commit c7b1e7cc5f71dc867ab9cd60f52387cc20f52e45 18865 Merge: b48ba6e 8ab0407 18866 Author: Frederik Heber <heber@ins.uni-bonn.de> 18867 Date: Thu Mar 18 12:39:57 2010 +0100 18868 18869 Merge branch 'FixGeneralizeStoreAdjacencyToFile' into Analysis_PairCorrelation 18870 18871 commit b48ba6ea1ca00a1d01e06d07c7ada8ade3b7a415 18872 Author: Frederik Heber <heber@ins.uni-bonn.de> 18873 Date: Thu Mar 18 12:39:21 2010 +0100 18874 18875 Shifted BONDTHRESHOLD from defs.hpp over to bondgraph.hpp and lowered to 0.4 18876 18877 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18878 18879 commit 8ab04072a27154b43480fa7e701691aeef336c95 18880 Author: Frederik Heber <heber@ins.uni-bonn.de> 18881 Date: Thu Mar 18 12:34:39 2010 +0100 18882 18883 molecule::StoreAdjacencyToFile() and molecule::StoreBondsToFile() now take additional filename. 18884 18885 - since ParseCommandLineOptions() has cases j and J which use the above functions, we have to generalize these functions to work also without a given path and with arbritrary filename. 18886 18887 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18888 18889 commit 58ed4a7c2bc8ff58164d0438ee813b30de7a34da 18890 Author: Frederik Heber <heber@ins.uni-bonn.de> 18891 Date: Thu Mar 18 11:26:55 2010 +0100 18892 18893 Log() and eLog() are prepended by a DoLog()/DoeLog() construct. 18894 18895 - Most of the run time (95%) is spent on verbosity that it is discarded anyway due to a low verbosity setting. However, the operator << is evaluated from the right-hand side, hence the whole message is constructed and then thrown away. 18896 - DoLog() and DoeLog() are new functions that check the verbosity beforehand and are used as follows: 18897 DoLog(2) && (Log() << verbose(2) << "message" << endl); 18898 18899 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18900 18901 commit 7ee87fc14c8174aaa7e562acd4b38bbed5239316 18902 Author: Frederik Heber <heber@ins.uni-bonn.de> 18903 Date: Thu Mar 18 11:21:13 2010 +0100 18904 18905 BUGFIX: DefaultName of molecule was too small an array. 18906 18907 - We saw wrong molecule names such as "none@4", this is fixed. 18908 18909 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 18910 18911 commit 6e97e5a6b0503856e9b6e879ddf32a1028016550 18912 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18913 Date: Wed Mar 17 15:53:26 2010 +0100 18914 18915 Added a generic Iterator that can be used to iterate only over certain parts of an internal data structure 18916 18917 commit 745a85115338256436238e5f4ac69f413362c5af 18918 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18919 Date: Fri Mar 12 15:20:15 2010 +0100 18920 18921 Fixed memory leak in periodentafel 18922 18923 commit ead4e6027f420d4abbcb4f74854b4daa8dad64ea 18924 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18925 Date: Fri Mar 12 14:16:01 2010 +0100 18926 18927 Made the periodentafel use STL-containers instead of custom llists 18928 18929 commit c3dbe0f164703a2c4da1a1d7818c146f2b3ceb31 18930 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18931 Date: Thu Mar 11 17:53:08 2010 +0100 18932 18933 Improved documentation for Singleton 18934 18935 commit 0f6f3a2fa9484f91d921afb035cddfdb256bde6a 18936 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18937 Date: Thu Mar 11 16:17:29 2010 +0100 18938 18939 Small improvements to singleton pattern 18940 18941 commit cd032d428ec733430510dfedd7dc4bcf1df63fd4 18942 Merge: a77c96f ed58ad5 18943 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18944 Date: Thu Mar 11 15:46:41 2010 +0100 18945 18946 Merge branch 'StructureRefactoring' into QT4Refactoring 18947 18948 Conflicts: 18949 18950 molecuilder/src/builder.cpp 18951 molecuilder/src/defs.hpp 18952 18953 commit ed58ad584a17c2510df74004042b2452b8b42f01 18954 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18955 Date: Thu Mar 11 15:29:04 2010 +0100 18956 18957 Made the errorLogger use the new Singleton framework 18958 18959 commit aee1a3013f12e500c5025aaa69850fcc29933ad2 18960 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18961 Date: Thu Mar 11 15:19:53 2010 +0100 18962 18963 Made logger class use the new Singleton framework 18964 18965 commit e73a8a2f90ce3ebc52e5a08bae476c290ee4cee0 18966 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18967 Date: Thu Mar 11 15:08:44 2010 +0100 18968 18969 Changed ActionRegistry to use the new Singleton Mechanism 18970 18971 commit 7ca80618ed8bb20b2ffc293ef03e46c6b5299ae1 18972 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18973 Date: Thu Mar 11 12:32:17 2010 +0100 18974 18975 Changed the mutex type used in the Singleton pattern to allow multiple locks in the same thread 18976 18977 commit d2586382328211710e80bd41bf762f1dc0d9d61a 18978 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18979 Date: Thu Mar 11 12:21:55 2010 +0100 18980 18981 Added Unittest for Singleton pattern 18982 18983 commit d7940eed393ef000764eb1d5dc9282588a111a23 18984 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18985 Date: Thu Mar 11 11:37:32 2010 +0100 18986 18987 Made the UIFactory an instance of the Singleton Pattern 18988 18989 commit 23b547e0a280f674d85f218c4cce67c6c3f2ee85 18990 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18991 Date: Wed Mar 10 18:51:48 2010 +0100 18992 18993 Added generic singleton Pattern that can be inherited to any class making that class a singleton. 18994 18995 commit a77c96f4ed702d9adfd764de713b4db0c2023488 18996 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 18997 Date: Fri Mar 5 11:26:16 2010 +0100 18998 18999 Started work on a tab view for Molecule Content 19000 19001 commit cb2146212f0e6343f8c302f924a2e8bfb3401b6e 19002 Merge: 7dc1026 31af190 19003 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 19004 Date: Fri Mar 5 14:45:35 2010 +0100 19005 19006 solve merge conflict 19007 19008 Merge commit 'till/StructureRefactoring' into StateAndFormatParser 19009 19010 Conflicts: 19011 19012 molecuilder/src/unittests/Makefile.am 19013 19014 commit 7dc1026fa042673a3afb826472ab3fa660390ba6 19015 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 19016 Date: Fri Mar 5 14:33:45 2010 +0100 19017 19018 WIP 19019 19020 commit ab4b55cc08f483f1cbbf9225a92e2996e8d60b39 19021 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 19022 Date: Fri Mar 5 13:53:13 2010 +0100 19023 19024 the XYZ parser 19025 19026 commit d3347e51ec76a8b2c512f9c40cd24e2a622a37da 19027 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19028 Date: Fri Mar 5 12:40:05 2010 +0100 19029 19030 FIX: repaired compiler problems for latest refactoring 19031 19032 commit 9879f6f8e5ad9364ccd32e2d6735f2ffc89cf18d 19033 Author: Frederik Heber <heber@ins.uni-bonn.de> 19034 Date: Fri Mar 5 11:08:44 2010 +0100 19035 19036 Huge Refactoring due to class molecule now being an STL container. 19037 19038 - molecule::start and molecule::end were dropped. Hence, the usual construct 19039 Walker = start 19040 while (Walker->next != end) { 19041 Walker = walker->next 19042 ... 19043 } 19044 was changed to 19045 for (molecule::iterator iter = begin(); iter != end(); ++iter) { 19046 ... 19047 } 19048 and (*iter) used instead of Walker. 19049 - Two build errors remain (beside some more in folder Actions, Patterns and unittest) in molecule_pointcloud.cpp and molecule.cpp 19050 - lists.cpp was deleted as specialization of atom* was not needed anymore 19051 - link, unlink, add, remove, removewithoutcheck all are not needed for atoms anymore, just for bonds (where first, last entries remain in molecule) 19052 - CreateFatherLookupTable() was put back into class molecule. 19053 - molecule::InternalPointer is now an iterator 19054 - class PointCloud: GoToPrevious() and GetTerminalPoint() were dropped as not needed. 19055 - some new STL functions in class molecule: size(), empty(), erase(), find() and insert() 19056 19057 commit 31af190705ad6f16748534860be756c1d13b38c1 19058 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19059 Date: Thu Mar 4 17:03:57 2010 +0100 19060 19061 Made the World Iterators conform to STL-Structure 19062 19063 commit e87acf50f98112d75e2652d26e782186d90e5f4e 19064 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19065 Date: Thu Mar 4 16:22:56 2010 +0100 19066 19067 BROKEN: removed legacy AtomList from molecule class 19068 19069 commit bd58fb2b24b4e60efc12ec92eea4888bf318d98e 19070 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19071 Date: Thu Mar 4 16:20:51 2010 +0100 19072 19073 Added an iterator pattern for observed Data structures 19074 19075 commit 6e6e1060a418df49545378378991506d6ae25dea 19076 Author: Frederik Heber <heber@ins.uni-bonn.de> 19077 Date: Thu Mar 4 15:57:48 2010 +0100 19078 19079 BUGFIX: config::SaveTREMOLO() - TREMOLO does not like particle Id 0 19080 19081 - particle Id 0 are thrown away on saving by TREMOLO. Hence, we add one on each particle number and bond id and molecule number (i.e. counting from one). 19082 19083 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19084 19085 commit 63b56a73e21b1784b8d53fca43194af559c7eece 19086 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19087 Date: Thu Mar 4 11:56:58 2010 +0100 19088 19089 Changed Name of the QTMoleculesView 19090 19091 commit e6a9c182065a2c9e05f3e7d8e40b87878aa191a8 19092 Merge: 6a661c8 66e95ea 19093 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19094 Date: Thu Mar 4 11:40:52 2010 +0100 19095 19096 Merge branch 'MenuRefactoring' into QT4Refactoring 19097 19098 Conflicts: 19099 19100 molecuilder/src/Makefile.am 19101 19102 commit 66e95ead2481671ca5327eb6731a586ae0e2d542 19103 Merge: a28a836 57adc72 19104 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19105 Date: Thu Mar 4 11:34:52 2010 +0100 19106 19107 Merge branch 'StructureRefactoring' into MenuRefactoring 19108 19109 commit 57adc722ba6d4dbc04bdd2fa77d696ce701237a7 19110 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19111 Date: Thu Mar 4 11:33:44 2010 +0100 19112 19113 Added methods to query Molecules by ID 19114 19115 commit 57f5cf66e79c1035c22cc13e2b499ac118b6994a 19116 Merge: 6bc51d7 88d5869 19117 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 19118 Date: Thu Mar 4 10:49:45 2010 +0100 19119 19120 Merge commit 'till/StructureRefactoring' into StateAndFormatParser 19121 19122 Conflicts: 19123 19124 molecuilder/src/Makefile.am 19125 molecuilder/src/unittests/Makefile.am 19126 19127 SOURCE and HEADER are both one long line and thus could not be merged automatically. 19128 19129 commit 6bc51d7e039a246cef5026ea3b2aba64674a5b59 19130 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 19131 Date: Thu Mar 4 10:24:36 2010 +0100 19132 19133 Work-in-progress commit of change tracker and parser 19134 19135 commit 706f9b22062831f6fc386e4862c76d896c32988b 19136 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 19137 Date: Thu Mar 4 10:21:38 2010 +0100 19138 19139 Work-in-progress commit of parser and changeTracker 19140 19141 commit 70429af98b7a60eccab50d1fbd763fee7d530c50 19142 Merge: f42e951 b720910 19143 Author: Frederik Heber <heber@ins.uni-bonn.de> 19144 Date: Wed Mar 3 20:17:58 2010 +0100 19145 19146 Merge branch 'FixDissectIntoSubgraphs_ConstructBondGraphcheck' into Analysis_PairCorrelation 19147 19148 commit f42e951c3e2e0c51cf91130e6192c9c6711417fa 19149 Merge: 6e8dc28 85da4ea 19150 Author: Frederik Heber <heber@ins.uni-bonn.de> 19151 Date: Wed Mar 3 20:17:49 2010 +0100 19152 19153 Merge branch 'FixBinDataStartEnd' into Analysis_PairCorrelation 19154 19155 commit 6e8dc28d62ece34c138a0fc8497e666bdc4b7389 19156 Merge: 046783a caf4ba6 19157 Author: Frederik Heber <heber@ins.uni-bonn.de> 19158 Date: Wed Mar 3 20:17:19 2010 +0100 19159 19160 Merge branch 'FixLinkedCellConstructor_Setempytcheck' into Analysis_PairCorrelation 19161 19162 Conflicts: 19163 19164 molecuilder/src/linkedcell.cpp 19165 19166 Conflict was due to changes: 19167 - set->empty() check prepended by set== NULL 19168 - cout/cerr -> Log()/eLog() 19169 19170 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19171 19172 commit 85da4ea11f7062dd89910b1599c99c2a9424cc65 19173 Author: Frederik Heber <heber@ins.uni-bonn.de> 19174 Date: Wed Mar 3 20:14:31 2010 +0100 19175 19176 BUGFIX: in BinData() binmap should be initialized from start to end in all three cases not just in third. 19177 19178 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19179 19180 commit 271e17edd356e78553feaa53e435fda094d20a46 19181 Merge: 7908076 bd61b41 19182 Author: Frederik Heber <heber@ins.uni-bonn.de> 19183 Date: Wed Mar 3 20:13:43 2010 +0100 19184 19185 Merge branch 'FixGetBin_tointeger' into FixBinDataStartEnd 19186 19187 commit bd61b4123d6339083d04e167580d407cbf99c263 19188 Author: Frederik Heber <heber@ins.uni-bonn.de> 19189 Date: Wed Mar 3 19:41:03 2010 +0100 19190 19191 BUGFIX: rounding imprecision let values appear twice in BinMap. 19192 19193 - we fix this by always converting bin to integer and then back to double when putting into map in BinData() 19194 - GetBin returns integer 19195 19196 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19197 19198 commit b72091007fb048354021b5b5be240f73a47cda77 19199 Author: Frederik Heber <heber@ins.uni-bonn.de> 19200 Date: Wed Mar 3 19:43:55 2010 +0100 19201 19202 BUGFIX: MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() - check of return value BondGraph::ConstructBondGraph() was wrong way round 19203 19204 - negate symbol "!" forgotten. 19205 19206 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19207 19208 commit caf4ba69e6ca6a15e9b88c78000a01a9b1659cba 19209 Author: Frederik Heber <heber@ins.uni-bonn.de> 19210 Date: Wed Mar 3 19:37:28 2010 +0100 19211 19212 BUGFIX: LinkedCell::LinkedCell() - before set->empty() check whether set is not NULL. 19213 19214 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19215 19216 commit 88d5869468621298db2b33f61023ef4301fd78eb 19217 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19218 Date: Wed Mar 3 18:47:40 2010 +0100 19219 19220 Added mechanisms that allow reuse of IDs and changing Ids of Atoms 19221 19222 commit 1c51c861e1b8694410e5e4704ed0144951b98c2e 19223 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19224 Date: Wed Mar 3 16:46:03 2010 +0100 19225 19226 Added methods for querying molecules using descriptors 19227 19228 commit 046783a553356e9a05c3b45658a6d81b7331ebcb 19229 Author: Frederik Heber <heber@ins.uni-bonn.de> 19230 Date: Wed Mar 3 15:46:13 2010 +0100 19231 19232 Default molecule name can be set via command line, BUGFIX: molecule::DepthFirstSearchAnalysis() seg'faulted on no atoms. 19233 19234 Allow '-I' on empty configs: 19235 - molecule::DepthFirstSearchAnalysis(): check whether AtomCount==0 19236 - molecule::molecule(): name is now not 'none' but copied from World::DefaultName 19237 - MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs(): 19238 - Check for false from BondGraph::ConstructBondGraph() 19239 - Check for Subgraphs or its successor being NULL 19240 - ParseCommandLineOptions(): first molecule only set active if molecules is not empty. 19241 19242 new case 'X' for setting default molecule name: 19243 - new member variable World::DefaultName 19244 - constructor of molecule uses this default name 19245 - case 'X' in ParseCommandLineOptions() added for setting default name 19246 19247 commit a837d053ff10e6e193a98401553d45448b6478c2 19248 Author: Frederik Heber <heber@ins.uni-bonn.de> 19249 Date: Wed Mar 3 15:45:28 2010 +0100 19250 19251 BUGFIX: FillBoxWithMolecule() - bonds were added after adding of each atom, not after molecule. 19252 19253 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19254 19255 commit dbb47413a2117951f3188ef85e30cc92c38d48b4 19256 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19257 Date: Wed Mar 3 14:57:41 2010 +0100 19258 19259 Improved Doxygen documentation 19260 19261 commit b343068e46322d6b11c4bb7e0e7aaa7246d69132 19262 Author: Frederik Heber <heber@ins.uni-bonn.de> 19263 Date: Wed Mar 3 11:13:19 2010 +0100 19264 19265 singleton class World introduced, contains only cell_size from class molecule. 19266 19267 - class World is actually code from Till Crueger from his branch StructureRefactoring. 19268 - has been introduced here in minimalistic form to allow molecule::cell_size to be outsourced to World::cell_size 19269 - access to cell_size can be obtained from anyhwere by invoking World::get()->cell_size 19270 - INFO: cell_size was placed in class molecule for the fragmentation procedure where the cell_size had to be individually adapted to each fragment. 19271 19272 - all appearances have been changed accordingly. Where appropriate we have employed a const pointer onto cell_size. 19273 19274 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19275 19276 commit c5805a6ee89c1ab92cf6544d5df6bd3f5fc5296a 19277 Author: Frederik Heber <heber@ins.uni-bonn.de> 19278 Date: Wed Mar 3 10:31:24 2010 +0100 19279 19280 FIX: allowing empty config files, and filling can deal with no molecules being present. 19281 19282 FillBoxWithMolecule(): 19283 - Additional checks whether AtomCount>0 19284 - FIX: CopyAtoms was not initialised to NULL, hence wrong atoms might get "bonded". 19285 - if TesselStruct or LCList are NULL, these refer to empty molecules not to an error 19286 - breaking when atom would be placed was wrong, just continue to next atom of filler molecule. 19287 19288 config::LoadMolecule() 19289 - we do not performCriticalExit() when MaxTypes==0, indicating present config file with no atoms. 19290 19291 commit cb85c2e23c34bb8b96ceb385c790c6a65fb325c1 19292 Author: Frederik Heber <heber@ins.uni-bonn.de> 19293 Date: Tue Mar 2 17:12:19 2010 +0100 19294 19295 ManipulateAtoms() can turn atoms around bonds again, in ParseCommandLineOptions() case 'C' Binwidth can be specified. 19296 19297 - ManipulateAtoms(): new submenu 't' to turn an atom around a neighbouring bond. 19298 - ParseCommandLineOptions(): case 'C' - now BinWidth can be specified. 19299 19300 commit 8db5984e6a27b79db3e7303fda908ac9035d47f6 19301 Author: Frederik Heber <heber@ins.uni-bonn.de> 19302 Date: Mon Mar 1 21:48:40 2010 +0100 19303 19304 New class TriangleIntersection List and (hopefully) final fix of CorrelationToSurface(). 19305 19306 - Distances to surface were still calculated between the vector and the triangle plane not the triangle itself. Although functions such as BoundaryTriangleSet::GetClosestPointInsideTriangle had already been written. 19307 - As in class Tesselation there were many functions that all did the same: Calculate intersections between a point and all closeby triangles and then get the intersection or calculate this minimum distance and so ... 19308 - ... this was all put into a new class (in a new file): TriangleIntersectionList whose constructor scans all nearby triangles and put the calculates Intersections in the triangle into a list. 19309 - Functions as IsInside(), GetSmallestDistance(), GetClosestIntersection() and GetClosestTriangle() bring the desired functionality to the outside. 19310 - Respective functions in class Tesselation just make use of this new class and its member functions. 19311 - CorrelationToSurface() also directly instantiates this class to effectively use two of its functions. 19312 - Makefile.am has this new file in its SOURCES and HEADERS. 19313 - Tesselation:GetDistanceSquaredToSurface() -> Tesselation:GetDistanceToSurface(), FillBoxWithMolecule() has been adapted to this change. 19314 19315 AnalysisCorrelationToSurfaceUnitTest: 19316 - still has errors in it, as the distance were wrong before (because with respect to triangle plane, not triangle). Hence, the test was corrected. 19317 19318 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19319 19320 commit 30d9e7c524259d13971388d69a8299194ae02715 19321 Author: Frederik Heber <heber@ins.uni-bonn.de> 19322 Date: Mon Mar 1 21:46:40 2010 +0100 19323 19324 Bigger change to FillBoxWithMolecule(). 19325 19326 - BUG: Position check was only made for center of filler molecule without any translations, not on each atom. 19327 - BUG: Range was only from 0, to N[i]-1, not to N[0]. Although translations can also be in "negative" direction. 19328 - This is now changed, check is atom wise, all translations are taken into account. 19329 19330 commit b74f7dfc3cab111e2e5fbfe28dffa528131e6a7c 19331 Author: Frederik Heber <heber@ins.uni-bonn.de> 19332 Date: Mon Mar 1 21:41:21 2010 +0100 19333 19334 FIX: ParseCommandLineOptions - case 'C' used wrong LC width, case 'F' nows parses filler from file. 19335 19336 ParseCommandLineOptions: 19337 - case 'C': Linked Cell width was set to fixed double of radius and was hence uncorrelated to the BinWidth. This is bad for subsequent DistanceToSurface() searches which use LC. 19338 - case 'F': Filler molecules was encoded by hand so far, is now parsed from xyz file and the bond structure created by BondGraph. 19339 19340 commit 821907fcd566e75b22fa05a9671d131f0fef93f0 19341 Author: Frederik Heber <heber@ins.uni-bonn.de> 19342 Date: Mon Mar 1 21:28:32 2010 +0100 19343 19344 Added Vector Copy constructors, Vector::GetDistanceVectorToPlane() and Vector::DistanceToVector() makes use of it 19345 19346 - Copy Constructors taking const pointers and const reference as argument 19347 - Vector::DistanceToVector() basically renamed to Vector::GetDistanceVectorToPlane() 19348 - Vector::DistanceToVector() uses the latter 19349 19350 commit b11d3bed152ea5cc6a6964715aa2cf2520fb7e28 19351 Author: Frederik Heber <heber@ins.uni-bonn.de> 19352 Date: Mon Mar 1 21:24:45 2010 +0100 19353 19354 Added operators and state checkers to GSLVector. 19355 19356 - added operators +,-,*, +=, -=, *=, == and = 19357 - added IsZero() and IsOne(). 19358 - gslvectorunittest extended with state and operator test. 19359 19360 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19361 19362 commit 6a661c84ddb70b8d99fb640bff150da9a095a18e 19363 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19364 Date: Fri Feb 26 15:52:16 2010 +0100 19365 19366 FIX: Some QT-Related memory leaks 19367 19368 commit 2561df9603fa89c37a857881ef0c7679508c13a0 19369 Merge: cbf01e6 a28a836 19370 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19371 Date: Fri Feb 26 15:11:14 2010 +0100 19372 19373 Merge branch 'MenuRefactoring' into QT4Refactoring 19374 19375 Conflicts: 19376 19377 molecuilder/src/Makefile.am 19378 molecuilder/src/unittests/Makefile.am 19379 molecuilder/src/vector.cpp 19380 molecuilder/src/vector.hpp 19381 19382 commit a28a83646ee0892ab8c12d63a649ee1d0b44820c 19383 Merge: 5a72431 a1510d5 19384 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19385 Date: Fri Feb 26 15:01:57 2010 +0100 19386 19387 Merge branch 'StructureRefactoring' into MenuRefactoring 19388 19389 Conflicts: 19390 19391 molecuilder/src/UIElements/TextDialog.cpp 19392 19393 commit a1510d5b76a932257363ed507f59a28cd93e9924 19394 Merge: 1f22170 e6fdbe3 19395 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19396 Date: Fri Feb 26 14:57:01 2010 +0100 19397 19398 Merge branch 'FreddiesRefactoring' into StructureRefactoring 19399 19400 Conflicts: 19401 19402 molecuilder/src/Patterns/Observer.cpp 19403 molecuilder/src/World.cpp 19404 molecuilder/src/boundary.cpp 19405 molecuilder/src/molecule_dynamics.cpp 19406 molecuilder/src/unittests/AnalysisCorrelationToPointUnitTest.cpp 19407 molecuilder/src/unittests/AnalysisCorrelationToSurfaceUnitTest.cpp 19408 molecuilder/src/unittests/AnalysisPairCorrelationUnitTest.cpp 19409 molecuilder/src/unittests/Makefile.am 19410 molecuilder/src/unittests/bondgraphunittest.cpp 19411 molecuilder/src/unittests/listofbondsunittest.cpp 19412 19413 commit 1f22170b77da3dddeea87ecbaa98a3ee8603bfff 19414 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19415 Date: Fri Feb 26 14:04:59 2010 +0100 19416 19417 Small fixes 19418 19419 commit 24a5e09f04efb019de433cb90728399e3a3c830a 19420 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19421 Date: Fri Feb 26 13:40:52 2010 +0100 19422 19423 Added -Wall flag and fixed several small hickups 19424 19425 commit 7042f454d567e2b5ab6069b20134b2fef0f908bc 19426 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19427 Date: Fri Feb 26 12:47:16 2010 +0100 19428 19429 Changed the type of AtomIds and MoleculeIds to an opaque type 19430 19431 commit e6fdbe351d84e5890c3e6056f3c678ec947d0b31 19432 Author: Frederik Heber <heber@ins.uni-bonn.de> 19433 Date: Fri Feb 26 11:02:12 2010 +0100 19434 19435 MEMLEAK: In many tests World, MemoryUsageObserver, logger or errorLogger being singletons were instantiated but not destroyed. 19436 19437 - in some cases respective includes had to be added. 19438 19439 commit 5e528346fce5f94d79617270d297535340b80bc3 19440 Author: Frederik Heber <heber@ins.uni-bonn.de> 19441 Date: Fri Feb 26 11:01:50 2010 +0100 19442 19443 FIX: Values have been used uninitialized. 19444 19445 commit 5c859226ce6b4bc09fc8876473246d8ae02c04cd 19446 Author: Frederik Heber <heber@ins.uni-bonn.de> 19447 Date: Fri Feb 26 10:59:15 2010 +0100 19448 19449 MEMLEAK: TesselPoints and Vectors created during TesselationBoundaryTriangleTest::setUp() would not get free'd. 19450 19451 - Delete of triangle only destroys triangle, its lines and edges, not the TesselPoints 19452 - New array *tesselpoints[3] introduced, which stores pointers to the created TesselPoints and free's them in tearDown(). 19453 - Allocated Vector's for the TesselPoints have to be deleted as well, as the TesselPoints normally only receive referencing pointers. 19454 19455 commit 1ec0ac63d83df755053c48055c76f402e1c5c902 19456 Author: Frederik Heber <heber@ins.uni-bonn.de> 19457 Date: Fri Feb 26 10:58:39 2010 +0100 19458 19459 MEMLEAK: Lots of Free() have been forgotten after Malloc's at start of test. 19460 19461 commit b84d5d887c607974a6694af1e78cac21610ef23f 19462 Author: Frederik Heber <heber@ins.uni-bonn.de> 19463 Date: Fri Feb 26 10:55:28 2010 +0100 19464 19465 FIX: operator implementation of Vector algebra was wrong and caused memory leaks. 19466 19467 - operator+, operator- and operator* were implemented as creating new Vectors and returning its pointer instead of creating an object and returning it as constant. This would cause memory leaks, as these pointers in complex algebraic expressions would never get free'd. 19468 - return values of operatorx= with x in {+,-,*} have been made const (suggested by Meyers' Effective C++) 19469 19470 commit e3cbf97c293811b5928773af7f284b764b0a5796 19471 Author: Frederik Heber <heber@ins.uni-bonn.de> 19472 Date: Fri Feb 26 10:54:46 2010 +0100 19473 19474 FIX: Values in FindNonConvexBorder() and molecule::ConstrainedPotential() were used uninitialized. 19475 19476 commit aac3ef87f192e64ea709f56ccca66a2af5a41c9e 19477 Author: Frederik Heber <heber@ins.uni-bonn.de> 19478 Date: Fri Feb 26 10:54:12 2010 +0100 19479 19480 FIX: Replaced memoryusageobserverunittest.hpp include by correct memoryusageobserver.hpp 19481 19482 commit cf1a078eef5d2d8b8e2b885b2c189c3438c2fc24 19483 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19484 Date: Thu Feb 25 17:56:16 2010 +0100 19485 19486 FIX: repaired some access violation of STL-iterators in Observer and ActionRegistry 19487 19488 commit cbc5fbee9bc58a85fd5fabd2d6648d52abe180a2 19489 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19490 Date: Thu Feb 25 17:43:02 2010 +0100 19491 19492 Made the world solely responsible for creating and erasing molecules. 19493 19494 commit 93c8edec6e217e70e348d05fa8a94e80f6fb8eb9 19495 Author: Frederik Heber <heber@ins.uni-bonn.de> 19496 Date: Thu Feb 25 16:21:22 2010 +0100 19497 19498 MEMLEAK: mismatched delete/free, matrix in GSLMatrix::Transpose() was delete'd not gsl_matrix_free'd. 19499 19500 commit d5af3e0a0d115abdddb56bb713435a7cfb057dc9 19501 Author: Frederik Heber <heber@ins.uni-bonn.de> 19502 Date: Thu Feb 25 16:18:30 2010 +0100 19503 19504 FIX: constructor of element now is shortened and all its member variables initialized (thx to BondGraphUnitTest). 19505 19506 commit 9d4c2000b03ca725f4141ae2b45d836326d54159 19507 Author: Frederik Heber <heber@ins.uni-bonn.de> 19508 Date: Thu Feb 25 16:18:06 2010 +0100 19509 19510 MEMLEAK: Tesselation::CorrectAllDegeneratedPolygons() forgot to remove DegeneratedTriangles. 19511 19512 commit 028c2eb520e9fa02c50f97aa4eb9aa5a4956d04e 19513 Author: Frederik Heber <heber@ins.uni-bonn.de> 19514 Date: Thu Feb 25 16:17:47 2010 +0100 19515 19516 MEMLEAK: World class did not neither signOff() nor remove its molecules_deprecated. 19517 19518 commit f72703503b2232f1a88ca6d29f1b3ccbd56c97b2 19519 Author: Frederik Heber <heber@ins.uni-bonn.de> 19520 Date: Thu Feb 25 16:06:38 2010 +0100 19521 19522 MEMLEAK: ActOnAllTest forgot to delete the copied VectorList Ref and the MemoryUsageObserver, and in ScaleTest() factors and inverses array were not Free'd. 19523 19524 commit f59d81341edf35014c8be2383062512cf6694cf6 19525 Author: Frederik Heber <heber@ins.uni-bonn.de> 19526 Date: Thu Feb 25 16:05:05 2010 +0100 19527 19528 MEMLEAK: created ActionSequence was not deleted at the end of some tests. 19529 19530 commit c296c2bf71b3778d7fcc1a7d31edff3c7ecb08e7 19531 Author: Frederik Heber <heber@ins.uni-bonn.de> 19532 Date: Thu Feb 25 15:32:35 2010 +0100 19533 19534 MEMLEAK: Observable::signOff() erases its own iterator, some more documentation added 19535 19536 - Observable::signOff() erases a given Observer from the Observer list, but it had no backup iterator to go on afterwards. 19537 19538 commit cbf01e67188dd162136b08f9f75f53c90cde64b9 19539 Merge: 326a43b 5a72431 19540 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19541 Date: Thu Feb 25 15:23:33 2010 +0100 19542 19543 Merge branch 'MenuRefactoring' into QT4Refactoring 19544 19545 Conflicts: 19546 19547 molecuilder/src/Actions/Process.cpp 19548 molecuilder/src/Actions/Process.hpp 19549 molecuilder/src/Actions/small_actions.hpp 19550 molecuilder/src/Makefile.am 19551 molecuilder/src/UIElements/TextDialog.cpp 19552 molecuilder/src/World.cpp 19553 molecuilder/src/unittests/Makefile.am 19554 19555 commit 9b6b2f5c5519a056450ae40ab8f2ff0d0476d809 19556 Author: Frederik Heber <heber@ins.uni-bonn.de> 19557 Date: Thu Feb 25 15:17:15 2010 +0100 19558 19559 Tests now work with Eclipse ECUT's TestRunner. 19560 19561 - new switch in configure.ac: --enable-ecut 19562 - all tests are compiled as single test as before 19563 - and a new TestRunner test suite that combines all test into a single executable which can be run as CppUnit program in Eclipse (and then gives JUnit like output). 19564 19565 commit 5a72431ddcfef19d649bae76105e9be7c354b7aa 19566 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19567 Date: Thu Feb 25 14:01:36 2010 +0100 19568 19569 Added a method to query Elements using the Dialog structure 19570 19571 commit 957c4236611c50354d1be29ba7a8f0bd3c17e8e7 19572 Merge: 0188ea2 244d265 19573 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19574 Date: Thu Feb 25 12:15:22 2010 +0100 19575 19576 Merge branch 'StructureRefactoring' into MenuRefactoring 19577 19578 commit 244d26586ddc827088fbe4ebefb4ab1e79777861 19579 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19580 Date: Thu Feb 25 12:02:53 2010 +0100 19581 19582 Removed unittest files from the documentation 19583 19584 commit d2dbac02371bc4bee8282cbe021c353e01009dd0 19585 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19586 Date: Thu Feb 25 11:50:54 2010 +0100 19587 19588 moved Iterators for the World to a seperate file 19589 19590 commit 0e2a479de952e453e6f956e78d72739043a4c7a5 19591 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19592 Date: Thu Feb 25 11:32:14 2010 +0100 19593 19594 Added overloaded methods for all methods in the world taking an AtomDescriptor 19595 19596 commit f16a4be57592953464b3be117545615b04328223 19597 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19598 Date: Thu Feb 25 11:18:50 2010 +0100 19599 19600 Added Descriptor that allows querying of atoms by their type 19601 19602 commit 02ee152fb4a2671e1975d6205dec5168dd7e7ee7 19603 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19604 Date: Wed Feb 24 17:44:58 2010 +0100 19605 19606 Improved documentation of the World-class 19607 19608 commit 46d9587b2240f976c33474cc5e1ab83d919036b3 19609 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19610 Date: Wed Feb 24 16:29:12 2010 +0100 19611 19612 Made the world solely responsible for creating and destroying atoms. 19613 19614 commit 68510095656406d3fa340540ead2947109c3d4c2 19615 Author: Frederik Heber <heber@ins.uni-bonn.de> 19616 Date: Wed Feb 24 14:17:55 2010 +0100 19617 19618 BUGFIX: Tesselation test failed for all molecules on very first run in clean build directory. 19619 19620 - Fail was caused by rmdir instead of rm -rf, only the latter can delete directories with contents. 19621 19622 commit 775d1332dac2d98e150640bab72e75a8a55d0a66 19623 Author: Frederik Heber <heber@ins.uni-bonn.de> 19624 Date: Sun Feb 21 14:34:41 2010 +0100 19625 19626 Filling has a MaxDistance, somes changes to the Correlation Analysis. 19627 19628 Correlation: 19629 - OutputCorrelation() have setprecision(8), as irregularities appeared in the output files with regard to the number of digits. 19630 - ParseCommandLineOptions() for case 'C' now needs BinStart and BinEnd. However, may be set to 0,0 (search for yourself), or (0,-1) (start at 0, but search end for yourself). 19631 - BUGFIX: argument index of element parameter was wrong from the change [E/P/S]. 19632 19633 Filling: 19634 - PrepareClustersinWater() has new parameter MaxDistance, which is similar to Boundary only for the maximum thickness of water layer. 19635 - ParseCommandLineOptions() has new option -FF, if MaxDistance is set to -1, it is ignored. 19636 19637 commit b54ac804770af8e83f6b370746a4c0eba37f99f5 19638 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19639 Date: Fri Feb 19 15:31:56 2010 +0100 19640 19641 Added templates that allow arbitrary calculations on atoms to be mapped to sets of Atoms 19642 19643 commit afb47f9975466cee3a9f4f362aa7bf8f6944ffd4 19644 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19645 Date: Fri Feb 19 12:49:54 2010 +0100 19646 19647 Added a mechanism that allows the world to track changes done by the manipulators 19648 19649 commit 7c4e29a0f614d09ec830c9b5de3be33450d2e688 19650 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19651 Date: Fri Feb 19 12:31:39 2010 +0100 19652 19653 Added a class that allows constructing Processes that have a result 19654 19655 commit b2cfdbdfdd88b6e10f0f70324107b161c29c6fb8 19656 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19657 Date: Thu Feb 18 17:46:07 2010 +0100 19658 19659 Added a method that allows manipulation of selected atoms 19660 19661 commit 865a945a9d2eacb1afa6069866839972485957de 19662 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19663 Date: Thu Feb 18 14:21:35 2010 +0100 19664 19665 Added iterator structure that allows iterating over selected atoms in the World. 19666 19667 commit 0188ea2bebbe43e54233f62612634be31cd08d9b 19668 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19669 Date: Thu Feb 18 12:38:02 2010 +0100 19670 19671 Added a progress indicator for the text menu 19672 19673 commit 7dad108da502aed41b703eec7a4b7305cc930a90 19674 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19675 Date: Wed Feb 17 18:07:35 2010 +0100 19676 19677 Added a special class of Actions that take some time. 19678 19679 commit 326a43bd17e3087bcceb5c16ee5ed98deff54ee1 19680 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19681 Date: Wed Feb 17 18:07:35 2010 +0100 19682 19683 Added a special class of Actions that take some time. 19684 Added a statusbar to the window that shows world status and progress of the current processes. 19685 19686 commit b1d8092d9ec052987057bfe8c1db017ea5905816 19687 Merge: 7ba3248 3548592 19688 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19689 Date: Wed Feb 17 12:15:27 2010 +0100 19690 19691 Merge branch 'StructureRefactoring' into QT4Refactoring 19692 19693 Conflicts: 19694 19695 molecuilder/src/Makefile.am 19696 molecuilder/src/builder.cpp 19697 molecuilder/src/unittests/Makefile.am 19698 19699 commit 3548592787dc5efb58b2018c79af1646956f3fc3 19700 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19701 Date: Tue Feb 16 18:26:59 2010 +0100 19702 19703 Moved control of molecules and periode to World. 19704 19705 commit 7a1ce5357081767198c4e7f7e867143f5d19dda0 19706 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19707 Date: Tue Feb 16 17:24:07 2010 +0100 19708 19709 Rebuilt AtomDescriptors using PIMPL-Idiom and added unittest for descriptors 19710 19711 commit d1c5e2c1e093b9756002d8db06bda62bdb2c9057 19712 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19713 Date: Mon Feb 8 17:23:03 2010 +0100 19714 19715 Improved Descriptor mechanism to allow calculations using descriptors. 19716 19717 commit 164a33ff15a1bf3ee4cf3384e5372f87f6e826e0 19718 Author: Frederik Heber <heber@ins.uni-bonn.de> 19719 Date: Mon Feb 8 16:26:30 2010 +0100 19720 19721 changed case 'C' of ParseCommandLineOptions to allow selecting between the three different pair correlation analysis functions. 19722 19723 - case 'C' now expects additional first parameter: A type which is E, S or P for element, surface or pair. Via a switch it selects either of the three functions. 19724 19725 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19726 19727 commit fc1b2481dd4f072d50b8fb757f2617ea848df96d 19728 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19729 Date: Fri Feb 5 17:25:40 2010 +0100 19730 19731 Added descriptors that allow multiple kinds of access to atoms 19732 19733 commit d346b6bac7946bcc3b5530055071dd5ee3239ab7 19734 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19735 Date: Fri Feb 5 16:19:27 2010 +0100 19736 19737 Made all atoms register themselves with the world upon creation 19738 19739 commit 4d9c01f8014759f2f19a4f8d375d102f00f3be13 19740 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19741 Date: Fri Feb 5 15:53:21 2010 +0100 19742 19743 Fixed some problems with the usage of Boost::threads 19744 19745 commit 4422186ce5812cc3d3934d314a917aef810dc888 19746 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19747 Date: Fri Feb 5 14:01:57 2010 +0100 19748 19749 Added a directory to quarantine files that should be completely removed during transition. 19750 19751 - Usage of Files in this directory is necessary while transition is in progress, but highly deprecated 19752 19753 commit 50fc88c7a34d87fa03f0a01e626ca5bc3c374975 19754 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19755 Date: Fri Feb 5 13:43:39 2010 +0100 19756 19757 Made the Observer RAII-Pattern more secure. 19758 19759 commit 2ba827e737ea7333505df6e2640b2fab96158b1b 19760 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19761 Date: Wed Feb 3 17:42:06 2010 +0100 19762 19763 Changed all observed places to new observer structure 19764 19765 commit 317df86b76e0cf3898e566e6ebbd6b9fafddff25 19766 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19767 Date: Wed Feb 3 17:31:45 2010 +0100 19768 19769 Changed Observer to use RAII-style for locking changes. 19770 19771 commit 5d1611d4d063c3463b8409c51f533df160c3fda8 19772 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19773 Date: Wed Feb 3 17:02:14 2010 +0100 19774 19775 Started development of World Class 19776 19777 commit 314ff69958d03f134cae90c376a3c32e39b3485a 19778 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19779 Date: Wed Feb 3 15:11:22 2010 +0100 19780 19781 Assigned best priority to cached values. 19782 19783 commit 0c1d972b5cd5790e8579c86f2e76863867a9c955 19784 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19785 Date: Wed Feb 3 15:07:23 2010 +0100 19786 19787 Added mechanism that allows for assign priorities to observers 19788 19789 commit 9ad39100c520f261ac05516e4832db65f031d140 19790 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19791 Date: Tue Feb 2 17:46:29 2010 +0100 19792 19793 Added possibility to disable caching mechanism at compile time 19794 19795 commit f721c640ec1d531c6aabbc1c140b99499b4a3ebf 19796 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19797 Date: Tue Feb 2 17:22:22 2010 +0100 19798 19799 Made more methods of the molecule observable 19800 19801 commit ac9b567dcfceb87f9ec160392d8deff13fa247d5 19802 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19803 Date: Tue Feb 2 16:53:04 2010 +0100 19804 19805 Added simple way to retrieve formula of a molecule using caching 19806 19807 commit e3c8b48df554e40282fa946732e1c422ed66a415 19808 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19809 Date: Tue Feb 2 16:35:09 2010 +0100 19810 19811 Added data structure to allow caching of derived values 19812 19813 commit 6b59ab3832bf8abed2607c36831a5ee7109fb5d7 19814 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19815 Date: Tue Feb 2 13:38:01 2010 +0100 19816 19817 Added planned new class-layout 19818 19819 commit 7ba32480c6ee485679ff404928821f626f604ed1 19820 Merge: b8d1aeb a25aaef 19821 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19822 Date: Tue Feb 2 13:36:38 2010 +0100 19823 19824 Merge branch 'MenuRefactoring' into QT4Refactoring 19825 19826 Conflicts: 19827 19828 molecuilder/src/Actions/small_actions.cpp 19829 molecuilder/src/Makefile.am 19830 molecuilder/src/unittests/Makefile.am 19831 19832 commit a25aaef9d5e29b313b0a893b49836d905405be2b 19833 Merge: 520c8b5 1f1b23c 19834 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19835 Date: Tue Feb 2 13:22:06 2010 +0100 19836 19837 Merge commit 'heber/Analysis_PairCorrelation' into MenuRefactoring 19838 19839 commit 520c8b507bae79bf8378d88c7c0636da4565faa5 19840 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19841 Date: Fri Jan 15 16:53:29 2010 +0100 19842 19843 Moved method to rename molecules to a seperate Action 19844 19845 commit bfce50c9e2b9df88b6278b3ae642519e27baf14a 19846 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19847 Date: Fri Jan 15 16:53:29 2010 +0100 19848 19849 Moved method to rename molecules to a seperate Action 19850 19851 commit d5f2169f6714e2ce2f8c4379d8e1059f7a6c430d 19852 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19853 Date: Thu Jan 21 15:01:16 2010 +0100 19854 19855 Added a view that displays all molecules using a QTableWidget 19856 19857 commit 63c1f67df77cc8176b6c0383d0c9e95cea19ac9f 19858 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19859 Date: Tue Feb 2 12:52:04 2010 +0100 19860 19861 Added generic observer pattern framework. 19862 (cherry picked from commit 7bc7ce52eb7b4d606d90f49cbfa9da7a300c5d82) 19863 19864 Conflicts: 19865 19866 molecuilder/src/Makefile.am 19867 molecuilder/src/unittests/Makefile.am 19868 19869 commit b8d1aeb22373c5d1fad99d7977d1fe361a9c5313 19870 Merge: 9fe36bb 2ededc2 19871 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19872 Date: Tue Feb 2 12:38:06 2010 +0100 19873 19874 Merge branch 'MenuRefactoring' into QT4Refactoring 19875 19876 Conflicts: 19877 19878 molecuilder/src/Makefile.am 19879 molecuilder/src/builder.cpp 19880 molecuilder/src/unittests/Makefile.am 19881 19882 commit 1f1b23c1a3375bf711b272a532147453a51502c3 19883 Author: Frederik Heber <heber@ins.uni-bonn.de> 19884 Date: Tue Feb 2 10:43:52 2010 +0100 19885 19886 Possibility to store all bonds to file added. 19887 19888 So far we only could store the adjacency (i.e. atom along with all bond partners per line) to file. 19889 For plotting molecules with pgfplots (and maybe for other purposes too) we need to have single tupels of two per line. 19890 Hence, the following additions were implemented: 19891 19892 - new functions: BondedParticle::OutputBonds(), molecule::StoreBondsToFile() 19893 - new ParseCommandLineOption: J stores adjacency, j stores bonds. 19894 19895 commit 790807641151d4c499215c0701bd03f85f497e00 19896 Author: Frederik Heber <heber@ins.uni-bonn.de> 19897 Date: Sat Jan 30 20:00:47 2010 +0100 19898 19899 Output....Correlation() don't prepend header line with '#', BinData() changed to just calculate BinEnd by itself. 19900 19901 - BinData(): If BinEnd < BinStart, BinStart is taken over and just BinEnd calculate by GetMinMax(). 19902 - this is needed for many histograms to be added on top of one another, there we need to have the same bins in each. 19903 - in all Output..Correlation() functions the '#' was eliminiated as pgfplots does not like it. 19904 19905 commit d6eb8049299b893a41599fd1c5f5c0c9c90f7bee 19906 Author: Frederik Heber <heber@ins.uni-bonn.de> 19907 Date: Sat Jan 30 19:04:05 2010 +0100 19908 19909 FIX: FillBoxWithMolecule() - seed of random number generator was not set to current time. 19910 19911 - This caused always the same fillings for the same set of parameters. 19912 19913 commit 481601f903142b98da8a0a66523211e207373da7 19914 Author: Frederik Heber <heber@ins.uni-bonn.de> 19915 Date: Sat Jan 30 18:35:48 2010 +0100 19916 19917 Added output of surfacemap in ParseCommandLineOptions(), case 'C' again. 19918 19919 commit 2ededc23ca840f65c2141748eec08536adbb27d6 19920 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19921 Date: Thu Jan 28 14:02:49 2010 +0100 19922 19923 Added possibility to query doubles and vectors using dialogs. 19924 19925 commit 9fe36bb58ae84b51bb9fe0b8a94b9434f7bf9e41 19926 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19927 Date: Wed Jan 27 14:00:42 2010 +0100 19928 19929 Seperated QT and menu parts from the rest of the build process 19930 19931 commit 04b6f9c4cd8d885f794fa20c327103eb776d9cb1 19932 Merge: 1ca488f 244a84a 19933 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19934 Date: Wed Jan 27 15:36:09 2010 +0100 19935 19936 Merge commit 'heber/Analysis_PairCorrelation' into MenuRefactoring 19937 19938 Conflicts: 19939 19940 molecuilder/src/unittests/Makefile.am 19941 19942 commit cef1d776bded0efe18d839a872aa9663f38401d0 19943 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19944 Date: Tue Jan 26 17:25:25 2010 +0100 19945 19946 Added basic structure for a GL-Visualization of molecules. 19947 19948 commit 244a84acead8d11574763c52af776b344fd46c40 19949 Author: Frederik Heber <heber@ins.uni-bonn.de> 19950 Date: Tue Jan 26 13:52:31 2010 +0100 19951 19952 GetDistanceToSurface() separated, filling now with water instead of boron, DissectMoleculeIntoConnectedSubgraphs() now working on list of molecules instead of single one. 19953 19954 - MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() so far was working on a single molecule (given by parameter) instead of the list already contained in the list of its class. 19955 - Tesselation::GetDistanceSquaredToSurface() is split up into function of same name, which calls finds the closest triangle and calls Tesselation::GetDistanceSquaredToTriangle() which contains the former code. 19956 - PeriodicCorrelationToSurface() was adapted to the above split. 19957 - in tesselation.cpp lots of list<> and set<>s were replaced by the already present and appropriate define's. 19958 19959 - small verbosity changes in: MatrixContainer::ParseMatrix(), TesselPoint::TesselPoint(), TesselPoint::~TesselPoint(), PointCloud::PointCloud(), PointCloud::~PointCloud(), Tesselation::GuessStartingTriangle(), BondGraph::LoadBondLengthTable() (status of parsing gives appropriate message). 19960 19961 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19962 19963 commit 1ca488f7e320046e400e980657d7c0d91e0356ae 19964 Merge: 8927aea 1cf5df4 19965 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19966 Date: Tue Jan 26 13:45:41 2010 +0100 19967 19968 Merge commit 'heber/Analysis_PairCorrelation' into MenuRefactoring 19969 19970 Conflicts: 19971 19972 Makefile.am 19973 molecuilder/src/Makefile.am 19974 molecuilder/src/builder.cpp 19975 molecuilder/src/unittests/Makefile.am 19976 19977 commit 315164b6c8e5a1302b98d6dd1aefc8ede4ec56b5 19978 Merge: 498ea07 f34def7 19979 Author: Frederik Heber <heber@ins.uni-bonn.de> 19980 Date: Tue Jan 26 13:41:04 2010 +0100 19981 19982 Merge branch 'FixVersioning3' into Analysis_PairCorrelation 19983 19984 commit f34def7cdde1404608ef61377d53e30b1c5d0bdb 19985 Author: Frederik Heber <heber@ins.uni-bonn.de> 19986 Date: Tue Jan 26 13:32:00 2010 +0100 19987 19988 Fixed versioning. 19989 19990 - FIX: version.h was falsely excluded in .gitignore 19991 - FIX: version.h in pcp/src, molecuilder/src and util/src was not added to repository. 19992 - note that version.c is created by the Makefile, hence is still present in .gitignore and rightly so. 19993 19994 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 19995 19996 commit 90082e20801741a0b3e7548834439421c48542ac 19997 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 19998 Date: Thu Jan 21 16:19:05 2010 +0100 19999 20000 Enabled editing of molecule names 20001 20002 commit 6adb960b2da881f6d14a84d5494d2b32a4790b0d 20003 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20004 Date: Thu Jan 21 15:45:25 2010 +0100 20005 20006 Added possibility for views to catch name changes of molecules 20007 20008 commit 57ee0d5caa59d7fc4f63f27545616746ba78b243 20009 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20010 Date: Thu Jan 21 15:01:16 2010 +0100 20011 20012 Added a view that displays all molecules using a QTableWidget 20013 20014 commit f8879dd41341e9b0285c43f7d9eec41d28414400 20015 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20016 Date: Thu Jan 21 12:11:05 2010 +0100 20017 20018 Added generic observer pattern framework. 20019 20020 commit d3a5ead8be3ae6a9161abdae5f08e8d3a79f81c0 20021 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20022 Date: Tue Jan 19 11:51:07 2010 +0100 20023 20024 Added dialogs for QT. 20025 20026 So far QTDialogs can query the same types a TextDialog can query. 20027 20028 commit a6f18095d659beb050ae15e28ec345f8bb72d26e 20029 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20030 Date: Fri Jan 15 16:53:29 2010 +0100 20031 20032 Moved method to rename molecules to a seperate Action 20033 20034 commit fa27ed6e67dc2377992b473bb19c8211f6e48f82 20035 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20036 Date: Fri Jan 15 15:59:35 2010 +0100 20037 20038 Added support to call MenuItems using QT4 20039 20040 commit 498ea07d7fcc0fdeb6f45c601642ecac6893a4a2 20041 Author: Frederik Heber <heber@ins.uni-bonn.de> 20042 Date: Thu Jan 14 19:06:40 2010 +0100 20043 20044 BUGFIX: Tesselation::IsInnerPoint() returned wrong result. 20045 20046 - We compared resulf of GetDistanceSquaredToSurface by > MYEPSILON instead of <. 20047 20048 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20049 20050 commit 124e14bf4f760cd397f977301cf1ef36d16a1c9c 20051 Merge: e9c677d 76102e6 20052 Author: Frederik Heber <heber@ins.uni-bonn.de> 20053 Date: Thu Jan 14 18:46:24 2010 +0100 20054 20055 Merge branch 'FixTemplatedMinMax' into FixFillingWithMolecule 20056 20057 commit 76102e670e79f1e76c1a1a9ce5ea225e0bb59a1d 20058 Author: Frederik Heber <heber@ins.uni-bonn.de> 20059 Date: Thu Jan 14 18:45:22 2010 +0100 20060 20061 Rather use parameter passing by value instead of reference. 20062 20063 - We cannot use Min/Max for temporaries such as return values. 20064 20065 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20066 20067 commit e9c677d36c2ee0c059231c45bd7a649b0b8198de 20068 Author: Frederik Heber <heber@ins.uni-bonn.de> 20069 Date: Thu Jan 14 18:43:34 2010 +0100 20070 20071 Unit test for BoundaryTriangleSet member functions added. 20072 20073 - for now tests for BoundaryTriangleSet::GetClosestPointInsideTriangle() is tested and working. 20074 20075 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20076 20077 commit 9473f6f36450986817e318b8952505cf40c6b6a1 20078 Author: Frederik Heber <heber@ins.uni-bonn.de> 20079 Date: Thu Jan 14 18:36:09 2010 +0100 20080 20081 FillBoxWithMolecule now allows boundary between filler molecules and the surface. 20082 20083 - boundary.cpp: 20084 - FillBoxWithMolecule() has additional parameter boundary and calls Tesselation::GetDistanceSquaredToSurface() to obtain distance to surface. 20085 - FillBoxWithMolecule(*) verbosity states now inner point or within boundary. 20086 20087 - builder.cpp: 20088 - ParseCommandLineOptions() in case 'F' takes seven arguments instead of six and calls FillBoxWithMolecule() correctly. 20089 20090 - tesselation.cpp: 20091 - Make const what needs to be const: BoundaryPointSet, BoundaryLineSet, BoundaryTriangleSet 20092 - added constructor BoundaryLineSet::BoundaryLineSet() that accept two endpoints instead of an array of two 20093 - new function BoundaryTriangleSet::GetClosestPointInsideTriangle() calculates closest point in a given triangle to a reference point and returns squared distance. 20094 - new function Tesselation::GetDistanceSquaredToSurface() that calculates the squared distance whose sign indicates whether reference is inside (-) or outside (+) and uses BoundaryTriangleSet::GetClosestPointInsideTriangle() 20095 - function Tesselation::IsInnerPoint() renamed to Tesselation::GetDistanceSquaredToSurface(). 20096 - new function Tesselation::IsInnerPoint() just uses Tesselation::GetDistanceSquaredToSurface() 20097 20098 commit 7b36fe340af5ac8dae85c5c94b0f1c47d61da462 20099 Author: Frederik Heber <heber@ins.uni-bonn.de> 20100 Date: Thu Jan 14 18:32:47 2010 +0100 20101 20102 Changed verbosity for Vector::GetIntersectionWithPlane(). 20103 20104 - when line is parallel to plane this is stated as good or bad, not as error. 20105 - Vector::GetIntersectionOfTwoLinesOnPlane() - unused variable pfactor removed 20106 20107 commit 8f67e29bbd34e9ce94aee9268529374212618b74 20108 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20109 Date: Thu Jan 14 17:21:02 2010 +0100 20110 20111 Started actual presentation of the GUI Window 20112 20113 commit ea94a8adcea12b6f8cf88a9d54bb7644629c360e 20114 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20115 Date: Thu Jan 14 15:50:36 2010 +0100 20116 20117 Added a UIFactory for construction of QT4 UIElements 20118 20119 commit 3027f8c08886536cc3c48b3e9a171ffbea833152 20120 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20121 Date: Thu Jan 14 14:40:44 2010 +0100 20122 20123 Build basis for a QT4 User interface 20124 20125 - Added compilation rules for QT4 UI 20126 20127 commit 8927aea618e98da8efa6063fbc8051a49ba83154 20128 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20129 Date: Wed Jan 13 12:14:43 2010 +0100 20130 20131 Made embeddMolecules menu-point use the new dialog framework 20132 20133 commit 48b47a2e45bcd678b981a71430946c2d99682229 20134 Author: Frederik Heber <heber@ins.uni-bonn.de> 20135 Date: Wed Jan 13 15:01:55 2010 +0100 20136 20137 FillWithMolecule() is now working correctly. 20138 20139 - FillWithMolecule() was almost working except for some positions very much outside. The problem was that a single closest point was found and its first line seen as shortest, despite all other connected lines were equally short due the point always being the one with shortest distance. This kept triangles better aligned from being excluded as they not necessarily belong to the first line 20140 - This was fixed by introducing a LineSet ClosestLines in Tesselation::FindClosestTrianglesToVector(). 20141 - If a candidate has equal distance, he is added to the list. 20142 - If a candidate has smaller distance, the list is cleared beforehand. 20143 - As only the adjacent triangles of the found lines are returned, depending routines don't notice the change. 20144 20145 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20146 20147 commit 9dbea5f1b6a8a9f9ba2cee284461dde66674804d 20148 Author: Frederik Heber <heber@ins.uni-bonn.de> 20149 Date: Wed Jan 13 15:01:30 2010 +0100 20150 20151 Templated Min and Max functions added. 20152 20153 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20154 20155 commit 8468cbc62c0387957c05d1be63c5b0450f3601b3 20156 Author: Frederik Heber <heber@ins.uni-bonn.de> 20157 Date: Wed Jan 13 15:00:14 2010 +0100 20158 20159 Boolean return value of Tesselation::IsInnerPoint in FillWithMolecule() was wrong way round. 20160 20161 - position is outer point if IsInnerPoint returns false, then FillResult should be true (this was amended by filling when FillIt was false). Fixed. 20162 20163 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20164 20165 commit fc9992d3a6ed99363516d12315df3de770c6335c 20166 Author: Frederik Heber <heber@ins.uni-bonn.de> 20167 Date: Wed Jan 13 14:30:01 2010 +0100 20168 20169 Small fixes to make checks working again. 20170 20171 - Tesselations tests 13 and 14 were not working due to two triangles being flipped in .dat 20172 - Tesselations tests 13, 14 and 15 were not working due to positions changed in .r3d due to GetCenter() being replaced by new/zero vector. 20173 was fixed by copying created .r3d and .dat files on top of present ones in regression folder. 20174 20175 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20176 20177 commit abc967a6094f7e796599b302620784209216bfbd 20178 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20179 Date: Wed Jan 13 12:14:43 2010 +0100 20180 20181 Made embeddMolecules menu-point use the new dialog framework 20182 20183 commit 29a4ccd8507165b11cde7870fc327a78fbf2f4c6 20184 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20185 Date: Wed Jan 13 12:05:17 2010 +0100 20186 20187 Used new Query Infrastructure for SimpleAdd menupoint 20188 20189 commit 7aa00055d960e70638224d627feb8e64a28f9730 20190 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20191 Date: Wed Jan 13 11:51:30 2010 +0100 20192 20193 Added infrastructure to query molecules from MoleculeList 20194 20195 commit 45f5d6c9765964e165f92356c6f5d155ec541135 20196 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20197 Date: Wed Jan 13 11:22:29 2010 +0100 20198 20199 Changed dialog structure to use objects for queries. 20200 20201 commit aab2b1b96129d975cf20e4bb5913abf3b610eda7 20202 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20203 Date: Mon Jan 11 11:40:20 2010 +0100 20204 20205 Removed some unessecary methods from oldMenu 20206 20207 commit 2414857c3831ba1486a06bbb005a62df4f3e9c11 20208 Author: Frederik Heber <heber@ins.uni-bonn.de> 20209 Date: Mon Jan 11 10:35:52 2010 +0100 20210 20211 Removed unnecessary epsilon parameter. 20212 20213 - epsilon before was used as a threshold parameter but is not needed anymore. 20214 - removed as parameter in case 'F' in builder.cpp 20215 - removed from Tesselation::IsInnerPoint() 20216 - removed from FillBoxWithMolecul() in boundary.?pp 20217 20218 commit fee69b843bd5d32a84f98c5e371186c1bb704c1c 20219 Author: Frederik Heber <heber@tabletINS.(none)> 20220 Date: Mon Jan 11 10:13:49 2010 +0100 20221 20222 Fixed Tesselation::IsInnerPoint() 20223 20224 - Both unit tests TesselationInsideOutsideTest and VectorUnitTest are working (and also all others btw); 20225 - FIX: BoundaryTriangleSet::GetIntersectionInsideTriangle() - checks whether intersection is one endpoint and performs the GetIntersectionOfTwoLinesOnPlane() right away to check whether we are inside of triangle 20226 - FIX: Vector::GetIntersectionOfTwoLinesOnPlane() - parallelity is now checked correctly and in accordance with interface description fixed in VectorUnitTest. 20227 20228 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20229 20230 commit fcad4b799965ab6d28e3051334372d1abd613525 20231 Author: Frederik Heber <heber@tabletINS.(none)> 20232 Date: Mon Jan 11 04:06:30 2010 +0100 20233 20234 InsideOutside unit test of tesselation is working correctly. 20235 20236 - FIX: BoundaryTriangleSet::GetIntersectionInsideTriangle() - don't need helper, just check whether CrossPoint is returned (and true) for all of the three sides. 20237 - FIX: Tesselation::IsInnerPoint() - projection onto plane and stuff was nonsense, just take the Point ans Intersection which is on the plane anyway. 20238 - FIX: Vector::GetIntersectionOfTwoLinesOnPlane() - coefficient MUST be zero (then vectors are coplanar), but parallelity check was missing. Also, we have to check whether s is in [0,1] in order to see whether we are inside the triangle side or outside. 20239 20240 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20241 20242 commit 68a53bfd326c1b3c6ea381d5fcb0614ae779b0f4 20243 Author: Frederik Heber <heber@tabletINS.(none)> 20244 Date: Mon Jan 11 04:04:59 2010 +0100 20245 20246 BUGFIX - Test was wrong in upper bounds of inside area. 20247 20248 - upper bounds were checked as sum_i fabs(x_i) <= 1, which is wrong, for a box any of each coordinate may be 1. 20249 20250 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20251 20252 commit 865272fcb494e2b53b4e6914346384ce617248de 20253 Author: Frederik Heber <heber@tabletINS.(none)> 20254 Date: Sun Jan 10 20:25:50 2010 +0100 20255 20256 Added Determinant() function to class GSLMatrix. 20257 20258 - new function GSLMatrix::Determinant() which calculates the determinant for square matrices by LU decomposition. 20259 20260 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20261 20262 commit 2793efb558f578fa40965e9c4d2048056459c45c 20263 Author: Frederik Heber <heber@tabletINS.(none)> 20264 Date: Sun Jan 10 20:24:58 2010 +0100 20265 20266 FIX - GSLVector::Set() return value was double instead of void. 20267 20268 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20269 20270 commit 9d63085898763e9d41d3cc3415931f494fb5f371 20271 Author: Frederik Heber <heber@tabletINS.(none)> 20272 Date: Sun Jan 10 20:24:02 2010 +0100 20273 20274 Vector::GetIntersectionOfTwoLinesOnPlane() rewritten. 20275 20276 Use routine suggested by Eric Weisstein of Wolfram, which is basically what we did before the matrix attempt. 20277 20278 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20279 20280 commit 31a6af013bfb4720b6f119e5968fc50a724596a6 20281 Author: Frederik Heber <heber@tabletINS.(none)> 20282 Date: Sun Jan 10 20:15:01 2010 +0100 20283 20284 libgslwrapper.a added to LDADD of most tests. 20285 20286 Since Vector class uses GSLMatrix in Vector::GetIntersectionOfTwoLinesOnPlane(), we need the lib where ever we have libmolecuilder.a. 20287 20288 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20289 20290 commit a5a630eae70b84b4135d54b0aefc6fc22cf9242f 20291 Author: Frederik Heber <heber@tabletINS.(none)> 20292 Date: Sun Jan 10 20:12:40 2010 +0100 20293 20294 BUGFIX - GetCenterOfSphere(): condition were not put correctly in brackets. 20295 20296 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20297 20298 commit ebe4d673a66c9047893c4fef730364c334110007 20299 Author: Frederik Heber <heber@tabletINS.(none)> 20300 Date: Sun Jan 10 20:10:52 2010 +0100 20301 20302 BUGFIX - molecule::MinimiseConstrainedPotential() OldPotential was used outside of loop in output message. 20303 20304 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20305 20306 commit 1f61b6e4d26290e24fee2f126f77158ad94e0652 20307 Author: Frederik Heber <heber@tabletINS.(none)> 20308 Date: Sun Jan 10 20:09:56 2010 +0100 20309 20310 Inclusion of config.h was missing. 20311 20312 This caused a bug with GSL's inline function definition. 20313 20314 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20315 20316 commit 3e50ff33f75d3d1d8f311edf3e5d93edeb8665dd 20317 Author: Frederik Heber <heber@tabletINS.(none)> 20318 Date: Sun Jan 10 20:07:52 2010 +0100 20319 20320 cstdlib header was missing, necessary for free, malloc and calloc 20321 20322 This was noted on laptop with gcc 4.1 (on workstation we have gcc 4.2). 20323 20324 Signed-off-by: Frederik Heber <heber@tabletINS.(none)> 20325 20326 commit 49e1aee5c4a49420580816bf2f1d91e3e614c777 20327 Author: Frederik Heber <heber@tabletINS.(none)> 20328 Date: Sun Jan 10 20:05:34 2010 +0100 20329 20330 cstring header was missing in files, supplying definition of strlen, strcpy, and so on. 20331 20332 This was noted on laptop with gcc 4.1 (on workstation we have gcc 4.2) 20333 20334 commit 3c5606481cdb4d2a55354f27895b7974cc9aca2b 20335 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20336 Date: Sat Jan 9 13:02:13 2010 +0100 20337 20338 Updated UML-Diagramm of all UI-Classes 20339 20340 commit 12b845dde3632f5d259a4ef1fecdb23ebba302f4 20341 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20342 Date: Sat Jan 9 12:30:49 2010 +0100 20343 20344 Seperated building of mainWindow and contained Menus 20345 20346 - Moved code to build Menus to builder.cpp 20347 - Moved WindowGeneration code to constructor 20348 20349 commit f6061053393b67472b604538fdfdae9f6563328c 20350 Author: Frederik Heber <heber@ins.uni-bonn.de> 20351 Date: Fri Jan 8 18:48:35 2010 +0100 20352 20353 Wrapper class for gsl_linalg along with working Unit test. 20354 20355 - new class LinearSystemOfEquations wraps all useful functions of the GSL library part linalg. 20356 - uses wrapper classes GSLVector and GSLMatrix in order to solve Ax = b for x. 20357 - new unit tests LinearSystemOfEquationUnitTest tests each part and is working. 20358 20359 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20360 20361 commit fc3b67ab727f7e08e2351fe21726f111d3fca2e5 20362 Author: Frederik Heber <heber@ins.uni-bonn.de> 20363 Date: Fri Jan 8 18:46:51 2010 +0100 20364 20365 Wrapper class for gsl_matrix along with working Unit test. 20366 20367 - new class GSLMatrix wraps all useful functions of the GSL library. 20368 - new unit tests GSLMatrixSymmetricUnitTest (symmetric case) and GSLMatrixUnitTest tests each part and is working. 20369 20370 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20371 20372 commit 9fb86009e5c88cc9099c3a3d1040728ee1cd442e 20373 Author: Frederik Heber <heber@ins.uni-bonn.de> 20374 Date: Fri Jan 8 18:44:51 2010 +0100 20375 20376 Wrapper class for gsl_vector along with working Unit test. 20377 20378 - new class GSLVector wraps all useful functions of the GSL library. 20379 - new unit test GSLVectorUnitTest tests each part and is working. 20380 20381 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20382 20383 commit 97498a1c712a846028cfe0e2f484ccda52680f60 20384 Author: Frederik Heber <heber@ins.uni-bonn.de> 20385 Date: Fri Jan 8 15:04:22 2010 +0100 20386 20387 Attempt to fix the tesselation::IsInnerPoint(). 20388 20389 We try the IsInnerPoint() as follows: 20390 1. Find nearest BoundaryPoints - working 20391 2. Find Closest BoundaryLine's - working 20392 3. Find closest Triangle that is well aligned (wrt to NormalVector and Distance) - unsure whether correctly working 20393 4. Check whether alignment is on boundary or inside/outside - working 20394 5. If on boundary, we check whether it's inside of triangle by intersecting with boundary lines - not working 20395 20396 Hence, we code a wrapper for GSL routines, to - finally - allow for solution of linear system of equations. 20397 20398 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20399 20400 commit cc04b7dcf53d227c2347afab510d4041e1140de4 20401 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20402 Date: Thu Jan 7 15:46:34 2010 +0100 20403 20404 Added a central registry that allows access to actions by name. 20405 20406 commit a562758de7d719868053e4339076c0d99b31a95f 20407 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20408 Date: Thu Jan 7 14:24:06 2010 +0100 20409 20410 Added support for creating a main window using the UIFactory. 20411 20412 commit f5a86a6666d55ff72b438e88b30809b17e2be41c 20413 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20414 Date: Tue Jan 5 16:34:52 2010 +0100 20415 20416 Added Basis for creating globally accessible and compatible UIElements 20417 20418 - Added Factories for UIElements that can be chosen at programm startup 20419 - Added Dialogs that can be used to query values 20420 20421 commit 3e026a4655f309a32574278ca3f02844f3d9e25b 20422 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20423 Date: Tue Jan 5 14:48:05 2010 +0100 20424 20425 Transitioned MergeMolecule Menu to new menu structure 20426 20427 commit 820a42fdc1600dad77d30858ee59ea01d1f8db16 20428 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20429 Date: Tue Jan 5 11:11:52 2010 +0100 20430 20431 Extracted all methods from MergeMolecules Menu 20432 20433 - Added new action that only displays an errorMessage 20434 20435 commit 235bede62ee6609f17d7778b150ccd667adf0025 20436 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20437 Date: Tue Jan 5 10:23:25 2010 +0100 20438 20439 Moved saveConfig method from oldmenu to a method inside config class 20440 20441 commit 6b932c7d7b3e3b190ec670a803b24bdffcbf9d38 20442 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20443 Date: Sat Jan 2 16:53:39 2010 +0100 20444 20445 Removed unecessary method stubs from oldmenu class 20446 20447 commit 477bb28e8a7c96953ef28630fb08028fa3bdb5a5 20448 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20449 Date: Sat Jan 2 16:49:40 2010 +0100 20450 20451 Moved several Methods from Menu to MoleculeListClass 20452 20453 commit 096214873dde5e791e08ce2990d335c95d4d57fb 20454 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20455 Date: Sat Jan 2 16:28:29 2010 +0100 20456 20457 Made EditMoleculesMenu a Submenu inside the MainMenu 20458 20459 commit 7c6f7347a55d7eaa5d6e2a0da8b6a11252f4dff5 20460 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20461 Date: Sat Jan 2 16:18:00 2010 +0100 20462 20463 Transitioned EditMoleculesMenu to new menu structure 20464 20465 commit c15ca26c8aaeb433b6c80f98d5a7967ed4398a4e 20466 Author: Frederik Heber <heber@ins.uni-bonn.de> 20467 Date: Tue Dec 29 15:48:49 2009 +0100 20468 20469 Changes to FindClosest...ToVector() and use of ..Map,..Set,..List defines in tesselation.cpp. 20470 20471 - Search and Replace for all occurences of defines ..Map,..Set,..List in tesselation.cpp to tighten code 20472 - New function Tesselation::FindClosestBoundaryPointsToVector() - replace Find(Second)ClosestPoint() 20473 - New functions Tesselation::FindClosestBoundaryLineToVector() and Tesselation::FindClosesttriangleToVector() 20474 - old functions FindClosestTriangleToPoint() and FindClosestTrianglesToPoint() start looking from BoundaryPoints only and thus might find a triangle being closer which we see from the wrong side 20475 - added unit test TesselationInOutsideUnitTest - checks IsInnerPoint and containments 20476 - adapated unit test TesselationUnitTest - checks tesselation only 20477 20478 commit 1020f0efe8e5aac8bc8bb893cf28f27c08302350 20479 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20480 Date: Tue Dec 29 13:56:55 2009 +0100 20481 20482 Extracted several methods from the EditMolecules Submenu. 20483 20484 commit 8f113e699e9964e0a218b631615dad0985d8985b 20485 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20486 Date: Tue Dec 29 13:20:20 2009 +0100 20487 20488 Added possibility to add default Items to textMenus 20489 20490 commit 77675ff1c3144d64d31a265fdcad4a77375bb44c 20491 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20492 Date: Tue Dec 29 12:57:09 2009 +0100 20493 20494 Moved flipChosen method from oldmenu to MoleculeListClass 20495 20496 commit 0229f957a22cd87075323d1b589049d0957c4480 20497 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20498 Date: Tue Dec 29 12:47:57 2009 +0100 20499 20500 Added more tests for Actionsequence 20501 20502 - Test if every included object is called and every removed object is left alone 20503 - Test if every included object is undone and every removed object is left alone 20504 20505 commit 71b20e8e52bf69205f641774cf6e270e8ac8e84c 20506 Author: Frederik Heber <heber@ins.uni-bonn.de> 20507 Date: Sat Dec 19 20:32:24 2009 +0100 20508 20509 Attempt to fix the embedding. 20510 20511 Basically it would be working, but there was some failures with the FindClosestTriangleToPoint() routines. 20512 We get triangles wrong if we start looking for the closest point. Actually, we should really look at each 20513 triangle and check the distance. Now, we look at least at each line, but code is unfinished and crashes at the end 20514 unexplainedly. 20515 20516 commit 3930ebe12872ce3db8024569a561d704959d5599 20517 Author: Frederik Heber <heber@ins.uni-bonn.de> 20518 Date: Sat Dec 19 20:29:02 2009 +0100 20519 20520 Smaller fixes. 20521 20522 - analysis_correlation.cpp: Info objects created at start of each function for debugging. 20523 - ParseCommandLineOptions(): case 'I' dissection added, some stuff was unexplained 20524 - molecule::CenterOrigin() - starting at start not next now, which left out first! 20525 20526 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20527 20528 commit 1cf5df4989b7f5e585059b55a6fab75b737ccdab 20529 Merge: ebbd3d3 73b5107 20530 Author: Frederik Heber <heber@ins.uni-bonn.de> 20531 Date: Thu Dec 17 18:52:45 2009 +0100 20532 20533 Merge branch 'CorrectDegeneratedPolygons' into Analysis_PairCorrelation 20534 20535 commit 73b510703a98881d7b9af8c6bf8062bb87535068 20536 Merge: 2130dd7 125b3c0 20537 Author: Frederik Heber <heber@ins.uni-bonn.de> 20538 Date: Thu Dec 17 18:50:04 2009 +0100 20539 20540 Merge branch 'FixDegeneratedTesselation' into CorrectDegeneratedPolygons 20541 20542 commit 125b3c03d0820c4f3bacd2d869f20d763758e94b 20543 Author: Frederik Heber <heber@ins.uni-bonn.de> 20544 Date: Thu Dec 17 18:45:35 2009 +0100 20545 20546 Non-convex tesselation seems to be working. 20547 20548 Seems like it has been working already. Only, we had some stupid test code still present after fixing the CorrectAllDegeneratedPolygons(). 20549 - Tesselation::FindThirdPointForTesselation() - IsDegenerated and length of two new baselines check removed. 20550 - CandidateForTesselation::IsDegenerated removed 20551 20552 commit 1473396142bb336f3624ec2b15023c20cfe170ea 20553 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20554 Date: Thu Dec 17 17:56:06 2009 +0100 20555 20556 Added unittest for ActionSequence. 20557 20558 commit 8166250ffff8b35d39b69b5f4f1dbd9d2d9f4aec 20559 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20560 Date: Thu Dec 17 15:50:06 2009 +0100 20561 20562 Update of class diagram for menu classes. 20563 20564 commit 898ae8256d30dfe56a15c98ba7a422143ba59106 20565 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20566 Date: Thu Dec 17 15:40:16 2009 +0100 20567 20568 Removed legacy code from old menu structure. 20569 20570 commit 1fa107dbc34a3e62d63a552642956a2a6ec3c408 20571 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20572 Date: Thu Dec 17 15:38:29 2009 +0100 20573 20574 Added an action that allows grouping and grouped execution of several actions. 20575 20576 commit a5041ec8d039f68329ca096fda2b8fc1c40b82ab 20577 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20578 Date: Thu Dec 17 15:21:47 2009 +0100 20579 20580 Added mechanism that allow to store and later execute sequences of Actions. 20581 20582 commit 68c50bb90b06925d449ff1dee5853e7b1d6c163f 20583 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20584 Date: Thu Dec 17 14:49:27 2009 +0100 20585 20586 Minimal Changes to the UML-Diagram of menu classes. 20587 20588 commit 0b2dd2f548baf71d7598b065038512ed8918160d 20589 Merge: 009e37b 4823731 20590 Author: Frederik Heber <heber@ins.uni-bonn.de> 20591 Date: Wed Dec 16 17:18:46 2009 +0100 20592 20593 Merge branch 'FixTestSuite' into FixDegeneratedTesselation 20594 20595 commit 009e37bb55a937cba6af84c753c094770358c5ce 20596 Merge: b998c31 c135eb7 20597 Author: Frederik Heber <heber@ins.uni-bonn.de> 20598 Date: Wed Dec 16 17:18:41 2009 +0100 20599 20600 Merge branch 'FixVersioning2' into FixDegeneratedTesselation 20601 20602 commit 48237319191afa5690b806b7801e3760839fc5b9 20603 Author: Frederik Heber <heber@ins.uni-bonn.de> 20604 Date: Wed Dec 16 17:13:53 2009 +0100 20605 20606 Fixing the testsuite. 20607 20608 - Putting performCriticalExit() everywhere blindly, is not actually such a good idea. Sometimes, we try opening files but it its not really bad when it fails. As there are fallbacks: 20609 - MoleculeListClass::AddHydrogenCorrection() - no problem if FITCONSTANT is missing 20610 - molecule::PickLocalBackEdges() - no problem if BackEdgeStack is empty, just means we have a Tree graph. 20611 - builder.cpp: Change text of case 'u' to contain 'invalid' arguments 20612 20613 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20614 20615 commit c135eb752daf3d66628c6e7a603c697293464835 20616 Author: Frederik Heber <heber@ins.uni-bonn.de> 20617 Date: Wed Dec 16 17:01:11 2009 +0100 20618 20619 Removed --tags as we have signed the "initial_commit" tag. 20620 20621 - git describe uses only signed tags if not told otherwise (--tags or --all) 20622 20623 commit ef81b0af9e8751502b741eab9c958fa73de74522 20624 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20625 Date: Wed Dec 16 15:40:09 2009 +0100 20626 20627 Improved documentation for menu framework. 20628 20629 commit f82ac4e1c4f69165e3602ccdadad86a82b35fd21 20630 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20631 Date: Wed Dec 16 14:58:12 2009 +0100 20632 20633 Added class diagram to document structure of menu framework 20634 20635 commit a223a8bfb0296f129adb66c871ddacecfdf73ba2 20636 Merge: 3a0b389 c967318 20637 Author: Frederik Heber <heber@ins.uni-bonn.de> 20638 Date: Wed Dec 16 13:58:40 2009 +0100 20639 20640 Merge branch 'MenuRefactoring' into JansCluster_water 20641 20642 commit c96731843638e56cd70638a14a5a58df98ddd337 20643 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20644 Date: Wed Dec 16 13:21:27 2009 +0100 20645 20646 Finished transformation of main menu. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20647 20648 commit 165d7df7af26713c606213e7edaaf7e92f455f2f 20649 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20650 Date: Wed Dec 16 11:08:33 2009 +0100 20651 20652 Rebuilt SubMenuItem to use inclusion (Strategy pattern) instead of inheritance. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20653 20654 commit c68025a54bebebfc7ccb12a5a0445bfc41564298 20655 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20656 Date: Wed Dec 16 10:58:21 2009 +0100 20657 20658 Added method to flip ActiveFlag for single molecules. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20659 20660 commit 835a0f230cbc85f91f577d9811e77616461f6d45 20661 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20662 Date: Wed Dec 16 10:49:55 2009 +0100 20663 20664 Added Title to DisplayMenuItems. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20665 20666 commit a306a2d77ee62ec2bc854a16527e4bc18fd298b1 20667 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20668 Date: Mon Dec 14 15:27:08 2009 +0100 20669 20670 Small fix to delete the complete menu. 20671 20672 Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20673 20674 commit 9d86096ac44b59937a46337abb7d8f7365b081fb 20675 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20676 Date: Mon Dec 14 15:24:49 2009 +0100 20677 20678 Added basic View functionality. - Added DisplayMenuItem to show certain types of Views - Added Views to make StringViews from methods producing strings and from methods taking streams Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20679 20680 commit 5b9bba364d0b3255eb2379d37a962641805d378b 20681 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20682 Date: Mon Dec 14 11:31:58 2009 +0100 20683 20684 Changed formating of menus and added protection to keep MenuItems from being added twice. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20685 20686 commit f767d4750ddd955bee133b42bfa6663168440d6f 20687 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20688 Date: Mon Dec 14 10:56:51 2009 +0100 20689 20690 Fixed memory leak in TextMenu Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20691 20692 commit 21c2461c78c147130738812a65af19b9c6c18851 20693 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20694 Date: Mon Dec 14 10:51:33 2009 +0100 20695 20696 Rebuild the main menu using the new structure as far as possible. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20697 20698 commit 65b6e082cfd9dc7a3425e801a334748f57e321ab 20699 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20700 Date: Tue Dec 15 18:12:30 2009 +0100 20701 20702 Added basic menu and action framework 20703 20704 - Added action base class 20705 - Added class to make actions from methods 20706 - Added Menu base class 20707 - Added TextMenu class to produce text menus 20708 - Added MenuItem base class for menu items 20709 - Added ActionMenuItem for menu items using an action 20710 - Added SubMenuItem class for menu items presenting a submenu 20711 - Added SeperatorItem class for menu seperators without functioninality 20712 Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20713 20714 commit 4aa42416b20dd9ccb3541499b817033693b501f0 20715 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20716 Date: Tue Dec 15 18:11:54 2009 +0100 20717 20718 Added capability to build doc from anywhere in the tree. Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20719 20720 commit b285242afc57209c3a338364d12c5c5ac7bc98a2 20721 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20722 Date: Mon Dec 7 15:40:02 2009 +0100 20723 20724 Added class diagramm to documentation directory Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20725 20726 commit 992a542f55b5ea8824a4644ee68872fac13f0298 20727 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20728 Date: Mon Dec 7 15:38:34 2009 +0100 20729 20730 Minor changes to menu::SaveConfig() Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20731 20732 commit 85bc8ed4237242b37b2c65bd7f08530fce9700cf 20733 Author: Tillmann Crueger <crueger@ins.uni-bonn.de> 20734 Date: Wed Dec 2 17:26:24 2009 +0100 20735 20736 Started refactoring of the menu. - Created new menu class - moved all menu functions inside menu class Signed-off-by: Tillmann Crueger <crueger@ins.uni-bonn.de> 20737 20738 commit b998c31f6ac5d93741e8063ef0755447d2b8171b 20739 Author: Frederik Heber <heber@ins.uni-bonn.de> 20740 Date: Wed Dec 16 12:53:06 2009 +0100 20741 20742 Fix attempts of the Tesselation. 20743 20744 One problem still remains: 20745 - degenerated triangles are created more than two times. 20746 20747 The following has been changed: 20748 - BondGraph::~BondGraph() - docu changes 20749 - FindNonConvexBorder() - added CheckListOfBaseLines() and StoreTrianglesInFile() before CorrectDegeneratePolygons() (allows checking of closed tesselation even when correction fails) 20750 - boundary.hpp: SingleStepWidth set to 10 20751 - Tesselation::AddTesselationLine() - FindLine set before if and hence we may use it twice and find() only once 20752 - Tesselation::FindStartingTriangle() - renaming of variables such that they are equal to FindNextSuitableTriangle() 20753 - Tesselation::FindNextSuitableTriangle() - using SphereCenter (is the result of GetCenterofCircumcenter()) 20754 - Tesselation::FindThirdPointForTesselation() - some rewrites to make the code clearer 20755 - CandidateForTesselation::IsDegenerated - designates candidate TesselPoint of a degenerated triangle 20756 - BoundaryTriangleSet::SphereCenter - contains the SphereCenter created during Tesselation of the triangle 20757 - FIX: Tesselation::CorrectAllDegeneratedPolygons() - only adds triangles to candidate list that are _not_ simply degenerated (this prevents two(four) singly degenerated but separate triangles to be put into the same polygon, resulting in an uneven number of triangles). 20758 - new function Vector::IsEqualTo() - checks whether vector is equal to another (within MYEPSILON bounds) 20759 20760 commit 5e8f821736499ecf8a4d8e4b1abc3e04d27a8dd1 20761 Author: Frederik Heber <heber@ins.uni-bonn.de> 20762 Date: Wed Dec 16 12:51:17 2009 +0100 20763 20764 FIX: MatrixContainer::ParseMatrix() should not call performCriticalExit(), when file opening fails. 20765 20766 - this caused failed BondLengthTable loading to exit the program, instead of falling back to vdW-Radii 20767 20768 commit cd7b0f6cb8805d0b23e5d123d8cc775108bccb8a 20769 Author: Frederik Heber <heber@ins.uni-bonn.de> 20770 Date: Wed Dec 16 12:49:40 2009 +0100 20771 20772 BUGFIX: delete(mol) belongs to the commented-out DissectMoleculeIntoConnectedSubgraphs(). 20773 20774 - caused the parsed molecule to be deleted (hence, start->next = NULL and end->previous = NULL, as they were unlinked). 20775 20776 commit a8eb4a11ebc32f3fb2ff166e058165534e1fe39a 20777 Author: Frederik Heber <heber@ins.uni-bonn.de> 20778 Date: Wed Dec 16 12:47:47 2009 +0100 20779 20780 Added versioning to each executable. 20781 20782 - credits to Ralf Wildenhues for writing the Makefile.am code 20783 - version.c section added to Makefile.am (pcp, molecuilder and util) 20784 - src/version.h to each pcp, molecuilder and util 20785 - each of the executables includes version.h and prints version in main() 20786 20787 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20788 20789 commit fad93cd290889e66970858cf89cbc54519c70742 20790 Author: Frederik Heber <heber@ins.uni-bonn.de> 20791 Date: Sat Nov 28 18:52:05 2009 +0100 20792 20793 The finding of the degenerated polygons' endpoints was not yet correct, fixed. 20794 20795 - PROBLEM: we always looked for quadragons as atomic units of degenerated polygons, however for aromatic rings there may actually be no quadrons sub parts but only a a hexagon to be found. 20796 - Tesselation::CorrectAllDegeneratedPolygons(): rename ListofFourse -> ListofDegeneratedPolygons 20797 - FIX: Tesselation::CorrectAllDegeneratedPolygons(): Number of simply degenerated polygons was returned instead of number of degenerated polygons 20798 - Rewritten Tesselation::CorrectAllDegeneratedPolygons() in the following manner (which is also a lot faster than before): 20799 1. Go through all BoundaryPoints 20800 2. Check whether they have two triangles with anti-parallel NormalVectors, indicating that this point is part of a degenerated polygon. 20801 3. Combine endpoint candidates based on whether there is a BoundaryLineSet in between, then put them into the same polygon. 20802 4. Proceed with 3. until all candidates have been put into BoundaryPolygonSets 20803 5. continue with the unchanged remainder on this new "ListofFours" (our list of degenerated polygons). 20804 20805 commit 2130dd7dbcd217fe4e291c7c4f3600e414c6b017 20806 Merge: af374d7 8560986 20807 Author: Frederik Heber <heber@ins.uni-bonn.de> 20808 Date: Sat Nov 28 16:48:41 2009 +0100 20809 20810 Merge branch 'FixDegeneratedTesselation' into CorrectDegeneratedPolygons 20811 20812 Conflicts: 20813 20814 molecuilder/src/tesselation.cpp 20815 20816 merge only necessary due to stupid git commit --amend 20817 20818 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20819 20820 commit 8560986364b882d262e113ac9b52ce6d6b7f4261 20821 Author: Frederik Heber <heber@ins.uni-bonn.de> 20822 Date: Sat Nov 28 15:58:40 2009 +0100 20823 20824 Correction of degenerated polygons is working. 20825 20826 - Correction of degenerated polygons: 20827 - incorporated into FindNonConvexBorder() 20828 - verbosity added: BoundaryPolygonSet::GetCenter(), BoundaryPolygonSet::ContainsBoundaryLine(), BoundaryPolygonSet::ContainsBoundaryPoint(), BoundaryPolygonSet::ContainsPresentTupel(), Tesselation::AddTesselationLine(), Tesselation::CorrectAllDegeneratedPolygons(), ArePolygonsEdgeConnected() 20829 - renamed function BoundaryPolygonSet::GetAllTrianglesFromEndpoints() to GetAllContainedTrianglesFromEndpoints() (as it only returns triangles whose endpoints are _all_ in the BoundaryPolygonset) 20830 - BoundaryPolygonSet::FillPolygonFromTrianglesOfLine() does not strictly return four or NULL endpoints, as it makes subsequent success checks (and verbose output of failure) harder. 20831 - FIX: Tesselation::RemoveTesselationTriangle() adds line to Tesselation::OpenLines of still attached to other triangle. 20832 - new struct BoundaryLineSetCompare(), that compares BoundaryLineSet's 20833 - new struct BoundaryPolygonSetCompare(), that compares BoundaryPolygonSet's 20834 - FIX: lots of small fixes to Tesselation::CorrectAllDegeneratedPolygons(): new backside triangles were not added to LinesOnBoundary, when joining adjacent polygons triangles were gathered from Four instead of current PolygonRunner, other combination was not added to SimplyDegeneratedTriangles, we did not check whether polygon to test was really planar (thx UnitTest) 20835 - FIX: CountTrianglePairContainingPolygon() - PairTrianglesnodes instead of TriangleNodes was clear()'ed. 20836 20837 - BUGFIX: FindAllDegeneratedLines() did not find the correct lines due to wrong comparison. Now we use a set with the comparator BoundaryLineSetCompare(). 20838 - valgrind runs through fine. 20839 20840 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20841 20842 commit af374d7a640d594e59252eb9cc95f6e933cddf9e 20843 Author: Frederik Heber <heber@ins.uni-bonn.de> 20844 Date: Sat Nov 28 15:58:40 2009 +0100 20845 20846 Correction of degenerated polygons is working. 20847 20848 - Correction of degenerated polygons: 20849 - incorporated into FindNonConvexBorder() 20850 - verbosity added: BoundaryPolygonSet::GetCenter(), BoundaryPolygonSet::ContainsBoundaryLine(), BoundaryPolygonSet::ContainsBoundaryPoint(), BoundaryPolygonSet::ContainsPresentTupel(), Tesselation::AddTesselationLine(), Tesselation::CorrectAllDegeneratedPolygons(), ArePolygonsEdgeConnected() 20851 - renamed function BoundaryPolygonSet::GetAllTrianglesFromEndpoints() to GetAllContainedTrianglesFromEndpoints() (as it only returns triangles whose endpoints are _all_ in the BoundaryPolygonset) 20852 - BoundaryPolygonSet::FillPolygonFromTrianglesOfLine() does not strictly return four or NULL endpoints, as it makes subsequent success checks (and verbose output of failure) harder. 20853 - FIX: Tesselation::RemoveTesselationTriangle() adds line to Tesselation::OpenLines of still attached to other triangle. 20854 - new struct BoundaryLineSetCompare(), that compares BoundaryLineSet's 20855 - new struct BoundaryPolygonSetCompare(), that compares BoundaryPolygonSet's 20856 - FIX: lots of small fixes to Tesselation::CorrectAllDegeneratedPolygons(): new backside triangles were not added to LinesOnBoundary, when joining adjacent polygons triangles were gathered from Four instead of current PolygonRunner, other combination was not added to SimplyDegeneratedTriangles 20857 - FIX: CountTrianglePairContainingPolygon() - PairTrianglesnodes instead of TriangleNodes was clear()'ed. 20858 20859 - BUGFIX: FindAllDegeneratedLines() did not find the correct lines due to wrong comparison. Now we use a set with the comparator BoundaryLineSetCompare(). 20860 - valgrind runs through fine. 20861 20862 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20863 20864 commit 262baeec28914d9a539fe907ea0b7636dcb96672 20865 Author: Frederik Heber <heber@ins.uni-bonn.de> 20866 Date: Fri Nov 27 15:39:06 2009 +0100 20867 20868 First compiling version of CorrectDegeneratedPolygons. 20869 20870 - several new functions in tesselationhelpers.cpp: CountTrianglePairContainingPolygon(), ArePolygonsEdgeConnected(), CombinePolygons() 20871 - new class BoundaryPolygonSet with some member functions 20872 - several new functions in tesselation.cpp: Tesselation::CorrectAllDegeneratedPolygons() 20873 20874 commit 523917322b3850ebb35a13d59abc58a39a18dd09 20875 Author: Frederik Heber <heber@ins.uni-bonn.de> 20876 Date: Fri Nov 27 15:38:33 2009 +0100 20877 20878 Rename of internal variable due to upcoming name-conflict with "LineList" in ConfigFileBuffer::MapIonTypesInBuffer(). 20879 20880 commit 5ae39c416dba574777f0f8f68e7e7f9cacd96a25 20881 Merge: 4fc93fb 3a0b389 20882 Author: Frederik Heber <heber@ins.uni-bonn.de> 20883 Date: Thu Nov 26 12:46:58 2009 +0100 20884 20885 Merge branch 'Forgotten_Tesselations_defs_in' into FixDegeneratedTesselation 20886 20887 Conflicts: 20888 20889 molecuilder/tests/Tesselations/defs.in 20890 20891 HEAD was newer (no diffing of NonConvexEnvelope.dat anymore) 20892 20893 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20894 20895 commit ebbd3d3e47035ead60a750b80c7f05742071fd11 20896 Merge: 7911387 3a0b389 20897 Author: Frederik Heber <heber@ins.uni-bonn.de> 20898 Date: Thu Nov 26 12:45:45 2009 +0100 20899 20900 Merge branch 'Forgotten_Tesselations_defs_in' into Analysis_PairCorrelation 20901 20902 commit 3a0b3890298aafb5853dc67311a7ba037e2e94b4 20903 Author: Frederik Heber <heber@ins.uni-bonn.de> 20904 Date: Thu Nov 26 12:45:04 2009 +0100 20905 20906 Forgot to add molecuilder/tests/Tesselations/defs.in 20907 20908 commit 4fc93fba5ac57faee4b34d2ffb62215870fa7584 20909 Author: Frederik Heber <heber@ins.uni-bonn.de> 20910 Date: Thu Nov 26 12:40:01 2009 +0100 20911 20912 removing automatic dissection on loading, Tesselations test now checks for return value only not for precise order of the triangles. 20913 20914 - FindNonConvexBorder() returns bool depending on the result of CheckListOfBaselines() 20915 - BUG: ParseCommandLineOptions(): case 'p' (parsing) does not dissect the molecule, as we have to wait for e.g. '-A' before we may use the bond structure. Same for config::Load() 20916 20917 commit 27bd2fa17ae15320dfbd551fafc36ea35660b5b9 20918 Author: Frederik Heber <heber@ins.uni-bonn.de> 20919 Date: Thu Nov 26 12:36:44 2009 +0100 20920 20921 BUGFIX: testcase heptan was not correctly tesselated, as edges of a (degenerated) polygon were not correctly created. 20922 20923 - rename GetCircleofConnectedPoints() -> GetCircleOfSetOfPoints() 20924 - GetCircleOfSetOfPoints() does not call GetAllConnectedPoints() but receives such a list as a parameter, allowing wider user 20925 - Tesselation::FindClosestTrianglesToPoint() now calls GetAllConnectedPoints() before GetCircleOfSetOfPoints() 20926 - Tesselation::AddCandidateTriangle():we use GetCircleOfSetOfPoints() in order to sort the nodes into a circle around a given reference (one of the baseline's nodes) 20927 - Tesselation::AddCandidateTriangle(): using this circle we may easily add the edges and triangles in a correct manner. 20928 20929 commit 7273fcd1e27e7a9eff3252574c0b87a515886042 20930 Author: Frederik Heber <heber@ins.uni-bonn.de> 20931 Date: Wed Nov 25 16:52:27 2009 +0100 20932 20933 Tesselation::FindStartingTriangle() now also uses AddCandidateTriangle() 20934 20935 - this is necessary, as we might find more than one candidate for the third point when looking for the candidate 20936 20937 commit f67b6e18b0b9f6a29d0dcad5ca54afbf56ac58e2 20938 Author: Frederik Heber <heber@ins.uni-bonn.de> 20939 Date: Wed Nov 25 16:29:18 2009 +0100 20940 20941 Multi-Candidate-Add included and incorporated class Info into boundary.cpp, tesselation.cpp and tesselationhelpers.cpp 20942 20943 - class Info incorporation: 20944 - (almost) all functions of boundary.cpp, tesselation.cpp and tesselationhelpers.cpp now begins with class Info FunctionName(__func__); 20945 20946 - Multi-Candidate-Add: 20947 - CandidateForTesselation now contains a pointlist instead of a single point 20948 - Tesselation::AddCandidateTriangle() adds an polygon (for multiple candidates) instead of a single triangle. 20949 - HasOtherBaselineBetterCandidate() was commented out (it is to be checked whether we really need this) 20950 - Tesselation::FindNextSuitableTriangle() is reduced to pre-calculation of centers and calling Tesselation::FindThirdPointForTesselation() 20951 - Tesselation::FindThirdPointForTesselation() now fills the CandidateForTesselation::pointlist 20952 - Tesselation::FindStartingTriangle() now creates a CandidateForTesselation inside the NDIM-loop and Tesselation::FindThirdPointForTesselation() fills it. 20953 20954 commit 8725ed38a099a2b4b3d95307d79ba0bdb7474c3f 20955 Author: Frederik Heber <heber@ins.uni-bonn.de> 20956 Date: Wed Nov 25 13:24:03 2009 +0100 20957 20958 New Info class that contains a global verbosity level, increased per function call and decreased per exit. 20959 20960 - the idea is to have the "begin of .." and "end of .." messages in an object that automatically holds the current recursion level and hence may change verbosity accordingly for Logger 20961 - verbose::DoOutput() checks relative to Info::verbosity now. 20962 - InfoUnitTest was done and works well. 20963 20964 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 20965 20966 commit 1e168baa79ecbcebe88b8d261ed41d6928a43ce9 20967 Author: Frederik Heber <heber@ins.uni-bonn.de> 20968 Date: Wed Nov 25 13:18:18 2009 +0100 20969 20970 Now the best (in terms of ShortestAngle) baseline is picked among all open ones instead of the next. 20971 20972 - trying to fix the tesselation, we have the following changes 20973 - in Tesselation::FindNextSuitableTriangle(), the adding of the triangle was split off and shifted to new function Tesselation::AddCandidateTriangle() 20974 - Tesselation::FindNextSuitableTriangle() now takes CandidateForTesselation instead of a baseline and puts found candidate therein 20975 - instead of looping through LinesOnBoundary in FindNonConvexBorder() we have a new Map called OpenLines containing all Lines with TriangleCount < 2 20976 - the loop itself was changed as follows and continues until OpenLines is empty: 20977 1. Find Candidates for all new OpenLines 20978 2. Pick smallest ShortestAngle among these 20979 3. Add this candidate 20980 - OpenLines is added to in AddAlwaysTesselationLine() and removed from in AllTesselationLine() (existing line case) 20981 - CandidateForTesselation class has new attributes (Other)ShortestAngle 20982 20983 - Element initialization was done for all constructors in tesselation.cpp 20984 20985 commit 791138754ff7351a49e1250e959a2ba16ccf9e8b 20986 Author: Frederik Heber <heber@ins.uni-bonn.de> 20987 Date: Tue Nov 24 16:48:36 2009 +0100 20988 20989 BUGFIX atom::CorrectBonDegree() wrongly increased bond degrees. 20990 20991 - NoBond was used instead of OtherNoBond which caused false incrementation of the bond degree beyond NoValenceOrbitals. 20992 20993 commit 6a7f78c9ef6be7e9a26caa642d5bff5a83ae7493 20994 Author: Frederik Heber <heber@ins.uni-bonn.de> 20995 Date: Tue Nov 24 16:34:49 2009 +0100 20996 20997 Fixes and naming of final Tecplot output file is now molecule name. 20998 20999 - FIXES to builder.cpp: 21000 - case 'p' would not dissect the molecule into connected subgraphs 21001 - if done so, the BondGraph was not yet initialised 21002 - if done so, we need to check whether BondGraphFileName has been set 21003 - BondGraphFileName.empty() could not be used as a check, as was set to "" instead of "\n" 21004 - if (finally) done so, we have to remove the empty molecule that we parsed in 21005 - ... and then pick the newly added molecule for mol to point at 21006 - SaveConfig() did not set the merged molecule name correctly. 21007 - if empty config is given, the empty molecule now receives the ConfigFileName as name 21008 21009 - FIXES to config.cpp 21010 - Load() did not set the name of the molecule 21011 21012 - changes to tesselationhelper.cpp and tesselation.cpp 21013 - WriteTecplotFile() uses N == -1 to make clear, that we are writing the final not a temporary tecplot file and then uses the molecule's name instead of the last triangle's endpoints 21014 - FindNextSuitableTriangle(): HasOtherBaselineBetterCandidate() was commented out for the moment (as it is not yet final and makes all the test fail) 21015 - IncludeSphereinRaster3D() did not check whether LastTriangle was NULL or not 21016 21017 - MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() names the subgraphs with suffixes "..-1", "..-2", ... 21018 21019 - changes to PointCloud and molecule 21020 - new virtual function PointCloud::GetName() returns "unknown" 21021 - new function molecule::GetName() returns pointer to name of molecule 21022 - IsEmpty() and IsEnd() now return true by default 21023 21024 - all .dat files in the "Tesselations" tests were changed accordingly (i.e. have now the name in the second line) 21025 - benzene was added as a new test for an absolutely flat molecule. So far, it fails horribly. 21026 - 13 of 17 tests run fine 21027 21028 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21029 21030 commit c5f8363fcfbc3bdd15beb961f43e1bea9d0c3389 21031 Author: Frederik Heber <heber@ins.uni-bonn.de> 21032 Date: Mon Nov 23 20:09:42 2009 +0100 21033 21034 bugfix to errorLogger and some error verbosity changes. 21035 21036 - BUGFIX: errorLogger::operator << would first give the message, then the prefix and most of them to cout instead of cerr 21037 - GetCenterofCircumcircle() did break if sum of angles was > 180 which is unnecessary. 21038 - config::Load() - bond length table loading is now an error 21039 21040 commit e359a800b68bfdc642700c86f8da41f2925d56a6 21041 Author: Frederik Heber <heber@ins.uni-bonn.de> 21042 Date: Mon Nov 23 19:51:50 2009 +0100 21043 21044 Fixing ticket #18. 21045 21046 - each eLog() << Verbose(0) is now followed by performCriticalExit(). 21047 21048 commit 717e0c59ee3acdc14323b6851984ea268b5c6c7c 21049 Author: Frederik Heber <heber@ins.uni-bonn.de> 21050 Date: Mon Nov 23 19:22:33 2009 +0100 21051 21052 Verbosity corrected for ERROR and WARNING 21053 21054 - present ERROR and WARNING prefixes removed and placed by eLog() and respective Verbosity(). 21055 - -v... is scanned for number of 'v's and verbosity is set accordingly 21056 - standard verbosity is now 0. 21057 21058 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21059 21060 commit f1ef60a25947d39dbd0f9b8ba6bdc7726c8b8b4f 21061 Author: Frederik Heber <heber@ins.uni-bonn.de> 21062 Date: Tue Nov 10 21:59:00 2009 +0100 21063 21064 Attempt to fix tesselation for case 1_2-dimethylbenzene. 21065 21066 - The issue is still the strongly degenerated end of the molecule, that is very flat. 21067 - new function: Tesselation::HasOtherBaselineBetterCandidate() - checks whether for the two other baselines of a proposed triangle there isn't an even better candidate 21068 - Tesselation::FindNextSuitableTriangle() uses the above function. 21069 - FindNonConvexBorder() - instead of jumping to end() if a new line was attempted, we jump to the beginning but only if new line was created succesfully. 21070 - DoSingleStepOutput reactived for this debugging. 21071 21072 - Where the newly installed tesselations did only fail for this molecule, now they fail for all and some segfault. Only this runs through cleanly. 21073 21074 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21075 21076 commit 9a0dc86befb40ba6fad6508c1b54291296609a92 21077 Author: Frederik Heber <heber@ins.uni-bonn.de> 21078 Date: Tue Nov 10 21:58:31 2009 +0100 21079 21080 Only biggest molecule is tesselated for now in ParseCommandLineOptions() - case 'N' 21081 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21082 21083 commit 36eb4ebc0db2e162c7d409c1ec3619d38d3901ef 21084 Author: Frederik Heber <heber@ins.uni-bonn.de> 21085 Date: Tue Nov 10 21:56:39 2009 +0100 21086 21087 Added Tesselation testsets as TESTS to molecuilder. 21088 21089 - defs.in with functions to run the tesselations. 21090 - For each test a .xyz and .dat file is given. 21091 21092 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21093 21094 commit 89f768817d0f5b67a9e4ca00cddb1f941e585290 21095 Author: Frederik Heber <heber@ins.uni-bonn.de> 21096 Date: Tue Nov 10 21:53:33 2009 +0100 21097 21098 BUGFIX: Output is again indented, errorLogger prefixes according to verbosity. 21099 21100 - BUGFIX: as "(logger << verbose) = cout" was evaluated, this did not translate to (cout << verbose). Hence, the tabbing was lost. This is fixed. 21101 - errorLogger::operator << : 0 - CRITICL, 1 - ERROR, 2, ... - WARNING 21102 - in class Verbose the logger::operator functions are declared friend to allow access to Verbose::verbosity 21103 21104 commit 9a71862bde9003acbdd76381bcea1012b54a0ed6 21105 Author: Frederik Heber <heber@ins.uni-bonn.de> 21106 Date: Sat Nov 7 13:26:07 2009 +0100 21107 21108 BUGFIX: unnecessary include in header, file not closed in definition of setUp(). 21109 21110 - in BondGraphTest::setUp() the file test containing the generated bond length table was not closed. 21111 - in bondgraphunittest.hpp bondgraph.hpp was included where a forward declaration sufficed. 21112 21113 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21114 21115 commit 220cf3768e7703a728ec1af6f666c203da595d63 21116 Author: Frederik Heber <heber@ins.uni-bonn.de> 21117 Date: Sat Nov 7 13:18:56 2009 +0100 21118 21119 Two new bond analysis functions. 21120 21121 - GetMaxMinMeanBondCount() - evaluates min, mean and max bond count 21122 - MinMaxBondDistanceBetweenElements() - evaluates min, mean and max bond distance 21123 - Unit tests are in place and working fine. 21124 21125 commit b9947daf71e80a4917240d81812895a5dd839d23 21126 Author: Frederik Heber <heber@ins.uni-bonn.de> 21127 Date: Sat Nov 7 13:17:55 2009 +0100 21128 21129 New function bond::GetDistance...() 21130 21131 - bond::GetDistance() and bond::GetDistanceSquared() return distance between bond::leftatom and bond::rightatom. 21132 21133 commit 568be7d923a989339e03228df539b51b8a6df5b6 21134 Author: Frederik Heber <heber@ins.uni-bonn.de> 21135 Date: Sat Nov 7 10:48:07 2009 +0100 21136 21137 Added config::SavePDB() and config::SaveMPQC(). 21138 21139 - note: for CODICE we need to know about the different connected subgraphs created by the DFSAnalysis(). Hence, we write a pdb file which contains a resid number to discern in VMD between the molecules. Also, we need neighbour construction from a simple xyz file for TREMOLO in order to measure MSDs per water molecule. 21140 - new function in config.cpp: config::SavePDB() gets molecule or MoleculeListClass and writes PDB file 21141 - new function in config.cpp: config::SaveTREMOLO() gets molecule or MoleculeListClass and writes TREMOLO data file (with neighbours, mapped to global ids, and resid and resname) 21142 - new function in moleculelist.cpp: MoleculeListClass::CountAllAtoms() - counts all atoms. 21143 - BUGFIX: In MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() we did not shift the chained bond list from mol into the connected subgraphs. Thus, they were free'd on delete(mol) and no bonds were present afterwards. This is fixed, now we unlink() in mol and re-link() in the respective subgraph 21144 21145 commit 96c9610522962b09c1cf8ce64546b44822f7b3e0 21146 Author: Frederik Heber <heber@ins.uni-bonn.de> 21147 Date: Sat Nov 7 10:46:08 2009 +0100 21148 21149 Added initial analysis_bonds.cpp and unit test for Analysis of bonds. 21150 21151 - analysis_bonds.cpp shall contain bond analysis tools, such as mean bond length, bond numbers, ... 21152 - unit test for it is in place, copied from bondgraphunittest.cpp, as we will need a bond graph anyway. 21153 - Makefile.am has nor ANALYSISSOURCE and ...HEADER definitions and above is added. 21154 - unittests/Makefile.am has unit test incorporated. 21155 - make check runs fine. 21156 21157 commit 7f4bee2eae0dac8e2c4a2601deb21d190a89d1c6 21158 Author: Frederik Heber <heber@ins.uni-bonn.de> 21159 Date: Sat Nov 7 10:44:11 2009 +0100 21160 21161 LEAKFIX: FillBoxWithMolecule() had mismatch delete/delete[] 21162 21163 - boundary.cpp: FillBoxWithMolecule() - delete[] used on LCList and Tesselation instead of delete on every pointer in these arrays, fixed. 21164 - boundary.cpp: VolumeOfConvexEnvelope() - RESULT output has setprecision(6) again to have correct number of digits for testsuite case 14. 21165 - make check runs fine. 21166 21167 commit 1614174df8095ae56a671e977842ee55d15b3415 21168 Author: Frederik Heber <heber@ins.uni-bonn.de> 21169 Date: Thu Nov 5 19:14:08 2009 +0100 21170 21171 LEAKFIX: ReturnFullMatrixForSymmetric() and InverseMatrix() have Malloc()s, in code was delete(), not Free() 21172 21173 - valgrind showed the "mismatch free/delete" and is fixed. (mostly concerned functions in molecule_geometry.cpp and analysis_correlation.cpp) 21174 - LEAKFIX: logger and errorLogger instances were not free'd, this is done. 21175 21176 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21177 21178 commit e138deb122b004848fade8680e29c2fb80aeb317 21179 Author: Frederik Heber <heber@ins.uni-bonn.de> 21180 Date: Wed Nov 4 20:56:04 2009 +0100 21181 21182 Huge change from ofstream * (const) out --> Log(). 21183 21184 - first shift was done via regular expressions 21185 - then via error messages from the code 21186 - note that class atom, class element and class molecule kept in parts their output stream, was they print to file. 21187 - make check runs fine 21188 - MISSING: Verbosity is not fixed for everything (i.e. if no endl; is present and next has Verbose(0) ...) 21189 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21190 21191 commit 7326b21cef2429a9070eeb36352bb77cf6b12c2c 21192 Merge: 7ea9e61 06c7a3b 21193 Author: Frederik Heber <heber@ins.uni-bonn.de> 21194 Date: Wed Nov 4 19:25:42 2009 +0100 21195 21196 Merge branch 'CodeRefactoring' of ssh://adamantium/home/metzler/workspace/espack into Analysis_PairCorrelation 21197 21198 Conflicts: 21199 21200 molecuilder/src/unittests/Makefile.am 21201 21202 - molecuilder/src/Makefile.am: included log.cpp, logger.cpp and errorlogger.cpp un libmolecuilder 21203 - molecuilder/src/unittests/Makefile.am: included LogUnitTest in tests and removed CXXFLAGS and LDFLAGS from it 21204 21205 commit 7ea9e616afe1db1bdce286f712abff18030a7ce5 21206 Author: Frederik Heber <heber@ins.uni-bonn.de> 21207 Date: Wed Nov 4 19:11:09 2009 +0100 21208 21209 Periodic variants of AnalysisPair...() implemented. 21210 21211 - BUGFIX: Vector::DistanceToPlane() - we did not check whether sign is 0. 21212 - NOTE: Due to changes in Vector::DistanceToPlane() with sign, Unit test AnalysisCorrelationToSurfaceUnitTest had to be changed: 21213 - we now have bin -0.5 filled with 1 (instead of 0.) and -0.288 instead of 0.288 21214 - find() replaced by lower_bound 21215 - new functions: PeriodicPairCorrelation(), PeriodicCorrelationToPoint(), PeriodicCorrelationToSurface() 21216 - each has a ranges[NDIM] argument with specifies the neighbours to scan: [ -ranges[i], ranges[i] ] 21217 - the atom::node is periodically translated to each periodic cell and the distance calculated. 21218 - NOTE: make check was broken before due to implementation of Periodic variants as normal ones (yielding more points that expected in unit test). 21219 21220 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21221 21222 commit 99593f58e7f5860567229fe8fe34f98add9bdd85 21223 Author: Frederik Heber <heber@ins.uni-bonn.de> 21224 Date: Wed Nov 4 18:34:05 2009 +0100 21225 21226 Extension to the periodic boundary case for analysis_correlation.cpp 21227 21228 - Distance() -> PeriodicDistance(): PairCorrelation(), CorrelationToPoint(), CorrelationToSurface() 21229 - CorrelationToSurface() - goes through periodic cells given by a ranges variable and puts into map as well. 21230 - const: ReturnFullMatrixforSymmetric() and InverseMatrix() now have const * const parameter 21231 - InverseMatrix() shifted from class Vector into helpers.cpp 21232 - adapted due to InverseMatrix(): molecule::CenterInBox(), molecule::BoundInBox(), molecule::TranslatePeriodically() 21233 - new function: RDET3(), RDET2() (former #define's) 21234 - FIX: molecule::CorrectBondDegree() would loop eternally, if bonds cannot be fully corrected. 21235 - FIX for NULL return: Tesselation::FindClosestTrianglesToPoint(), Tesselation::GetCircleOfConnectedPoints() 21236 - FIX: Vector::DistanceToPlane() - did not give correct sign before according to PlaneNormal orientation 21237 21238 other stuff: 21239 - less output: BondedParticle::CorrectBondDegree(), molecule::CyclicStructureAnalysis() 21240 21241 commit c9bce3e4e4e06fbd3b6aa0303bb22113e04c7c27 21242 Author: Frederik Heber <heber@ins.uni-bonn.de> 21243 Date: Wed Nov 4 16:08:11 2009 +0100 21244 21245 config::Load() refactored: Dissection into connected subgraphs -> MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() 21246 21247 - new function MoleculeListClass::DissectMoleculeIntoConnectedSubgraphs() 21248 - called in config::Load() 21249 21250 commit a5551b36831494b1f744d79223d87e97b7be6f5c 21251 Author: Frederik Heber <heber@ins.uni-bonn.de> 21252 Date: Wed Nov 4 15:54:31 2009 +0100 21253 21254 Closed ticket #48 (AnalysisCorrelation...() take MoleculeListClass instead of molecule). 21255 21256 - ParseCommandLineOptions() - case C: ActiveFlag ist set for all but the boundary molecule (i.e. the biggest). 21257 - changed parameters of PairCorrelation(), CorrelationToPoint(), CorrelationToSurface() 21258 - adapted unit tests: AnalysisPairCorrelationUnitTest, AnalysisPairCorrelationUnitTest, AnalysisCorrelationToPointUnitTest 21259 21260 - MISSING: AnalysisCorrelationToSurfaceUnitTest yet only deals with a single molecule instead of multiple ones ... 21261 21262 commit eecd33b33ccae6f7857db923f518303f399dde1c 21263 Author: Frederik Heber <heber@ins.uni-bonn.de> 21264 Date: Wed Nov 4 15:51:02 2009 +0100 21265 21266 BUGFIX: Allocated one molecule too much in config::Load(). 21267 21268 - Count() was called from Subgraph not from Subgraph->next 21269 21270 commit f4e1f56eee74c127ededd6c9ba004ca15330c846 21271 Author: Frederik Heber <heber@ins.uni-bonn.de> 21272 Date: Wed Nov 4 13:57:24 2009 +0100 21273 21274 Closing ticket #47, case 'C' uses biggest molecule as surface for pair correlation. 21275 21276 commit 3c349bda4eeea77e1019e8b5b3d87543ae1f20fa 21277 Author: Frederik Heber <heber@ins.uni-bonn.de> 21278 Date: Tue Nov 3 17:34:31 2009 +0100 21279 21280 "not working parsed molecule into subgraph splitting"-BUG fixed, BugFinder branch can be closed. 21281 21282 - config::Load() - atoms were not in the right order for MaxOrder-test (12). Hence, the BondFragmentAdjacency could not be parsed. Now, we just take the subgraphs as the association of each atom to a molecule, i.e. we make a list and then re-link each atom to its new connected subgraph molecule, which is returned as the MoleculeListClass. 21283 21284 other fixes: 21285 - BondGraph::SetMaxDistanceToMaxOfCovalentRadii() - parses the molecule and set to max of covalent radii of elements found therein 21286 - BondGraph::ConstructBondGraph() - SetMaxDistanceToMaxOfCovalentRadii() called before CreateAdjacencyList() to have current max_distance 21287 - BUGFIX: molecule::CreateAdjacencyList() - BondCount was not set to zero after cleaning of list 21288 - FIX: CreateFatherLookupTable() - as we use Calloc(), initialization to NULL was unnecessary 21289 21290 commit ae38fb1ebb7a0ba407983519fa0603e09a65d217 21291 Author: Frederik Heber <heber@ins.uni-bonn.de> 21292 Date: Tue Nov 3 15:27:15 2009 +0100 21293 21294 Fixing not created adjacency list, partially fixing subgraph dissection in config::Load() 21295 21296 - CreateAdjacencyList() was called with zero bonddistance. 21297 - this was due to max_distance not being initialised in the constructor to 0 and subsequently not set if Bond Length Table was not found. 21298 - new function SetMaxDistanceToMaxOfCovalentRadii() which sets the max_distance to twice the max of covalent radii of all elements. 21299 - config::Load() - atoms in copied molecule (by DepthFirstSearchAnalysis()) are made their own father (and originals are removed). 21300 21301 commit 2aeefd42484e1e703a9a9d84d548ce716faed02b 21302 Author: Frederik Heber <heber@ins.uni-bonn.de> 21303 Date: Tue Nov 3 13:38:08 2009 +0100 21304 21305 Removed libmolecuilder linking from unit tests where only some few modules were needed. 21306 21307 commit 7218f8e00e4f8e7b2a82385c86479318f7b29c7b 21308 Author: Frederik Heber <heber@ins.uni-bonn.de> 21309 Date: Tue Nov 3 09:41:45 2009 +0100 21310 21311 Several memory bugfixes (thx valgrind). 21312 21313 - main() - shortened case switch after ParseCommandLineOptions() 21314 - molecule::FragmentMolecule() - indentation around BondFragments fixed. 21315 - LEAKFIX: main() - configuration was not destroyed in case switch. 21316 - LEAKFIX: ~config() - BondGraph BG was not destroyed. 21317 - LEAKFIX: ParseKeySetFile() - filename was not destroyed. 21318 - LEAKFIX: molecule::FragmentMolecule() - BackEdgeStack (returned from DepthFirstSearchAnalysis()) was not destroyed. 21319 - LEAKFIX: molecule::FragmentMolecule() - BondFragments was not destroyed. 21320 - LEAKFIX: MemoryUsageObserver::~MemoryUsageObserver() -- frees all remaining unbfree'd memory 21321 - BUGFIX: MoleculeListClass::OutputConfigForListOfFragments() - FragmentNumber was delete'd not Free'd 21322 - BUGFIX: ParseCommandLineOptions() - Free() of ListOfLocalAtoms had FragmentCounter instead of i 21323 - BUGFIX: ParseCommandLineOptions() had BackEdgeStack in case 'D' instead of LocalBackEdgeStack for the CycliCStructureAnalysis() 21324 - BUGFIX: StackClass<T>::StackClass() did not initialize StackList to NULL (are pointers anyway). 21325 - MolecularLeafWalker::FillBondStructureFromReference() - no more performs its actions recursively (just complicates things unnecessarily). 21326 - ParseCommandLineOptions() and molecule::FragmentMolecule() adapted to MolecularLeafWalker::FillBondStructureFromReference() changes. 21327 - DepthFirstSearchAnalysis_Init() now does all of the initialisation of DepthFirstSearchAnalysis() and get molecule instead of AtomCount and BondCount 21328 21329 Fixed Calloc: 21330 - MemoryAllocatorTest::MallocTest() and MemoryAllocatorTest::CallocTest() perform test on array of 10 with writing to it (revealed Calloc() bug) 21331 - LEAKFIX: MemoryAllocatorTest::tearDown() - instance was not free'd 21332 - BUGFIX: Calloc() - calloc() is called with num and sizeof, not num and initial_value! 21333 - FIX: Malloc() to Calloc(): CreateFatherLookupTable(), molecule::IsEqualToWithinThreshold(), molecule::ConstrainedPotential(), PrintPermutationMap(), FillDistanceList() (initialization not needed anymore due to Calloc(), molecule::MinimiseConstrainedPotential(), molecule::ParseOrderAtSiteFromFile(), StoreFragmentFromKeySet_Init() (initialization not needed anymore due to Calloc(), molecule::StoreFragmentFromKeySet(), molecule::PowerSetGenerator(), molecule::FragmentBOSSANOVA(), molecule::ScanForPeriodicCorrection(), molecule::CreateAdjacencyList(), InitializeBFSAccounting(), BreadthFirstSearchAdd_Init(), BuildInducedSubgraph_Init(), MoleculeListClass::AddHydrogenCorrection(), MoleculeLeafClass::FillListOfLocalAtoms(), MoleculeLeafClass::AssignKeySetsToFragment(), StackClass<T>::StackClass() 21334 21335 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21336 21337 commit fa649a93ddcddda5f2e4f18ee89b49c4d34d2fde 21338 Author: Frederik Heber <heber@ins.uni-bonn.de> 21339 Date: Mon Nov 2 13:50:57 2009 +0100 21340 21341 Small changes. 21342 21343 - VolumeOfConvexEnvelope() - setprecision corrected 21344 - BUGFIX: PrepareClustersinWater() - IsAngstroem was set to NULL instead of true 21345 - config::Load(), ..LoadOld() - get MoleculeListClass instead of molecule 21346 - config::TestSyntax() - removed unncessary molecule parameter 21347 - ParseCommandLineOptions() - no mol is created anymore, this is done when parsing in config::Load(), mol is set to first active instead 21348 - config.cpp: Lots of ^M (dos EOL) removed 21349 - have const molecule * const ref now: MoleculeLeafClass::FillBondStructureFromReference(), molecule::PickLocalBackEdges(), DepthFirstSearchAnalysis_CheckForaNewComponent(), DepthFirstSearchAnalysis_ProbeAlongUnusedBond() 21350 - are const member functions now - necessary due to periodentafel being a const pointer: molecule::ResetAllBondsToUnused(), molecule::FindNextUnused(), molecule::SetNextComponentNumber(), molecule::CyclicStructureAnalysis(), CyclicStructureAnalysis_AssignRingSizetoNonCycleMembers(), molecule::OutputGraphInfoPerBond(), molecule::OutputGraphInfoPerAtom(), molecule::CyclicBondAnalysis(), molecule::CyclicStructureAnalysis(), molecule::GetColor(), molecule::CorrectBondDegree(), molecule::OutputBondsList() 21351 - in molecule NoNonHydrogen, NoNonBonds and NoCyclicBonds are mutable 21352 - molecule constructor rewritten with respect to ticket #4 (shorten constructors) 21353 21354 commit 34e0013c3d36c570e3d7cccf0314b9998c524fbc 21355 Author: Frederik Heber <heber@ins.uni-bonn.de> 21356 Date: Fri Oct 30 17:09:29 2009 +0100 21357 21358 BondGraph is initialized within config::Load(), as it has to happen after parsing options and before loading molecule. And various fixes. 21359 21360 - FIX: BondGraph::LoadBondLengthTable() - scans into TempContainer, which is later given over to BondLengthMatrix or NULL'd if parsing failed. 21361 - BondGraph::ConstructBondGraph() adapted to above, uses both bonds functions depending on present BondLengthMatrix. 21362 - FIX: BondGraph::GetBondLength() - checks whether BondLengthMatrix is NULL. 21363 - config::Load() and ..LoadOld() get additionally the BondLengthFilename and allocates and parses BondGraph. 21364 - builder.cpp ParseCommandLineOptions() has been adapted to above changes. 21365 - FIX: molecule::CreateAdjacencyList() checks whether bonddistance is > 1. (otherwise quite useless and yielding too many cells). 21366 21367 commit b21a64f827e177ed45bda0d871259b15127ce530 21368 Author: Frederik Heber <heber@ins.uni-bonn.de> 21369 Date: Fri Oct 30 16:33:51 2009 +0100 21370 21371 BondGraph is parsed if command line switch '-g' is given. 21372 21373 - builder.cpp: case 'g' which gives a bond length table file which is parsed after the configuration and before other command line options. 21374 - BondGraph::BondLengthMatrixMinMaxDistance() falls back to CovalentMinMaxDistance() if no table parsed. 21375 - Bond Length Table was changed to have first row _and_ column each enlist all the elements and does not have a "#" in front anymore. 21376 - The unit test has been changed accordingly. 21377 21378 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21379 21380 commit 06c7a3b2d6ce79572856fe678ea2a178eb974a6a 21381 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 21382 Date: Fri Oct 30 12:04:50 2009 +0100 21383 21384 Ticket 43 Create a logging class 21385 21386 The verbosity level can now be handeled globally by setVerbosity(). 21387 21388 commit b7072174869980a43146f17b651981474109f428 21389 Author: Frederik Heber <heber@ins.uni-bonn.de> 21390 Date: Fri Oct 30 09:30:57 2009 +0100 21391 21392 New class BondGraph. 21393 21394 - BondGraph parses a file containing bond lengths and basically has a member function which gives lower and upper bounds on when two atoms are bonded and when not. 21395 - BondGraph::LoadBondLengthTable() - basically uses MatrixContainer::ParseMatrix() 21396 - BondGraph::ConstructBondGraph() - uses molecule::CreateAdjacency() but with different bounds-function. 21397 - BondGraph::GetBondLength() - returns entry from parsed bond length matrix 21398 - BondGraph::CovalentMinMaxDistance() - bounds function using covalent radii of involved elements 21399 - BondGraph::BondLengthMatrixMinMaxDistance() - bounds function which uses the parsed bond length matrix 21400 - Unit test written for BondGraph. 21401 - molecule::CreateAdjacencyList() - rewritten, takes now a bounds BondGraph member function, if NULL is given, creates its own BondGraph and uses standard covalent bounds function (which does not need any scanning). 21402 - new function BondedParticle::IsBondedTo() which checks whether given BondedPasrticle is contained in ListOfBonds. 21403 - builder.cpp: calls to molecule::CreateAdjacencyList() adapted to new syntax. 21404 21405 commit 46ea3b3e9b5812647dd0fc8c97ecfc39e5eb3f10 21406 Author: Frederik Heber <heber@ins.uni-bonn.de> 21407 Date: Fri Oct 30 09:29:31 2009 +0100 21408 21409 Test code is moved to its own source subdirectory: test. 21410 21411 - ActOnAll.hpp was just a template test for the molecule::ActOnAll...() member functions, as the code is still fine and a Unit test depends on it, we keep it, but in a special subdirectory. 21412 21413 commit 8c5327ba6c54e6a030fbc1bbf26821fabee8183f 21414 Author: Frederik Heber <heber@ins.uni-bonn.de> 21415 Date: Fri Oct 30 09:29:07 2009 +0100 21416 21417 Added Unit test for StackClass. 21418 21419 - was former StackClass::TestImplementation(). 21420 21421 commit d96277bbbf83514bf1d07b427277386bb07ab602 21422 Author: Frederik Heber <heber@ins.uni-bonn.de> 21423 Date: Thu Oct 29 11:09:05 2009 +0100 21424 21425 Refactored StackClass with respect to tickets #38, #4. 21426 21427 - #38 make const what is const 21428 - #4 shorten constructors 21429 - StackClass::TestImplementation() has been shifted into a unit test stackclassunittest.[ch]pp 21430 21431 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21432 21433 commit c0f6c621f619a71f4b09c404a8cdb96eed63efec 21434 Author: Frederik Heber <heber@ins.uni-bonn.de> 21435 Date: Tue Oct 27 18:41:12 2009 +0100 21436 21437 Refactored tesselationhelpers.cpp with respect to ticket #38 (make const what is const). 21438 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21439 21440 commit fb73b8313dc69e341d7e560e1f298f5da5c56b22 21441 Author: Frederik Heber <heber@ins.uni-bonn.de> 21442 Date: Tue Oct 27 17:42:42 2009 +0100 21443 21444 class config, ConfigFileBuffer, periodentafel and Vector are refactored with respect to ticket #38, #4 and #39. 21445 21446 - <type> * const ptr ... means the pointer itself is const (not its contents that he points at). 21447 - const <type> * ptr ... means the pointer's content is const. 21448 - "ofstream *out" ... can be changed to "ofstream * const out" (pointer is constant, not output). 21449 21450 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21451 21452 commit 776b64559ecd2f9ada1f26f55c897028165fb398 21453 Author: Frederik Heber <heber@ins.uni-bonn.de> 21454 Date: Tue Oct 27 17:11:22 2009 +0100 21455 21456 Huge refactoring to make const what is const (ticket #38), continued. 21457 21458 - too many changes because of too many cross-references to be able to list them up here. 21459 - NOTE that "make check" runs fine and did catch several error. 21460 - note that we had to use const_iterator several times when the map, ... was declared const. 21461 - at times we changed an allocated LinkedCell LCList(...) into 21462 const LinkedCell *LCList; 21463 LCList = new LinkedCell(...); 21464 - also mutable (see ticket #5) was used, e.g. for molecule::InternalPointer (PointCloud changes are allowed, because they are just accounting). 21465 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21466 21467 commit ad37ab8566594a099bed27480eb123e4af74bc9a 21468 Author: Frederik Heber <heber@ins.uni-bonn.de> 21469 Date: Tue Oct 27 12:51:52 2009 +0100 21470 21471 analyzer.cpp and boundary.cpp refactored. 21472 21473 - ticket #39 is done with respect to these files 21474 - both do not contain member functions (anymore), hence ticket #4 and ticket #38 are both fulfilled. 21475 21476 commit 70ff329b91c50b8717dc6a315d31da29c9522774 21477 Author: Frederik Heber <heber@ins.uni-bonn.de> 21478 Date: Tue Oct 27 10:28:07 2009 +0100 21479 21480 Begun with ticket #4 (shorten constructors) on class atom and class bond. 21481 21482 - note that in bond we removed two constructor definitions which were unnecessary if standard values were given in the definition not in the declaration. 21483 21484 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21485 21486 commit b453f9633192bf031a859545dcb7c55476ff6a0f 21487 Author: Frederik Heber <heber@ins.uni-bonn.de> 21488 Date: Tue Oct 27 09:54:44 2009 +0100 21489 21490 Begun with ticket #38 (make const what is const). 21491 21492 - basically all changes to member function that now state that they do not change member attributes. 21493 - in molecule_template.hpp all member functions are declared const, as we only need start and end from molecule and these are never changed (lots of overloaded templates removed thereby). 21494 - Vector::Distance...() and ...DistanceSquared() are const now too 21495 21496 commit 831a14fccc3c449e545ce45a4036bbbfeb01b80c 21497 Author: Frederik Heber <heber@ins.uni-bonn.de> 21498 Date: Tue Oct 27 09:53:25 2009 +0100 21499 21500 ..._CPPFLAGS and ..._LDFLAGS in unittests/Makefile.am put into global AM_... statements. 21501 21502 commit 6b919f8070d9199926d9b248aff739b8305bbc57 21503 Author: Frederik Heber <heber@ins.uni-bonn.de> 21504 Date: Tue Oct 20 10:55:17 2009 +0200 21505 21506 Refactored atom.cpp into multiple files. 21507 21508 After the class atom was refactored into multiple base classes that are inherited, these base classes are also all put into separate files. This is basically a preparatory step for the like-wise refactoring of class molecule into inherited base classes and splitting up (that is there done already). Finally, we will also separate the relations, i.e. not have "atom.hpp" included everywhere and use class atom, but rather the subclasses such as TrajectoryParticle and its header files only. 21509 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21510 21511 commit c75de154f2ee6233beaf61ee389cd8f71ee7ff01 21512 Author: Frederik Heber <heber@ins.uni-bonn.de> 21513 Date: Tue Oct 20 10:54:51 2009 +0200 21514 21515 iostream was missing in vector includes. 21516 21517 commit 4455f4972f636def3a575d7d298af2682c502f5b 21518 Author: Frederik Heber <heber@ins.uni-bonn.de> 21519 Date: Mon Oct 19 15:09:29 2009 +0200 21520 21521 Huge Refactoring: class atom split up into several inherited classes. 21522 21523 - There are now two parts: classes containing data (called ...Info) and classes containing associated functions: 21524 - new data classes: ParticleInfo (id and name), AtomInfo (element, position, velocity, force), TrajectoryParticleInfo, GraphNodeInfo (all graph variables), BondedParticleInfo (AdaptiveOrder, MaxOrder, ListOfBonds) 21525 - new associated function classes: TrajectoryParticle, GraphNode, BondedParticle 21526 21527 - template functions ActOnAllAtoms(), SumPerAtom() were adapted with another template type for the class of the member function 21528 - template functions SetIndexedArrayForEachAtomTo() have their index as ParticleInfo::*index 21529 21530 commit 9eefda14dc23d67965074a9054a484c90416b304 21531 Author: Frederik Heber <heber@ins.uni-bonn.de> 21532 Date: Sun Oct 18 21:41:20 2009 +0200 21533 21534 Added BFSAccounting and DFSAccounting structures and all functions use these. Added documentation to each of the new functions of previous commits. 21535 21536 - renamed DFS: DepthFirstSearchAnalysis_SetWalkersGraphNr(), DepthFirstSearchAnalysis_ProbeAlongUnusedBond(), DepthFirstSearchAnalysis_CheckForaNewComponent(), DepthFirstSearchAnalysis_CleanRootStackDownTillWalker() 21537 - new DFS: DepthFirstSearchAnalysis_Finalize(), DepthFirstSearchAnalysis_Init() 21538 - rewritten DFS: DepthFirstSearchAnalysis() - uses DFSAccounting and above functions, 21539 - changed&renamed BFS: InitializeBFSAccounting(), FinalizeBFSAccounting(), CleanBFSAccounting(), ResetBFSAccounting() 21540 - renamed BFS: CyclicStructureAnalysis_CyclicBFSFromRootToRoot(), CyclicStructureAnalysis_RetrieveCycleMembers(), CyclicStructureAnalysis_BFSToNextCycle(), CyclicStructureAnalysis_AssignRingSizetoNonCycleMembers() 21541 - changed BFS: BackEdge dropped from CyclicStructureAnalysis_BFSToNextCycle(), CyclicStructureAnalysis_AssignRingSizetoNonCycleMembers() 21542 21543 commit 43587e21efd075291b9296d09704c14839147781 21544 Author: Frederik Heber <heber@ins.uni-bonn.de> 21545 Date: Sun Oct 18 20:12:53 2009 +0200 21546 21547 Refactored molecule::BuildInducedSubgraph() 21548 21549 - new functions BuildInducedSubgraph_Init(), BuildInducedSubgraph_FillParentList(), BuildInducedSubgraph_CreateBondsFromParentList(), BuildInducedSubgraph_Finalize() 21550 21551 commit ce7cc5a8c3093070a9f2372212477b11f78c01b0 21552 Author: Frederik Heber <heber@ins.uni-bonn.de> 21553 Date: Sun Oct 18 19:52:47 2009 +0200 21554 21555 Refactored molecule::BreadthFirstSearchAdd() 21556 21557 - new function: BreadthFirstSearchAdd_Init(), BreadthFirstSearchAdd_VisitedNode(), BreadthFirstSearchAdd_UnvisitedNode() 21558 - new structure BFSAccounting contains all of the accounting data needed for Breadth First Search. 21559 21560 commit ba4170d2dfbebfe434b06d01aed19c832651e2d6 21561 Author: Frederik Heber <heber@ins.uni-bonn.de> 21562 Date: Sun Oct 18 19:06:28 2009 +0200 21563 21564 Refactored CheckAdjacencyFileAgainstMolecule(). 21565 21566 - new functions: CheckAdjacencyFileAgainstMolecule_Init(), CheckAdjacencyFileAgainstMolecule_CompareBonds(), CheckAdjacencyFileAgainstMolecule_Finalize() 21567 21568 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21569 21570 commit df8b199baa82d9d524d867256b1f58ec88ba477c 21571 Author: Frederik Heber <heber@ins.uni-bonn.de> 21572 Date: Sun Oct 18 18:35:25 2009 +0200 21573 21574 Removed ResetAllAtomNumbers(), replaced by templated SetAtomValueToValue(). 21575 21576 commit 2cc75c3c152510b8a9d6d26c5e134d49167c533d 21577 Author: Frederik Heber <heber@ins.uni-bonn.de> 21578 Date: Sun Oct 18 18:09:26 2009 +0200 21579 21580 Shifted molecuke::InitComponentNumbers() to atom::InitComponentNr. 21581 21582 Note that this is still only possible due to ListOfBondsPerAtom() -> atom::ListOfBonds() switch. 21583 21584 commit ef9aaec99bd2d3f48063f5f75506c3db39493c39 21585 Author: Frederik Heber <heber@ins.uni-bonn.de> 21586 Date: Sun Oct 18 17:59:52 2009 +0200 21587 21588 Refactored molecule::CyclicStructureAnalysis() 21589 21590 - new functions: InitializeAccounting(), ResetAccounting(), CleanAccounting(), CyclicBFSFromRootToRoot(), RetrieveCycleMembers(), AssignRingSizetoNonCycleMembers() 21591 - new functions used in AssignRingSizetoNonCycleMembers(): BFSToNextCycle() 21592 21593 commit 174e0ece471da3cb17f2cbf08ba655f90c27f316 21594 Author: Frederik Heber <heber@ins.uni-bonn.de> 21595 Date: Sun Oct 18 17:13:46 2009 +0200 21596 21597 Refactored molecule::DepthFirstSearchAnalysis() 21598 21599 - new functions: SetWalkersGraphNr(), ProbeAlongUnusedBond(), CheckForaNewComponent(), CleanRootStackDownTillWalker() 21600 21601 commit 266237a46efdbba0be37a76f5e86b6814aac18d7 21602 Author: Frederik Heber <heber@ins.uni-bonn.de> 21603 Date: Sun Oct 18 16:15:37 2009 +0200 21604 21605 Huge refactoring: molecule::ListOfBondsPerAtom and molecule::NumberOfBondsPerAtom removed, atom::ListOfBonds introduced. Unit Test for ListOfBonds manipulation introduced. 21606 21607 - changes to class atom: 21608 - ~atom(): removes all bonds it is part of and unlink()s 21609 - new functions: CountBonds() - counts bonds times BondDegree, OutputGraphInfo() - graph data is output, OutputComponentNumber() - output of component numbers, OutputAdjacency() - indices of this and its neighbours, CorrectBondDegree() - corrects bond degree incrementally (by at most one) -- all since ListOfBonds is now local info 21610 - OutputBondOfAtom() - does not need ListOfBondsPerAtom, ... as ListOfBonds is now local info 21611 - new functions for ListOfBonds access: RegisterBond(), UnregisterBond(), UnregisterAllBonds() (the latter only remove from the list, do not delete, as molecule still has a global list of all bonds and does deletion.) 21612 21613 - changes to class bond: 21614 - ~bond() uses unlink(), uses UnregisterBond() on leftatom and rightatom 21615 - removed unused bond::GetFirstBond() and bond::GetLastBond() 21616 - GetOtherAtom() has now const parameter 21617 21618 - changes to builder.cpp: removed CreateListOfBondsPerAtom() calls, as the creation of the global arrays is not necessary anymore 21619 21620 - changes to LinkedCell: LinkedCell::CheckBounds(int[NDIM]) does not admonish out of bonds as this is not desired for the local offset which may become out of bounds. 21621 21622 - changes to lists.hpp templates: BUGFIX: unlink() now sets ->next and ->previous to NULL, cleanup() uses removedwithoutcheck() 21623 21624 - new templates for molecule.hpp: SumPerAtom() allows for summation of the return value of atom:...() member fiunctions. This is needed e.g. for atom::CorrectBondDegree() 21625 21626 - changes to MoleculeListClass: 21627 - changes due to ListOfBondsPerAtom -> atom::ListOfBonds: AddHydrogenCorrection(), FillBondStructureFromReference() 21628 21629 - changes to class molecule: 21630 - changes due to ListOfBondsPerAtom -> atom::ListOfBonds: GuesstimateFragmentCount(), FragmentMolecule(), FillSPListandLabelVertices(), ScanForPeriodicCorrection(), DeterminePeriodicCenter(), CyclicStructureAnalysis(), InitComponentNumbers(), FindNextUnused(), CheckAdjacencyFileAgainstMolecule(), PickLocalBackEdges(), BreadthFirstSearchAdd(), BuildInducedSubgraph(), CheckForConnectedSubgraph(), molecule(), ~molecule(), AddHydrogenReplacementAtom(), RemoveBonds(), OutputListOfBonds(), removed CreateListOfBondsPerAtom() 21631 - due to removal of CreateListOfBonds(): FragmentMolecule(), CreateAdjacencyListFromDbondFile(), CreateAdjacencyList(), SetNextComponentNumber() 21632 - ActOnAllAtoms() used: CreateAdjacencyList() - uses atom::OutputBondOfAtom(), StoreAdjacencyToFile() - uses atom::OutputAdjacency(), 21633 - SumPerAtom() used: CorrectBondDegree() - uses atom::CorrectBondDegree(), 21634 - function removed: molecule::CountAtomsBonds() - shifted to atom::CountBonds(), OutputComponentNumber() - shifted to atom::OutputComponentNumber() 21635 - CountCyclicBonds() - manipulates molecule::NoCyclicBonds directly. 21636 - rewritten DepthFirstSearchAnalysis() - refactored to CyclicBondAnalysis(), OutputGraphInfoPerAtom(), OutputGraphInfoPerBond() 21637 - rewritten RemoveAtom() - uses RemoveBonds() 21638 - FIX: rewritten CleanupMolecule() - cleanup was wrong order, now is first bonds, then atoms 21639 - rewritten BreadthFirstSearchAdd() - uses molecule::CopyBond() (equal code was present multiple(!) times before) 21640 - new functions CyclicBondAnalysis(), OutputGraphInfoPerAtom(), OutputGraphInfoPerBond(), CopyBond() 21641 21642 - New UnitTest for ListOfBonds: 21643 - tests AddBond(), RemoveAtom(), RemoveBond(), RemoveBonds() and simple deletion of atoms or bonds, where afterwards chain lists of bonds should remain intact. 21644 21645 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21646 21647 commit b8b75d6a56dc001347024c088c6590bec244d5c7 21648 Author: Frederik Heber <heber@ins.uni-bonn.de> 21649 Date: Sat Oct 17 21:47:58 2009 +0200 21650 21651 Refactored CreateAdjacencyList(). 21652 21653 - new auxiliary functions: molecule::CorrectBondDegree(), molecule::OutputBondsList() and molecule::CountAtomsBonds() 21654 - CreateAdjacencyList() makes use of the above and the bond finding is implemented now via LinkedCell list, however with an additional TesselPoint::nr to atom* list (which is just a temporary fix until a thought comes up how to have LinkedCell of atom * in the first place). 21655 21656 commit 07051c4e6e39dd72b279cf4798cdd094138a3371 21657 Author: Frederik Heber <heber@ins.uni-bonn.de> 21658 Date: Sat Oct 17 21:46:28 2009 +0200 21659 21660 Extended class LinkedCell to handle a relative offset to current cell. 21661 21662 - new overloaded function LinkedCell::CheckBounds(int [NDIM]) checking bounds with some relative offset. 21663 - new function LinkedCell::GetRelativeToCurrentCell() returning LinkedNodes of cell relative to CurrentCell. 21664 21665 commit 44a59b6dd47abf93dc6c2866c46cf4ce4519de59 21666 Author: Frederik Heber <heber@ins.uni-bonn.de> 21667 Date: Sat Oct 17 19:06:42 2009 +0200 21668 21669 Renamed and rewritten CreateAdjacencyList2(). 21670 21671 - rename CreateAdjacencyList2() -> CreateAdjacencyListFromDbondFile() 21672 - initially written by Christian Neuen who was at that time not familiar with all the functions already present. The code is now shortened and tighter. 21673 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21674 21675 commit 09048c34dc6e8ccc59fdf69178f4f3e94373e508 21676 Author: Frederik Heber <heber@ins.uni-bonn.de> 21677 Date: Sat Oct 17 18:54:46 2009 +0200 21678 21679 Added case 'C' to ParseCommandLineOptions with CorrelationToSurface(). 21680 21681 - new case 'C' with CorrelationToSurface() 21682 - lots of changes in ParseCommandLineOptions() as all of the tests for ...[0] != '-' were wrong for numbers (e.g. -t -1. 0. 0. in translation case) 21683 - small fix to BinData() as 0. was given instead of 0 for second argument of outmap (but should be integer) 21684 21685 commit ad8b0dc36a32195baf91715cdb04e24d0d5a74c7 21686 Author: Frederik Heber <heber@ins.uni-bonn.de> 21687 Date: Sat Oct 17 18:49:59 2009 +0200 21688 21689 Templated version of flip now operates with references instead of pointers. 21690 21691 - vector::SolveSystem() was changed accordingly. 21692 21693 commit 3a9fe9f11fb9af6d172ca93d62a1b7bdfb61f183 21694 Author: Frederik Heber <heber@ins.uni-bonn.de> 21695 Date: Sat Oct 17 18:47:06 2009 +0200 21696 21697 LoadMolecule externalized from Load() 21698 21699 - new function PrepareFileBuffer() 21700 - ParseCommandLine() is no more part of class config 21701 - Load() now uses LoadMolecule and PrepareFileBuffer() 21702 - note that this is used to allow for the loading of a second molecule from a config file without the actual configuration. This is needed for the CorrelationToSurface routine (the second molecule gives the surface). 21703 21704 commit b1f2549d14a74c382543b97323d3b0bbeeda3d56 21705 Author: Frederik Heber <heber@ins.uni-bonn.de> 21706 Date: Sat Oct 17 18:42:37 2009 +0200 21707 21708 Functions to output correlations directly added. 21709 21710 - new analysis_correlation function: OutputPairCorrelation(), OutputCorrelationToPoint(), OutputCorrelationToSurface() 21711 21712 commit c144ed2645a2885d7e8fc364b26b37512b5309ec 21713 Author: Frederik Heber <heber@ins.uni-bonn.de> 21714 Date: Sat Oct 17 07:49:05 2009 +0200 21715 21716 flip() is now templated. 21717 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21718 21719 commit db6bf740d7e8febe60a8c5c791aad043f8d4717b 21720 Author: Frederik Heber <heber@ins.uni-bonn.de> 21721 Date: Thu Oct 15 10:10:10 2009 +0200 21722 21723 Fixed two memory leaks. 21724 21725 - FIX: if the element database could not be parsed, in LoadPeriodentafel() still one element would be allocated, Loading failure admonished and then not free'd. Fixed 21726 - FIX: the config was allocated in main not by a new, but fixed. In its constructor Malloc calls were present. Hence, the memory was not free'd. As fixed types are free'd first at the very end of the code. Hence before any MemoryUsageObserver::getUsedMemorySize() calls ... that's why 1614 bytes were always claimed as still allocated. Fixed. 21727 - valgrind does not admonish any leaks (however, some errors) anymore when molecuilder is started and immediately quitted. 21728 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21729 21730 commit bbc338b903a7127c1e2577a93470caf743c9afc3 21731 Author: Frederik Heber <heber@ins.uni-bonn.de> 21732 Date: Wed Oct 14 13:18:14 2009 +0200 21733 21734 Unit tests AnalysisCorrelation is done. 21735 21736 - four carbon atoms were added around the hydrogen tetraeder to test CorrelationToSurface. 21737 - everything seems to work fine, three bugs were found (see previous commits). 21738 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21739 21740 commit 6cd79d42f5e59a266564a81f846c56dfa809a6b9 21741 Author: Frederik Heber <heber@ins.uni-bonn.de> 21742 Date: Wed Oct 14 13:12:42 2009 +0200 21743 21744 performCriticalExit() must not be defined static. 21745 21746 Note that static global functions are only visible within the specific source file. Removed static keyword. 21747 21748 commit a2028ea7782e055b20b65d5106e9ef97040467ed 21749 Author: Frederik Heber <heber@ins.uni-bonn.de> 21750 Date: Wed Oct 14 13:10:47 2009 +0200 21751 21752 UnitTest AnalysisCorrelationToSurface revealed two bugs: 21753 21754 - BUGFIX: if multiple triangles are closest to a point, the code failed in Tesselation::FindTriangles(). This is fixed: the externalized initialization steps were put together again into the four loops, hence the ..->end() check was in the loop again. 21755 - BUGFIX: If the AngleZero derived from the reference in Tesselation::GetCircleOfConnectedPoints() is 0, we end up with no closest triangle. This is fixed: first point in connected circle taken as reference instead, and criticalExit() if still not unzero 21756 21757 commit f74d089a01eb7c6482561a3163788f3ac53efe1e 21758 Author: Frederik Heber <heber@ins.uni-bonn.de> 21759 Date: Wed Oct 14 13:01:47 2009 +0200 21760 21761 Check whether map is not NULL in GetMinMax() and BinData(). 21762 Signed-off-by: Frederik Heber <heber@ins.uni-bonn.de> 21763 21764 commit c4d4dfcf2b2eb619122842838b8a34fed1b278e5 21765 Author: Frederik Heber <heber@bespin.wiss-staff> 21766 Date: Tue Oct 13 18:14:49 2009 +0200 21767 21768 Pair correlation analysis added. 21769 21770 - new file analysis_correlation.cpp with the following functions: PairCorrelation(), CorrelationToPoint(), CorrelationToSurface(), GetBin(), OutputCorrelation(), and templates GetMinMax(), BinData() 21771 - three new unit tests: AnalysisCorrelationToPointUnitTest AnalysisCorrelationToSurfaceUnitTest AnalysisPairCorrelationUnitTest (each in own file) 21772 - new function DistanceToTrianglePlane() in tesselationhelpers.cpp 21773 - new function Vector::DistanceToPlane() calculates distance to a plane 21774 21775 Unit tests are working fine. 21776 21777 commit 93d120bdcc6b28744fc18c21d8ef1e744eaa9f1e 21778 Author: Frederik Heber <heber@bespin.wiss-staff> 21779 Date: Tue Oct 13 18:40:34 2009 +0200 21780 21781 Fixed broken test "Fragmentation - Fragmentation". 21782 21783 - BUGFIX: Code was split into CombineAllOrderListIntoOne() and FreeAllOrdersList(). In the first the combining is done and because RootStack is needed, we push_back() all pop_front() all RootKeyNr. However, the loop test was still .empty(), which never happened and an error was thrown as same keysets were tried to be inserted (assumed). Now, we store the last RootKeyNr by back() and compare the current to it. Test runs through fine. 21784 21785 commit 407536f92b012b8b92b2dff235834903e8b9565b 21786 Author: Frederik Heber <heber@bespin.wiss-staff> 21787 Date: Mon Oct 12 15:26:12 2009 +0200 21788 21789 Refactored molecule::FragmentBOSSANOVA(). 21790 21791 - renamed functions: InitialiseSPList() -> SetSPList(), FreeSPList() -> ResetSPList() 21792 - new functions are: InitialiseSPList, FreeSPList(), FillSPListandLabelVertices(), OutputSPList(), CountNumbersInBondsList(), CombineAllOrderListIntoOne(), FreeAllOrdersList() 21793 21794 commit 14e73aa8344b12c5bad0a9b1eaaffda56d596001 21795 Author: Frederik Heber <heber@bespin.wiss-staff> 21796 Date: Mon Oct 12 15:05:46 2009 +0200 21797 21798 Refactored molecule::PowerSetGenerator(). 21799 21800 - new functions are: InitialiseSPList(), FreeSPList(), FillSPListandLabelVertices(), OutputSPList(), CountNumbersInBondsList(), 21801 21802 commit d2943b9740e9b45b8ed74a7c23e842ec060bb5db 21803 Author: Frederik Heber <heber@bespin.wiss-staff> 21804 Date: Mon Oct 12 14:49:19 2009 +0200 21805 21806 Rewritten molecule::molecule::SPFragmentGenerator() 21807 21808 - new functions are: SPFragmentGenerator_ClearingTouched(), AddPowersetToSnakeStack(O), CountSetMembers(), FillBondsList(), RemoveAllTouchedFromSnakeStack() 21809 21810 commit 5034e1c19570424d6145026e66a1daa7304c078d 21811 Author: Frederik Heber <heber@bespin.wiss-staff> 21812 Date: Mon Oct 12 14:04:44 2009 +0200 21813 21814 First half of molecule_fragmentation.cpp refactoring. 21815 21816 - new template helper function: IncrementalAbsoluteValue() which also increments itself (fixed by one) 21817 - new template molecule function: SetAtomValueToIndexedArray() which sets an attribute of atom class according to some array 21818 - Store/ParseKeySetFile() removed from class molecule, as there was no need 21819 - molecule::StoreFragmentFromKeySet() split up into: StoreFragmentFromKeySet_Init() and CreateInducedSubgraphOfFragment() 21820 - molecule::CreateMappingLabelsToConfigSequence() uses SetIndexedArrayForEachAtomTo() with new IncrementalAbsoluteValue() 21821 - molecule::ParseOrderAtSiteFromFile() uses SetAtomValueToIndexedArray() on MaxOrder and Adaptive Order 21822 - atom has new member function: OutputOrder() 21823 - molecule::StoreOrderAtSiteFile() uses ActOnAllAtoms with above 21824 - molecule::CheckOrderAtSite() rewritten, new helper functions are: GraphToIndexedKeySet(), ScanAdaptiveFileIntoMap() (therein InsertIntoAdaptiveCriteriaList()), ReMapAdaptiveCriteriaListToValue(), MarkUpdateCandidates(), PrintAtomMask() 21825 - StoreKeySetFile split up, TEFactors are now stored in StoreTEFactorsFile, same goes with Parse...() 21826 21827 commit 4a7776a9ae51d78cc8706bd96907c2a247ba1994 21828 Author: Frederik Heber <heber@bespin.wiss-staff> 21829 Date: Mon Oct 12 12:30:02 2009 +0200 21830 21831 Complete refactoring of molecule_dynamics.cpp 21832 21833 - new small functions: SumDistanceOfTrajectories(), PenalizeEqualTargets(), (), CreateInitialLists(), TryNextNearestNeighbourForInjectivePermutation(), MakeInjectivePermutation() 21834 - Thermostat routines (case blocks) have been shifted to small functions in atom class (and soon to be extracted from there into its own class: ThermostatedParticle ?) 21835 - old functions are a lot smaller now: MinimiseConstrainedPotential(), molecule::EvaluateConstrainedForces(), VerletForceIntegration(), also using ActOnAllAtoms 21836 - atom class has a lot of new small functions: 21837 - trajectory: ResizeTrajectory(), CopyStepOnStep(), VelocityVerletUpdate(), VelocityVerletUpdate() 21838 - constraint potential: CorrectVelocity(), Thermostat_...() 21839 21840 commit ccd9f5b1e4f784fe73721ff1b3b2c5f78ec8df8b 21841 Author: Frederik Heber <heber@bespin.wiss-staff> 21842 Date: Fri Oct 9 16:35:14 2009 +0200 21843 21844 First half of molecule_dynamics.cpp is refactored into smaller parts. 21845 21846 - new function atom::EvaluateConstrainedForce() evaluating a constraint force 21847 - molecule::EvaluateConstrainedForces() uses the above with ActOnAllatoms() 21848 - new helper functions in molecule_dynamics.cpp: SumDistanceOfTrajectories(), SumDistanceOfTrajectories(), FillDistanceList(), CreateInitialLists(), TryNextNearestNeighbourForInjectivePermutation(), MakeInjectivePermutation() 21849 - new struct EvaluatePotential in molecules.hpp to contain most of the values for the above functions 21850 21851 commit c111dbf810e0e3f7f92d4afa3b50cd427f3d515d 21852 Merge: 49f802c 87e2e39 21853 Author: Frederik Heber <heber@bespin.wiss-staff> 21854 Date: Fri Oct 9 14:18:41 2009 +0200 21855 21856 Merge branch 'new-delete-conversion' into CodeRefactoring 21857 21858 Conflicts: 21859 21860 molecuilder/src/Makefile.am 21861 molecuilder/src/helpers.cpp 21862 molecuilder/src/helpers.hpp 21863 molecuilder/src/memoryusageobserver.cpp 21864 21865 - FIX: performCriticalExit() was declared static but not defined a such. 21866 - Merge was basically only due to libmolecuilder which was not used in CodeRefactoring branch before. 21867 - added ActOnAll Unit test to new unittests sub folder and to Makefile.am 21868 21869 commit 87e2e39b6683b88cf56f1229adaf4e1bc2358143 21870 Merge: d3dfe18 b9907cd 21871 Author: Frederik Heber <heber@bespin.wiss-staff> 21872 Date: Fri Oct 9 14:08:24 2009 +0200 21873 21874 Merge branch 'new-delete-conversion' of ssh://adamantium/home/metzler/workspace/espack into new-delete-conversion 21875 21876 commit 49f802cfc32887da6d23e51283966873ce964f38 21877 Author: Frederik Heber <heber@bespin.wiss-staff> 21878 Date: Fri Oct 9 13:57:41 2009 +0200 21879 21880 Implementing templated iterators done for molecule.cpp 21881 21882 - new functions in class atom: atom::DistanceSquaredToVector(), atom::DistanceToVector() and atom::AddKineticToTemperature() 21883 - above used with ActOnAllAtoms() in molecule.cpp: molecule::OutputTemperatureFromTrajectories(), molecule::OutputListOfBonds() (uses atom::OutputBondOfAtom() which gives slightly different output than before but rather with more info) 21884 - new template SetIndexedArrayForEachAtomTo() which sets the contents of an index array according to a member function result. 21885 - above used in molecule::IsEqualToWithinThreshold() 21886 21887 commit f66195d268aa8acd6e1a3d8ddc7ba7f220eb784b 21888 Author: Frederik Heber <heber@bespin.wiss-staff> 21889 Date: Fri Oct 9 12:54:52 2009 +0200 21890 21891 forward declarations used to untangle interdependet classes. 21892 21893 - basically, everywhere in header files we removed '#include' lines were only pointer to the respective classes were used and the include line was moved to the implementation file. 21894 - as a sidenote, lots of funny errors happened because headers were included via a nesting over three other includes. Now, all should be declared directly as needed, as only very little include lines remain in header files. 21895 21896 commit b9907cd8232949bfc6e9d327b29d286a12d485d5 21897 Author: metzler <metzler@stud64dc-03.wiss-stud> 21898 Date: Wed Oct 7 16:35:17 2009 +0100 21899 21900 Ticket 30: Put molecuilder unit tests in their own subfolder in src 21901 21902 commit be90f17d330ec04dde01f9ed6bf79fd8a8b809ce 21903 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 21904 Date: Wed Oct 7 17:01:14 2009 +0200 21905 21906 temp commit 21907 21908 commit e419517de9b7d686ed4d6f7fab71fb5d08e6344b 21909 Author: Frederik Heber <heber@bespin.wiss-staff> 21910 Date: Wed Oct 7 16:26:53 2009 +0200 21911 21912 used forward declaration to untangle atom and bond declarations, molecule::CreateListOfBondsPerAtom() uses ActOnAllAtoms 21913 21914 - a major problem is two classes depending on one another and we've often made constraints in order to accommodate for this. But there is an easier solution: Have forward declarations of the other class in each header file, only include the true other header file in each implementation (i.e. cpp file). 21915 - This was done with atom and bond class to allow for a new function atom::OutputBondOfAtom() 21916 - molecule::CreateListOfBondsPerAtom() uses ActOnAllAtoms with this new function. 21917 21918 commit 23b830d97f03d2db6efacee0173bee0d34934bcb 21919 Author: Frederik Heber <heber@bespin.wiss-staff> 21920 Date: Wed Oct 7 15:18:59 2009 +0200 21921 21922 molecule::CountElements() changed to use SetIndexedArrayForEachAtomTo(), molecule::OutputXYZ() fixed 21923 21924 - in molecule::OutputXYZ() AtomCount is used 21925 - molecule::CountElements() now uses SetIndexedArrayForEachAtomTo() to get the number of atoms per element counted 21926 21927 commit 681a8a0374ed99bd32ad357a3eda2eb36c9f922f 21928 Author: Frederik Heber <heber@bespin.wiss-staff> 21929 Date: Wed Oct 7 15:16:13 2009 +0200 21930 21931 in molecule::OutputTrajectoriesXYZ() ActOnAllAtoms used by new function atom::OutputTrajectoryXYZ(). 21932 21933 commit fcd7b69eeaa761de1f6ebc0e994186f2f9f858d5 21934 Author: Frederik Heber <heber@bespin.wiss-staff> 21935 Date: Wed Oct 7 14:14:15 2009 +0200 21936 21937 In molecule::OutputTrajectories() ActOnAllAtoms() with new function atom::OutputTrajectory() is used. 21938 21939 For this to work, I had to change the Trajectory struct that was so far included in molecule.hpp to be incorporated directly into the class atom. 21940 NOTE: This incorporation is incomplete and a ticket (#34) has been filed to remind of this issue. 21941 However, the trajectory is better suited to reside in atom anyway and was probably just put in molecule due to memory prejudices against STL vector<>. 21942 Functions in molecule.cpp, config.cpp, molecule_geometry.cpp and molecule_dynamics.cpp were adapted (changed from Trajectories[atom *] to atom *->Trajectory). 21943 And the atom pointer in the Trajectory structure was removed. 21944 21945 commit e9f8f930b09fee74ef361de63569c0744dc9509a 21946 Author: Frederik Heber <heber@bespin.wiss-staff> 21947 Date: Tue Oct 6 19:57:01 2009 +0200 21948 21949 More functions of molecule now use templated iterators. 21950 21951 - the following template functions are defined in molecule.hpp and implemented in molecule_template.hpp 21952 - ActOnAllVectors() - Vector of current atom is object to member function pointer 21953 - ActOnAllAtoms() - current atom is object to member function pointer 21954 - ActWithEachAtom() - current atom is parameter to molecule member function not object 21955 - ActOnCopyWithEachAtom() - Same as ActWithEachAtom() but object is not this but an extra pointer to a copy 21956 - ActOnCopyWithEachAtomIfTrue() - Same as ActWithEachAtom() but with additional condition (bool member function of atom) that has to be true 21957 - SetIndexedArrayForEachAtomTo() - current atom's index or its element's Z acts as index to a given array in conjunction with a setor function 21958 - the following functions were converted in molecule: molecule::CopyMolecule(), molecule::CopyMoleculeFromSubRegion(), molecule::Output(), molecule::OutputTrajectories(), molecule::OutputXYZ() 21959 - atom.cpp: new functions IsInParallelepiped(), overloaded Output() 21960 - helper.cpp: new template functions Increment() and AbsolutValue acting as wrapper to operator+=() and operator=() 21961 21962 commit ebcadedc2eb5f524f09fc7618fe9f4fea00cdbb8 21963 Author: Frederik Heber <heber@bespin.wiss-staff> 21964 Date: Tue Oct 6 19:37:50 2009 +0200 21965 21966 Extended the testsuite to encompass the vital areas of molecuilder. 21967 21968 - the vital areas are: simple geometry, Graph, fragmentation, tesselation 21969 - in molecuilder/tests a dir regression was added for each case with pre and post dirs. Pre contains files needed for the test, post contains results to compare to 21970 - builder.cpp: check for commands that need extra arguments that first arguments does not begin with '-' missing for many cases 21971 21972 commit 21b9c3591722efc708e1482ec02108da1918128b 21973 Author: metzler <metzler@stud64dc-03.wiss-stud> 21974 Date: Tue Oct 6 12:15:50 2009 +0100 21975 21976 #22 Write a critical exit function 21977 21978 commit cee0b57afea6660531722346890ed484e9ea8dd4 21979 Author: Frederik Heber <heber@bespin.wiss-staff> 21980 Date: Tue Oct 6 00:10:53 2009 +0200 21981 21982 class molecule implementation split up into six separate parts. 21983 21984 - dynamics: Verlet integration and constraint potential 21985 - fragmentation: BOSSANOVA scheme 21986 - geometry: all operations acting on the Vector's inside the atom's 21987 - graph: supplementary functions for fragmentation, treating molecule as a bonding graph 21988 - pointcloud: implementations of virtual functions for pointcloud class, needed for Tesselation 21989 21990 commit d09ff7ad9c8d572bf86f780836ed477e92efd995 21991 Author: Frederik Heber <heber@bespin.wiss-staff> 21992 Date: Tue Oct 6 00:09:51 2009 +0200 21993 21994 new function Vector::WrapPeriodically() and Vector::(Inverse)MatrixMultiplication has const parameters now. 21995 21996 commit e652463fcd182a9dedbeed0eb1351e9b0bfbb92e 21997 Author: Frederik Heber <heber@bespin.wiss-staff> 21998 Date: Tue Oct 6 00:08:57 2009 +0200 21999 22000 New function atom::CorrectFactor() and atom::EqualsFather(). 22001 22002 - are just small functions used for molecule::ActOnAllAtoms(). 22003 22004 commit eaee7fae200461527b4b31cedd8f589ef0b2a560 22005 Author: Frederik Heber <heber@bespin.wiss-staff> 22006 Date: Mon Oct 5 23:14:28 2009 +0200 22007 22008 even the class of the member function can be templated, see ActOnAllUnitTest. 22009 22010 Note however that specializations of templated member functions are not allowed. 22011 22012 commit 33f9f707ba379505762c0251bf773524a07503b2 22013 Author: Frederik Heber <heber@bespin.wiss-staff> 22014 Date: Mon Oct 5 22:51:24 2009 +0200 22015 22016 Member functions of Vector class may be called while going over an iteration of a list containing Vectors, thanks to member function pointers. 22017 22018 - Unit test ActOnAllTest is the basic class for showing, how we can use any member function of Vector:: and make it act globally over a list of vectors. 22019 - this is incorporated into the definition of class molecule for the vectors contained in the atoms chained list. 22020 22021 commit 13a5749f3ea1cfcb14e8fa7943cdf7ce459fc59b 22022 Merge: aba92d1 fa861b8 22023 Author: Frederik Heber <heber@bespin.wiss-staff> 22024 Date: Mon Oct 5 20:45:06 2009 +0200 22025 22026 Merge branch 'ConvexHull' into ActOnAll 22027 22028 Conflicts: 22029 22030 molecuilder/src/Makefile.am 22031 22032 Boost implementation commit was overlapping with ActOnAllTest 22033 22034 commit fa861b8ceb59e30faf501c271e02790e26b0afdb 22035 Author: Frederik Heber <heber@bespin.wiss-staff> 22036 Date: Mon Oct 5 20:43:43 2009 +0200 22037 22038 Included BOOST library MPL into autoconf setup. 22039 22040 commit c26f44b5c51a3902dd55fb535bd81f36ffebe3d7 22041 Author: Frederik Heber <heber@bespin.wiss-staff> 22042 Date: Mon Oct 5 19:14:58 2009 +0200 22043 22044 Fixed testsuite, removed some minor bugs. 22045 22046 - TesselationUnitTest_SOURCES lacked memoryallocator stuff 22047 - Free does not give a message anymore, as there can be no error. 22048 - testsuite was fixed for suite 2 and 3, mostly due to changed options that were not accomodated for in the testsuite 22049 22050 commit a33931a6926488ed74dfbf11db9e4eaf555bbf05 22051 Merge: 7dea7c3 c0917c9 22052 Author: Frederik Heber <heber@bespin.wiss-staff> 22053 Date: Mon Oct 5 18:05:53 2009 +0200 22054 22055 Merge branch 'ConcaveHull' into ConvexHull 22056 22057 Conflicts: 22058 22059 .gitignore 22060 molecuilder/src/Makefile.am 22061 molecuilder/src/atom.cpp 22062 molecuilder/src/tesselation.cpp 22063 22064 no serious overlaps, just a free Frees that were not present in ConcaveHull were MemoryAllocator class was added. 22065 22066 commit d3dfe189d4c48a3573b1b6119d8e9a81b73246c1 22067 Author: Frederik Heber <heber@bespin.wiss-staff> 22068 Date: Mon Oct 5 17:43:25 2009 +0200 22069 22070 new/delete conversion. 22071 22072 mode change only, nothing else. 22073 22074 commit 5417c5f54788788592186bc7be21179131f8739b 22075 Author: Frederik Heber <heber@bespin.wiss-staff> 22076 Date: Mon Oct 5 17:42:20 2009 +0200 22077 22078 New/delete conversion. 22079 22080 82: "main" missing in msg 22081 22082 commit c0917c976855c93e7755fae6eabf5a1b2cd9255e 22083 Merge: 41194a7 b66c223 22084 Author: Frederik Heber <heber@bespin.wiss-staff> 22085 Date: Mon Oct 5 16:59:11 2009 +0200 22086 22087 Merge branch 'ConcaveHull' of ssh://stud64d-02/home/metzler/workspace/espack into ConcaveHull 22088 22089 Conflicts: 22090 22091 molecuilder/src/builder.cpp 22092 molecuilder/src/memoryusageobserver.cpp 22093 molecuilder/src/memoryusageobserver.hpp 22094 molecuilder/src/memoryusageobserverunittest.cpp 22095 molecuilder/src/memoryusageobserverunittest.hpp 22096 22097 This conflict arised, because the #19 commit was already pushed to the server, but the commit was later "amended" locally. This is fixed, there were no real overlaps anyway. 22098 22099 commit b66c223baf91c9bbe4c297fd4c47414c47e246a1 22100 Author: metzler <metzler@stud64dc-03.wiss-stud> 22101 Date: Mon Oct 5 15:50:43 2009 +0100 22102 22103 #19 Observe memory usage 22104 22105 commit 41194a7bf06101702d6e0b8243fa47ade9e8c24e 22106 Merge: 0227a97 c301806 22107 Author: Frederik Heber <heber@bespin.wiss-staff> 22108 Date: Mon Oct 5 16:35:06 2009 +0200 22109 22110 Merge branch 'ConcaveHull' of ssh://stud64d-02/home/metzler/workspace/espack into ConcaveHull 22111 22112 commit aba92d1cf6f8183eb896906f52a302521acea926 22113 Author: Frederik Heber <heber@bespin.wiss-staff> 22114 Date: Mon Oct 5 16:31:35 2009 +0200 22115 22116 ActOnAll is a test (not in the molecuilder source tree, but as a singular UnitTest) to get a template function for Vector member function calls. 22117 22118 The idea is to have a call such as: 22119 ActOnAll( AddVector (1.,0.,0.) ); 22120 which performs the AddVector on all Vectors (inside the atoms) in e.g. the molecule class. 22121 22122 This would save a lot of unnecessary lines and would make the code in general easier to read. 22123 22124 commit c30180691174b61d9244d1942760db46f34f09e0 22125 Author: metzler <metzler@stud64dc-03.wiss-stud> 22126 Date: Mon Oct 5 15:12:18 2009 +0100 22127 22128 #19 Observe memory usage 22129 22130 commit 7dea7c3ad9e0e608f067038eb1e30477fbd8360e 22131 Author: Frederik Heber <heber@bespin.wiss-staff> 22132 Date: Fri Oct 2 17:19:51 2009 +0200 22133 22134 Fixes to the (Non)ConvexTesselation, working with 1_2_dimethoxyethylene 22135 22136 minor changes: 22137 - BoundaryLineSet::CheckConvexityCriterion() reduced verbosity 22138 - CalculateConcavityPerBoundaryPoint() moved to tesselationhelpers.cpp 22139 - FindNonConvexBorder(): flag -> OneLoopWithoutSuccessFlag, failflag -> TesselationFailFlag, N removed 22140 - FindNonConvexBorder() - CheckListOfBaseline() used before and after insertion of straddling points 22141 - BoundaryTriangleSet::ContainsBoundaryPoint() overloaded function to check also for TesselPoint 22142 - Tesselation::InsertStraddlingPoints() - LinkedCell only redone when point was added 22143 - Tesselation::AddTesselationTriangle() - overloaded function to set index of triangle directly. 22144 - new function CheckListOfBaselines() - outsourced from FindNonConvexBorder() 22145 22146 major changes: 22147 - BUGFIX: FindNonConvexBorder() - increment of baseline was missing 22148 - third step (Flipping baselines) removed from ConvexizeNonconvexEnvelope() 22149 - BUGFIX: BoundaryTriangleSet::GetIntersectionInsideTriangle() < should have been > in final if-statement to check whether in- or outside 22150 - Tesselation::InsertStraddlingPoints() - behavior of FindClosestTriangle() changed, hence we have to check whether returned triangle does not contain the point in question. 22151 - BUGFIX: Tesselation::FlipBaseline() - did not change LastTriangle which caused crashes on writing envelope, as it pointed to delete memory 22152 22153 commit e4a379ed412421dc2eb4f0cd77c6fe6d7cc47ffa 22154 Author: Frederik Heber <heber@bespin.wiss-staff> 22155 Date: Fri Oct 2 17:18:43 2009 +0200 22156 22157 FIX of Vector::GetIntersectionWithPlane() 22158 22159 - Direction was not normalized. 22160 - simple case of origin is in-plane not immediately returned. 22161 22162 commit 0227a9778aafa7940161d45586d48cd6db8113c8 22163 Author: Frederik Heber <heber@bespin.wiss-staff> 22164 Date: Fri Oct 2 15:01:37 2009 +0200 22165 22166 new tesselation unit test 22167 22168 - excluded some more files (mostly ecut and cppunit stuff) 22169 - Tesselation unit test added 22170 22171 commit 57066a6de6f2d289266e1e6e8466859414ebf216 22172 Author: Frederik Heber <heber@bespin.wiss-staff> 22173 Date: Mon Sep 28 20:47:54 2009 +0200 22174 22175 Various fixes and attempt to get convex hull working. 22176 22177 - Tesselation::FlipBaseline: Now returns pointer to new baseline or NULL if not flipped 22178 - Tesselation::PickFarthestofTwoBaselines() returns volume change due to flipping 22179 - WriteTecplotFile(): ZONE name now contains nodes of last triangle, incorporates upper two changes 22180 - ConvexizeNonconvexEnvelope(): additional dummy string to add single step output of intermediate envelopes 22181 - TesselStruct::RemovePointFromTesselatedSurface(): Now returns volume lost due to point removal 22182 - ConvexizeNonconvexEnvelope() evaluates change in volume due to added/removed points 22183 - FindNonConvexBorder(): last two parameters have changed position, we check for NULL filename before writing, we add straddling points by InsertStraddlingPoints() (is better than AddBoundaryPointByDegeneratedTriangle()), IsInnerAtom() test removed 22184 - new function AddBoundaryPointByDegeneratedTriangle() to add outside points 22185 - StoreTrianglesinFile() contains the triangle storing 22186 - boundary.cpp: typos, Verbose() changes and Verbosity reduced 22187 - new function BoundaryTriangleSet::IsPresentTupel(), checks whether two triangles are the same, used in Tesselation::FindTriangles() 22188 - new attribute Tesselation::LastTriangle contains pointer to last added triangle 22189 - FIX: Tesselation::FindNextSuitableTriangle() checks for existentTriangleCount between 1 and 3 (as is the number of already present lines) and checks for zero NormalVector of created triangle 22190 - Tesselation::FindSecondPointForTesselation(): removed parameter Candidate 22191 - Tesselation::FindClosestTrianglesToPoint() now has a list of triangles from the nearest point which we look through for nearest triangle 22192 - BUGFIX: Tesselation::IsInnerPoint() now takes center of triangle with respect to point to decide whether in- or outside 22193 - FIX: Tesselation::GetPathsOfConnectedPoints() notes down touched triangles as well in order move along the surrounding triangles sequentially 22194 - FIX: Tesselation::RemovePointFromTesselatedSurface(): Huge changes, from the closed path of connected points we remove one by one by adding the respective triangle and try to do it in such an order, that the volume is maximized 22195 22196 - new function Tesselation::FindAllDegeneratedTriangles(), pendant to Tesselation::FindAllDegeneratedLines() 22197 - FIX: new function Tesselation::RemoveDegeneratedTriangles() 22198 - new function Tesselation::AddBoundaryPointByDegeneratedTriangle() 22199 22200 Moved tesselation writing to tesselation.cpp 22201 - WriteVrmlFile(), WriteRaster3dFile(), WriteTecplotFile() moved to tesselation.cpp 22202 - these also don't use molecule anymore, but the PointCloud structure (hence, bonds are no more visible) 22203 - new function TesselStruct::Output() which performs the writing 22204 - new function InsertSphereInRaster3D(), which places a sphere at the position of the last triangle 22205 22206 commit 91e7e4a510c48a116682e9998422b928cf2f1117 22207 Author: Frederik Heber <heber@bespin.wiss-staff> 22208 Date: Mon Sep 28 20:46:25 2009 +0200 22209 22210 new function CalculateVolumeofGeneralTetraeder(). 22211 22212 - is used when a point is removed to evaluate the loss of volume in the envelope. 22213 22214 commit d52e70c6c193b4da43bf1669f9b468e2b6092897 22215 Author: Frederik Heber <heber@bespin.wiss-staff> 22216 Date: Mon Sep 28 20:43:02 2009 +0200 22217 22218 Small fixes. 22219 22220 - FIX: atom::~atom(): Name is free'd 22221 - config::Load(): MDSteps is set to 0 (switched off) if there is only one step 22222 - vectorunittest.cpp: includes sorted in alphabetical order 22223 22224 commit f7f7a4e1d7ef4e1b6442660248ec41c73e743f8f 22225 Author: Frederik Heber <heber@bespin.wiss-staff> 22226 Date: Mon Sep 28 20:39:28 2009 +0200 22227 22228 Implemenation of embedding merge, untested. LinearInterpolation now has switch for using identity map. 22229 22230 - embed merge in MoleculeListClass determines the non-convex envelope and tries to fill the domain with the filler molecule everywhere outside of this domain 22231 - is added to MergeMolecule in builder.cpp, case 'e' 22232 - in molecule::LinearInterpolationBetweenConfiguration() now has additional parameter to tell whether we have to look for a mapping or use the identity. 22233 22234 commit 8cd903035b3501b8a0e39153bb9c28f97d662d5f 22235 Author: Frederik Heber <heber@bespin.wiss-staff> 22236 Date: Mon Sep 28 20:38:06 2009 +0200 22237 22238 LinkedCell has another constructor initialised from LinkedNodes (list of Nodes). 22239 22240 commit d049668ca4fb401ecc4fb71099658175b0c052c9 22241 Author: Frederik Heber <heber@bespin.wiss-staff> 22242 Date: Mon Sep 28 20:31:58 2009 +0200 22243 22244 Added Tesselation unit test 22245 22246 - new file tesselationunittest with simple tetraeder UnitTest for checking IsInnerPoint() 22247 - added to Makefile.am 22248 22249 commit 29812d568aaa49fa5ca9e12066f70b95b8cfe954 22250 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22251 Date: Mon Sep 21 13:48:42 2009 +0200 22252 22253 Ticket 11: use templates and/or traits to fix Malloc/ReAlloc-Free warnings in a clean manner 22254 22255 commit 065e8257b9effcf42c1551ca4451070554075674 22256 Author: Frederik Heber <heber@bespin.wiss-staff> 22257 Date: Fri Aug 21 14:19:08 2009 +0200 22258 22259 FIX: Tesselation::RemovePointFromTesselatedSurface() is working correctly now, heptan is de-tesselated without any memory leaks. 22260 22261 - changed some verbosity of AddTesselation...() and RemoveTesselation...() to ease bug-hunting 22262 - new function Tesselation::GetPresentTriangle() which is similar to CheckPresenceofTriangle() but returns the found triangle. 22263 - new function Tesselation::GetAllTriangles() returns list of all triangles to a given boundary point 22264 - the following functions and changes are all needed to recreate triangles after removal of a boundary point in the correct manner. 22265 - removed GetNeighboursOnCircleOfConnectedPoints(), just use GetCircleOfConnectedPoints() 22266 - new function Tesselation::GetAllConnectedPoints() which returns all uniquely connected points (set not list) 22267 - changed function GetCircleOfConnectedPoints() which works on GetAllConnectedPoints() to bring them into order of their angles 22268 - new function Tesselation::GetPathsOfConnectedPoints() and Tesselation::GetClosedPathsOfConnectedPoints() which build upon one another, getting the closed paths the connected points represent by looking at the adjacency of the triangles 22269 - changed Tesselation::RemovePointFromTesselatedSurface(): Triangles are marked for removal, then removed in one loop. We use GetClosedPathsOfConnectedPoints() to obtain the correct sequence and then go through each of the closed paths and re-create the triangles as before 22270 22271 commit d4fa238d851e8ae11543f492fb106a7a325508b2 22272 Author: Frederik Heber <heber@bespin.wiss-staff> 22273 Date: Fri Aug 21 14:17:52 2009 +0200 22274 22275 New function RemoveAllBoundaryPoints() for sequentially removing all boundary points. 22276 22277 - This is meant as a pre-test for the ConvexizeNonconvexTesselation(). 22278 - new function is incorporated into builder.cpp:ParseCommandLineOptions for case 'o' 22279 22280 commit 9ba9ee5156b811b6889c14479c043d2061fabdc0 22281 Author: Frederik Heber <heber@bespin.wiss-staff> 22282 Date: Fri Aug 21 14:17:25 2009 +0200 22283 22284 formula typo in molecule::PrincipalAxisSystem() fixed 22285 22286 commit 89c8b25b009146faf28147259d014f97a6f3c327 22287 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22288 Date: Thu Aug 20 17:40:49 2009 +0200 22289 22290 Ticket 17: Write new function molecule::CopyMoleculeFromSubRegion() 22291 22292 commit 78b73c83586caecb47414ddf8f13f2e8d0da59b3 22293 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22294 Date: Thu Aug 20 13:35:19 2009 +0200 22295 22296 Ticket 16: Unit tests for Vector::RotateVector(), additionally fixing the function 22297 22298 commit 34e05926b0e581fa27fb52f292bc4ac9378e13b2 22299 Merge: 1d9b7aa 7c14ecc 22300 Author: Frederik Heber <heber@bespin.wiss-staff> 22301 Date: Wed Aug 19 16:40:33 2009 +0200 22302 22303 Merge branch 'ConcaveHull' of ssh://stud64d-02/home/metzler/workspace/espack into Ticket14 22304 22305 Conflicts: 22306 22307 molecuilder/src/boundary.cpp 22308 molecuilder/src/tesselation.cpp 22309 22310 - in boundary.cpp: FindConvexBorder() - overlay due to PickFarthestofTwoBaselines() 22311 - in tesselation.cpp: CheckConvexityCriterion() - overlay due to verbosity change on return, getAngle() -> GetAngle() 22312 22313 commit 1d9b7aa1fbdc49500a7e863a8553e98d6859a779 22314 Author: Frederik Heber <heber@bespin.wiss-staff> 22315 Date: Wed Aug 19 16:31:29 2009 +0200 22316 22317 Smaller fixes, but convex tesselation not working yet 22318 22319 - BoundaryPointSet::value initialized. 22320 - ConvexizeNonconvexEnvelope() - iteratively FlipBaselines() and RemovePointFrom...() 22321 - BoundaryLineSet::CheckConvexityCriterion() returns convex if triangles are missing, reduced verbosity 22322 - Tesselation::IsConvexRectangle() - not working due to buggy GetClosestPoint and ClosestPoint was removed too early 22323 - BUGFIX: GetClosestPointBetweenLine() - NewOffset was wrong, projection to relative to plane offset, NewDirection wrong also, as has to be absolute, not relative for GetIntersection...() 22324 - Tesselation::RemovePointFromTesselatedSurface() - we first gather all removal candidates, then erase them, still memory leaks and warnings from valgrind though 22325 22326 commit 99c4846fa2f358d851a49eaa19e8427645cac325 22327 Merge: 0077b5c ef9df36 22328 Author: Frederik Heber <heber@bespin.wiss-staff> 22329 Date: Wed Aug 19 14:30:21 2009 +0200 22330 22331 Merge branch 'VectorUnitTest' into ConcaveHull 22332 22333 commit ef9df3674aa570dbb84b779f3c1e9026ab21dbeb 22334 Author: Frederik Heber <heber@bespin.wiss-staff> 22335 Date: Wed Aug 19 14:23:05 2009 +0200 22336 22337 VectorUnitTest extended to Projections and Line intersection, some subsequent bug fixes. 22338 22339 - VectorUnitTest is now under noinst_PROGRAMS, not installed in bin anymore 22340 - VectorUnitTest: EuclidianTest split up into EuclidianScalarProductTest,EuclidianNormTest,EuclidianDistancesTest,EuclidianDistancesTest 22341 - New VectorUnitTests: ProjectionTest and LineIntersectionTest 22342 - BUGFIX: Vector::GetIntersectionWithPlane() - bug due to LineVector renaming (LineVector, LineVector2 -> Origin, LineVector), used LineVector instead of Origin (LineVector however is now relative to Origin!) 22343 - BUGFIX: Vector::GetIntersectionOfTwoLinesOnPlane() - completely rewritten, algorithm was non-sense or at least not understood. 22344 22345 Note: VectorUnitTest is running fine. 22346 22347 commit 658efbccf150d86344577a2c04b5ed24167f3d03 22348 Author: Frederik Heber <heber@bespin.wiss-staff> 22349 Date: Wed Aug 19 14:22:08 2009 +0200 22350 22351 Replaced Vector::Projection() by Vector::ScalarProduct() 22352 22353 - Projection before was just a return of the Vector::ScalarProduct(). We change it now, to make it return a projected vector, the counterpart to ProjectOntoPlane 22354 22355 commit 7c14ecc020f95af3d19a6e849aec7d1868a750d2 22356 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22357 Date: Tue Aug 18 15:59:11 2009 +0200 22358 22359 Ticket 15: new function RemoveDegeneratedTriangles() 22360 Added functions to find and remove surplus degenerated triangles. 22361 22362 commit 54a746bf13a012b2b59a27439528a582d34912f8 22363 Author: Frederik Heber <heber@bespin.wiss-staff> 22364 Date: Tue Aug 18 10:38:46 2009 +0200 22365 22366 Incorporation of Unit test on class Vector. 22367 22368 - new file leastsquaremin.[ch]pp has least square minimisation which is otherwise unclean between classes molecules and Vector 22369 22370 Unit test (later tests rely on good results of earlier ones) 22371 - incorporation of cppunit into configure.ac and Makefile.am of molecuilder/src 22372 - UnityTest: test IsZero and IsOne 22373 - SimpleAlgebraTest: tests algebra 22374 - OperatorAlgebraTest: tests algebra with operator implementations 22375 - EuclidianTest: tests norms and distances 22376 22377 changes to class Vector: 22378 - Vector::IsNull() -> IsZero() 22379 - new function Vector::IsOne() similar to IsZero() 22380 - BUGFIX: Vector::IsNULL() (thx to unit test :) 22381 22382 - Tesselation::getAngle() changed due to above rename 22383 22384 commit 0077b5c0708da6c63d98d637cee5272400fe8565 22385 Author: Frederik Heber <heber@bespin.wiss-staff> 22386 Date: Tue Aug 18 10:42:39 2009 +0200 22387 22388 Further bugfixes to three-step-procedure in convex envelope, not yet working. 22389 22390 - new functions StoreTrianglesinFile() and CalculateConcavityPerBoundaryPoint 22391 - new functions Tesselation::PrintAll...() to print all points, lines and triangles currently on the boundary (simply to remove commented-out code) 22392 - FIX: Tesselation::IsConvexRectangle(): just needs one closest point and simply checks the sign of the scalar product with both endpoints to determine in-/outside 22393 - BUGFIX: Tesselation::PickFarthestofTwoBaselines(): NewOffset was wrong by the offset to the plane 22394 22395 commit f1cccd4375bd7f3e03fcaa64b9c44bc032e44c74 22396 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22397 Date: Mon Aug 17 15:20:16 2009 +0200 22398 22399 Ticket 14: Rename .._.. functions in boundary.cpp 22400 22401 commit 0936451cc73a5f07a9a4d57aa947d09abf3898a4 22402 Author: Frederik Heber <heber@bespin.wiss-staff> 22403 Date: Mon Aug 17 12:48:03 2009 +0200 22404 22405 Rewrite of ConvexizeNonconvexEnvelope() with three steps: Remove concave spots, make all lines best possible, removed concave lines. Is not working yet! 22406 22407 - fixes to write_tecplot_file(): Checks for NULL TesselStruct, write variable extra variable U (contained in BoundaryPointSet), and use .size() instead of ...onBoundaryCount for numbers 22408 - Find_convex_border(): while loop till break in CorrectConcaveBaselines() replaced by a single loop over all boundary lines with PickFarthestofTwoBaselines() 22409 - ConvexizeNonconvexEnvelope(): documentation, needs molecule and filename to save tesselations, three steps consisting of single loops: RemovePointFromTesselatedSurface(), PickFarthestofTwoBaselines(), IsConvexRectangle(). And we calculate remaining concavity by CheckConvexityCriterion for all lines to a boundary point and store it as "U" in the tecplot files. 22410 22411 commit 16d86622dc2c759142b589c64308c884f9339eb6 22412 Author: Frederik Heber <heber@bespin.wiss-staff> 22413 Date: Mon Aug 17 12:30:53 2009 +0200 22414 22415 documentation, some renames (..Triangle.. -> ..Tesselation..) and a bunch of new functions needed for ConvexizeNonconvexEnvelope() 22416 22417 - all of function documentation in place 22418 - AddTriangle...() is now called AddTesselation...() which makes more sense, as they mainly add points, lines and triangles to the global tesselation lists 22419 - New functions RemoveTesselation...() that erase points, lines and triangles and are counterparts to the AddTesselation...() functions (Note: They mostly do what the destructors did, only they erase also from global lists by not calling delete for subelements, but RemoveTesselation...() which does the job) 22420 - ~BoundaryLineSet() checks whether both endpoints are still present, is more robust, as they may be missing from RemoveTesselation...() 22421 - ~BoundaryTriangleSet() checks earlier whether lines are still present, same argument 22422 - AddPoint() is now called AddBoundaryPoint(), works on *BPS array, AddTesselation...() work on *TPS array -> cleaner separation 22423 - new function Tesselation::IsConvexRectangle() checks whether the rectangle made out of the four points of the two triangles with the same baseline in between, is convex or concave. this is needed for ConvexizeNonconvexEnvelope() 22424 - Tesselation::CorrectConcaveBaselines() renamed to Tesselation::PickFarthestofTwoBaselines, which uses GetClosestPointBetweenLine() to check whether one baseline is above the other with respect to the BaseLineNormal vector and always modies the tesselation so that the higher one is used. 22425 - new function GetClosestPointBetweenLine() which calculates the closest point on a line with respect to another line. 22426 - new function Tesselation::FlipBaseline() does most of what CorrectConcaveBaseLine() did before only without the Convexity check (is done in boundary.cpp:Convexize...()) 22427 - Tesselation::GetCircleOfConnectedPoints() renamed to Tesselation::getNeighboursonCircleofConnectedPoints() and new function Tesselation::GetCircleOfConnectedPoints() which really returns just the circle of points, the renamed function works on the result of the new one. 22428 - new function Tesselation::RemovePointFromTesselatedSurface() which just removes the point, re-creating its triangles with the remainder of the points to keep the surface closed. 22429 22430 commit 86381b38132f1af7b1e83f6a7c271dc5decbac5c 22431 Author: Frederik Heber <heber@bespin.wiss-staff> 22432 Date: Mon Aug 17 12:29:03 2009 +0200 22433 22434 Sorted the menu list in ParseCommandLineParamaters() and print volume instead of surface for case 'o' 22435 22436 commit 7e19c35db99594a84d90502517362ecf24203356 22437 Author: Frederik Heber <heber@bespin.wiss-staff> 22438 Date: Thu Aug 13 22:31:12 2009 +0200 22439 22440 First version of the user guide in xml (docbook format) 22441 22442 - introduction, gui and command-line interface 22443 22444 commit 570125a3ba6c2ef5e3412fa0a5f0511fb9b58bdb 22445 Author: Frederik Heber <heber@bespin.wiss-staff> 22446 Date: Thu Aug 13 22:30:07 2009 +0200 22447 22448 Manpage is created via xmlto with a docbook stylesheet. 22449 22450 - Hooks in Makefile.am are taken from TREMOLO project 22451 - manpage is in molecuilder/doc/molecuilder.xml.in 22452 22453 commit 08ef350a55813b0a4db675d13b4659553f889216 22454 Author: Frederik Heber <heber@ins.uni-bonn.de> 22455 Date: Mon Aug 10 18:11:47 2009 +0200 22456 22457 New function ConvexizeNonconvexEnvelope() to calculate the volume of a non-convex envelope. 22458 22459 The central idea is that the volume of a convex envelope is easy to determine as a sum of pyramids with respect to a center inside the envelope. Hence, if we can "reduce" the non-convex envelope to a convex one in such a way that we know the added volume, we may determine the volume of a non-convex envelope. 22460 The nice side effect is that we may use our Find_non_convex_border() algorithm to calculate also the convex envelope. 22461 22462 - We go through all BoundaryPoints and check whether one of its Baselines does not fulfill the ConvexCriterion. If so, we remove it, as it can not be a boundary point on the convex envelope, and re-construct the attached triangles. The added volume is a general tetraeder, whose formula is known. 22463 - FIX: Find_convex_border() - We check whether AddPoint is successful or not. 22464 - builder.cpp: case 'o' - changed to use ConvexizeNonconvexEnvelope() instead of Find_convex_border() 22465 - Tesselation:AddPoint() - now takes second argument which is the index for BPS and always set BPS to either the newly created or the already present point. Return argument discerns between new and already present point. 22466 - Tesselation::BPS, BLS, BTS are now public not private. We have to access them from ConvexizeNonconvexEnvelope() 22467 22468 commit 5c7bf82e2f560799e5659f7449a8e27e32e57f91 22469 Author: Frederik Heber <heber@ins.uni-bonn.de> 22470 Date: Sat Aug 8 21:25:28 2009 +0200 22471 22472 BUGFIXes to Find_convex_... and Find_non_convex_... algorithms 22473 22474 - Find_non_convex_border() - very first baseline of starting triangle is skipped as it is the most outward. 22475 - BoundaryLineSet::TrianglesCount is removed and replaced by triangles.size(), as it is redundant and we made mistakes in not reducing TrianglesCount on triangle erase. 22476 - BoundaryLineSet::CheckConvexityCriterion() - extra check when NormalVector point in the very same directions, 22477 - BoundaryTriangleSet::GetIntersectionInsideTriangle() - CrossPoint return value is checked, i===3 checked not >3! 22478 - new stream operator for TesselPoint with single argument. 22479 - class Tesselation inherits PointCloud and implements all functions (including virtual destructor) in order to have PointsOnBoundary parsable by LinkedCell. 22480 - Tesselation::InsertStraddlingPoints() - LinkedCell is created for every atom just from the BoundaryPoints and not for all (so that only BoundaryPoints can be found), old triangle is now really deleted, lots of verbosity added and fixed. 22481 - Tesselation::GetCommonEndpoint() - connectedClosestPoint is deleted lateron, SecondPoint argument but not used. 22482 - Tesselation::FindClosestPoint() - returns second second closest point in new second argument. 22483 - Tesselation::getCircleOfConnectedPoints() - we find the BoundaryPoint if possible and just look through its lines if found, plane is centered at closest point and normal is between it and the center of all on circle, getAngle() corrections incorporated and vector is always projected onto circle plane. 22484 - new function Tesselation findSecondClosestPoint(). 22485 - getAngle() - just receives third vector with which it dedices between [0,pi) and [pi,2pi), the vectors are assumed to be relative to one common center already. 22486 22487 commit 8bb475fa04486206c9cea1c5ac3b23dc6b485b02 22488 Author: Frederik Heber <heber@ins.uni-bonn.de> 22489 Date: Sat Aug 8 21:22:28 2009 +0200 22490 22491 ParseCommandLineOptions(), NonConvex tesselation is now clocked. 22492 22493 commit 46670dae4437df2f6e77b2dd3520e2154529a2c4 22494 Author: Frederik Heber <heber@ins.uni-bonn.de> 22495 Date: Sat Aug 8 21:19:23 2009 +0200 22496 22497 BUGFIXES to some vector functions. 22498 22499 - Vector::MakeNormalVector() ... Projection lacks ../Norm()/Norm() and hence produced wrong vector. 22500 - Vector::GetIntersectionWithPlane() - checks for uniqueness and Bronstein formula removed and correct one implemented. 22501 - Vector::GetIntersectionOfTwoLinesOnPlane() - Bronstein formula removed, correct procedure implemented. 22502 - Vector::IsNull() is const function. 22503 22504 commit 055861eafd52160fc810dab2462158c84732865e 22505 Author: Frederik Heber <heber@ins.uni-bonn.de> 22506 Date: Sat Aug 8 21:17:51 2009 +0200 22507 22508 new stream operator with just one parameter and virtual destructor 22509 22510 commit 8d31ce674fb76b7998a2a9a53500aea52dd6b405 22511 Author: Frederik Heber <heber@ins.uni-bonn.de> 22512 Date: Fri Aug 7 14:50:27 2009 +0200 22513 22514 excluded unimportant stuff, depcomp and install-sh from util 22515 22516 commit 133d56d645e8dd889bb7a2a950dd50a4b08afcaf 22517 Author: Frederik Heber <heber@ins.uni-bonn.de> 22518 Date: Fri Aug 7 14:48:06 2009 +0200 22519 22520 output of terminating special property comment in .r3d file had no "#" in front. 22521 22522 commit 1999d87b6471a288af309168af32747b142fec73 22523 Author: Frederik Heber <heber@ins.uni-bonn.de> 22524 Date: Fri Aug 7 14:46:27 2009 +0200 22525 22526 BUGFIX: PointCloud implementation in molecule stopped one before last, IsLast() -> IsEnd() 22527 22528 - PointCloud function rename: IsLast() -> IsEnd() 22529 - molecule::GoToNext() goes till end, not till end->previous 22530 22531 commit f3278bbc247394ddf549f3044faf52fd11b71543 22532 Author: Frederik Heber <heber@bespin.wiss-staff> 22533 Date: Fri Aug 7 11:13:21 2009 +0200 22534 22535 Test case of filling a simulation domain with water included. 22536 22537 commit 1953f90f687a36e6e1f3655d77841bf98a36954c 22538 Author: Frederik Heber <heber@bespin.wiss-staff> 22539 Date: Fri Aug 7 11:12:19 2009 +0200 22540 22541 FIX: We have to check whether we create a degenerate triangle also on its first occurence! I.e. in all cases we don't want to create two lines in place were one is already with two triangles attached. 22542 22543 This fixed a bug with cholesterol immediately. 22544 22545 commit 9f97c592967c6641dc8bc6bedc88f12cc114a8ff 22546 Author: Frederik Heber <heber@bespin.wiss-staff> 22547 Date: Tue Aug 4 15:55:11 2009 +0200 22548 22549 FillWithMolecule() for testing built into ParseCommandLine() 22550 22551 commit ef0e6d96aad35cd075ae8135b5ccdb5f89b697c9 22552 Author: Frederik Heber <heber@bespin.wiss-staff> 22553 Date: Tue Aug 4 15:53:55 2009 +0200 22554 22555 find_(non)_convex_border TesselStruct is not free'd anymore, mol->TesselStruct used, find_non_convex_border fixes but incomplete 22556 22557 commit 62bb9107f821c9042c74ce527f8ea92836fdb98c 22558 Author: Frederik Heber <heber@bespin.wiss-staff> 22559 Date: Tue Aug 4 15:48:57 2009 +0200 22560 22561 Fixes for concave hull creation 22562 22563 - fixed BoundaryLineSet::CheckConvexityCriterion(), we now compare the two heights of the triangles, not the NormalVector which was nonsense 22564 - new functions BoundaryLineSet::GetOtherEndpoint(), BoundaryTriangleSet::GetThirdEndpoint() 22565 - Tesselation::InsertStraddlingPoints() receives LinkedCell pointer and uses FindClosestTrianglesToPoint(), and some verbosity added 22566 - generally replaced [aA]tom by [pPoint] 22567 - Tesselation::CorrectConcaveBaselines() (almost) corrected 22568 - IsInnerPoint is overloaded function which calls FindClosestTriangleToPoint() to decide 22569 - getAngle() receives references instead of copies with exception of OrthogonalVector which is made orthonormal to reference - center (is a FIX) 22570 22571 commit 03e57a66d5166aefd366ba8b83e5c9048de1138d 22572 Author: Frederik Heber <heber@bespin.wiss-staff> 22573 Date: Tue Aug 4 15:47:05 2009 +0200 22574 22575 Smaller FIXES to molecule class 22576 22577 - new pointer TesselStruct was not initialzied to NULL 22578 - corrected molecule::CenterInBox(), it now really centers in the given cell_size box (no idea what it did before that) 22579 - as TesselStruct is now a part of the molecule, we remove it on deleting the molecule if it's not NULL 22580 22581 commit ab193235b483df715e298c1c8ca5b09c5ada6abb 22582 Merge: 0dbddc2 edb93cc 22583 Author: Frederik Heber <heber@ins.uni-bonn.de> 22584 Date: Mon Aug 3 22:21:05 2009 +0200 22585 22586 Merge branch 'TesselationRefactoring' into ConcaveHull 22587 22588 Conflicts: 22589 22590 molecuilder/src/boundary.cpp 22591 molecuilder/src/boundary.hpp 22592 molecuilder/src/linkedcell.cpp 22593 molecuilder/src/linkedcell.hpp 22594 molecuilder/src/molecules.hpp 22595 22596 All of Saskia Metzler's new function were transfered from boundary.cpp to tesselation.cpp and the changes due to TesselPoint, LinkedCell and so on incorporated. 22597 22598 commit 0dbddc24a89f547aa564634e7647f87ec8ce9700 22599 Merge: 2319ed7 8c54a3b 22600 Author: Frederik Heber <heber@ins.uni-bonn.de> 22601 Date: Mon Aug 3 20:58:46 2009 +0200 22602 22603 Merge branch 'ConcaveHull' of ssh://heber@192.168.194.2/home/metzler/workspace/espack into ConcaveHull 22604 22605 Conflicts: 22606 22607 molecuilder/src/atom.cpp 22608 molecuilder/src/boundary.cpp 22609 molecuilder/src/boundary.hpp 22610 molecuilder/src/linkedcell.cpp 22611 molecuilder/src/linkedcell.hpp 22612 molecuilder/src/molecules.hpp 22613 molecuilder/src/vector.hpp 22614 22615 - added Saskia Metzler's code that finds whether a point is in- or outside. 22616 - The code is not yet incorporated, but I rather want to continue with merging TesselationRefactoring first. 22617 22618 commit 8c54a3b5f6bdf770309a91dff75fb62f47d91b6d 22619 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22620 Date: Mon Aug 3 18:48:46 2009 +0200 22621 22622 Adding functions IsInnerAtom() and IsInnerPoint() which can check whether an atom (or a point) is inside or outside the tesselation structure. 22623 22624 commit ee1b1672b32e3729acbddd8118c30803b9bca638 22625 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22626 Date: Mon Aug 3 18:48:00 2009 +0200 22627 22628 Compare and output operator for atom takes const argumen 22629 22630 commit 0f453875346dd787f21aaad4f1becabd1a2451af 22631 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22632 Date: Mon Aug 3 18:45:38 2009 +0200 22633 22634 new function LinkedCell::GetNeighbourBounds() 22635 22636 - LinkedCell::GetNeighbourBounds() needed as atom or vector to seek nearest neighbour for must not necessarily be contained in the LinkedCell grid itself. Hence, we have to use specific bounds for the NN search which this function returns. 22637 22638 commit 9c20aaa1c08f264c3ed52a051a26143ef9f89b2e 22639 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22640 Date: Mon Aug 3 18:44:16 2009 +0200 22641 22642 new function isNull(), output operator takes const argument 22643 22644 commit 321a1147844ffaa7cfb1635ec3753966bbb0bba2 22645 Author: Saskia Metzler <metzler@stud64dc-03.wiss-stud> 22646 Date: Mon Aug 3 18:43:42 2009 +0200 22647 22648 output operator now takes const argument 22649 22650 commit edb93cca39cdba9e5dedc74589ea71ab1742cedd 22651 Author: Frederik Heber <heber@bespin.wiss-staff> 22652 Date: Mon Aug 3 17:26:32 2009 +0200 22653 22654 Some minor fixes with regards to what needs to be included where and not more. 22655 22656 commit cd4ccccc02ace6d5e4493281f6cfec892fadbdcf 22657 Author: Frederik Heber <heber@bespin.wiss-staff> 22658 Date: Mon Aug 3 17:09:12 2009 +0200 22659 22660 definitions for class element and verbose moved to their own header files and reducing contents of helpers.hpp 22661 22662 commit a80fbdfe7ff2c5de6edfc1365430bcadc4e1a6a3 22663 Author: Frederik Heber <heber@bespin.wiss-staff> 22664 Date: Mon Aug 3 16:58:43 2009 +0200 22665 22666 class config definitions moved to their own header file. 22667 22668 NOTE: Tesselation of heptan was working correctly! (The config file just grew bigger and bigger that's why more and more triangles were added) 22669 22670 commit 357fba6ccb2cf9e2d97f501d5968558a706028a5 22671 Author: Frederik Heber <heber@bespin.wiss-staff> 22672 Date: Mon Aug 3 16:48:42 2009 +0200 22673 22674 Huge refactoring of Tesselation routines, but not finished yet. 22675 22676 - new file tesselation.cpp with all of classes tesselation, Boundary..Set and CandidatesForTesselationOB 22677 - new file tesselationhelper.cpp with all auxiliary functions. 22678 - boundary.cpp just contains super functions, combininb molecule and Tesselation pointers 22679 - new pointer molecule::TesselStruct 22680 - PointMap, LineMap, TriangleMap DistanceMap have been moved from molecules.hpp to tesselation.hpp 22681 - new abstract class PointCloud and TesselPoint 22682 - atom inherits TesselPoint 22683 - molecule inherits PointCloud (i.e. a set of TesselPoints) and implements all virtual functions for the chained list 22684 - TriangleFilesWritten is thrown out, intermediate steps are written in find_nonconvex_border and not in find_next_triangle() 22685 - LinkedCell class uses TesselPoint as its nodes, i.e. as long as any class inherits TesselPoint, it may make use of LinkedCell as well and a PointCloud is used to initialize 22686 - class atom and bond definitions have been moved to own header files 22687 22688 NOTE: This is not bugfree yet. Tesselation of heptan produces way too many triangles, but runs without faults or leaks. 22689 22690 commit 2319ed7194f122bf4ff43ec6b7ea796f88df7fb3 22691 Author: Frederik Heber <heber@bespin.wiss-staff> 22692 Date: Mon Aug 3 10:10:09 2009 +0200 22693 22694 We are one step further in fixing the convex hull: There are two functions of Saskia Metzler missing, but then we may proceed with testing whether the simple correction scheme of the convex envelope works, but one thing: Right now we cannot associate a Tesselation to its molecule as the snake bites it's one tail. Hence, the next commit will consist of fixing this bad-OOP issue. 22695 22696 - Makefile.am: Just some alphabetical resorting. 22697 - atom::atom() new copy constructor 22698 - builder.cpp: some output for cluster volume, molecule::AddCopyAtom() uses new copy constructor 22699 - FillBoxWithMolecule() - new function to fill the remainder of the simulation box with some given filler molecules. Makes explicit use of the tesselated surfaces 22700 - find_convex_border() - InsertStraddlingPoints() and CorrectConcaveBaselines() is called to correct for atoms outside the envelope and caused-by concave points 22701 - Tesselation::InsertStraddlingPoints() enlarges the envelope for all atoms found outside, Tesselation::CorrectConcaveBaselines() corrects all found baselines if the adjacent triangles are concave by flipping. 22702 - boundary.cpp: Lots of helper routines for stuff further below: 22703 - BoundaryLineSet::IsConnectedTo() checks whether lines have common endpoint 22704 - BoundaryLineSet::CheckConvexityCriterion() checks whether adjacent triangles are convex or concave 22705 - BoundaryLineSet::ContainsBoundaryPoint() checks whether line contains a given boundary point 22706 - BoundaryTriangleSet::ContainsBoundaryLine() and BoundaryTriangleSet::ContainsBoundaryPoint() check whether triangle contains boundary line or point 22707 - BoundaryTriangleSet::GetIntersectionInsideTriangle() calculates intersection point between line and triangle, 22708 - The following routines are needed to check whether point is in- or outside: 22709 - Vector::GetIntersectionWithPlane() calculates intersection point of a plane and a line. 22710 - Vector::GetIntersectionOfTwoLinesOnPlane() intersection of two lines on the same plane. 22711 - FIX: Tesselation::AddPoint() - newly created BoundaryPoint is removed if already present. 22712 22713 Problem: We want to associate a Tesselation class with each molecule class. However, so far we have to know about atoms and bond and molecules inside the Tesselation. We have to remove this dependency and create some intermediate class which enables/encapsulates the access to Vectors, e.g. hidden inside the atom class. This is also good OOP! The Tesselation also only needs a set of Vectors, not more! 22714 22715 commit e1589ea2c3a4eed43b9502009d458076e3ade3cb 22716 Author: Frederik Heber <heber@bespin.wiss-staff> 22717 Date: Tue Jul 28 15:02:51 2009 +0200 22718 22719 Convex tesselation is now working also for heptan. But the convex hull of the bigger molecules is too small. 22720 22721 - GetBoundaryPoints(): Replaced Norm() by NormSquared where possible 22722 - GetBoundaryPoints(): When throwing out points, comparison between height and MinDistance now takes MYEPSILON environment into account. 22723 - Tesselation::TesselateOnBoundary(): BUGFIX - BaseLineCenter was calculated twice the sum of one endpoint not of either endpoint. 22724 - Tesselation::TesselateOnBoundary(): We check if target and winner have same angle which of the two has angle close to desired propagation direction. 22725 22726 commit d4d0ddccf2853b9e013bf8204dd622c8f530826e 22727 Author: Frederik Heber <heber@bespin.wiss-staff> 22728 Date: Tue Jul 28 15:01:15 2009 +0200 22729 22730 New function Vector::NormSquared() and Angle checks whether Norm's are unequal to zero. 22731 22732 - New function Vector::NormSquared() calculates norm squared 22733 - Vector::Angle() checks whether the norms of the vectors are not zero, otherwise returning M_PI 22734 22735 commit a567c3a8651fbb1c0c56eed16c6e5bedfe17a176 22736 Author: Frederik Heber <heber@bespin.wiss-staff> 22737 Date: Tue Jul 28 12:31:26 2009 +0200 22738 22739 ConvexTesselation working again. 22740 22741 - File was not written, as NULL was given in builder.cpp instead of argv[argptr] 22742 - Tesselation::TesselateOnBoundary() - lots of small errors with the normal vector of the triangle, the propagation direction check and so forth 22743 - DetermineCenterOfAll() has sign changed, this was adapted in boundary.cpp 22744 - heptan is NOT working yet, as too many boundary points are thrown away 22745 22746 commit fcc9b099e73c625e76e054aaefb6335f45efa939 22747 Author: Frederik Heber <heber@bespin.wiss-staff> 22748 Date: Mon Jul 27 16:53:57 2009 +0200 22749 22750 FIX: DetermineCenterOfAll() did point in wrong direction, convex envelope working again, but algorithm is not stable 22751 22752 - molecule::DetermineCenterOfAll() center was the sum of all scaled by -1/Number instead of 1/Number. This was corrected for in the code elsewhere. Now, it returns the correct center and where it's elsewhere called we subtract instead of add 22753 - Tesselation::TesselateOnBoundary() does now something meaningful. The NormalVector for the starting triangle could not be constructed, as we lacked the initial normal vector. It is however easy to construct from the center of all and the center of the starting triangle. However, the algorithm is faulty for 1_2_dimethylethane. 22754 - GetBoundaryPoints() - as we do not translate to center of gravity anymore, we have to subtract the center of all. Otherwise the radial method for determining boundary points does not work. 22755 22756 Is not yet working. 22757 22758 commit 3c4f0435d3d801e00da1a7a1cedd00e8cef9988f 22759 Author: Frederik Heber <heber@bespin.wiss-staff> 22760 Date: Mon Jul 27 16:19:12 2009 +0200 22761 22762 BUGFIX: config::Load() added atoms in wrong order, hence resulting in wrong names. 22763 22764 - config::Load() - int in LinearList should have been mapped not original one 22765 22766 commit b6d8a94261d259df5d3291b5b164bb1d0c98aa1d 22767 Author: Frederik Heber <heber@bespin.wiss-staff> 22768 Date: Mon Jul 27 16:08:27 2009 +0200 22769 22770 BUGFIX: ManipulateAtoms() had mol = NULL 22771 22772 - in ManipulateAtoms() the mol was not set to *ListRunner 22773 22774 commit a20e6a14f955389f8b2eec083a93d9553a145ba5 22775 Author: Frederik Heber <heber@bespin.wiss-staff> 22776 Date: Mon Jul 27 16:07:25 2009 +0200 22777 22778 BUGFIX: molecule::ReturnFullMatrixforSymmetric had it still all wrong. 22779 22780 - molecule::ReturnFullMatrixforSymmetric() corrected 22781 - InverseMatrixMultiplication() prints det on error 22782 22783 commit d30402b028f6482fde29f70c53eebba7e5dd62aa 22784 Author: Frederik Heber <heber@bespin.wiss-staff> 22785 Date: Mon Jul 27 10:16:03 2009 +0200 22786 22787 Split VolumeOfConvexEnvelope() into find_convex_border() and remainder. 22788 22789 - Convex envelope is not working anymore, in the state of fixing it and trying to refactor code a bit. 22790 - planned to have VolumeOfConvexEnvelope() to be replaced by VolumeOfEnvelope(), which can also do Non-Convex-Envelopes 22791 22792 commit 36ec71f4484a1913d51cd83e623c516fde7c113f 22793 Merge: 042f828 51c910f 22794 Author: Frederik Heber <heber@bespin.wiss-staff> 22795 Date: Thu Jul 23 16:23:32 2009 +0200 22796 22797 Merge branch 'master' into ConcaveHull 22798 22799 Conflicts: 22800 22801 molecuilder/src/analyzer.cpp 22802 molecuilder/src/bond.cpp 22803 molecuilder/src/boundary.cpp 22804 molecuilder/src/boundary.hpp 22805 molecuilder/src/builder.cpp 22806 molecuilder/src/config.cpp 22807 molecuilder/src/datacreator.cpp 22808 molecuilder/src/datacreator.hpp 22809 molecuilder/src/defs.hpp 22810 molecuilder/src/ellipsoid.cpp 22811 molecuilder/src/joiner.cpp 22812 molecuilder/src/molecules.cpp 22813 molecuilder/src/molecules.hpp 22814 molecuilder/src/parser.cpp 22815 molecuilder/src/parser.hpp 22816 22817 merges: 22818 - analyzer.cpp: all from master, due to Hessian; only Chi(PAS)Fragments from HEAD 22819 - bond.cpp: bond::GetOtherAtom gives cerr output if neither atom matches from master 22820 - boundary.cpp: all from HEAD, is tesselation stuff 22821 - boundary.hpp: all from HEAD, is tesselation stuff 22822 - builder.cpp: Center...(), RemoveAtoms(), SaveConfig() from master, is MultipleMolecules, rest from HEAD (Translation and ...) 22823 - config.cpp: FileBuffer stuff from HEAD, only some taken over from HEAD 22824 - datacreator.cpp: all from master, is Hessian 22825 - datacreator.hpp: all from master, is Hessian 22826 - defs.hpp: all from master, is Thermostat 22827 - ellipsoid.cpp: all from HEAD, created during tesselation 22828 - joiner.cpp: all from master, is Hessian 22829 - molecules.cpp: molecule::molecule(), ConstrainedPotential() stuff, Thermostats(), RemoveAtom(),CreateAdjacencyList(), FragmentMolecule() from master, CenterInBox(), CenterEdge(), CenterOrigin(), CenterPeriodic() (instead of CenterAtVector()), TranslatePeriodically(), DeterminePeriodicCenter(), Output...(), ReturnFullForSymmnetricMatrix() from HEAD 22830 - molecules.hpp: see above, ConfigfileBuffer struct from HEAD, class config joined 22831 - parser.cpp: all from master, is Hessian 22832 - parser.hpp: all from master, is Hessian 22833 22834 compilation fixes: 22835 - molecules.cpp: PrincipalAxisSystem() - CenterGravity() -> CenterOrigin(), DetermineCenter() -> DeterminePeriodicCenter 22836 - datacreator.cpp: all char * to const char * 22837 - builder.cpp: ParseCommandLineOptions() - case 'c': had argptr++ and argptr+=3; case 'O' - x was not zero'd 22838 22839 commit 042f8283d213f623e8320856dfac9e6d55aa6800 22840 Author: Frederik Heber <heber@bespin.wiss-staff> 22841 Date: Thu Jul 23 16:21:57 2009 +0200 22842 22843 fixed indentation from tabs to two spaces. 22844 22845 commit 51c910f40c6eb9f4f247c7ecb68574a129861691 22846 Merge: d067d45 375b458 22847 Author: Frederik Heber <heber@bespin.wiss-staff> 22848 Date: Thu Jul 23 16:04:47 2009 +0200 22849 22850 Merge branch 'AtomRemoval' 22851 22852 Conflicts: 22853 22854 molecuilder/src/builder.cpp 22855 molecuilder/src/molecules.cpp 22856 22857 merges: 22858 - builder.cpp: case 'R' in ParseCommandLineOptions from AtomRemoval, also bugfix in RemoveAtoms(), rest from HEAD 22859 - molecules.cpp: Basically all from HEAD because of MultipleMolecules and ConstrainedMD 22860 22861 commit 375b4589d3335eeefe2cda072f13207108281969 22862 Author: Frederik Heber <heber@bespin.wiss-staff> 22863 Date: Thu Jul 23 15:53:01 2009 +0200 22864 22865 fixed indentation from tabs to two spaces. 22866 22867 commit d067d459977745a73acc480166336590b6ba19cf 22868 Merge: ce5ac38 4379223 22869 Author: Frederik Heber <heber@bespin.wiss-staff> 22870 Date: Thu Jul 23 14:34:47 2009 +0200 22871 22872 Merge branch 'MultipleMolecules' 22873 22874 Conflicts: 22875 22876 molecuilder/src/analyzer.cpp 22877 molecuilder/src/atom.cpp 22878 molecuilder/src/boundary.cpp 22879 molecuilder/src/boundary.hpp 22880 molecuilder/src/builder.cpp 22881 molecuilder/src/config.cpp 22882 molecuilder/src/datacreator.hpp 22883 molecuilder/src/helpers.cpp 22884 molecuilder/src/joiner.cpp 22885 molecuilder/src/moleculelist.cpp 22886 molecuilder/src/molecules.cpp 22887 molecuilder/src/molecules.hpp 22888 molecuilder/src/parser.cpp 22889 molecuilder/src/parser.hpp 22890 molecuilder/src/vector.cpp 22891 molecuilder/src/verbose.cpp 22892 22893 merges: 22894 - analyzer.cpp: all from HEAD, Hessian stuff 22895 - atom.cpp: ostream & operator << (ostream &ost, const atom &a), 2nd param is const 22896 - boundary.cpp: DoSingleStepOutput, VRMLSUffix, HULLEPSILON, Get_center_of_sphere(), Find_next_suitable_point_via_Angle_of_Sphere() and all of tesselation stuff from MultipleMolecules; DoRaster3DOutput, ~BoundaryLineSet(), ~Tesselation() from HEAD; write_raster3d_file with some changes from MultipleMolecules 22897 - boundary.hpp: all from MultipleMolecules 22898 - builder.cpp: all in ParseCommandLineOptions() from MultipleMolecules 22899 - config.cpp: all from HEAD, is stuff from ThermoStat and ConstrainedMD 22900 - datacreator.hpp: all from HEAD, Hessian stuff 22901 - helpers.cpp: all from HEAD, ReAlloc() differed just by indentation 22902 - moleculelist.cpp: all from MultipleMolecules, has to do with introduced molecule centers 22903 - molecules.cpp: all from HEAD, was ConstrainedMD stuff 22904 - molecules.hpp: ConstrainedMD and VerletForceIntegration from HEAD, moleculelist stuff from MultipleMolecules 22905 - parser.cpp: all from HEAD, ColumnCounter is *ColumnCounter there 22906 - parser.hpp: all from HEAD 22907 - vector.cpp: completely from MultipleMolecules (more lines) 22908 - verbose.cpp: all from HEAD 22909 22910 compilation fixes: 22911 - CheckPresenceOfTriangle() from MultipleMolecules 22912 - MoleculeListClass::ListOfMolecules has changed to STL list, hence use insert(), ReturnIndex() and MoleculeListClass::OutputConfigForListOfFragments 22913 - MoleculeListClass::OutputConfigForListOfFragments() had fragmentprefix instead of FRAGMENTPREFIX 22914 - parser.hpp: EnergyMatrix::ParseIndices() declaration was missing 22915 22916 commit ce5ac38e73b73390de3143a6985456a9e35495f9 22917 Author: Frederik Heber <heber@bespin.wiss-staff> 22918 Date: Thu Jul 23 14:32:48 2009 +0200 22919 22920 Fix indentation from tabs to two spaces to prepare merging with MultipleMolecules 22921 22922 commit 4379223d1ae805fff33d7d6aba7ff8281b0c4c45 22923 Author: Frederik Heber <heber@bespin.wiss-staff> 22924 Date: Thu Jul 23 14:14:13 2009 +0200 22925 22926 Fix indentation from tab to two spaces. 22927 22928 The trouble was caused at the merge e08f45e4539ffcc30e039dec5606cf06b45ab6be. Seemingly, I thought eclipse had pulled some shit which i didn't 22929 22930 commit 986c809f30e6539ae660442a47de63b08aa35574 22931 Merge: 71e7c7b edcda57 22932 Author: Frederik Heber <heber@bespin.wiss-staff> 22933 Date: Thu Jul 23 13:46:57 2009 +0200 22934 22935 Merge branch 'ConstrainedMolecularDynamics' 22936 22937 Conflicts: 22938 22939 molecuilder/src/molecules.cpp 22940 22941 - conflict was just regarding empty lines with some superfluous spaces 22942 22943 commit 71e7c7b252e9a46447afd01de2aacaa1ea9c9f23 22944 Merge: 631dcbf cc36a5e 22945 Author: Frederik Heber <heber@bespin.wiss-staff> 22946 Date: Thu Jul 23 13:31:00 2009 +0200 22947 22948 Merge branch 'test' 22949 22950 Conflicts: 22951 22952 molecuilder/src/analyzer.cpp 22953 molecuilder/src/datacreator.cpp 22954 molecuilder/src/joiner.cpp 22955 22956 all Chi.. matrices were EnergyMatrix instead of ForceMatrix, despite in all branches (test, master, Thermostat) always some ParseIndices was called for them, which is only implemented in the ForceMatrix. I change hence to ForceMatrix and removed the comments from ParseIndices(). But this is untested. 22957 22958 commit 631dcbf45017adab57e255fe98ef0e91396de52a 22959 Merge: b38b64d fcbfc8b 22960 Author: Frederik Heber <heber@bespin.wiss-staff> 22961 Date: Thu Jul 23 13:23:59 2009 +0200 22962 22963 Merge branch 'Thermostat' 22964 22965 Conflicts: 22966 22967 .gitignore 22968 Makefile.am 22969 molecuilder/src/analyzer.cpp 22970 molecuilder/src/builder.cpp 22971 molecuilder/src/config.cpp 22972 molecuilder/src/moleculelist.cpp 22973 molecuilder/src/molecules.cpp 22974 molecuilder/src/molecules.hpp 22975 22976 - config::SaveMPQC() has different call parameters 22977 - analyzer and joiner had conflicts due to Chi and ChiPAS values 22978 - molecule::VerletForceIntegration() is slightly different too, but Thermostat supposedly is old version 22979 22980 commit b38b64d7de64c60cbfaf51c1af8e8efd446a3fc4 22981 Merge: b774160 72744aa 22982 Author: Frederik Heber <heber@bespin.wiss-staff> 22983 Date: Thu Jul 23 11:14:18 2009 +0200 22984 22985 Merge branch 'HessianMatrix' 22986 22987 commit b77416068cae737296792e6c91b7a28206524cad 22988 Merge: 2746be9 5621c30 22989 Author: Frederik Heber <heber@bespin.wiss-staff> 22990 Date: Thu Jul 23 11:11:01 2009 +0200 22991 22992 Merge branch 'GraphRefactoring' 22993 22994 commit 205ccdc2e7f8e8fa2e39e323dc48d53c37819486 22995 Author: Frederik Heber <heber@bespin.wiss-staff> 22996 Date: Fri Jul 10 23:19:23 2009 +0200 22997 22998 BUGFIX: Due to stupid mistake, first atom was overlooked in periodic translation 22999 23000 - molecule::TranslatePeriodically() is fixed (while is ptr != end) and next pointer moved to its end 23001 23002 commit d1df9b520a18b7600eb18c25dc98b318ecd308be 23003 Author: Frederik Heber <heber@bespin.wiss-staff> 23004 Date: Fri Jul 10 22:21:12 2009 +0200 23005 23006 new class ConfigFileBuffer and new overloaded function ParseForParaneter() based on this buffer 23007 23008 - the problem is that we need to use molecuilder for the periodic translating of atoms in a xzy file. However, molecuilder resorts them per element. This destroty the id mapping needed for the DBOND file. The storing was corrected, but also the loading relies on this order. 23009 - To solve this, we have to pull off quite something: Parse file into buffer, resort the Ion_Type ones (via a map only), load atoms and then put them into the molecule in the original order! 23010 - Hence, in config::Load we also have a LinearList (map<int, atom*>) in order to add the atoms after the scanning in their original order into the molecule. 23011 - class ConfigFileBuffer parses a config file line-wise into a buffer and allows for resorting (via a map) of lines containing key_word Ion_Type. 23012 - BUGFIX: molecule::Output...() were writing the wrong elements, as they were numbered during the output and not before in ascending order! (I.e. if the first atom is Si, but there is also H present, then this Si would become Ion_Type1_1 instead of Ion_Type2_1, because the elements are still sorted by their Z value, hence Ion_Type1 is H!) 23013 23014 This is basically tested and seems to work properly 23015 23016 commit 6cb412a55f11f6c6a632854832fd61aa21fb5d9e 23017 Author: Frederik Heber <heber@bespin.wiss-staff> 23018 Date: Fri Jul 10 22:20:09 2009 +0200 23019 23020 BUGFIX: molecule::Output...() routines wrote elements beginning with 0 instead of 1 23021 23022 commit 5466f3c25c7264956c286b80f3090bf2e9b5b3d9 23023 Author: Frederik Heber <heber@bespin.wiss-staff> 23024 Date: Fri Jul 10 16:29:56 2009 +0200 23025 23026 XYZ and config files now store the atoms in the same order as they are loaded. 23027 23028 changed functions: molecule::OutputXYZ, molecule::OutputTrajectoriesXYZ, molecule::OutputTrajectories, molecule::Output 23029 23030 commit 21c0171a2ffa8aa89b2345abf037899c7dbedf2b 23031 Author: Frederik Heber <heber@bespin.wiss-staff> 23032 Date: Fri Jul 10 14:48:05 2009 +0200 23033 23034 molecule::CenterInBox puts atoms now periodically into the given box, new function molecule::TranslatePeriodically, BUGFIX: molecule::ReturnFullMatrixforSymmetrical() 23035 23036 - molecule::CenterInBox() has no more a vector as a parameter, but instead enforces the periodicity of the simulation box, i.e. all atoms out of bounds are put back in with wrap-around at boundaries. Call of function was changed in everywhere. 23037 - in ParseCommandLineParameters() a SetBoxDimension was missing in certain Center...() commands. 23038 - new function molecule::TranslatePeriodically translates all atoms of a molecule while adhering to the periodicity of the domain 23039 - new function vector::InverseMatrix() returns the hard-encoded inverse of 3x3 real matrix 23040 - BUGFIX: molecule::ReturnFullMatrixforSymmetrical()'s assignment from 6-doubles to 9-doubles was all wrong (symmetric to full 3x3 matrix) 23041 23042 commit a37350a0f046102b06e1012072c9ab13e577825e 23043 Author: Frederik Heber <heber@bespin.wiss-staff> 23044 Date: Thu Jul 9 15:33:39 2009 +0200 23045 23046 FIX: Now tries each of the axis direction to find a starting triangle 23047 23048 - if BTS was not set, as no third point was found, output of NormalVector caused error. This is fixed. 23049 - also, we move in a loop over all three axis direction and try to create a starting triangle. 23050 - Therefore, the candidates in the list have to be free'd. This is done. 23051 23052 commit 8cede77e6f14d315bdfa9e2e47998e048f3ef55d 23053 Author: Frederik Heber <heber@bespin.wiss-staff> 23054 Date: Thu Jul 9 14:02:46 2009 +0200 23055 23056 Lots of changes to the number of output messages. 23057 23058 As the finding of the non-convex boundary is done, we have cut down a lot on the output created by the procedure. Most of the INFO messages are commented out and all of the REJECTs and Current Candidates and so on as well. There still remains all that is necessary, triangles found, the sequence of accepted candidates, the number of baselines not connected to two triangles ... 23059 23060 commit b65901918c60ce43a59e69765a1da56c67436693 23061 Author: Frederik Heber <heber@bespin.wiss-staff> 23062 Date: Thu Jul 9 13:40:14 2009 +0200 23063 23064 Fixed all of the remaining memory leaks due to CandidatesForTesselation list. 23065 23066 - Opt_Candidates list in Find_next_suitable_triangle() and Find_starting_triangle() was not deleted 23067 - Also, all contained CandidatesForTesselation were not deleted 23068 - the candidates list was cleared in Find_third_point_for_Tesselation() but the contained CandidatesForTesselation were not deleted 23069 23070 commit e72001c60c0aa5692845aefdcd2d22a3c7e152c4 23071 Author: Frederik Heber <heber@bespin.wiss-staff> 23072 Date: Thu Jul 9 13:38:33 2009 +0200 23073 23074 Memory leak fix: ParseCommandLineOptions() and main() free'd mol twice or not at all 23075 23076 - ParseCommandLineOptions() free'd mol and periode on ExitFlag, however main() does this too 23077 - main() exited after ParseCommandLineOptions() returnted with 0 or 1, free'ing nothing. 23078 - Hence, ParseCommandLineOptions() does not delete, this is all done in main() 23079 - the return value of ParseCommandLineOptions is now checked in a switch statement with free's and return 23080 23081 commit 989bf66a2aab6e121d0d2978cfd34b79079c47b4 23082 Author: Frederik Heber <heber@bespin.wiss-staff> 23083 Date: Thu Jul 9 12:59:00 2009 +0200 23084 23085 Changed the unsatisfactory PathToDatabases construct, removing warning deprecated conversion from string constant to char * 23086 23087 - new variable config::databasepath (initialized in config constructor, released in destructor) 23088 - Store.../LoadPeriodentafel() now have to receive const char * 23089 - PathToDatabases is removed, instead LocalPath is copied into config::databasepath 23090 23091 commit 1c6081a2e5edeea12712e25bd11eaf9624a4241e 23092 Author: Frederik Heber <heber@bespin.wiss-staff> 23093 Date: Thu Jul 9 12:38:53 2009 +0200 23094 23095 fixed compiler warning: deprecated conversion from string const to char * by changed char* to const char* 23096 23097 - "hello" represents a const char *. Hence, if we point a char* at it, it may subsequently be altered, which is not allowed due to its const nature. Hence, the warning. However, we do not change the strings anyway, hence changing to const char *. 23098 23099 commit 70c333f9ab1c2e3d9503da478fc85da9ef13d97b 23100 Author: Frederik Heber <heber@bespin.wiss-staff> 23101 Date: Thu Jul 9 12:36:26 2009 +0200 23102 23103 fixed compiler warning by changing int to size_t because C++ STL set.size() returns size_t. 23104 23105 - changed in PickRandomPointSet...() (PointsPicked, PointsLeft, ...) 23106 - in boundary.cpp some unnecessary variables were removed also 23107 23108 commit 4777e96cf6171cee29419dee0203241623e06954 23109 Author: Frederik Heber <heber@bespin.wiss-staff> 23110 Date: Thu Jul 9 12:31:05 2009 +0200 23111 23112 Removed unneeded variables 23113 23114 commit 542ab38ee2a53fdfa6396058ef261b31db81ad26 23115 Author: Frederik Heber <heber@bespin.wiss-staff> 23116 Date: Thu Jul 9 12:22:05 2009 +0200 23117 23118 Removed unnecessary code 23119 23120 - Choose_preferable_third_point() 23121 - already commented out Find_next_suitable_point() 23122 - Tesselation::Find_next_suitable_point_via_Angle_of_Sphere() 23123 23124 commit 86234be7f2f4f7062c6ddf83c803a72d008d6945 23125 Author: Frederik Heber <heber@bespin.wiss-staff> 23126 Date: Thu Jul 9 11:45:00 2009 +0200 23127 23128 BUGFIX: Memory leak due to special triangles and similar lines in BoundaryPointSet::lines multimap, corrected some output messages, AddTriangleToLines()->AddTriangle() 23129 23130 - BUGFIX: destructor of BoundaryLineSet erases in the BoundaryPointSet::lines _all_ lines with key endpoints[i]->Nr instead of just the one line we are just removing (note: due to degenerated triangles, there may be more than one line with the same endpoints, the key in LineMap however is just the endpoint number). Now, we do equal_range and check whether the line === this. 23131 - BoundaryPointSet::AddLine() has more sensible message, stating that line is added to a point not other wat round 23132 - some identation and automated line wraps fixed 23133 - AddTriangleToLines() renamed to AddTriangle(), as the triangle to line adding is done in the triangles constructor. Here, we just add the triangle to tesselation class' global list 23134 23135 commit 018741f1886afdc512cdde2e7bb4e7e5d4f1e041 23136 Author: Frederik Heber <heber@bespin.wiss-staff> 23137 Date: Tue Jul 7 16:46:22 2009 +0200 23138 23139 FIX: CheckLineCriteriaforDegeneratedTriangle contains criteria when we may add a special (degenerated) triangle 23140 23141 - new function CheckLineCriteriaforDegeneratedTriangle() that checks whether the special triangle closed at least two present edges and does not create two new edges for one being closed (which is the baseline), i.e. the total number of problems should remain the same or become smaller by degenerated triangles, never bigger 23142 - find_next_suitable_triangle() checks the above criteria when (existentTriangle == 1) and if false, does not add a triangle at all 23143 - some identing fixes 23144 23145 commit f0ebacc6c34010940a9567bc730b83dea125e6cd 23146 Author: Frederik Heber <heber@bespin.wiss-staff> 23147 Date: Tue Jul 7 11:12:54 2009 +0200 23148 23149 BUGFIX: Initial edge for starting triangle may be up to TWICE the sphere's radius 23150 23151 Find_second_point_for_tesselation() - now checks norm of vector against 2.*RADIUS 23152 23153 commit ce4d22efd2d08dc09d1edd1aca8cbb60d85f725d 23154 Author: Frederik Heber <heber@bespin.wiss-staff> 23155 Date: Tue Jul 7 10:17:53 2009 +0200 23156 23157 BUGFIX: LinkedCell list had to created with 2.*RADIUS of sphere 23158 23159 Some points were missed during the checking for the third point in tesselation due to the linked cell edge length being too small. We have to check TWICE the radius (i.e. the diameter) of the rolling sphere. NOTE: This was even suggested by a comment in that very line ... argh 23160 23161 commit 02da9ef6bb440a647ec6bc6d878dc03b9bc6fc38 23162 Author: Frederik Heber <heber@bespin.wiss-staff> 23163 Date: Tue Jul 7 10:12:28 2009 +0200 23164 23165 BUGFIX: Numerical imprecision forced check of bounds for acos() 23166 23167 Scalarproduct(a)/Norm()/a.Norm() may result in values larger than 1 and smaller than -1 due to numerical rounding errors. -1-MYEPSILON causes NaN to be returned by acos, hence we check whether the value is smaller than -1 or greater than 1 and set to the limit if out of bounds. 23168 23169 This causes a wrong triangle to be taken due to the wrong SphereCenter being copied (comparing MYEPSILON to NAN) 23170 23171 commit 260b2f24cb97da2d5497d1081b9cc5e5ef24df8f 23172 Author: Frederik Heber <heber@bespin.wiss-staff> 23173 Date: Tue Jul 7 10:11:47 2009 +0200 23174 23175 Cosmetical changes in Find_third_point_for_tesselation() and FinDistributionOfEllipsoids commented out in builder. 23176 23177 commit 3d919eedeaf6ca7f077bff3c3e38dad3bba53b8a 23178 Author: Frederik Heber <heber@bespin.wiss-staff> 23179 Date: Tue Jul 7 08:49:32 2009 +0200 23180 23181 All of Saskia Metzler's changes so far to remove bugs from Tesselation (still not working) 23182 23183 Principle ideas: 23184 - allow maximum of two triangles per triple of atomic indices to also tesselate "flat" areas 23185 - detect degeneracies by having a list of candidates and adding multiple triangles (one for each) by an angle criteria 23186 23187 New functions: 23188 - existsIntersection(): Checks per distance minimiser whether two lines intersect (for intersecting triangles) 23189 - MinIntersectDistance(): Calculates the minimal distance between two lines (function to minimize) 23190 - sortCandidates(): Sorting function for the third point candidates 23191 - CheckPresenceOfTriangle(): For a triple of atomic indices, checks whether a triangle between them already exists (needed for allowing max of two triangles per triple) 23192 23193 commit a5b2c3a1b29eef3d3e6b57dfbcea27b22ec153cc 23194 Author: Frederik Heber <heber@bespin.wiss-staff> 23195 Date: Fri Jul 3 16:25:17 2009 +0200 23196 23197 Removing of atoms via command line possible 23198 23199 -R switchs allows for the removal of single atoms 23200 -Left and Right Boundary are now called Upper and Lower Boundary which makes more sense 23201 23202 commit c54da320524ce1dd5ac8a13de898eab17c38e6ee 23203 Author: Frederik Heber <heber@bespin.wiss-staff> 23204 Date: Wed Jun 3 18:05:22 2009 +0200 23205 23206 BUGFIX: RemoveAtom() would remove the iterator, molecule::RemoveAtom() did not decrease AtomCount 23207 23208 - used two pointer construction, so that the next pointer is already secured before removing the current from the list. 23209 - RemoveAtom() decreases AtomCount if Elements-array-check is ok 23210 23211 commit 178f929674b15573151e8338cb756aaf0ecfd47c 23212 Author: Frederik Heber <heber@ins.uni-bonn.de> 23213 Date: Sat Apr 11 01:28:39 2009 +0200 23214 23215 return type of MoleculeListClass::insert is now void instead of bool (insertion into list always works) 23216 23217 commit 09af1ba17d496cca5e8ee8701a907e869f208b3c 23218 Author: Frederik Heber <heber@ins.uni-bonn.de> 23219 Date: Sat Apr 11 01:28:02 2009 +0200 23220 23221 removed lots of warnings due to unused variables 23222 23223 This arose due to the code-writes for multiple molecules. 23224 23225 commit 63f06e549b4f5a9f18fc5ce0a5d858955003e9c4 23226 Author: Frederik Heber <heber@ins.uni-bonn.de> 23227 Date: Wed Apr 8 13:35:42 2009 +0200 23228 23229 fixes due to changes in molecule structure (Center...()) and merge submenu is done. 23230 23231 - CenterAtoms(): CenterOrigin() and CenterGravity/Periodic() now don't need vector as parameter anymore 23232 - ManipulateAtoms() & ManipulateMolecules(): check for number of ActiveFlag molecules was >0, should have been >1, also all ListRunner loops did non check whether the molecule to work on was actually set molecule::ActiveFlag true 23233 - EditMolecules(): title was non-caps, loading would use Center instead of center, loops asking for index of molecule would loop endlessly due to wrong break condition, remove did falsely use counter instead of molecule::IndexNr 23234 - MergeMolecules(): simple add, simple merge and multi-merge are implemented 23235 - SaveConfig(): Translation to true center before save was missing (and back-translation) and filename instead of ConfigFileName is used 23236 - ParseCommandLineOptions(): new molecule is not set to Active, fix due to ConfigFileName pointing nowhere when none given on command line (argv[1] NULL) 23237 - main(): ConfigFileName is now a char buffer not char pointer due to trouble with NULL filename, setting of actiive flag corrected (counter instead of IndexNr bug) 23238 23239 commit d671506779336470085bef0cdbe37dd74c5aaecd 23240 Author: Frederik Heber <heber@ins.uni-bonn.de> 23241 Date: Wed Apr 8 13:27:50 2009 +0200 23242 23243 Lots of bugfixes, some name changes and new functions 23244 23245 BUGFIX: 23246 - molecule::molecule did not initialise IndexNr and ActiveFlag 23247 - molecule::SetNameFromFilename() was missing terminal \0 at end of constructed name 23248 - molecule::CenterInBox() translates and zeros Center 23249 - molecule::CenterEdge() also zeros Center 23250 - molecule::CenterOrigin(): dropped parameter *center as molecule::Center is now used, translated and center then set to zero 23251 23252 Changes: 23253 - molecule::CenterGravity() now is called CenterPeriodic() and just calls DeterminePeriodicCenter with molecule::Center as parameter 23254 - molecule::DetermineCenter() variable is now called center to stop confusion with molecule::Center 23255 - molecule::PrincipalAxisSystem() uses CenterAtVector with DetermineCenterOfGravity() 23256 - molecule::IsEqualToWithinThreshold() now uses molecule::DeterminePeriodicCenter() due to name change 23257 - molecule:SetNameFromFilename() now expects constant *filename 23258 23259 New: 23260 - molecule:CenterAtVector() adds given vector to molecule::Center 23261 23262 commit 3af1f0f25fa7a1adc1d089360422fda03a33eb7a 23263 Author: Frederik Heber <heber@ins.uni-bonn.de> 23264 Date: Wed Apr 8 13:25:03 2009 +0200 23265 23266 MoleculeListClass::Enumerate() lists center and size of molecule, fix of MoleculeListClass::ReturnIndex() 23267 23268 - MoleculeListClass::Enumerate(): Vector Center and size (greatest distance from center) is also given 23269 - MoleculeListClass::ReturnIndex(): BUGFIX - counter instead of molecule::IndexNr was still used 23270 23271 commit ca2587035117b37eb5f0dcff6065cf52caccc448 23272 Author: Frederik Heber <heber@ins.uni-bonn.de> 23273 Date: Thu Apr 2 18:42:53 2009 +0200 23274 23275 Framework for embedding one molecule into another, now the embedding center finding is "only" missing 23276 23277 commit ca3ccc44e15b3184201911d3686bddb8b917fc10 23278 Author: Frederik Heber <heber@ins.uni-bonn.de> 23279 Date: Thu Apr 2 18:42:36 2009 +0200 23280 23281 simple switched order for edit molecule to be in alphabetical ordering 23282 23283 commit 1907a789609146bbdebfeff09de44cb4ba21b808 23284 Author: Frederik Heber <heber@ins.uni-bonn.de> 23285 Date: Thu Apr 2 18:12:54 2009 +0200 23286 23287 Basic implementation of Multiple molecules. 23288 23289 builder.cpp: 23290 - MoleculeListClass *molecules instead of molecule *mol 23291 - in menu replaced list of elements and atoms by list of molecules 23292 - new option: SetActiveMolecule 23293 - new submenus/functions that all work on MoleculeListClass: 23294 * EditMolecule() 23295 * ManipulateMolecules() (global operations on all atoms in a molecule) 23296 * MergeMolecules() 23297 * ManipulateAtoms() (local operations on single atoms) 23298 - SaveConfig(): SimpleMultiAdd() of all molecules into a single new one that is stored with the present configuration. 23299 23300 molecules.hpp: 23301 - new STL list MoleculeList 23302 - new variables in MoleculeListClass: list of molecules as STL list 23303 - new variables in molecule: ActiveFlag, name of molecule, Center of molecule (used on merging) 23304 23305 moleculelist.cpp: 23306 - replaced listofmolecules array by STL list everywhere (only smaller changes necessary) 23307 - new merging function: SimpleMerge, SimpleAdd, SimpleMultiMerge, SimpleMultiAdd, (EmbedMerge, ScatterMerge ... both not finished). Add does not while merge does delete the src molecules. 23308 - new function: Enumerate(). Output of all molecules with number of atoms and chemical formula 23309 - new function: NumberOfActiveMolecules(). Counts the number of molecules in the list with ActiveFlag set. 23310 - new function: insert(). Inserts a molecule into the list with a unique index 23311 23312 molecules.cpp: 23313 - new function: SetNameFromFilename. Takes basename of a filename and sets name accordingly. 23314 - new function: UnlinkAtom. Only removes atom from list, does not delete it from memory. 23315 23316 atom.cpp: 23317 - Output() also accepts specific comment instead of "# molecule nr ..." 23318 23319 commit d8b94a86944c4679c88bc250bff510f242d63309 23320 Author: Frederik Heber <heber@ins.uni-bonn.de> 23321 Date: Tue Feb 10 13:04:37 2009 +0100 23322 23323 Gaussian basis for MPQC input files can now be specified with -B switch 23324 23325 builder.cpp: -B in ParseCommandLineOptions 23326 molecules.hpp: configuration::basis added 23327 config.cpp: SaveMPQC() takes configuration::basis as name 23328 23329 commit 2746be91f71f00d142e33c5f26e2666094ed13f2 23330 Author: Frederik Heber <heber@ins.uni-bonn.de> 23331 Date: Mon Feb 9 23:17:38 2009 +0000 23332 23333 Basis for MPQC can now be specified via command line switch 23334 23335 * -B is ParseCommandLineOptions added 23336 * configuration::basis added, set to 3-21G in constructor 23337 * used in configuration::SaveMPQC() 23338 23339 commit 5bc4d02ef0f3a43607aa4ea1320b526552add482 23340 Author: Frederik Heber <heber@ins.uni-bonn.de> 23341 Date: Mon Feb 9 23:16:19 2009 +0000 23342 23343 Chi integration had some copy&paste error 23344 23345 commit 6ac7eeecbbe9724fc31880df564e84ba30311c54 23346 Author: Frederik Heber <heber@ins.uni-bonn.de> 23347 Date: Mon Feb 9 15:55:37 2009 +0000 23348 23349 Merge branch 'ConcaveHull' of ../espack2 into ConcaveHull 23350 23351 Conflicts: 23352 23353 molecuilder/src/boundary.cpp 23354 molecuilder/src/boundary.hpp 23355 molecuilder/src/builder.cpp 23356 molecuilder/src/linkedcell.cpp 23357 molecuilder/src/linkedcell.hpp 23358 molecuilder/src/vector.cpp 23359 molecuilder/src/vector.hpp 23360 util/src/NanoCreator.c 23361 23362 Basically, this resulted from a lot of conversions two from spaces to one tab, which is my standard indentation. The mess was caused by eclipse auto-indenting. And in espack2:ConcaveHull was the new stuff, so all from ConcaveHull was replaced in case of doubt. 23363 Additionally, vector had ofstream << operator instead ostream << ... 23364 23365 commit a98603750c1b5ea8639c4f89919340c98b730445 23366 Merge: 6742207 cc2ee58 23367 Author: Frederik Heber <heber@ins.uni-bonn.de> 23368 Date: Mon Feb 9 14:18:13 2009 +0000 23369 23370 Merge ../espack3 23371 23372 commit 124df14536b3633bd16d55d7442e9d0695c204a3 23373 Author: Frederik Heber <heber@ins.uni-bonn.de> 23374 Date: Fri Feb 6 09:48:09 2009 +0000 23375 23376 Find_non_convex_border(): calls CreateAdjacencyList() to fill bond list 23377 23378 commit e1bc6830af4c7501528091f383832e414f3c59e4 23379 Author: Frederik Heber <heber@ins.uni-bonn.de> 23380 Date: Fri Feb 6 09:44:15 2009 +0000 23381 23382 New file and class LinkedCell that contains the linked cell algorithms 23383 23384 Linked Cell class with 23385 * max,min vectors, list of cells, number of cells per axis 23386 * n is temporary indices to access a specific cell 23387 * functions to get pointer to cell specified by vector or by atom and checking bounds 23388 23389 commit cc2ee58b3a94582183e54721ea65863f8c843fd7 23390 Author: Frederik Heber <heber@ins.uni-bonn.de> 23391 Date: Mon Dec 29 21:26:43 2008 +0000 23392 23393 Just a temporary commit 23394 23395 commit 6d4a76f17e90d47b8304ea3d09b5f35183b9d3d2 23396 Merge: 12298c6 23e09be 23397 Author: Frederik Heber <heber@ins.uni-bonn.de> 23398 Date: Mon Dec 29 13:29:21 2008 +0100 23399 23400 Merge branch 'ConcaveHull' of ssh://stud64dc-01/home/neuen/workspace/ESPACK into ConcaveHull 23401 23402 Conflicts: 23403 23404 molecuilder/src/boundary.cpp 23405 23406 Fixed the incorporation of write_raster3d_file() ... 23407 23408 commit 12298c6c425bd81e8eb06db20b3aca630c98b764 23409 Author: Frederik Heber <heber@ins.uni-bonn.de> 23410 Date: Mon Dec 29 13:25:04 2008 +0100 23411 23412 Now we also produce Raster3D output files additionally to TecPlot ones ... 23413 23414 commit 23e09be2d40210f0374711bf133d62f2e96f064f 23415 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23416 Date: Tue Dec 23 14:28:05 2008 +0100 23417 23418 fancy commit 23419 23420 commit 02bfdee48bf20f43a0f4e7f6b4c779daa4163c92 23421 Merge: 44fd957 196a5ac 23422 Author: Frederik Heber <heber@ins.uni-bonn.de> 23423 Date: Tue Dec 23 14:06:36 2008 +0100 23424 23425 Merge branch 'ConcaveHull' of ssh://stud64dc-01/home/neuen/workspace/ESPACK into ConcaveHull 23426 23427 Conflicts: 23428 23429 molecuilder/src/boundary.cpp 23430 23431 + Merge is solved (was Christian's fault :) 23432 + find_non_convex_hull is checked and working on Heptan boundary 23433 23434 commit 44fd957c290401f17701bb788d3d339733fe6b38 23435 Author: Frederik Heber <heber@ins.uni-bonn.de> 23436 Date: Tue Dec 23 12:22:57 2008 +0100 23437 23438 Cleaned up all debugging output 23439 23440 commit 196a5ac4e0597225fe1d79967a945d42ddfed2e6 23441 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23442 Date: Tue Dec 23 12:21:29 2008 +0100 23443 23444 BallAngel enhanced, added new alternative direction for issues with right angles 23445 23446 commit 7c6712a25ea23cdfa7e88b8f2293af4c65278eec 23447 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23448 Date: Fri Dec 19 17:21:11 2008 +0100 23449 23450 Switched choice process to Ball angle completely. 23451 Problem remains. 23452 Same position? 23453 23454 commit e9fa06f36adaf7b5bf0b33b34e7ea747201e8bff 23455 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23456 Date: Thu Dec 18 18:21:34 2008 +0100 23457 23458 First change to Ball angle as criteria, however, change sucks. 23459 23460 commit 10af0deb228f5e5b25d4fd0c600059654562e5c7 23461 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23462 Date: Wed Dec 17 16:56:07 2008 +0100 23463 23464 Solved possible problem with Second quadrant overhaul 23465 23466 commit e4ea462e4975fcf1debaf5bbf7e4ced6f9d55b4d 23467 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23468 Date: Tue Dec 16 19:39:28 2008 +0100 23469 23470 Tesselation starts to look good, minor discrepancies are still there and a segmentation fault. 23471 23472 commit caf5d608169807a028a2cd63e1c2eb8962eaa347 23473 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23474 Date: Thu Dec 11 16:23:01 2008 +0100 23475 23476 Atom indices are now correctly processed. 23477 23478 commit f71497989750680f5dd0615f305121f4c4601d64 23479 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23480 Date: Mon Dec 8 15:16:34 2008 +0100 23481 23482 Another update w.r.t. the Tesselation. 23483 Some signs switched, but atom indices might be misused. 23484 23485 commit a8bcea6105d46c2f1e551ab69003f9d1cc03e44f 23486 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23487 Date: Thu Dec 4 16:15:00 2008 +0100 23488 23489 several changes, now output is created, quality unknown 23490 23491 commit f683feb0f2b4232b7bc42f3893078413c798f659 23492 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23493 Date: Wed Dec 3 15:18:10 2008 +0100 23494 23495 Parses a pdb and xyz file and decideds which atoms are in both and which have been ommitted. It remaps the indices of the atoms, so that the indices are without gap and applies this remapping to a dbond file, renaming the bonds and removing the bonds which do not appear any more. 23496 23497 commit 69eb71ca95b6ddd8113c4c58130d3a649792ac26 23498 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23499 Date: Wed Dec 3 15:12:05 2008 +0100 23500 23501 Multiple changes to boundary, currently not fully operational. 23502 Molecules has a new routine to create adjacency lists, reading bonds from a dbond file instead of looking for the distances by itself. 23503 Vector function Project onto plane has been updated. 23504 23505 commit 1ffa216657b5beb85210757a5d292a8b64bd5b79 23506 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23507 Date: Thu Nov 27 10:59:27 2008 +0100 23508 23509 The border.cpp contains the same functions as the changes in boundary, in case it is desired to have the convex and non convex routine seperated at a later time. 23510 23511 commit 03648b9b7a0304a1d85f5faf7250acf9fcbbbe04 23512 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23513 Date: Thu Nov 27 10:55:08 2008 +0100 23514 23515 In vector a function for calculation of the vector-(cross-)product has been added. 23516 In Boundary a new way for finding the non-convex boundary is implemented. 23517 Currently problem with comparison of the return value of the map::find routine. 23518 23519 commit 51695cfc06f5f047e51d2313f7093855e00ab2cd 23520 Author: Christian Neuen <neuen@stud64dc-06.wiss-stud> 23521 Date: Tue Nov 25 16:05:07 2008 +0100 23522 23523 Construction of border triangles of non convex point set 23524 23525 commit 72744aa9455778453eaeac1db101b313b5406e2a 23526 Author: Frederik Heber <heber@ins.uni-bonn.de> 23527 Date: Wed Oct 29 21:01:04 2008 -0400 23528 23529 Analyzer now produces data file with Frobenius norm of hessian matrix. 23530 23531 commit 376f976dda971f927ed160c923994210d8d4df4e 23532 Author: Frederik Heber <heber@ins.uni-bonn.de> 23533 Date: Wed Oct 29 20:56:02 2008 -0400 23534 23535 Added some commentary to HessianMatrix::SumSubHessians to ease debugging 23536 23537 commit 05d2b274f224b68850cb42c32e5c8dd92bb7e0e6 23538 Author: Frederik Heber <heber@ins.uni-bonn.de> 23539 Date: Wed Oct 29 10:54:54 2008 -0400 23540 23541 Implemented Frobenius norm calculation for class HessianMatrix 23542 23543 HessianMatrix::CreateDataDeltaFrobeniusOrderPerAtom() - New data creator that calculates the frobenius norm (with 1/N prefactor), to estimate the accuracy of the approximated HessianMatrix 23544 23545 commit b12a3574887c67ef085de6c3928441bc590032f2 23546 Author: Frederik Heber <heber@bespin.wiss-staff> 23547 Date: Sun Oct 19 15:57:23 2008 +0200 23548 23549 HessianMatrix implemented fully, but not yet working, probably due to wrong matrix generation in script file (convertHessian.py) 23550 23551 HessianMatrix::IsSymmetric was though to be needed, but is NOT. As we regard full matrices, we don't need to add onto mirrored indices as well 23552 Joiner and Analyzer have seen some small changes and bugfixes: NoHessian was not also always looked at when needed and so on 23553 23554 commit 6742207a959f7641d50782ed06b4b4b943cf307d 23555 Author: Frederik Heber <heber@ins.uni-bonn.de> 23556 Date: Wed Oct 29 20:55:19 2008 -0400 23557 23558 Implemented analysis of magnetic susceptibilites. 23559 23560 This is very similar to Sigma(PAS), however not with ForceMatrix class but with EnergyMatrix. This is still not finished and yet not working. However, it does not impact on other functions of joiner or analyzer. 23561 23562 commit 5621c3089e979328ea79df91460a2be02964b1f7 23563 Author: Frederik Heber <heber@ins.uni-bonn.de> 23564 Date: Wed Oct 29 20:59:40 2008 -0400 23565 23566 Begin of implementing classes Graph, SubGraph, Node and Edge. 23567 23568 So far only initial class definitions, functions are all as of yet missing. 23569 23570 commit cc36a5ec90e8d8af8be4e456d8d7c84711dea74d 23571 Author: Frederik Heber <heber@ins.uni-bonn.de> 23572 Date: Wed Oct 29 21:01:04 2008 -0400 23573 23574 Analyzer now produces data file with Frobenius norm of hessian matrix. 23575 23576 commit 2e6e7aefe411005fa1086c244c878459f4f21c8c 23577 Author: Frederik Heber <heber@ins.uni-bonn.de> 23578 Date: Wed Oct 29 20:59:40 2008 -0400 23579 23580 Begin of implementing classes Graph, SubGraph, Node and Edge. 23581 23582 So far only initial class definitions, functions are all as of yet missing. 23583 23584 commit a8f53c4a62332111708d480361fdc08e8cf6a08b 23585 Author: Frederik Heber <heber@ins.uni-bonn.de> 23586 Date: Wed Oct 29 20:56:02 2008 -0400 23587 23588 Added some commentary to HessianMatrix::SumSubHessians to ease debugging 23589 23590 commit 234af2e0631e6e266b8ee56b086bfbb87318d49c 23591 Author: Frederik Heber <heber@ins.uni-bonn.de> 23592 Date: Wed Oct 29 20:55:19 2008 -0400 23593 23594 Implemented analysis of magnetic susceptibilites. 23595 23596 This is very similar to Sigma(PAS), however not with ForceMatrix class but with EnergyMatrix. This is still not finished and yet not working. However, it does not impact on other functions of joiner or analyzer. 23597 23598 commit 84fc918b794641fe7de6f2483ddf1b33396f47cb 23599 Author: Frederik Heber <heber@ins.uni-bonn.de> 23600 Date: Wed Oct 29 10:54:54 2008 -0400 23601 23602 Implemented Frobenius norm calculation for class HessianMatrix 23603 23604 HessianMatrix::CreateDataDeltaFrobeniusOrderPerAtom() - New data creator that calculates the frobenius norm (with 1/N prefactor), to estimate the accuracy of the approximated HessianMatrix 23605 23606 commit eeec8fb96069e10986806be23efb05adf344d003 23607 Author: Frederik Heber <heber@bespin.wiss-staff> 23608 Date: Sun Oct 19 15:57:23 2008 +0200 23609 23610 HessianMatrix implemented fully, but not yet working, probably due to wrong matrix generation in script file (convertHessian.py) 23611 23612 HessianMatrix::IsSymmetric was though to be needed, but is NOT. As we regard full matrices, we don't need to add onto mirrored indices as well 23613 Joiner and Analyzer have seen some small changes and bugfixes: NoHessian was not also always looked at when needed and so on 23614 23615 commit f731aed8e27c7b0f1fcfad0872e0742f3403b3b8 23616 Author: Frederik Heber <heber@bespin.wiss-staff> 23617 Date: Sat Oct 18 17:05:54 2008 +0200 23618 23619 ColumnCounter -> *ColumnCounter 23620 23621 columns of the MatrixContainer class may now be variable over each matrix. This was changed globally to allow for varying column numbers of the new class HessianMatrix. 23622 23623 commit 85d278634d82c0d87206785b8cb85c4c6f794e06 23624 Author: Frederik Heber <heber@bespin.wiss-staff> 23625 Date: Sat Oct 18 16:06:51 2008 +0200 23626 23627 Introduced new class HessianMatrix derived from MatrixContainer, which shall contain the hessians calculated by mpqc. 23628 23629 commit 450d63e3aecf24a3631d6e9db7a79102c715e4e8 23630 Author: Frederik Heber <heber@bespin.wiss-staff> 23631 Date: Sat Oct 18 16:03:57 2008 +0200 23632 23633 VolumeOfConvexEnvelope() has new parameter with tecplot ofstream and the file is stored there and not in Tesselation::Tesselation(). 23634 23635 + BUGFIX: As we shift the molecule to the center of gravity for the "projection onto axis planes" method to work, we forgot about shifting it back before storing nodes and triangles in the tecplot file. Now, we store the data to file in VolumeOfConvexEnvelope(), where the molecule has been shifted back already. 23636 + VolumeOfConvexEnvelope() now gets an additional parameter with the tecplot ofstream, so that the name of the tecplot file may be chosen on the command line (with checks whether the argument was given or not) 23637 23638 commit 65de9b134a90f9d37ee598221141c6e8391b0087 23639 Author: Frederik Heber <heber@bespin.wiss-staff> 23640 Date: Fri Oct 17 15:24:10 2008 +0200 23641 23642 molecule::PickLocalBackEdges(): BUGFIX: if Walker as not in subgraph, next candidate wasn't popped from stack due to wrong brackets of if clause. 23643 23644 This caused to loop to run indefinitely (hence, the new output messages for the functions in molecule::FragmentMolecule(). It is fixed. 23645 23646 commit 4ee3df7d3ad5f7f9db4c737e70f26a1b547347c0 23647 Author: Frederik Heber <heber@bespin.wiss-staff> 23648 Date: Fri Oct 17 15:22:38 2008 +0200 23649 23650 Analyzer now writes usable plot and data files for shielding comparison (both relative (Delta...) and absolute). 23651 23652 We were able to use the ForceMatrix functions in a very straight-forward and simple manner (excellent programming if I may so :) 23653 23654 commit 9a5bcd1b9e1cb7f3d50def75223622b926786d75 23655 Author: Frederik Heber <heber@bespin.wiss-staff> 23656 Date: Fri Oct 17 15:20:42 2008 +0200 23657 23658 config::Save() and config::SaveMPQC() now take string for filename, instead of opened ofstream. 23659 23660 This was necessary, as config::SaveMPQC() now writes to files: One with hessian calc enabled, the other not. As it is a pendant of config::Save(), this file was changed accordingly. Both are called from builder.cpp (ParseFromParamters() and main()) and moleculelist.cpp (MoleculeListClass::OutputConfigForListOfFragments()), hence these were changed,too. 23661 23662 commit f006938f9e251ee5d77f964af5728fd0a645c59c 23663 Author: Frederik Heber <heber@bespin.wiss-staff> 23664 Date: Thu Oct 16 11:27:59 2008 +0200 23665 23666 New tests that check that if subsequent arguments to certain cmd options are missing, it is admonished. 23667 23668 commit a8b9d61068f3f5cf8e1a42240f2a3128874cc073 23669 Author: Frederik Heber <heber@bespin.wiss-staff> 23670 Date: Thu Oct 16 11:27:17 2008 +0200 23671 23672 ParseCommandLineOptions(): All cases now make thorough checks verifying the correct number of subsequent arguments. 23673 23674 commit 52f5d5d2312e073ff5dc9a8561eacdf21c0b84b9 23675 Author: Frederik Heber <heber@bespin.wiss-staff> 23676 Date: Thu Oct 16 11:26:48 2008 +0200 23677 23678 periodentafel::LoadPeriodentafel(): if other dbs fail, we just give a warning, not an error 23679 23680 commit e198c7eb5987f3ecfab54dfbc1690375e23f1bd3 23681 Author: Frederik Heber <heber@bespin.wiss-staff> 23682 Date: Thu Oct 16 11:25:56 2008 +0200 23683 23684 New function IsValidNumber(): checks whether a command line argument os truely a valid number 23685 23686 This is needed for the following commits where each command line arguments makes thorough checks to the number of its subsequent arguments. 23687 23688 commit 95634fe5ab2efbd4217ef8f96a50a6428f673e4c 23689 Author: Frederik Heber <heber@bespin.wiss-staff> 23690 Date: Wed Oct 15 20:20:51 2008 +0200 23691 23692 Analyzer now prints usable ShieldingsPAS data and plot files (so that comparison per order is possible). 23693 23694 commit 19f3d6b52d8fb15fc152deeadf2d12f72fbe27c4 23695 Author: Frederik Heber <heber@bespin.wiss-staff> 23696 Date: Wed Oct 15 20:20:40 2008 +0200 23697 23698 new function AppendOutputFile() for appending to output files whereas with OpenOutputFile the contents is deleted. 23699 23700 commit 57d8b005ecc147724ea9b83a7772e74c015cff14 23701 Author: Frederik Heber <heber@bespin.wiss-staff> 23702 Date: Wed Oct 15 19:16:43 2008 +0200 23703 23704 molecule::VerletForceIntegration() different code, same algorithm (still bug-hunting) 23705 23706 commit 2b4a4087bfef04889a36e1b91688f2a56bea8e3a 23707 Author: Frederik Heber <heber@bespin.wiss-staff> 23708 Date: Tue Oct 14 21:14:10 2008 +0200 23709 23710 new version of Tesselation::GuessStartingTriangle() seems to fix problems 23711 23712 + now, we find the starting triangle in the following manner (point = boundary point!): 23713 1. pick a point A 23714 2. for all unequal pairs B,C (not A), calculate AB^2+BC^2+AC^2 and sort into ascending list 23715 3. Go through list, picking thus baseline B,C along with peak A of a candidate triangle 23716 4. check whether all other boundary points lie only on one side 23717 5. check whether no boundary point is inside the triangle 23718 6. If all successful, starting triangle is found 23719 With this procedure, the convex hull of all SiOHCa3 clusters are found perfectly. 23720 23721 commit ca8073901157e1302ad5c69a06c379e27ec66590 23722 Author: Frederik Heber <heber@bespin.wiss-staff> 23723 Date: Tue Oct 14 15:26:02 2008 +0200 23724 23725 BUGFIX: Tesselation::AddPoint() always increased Tesselation::PointsOnBoundaryCount, even if point was present already 23726 23727 + we look at PointTestPair->second to determine whether point was present before or not, and only increase Tesselation::PointsOnBoundaryCount if true 23728 23729 commit ec7ba80eb21e003af9ec7acd755302049e63733c 23730 Author: Frederik Heber <heber@bespin.wiss-staff> 23731 Date: Sun Oct 12 17:58:48 2008 +0200 23732 23733 changed basis set for mpqc from STO-3G to 3-21G (more stable with Calcium) in config::SaveMPQC() 23734 23735 commit 9fc556ca6d0481c3e2398c3287b232e83726a913 23736 Author: Frederik Heber <heber@bespin.wiss-staff> 23737 Date: Sat Oct 11 18:07:45 2008 +0200 23738 23739 corrected number of valence orbitals for Calcium (2 -> 4) and inserted typical bond distance and angle (first taken from bpti, second guessed) 23740 23741 commit 74a65e7a553d4ba98e039de2f94a19ac6ed2499a 23742 Author: Frederik Heber <heber@bespin.wiss-staff> 23743 Date: Sat Oct 11 18:07:28 2008 +0200 23744 23745 molecule::AddHydrogenReplacementAtom() returns false on missing parameters, molecule::FragmentMolecule() less output 23746 23747 molecule::AddHydrogenReplacementAtom(): Gave only a warning when either typical hydrogen bond length or angle was missing, now the adding stops, error instead of warning message and false is returned instead. 23748 molecule::BreadthFirstSearchAdd() exits, when AddHydrogenReplacementAtom() returns false 23749 molecule::StoreFragmentFromKeySet() exits, when AddHydrogenReplacementAtom() returns false 23750 23751 commit edcda57bf8ce399e8a4ee61cc3d8dfe3762ec753 23752 Author: Frederik Heber <heber@bespin.wiss-staff> 23753 Date: Fri Oct 10 15:36:06 2008 +0200 23754 23755 BUGFIX: AssignKeySetsToFragment() had FragmentCounter-- at wrong place 23756 23757 + MoleculeLeafClass::AssignKeySetsToFragment(): FragmentCounter was decreased even when no keyset had been scanned, setting it to -1, bad for the subsequent free. It has to be decreased again right after the recursive call. Begin and end messages added. Free checks for FreeList=true and ListOfLocalAtoms != NULL (safety measure). 23758 + MoleculeLeafClass::FillBondStructureFromReference(): No BUG here (no keyset check to prevent increase for subsequent decrease), but same changes 23759 23760 commit 4158ba5fa97fe796922357bc902acc0a69d050d3 23761 Author: Frederik Heber <heber@bespin.wiss-staff> 23762 Date: Fri Oct 10 15:32:33 2008 +0200 23763 23764 BUGFIX: molecule::CreateAdjacencyList() used CandidateBondNo in output even if no candidate had been found 23765 23766 + If no Candidate has been found, output message would declare to be unable to correct bond degree for a unspecified bond (CandidateBondNo set to no sensible value) 23767 23768 commit 617b53ac1a332edd19665484e05e0e071fb68d49 23769 Author: Frederik Heber <heber@bespin.wiss-staff> 23770 Date: Fri Oct 10 15:36:06 2008 +0200 23771 23772 BUGFIX: AssignKeySetsToFragment() had FragmentCounter-- at wrong place 23773 23774 + MoleculeLeafClass::AssignKeySetsToFragment(): FragmentCounter was decreased even when no keyset had been scanned, setting it to -1, bad for the subsequent free. It has to be decreased again right after the recursive call. Begin and end messages added. Free checks for FreeList=true and ListOfLocalAtoms != NULL (safety measure). 23775 + MoleculeLeafClass::FillBondStructureFromReference(): No BUG here (no keyset check to prevent increase for subsequent decrease), but same changes 23776 23777 commit 1e82436670bbdab8a2f2c4c9e9b6b176e529aac8 23778 Author: Frederik Heber <heber@bespin.wiss-staff> 23779 Date: Fri Oct 10 15:32:33 2008 +0200 23780 23781 BUGFIX: molecule::CreateAdjacencyList() used CandidateBondNo in output even if no candidate had been found 23782 23783 + If no Candidate has been found, output message would declare to be unable to correct bond degree for a unspecified bond (CandidateBondNo set to no sensible value) 23784 23785 commit fcbfc8b407a7facce5cce4b025c250e1413426b7 23786 Author: Frederik Heber <heber@bespin.wiss-staff> 23787 Date: Fri Oct 10 15:36:06 2008 +0200 23788 23789 BUGFIX: AssignKeySetsToFragment() had FragmentCounter-- at wrong place 23790 23791 + MoleculeLeafClass::AssignKeySetsToFragment(): FragmentCounter was decreased even when no keyset had been scanned, setting it to -1, bad for the subsequent free. It has to be decreased again right after the recursive call. Begin and end messages added. Free checks for FreeList=true and ListOfLocalAtoms != NULL (safety measure). 23792 + MoleculeLeafClass::FillBondStructureFromReference(): No BUG here (no keyset check to prevent increase for subsequent decrease), but same changes 23793 23794 commit ad85c2203339834fa6ac518acaf5aaa2efb1b02d 23795 Author: Frederik Heber <heber@bespin.wiss-staff> 23796 Date: Fri Oct 10 15:32:33 2008 +0200 23797 23798 BUGFIX: molecule::CreateAdjacencyList() used CandidateBondNo in output even if no candidate had been found 23799 23800 + If no Candidate has been found, output message would declare to be unable to correct bond degree for a unspecified bond (CandidateBondNo set to no sensible value) 23801 23802 commit 41f151252894d0d3731a46b364f36e7364983553 23803 Author: Frederik Heber <heber@bespin.wiss-staff> 23804 Date: Thu Oct 9 20:27:56 2008 +0200 23805 23806 BUGFIXES: CyclicStructureAnalysis() now compatible to disconnected subgraphs, AssignKeySetsToFragment() and FillBondStructureFromReference() memory cleanup corrected 23807 23808 + molecule::DepthFirstSearchAnalysis() now just returns BackEdgeStack, not MinimumRingSize. CyclicStructureAnalysis() is called during FragmentMolecule(), after subgraphs bonds list have been filled by FillBondStructureFromReference(). 23809 + new function molecule::PickLocalBackEdges(), as the BackEdgeStack returned by DepthFirstSearchAnalysis() co 23810 ntains only global bonds, not the local ones for the subgraph, we have to step through it and pick the right 23811 ones out. 23812 + molecule::FragmentMolecule() now calls molecule::CyclicStructureAnalysis() separately for each subgraph, along with a BackEdgeStack filled by PickLocalBackEdges(), and allocates&initialises MinimumRingSize array. Als 23813 o AssignKeySetsToFragment() frees the LocalListOfAtoms now (FreeList=true), now longer after the following wh 23814 ile 23815 + molecule::CyclicStructureAnalysis() takes a local BackEdgeStack and analysis the subgraphs cycles, returnin 23816 g minimum ring size 23817 + MoleculeLeafClass::AssignKeySetsToFragment() now frees memory for ListOfLocalAtoms when FreeList is set. BUGFIX: test of first key was testing against ..->nr != -1. However, LocalListOfAtoms was not even initialised correctly to NULL, hence ...->nr pointed in some cases to nowhere. Now it test atom* against NULL. 23818 + MoleculeLeafClass::FillBondStructureFromReference() now frees memory for ListOfLocalAtoms when FreeList is set correctly (only free initial pointer when FragmentCounter == 0, also it was decreased not before but after freeing, hence we free'd the wrong list). Also, father replaced by GetTrueFather() (makes the function moregenerally useable, was not a bug). 23819 + ParseCommandLineOptions() option 'D': adapted to changes in DepthFirstSearchAnalysis() in a similar manner 23820 to FragmentMolecule() 23821 + molecule::CountCyclicBonds() adapted but does not perform CyclicStructureAnalysis() 23822 + molecule::CreateAdjacencyList() counts the bonds that could not be brought to covalently corrected degree (i.e. the remaining ionic atoms) 23823 + molecule::CreateListOfBondsPerAtom() prints atom names and number, which is helpful as name contains global 23824 and number contains local number (helped in finding above bugs) 23825 + CreateFatherLookupTable(): BUGFIX: LookupTable was not initialised to NULL (see above) 23826 23827 commit 3ccc3e7a14502461795e5eacfd890ff9d7202edb 23828 Author: Frederik Heber <heber@bespin.wiss-staff> 23829 Date: Thu Oct 9 20:27:56 2008 +0200 23830 23831 BUGFIXES: CyclicStructureAnalysis() now compatible to disconnected subgraphs, AssignKeySetsToFragment() and FillBondStructureFromReference() memory cleanup corrected 23832 23833 + molecule::DepthFirstSearchAnalysis() now just returns BackEdgeStack, not MinimumRingSize. CyclicStructureAnalysis() is called during FragmentMolecule(), after subgraphs bonds list have been filled by FillBondStructureFromReference(). 23834 + new function molecule::PickLocalBackEdges(), as the BackEdgeStack returned by DepthFirstSearchAnalysis() co 23835 ntains only global bonds, not the local ones for the subgraph, we have to step through it and pick the right 23836 ones out. 23837 + molecule::FragmentMolecule() now calls molecule::CyclicStructureAnalysis() separately for each subgraph, along with a BackEdgeStack filled by PickLocalBackEdges(), and allocates&initialises MinimumRingSize array. Als 23838 o AssignKeySetsToFragment() frees the LocalListOfAtoms now (FreeList=true), now longer after the following wh 23839 ile 23840 + molecule::CyclicStructureAnalysis() takes a local BackEdgeStack and analysis the subgraphs cycles, returnin 23841 g minimum ring size 23842 + MoleculeLeafClass::AssignKeySetsToFragment() now frees memory for ListOfLocalAtoms when FreeList is set. BUGFIX: test of first key was testing against ..->nr != -1. However, LocalListOfAtoms was not even initialised correctly to NULL, hence ...->nr pointed in some cases to nowhere. Now it test atom* against NULL. 23843 + MoleculeLeafClass::FillBondStructureFromReference() now frees memory for ListOfLocalAtoms when FreeList is set correctly (only free initial pointer when FragmentCounter == 0, also it was decreased not before but after freeing, hence we free'd the wrong list). Also, father replaced by GetTrueFather() (makes the function moregenerally useable, was not a bug). 23844 + ParseCommandLineOptions() option 'D': adapted to changes in DepthFirstSearchAnalysis() in a similar manner 23845 to FragmentMolecule() 23846 + molecule::CountCyclicBonds() adapted but does not perform CyclicStructureAnalysis() 23847 + molecule::CreateAdjacencyList() counts the bonds that could not be brought to covalently corrected degree (i.e. the remaining ionic atoms) 23848 + molecule::CreateListOfBondsPerAtom() prints atom names and number, which is helpful as name contains global 23849 and number contains local number (helped in finding above bugs) 23850 + CreateFatherLookupTable(): BUGFIX: LookupTable was not initialised to NULL (see above) 23851 23852 commit df793af37622fc6e5428ad9e5627590d46749e75 23853 Author: Frederik Heber <heber@bespin.wiss-staff> 23854 Date: Thu Oct 9 20:27:56 2008 +0200 23855 23856 BUGFIXES: CyclicStructureAnalysis() now compatible to disconnected subgraphs, AssignKeySetsToFragment() and FillBondStructureFromReference() memory cleanup corrected 23857 23858 + molecule::DepthFirstSearchAnalysis() now just returns BackEdgeStack, not MinimumRingSize. CyclicStructureAnalysis() is called during FragmentMolecule(), after subgraphs bonds list have been filled by FillBondStructureFromReference(). 23859 + new function molecule::PickLocalBackEdges(), as the BackEdgeStack returned by DepthFirstSearchAnalysis() co 23860 ntains only global bonds, not the local ones for the subgraph, we have to step through it and pick the right 23861 ones out. 23862 + molecule::FragmentMolecule() now calls molecule::CyclicStructureAnalysis() separately for each subgraph, along with a BackEdgeStack filled by PickLocalBackEdges(), and allocates&initialises MinimumRingSize array. Als 23863 o AssignKeySetsToFragment() frees the LocalListOfAtoms now (FreeList=true), now longer after the following wh 23864 ile 23865 + molecule::CyclicStructureAnalysis() takes a local BackEdgeStack and analysis the subgraphs cycles, returnin 23866 g minimum ring size 23867 + MoleculeLeafClass::AssignKeySetsToFragment() now frees memory for ListOfLocalAtoms when FreeList is set. BUGFIX: test of first key was testing against ..->nr != -1. However, LocalListOfAtoms was not even initialised correctly to NULL, hence ...->nr pointed in some cases to nowhere. Now it test atom* against NULL. 23868 + MoleculeLeafClass::FillBondStructureFromReference() now frees memory for ListOfLocalAtoms when FreeList is set correctly (only free initial pointer when FragmentCounter == 0, also it was decreased not before but after freeing, hence we free'd the wrong list). Also, father replaced by GetTrueFather() (makes the function moregenerally useable, was not a bug). 23869 + ParseCommandLineOptions() option 'D': adapted to changes in DepthFirstSearchAnalysis() in a similar manner 23870 to FragmentMolecule() 23871 + molecule::CountCyclicBonds() adapted but does not perform CyclicStructureAnalysis() 23872 + molecule::CreateAdjacencyList() counts the bonds that could not be brought to covalently corrected degree (i.e. the remaining ionic atoms) 23873 + molecule::CreateListOfBondsPerAtom() prints atom names and number, which is helpful as name contains global 23874 and number contains local number (helped in finding above bugs) 23875 + CreateFatherLookupTable(): BUGFIX: LookupTable was not initialised to NULL (see above) 23876 23877 commit ba4432331924fc02b7f5a1f24643fb79bc770fb4 23878 Author: Frederik Heber <heber@bespin.wiss-staff> 23879 Date: Thu Oct 9 18:19:39 2008 +0200 23880 23881 Output of atom and bond to stream now is set to const bond/atom 23882 23883 commit aa57027f3fede3beb1cfc17ee62c74fd56535dae 23884 Author: Frederik Heber <heber@bespin.wiss-staff> 23885 Date: Sun Sep 28 19:55:04 2008 +0200 23886 23887 corrected molecule::VerletForceIntegration() and analyzer creates data and plot file for shielding values 23888 23889 commit 62f793aff2f24a09fa44578b18eca5a99c739605 23890 Author: Frederik Heber <heber@bespin.wiss-staff> 23891 Date: Thu Sep 25 19:57:19 2008 +0200 23892 23893 thermostats enumerator, necessary variables included in class config, molecule::Thermostats() and ..::Constrained 23894 Potential() 23895 23896 Thermostat header definitions implemented. Can be parsed from the ESPACK config file into class config 23897 ConstrainedPotential() calculates the transformation between two given configurations my minimsing a penalty func 23898 tional of the distance to travel per atom. This was implemented due to Michael Griebel's talk during the MultiMat 23899 Closing meeting in order to produce some visuals. It basically mimics a "Bain Transformation". But it is not yet 23900 perfectly implemented. 23901 Also, MD was corrected in VerletIntegration(). However, forces are still wrong with mpqc, as the kinetic energy increases dramatically during the MD simulation. 23902 23903 commit 16a52b3c50fff2ccc678808e2588e1174646b8ec 23904 Author: Frederik Heber <heber@bespin.wiss-staff> 23905 Date: Thu Sep 25 19:51:37 2008 +0200 23906 23907 Lots of conversion factors for various units 23908 23909 Were taken from PCP defs.h 23910 23911 commit 7ce307c78745a2122b212146fe5353c2ac465fa6 23912 Author: Frederik Heber <heber@bespin.wiss-staff> 23913 Date: Thu Sep 25 19:50:17 2008 +0200 23914 23915 Some files were missing in the repository 23916 23917 pseudopotentials and the databases of molecuilder were not present, they are now included as EXTRA_DIST in the Makefile.am 23918 23919 commit 795a543aef7113a3c669a306acef3425d65f403d 23920 Author: Frederik Heber <heber@bespin.wiss-staff> 23921 Date: Thu Sep 11 15:04:01 2008 +0200 23922 23923 molecule::MinimiseConstrainedPotential(): Extension of search and bugfix 23924 23925 We set the DistanceIterator to the begin() of DistanceList if we have reached the end, i.e. start anew for searching possible candidates. 23926 Trajectories were not written correctly, due to wrong if condition (step> MDSteps) instead of (steps < MaxStep) 23927 23928 commit c30cda6abbb8ffa286b09e6111634efbf42891a6 23929 Author: Frederik Heber <heber@bespin.wiss-staff> 23930 Date: Tue Sep 9 18:42:29 2008 +0200 23931 23932 molecule::MinimiseConstrainedPotential() : Minimisation is fixed 23933 23934 Now, minimisation works. The re-occurence of doubles despite pair-wise exchanging during argument minimisation was due to a wrong DistanceIterator list setting in the injective minimisation before. 23935 Also, we enhanced the minimisation finding (though it is not optimal yet!) by going through each possible target in the distance list from the very beginning (i.e. we also take again smaller distances into account). 23936 For control purpose PrintPermutationMap also checks on the number of doubles (i.e. target's that are owned by two sources). 23937 23938 commit 85bac07a96bad99841916279c5887226effb9305 23939 Author: Frederik Heber <heber@bespin.wiss-staff> 23940 Date: Tue Sep 9 17:29:58 2008 +0200 23941 23942 Implemented molecule::LinearInterpolationBetweenConfiguration(). 23943 23944 command line option "-L" with start and end step performs a linear interpolation between two atomic configurations. So far the mapping from initial atom labels to final labels is not yet finished, it is injective, but not yet minimal. 23945 23946 commit a1fe77b80222d4b06bce07cbd04191ac9a489a93 23947 Author: Frederik Heber <heber@bespin.wiss-staff> 23948 Date: Fri Sep 5 18:56:31 2008 +0200 23949 23950 Basic implementation of Constrained MD is done, missing testing. 23951 23952 commit 6e93532a2d845fe2e2784e97e1a0882bd15affda 23953 Author: Frederik Heber <heber@bespin.wiss-staff> 23954 Date: Fri Sep 5 10:22:51 2008 +0200 23955 23956 Constrained Molecular Dynamics: two new functions molecule::ConstrainedPotential(), molecule::MinimiseConstrainedPotential() 23957 23958 Constrained Molecular Dynamics scaffold implemented (so far it does nothing): 23959 - config::DoConstrainedMD contains the target step (i.e. config::DoConstrainedMD = 2 will do a constraint motion from step 1 to step 2), 0 means no constrained motion, is parsed in config::load(), def 23960 ault is 0 23961 - molecule::ConstrainedPotential() contains the constrained potential with three terms: distance, tr 23962 ajectory distance, equal target (last two are pure penalties). Implemented, not tested. 23963 - molecule::MinimiseConstrainedPotential() is a scaffold, not changing forces and returning null 23964 - molecule::VerletForceIntegration calls the above with the Force Matrix and target step as function 23965 parameters 23966 23967 commit 18913c2ca930123026243027483a5e8569fd7118 23968 Author: Frederik Heber <heber@bespin.wiss-staff> 23969 Date: Thu Sep 11 15:25:47 2008 +0200 23970 23971 config::DoWannier implemented that is parsed from config file, default is 0 23972 23973 commit 4f23357f638834520f1ad76131c93dac4640b347 23974 Author: Frederik Heber <heber@bespin.wiss-staff> 23975 Date: Thu Sep 11 15:02:14 2008 +0200 23976 23977 ParseCommandLineOptions(): Command line option "-E" for changing an atom's element, BUGFIX: argptr could become >argc 23978 23979 commit 2985c869920de1734bc16aa5227840ff9c56b82a 23980 Author: Frederik Heber <heber@bespin.wiss-staff> 23981 Date: Tue Sep 9 17:32:16 2008 +0200 23982 23983 BUGFIX: Normalize() would try to normalize a zero vector which ended NaN. 23984 23985 We only normalize if vector is non-zero in magnitude. 23986 23987 commit 698b04044c25e6ea14765313bdc85be65fdffb0a 23988 Author: Frederik Heber <heber@bespin.wiss-staff> 23989 Date: Tue Sep 9 10:37:07 2008 +0200 23990 23991 new function: molecule::OutputTemperatureFromTrajectories() stores velocities as temperature 23992 23993 In order to use VibrAlyzer we need a temperature file, which we don't have anymore as we do the M 23994 D in molecuilder now. Hence, there is a new command line switch (-L) and a menu item in MeasureAt 23995 oms() in order to print temperature or to store it to a given file. 23996 23997 commit bd3e5550ecf9aca4526efb079a96f370a9a477eb 23998 Author: Frederik Heber <heber@bespin.wiss-staff> 23999 Date: Tue Sep 9 09:46:15 2008 +0200 24000 24001 configure BUGFIX: GSL may be linked against cblas_... functions or just ..., this is fixed. 24002 24003 Before we checked for cblas_dnrm2. However, e.g. libgoto names it simply dnrm2. Hence, the blas functions are not found or slower (c)blas, or gsl(c)blas is used. Now, we simply check for dnrm2 functions in the list of libs first, if it fails, then for cblas_dnrm2. And finally, we test GSL functionality by checking for main(), which only works if a working blas lib has been found before. 24004 Also, we removed AC_MSG_NOTICE about CFLAGS and others. However, the other for MPICC was left present. 24005 24006 commit deac6c2ee61a86d3a46c6eccc2756bd2c242c638 24007 Author: Frederik Heber <heber@bespin.wiss-staff> 24008 Date: Sat Sep 6 18:21:31 2008 +0200 24009 24010 BUGFIX: molecule::...Scale(),Translate(),Mirror() and Align() did only change vectors of atom struct, not in the Trajectories structure. RemoveAtom did not remove trajectories entry 24011 24012 This is fixed. 24013 Also, fixed that RemoveAtom() did not remove the entry in Trajectories structure. 24014 24015 commit a6b7fb65396523f30f3be7cb1c8c8dfaaf680d1a 24016 Author: Frederik Heber <heber@bespin.wiss-staff> 24017 Date: Sat Sep 6 17:08:32 2008 +0200 24018 24019 BUGFIX: config::SaveMPQC() used molecule::DetermineCenter() which relies on the created bond structure, causing segfault. 24020 24021 When storing a newly created configuration file, the bond structure needs not be present yet. Hence, we created the function molecule:DetermineCenterOfAll(), similar to molecule::DetermineCenterOfGravity() just without scaling by masses. This new function is now used instead. 24022 24023 commit d1fc7f6c252281b36280161c5061d0e730662c24 24024 Author: Frederik Heber <heber@bespin.wiss-staff> 24025 Date: Sat Sep 6 17:06:51 2008 +0200 24026 24027 BUGFIX: Moved case 'a' in ParseCommandLineOptions() to the config_present == empty option switch. 24028 24029 If atoms were added to an newly-created and empty configuration file, this would not work, as the config file was still empty and hence config_present != present, so far needed for case 'a'. Now, it is moved in the vicinity of case 'P', where it belongs to and if the first atom is added, config_present is set to present. 24030 24031 commit a8aadf6291f42c04cb057454fa0a010c23184d00 24032 Author: Frederik Heber <heber@bespin.wiss-staff> 24033 Date: Fri Sep 5 19:09:39 2008 +0200 24034 24035 SaveConfig() now also stores an MPQC input file. 24036 24037 MoleculeListClass::OutputConfigForListOfFragments() did this already, but it was missing for SaveConfig(). We do the same regarding filenames and output, only we call config::SaveMPQC(). 24038 24039 commit ed060ec87e8e74bee52410a6471d3c0f47149edd 24040 Author: Frederik Heber <heber@bespin.wiss-staff> 24041 Date: Fri Sep 5 19:02:18 2008 +0200 24042 24043 moved all definitions from boundary.hpp to molecules.hpp, and renamed DistanceNrPair to DistancePair. 24044 24045 commit 7e27e738a38b76dacb4576347f33afc94b7933dc 24046 Author: Frederik Heber <heber@bespin.wiss-staff> 24047 Date: Wed Sep 3 19:28:31 2008 +0200 24048 24049 BUGFIX: config::load() parses endlessly if there are no atoms in the config file. 24050 24051 Since MaxTypes is 0, we check for it and don't scan if there are none according to it. If MaxTypes != 0 however there are no ions given, we break with an error message (which was missing before in config:ParseForParameters()). 24052 24053 commit dd8cf8a8462703ebe06c909e9115df444b75404d 24054 Author: Frederik Heber <heber@bespin.wiss-staff> 24055 Date: Tue Sep 2 14:06:14 2008 +0200 24056 24057 FIX: ExitFlag not defaults to 0, and set specifically to 1 in the subcases 24058 24059 In ParseCommandLineOptions() the ExitFlag was always set to 1, even if only the elements databases were given on the command line. This lead to exit of program, when none was desired. 24060 24061 commit 7e07cfbaccb8721446cd98910c37724dcc61f432 24062 Author: Frederik Heber <heber@bespin.wiss-staff> 24063 Date: Tue Sep 2 14:05:31 2008 +0200 24064 24065 fix: in config::edit() the loop asking for cell values had the wrong order 24066 24067 sigh from the dumb optimization... 24068 24069 commit 3dcd149e7e9a272112b92ca2b13b0ad8200eb6d2 24070 Author: Frederik Heber <heber@bespin.wiss-staff> 24071 Date: Fri Aug 29 12:39:59 2008 +0200 24072 24073 molecule::ScanForPeriodicCorrection() two printfs were commented out 24074 24075 commit c1fc22aaa072e01ad3e6939465d7f8bb9d033b13 24076 Author: Frederik Heber <heber@bespin.wiss-staff> 24077 Date: Fri Aug 29 12:39:17 2008 +0200 24078 24079 config::SaveMPQC() included in headers and used in OutputConfigForListOfFragments() and cleaned up the path&filename creation 24080 24081 commit 6b8b57c269257f8192eb7f11ffd114cf48339f05 24082 Author: Frederik Heber <heber@bespin.wiss-staff> 24083 Date: Fri Aug 29 12:12:00 2008 +0200 24084 24085 new function SaveMPQC(), bugfixes in ParseForParameter() 24086 24087 ParseForParameter(): first while loop tested dummy[0] although it might occur that dummy = NULL, this is now checked beforehand. On stepping through the values in the keyword line, the end marker (dummy) was shifted to the start of the next value, hence included the tabs. This lead to strings being stored with tabs at the end and on consecutive loading&storing in an MD run to an accumulation of tabs till MD step 152, where the config file could not be parsed anymore due to the size of the string value. This is fixed (the shifthing further is removed, as unnecessary). 24088 SaveMPQC(): molecuilder now stores input files for MPQC directly, i.e. they don't have to be converted from the ESPACK format externally. This saves a lot of time during BOSSANOVA MD. 24089 24090 commit ab3a0e355a8ec6c4f7f4b9c7c65b2931c2d58151 24091 Author: Frederik Heber <heber@bespin.wiss-staff> 24092 Date: Mon Aug 18 12:55:30 2008 +0200 24093 24094 Fixed second test (main_pcp_linux was not written anymore, hence copied) and error code in third test (2 not 0) 24095 24096 commit 19892d8d4b3e7063877efba20bee402e3caa3695 24097 Author: Frederik Heber <heber@bespin.wiss-staff> 24098 Date: Mon Aug 18 11:02:34 2008 +0200 24099 24100 tiny comments and docu update for FragmentMolecule() 24101 24102 commit 362b0e5abaff6113ef0ca4989b9074448eccb8b8 24103 Author: Frederik Heber <heber@bespin.wiss-staff> 24104 Date: Mon Aug 18 10:57:58 2008 +0200 24105 24106 Adaptivity fixes, MD by VerletForceIntegration introduced, MD molecule::Trajectories, atom Max::Order, no more recursive going down the fragmentation level 24107 24108 MD 24109 == 24110 molecule::Trajectories is now a map to a struct trajectory list of all the MD steps. 24111 struct Trajectory contains STL vectors of coordinates, velocities and forces. Both are needed for the new VerletForceIntegration. 24112 Parsing of coordinates, velocities and forces from the config file was completely rewritten: 24113 - in the FastParsing case, we just scan for IonType1_1 to find the last step, set the file pointer there and scan all remaining ones 24114 - in the other case, we create the atoms in the first step and put them in a hash for lookup on later steps and read in sequentially (with file pointer moving on). 24115 - This is a lot faster than the old variant. 24116 VerletForceIntegration() implemented in a working manner with force smoothing (mean of actual and last one). 24117 OutputTrajectoriesXYZ() now concatenates the single MD steps into one xyz file, so that the animation can be viewed with e.g. jmol or vmd 24118 config:Deltat is now public (lazy me) and set to 1 instead of 0 initially, also Deltat is parsed accordingly (if not present, defaults to 1) 24119 MatrixContainer::ParseMatrix from parser.cpp is used during VerletForceIntegration() to parse the forces file. Consequently, we have included parser.* in the Makefile.am. 24120 Fix: MoleculeListClass::OutputConfigForListOfFragments() stores config file under config::configpath, before it backup'd the path twice to PathBackup. 24121 24122 Adaptivity 24123 ========== 24124 Adaptivity (CheckOrderAtSite()) had compared not absolute, but real values which caused sign problems and faulty behaviour. 24125 Adapatvity (CheckOrderAtSite()) had included atoms by Order (desired one) not by FragOrder (current one) into the list of candidates, which caused faulty behaviour. 24126 CheckOrderAtSite() did single stepping wrong as the mask bit (last in AtomMask) was checked for true not false! Also bit was not set to false initially in FragmentMolecule(). 24127 Adaptivity: FragmentMolecule now returns 1 - continue, 2 - don't ... to tell whether we still have to continue with the adaptive cycle (is given as return value from molecuilder) 24128 introduced atom::MaxOrder 24129 StoreOrderAtSiteFile() now also stores the MaxOrder and ParseOrderAtSiteFromFile() parses it back into atom class 24130 24131 Removed Fragmentation Recursion 24132 =============================== 24133 As we switched in the prelude of the adaptivity to a monotonous increase from order 1 to the desired one, we don't need to recursively go down each level from a given current bond order, as all these fragments have already been created on the lower orders. Consequently, FragmentBOSSANOVA does not contain NumLevels or alike anymore. This simplified the code a bit, but probably is not yet completely done. (but is working, checked on heptan). 24134 SPFragmentGenerator() does not need Labels anymore, global ones are used for checks. Consequently, PowerSetGenerator() and FragmentSearch structure don't initialise/contain them anymore. We always compare against ...->GetTrueFather()->nr. 24135 24136 commit f054074bc0e2ebd43408e39a6e2ae0cd96597630 24137 Author: Frederik Heber <heber@bespin.wiss-staff> 24138 Date: Mon Aug 18 10:35:40 2008 +0200 24139 24140 analyzer has been adapted to the aforementioned change in the calling scheme. 24141 24142 commit 8f019c37319f5387da730449c13ecaf090715119 24143 Author: Frederik Heber <heber@bespin.wiss-staff> 24144 Date: Mon Aug 18 10:35:11 2008 +0200 24145 24146 Splitting MatrrixContainer::ParseMatrix in ParseMatrix 24147 24148 ParseMatrix just parses only a given matrix into a given part of the MatrixContainer::matrix array). 24149 ParseFragmentMatrix calls ParseMatrix for a sequence of numbered files containing the matrices. 24150 ForceMatrix::ParseFragmentMatrix overrides the routine from MatrixContainer in order to handle the parsing of the last and one ma 24151 trix in a special way 24152 EnergyMatrix::ParseFragmentMatrix overrides the routine from MatrixContainer in order to handle the parsing of the last and one matrix in a special way 24153 Realloc() was fixed: ReAlloc would break if given oldptr is NULL, but now we simply switch to doing a malloc instead and only admonishing the wrong call to ReAlloc instead of Malloc 24154 analyser.cpp and joiner.cpp have been adapted to these new calling schemes 24155 24156 commit f3dc4cada1aab42f4ac415cb0adb90ad5db6eed7 24157 Author: Frederik Heber <heber@bespin.wiss-staff> 24158 Date: Mon Aug 18 10:27:34 2008 +0200 24159 24160 Time analysis is back in 24161 24162 commit 9e5a04de7e452653cd51c0bbb3ed1427808806fb 24163 Author: Frederik Heber <heber@bespin.wiss-staff> 24164 Date: Mon Aug 18 10:25:28 2008 +0200 24165 24166 Included missing silicon and took more or lesss sensible values for valence orbitals from a website 24167 24168 commit 5e0d1f1c85a9ade010b400eb5a691b8c94a48949 24169 Author: Frederik Heber <heber@bespin.wiss-staff> 24170 Date: Wed Aug 6 14:00:18 2008 +0200 24171 24172 config::Save() and config::Load() parse MD steps into and out of molecule::Trajectories. Tested. 24173 24174 commit e9b8bbc350d26b202af7d90b4200003a5a492355 24175 Author: Frederik Heber <heber@bespin.wiss-staff> 24176 Date: Wed Aug 6 11:02:01 2008 +0200 24177 24178 Rename of class vector to Vector to avoid conflict with vector from STL. 24179 24180 commit d7e30ca04fa0adf2762a650a9f855a8ded1885f5 24181 Author: Frederik Heber <heber@bespin.wiss-staff> 24182 Date: Wed Aug 6 10:59:06 2008 +0200 24183 24184 Scaffold of new function: VerletForceIntegration() - does MD step by parsing external forces file. 24185 24186 PCP is too slow and unnecessarily ECut-dependent. If we incorporate the Verlet integration into molecuilder, we get a much more complete "wrapper" package. 24187 24188 commit b4b7c37aea37c05e26de1669061a747720f5d760 24189 Author: Frederik Heber <heber@bespin.wiss-staff> 24190 Date: Wed Aug 6 10:50:52 2008 +0200 24191 24192 pcp.speed is parsed and analyzed again (Time matrices). 24193 24194 This was commented out before. 24195 24196 commit fb936468428f5110b9922aa5f20ccb14c1c45e08 24197 Author: Frederik Heber <heber@bespin.wiss-staff> 24198 Date: Wed Aug 6 10:37:04 2008 +0200 24199 24200 The entries in the Header of ForceMatrix are now separated by tabs, not white spaces in general 24201 24202 This fixes problems with the headers of the speed entries of MPQC which are multiple words separated by spaces. As we already use tabs to separate each entries, we just had to rewrite the code to split by '\t' which is done by getline. 24203 24204 commit 4aa03a552cf306f8b3265e786d08e545bf01bed4 24205 Author: Frederik Heber <heber@bespin.wiss-staff> 24206 Date: Thu Jul 31 16:05:37 2008 +0200 24207 24208 new test function CheckForConnectedSubgraph() and bigger rewrite of PowerSetGenerator() and SPFragmentGenerator() to allow for ings 24209 24210 CheckForConnectedSubgraph(): Is an O(N^2) function to check whether we do not create fragments we don't want to have (i.e. disconnected ones) 24211 PowerSetGenerator(): Instead of adding the possible Walkers to an AtomStack, we use the bonds we store in the BondsPerSPList, which by the way have the necessary directional information (i.e. they come with the predecessor in Bond#leftatom). This way, we generate fragments in ring structures without any problems. 24212 SPFragmentGenerator(): had to be adapted as the calling in PowerSetGenerator() had changed a bit. We already let the root be added by this function and don't add it in PowerSetGenerator(), which simplifies (no if-catch for first order) the code there a bit. Furthermore, we had to check whether an added vertex was not already in the keyset (this may happen, as both edge 1<->2 as 2<->1 may appear at different SPLevels in BondsPerSPLevel: Ring structures in contrast to tree structures don not allow for uniqueness! This is first realised through the hash map storing the keysets). This again caused a change in recognizing when the stack contains a fragment, as Suborder-bits (bits is the number of atoms added for this combination) is not the way anymore - we use an additional Counter "Added". 24213 24214 Test on Benzonitrile was successful. We counted the possible fragments by hand, checked them furthermore till order 5 and the numbers were ok up till full order 8 in the end. 24215 24216 commit af6d8f00912cd5022f1a2c33ac397ac378ec965d 24217 Author: Frederik Heber <heber@bespin.wiss-staff> 24218 Date: Wed Jul 30 16:16:21 2008 +0200 24219 24220 CyclicStructureAnalysis(): BUGFIX - BFSStack may be empty if we can't find the loop, FragmentBOSSANOVA(): BUGFIX - FragmentLowerOrderList may be NULL 24221 24222 commit 41baafea7091ff08639dc60305b81c5e1871ee8e 24223 Author: Frederik Heber <heber@bespin.wiss-staff> 24224 Date: Wed Jul 30 15:11:30 2008 +0200 24225 24226 2 BUGFIXES: CreateAdjacencyList() and CyclicStructureAnalysis() 24227 24228 CreateAdjacencyList(): with benzophenone and indigo it was found that the correction of the bond degree was not working properly. Carbon bound to oxygen and other carbons would not raise the bond degree to oxygen preferentially over the carbon bonds, which lead to wrong bond degrees in the end. We refrained from using matrix schemes as these are not O(N) in a simple manner, but remained with the local scheme that now checks each also mismatching bond partner for its number of bonds and takes preferentially the one with the fewest bonds as the increase candidate. 24229 CyclicStructureAnalysis(): with biphenylene and cholesterol it was found that the cycle detection did not work as expected. Cycles were found twice due to a back edge being shared by two cycles at the same time (and it's randomly dependend on the vertex ids which cycle is found first). Hence, we now do a backtracking of a cycle candidate, looking whether each of its vertices is not already set to be cyclic. If so, we removed the last added vertices from lists and stacks (i.e. the closing edges), so that the other BFS finger with the real candidate may still reach the looked-for backedge (otherwise the vertex would be marked gray and hence not visited). 24230 24231 commit 683914b4876eed83b28d109437ddb9f72c5a18f5 24232 Author: Frederik Heber <heber@bespin.wiss-staff> 24233 Date: Mon Jul 28 16:41:22 2008 +0200 24234 24235 CyclicStructureAnalysis: BUGFIX - MinimumRingSize of non-loop atoms was wrong 24236 24237 - new bool atom:IsCyclic states whether atoms is part of a cycle or not, this is set in CyclicStructureAnalysis() 24238 - MinimumRingSize was set to MinimumRingSize plus ShortestPath thereto. This gives correct results only if this goes to a loop-member. However the if-condition was phrased in such a manner, that it became possible that non-loop members (with MinimumRingSize set below AtomCount) would now also be regarded als loop members. This is sort of a triangle inequality problem :), path of A to B plus path from B to C is probably not the same as path from A to C in terms of length 24239 24240 commit 87e27351ede74c047e0a540d97da19854f66ea26 24241 Author: Frederik Heber <heber@bespin.wiss-staff> 24242 Date: Mon Jul 28 16:18:25 2008 +0200 24243 24244 CyclicStructureAnalysis: BUGFIX - MinimumRingSize was not set correctly 24245 24246 - During BFS search from non-loop members to loops, Walker was pushed instead of Root at start of BFS 24247 - if Backedge lead to a terminal hydrogen, this hydrogen ended up with AtomCount MinimumRingSize instead of correct one. 24248 24249 commit b610433d971fac0a9b4ebc55ee01222a06161971 24250 Author: Frederik Heber <heber@bespin.wiss-staff> 24251 Date: Mon Jul 28 15:47:52 2008 +0200 24252 24253 Removed Output of parsed elements db (does work well, so not necessary anymore) 24254 24255 commit 95845742c9849804a86919863f94de644eb5f1a5 24256 Author: Frederik Heber <heber@bespin.wiss-staff> 24257 Date: Mon Jul 28 15:45:43 2008 +0200 24258 24259 CheckOrderAtSite: BUGFIX - Added MinimumRingSize to parameter list, as otherwise infinite loop 24260 24261 If FragmentBOSSANOVA checks for remaining below MinimumRingSize per atom, CheckOrderAtSite however does not and fills AtomMask with values for atoms not to be included, we end up with an endless loop. Hence, MinimumRingSize is given as an additional parameter and CheckOrderAtSite checks for it for adaptive and for global increase (for stepwise we don't have the loop problem and FragmentBOSSANOVA will do the right thing). 24262 24263 commit 3902484c207d407476dea9c34dc0482f306011aa 24264 Author: Frederik Heber <heber@bespin.wiss-staff> 24265 Date: Thu Jul 24 16:00:19 2008 +0200 24266 24267 BIG change: Hcorrection included and bugfix of analyzer (wrt forces) 24268 24269 - Hcorrection is supplied via molecuilder which gives correction values if hydrogen atoms are to close and thus already feel each other's influence. This correction energy matrix is also parsed ans subtracted from the approximated energy matrix generated from the fragments. This impacts both on joiner, analyzer and molecuilder 24270 - Forces were not working which had multiple causes: 24271 - first, we stepped back down to absolute errors which rather gives a feel about convergence (1e-6 is simply small and neglegible) 24272 - there may have been bugs where (either in Force or in ForceFragments) adding up took place, this is cleaned up 24273 - more routines have been abstracted from analyzer into datacreator functions 24274 - the order of ions had changed, re-run with current molecuilder, calculation and subsequent joining/analyzing brought correct results finally 24275 - plots were bad still due to wrong axes (two more functions finding max/min values), use of wrong columns in plot file 24276 24277 commit c685eb762cafcd3ac83229798d1b5348383442c3 24278 Author: Frederik Heber <heber@bespin.wiss-staff> 24279 Date: Thu Jul 24 15:58:40 2008 +0200 24280 24281 adding atom: element is now first, not last parameter and output message is clearer 24282 24283 This is to remedy the problem of forgetting the element's Z value, the output message should give clear indication. 24284 24285 commit 82cd9fdbc792e4131e56a2df3b65817208d6f955 24286 Author: Frederik Heber <heber@bespin.wiss-staff> 24287 Date: Thu Jul 24 15:56:00 2008 +0200 24288 24289 BUGFIX: elements.db is now using path instead of file 24290 24291 elements database was not correctly stored, as a filename was still given in Load/StorePeriodentafel instead of the path. This is corrected. 24292 24293 commit 7d96c688dc2211a43672144fbe15e285661198f4 24294 Author: Frederik Heber <heber@bespin.wiss-staff> 24295 Date: Wed Jul 9 15:33:57 2008 +0200 24296 24297 class vector was wrongly still in molecules.hpp instead of vector.hpp 24298 24299 commit 0378e209ab9d2f0bacdbc445771626883a31a43c 24300 Author: Frederik Heber <heber@bespin.wiss-staff> 24301 Date: Wed Jul 9 15:24:20 2008 +0200 24302 24303 StoreKeySetFile(): removed unncessary iterator "ende" storing 24304 24305 commit 1b62f36c7f43cecd8e3b385195d91298fbf95215 24306 Author: Frederik Heber <heber@bespin.wiss-staff> 24307 Date: Tue Jul 8 15:12:55 2008 +0200 24308 24309 changed verbosity a bit 24310 24311 commit 68cb0f6ecaea70afd3066840aea2c154a6ecfb92 24312 Author: Frederik Heber <heber@bespin.wiss-staff> 24313 Date: Fri Jun 27 23:12:52 2008 +0200 24314 24315 introduced shieldings to analyzer and joiner 24316 24317 both now handle pcp.sigma_all...csv files just as pcp.forces.all. Therefore the data format in pcp/perturbed.c was adapted a bit, as we need a header. 24318 periodentafel.hpp got periodentafel and element class from molecules.hpp 24319 24320 commit 1f066feec5dd1816d82aa85f8b131467fb6faaa0 24321 Author: Frederik Heber <heber@bespin.wiss-staff> 24322 Date: Mon Jun 23 13:25:09 2008 +0200 24323 24324 ParseCommandLineOptions(): new option 'O' centers system at origin 24325 24326 Just calls CenterOrigin for the given molecule. 24327 24328 commit f14a52d761035defda8d929cf23b405d9285bfef 24329 Author: Frederik Heber <heber@bespin.wiss-staff> 24330 Date: Mon Jun 23 13:23:50 2008 +0200 24331 24332 StoreFragmentFromKeySet(): BUGFIX - commented out the Leaf->AddBond for non-hydrogen atoms by accident 24333 24334 This happened because the adding was hidden in the "*out << ... << endl;" directive. I put it onto an extra line and surrounded it with "*out <<" and so on so that it may still be used. 24335 24336 commit 2565207417a14b61bdcd62329a6c9df902acf1d4 24337 Author: Frederik Heber <heber@bespin.wiss-staff> 24338 Date: Sun Jun 22 15:39:41 2008 +0200 24339 24340 ParseCommandLineOptions(): BUGFIX - break was missing for case 'n' causing next argument to be skipped 24341 24342 commit 8a3e457fdc8672973ca81864d2f77e092e907b83 24343 Merge: d427bdd d250b29 24344 Author: Frederik Heber <heber@bespin.wiss-staff> 24345 Date: Sun Jun 22 15:27:47 2008 +0200 24346 24347 Merge branch 'bisect' into AdaptiveMolecuilder 24348 24349 commit d250b29e2b8e1c054b7f93c4f475f36dfb7a3a33 24350 Author: Frederik Heber <heber@bespin.wiss-staff> 24351 Date: Fri Jun 20 10:08:13 2008 +0200 24352 24353 MatrixContainer::ParseMatrix(): BUGFIX - line_s_.eof() 24354 24355 Bug was introduced by fixing compiler warnings, were we overlooked changing one line.eof() to lines.eof() in the second nested for-loop 24356 24357 commit d427bdde3cb24cf94d568fcc40e8a7154d5b8670 24358 Author: Frederik Heber <heber@bespin.wiss-staff> 24359 Date: Fri Jun 20 09:08:31 2008 +0200 24360 24361 OutputConfigForListOfFragments(): boundary is now 2.5 Angstroem instead of 5 Angstroem 24362 24363 5A is too huge for the small molecules resulting during the fragmentation process 24364 24365 commit 14d4d4644ea84a22d5937320a9912d6d1b62ef29 24366 Author: Frederik Heber <heber@bespin.wiss-staff> 24367 Date: Mon Jun 16 16:09:27 2008 +0200 24368 24369 BUGFIX: If other databases could not be loaded, no error was produced, resulting in strange behaviour of the fragmentation routine. 24370 24371 Now an error message is produced, though we still continue. The problem was the switch in handling const char * and a huge mess in LoadPeriodenTafel() with strncat and strncpy. 24372 24373 commit edb65060a73f63aabcd848073d037264b4a050f7 24374 Author: Frederik Heber <heber@bespin.wiss-staff> 24375 Date: Fri Jun 13 16:26:50 2008 +0200 24376 24377 some mor changes to fine-tune the cluster generation. 24378 24379 Sadly, VolumeOfConvexEnvelope() is not robust/stable, with Ratio1.4-1/1800K/compundH.*.xyz no usable convex envelope was found but points were connected right through the cluster. 24380 24381 commit 318bfd37d3e5e3924d9bac94b3435c4b628d634e 24382 Author: Frederik Heber <heber@bespin.wiss-staff> 24383 Date: Fri Jun 13 11:18:57 2008 +0200 24384 24385 Final touches for Create Clusters in water 24386 24387 repetition in CreateClustersinWater(), some stuff thrown out in VolumeOfConvexEnvelope (loop to throw out some more points, which does not happen if we take any appearing in at least one BoundaryPoints), some variable declarations shifted to the start of a function, BoundaryPoints are given to functions and if NULL is created by calling GetBoundaryPoints() and free'd subsequently. 24388 24389 commit 6c58125d49933c6c85972c57b3af4f3c937fa82f 24390 Author: Frederik Heber <heber@bespin.wiss-staff> 24391 Date: Thu Jun 12 21:34:36 2008 +0200 24392 24393 Smaller fixes 24394 24395 CreateClustersinWater is now PrepareClustersinWater (as actual suspension is done in VMD still) 24396 BoundaryPoints can be returned or not in VolumeOfConvexEnvelope 24397 24398 commit 110cebe3fea3969bcc2d7a77d60d8d02c0c7734f 24399 Author: Frederik Heber <heber@bespin.wiss-staff> 24400 Date: Thu Jun 12 21:14:46 2008 +0200 24401 24402 VolumeOfConvexEnvelope: Works! 24403 24404 VolumeOfConvexEnvelope has been analysed into various smaller functions and approach is working. 24405 two new files: boundary.?pp 24406 various new functions: 24407 class Tesselation with AddPoint(), TesselateOnBoundary() and GuessStartingTriangle() does the actual tesselation 24408 CreateClustersinWater() will create the repetition of the cluster with correct spacing (unfinished). 24409 GetDiametersOfCluster() calculate the greatest diameter in projection per axis 24410 GetBoundaryPoints() gets the boundary on the convex envelope by projection for a molecular cluster 24411 GetCommonEndpoint() finds the endpoint two lines are sharing 24412 24413 commit bc84e47f9f13a622b8ffa4b250cd9f41bd97cd8d 24414 Author: Frederik Heber <heber@bespin.wiss-staff> 24415 Date: Thu Jun 12 21:14:32 2008 +0200 24416 24417 cosmetics 24418 24419 commit 8eb17a7adbbd9a60923470c82989201886dfb9c8 24420 Author: Frederik Heber <heber@bespin.wiss-staff> 24421 Date: Thu Jun 12 21:13:43 2008 +0200 24422 24423 StorePeriodentafel(): BUGFIX - there still was elements.db instead of define value 24424 24425 commit cdee6b32d79cd13f039afa954391109eedbf8b22 24426 Author: Frederik Heber <heber@bespin.wiss-staff> 24427 Date: Tue Jun 10 13:31:03 2008 +0200 24428 24429 fastparse was not yet working for more than one ion type 24430 24431 moved parsing of ion type numbers before the coordinates parsing loop (prescanning). Bug came due to sequential setting on fastparse 24432 24433 commit 49de64f43390d73584f072908bf52bbacde73c26 24434 Author: Frederik Heber <heber@bespin.wiss-staff> 24435 Date: Tue Jun 10 13:21:32 2008 +0200 24436 24437 VolumeOfConvexEnvelope() finished and tested with SiOH4, 1_2_dimethoxyethane and CSHCluster (Ratio1-1) 24438 24439 commit 233e33e9480b84b60d83d44696ee46721204ee12 24440 Author: Frederik Heber <heber@bespin.wiss-staff> 24441 Date: Tue Jun 10 13:21:13 2008 +0200 24442 24443 fastparse enabled by "-n" 24444 24445 commit 498a9f0a80c4bdd9c53148a9c59c1b7a4a56a22e 24446 Author: Frederik Heber <heber@bespin.wiss-staff> 24447 Date: Tue Jun 10 13:20:12 2008 +0200 24448 24449 some new functions: vector::vector(), vector::ProjectOntoPlane(), vector::One(), vector::Init() 24450 24451 vector::vector() new constructor allowing for setting of components 24452 vector::ProjectOntoPlane() projects vector onto plane described by normal vector 24453 vector::One() sets components to given double 24454 vector::Init() initialised components to given values 24455 24456 commit 3dfad8a4201cfdb6a7b9916e1a68d0087b9cceb1 24457 Author: Frederik Heber <heber@bespin.wiss-staff> 24458 Date: Tue Jun 10 13:15:52 2008 +0200 24459 24460 Revert "some new functions: vector::vector(), vector::ProjectOntoPlane(), vector::One(), vector::Init()" 24461 24462 This reverts commit d11f22c4a97b28e748e8ef9cb37f315ad278ac27. 24463 24464 commit 62c16c6c66c80350d6b87fe7eddb9e936cc4b9ef 24465 Author: Frederik Heber <heber@bespin.wiss-staff> 24466 Date: Tue Jun 10 13:13:41 2008 +0200 24467 24468 enabled fast parsing (-n) 24469 24470 config::Load(): the repetition and thereby impossible setting of "sequential" makes reading of big configs very slow. Hence, a command line parameter can be specified to skip more instances of Ion_Type... 24471 24472 commit 17ce5c7296def2b5de1bec37a2d35a1aa9e78b35 24473 Author: Frederik Heber <heber@bespin.wiss-staff> 24474 Date: Tue Jun 10 13:11:22 2008 +0200 24475 24476 some new functions: vector::vector(), vector::ProjectOntoPlane(), vector::One(), vector::Init() 24477 24478 vector::vector(): another constructor for directly initiating vector 24479 vector::ProjectOntoPlane(): projects a vector onto the planbe defined by a given normal vector 24480 vector::One(): set all components to 1 24481 vector::Init(): initialises vector with given components 24482 24483 commit d52ea1b95c0737e6f74144cdd7c80b914460b1d9 24484 Author: Frederik Heber <heber@bespin.wiss-staff> 24485 Date: Sat Jun 7 15:21:53 2008 +0200 24486 24487 Working version of PAS transformation (tested on C-S-H cluster) and code scaffold of VolumeOfConvexEnvelope that's untested so far 24488 24489 PAS simply calculates inertia tensor, diagonalizes it via GSL and transforms molecule into eigenvector system such that z axis is eigenvector of biggest eigenvalue. 24490 24491 commit 65684fe4aeaaa75d4330f79782835a5a7a1b9d07 24492 Author: Frederik Heber <heber@bespin.wiss-staff> 24493 Date: Sat Jun 7 15:21:33 2008 +0200 24494 24495 these are all smaller fixes due to extensively enabled compiler warnings 24496 24497 e.g. local variable shadows definition of a global one 24498 24499 commit fa40b590ae065d7e32aad6262abe84f43f935ec4 24500 Author: Frederik Heber <heber@bespin.wiss-staff> 24501 Date: Sat Jun 7 15:20:30 2008 +0200 24502 24503 these are all smaller fixes due to extensively enabled compiler warnings 24504 24505 e.g. local variable shadows global (mol::nr by local nr) 24506 and others 24507 24508 commit a19da5d7a0a0600c5861cea9fef8ae21cc04f188 24509 Author: Frederik Heber <heber@bespin.wiss-staff> 24510 Date: Sat Jun 7 15:16:19 2008 +0200 24511 24512 new aclocal macro with controles all the enable-debug/optimization/warning in a unified manner and still keeps packages independent of each other. 24513 24514 Note that Ralf suggested specifying optimizations in CFLAGS directly, due to the load of activateable warnings, i saw it rather fit to make such a configure option. 24515 24516 commit 1f642268e359bca860ac2c8ceb4dd15f33268e0a 24517 Author: Frederik Heber <heber@bespin.wiss-staff> 24518 Date: Mon Jun 2 12:28:29 2008 +0200 24519 24520 <string.h> needed for strncat and companions for gcc-4.3.0 24521 24522 commit 0ba2b0a58c53ca568e683849b188703d2d5af5da 24523 Author: Frederik Heber <heber@bespin.wiss-staff> 24524 Date: Fri May 30 17:48:16 2008 +0200 24525 24526 libblas needed for libgsl is now found via AC_SEARCH_LIB and list blas cblas gslblas gslcblas 24527 24528 commit 5e4058b78eadb943a2301066be5c8ada549f6595 24529 Author: Frederik Heber <heber@bespin.wiss-staff> 24530 Date: Fri May 30 15:51:53 2008 +0200 24531 24532 OutputConfigForListOfFragments(): return of configuration::GetDefaultPath() is checked for NULL 24533 24534 commit 95078ca4732979af555e943b8313bc34ee581d98 24535 Author: Frederik Heber <heber@bespin.wiss-staff> 24536 Date: Fri May 30 15:50:45 2008 +0200 24537 24538 AM_CFLAGS thrown out as warnings are added to CFLAGS in configure-part. Huge changes to make mpi working with given environment variables MPICC and MPILIBS 24539 24540 commit 6b33de20554fbe8605c0a37c1145e9b75c16283f 24541 Author: Frederik Heber <heber@bespin.wiss-staff> 24542 Date: Fri May 30 12:43:34 2008 +0200 24543 24544 LoadPeriodentafel() mixup of cat and cpy orders prevented loading of database with a given path 24545 24546 commit fedd5fbd70ec189e8e4c28aa0b8b94531a943479 24547 Author: Frederik Heber <heber@bespin.wiss-staff> 24548 Date: Fri May 30 12:42:49 2008 +0200 24549 24550 main(): periode is not printed anymore after parsing cmd options, ParseCommandLineOptions(): one extra space after three dots 24551 24552 commit 4b4d6539988f3597846b5269ec16dd92769df1c2 24553 Author: Frederik Heber <heber@bespin.wiss-staff> 24554 Date: Fri May 30 11:03:32 2008 +0200 24555 24556 for bigger molecules listing of found keywords slows things done (yet, parsing is slow nonetheless) 24557 24558 commit 37b5bb45fbac22d3d8ac22472f9899235fde4a17 24559 Author: Frederik Heber <heber@bespin.wiss-staff> 24560 Date: Mon May 26 15:28:28 2008 +0200 24561 24562 renamed ElementsFileName to PathToDatabases, -e now gives path to databases instead of elements d 24563 b file 24564 24565 We rather now give the path and not elements db file as all the databases generally reside in the 24566 same dir. 24567 24568 commit d7d29c8de30f5e13b53d2ff84d98af623ea5518d 24569 Author: Frederik Heber <heber@bespin.wiss-staff> 24570 Date: Mon May 26 15:25:38 2008 +0200 24571 24572 renamed ElementsFileName to PathToDatabases, -e now gives path to databases instead of elements db file 24573 24574 We rather now give the path and not elements db file as all the databases generally reside in the same dir. 24575 24576 commit a2c08448e34b43e5f13d9ce4fd9ad56901b7b761 24577 Author: Frederik Heber <heber@bespin.wiss-staff> 24578 Date: Mon May 26 15:24:33 2008 +0200 24579 24580 BUGFIX: config files' path in the current working directory would not be recognized correctly. 24581 24582 This bug was introduced due to the for-loop speedup. 24583 24584 commit 4ba4a7a4284581071c90e32d20b84638f6535a77 24585 Author: Frederik Heber <heber@bespin.wiss-staff> 24586 Date: Mon May 26 15:23:29 2008 +0200 24587 24588 BUGFIX: single letter FragmentNumbers gave "\n" as return string. 24589 24590 This bug was introduced when we changed the code from for(..=0; ... < bla; i++) to for (..=i..;i--;) 24591 24592 commit 27c6bed417eee81579045472e65747039fcf60db 24593 Author: Frederik Heber <heber@bespin.wiss-staff> 24594 Date: Mon May 26 15:23:02 2008 +0200 24595 24596 Some sensible starting values for element class construct 24597 24598 commit 0329bfbf7e293c546e599210029dabc0faefc481 24599 Author: Frederik Heber <heber@bespin.wiss-staff> 24600 Date: Mon May 26 15:22:31 2008 +0200 24601 24602 new define LocalPath being the local path for pointers to set to (like PathToDatabases) 24603 24604 commit 1e9384a6e32201e86eeb94aa0ab96989b3343686 24605 Author: Frederik Heber <heber@bespin.wiss-staff> 24606 Date: Mon May 26 15:22:10 2008 +0200 24607 24608 bit more verbosity on the FragmentNumber 24609 24610 commit c9c643a515314f6e3a2907ebf2b3bb5e708d0b2d 24611 Author: Frederik Heber <heber@bespin.wiss-staff> 24612 Date: Mon May 26 15:21:19 2008 +0200 24613 24614 fragmentation no more has various methods (dropped ... A) 24615 24616 commit 9a1b84acd58750f8b8a589c26f814bdd50c82f9b 24617 Author: Frederik Heber <heber@bespin.wiss-staff> 24618 Date: Mon May 26 15:20:10 2008 +0200 24619 24620 BUGFIX: line.erase() threw exception with illegal line end 24621 24622 Found by test case (molecuilder test 3), just do it the more complicated way. 24623 24624 commit a251a3154c4639182ac91a4c9a60749cf9f1f0aa 24625 Author: Frederik Heber <heber@bespin.wiss-staff> 24626 Date: Mon May 26 12:52:00 2008 +0200 24627 24628 molecule::CreateAdjacencyList() now needs IsAngstroem as parameter 24629 24630 This is necessary, as the database values (covalent radii et al) are in Angstroem, hence don't match if we use Bohrradii as length unit instead. CreateAdjacencyList() converts units and now finds correct bond structure and fragments properly. 24631 24632 commit 040f939737e2f25b621255cb260f20f4a72946cc 24633 Author: Frederik Heber <heber@bespin.wiss-staff> 24634 Date: Sat May 24 14:31:46 2008 +0200 24635 24636 removed specialised CFLAGS for general AM_C(PP)FLAGS that just enable all warnings 24637 24638 commit 7f3b9d586ee7b40daaed7e586efd3f0d178326f6 24639 Author: Frederik Heber <heber@bespin.wiss-staff> 24640 Date: Fri May 23 11:17:19 2008 +0200 24641 24642 Lots of for loops now count in reverse order where it does not matter, some 3 -> NDIM 24643 24644 for(i=0;i<var;i++) is slower than for (i=var;i--;) if the order of the i's is not important (note: i-- is also a value and it stops when on i == 0 automatically) 24645 in builder.cpp there were some remnant 3 actually meant to be NDIM 24646 24647 commit 6097eacc1c3d8c67ad1c8af97ace6fd74bc97add 24648 Author: Frederik Heber <heber@bespin.wiss-staff> 24649 Date: Wed May 21 13:18:11 2008 +0200 24650 24651 ParseMatrix(): char * to string, Contains() hat KeySetContainer:: still in front (new g++ of hardy complained) 24652 24653 commit ca2b8351d36cdb8ecccc8ba4a307064e6a6fcdad 24654 Author: Frederik Heber <heber@bespin.wiss-staff> 24655 Date: Wed May 21 13:15:32 2008 +0200 24656 24657 command line parsing outsourced to ParseCommandLineOptions(), cases in main() listed in alphabetical order, setting of cell_size by hand replaced through already present SetDimension() 24658 24659 new function ParseCommandLineOptions() does the command line parsing, subsequently some variables weren't needed anymore in main(). 24660 sorted the cases in switch in main() of the interactive menu in alphabetical order. 24661 In 't'ranslate and 'c'enter cases, SetDimension() and by-hand setting cell_size was present. The later was thrown out 24662 24663 commit a9d2544724995d2401c4c0710adbfb2b1becee68 24664 Author: Frederik Heber <heber@bespin.wiss-staff> 24665 Date: Wed May 21 13:14:06 2008 +0200 24666 24667 new function CenterInBox, some char* converted to string 24668 24669 CenterInBox centers the given geometry in a rectangular box of given edge lengths 24670 new g++ that came with ubuntu hardy complained about deprecated use of char* instead of string (for constant char arrays such: "test") 24671 24672 commit 3b67a19c331349c124108e1936b2e8eab25ec373 24673 Author: Frederik Heber <heber@bespin.wiss-staff> 24674 Date: Wed May 21 13:13:17 2008 +0200 24675 24676 new vector header added to molecuilder_SOURCES 24677 24678 commit cf2de5c1bfe1d8b2db947be6a7521e3f09095598 24679 Author: Frederik Heber <heber@bespin.wiss-staff> 24680 Date: Wed May 21 13:12:54 2008 +0200 24681 24682 one lousy space added 24683 24684 commit 342f33f9b32f60351e5e75e68fc61b2624f2d554 24685 Author: Frederik Heber <heber@bespin.wiss-staff> 24686 Date: Wed May 21 11:24:54 2008 +0200 24687 24688 new header file for the vector class, new operators +=,*=,*,+ 24689 24690 commit 98b1d274f2a40b91f0e41792478e05950bffb599 24691 Author: Frederik Heber <heber@bespin.wiss-staff> 24692 Date: Fri May 16 15:35:43 2008 +0200 24693 24694 main(): typo in Usage message, BUGFIX - command line arguments did not end in exit and flag renamed to ExitFlag 24695 24696 BUGFIX - problem was flag > 1 instead of flag >= 1 check 24697 24698 commit 0b051479db2dcd5879e76693155b80d3b0d8cc6d 24699 Author: Frederik Heber <heber@bespin.wiss-staff> 24700 Date: Fri May 9 16:38:27 2008 +0200 24701 24702 CyclicStructureAnalysis(): forget to check whether we actually have found rings or not (only then MinimumRingSize needs to be checked for non-set neighbours also) 24703 24704 commit fc850d10e0fcb47d27b1b6baf17186a20debf1ea 24705 Author: Frederik Heber <heber@bespin.wiss-staff> 24706 Date: Fri May 9 16:20:08 2008 +0200 24707 24708 MinimumRingSize is now an array over all atoms 24709 24710 Each entry in MinimumRingSize defines the maximum bond order possible due to membership in or vicinity to a ring. In order to do create this array, CyclicStructureAnalysis() was expanded with another BFS going over all atoms that are only close to a ring (nearest ring member is search and entri in array set). All other functions such as DepthFirstSearchAnalysis() and FragmentBOSSANOVA(), where the MinimumRingSize is now checked (and not in FragmentMolecule) anymore, are adapted to have an array parameter. 24711 24712 commit de293ac530466215e29d973ad379a2e65165a40c 24713 Author: Frederik Heber <heber@bespin.wiss-staff> 24714 Date: Fri May 9 15:49:57 2008 +0200 24715 24716 TranslateIndicesToGlobalIDs() did not check whether FragmentList[..] != NULL 24717 24718 commit f30216592247d6e5e03bad30325a3cd465013fa4 24719 Author: Frederik Heber <heber@bespin.wiss-staff> 24720 Date: Fri May 9 14:50:42 2008 +0200 24721 24722 joiner now writes ENERGYPERFRAGMENT file for adaptive BOSSANOVA 24723 24724 commit bf2db1e99c572bcefe2ba34b3c1a8026d8b90dbe 24725 Author: Frederik Heber <heber@bespin.wiss-staff> 24726 Date: Fri May 9 14:50:16 2008 +0200 24727 24728 CreateDataFragment(): endline after datum in header 24729 24730 commit 396d06593ac8e4bfc3f523f3be261ca555407c48 24731 Author: Frederik Heber <heber@bespin.wiss-staff> 24732 Date: Fri May 9 14:49:46 2008 +0200 24733 24734 ENERGYPERFRAGMENT without ".dat" 24735 24736 commit 6f6a8ee98e006ee7598831d5e56396ead5ffa6c8 24737 Author: Frederik Heber <heber@bespin.wiss-staff> 24738 Date: Fri May 9 14:49:30 2008 +0200 24739 24740 some comments for where "F" and where "E" terms are created 24741 24742 commit 5de3c9715484117abab874d386126879cace7a9f 24743 Author: Frederik Heber <heber@bespin.wiss-staff> 24744 Date: Thu May 8 19:31:04 2008 +0200 24745 24746 molecule::CheckOrderAtSite() now interprets negative Orders as adaptive increase by parsing EnergyPerFragment.da 24747 t 24748 24749 positive Order is global increase till all sites have at least this order, Order 0 means single global increase step, negative Order is the exponent in 10^{-Order} to give the threshold value: ENERGYPERFRAGMENT is scanned in 24750 to a map (sorted by values) and all fragments still above the threshold are taken into AtomMask for increase. Jo 24751 iner has to write this file with (Root id of Fragment, energy contribution) pairs. 24752 24753 commit a529de23ab0454b5100271094a23f2836cfca2e9 24754 Author: Frederik Heber <heber@bespin.wiss-staff> 24755 Date: Thu May 8 18:18:07 2008 +0200 24756 24757 molecule::CheckOrderAtSite() returns bool and used as threshold criterium to break while in molecule::FragmentMolecule() 24758 24759 As we are now near the end of the switch to adaptive increase of the bond order, the first step was to increment the OrderAtSite on all sites equally. This is now implemented. CheckOrderAtSite() checks whether the order is still below the desired value at one site and if so continues. In this while-loop we fill the RootStack and call BOSSANOVA. The sequence of AssignKeySets.. and FillRootStack... was flipped for this. 24760 24761 commit bf46daa8afbb82c7de05fbedc890325cd98c83eb 24762 Author: Frederik Heber <heber@bespin.wiss-staff> 24763 Date: Thu May 8 17:52:11 2008 +0200 24764 24765 new function molecule::CreateMappingLabelsToConfigSequence() creates SortIndex in molecule::FragmentMolecule() 24766 24767 further and now final abstraction of FragmentMolecule() 24768 24769 commit 87f6c98765e07307ce97e48dcfbb5a4069cdcfac 24770 Author: Frederik Heber <heber@bespin.wiss-staff> 24771 Date: Thu May 8 17:39:36 2008 +0200 24772 24773 new function MoleculeLeafClass::TranslateIndicesToGlobalIDs() used in molecule::FragmentMolecule() 24774 24775 MoleculeLeafClass::TranslateIndicesToGlobalIDs() abstractizes translation of local atom::nr returned by BOSSANOVA per fragment into one list of global indices that can be used to store fragment configs and globally valid keyset file 24776 24777 commit da5355158c7aa76269ad1823da9a96b5ac114691 24778 Author: Frederik Heber <heber@bespin.wiss-staff> 24779 Date: Thu May 8 17:26:55 2008 +0200 24780 24781 new functions MoleculeLeafClass::AssignKeySetsToFragment() and MoleculeLeafClass::FillListOfLocalAtoms() and molecule::OutputListOfBonds(), Count() now const 24782 24783 commit df2fcae341603b39aa6e7c81927780a4b56e6472 24784 Author: Frederik Heber <heber@bespin.wiss-staff> 24785 Date: Thu May 8 17:25:00 2008 +0200 24786 24787 FragmentMolecule(): abstractized AssignKeySetsToFragments() and shifted some memory deallocation around 24788 24789 MoleculeLeafClass::AssignKeySetsToFragments() now does the splitting up of the keysets into FragmentList[] array 24790 some memory dealloaction (ListOfLocalAtoms) was shifted up a bit, closer to where it's not needed anymore. 24791 some comments changed and some more output included 24792 24793 commit d2a2942f50d4672158abc620f6af83d3524d381b 24794 Author: Frederik Heber <heber@bespin.wiss-staff> 24795 Date: Thu May 8 17:22:41 2008 +0200 24796 24797 new function FillListOfLocalAtoms() checks whether List needs filling or is already present, Count() const 24798 24799 Count() is now Count() const 24800 new function FillListOfLocalAtoms() checks for NULL pointers and if found fills the list by calling CreateFatherLookupTable() 24801 24802 commit fc130990ba824f75d8475b8f7f294eb379c3352b 24803 Author: Frederik Heber <heber@bespin.wiss-staff> 24804 Date: Thu May 8 14:45:52 2008 +0200 24805 24806 MoleculeLeafClass::FillRootStackForSubgraphs used to remove filling of root stack (abstraction) 24807 24808 commit 4a54f335bc5cd305916789ff44d100d50a98b477 24809 Author: Frederik Heber <heber@bespin.wiss-staff> 24810 Date: Thu May 8 14:45:25 2008 +0200 24811 24812 new functions MoleculeLeafClass::Count() and MoleculeLeafClass::FillRootStackForSubgraphs() 24813 24814 Count: counts leaves in chain list 24815 FillRootStackForSubgraphs: fills root stack array from atom's in each fragment/subgraph 24816 24817 commit 386aa29d1bbd5ac0019a7d04316e3f8d45a5c442 24818 Author: Frederik Heber <heber@bespin.wiss-staff> 24819 Date: Thu May 8 14:41:47 2008 +0200 24820 24821 FillBondStructureFromReference: previous == NULL was bad idea, new functions Count() and FillRootStackForSubgraphs() 24822 24823 FillBondStructureFromReference: checking previous == NULL if we are the first is bad due to starting node (with mpty leaf) being actual previous, hence we decrease FragmentCounter before return, thus climb up the ladder and then down again and free in this course. Initial list pointer is free'd if FragmentCounter == 0: much better! 24824 Count: simply counts the number of further leaves in the chain list, also by the neat recursive trick 24825 FillRootStackForSubgraphs: Fills a rootstack by going through the leaves of a subgraph and checking on their atom's father's atom::AdaptiveOrder against given Order. This is further abstraction for molecule::FragmentMolecule() 24826 24827 commit 9fcf479595dd39cf6703677eb220251fac77a2e7 24828 Author: Frederik Heber <heber@bespin.wiss-staff> 24829 Date: Thu May 8 14:04:42 2008 +0200 24830 24831 new function molecule::CheckOrderAtSite and molecule::FragmentMolecule() abstractized 24832 24833 molecule::CheckOrderAtSite() just checks a given order against atom:AdaptiveOrder and whether there's still something to do for the fragmentation. 24834 MoleculeLeafClass::FillBondStructureFromReference, CreateFatherLookupTable, along with the molecule::CheckOrderAtSite are used to make the structure of molecule::FragmentMolecule clearer 24835 24836 commit c82f3d1d590c3a59b332f8f562e3ffddb0d32ec3 24837 Author: Frederik Heber <heber@bespin.wiss-staff> 24838 Date: Thu May 8 14:02:43 2008 +0200 24839 24840 new function MoleculeLeafClass::FillBondStructureFromReference that fills the bond structure of subgraphs from total molecule 24841 24842 new function to abstractize molecule::FragmentMolecule more and more as the function lacks structure 24843 24844 commit 8f75a455e44b75b6288faf0238bb8c86627a4a49 24845 Author: Frederik Heber <heber@bespin.wiss-staff> 24846 Date: Thu May 8 14:01:42 2008 +0200 24847 24848 new function CreateFatherLookupTable 24849 24850 Creates a lookup table for true father's atom:nr -> atom, which is used during the molecule::FragmentMolecule lateron. Implemented as a template to be used not only for atoms but also for bonds and others 24851 24852 commit fe5589e98fa7bb039905c2aa66d94af21115550d 24853 Author: Frederik Heber <heber@bespin.wiss-staff> 24854 Date: Thu May 8 14:00:24 2008 +0200 24855 24856 Matrix::ParseMatrix()L: comment makes it clearer at what fragment with which index something went awry 24857 24858 commit 8d9c387d8b2dbb15d2d71353f662bda798b156f8 24859 Author: Frederik Heber <heber@bespin.wiss-staff> 24860 Date: Wed May 7 16:46:33 2008 +0200 24861 24862 rewritten CyclicStructureAnalysis(): uses DFS spanning tree and limited BFS from all back edges 24863 24864 The DFS tree is given via a StackClass and from each BackEdge a BFS is started to find the leftatom from rightatom but not by taking BackEdge itself. Hence, it finds the smallest circle and returns it. 24865 Also, it limits itself by constantly redefining MinimumRingSize as the minimum of this and the current RingSize. 24866 Tested to good results on buckyball. And may easily be enhanced to scanning and returning all rings (but so far we only need the minimum ring size). 24867 24868 commit 6d35e462d5c89a48ff8212fab4811f87fdab291e 24869 Author: Frederik Heber <heber@bespin.wiss-staff> 24870 Date: Wed May 7 15:38:13 2008 +0200 24871 24872 AtomStackClass -> template <typename T> StackClass<T> change in new file stackclass.hpp, other templates to helpers.hpp 24873 24874 StackClass was changed to a template and as template code may only be present in header file was moved to a new 24875 header file stackclass.hpp. New file was added to Makefile.am 24876 Other templates (list management et al) were moved to helpers.hpp as they are more sensibly placed there. 24877 24878 commit db066d756f5b01d67a9bcb1ea28c9571452a3762 24879 Author: Frederik Heber <heber@bespin.wiss-staff> 24880 Date: Wed May 7 15:35:09 2008 +0200 24881 24882 changed comments a bit 24883 24884 commit 7b42617324deb08ac411bdd2181e40d58b221499 24885 Author: Frederik Heber <heber@bespin.wiss-staff> 24886 Date: Tue May 6 11:48:00 2008 +0200 24887 24888 MatrixContainer::MatrixContainer() debug message fixes only, ForceMatrix::ParseIndices() re-done parsing of Forces-Factors file 24889 24890 ParseIndices() was hacked down to just ...[j]=j entries in the belief that we do not need ForcesFactors anymore. However, we do due to the saturated hydrogen and hence the index parsing thrown out before is needed again. This caused joiner to return faulty forces of course. 24891 24892 commit 63382d0f3121ce63d14ba9c280087cae6a4c3794 24893 Author: Frederik Heber <heber@bespin.wiss-staff> 24894 Date: Tue May 6 11:45:31 2008 +0200 24895 24896 KeySetFile is stored without an additional last tab on each line 24897 24898 commit 3c4b089ee6460a3d67b5db52602da06a85904fe5 24899 Author: Frederik Heber <heber@bespin.wiss-staff> 24900 Date: Mon May 5 18:54:44 2008 +0200 24901 24902 joiner crashed due to incorrect destructing of MatrixContainer, analyzer did not initialise KeySets in ParseKeySets 24903 24904 joiner crashed as ParseMatrix would return without free'ing initialized Matrix and RowCounter when suffix file cannot be opened. Now, they are initialized in such a manner that ~MatrixContainer recognizes and free's them 24905 analyzer would stumble afgter parsing keysets on the order, as he was looking for -1 to which KeySets was not properly initialized but what should be read from KeySets file. 24906 Also, analyzer would parse the final tab as a number which rendered nonsense. Hence, StoreKeySetFile does not ptroduce a tab after last entry per line anymore 24907 24908 commit 2459b1b8b885ddb84c9c4feab2f53d9d08d718c0 24909 Author: Frederik Heber <heber@bespin.wiss-staff> 24910 Date: Mon May 5 18:19:05 2008 +0200 24911 24912 ForcesFile and TEFactors are _needed_, reincorporated. UniqueFragments structure is now in BOSSANOVA 24913 24914 ForcesFile is again written, as we need it for the hydrogen not coming saturation (forces!) 24915 TEFactors are back, as despite my notion they are needed in the evaluation 24916 UniqueFragments structure is shifted from PowerSetGenerator to FragmentBOSSANOVA. Actually only for the labels - however, the if was changed to test the real indices (which are also always the same, which is better for adaptive runs) - but might be more useful there still. 24917 analyzer and joiner again parse indices. 24918 24919 commit bd65791c80eaf19f1799a7c9599f95606c4a4796 24920 Author: Frederik Heber <heber@bespin.wiss-staff> 24921 Date: Fri May 2 17:18:27 2008 +0200 24922 24923 Free(): only set to NULL if it was free'd otherwise it is already 24924 24925 commit 3b15bb4271e1d6dbd035284767a09bd363a96360 24926 Author: Frederik Heber <heber@bespin.wiss-staff> 24927 Date: Fri May 2 17:18:05 2008 +0200 24928 24929 ~MatrixContainer(): Bugfix - Free if Matrix[MatrixCounter] would also occur if nothing had been allocated so far 24930 24931 commit e6f8b7cccc1dd036398666e6e573bb4b48074037 24932 Author: Frederik Heber <heber@bespin.wiss-staff> 24933 Date: Fri May 2 15:35:10 2008 +0200 24934 24935 commenting in header changed for the four main functions that basically do the fragmentation 24936 24937 commit db942effae4d25e57224c90078ac288434a4a783 24938 Author: Frederik Heber <heber@bespin.wiss-staff> 24939 Date: Fri May 2 15:25:48 2008 +0200 24940 24941 HUGE REWRITE to allow for adaptive increase of the bond order, first working commit 24942 24943 Lots of code was thrown out: 24944 -BottomUp, TopDown and GetAtomicFragments 24945 -TEFactors are now used as "CreationCounters", i.e. the count how often a fragment as been created (ideal would be only once) 24946 -ReduceToUniqueOnes and stuff all thrown out, since they are out-dated since use of hash table 24947 Other changes: 24948 -CreateListofUniqueFragments renamed to PowerSetGenerator 24949 -PowerSetGenerator goes not over all reachable roots, but one given by calling function FragmentBOSSANOVA 24950 -FragmentBOSSANOVA loops over all possible root sites and hands this over to PowerSetGenerator 24951 -by the virtue of the hash table it is not important anymore whether created keysets are unique or not, as this is recognized in log(n). Hence, the label < label is not important anymore (and not applicable in an adaptive scheme with old, parsed keysets and unknown labels) (THIS IS HOWEVER NOT DONE YET!) 24952 The setup is then as follows: 24953 1. FragmentMolecule 24954 a. parses adjacency, keysets and orderatsite files 24955 b. performs DFS to find connected subgraphs (to leave this in was a design decision: might be useful later) 24956 c. a RootStack is created for every subgraph (here, later we implement the "update 10 sites with highest energy contribution", and that's why this consciously not done in the following loop) 24957 d. in a loop over all subgraphs 24958 d1. calls FragmentBOSSANOVA with this RootStack and within the subgraph molecule structure 24959 d2. creates molecule (fragment)s from the returned keysets (StoreFragmentFromKeySet) 24960 e. combines the generated molecule lists from all subgraphs 24961 f. saves to disk: fragment configs, adjacency, orderatsite, keyset files 24962 2. FragmentBOSSANOVA 24963 a. constructs a complete keyset of the molecule 24964 b. In a loop over all possible roots from the given rootstack 24965 b1. increases order of root site 24966 b2. calls PowerSetGenerator with this order, the complete keyset and the rootkeynr 24967 b3. for all consecutive lower levels PowerSetGenerator is called with the suborder, the higher order keyset as the restricted one and each site in the set as the root) 24968 b4. these are merged into a fragment list of keysets 24969 c. All fragment lists (for all orders, i.e. from all destination fields) are merged into one list for return 24970 3. PowerSetGenerator 24971 a. initialises UniqueFragments structure 24972 b. fills edge list via BFS 24973 c. creates the fragment by calling recursive function SPFragmentGenerator with UniqueFragments structure, 0 as root distance, the edge set, its dimension and the current suborder 24974 d. Free'ing structure 24975 4. SPFragmentGenerator (nothing much has changed here) 24976 a. loops over every possible combination (2^dimension of edge set) 24977 a1. inserts current set, if there's still space left 24978 a11. yes: calls SPFragmentGenerator with structure, created new edge list and size respective to root distance+1 24979 a12. no: stores fragment into keyset list by calling InsertFragmentIntoGraph 24980 a2. removes all items added into the snake stack (in UniqueFragments structure) added during level (root distance) and current set 24981 24982 commit 260934983a76c25770b6a1f5706e2fc4eb1eecec 24983 Author: Frederik Heber <heber@bespin.wiss-staff> 24984 Date: Tue Apr 29 14:31:38 2008 +0200 24985 24986 Velocities were not correctly handled, also not in fragments 24987 24988 First bug was loading config with velocities and saving it resulted in all but first component of velocity vecto 24989 r being zero. Flag=2 was re-introduced in command line switching to prevent saving after fragmentation (as nothi 24990 ng is done with the original molecule anyway). This removed the bug completely (which is thus kind of mysterious 24991 in nature). Now, corresponding atoms in fragments have the correct velocities (also replaced hydrogens) 24992 24993 commit c750cc774f9938a4ce5ee5ed6083cd050554830e 24994 Author: Frederik Heber <heber@bespin.wiss-staff> 24995 Date: Tue Apr 29 14:19:51 2008 +0200 24996 24997 char lengths of 255 and MAXDUMMYSTRING replaced with define MAXSTRINGSIZE in molecuilder and pcp 24998 24999 commit 451148c889a1e260d1c4a7372972a3c1e05c9c64 25000 Author: Frederik Heber <heber@bespin.wiss-staff> 25001 Date: Tue Apr 29 09:55:34 2008 +0200 25002 25003 Store/CheckAdj...() now also incorporate bond order to check against. 25004 25005 commit 1fa5b7de584643a09dcfb4bcfcd3194ca070ffc2 25006 Author: Frederik Heber <heber@bespin.wiss-staff> 25007 Date: Tue Apr 29 09:55:11 2008 +0200 25008 25009 config file is again first argument and implemented test of interactive session 25010 25011 commit 4885953476621842a73cecc5177c8cd1f40a0ac5 25012 Author: Frederik Heber <heber@bespin.wiss-staff> 25013 Date: Tue Apr 29 09:45:23 2008 +0200 25014 25015 changed config file to first argument again and standard config name incorporated. 25016 25017 ./molecuilder -e elements.db is hard to scan whether elements.db is the config file or a further argument, hence switch-back to old method of having it in the first place. (this also matches all the scripts written so far again). 25018 25019 commit 04980c7adb06383804e437abc26b93ee9a461f6c 25020 Author: Frederik Heber <heber@bespin.wiss-staff> 25021 Date: Tue Apr 29 09:41:20 2008 +0200 25022 25023 bugfix: configpath and -name are not set to empty string. 25024 25025 commit 6590bee765825bf3573feb664f40520835c1740c 25026 Author: Frederik Heber <heber@bespin.wiss-staff> 25027 Date: Tue Apr 29 09:16:32 2008 +0200 25028 25029 bugfix in main: without arguments, code would crash due to access of argv[1] 25030 25031 This bug was introduced because of the huge changes in the command line parsing. Changed the beginning if (argv >= 1) to >1 and put element db and configpath/name scan into else statement. 25032 25033 commit 3c1dfbeb63a79308ac499024831bea130a5317f9 25034 Author: Frederik Heber <heber@bespin.wiss-staff> 25035 Date: Tue Apr 29 09:06:18 2008 +0200 25036 25037 Full test for fragmentation procedure with readin of the adjacency file. 25038 25039 The test is still a bit of a hack (with moving BondFragment*-files and diff'ing them), but so far it works very well. A test structure is generated, till bond order 2 fragmented, the configs are moved away, fragmented again by reading adjacency, and the new configs are diff'ed against the old ones. 25040 25041 commit b5ecd9d11046feffd27e5a7968e986cb5322b501 25042 Author: Frederik Heber <heber@bespin.wiss-staff> 25043 Date: Tue Apr 29 09:04:59 2008 +0200 25044 25045 configname is also stored in config structure, GetDefaultPath by config::configpath replaced 25046 25047 This stores fragment and affiliated files in same dir as the config, regardless of therein contained paths and is safer and makes the tests work. 25048 25049 commit 2910e0b93cafde370ccfe424f2452b4e74b54a83 25050 Author: Frederik Heber <heber@bespin.wiss-staff> 25051 Date: Tue Apr 29 08:57:59 2008 +0200 25052 25053 Comply with test again: help and version command options exit at once 25054 25055 This had been changed to just flag=2 for this, as molecule and periodentafel structures were not free'd, but this broke the test, so we changed it back and added some delete()s. 25056 25057 commit 5b15abd736e431efbf95ee359dc600e887d01a25 25058 Author: Frederik Heber <heber@bespin.wiss-staff> 25059 Date: Tue Apr 29 08:30:38 2008 +0200 25060 25061 config::Load..() now get filename instead of pointer to file, bugfix for switch structure in command line parsin 25062 g. 25063 25064 Load..() functions RetrieveConfigPath() - the path that is given for the config file on the command line - and p 25065 ut it into config::configpath. This is necessary to allow later for a sensible storage path under fragmentation, as the old with defaultpath from the file was stupid, if the given path was wrong (whereas the config path always exists). 25066 Switch structure in parsing the command line options needed to make better use of the already present flag in or 25067 der to know when to just save and stop and when to continue to the interactive menu. 25068 25069 commit 5550635707d249fbddac61f337f123ec13876725 25070 Author: Frederik Heber <heber@bespin.wiss-staff> 25071 Date: Mon Apr 28 15:53:54 2008 +0200 25072 25073 Atoms in the fragments in the configs are again ordered as first labeled during Bond structure recognition 25074 25075 Due to the move to disconnected subgraph recognition an additional "layer" of molecules is inserted. The Atoms are AddCopyAtom()ed into new molecules representing each subgraph and receiving new labels thereby (even if there is just one subgraph in the end). As these labels were used in the sorted "KeySet" sets for adding atoms on the one hand, the KeySet file on the other hand however was created from the molecules directly now with labels from the topmost molecule structure ... : lines in BondFragment configs were swapped with respect to freshly fragmented and parsed from KeySet files. 25076 Do ameloriate this, the StoreFragmentFromKeySet procedure was taken out of FragmentBOSSANOVA() and up into FragmentMolecule(), where the uppermost molecular structure is accessible. At the same time, the topmost labels (via GetTrueFather) are used in the KeySets. Thus, we receive again ordered list of atoms in each fragment config and they match perfectly with those re-created from parsed keyset files (check with diff over all BondFragment*.conf*). 25077 25078 commit c67e1673793e02762e260fdf179ea566a38cffff 25079 Author: Frederik Heber <heber@bespin.wiss-staff> 25080 Date: Mon Apr 28 15:46:05 2008 +0200 25081 25082 removed some output lines (commented-out) mostly in ScanForPeriodicCorrection, CenterEdge, AddHydrogenReplacement and StoreFragmentFromKeySet 25083 25084 commit 140e34d94a3c8db06bd911101ae23f20deb57a9e 25085 Author: Frederik Heber <heber@bespin.wiss-staff> 25086 Date: Mon Apr 28 13:39:07 2008 +0200 25087 25088 FragmentMolecule(): status variable used when checking adjacency file was faulty used 25089 25090 After the splitting up into new functions StoreAdj...() and CheckAdj...(), status was not used properly anymore. Now, it gathers per AND conjunction the status of the three steps (ill ListOfAtoms, CheckAdj, ParseKeySets). 25091 25092 commit 10f6416d40d305bb1142dd1702e26b15d8bb910d 25093 Author: Frederik Heber <heber@bespin.wiss-staff> 25094 Date: Mon Apr 28 13:36:11 2008 +0200 25095 25096 All filenames (const char *) have been transferred to defs.hpp 25097 25098 Filenames have been transformed into #define's into order to centralise these values. Parser.hpp had these already and they were streamlined to match defs.hpp (which is now included in parser.hpp) 25099 25100 commit b0a0c3848d8b7c7dd67aad39324d6c2a6b8f507a 25101 Author: Frederik Heber <heber@bespin.wiss-staff> 25102 Date: Mon Apr 28 12:41:40 2008 +0200 25103 25104 storing and comparing Adjacency outsourced into two new functions. 25105 25106 New functions: 25107 - StoreAdjacencyToFile(): stores the current bond structure into a file 25108 - CheckAdjacencyFileAgainstMolecule(): parses an adjacency list from a file and compares against present bond st 25109 ructure of the molecule 25110 25111 commit 183f35941c82e11c9c474c42c5bccbe92689a8d1 25112 Author: Frederik Heber <heber@bespin.wiss-staff> 25113 Date: Mon Apr 28 11:22:38 2008 +0200 25114 25115 FragmentMolecule(): Adjacency store/check and parsing of KeySetFile incorporated 25116 25117 - StoreFragmentFromKey_S_et() renamed 25118 - StoreFragmentFromKeySet() now does not get whole config structure as parameter but only needed IsAngstroem value 25119 - two new functions: 25120 ScanBufferIntoKeySet() - scans a text line of numbers into a KeySet deque 25121 ParseKeySetFile() - parses a file of the above lines, fills each into a KeySet and spills out fragment molecules by calling StoreFragmentFromKeySet() 25122 - FragmentMolecule(): Adjacency file written, read and checked if it matches the just created bond structure. If so, then we don't fragment again but parse the KeySetFile and reconstruct fragments thereby. 25123 25124 commit 08f1a0a71552716eafe64ce87071d4c20b4150b9 25125 Author: Frederik Heber <heber@bespin.wiss-staff> 25126 Date: Mon Apr 28 11:18:10 2008 +0200 25127 25128 main(): thrown out unused stringstreams prefix and line 25129 25130 commit a8aac8d768159ee96f928c92bb1fde6ab4e08835 25131 Author: Frederik Heber <heber@bespin.wiss-staff> 25132 Date: Mon Apr 28 09:16:42 2008 +0200 25133 25134 OutputConfigForListOfFragments(): various ofstream gathered into a single one: output 25135 25136 Preparation for adding "AdjacencyFile" next 25137 25138 commit f3cba66fdc98cfc127e0bb5bccc5ea5c320130f8 25139 Author: Frederik Heber <heber@bespin.wiss-staff> 25140 Date: Sun Apr 27 15:05:46 2008 +0200 25141 25142 forgot to commit the actual autotest files listed during last commit, that make "make check" work. 25143 25144 commit 0ca39c907892a993150e58581896f58b0287b21f 25145 Author: Frederik Heber <heber@bespin.wiss-staff> 25146 Date: Sun Apr 27 15:04:01 2008 +0200 25147 25148 Complete test kit (make check) for the three parts: pcp, molecuilder, utilites is incorporated via autotest 25149 25150 In directory tests of each subdir there are the following files: 25151 - atlocal.in: sets some variables such as prefix and others via automake and configure for the tests 25152 - Makefile.am: Hooks for the checks and automatic generation of package.m4 25153 - <exe>.in: Wrapper for the executable, for correct paths and so on 25154 - testsuite.at: the actual tests in a similar grammar to autoconf 25155 25156 commit 96838df2b95a71fefc16c7500c7df703e8219638 25157 Author: Frederik Heber <heber@bespin.wiss-staff> 25158 Date: Sun Apr 27 15:01:06 2008 +0200 25159 25160 AddXYZFile(): Bugfix - if element could not be parsed (e.g. elements db was not loaded correctly) 25161 25162 This has so far not spawned an error message, now it does and atom's element is set to hydrogen. 25163 25164 commit 206887fd8da59e69a4f69ac80c1cc173265fc53e 25165 Author: Frederik Heber <heber@bespin.wiss-staff> 25166 Date: Sun Apr 27 14:59:40 2008 +0200 25167 25168 Load/StorePeriodentafel(): filename as parameter, if NULL default name in pwd is used 25169 25170 commit 73f80e7abed54d6843f6a2911d1e001bb32914c9 25171 Author: Frederik Heber <heber@bespin.wiss-staff> 25172 Date: Sun Apr 27 14:59:18 2008 +0200 25173 25174 new elementsdb-switch and command line options parsing parts moved around to accomodate. 25175 25176 New switch (just sets a variable) made some moving around necessary. Elements db cannot be parsed right at the start anymore, neither the config file before the command line switches. Hence, the following is now in operation: 25177 1. first parse through all options for stuff just setting variables, giving help et al 25178 2. parse elements db 25179 3. parse config file if present 25180 4. parse again through options for those that actually operate on a given configuration or add atoms (parsing xyz) ... 25181 This was necessary, as 'make check' could not be made workable otherwise and its "bad behaviour" if the code assumes the elements.db to be in the same dir as the exe. 25182 25183 commit cf959d5dddf3381f8d96dab490a9f29308e56d8a 25184 Author: Frederik Heber <heber@bespin.wiss-staff> 25185 Date: Sun Apr 27 14:53:53 2008 +0200 25186 25187 Load/StorePeriodentafel(): filename as parameter, if NULL default name in pwd is used 25188 25189 Filename is NULL by default or parsed on command line (new -e switch). It was necessary because of command line test (make check), as elements.db is not in the same dir. Also, opening of files is checked and a related status returned for both functions. 25190 25191 commit dbe929ff6db6c4da014f56f595de7f279f3f76e3 25192 Author: Frederik Heber <heber@bespin.wiss-staff> 25193 Date: Fri Apr 25 15:54:51 2008 +0200 25194 25195 Huge rewrite of initial command line parsing 25196 25197 config file argument is now the last one. Additionally, multiple command line options may be given consecutively (i.e. -t 1 1 1 -c 5 5 5), which is done via a while loop. Also, empty config files (if given filename is not present or with unknown syntax) are checked and status stored in enumerate ConfigStatus. This is used later as certain command line options only are possible if there has been read a valid configuration. 25198 25199 commit 7151c4d1599615f43467a66e761b7bd1821684ca 25200 Author: Frederik Heber <heber@bespin.wiss-staff> 25201 Date: Fri Apr 25 15:52:38 2008 +0200 25202 25203 added VERSIONSTRING 25204 25205 commit 267e95ac6a5eb10cf7af1d9035e906fa9e6a94aa 25206 Author: Frederik Heber <heber@bespin.wiss-staff> 25207 Date: Fri Apr 25 15:52:05 2008 +0200 25208 25209 LoadPeriodentafel(): no more outputs of parsed elements 25210 25211 commit 13aab96bae88f47456abe1549668f337767064f9 25212 Author: Frederik Heber <heber@bespin.wiss-staff> 25213 Date: Fri Apr 25 12:29:18 2008 +0200 25214 25215 normal blas (e.g. prefered gotoblas) instead of gslcblas is used in linking 25216 25217 commit 6dea43fe741fd6c97488de84672ba0db426b38da 25218 Author: Frederik Heber <heber@bespin.wiss-staff> 25219 Date: Thu Apr 24 19:03:14 2008 +0200 25220 25221 ADDHYDROGEN and HAVE_DEBUG fix: config.h was not yet included 25222 25223 Misunderstanding of DHAVE_CONFIG_H lead to the believe it would get included also automatically. Now, helpers.hpp and parser.hpp both have it included if HAVE_CONFIG_H is present. Consequently, ADDHYDROGEN and HAVE_DEBUG now work. 25224 25225 commit a16756d3b8b3cefad05bc3fd247909f7d1f95dd4 25226 Author: Frederik Heber <heber@bespin.wiss-staff> 25227 Date: Thu Apr 24 19:01:39 2008 +0200 25228 25229 FragmentMolecule(): debug messages removed for ADDHYDROGEN 25230 25231 commit 2cab01cf0b3736cb07613c8950af2ece0d317266 25232 Author: Frederik Heber <heber@bespin.wiss-staff> 25233 Date: Thu Apr 24 18:59:35 2008 +0200 25234 25235 AC_MSG_WARN if both optimization and debug present removed 25236 25237 As optimization is ob by default, warning got triggered when enabling debug only already, which is nonsense. 25238 25239 commit d3a46dd9779aed0b0c746d4835159414fe9963b7 25240 Author: Frederik Heber <heber@bespin.wiss-staff> 25241 Date: Thu Apr 24 15:52:02 2008 +0200 25242 25243 added --enable-optimization, thrown -g -O specifics out of Makefile.am's 25244 25245 --enable-optimization is added to each configure.ac and is linked with --enable-debug (no debug and optimization at the same time, debug is normally off and -O2 on), implemented via C(XX)FLAGS 25246 Henceforth, -g, -O and -cc=... specifics are thrown out of the Makefile.am's, so that the optimiziation and debugging is streamlined throughout the whole package 25247 25248 commit 943d02e40086a937085f077abff25299a61b3c66 25249 Author: Frederik Heber <heber@bespin.wiss-staff> 25250 Date: Wed Apr 23 19:33:51 2008 +0200 25251 25252 molecuilder reads and stored ion velocities 25253 25254 Class atom has new variables velocity vector v and integer FixedIon. These are parse during config:load(), and stored via atom:Output() (but only if norm of v is above MYEPSILON), values are copied to son atoms/nodes in AddCopyAtom and AddHydrogenAtom (there: no fancy splitting of the vector as done with the InBondVector) 25255 25256 commit c88cde2554898c89662be277078fc77c7d21920f 25257 Author: Frederik Heber <heber@bespin.wiss-staff> 25258 Date: Fri Apr 18 13:26:42 2008 +0200 25259 25260 -initial commit 25261 -Minimum set of files needed from ESPACK SVN repository 25262 -Switch to three tantamount package parts instead of all relating to pcp (as at some time Ralf's might find inclusion as well) 25263 25264 commit 14de4697703b4c1283d68496e457f6c1c3c794aa 25265 Author: Frederik Heber <heber@bespin.wiss-staff> 25266 Date: Fri Apr 18 13:26:42 2008 +0200 25267 25268 -initial commit 25269 -Minimum set of files needed from ESPACK SVN repository 25270 -Switch to three tantamount package parts instead of all relating to pcp (as at some time Ralf's might find inclusion as well) 1 18.04.2008 2 + essential switch in structure of ESPACK. Instead of having everything 3 relative to pcp, we now have three tantamount packages: pcp, utilities and 4 molecuilder -
Property mode
changed from
-
Makefile.am
r404d2b r363f28 1 1 ACLOCAL_AMFLAGS = -I m4 2 SUBDIRS = src/JobMarket src/unittests tests doc 2 3 SUBDIRS= 4 if COND_COMPILE_CODEPATTERNS 5 SUBDIRS += ThirdParty/CodePatterns 6 endif 7 SUBDIRS += ThirdParty/LinearAlgebra data/icons src src/unittests src/Tesselation/TriangleMatcher src/Bond/AdjacencyMatcher tests utils doc 3 8 4 9 AUTOMAKE_OPTIONS = subdir-objects 5 10 6 #include doc/am_doxygen_include.am7 8 11 EXTRA_DIST = \ 9 12 bootstrap \ 13 debian/changelog \ 14 debian/compat \ 15 debian/control \ 16 debian/copyright \ 17 debian/molecuilder.install \ 18 debian/molecuilder-dev.install \ 19 debian/rules \ 20 debian/source/format \ 10 21 m4/ac_doxygen.m4 \ 22 m4/acx_compilerflags.m4 \ 23 m4/acx_pthread.m4 \ 24 m4/ax_check_gl.m4 \ 25 m4/ax_check_glu.m4 \ 11 26 m4/ax_codepatterns.m4 \ 27 m4/ax_lang_compiler_ms.m4 \ 28 m4/ax_molecuilder.m4 \ 29 m4/ax_python.m4 \ 12 30 m4/boost.m4 \ 13 31 m4/cppunit.m4 14 32 15 # doc/am_doxygen_include.am 33 .PHONY: doc extracheck installextracheck 34 doc: 35 mkdir -p ${DX_DOCDIR} 36 cd doc && $(MAKE) doxygen-doc 16 37 17 .PHONY: doc 18 doc: 19 cd doc && make doxygen-doc 38 guicheck: 39 cd tests && $(MAKE) guicheck 40 extracheck: 41 cd tests && $(MAKE) extracheck 42 installextracheck: 43 cd tests && $(MAKE) installextracheck 44 45 unity: 46 cd src && $(MAKE) unity -
NEWS
r404d2b r363f28 1 2012-05-18 Moved JobMarket into sub-package. -
README
r404d2b r363f28 1 JobMarket 2 ========= 1 # Project: MoleCuilder 2 # 3 # heber@ins.uni-bonn.de 3 4 4 ... is a sub-package of MoleCuilder (http://trac.ins.uni-bonn.de/projects/molecuilder), 5 developed at the Institute for Numerical Simulation of the University of Bonn. 5 MoleCuilder 6 6 7 It offers the possibility (similar to BOINC and other frameworks) to let individual and 8 independent clients work on a bunch of jobs that are dealt via a server that oversees 9 this "job market". Jobs are added and the status of the market checked via a controller. 7 ... is a tool that started as a mean to edit pcp configuration files (adding/ 8 removing groups of atoms, measuring bond lengths and so forth), grew forth into 9 a many-body fragmentation test base of a new method coined BOSSANOVA (Bond 10 Order diSSection in an ANOVA (ANalysis Of VAriance) - like fashion). It spilled 11 out configuration files for each fragment and included joining and analyzing 12 programs, to put together the partial energies and forces of each fragment to 13 the total energy and forces. Since then it has evolved into a complete toolbox 14 for creating molecular systems and worlds. 10 15 11 It is easy to add new jobs and have them calculated on the Market.12 16 13 We have the following requirements: 14 * Boost libraries 1.40 (http://www.boost.org/ 15 * CodePatterns (http://trac.ins.uni-bonn.de/projects/CodePatterns) 17 INSTALLATION NOTES 18 ================== 19 20 The following packages are needed 21 * GCC or alike 22 * GSL (GNU Scientific Library, available at http://www.gnu.org/software/gsl) 23 * Boost 1.4 or newer 24 * PugiXML (is provided in src/Parser/pugixml) 25 26 LINKS 27 ===== 28 [1] http://www.ins.uni-bonn.de/ -
configure.ac
r404d2b r363f28 3 3 4 4 AC_PREREQ(2.59) 5 AC_INIT( JobMarket, 1.1.6, [foo@mastercontrolprogramm.de], [jobmarket], [https://www.molecuilder.com/])5 AC_INIT(MoleCuilder, 1.5.4, [foo@molecuilder.de], [molecuilder], [http://www.molecuilder.de/]) 6 6 AC_CONFIG_AUX_DIR([build-aux]) 7 AC_CONFIG_SRCDIR([src/ JobMarket/JobId.hpp])8 AC_CONFIG_HEADER([config.h lib JobMarket_config.h])7 AC_CONFIG_SRCDIR([src/builder.cpp]) 8 AC_CONFIG_HEADER([config.h libmolecuilder_config.h]) 9 9 AC_CONFIG_MACRO_DIR([m4]) 10 AC_CONFIG_SUBDIRS([ThirdParty/LinearAlgebra]) 10 11 11 12 # parallel-tests: use parallel test druver 12 13 # color-tests: us coloring to indicate success/failure when available 13 14 # tar-pax: use newer tar implementation with longer filename (>99 chars) 14 AM_INIT_AUTOMAKE([dist-bzip2 1. 11parallel-tests color-tests tar-pax subdir-objects])15 AM_INIT_AUTOMAKE([dist-bzip2 1.5 parallel-tests color-tests tar-pax subdir-objects]) 15 16 16 17 # Checks for programs. 18 AC_PROG_CXX 19 AC_PROG_INSTALL 20 21 # check for cppunit (taken from svn.apache.org/../xmlbeanscxx) 17 22 AM_PATH_CPPUNIT(1.9.6) 18 AC_PROG_CXX 19 AC_PROG_CC 20 AC_PROG_MAKE_SET 21 AC_PROG_INSTALL 22 23 AM_CONDITIONAL(CONDCPPUNIT, test "$CPPUNIT_LIBS") 24 25 dnl Check if we have enable python 26 # python module 27 AC_MSG_CHECKING(whether to enable python module) 28 AC_ARG_ENABLE( 29 [python], 30 AS_HELP_STRING([--enable-python],[turn on python module [default=yes]]), 31 enable_python=$enableval, 32 enable_python="yes") 33 AC_MSG_RESULT($enable_python) 34 AS_IF([test x"$enable_python" != x"no"],[ 35 # Python (for boost::python) 36 AM_PATH_PYTHON([2.2]) 37 AX_PYTHON 38 AC_DEFINE(HAVE_PYTHON,1, ["Build python module and scripts."]) 39 ]) 40 AM_CONDITIONAL([CONDPYTHON], [test x"$enable_python" != x"no"]) 41 AC_SUBST(HAVE_PYTHON) 42 43 dnl Check whether no extra thread for ActionQueue shall be used 44 AC_MSG_CHECKING(whether to enable ActionQueue's run thread) 45 AC_ARG_ENABLE( 46 [action_thread], 47 AS_HELP_STRING([--enable-action-thread],[turn on extra run thread for ActionQueue [default=yes]]), 48 enable_action_thread=$enableval, 49 enable_action_thread="no" 50 ) 51 AC_MSG_RESULT($enable_action_thread) 52 AS_IF([test x"$enable_action_thread" != x"no"],[ 53 AC_DEFINE(HAVE_ACTION_THREAD,1, ["Have extra run thread for ActionQueue."]) 54 ]) 55 AM_CONDITIONAL([CONDACTIONTHREAD], [test x"$enable_action_thread" != x"no"]) 56 AC_SUBST(HAVE_ACTION_THREAD) 57 58 dnl Check if we have enable qtgui 59 # Qt programs 60 AC_MSG_CHECKING(whether to enable Qt-based GUI) 61 AC_ARG_ENABLE( 62 [qtgui], 63 AS_HELP_STRING([--enable-qtgui],[turn on Qt GUI compilation [default=yes]]), 64 enable_qtgui=$enableval, 65 enable_qtgui="yes") 66 AC_MSG_RESULT($enable_qtgui) 67 AS_IF([test x"$enable_qtgui" != x"no"],[ 68 AC_ARG_WITH( 69 [Qt-bin], 70 [AS_HELP_STRING([--with-Qt-bin], [give path to Qt binaries])], 71 [have_qtgui_path=$withval], 72 have_qtgui_path="") 73 AS_IF([test x"$have_qtgui_path" != x""],[ 74 AC_PATH_PROGS([QT_MOC], 75 [moc-qt4 moc], 76 [AC_MSG_ERROR(["Qts moc not found, please use --with-Qt-bin."])], 77 [$have_qtgui_path] 78 ) 79 AC_PATH_PROGS([QT_RCC], 80 [rcc-qt4 rcc], 81 [AC_MSG_ERROR(["Qts rcc not found, please use --with-Qt-bin."])], 82 [$have_qtgui_path] 83 ) 84 AC_PATH_PROGS([QT_UIC], 85 [uic-qt4 uic], 86 [AC_MSG_ERROR(["Qts uic not found, please use --with-Qt-bin."])], 87 [$have_qtgui_path] 88 ) 89 ],[ 90 AC_PATH_PROGS([QT_MOC], 91 [moc-qt4 moc], 92 [AC_MSG_ERROR(["Qts moc not found, please use --with-Qt-bin."])] 93 ) 94 AC_PATH_PROGS([QT_RCC], 95 [rcc-qt4 rcc], 96 [AC_MSG_ERROR(["Qts rcc not found, please use --with-Qt-bin."])] 97 ) 98 AC_PATH_PROGS([QT_UIC], 99 [uic-qt4 uic], 100 [AC_MSG_ERROR(["Qts uic not found, please use --with-Qt-bin."])] 101 ) 102 ]) 103 PKG_CHECK_MODULES([QT], [QtCore QtGui Qt3D], [ 104 ]) 105 AC_SUBST([QT_CFLAGS]) 106 AC_SUBST([QT_LIBS]) 107 AC_DEFINE(HAVE_QTGUI,1, ["Build Qt-based GUI"]) 108 ]) 109 AM_CONDITIONAL([CONDQTGUI], [test x"$enable_qtgui" != x"no"]) 110 AC_SUBST(HAVE_QTGUI) 111 112 dnl Check whether qtgui captures log or not 113 AC_MSG_CHECKING(whether to capture stdout in qtgui) 114 AC_ARG_ENABLE( 115 [qtgui_capture_log], 116 AS_HELP_STRING([--enable-qtgui-capture-log],[turn on capturing of log inside qtgui [default=yes]]), 117 enable_qtgui_capture_log=$enableval, 118 enable_qtgui_capture_log="yes" 119 ) 120 AC_MSG_RESULT($enable_qtgui_capture_log) 121 AS_IF([test x"$enable_qtgui_capture_log" != x"no"],[ 122 AC_DEFINE(QT_CAPTURES_LOG,1, ["Have QtGui capture the stdout."]) 123 ]) 124 AC_SUBST(QT_CAPTURES_LOG) 125 126 127 # check additionally for QWT to enable plotting of potentials 128 AC_MSG_CHECKING(whether to enable Qwt-based plotting) 129 #enable_qwt=yes 130 AC_ARG_ENABLE( 131 [qwt], 132 AS_HELP_STRING([--enable-qwt],[turn on Qwt compilation [default=yes]]), 133 enable_qwt=$enableval, 134 enable_qwt="yes") 135 AC_MSG_RESULT($enable_qwt) 136 AS_IF([test x"$enable_qwt" != x"no"],[ 137 MOL_AC_HAVE_QWT_IFELSE( 138 [ 139 enable_qwt=yes 140 AC_DEFINE(HAVE_QWT,1, ["Build Qwt-based plotting"]) 141 ], 142 [ 143 enable_qwt=no 144 AC_MSG_WARN([Qwt not found, disabling plotting in QtUI.]) 145 ] 146 ) 147 ]) 148 AM_CONDITIONAL([CONDQWT], [test x"$enable_qwt" != x"no"]) 149 AC_SUBST(HAVE_QWT) 150 151 # use doxygen 23 152 DX_HTML_FEATURE(ON) 24 153 DX_PS_FEATURE(OFF) 25 154 DX_PDF_FEATURE(OFF) 26 DX_INIT_DOXYGEN(JobMarket, Doxyfile, ${docdir}) 27 155 DX_INIT_DOXYGEN(MoleCuilder, Doxyfile, ${docdir}) 156 157 # use docbook 158 AX_CHECK_DOCBOOK 159 160 # use libtool 28 161 LT_INIT([static]) 29 162 … … 32 165 # refer to the libtool manual, section "Updating library version information": 33 166 # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html 34 AC_SUBST([ JOBMARKET_SO_VERSION], [5:0:0])35 AC_SUBST([ JOBMARKET_API_VERSION], [1.1.6])167 AC_SUBST([MOLECUILDER_SO_VERSION], [17:0:0]) 168 AC_SUBST([MOLECUILDER_API_VERSION], [1.5.4]) 36 169 37 170 dnl this macro is used to get the arguments supplied … … 55 188 AC_DEFINE(LOG_OBSERVER,1, ["Use observer log."]) 56 189 AC_DEFINE(HAVE_DEBUG,2, ["Use debug setting to compile code."]) 57 AC_DEFINE(QT_DEBUG,, ["Enable Qt debug messages."])190 dnl AC_DEFINE(QT_DEBUG,, ["Enable Qt debug messages."]) 58 191 have_debug="full" 59 192 ],[ 60 193 AC_DEFINE(NDEBUG,1, ["Don't compile in debugging code."]) 61 194 AC_DEFINE(HAVE_DEBUG,0, ["Use debug setting to compile code."]) 62 AC_DEFINE(QT_NO_DEBUG ,, ["Disable Qt debug messages."])195 AC_DEFINE(QT_NO_DEBUG_OUTPUT,, ["Disable Qt debug messages."]) 63 196 have_debug="no" 64 197 ]) … … 84 217 AC_SUBST(HAVE_CACHE) 85 218 86 # CodePatterns library (requires new global NotificationChannel functions) 87 AM_PATH_CODEPATTERNS([1.3.0], $have_debug,,[AC_MSG_ERROR([Missing CodePatterns library, please specify PKG_CONFIG_PATH or use --with-codepatterns...])]) 88 89 # boost 219 # Checks for libraries. 220 AC_CHECK_LIB(m, sqrt, , AC_MSG_ERROR([compatible libc math library not found])) 221 222 # Pthreads 223 ACX_PTHREAD() 224 225 # Boost 90 226 BOOST_REQUIRE([1.40]) 91 227 92 # boost headers 228 # Boost headers only 229 BOOST_ANY 230 BOOST_ARRAY 231 BOOST_BIMAP 93 232 BOOST_BIND 233 BOOST_CAST 234 BOOST_CONVERSION 235 BOOST_EXCEPTION 94 236 BOOST_FOREACH 95 BOOST_EXCEPTION 96 97 # boost libraries 98 BOOST_ASIO 237 BOOST_FUNCTION 238 BOOST_FUSION 239 BOOST_GRAPH 240 BOOST_ITERATOR 241 BOOST_MULTIARRAY 242 BOOST_MULTIINDEXCONTAINER 243 BOOST_MPL 244 BOOST_PREPROCESSOR 245 BOOST_RANDOM 246 BOOST_SMART_PTR 247 BOOST_STRING_ALGO 248 BOOST_TOKENIZER 249 250 # Boost headers with libraries 99 251 BOOST_FILESYSTEM 100 252 BOOST_IOSTREAMS 101 253 BOOST_PROGRAM_OPTIONS 254 AS_IF([test x"$enable_python" != x"no"], [BOOST_PYTHON]) 102 255 BOOST_SERIALIZATION 256 BOOST_THREADS 257 258 259 # CodePatterns library (requiring UnobservedIterator) 260 compile_codepatterns="no" 261 AM_PATH_CODEPATTERNS([1.3.2], $have_debug,,[ 262 # compile from ThirdParty 263 AC_CONFIG_SUBDIRS([ThirdParty/CodePatterns]) 264 compile_codepatterns="yes" 265 [CodePatterns_LDFLAGS='-L$(top_builddir)/ThirdParty/CodePatterns/src'] 266 [CodePatterns_CFLAGS='-I$(top_srcdir)/ThirdParty/CodePatterns/src'] 267 AS_IF([test x"$enable_debug" != x"no"], [ 268 [CodePatterns_LIBS='-lcodepatterns-debug'] 269 ],[ 270 [CodePatterns_LIBS='-lcodepatterns'] 271 ]) 272 AC_SUBST(CodePatterns_LDFLAGS) 273 AC_SUBST(CodePatterns_CFLAGS) 274 AC_SUBST(CodePatterns_LIBS) 275 #AC_MSG_ERROR([Missing CodePatterns library, please specify PKG_CONFIG_PATH or use --with-codepatterns...]) 276 ]) 277 AM_CONDITIONAL([COND_COMPILE_CODEPATTERNS], [test x"$compile_codepatterns" = x"yes"]) 278 279 # JobMarket library (needs boost/archive/iserializer.hpp before MemDebug.hpp) 280 AC_MSG_CHECKING(whether to enable jobmarket) 281 AC_ARG_ENABLE( 282 [jobmarket], 283 AS_HELP_STRING([--enable-jobmarket],[turn on JobMarket feature [default=yes]]), 284 enable_jobmarket=$enableval, 285 enable_jobmarket="yes") 286 AC_MSG_RESULT($enable_jobmarket) 287 AS_IF([test x"$enable_jobmarket" != x"no"],[ 288 # JobMarket library (needs SystemCommandJob with suffix) 289 AM_PATH_JOBMARKET([1.1.6], $have_debug,[ 290 # the following is only required if we have JobMarket 291 BOOST_ASIO 292 AC_DEFINE(HAVE_JOBMARKET,1, ["use JobMarket to calculate fragment jobs."]) 293 ],[ 294 enable_jobmarket="no" 295 ]) 296 ] 297 #[ 298 # AC_DEFINE(HAVE_JOBMARKET,0, ["use JobMarket to calculate fragment jobs."]) 299 #] 300 ) 301 AC_SUBST(HAVE_JOBMARKET) 302 AM_CONDITIONAL([CONDJOBMARKET], [test x"$enable_jobmarket" = x"yes"]) 303 304 # VMG library 305 AC_MSG_CHECKING(whether to compile in long-range support via VMG) 306 AC_ARG_ENABLE( 307 [vmg], 308 [AS_HELP_STRING([--enable-vmg], [turn on long-range potential calculation via VMG [default=no]])], 309 [enable_vmg=$enableval], 310 enable_vmg="no") 311 AC_MSG_RESULT($enable_vmg) 312 AS_IF([test x"$enable_vmg" != x"no"],[ 313 PKG_CHECK_MODULES(VMG, VMG >= 0.1) 314 AC_SUBST(VMG_CFLAGS) 315 AC_SUBST(VMG_LIBS) 316 AC_DEFINE(HAVE_VMG,1, ["use VMG to calculate long-range contributions."]) 317 318 # check whether to use mpi 319 AC_ARG_WITH( 320 [vmg-mpi], 321 [AS_HELP_STRING([--with-vmg-mpi], [whether to use MPI for communication in VMGJobs])], 322 [with_vmg_mpi=yes], 323 [with_vmg_mpi=no]) 324 AS_IF( 325 [test "x$with_vmg_mpi" != xno], 326 [ 327 AC_LANG_SAVE 328 AC_LANG_CPLUSPLUS 329 LX_FIND_MPI 330 AC_LANG_RESTORE 331 AS_IF([test "x$have_CXX_mpi" = xyes],[ 332 AC_DEFINE([MPICH_SKIP_MPICXX], [1], [Skip C++ bindings]) 333 AC_DEFINE([OMPI_SKIP_MPICXX], [1], [Skip C++ bindings]) 334 AC_DEFINE([MPI_NO_CPPBIND], [1], [Skip C++ bindings]) 335 AC_DEFINE([_MPICC_H], [1], [Skip C++ bindings]) 336 AC_DEFINE([MPIBULL_SKIP_MPICXX], [1], [Skip C++ bindings]) 337 ]) 338 ], 339 []) 340 ]) 341 AM_CONDITIONAL([CONDVMG], [test x"$enable_vmg" = x"yes"]) 342 AM_CONDITIONAL([CONDVMGMPI], [test x"$have_CXX_mpi" = x"yes"]) 343 344 345 # Check for Levenberg-Marquardt implementation 346 AC_MSG_CHECKING(whether to enable function fitting via levmar) 347 AC_ARG_ENABLE( 348 [levmar], 349 AS_HELP_STRING([--enable-levmar],[turn on LevMar feature [default=no]]), 350 enable_levmar=$enableval, 351 enable_levmar="no") 352 AC_MSG_RESULT($enable_levmar) 353 # don't use AS_IF here as it expands (and tests) AC_F77_FUN even if levmar 354 # is disabled. 355 if test x"$enable_levmar" = xyes; then 356 AX_LAPACK([enable_levmar=yes], 357 [enable_levmar=no 358 AC_MSG_WARN(["Missing LAPACK, disabling off levmar"]) 359 ] 360 ) 361 fi 362 AS_IF([test x"$enable_levmar" = xyes],[ 363 AC_MSG_CHECKING(for levmar presence via given path ) 364 AC_ARG_WITH( 365 [levmar], 366 [AS_HELP_STRING([--with-levmar], [give path to LevMar package])], 367 [have_levmar_path=$withval 368 enable_levmar=yes], 369 [enable_levmar=no]) 370 AC_MSG_RESULT($enable_levmar) 371 AS_IF([test -n "$have_levmar_path"],[ 372 LEVMAR_CPPFLAGS="-I${have_levmar_path}/include" 373 LEVMAR_LDFLAGS="-L${have_levmar_path}/lib" 374 LEVMAR_LIBS="-llevmar"],[ 375 PKG_CHECK_MODULES([LEVMAR],[levmar],[enable_levmar=yes],[ 376 AC_MSG_CHECKING(for levmar presence via locate) 377 enable_levmar=no 378 levmar_lib=`locate liblevmar.a | head -n 1 | xargs dirname` 379 levmar_include=`locate levmar.h | head -n 1 | xargs dirname` 380 if test -n "$levmar_lib"; then 381 if test -n "$levmar_include"; then 382 enable_levmar=yes 383 LEVMAR_CPPFLAGS="-I${levmar_include}" 384 LEVMAR_LDFLAGS="-L${levmar_lib}" 385 LEVMAR_LIBS="-llevmar" 386 fi 387 fi 388 AC_MSG_RESULT($enable_levmar) 389 ]) 390 ]) 391 ],[enable_levmar=no] 392 ) 393 AC_MSG_CHECKING(for levmar usability) 394 AS_IF([test x"$enable_levmar" = xyes],[ 395 AC_SUBST(LEVMAR_CPPFLAGS) 396 AC_SUBST(LEVMAR_LDFLAGS) 397 AC_SUBST(LEVMAR_LIBS) 398 AC_DEFINE(HAVE_LEVMAR,1, ["use levmar for non-linear minimisation/potential fitting."])]) 399 AC_MSG_RESULT($enable_levmar) 400 AM_CONDITIONAL([CONDLEVMAR], [test x"$enable_levmar" = x"yes"]) 103 401 104 402 # Checks for header files. 105 403 AC_HEADER_STDC 106 AC_CHECK_HEADERS([unistd.h]) 107 108 109 # Checks for function 110 AC_CHECK_FUNCS([atexit]) 111 AC_CHECK_FUNCS([gethostname]) 112 AC_CHECK_FUNCS([socket]) 404 AC_CHECK_HEADERS([sys/time.h]) 405 AC_HEADER_STDBOOL 406 113 407 AC_FUNC_MALLOC 114 408 AC_FUNC_REALLOC 115 AC_ FUNC_ERROR_AT_LINE409 AC_CHECK_FUNCS([floor pow sqrt strchr]) 116 410 117 411 # Checks for typedefs, structures, and compiler characteristics. 118 AC_HEADER_STDBOOL 412 AC_C_CONST 413 AC_C_INLINE 414 AC_C_RESTRICT 119 415 AC_TYPE_SIZE_T 416 417 # Checks for library functions. 418 # check for GNU Scientific Library 419 AC_CHECK_HEADERS([gsl/gsl_blas.h]) 420 AC_SEARCH_LIBS(dnrm2, gslblas gslcblas goto blas cblas) 421 AC_SEARCH_LIBS(cblas_dnrm2, gslblas gslcblas blas cblas) 422 AC_SEARCH_LIBS(gsl_blas_dnrm2,, gsl) 423 #AC_CHECK_LIB(gsl, gsl_blas_dnrm2, , [AC_MSG_ERROR(["No working BLAS found for GSL, stopping."])]) 424 AC_CHECK_LIB(gsl, main) 120 425 121 426 # use CppUnit TestRunner or not … … 177 482 178 483 # test suite 179 AC_CONFIG_FILES([tests/Makefile]) 484 485 AC_CONFIG_FILES([ 486 tests/Makefile]) 487 488 AC_CONFIG_TESTDIR(tests/Calculations) 489 AC_CONFIG_FILES([ 490 tests/Calculations/atlocal 491 tests/Calculations/Makefile]) 492 AC_CONFIG_FILES([tests/Calculations/molecuilder], [chmod +x tests/Calculations/molecuilder]) 180 493 181 494 AC_CONFIG_TESTDIR(tests/CodeChecks) … … 184 497 tests/CodeChecks/Makefile]) 185 498 499 AC_CONFIG_TESTDIR(tests/Fragmentations) 500 AC_CONFIG_FILES([ 501 tests/Fragmentations/atlocal 502 tests/Fragmentations/Makefile]) 503 AC_CONFIG_FILES([tests/Fragmentations/molecuilder], [chmod +x tests/Fragmentations/molecuilder]) 504 505 AC_CONFIG_TESTDIR(tests/GuiChecks) 506 AC_CONFIG_FILES([ 507 tests/GuiChecks/atlocal 508 tests/GuiChecks/Makefile]) 509 AC_CONFIG_FILES([tests/GuiChecks/molecuilder], [chmod +x tests/GuiChecks/molecuilder]) 510 AC_CONFIG_FILES([tests/GuiChecks/molecuilderguitest], [chmod +x tests/GuiChecks/molecuilderguitest]) 511 AC_CONFIG_FILES([tests/GuiChecks/adjacencymatcher], [chmod +x tests/GuiChecks/adjacencymatcher]) 512 AC_CONFIG_FILES([tests/GuiChecks/trianglematcher], [chmod +x tests/GuiChecks/trianglematcher]) 513 514 AC_CONFIG_TESTDIR(tests/JobMarket) 515 AC_CONFIG_FILES([ 516 tests/JobMarket/atlocal 517 tests/JobMarket/Makefile]) 518 AC_CONFIG_FILES([tests/JobMarket/molecuilder], [chmod +x tests/JobMarket/molecuilder]) 519 186 520 AC_CONFIG_TESTDIR(tests/regression) 187 521 AC_CONFIG_FILES([ 188 522 tests/regression/atlocal 189 523 tests/regression/Makefile]) 190 191 AC_CONFIG_FILES([ 192 JobMarket.pc:JobMarket.pc.in 193 JobMarket-debug.pc:JobMarket-debug.pc.in 194 JobMarketController.pc:JobMarketController.pc.in 195 JobMarketController-debug.pc:JobMarketController-debug.pc.in 196 JobMarketPoolWorker.pc:JobMarketPoolWorker.pc.in 197 JobMarketPoolWorker-debug.pc:JobMarketPoolWorker-debug.pc.in 198 JobMarketServer.pc:JobMarketServer.pc.in 199 JobMarketServer-debug.pc:JobMarketServer-debug.pc.in 200 ]) 201 524 AC_CONFIG_FILES([tests/regression/molecuilder], [chmod +x tests/regression/molecuilder]) 525 AC_CONFIG_FILES([tests/regression/adjacencymatcher], [chmod +x tests/regression/adjacencymatcher]) 526 AC_CONFIG_FILES([tests/regression/trianglematcher], [chmod +x tests/regression/trianglematcher]) 527 AC_CONFIG_FILES([tests/regression/runpython], [chmod +x tests/regression/runpython]) 528 529 AC_CONFIG_TESTDIR(tests/Tesselations) 530 AC_CONFIG_FILES([ 531 tests/Tesselations/atlocal 532 tests/Tesselations/Makefile]) 533 AC_CONFIG_FILES([tests/Tesselations/molecuilder], [chmod +x tests/Tesselations/molecuilder]) 534 AC_CONFIG_FILES([tests/Tesselations/trianglematcher], [chmod +x tests/Tesselations/trianglematcher]) 535 536 AC_CONFIG_FILES([ 537 doc/molecuilder.xml]) 538 AC_CONFIG_FILES([ 539 doc/userguide/catalog.xml:doc/userguide/catalog.xml.in]) 540 AC_CONFIG_FILES([ 541 MoleCuilder.pc:MoleCuilder.pc.in]) 542 AC_CONFIG_FILES([ 543 doc/Makefile 544 doc/userguide/Makefile 545 ]) 202 546 AC_CONFIG_FILES([ 203 547 Makefile 204 doc/Makefile 205 src/JobMarket/Makefile 548 src/Makefile 549 src/Bond/AdjacencyMatcher/Makefile 550 src/Tesselation/TriangleMatcher/Makefile 551 data/icons/Makefile 552 utils/Makefile 553 ]) 554 AC_CONFIG_FILES([ 206 555 src/unittests/Makefile 207 556 ]) 208 557 558 # produce python scripts and tests only when python's present 559 AC_CONFIG_TESTDIR([tests/Python]) 560 AC_CONFIG_FILES([tests/Python/atlocal]) 561 AM_COND_IF([CONDPYTHON],[ 562 AC_CONFIG_FILES([utils/Python/boxmaker.py:utils/Python/boxmaker.py.in], [chmod +x utils/Python/boxmaker.py]) 563 AC_CONFIG_FILES([utils/Python/python_wrapper:utils/Python/python_wrapper.in], [chmod +x utils/Python/python_wrapper]) 564 AC_CONFIG_FILES([tests/Python/run], [chmod +x tests/Python/run]) 565 ]) 566 AC_CONFIG_FILES([tests/Python/Makefile]) 567 209 568 AC_OUTPUT -
doc/Makefile.am
r404d2b r363f28 1 EXTRA_DIST = 1 EXTRA_DIST = 2 2 3 include am_doxygen_include.am 3 # userguide documentation 4 4 5 EXTRA_DIST += am_doxygen_include.am Doxyfile 5 EXTRA_DIST += \ 6 userguide/createguide.sh \ 7 $(top_builddir)/doc/molecuilder.pdf 8 9 XSLTPROC=xsltproc 10 XSLTPROC_FLAGS=@XSLTPROC_FLAGS@ \ 11 --stringparam paper.type A4 12 PDF_STYLESHEET=@DOCBOOK_ROOT@/fo/docbook.xsl 13 XML_CATALOG_FILES=$(top_builddir)/doc/userguide/catalog.xml 14 FOP=fop 15 16 pdfdir = $(prefix)/share/doc/@PACKAGE@ 17 dist_pdf_DATA = @PACKAGE@.pdf 18 19 if have_fop 20 if have_xsltproc 21 22 @PACKAGE@.fo: $(top_srcdir)/doc/userguide/userguide.xml 23 XML_CATALOG_FILES=$(XML_CATALOG_FILES) $(XSLTPROC) $(XSLTPROC_FLAGS) -o $@ $(PDF_STYLESHEET) $< 24 @PACKAGE@.pdf: @PACKAGE@.fo 25 $(FOP) -fo $< -pdf $@ 26 27 else 28 29 @PACKAGE@.pdf: 30 touch $@ 31 32 endif 33 else 34 35 @PACKAGE@.pdf: 36 touch $@ 37 38 endif 39 40 clean-local: 41 $(RM) -f doc/userguide/catalog.xml 42 $(RM) -f @PACKAGE@.fo 43 $(RM) -f @PACKAGE@.pdf 44 45 distclean-local: 46 $(RM) -f doc/userguide/catalog.xml 47 $(RM) -f @PACKAGE@.fo 48 $(RM) -f @PACKAGE@.pdf 49 50 51 SUBDIRS = userguide 52 53 EXTRA_DIST += \ 54 am_doxygen_include.am \ 55 Doxyfile 6 56 7 57 include ../src/documentation/Makefile.am 8 58 59 include am_doxygen_include.am -
m4/boost.m4
r404d2b r363f28 540 540 541 541 542 # BOOST_BIMAP() 543 # ------------ 544 # Look for Boost.Bimap 545 BOOST_DEFUN([Bimap], 546 [BOOST_FIND_HEADER([boost/bimap.hpp])]) 547 548 542 549 # BOOST_BIND() 543 550 # ------------ … … 545 552 BOOST_DEFUN([Bind], 546 553 [BOOST_FIND_HEADER([boost/bind.hpp])]) 554 555 556 # BOOST_CAST() 557 # ------------ 558 # Look for Boost.Cast 559 BOOST_DEFUN([Cast], 560 [BOOST_FIND_HEADER([boost/cast.hpp])]) 547 561 548 562 … … 636 650 637 651 652 # BOOST_FUSION() 653 # ----------------- 654 # Look for Boost.Fusion 655 BOOST_DEFUN([Fusion], 656 [BOOST_FIND_HEADER([boost/fusion/sequence.hpp])]) 657 658 638 659 # BOOST_FLYWEIGHT() 639 660 # ----------------- … … 780 801 781 802 803 # BOOST_MPL() 804 # ------------------ 805 # Look for Boost.MPL 806 BOOST_DEFUN([MPL], 807 [BOOST_FIND_HEADER([boost/mpl/for_each.hpp])]) 808 809 782 810 # BOOST_MULTIARRAY() 783 811 # ------------------ … … 785 813 BOOST_DEFUN([MultiArray], 786 814 [BOOST_FIND_HEADER([boost/multi_array.hpp])]) 815 816 # BOOST_MULTIINDEXCCONTAINER() 817 # ------------------ 818 # Look for Boost.MultiIndexContainer 819 BOOST_DEFUN([MultiIndexContainer], 820 [BOOST_FIND_HEADER([boost/multi_index_container.hpp])]) 787 821 788 822 -
src/documentation/Makefile.am
r404d2b r363f28 1 1 EXTRA_DIST += \ 2 ${top_srcdir}/src/documentation/jobmarket.dox \ 3 ${top_srcdir}/src/documentation/mainpage.dox 2 ${top_srcdir}/src/documentation/code.dox \ 3 ${top_srcdir}/src/documentation/copyright.dox \ 4 ${top_srcdir}/src/documentation/faq.dox \ 5 ${top_srcdir}/src/documentation/fileformats.dox \ 6 ${top_srcdir}/src/documentation/future.dox \ 7 ${top_srcdir}/src/documentation/install.dox \ 8 ${top_srcdir}/src/documentation/launch.dox \ 9 ${top_srcdir}/src/documentation/mainpage.dox \ 10 ${top_srcdir}/src/documentation/constructs/actions.dox \ 11 ${top_srcdir}/src/documentation/constructs/atoms.dox \ 12 ${top_srcdir}/src/documentation/constructs/bondgraph.dox \ 13 ${top_srcdir}/src/documentation/constructs/constructs.dox \ 14 ${top_srcdir}/src/documentation/constructs/descriptors.dox \ 15 ${top_srcdir}/src/documentation/constructs/filling.dox \ 16 ${top_srcdir}/src/documentation/constructs/fragmentation.dox \ 17 ${top_srcdir}/src/documentation/constructs/linearalgebra.dox \ 18 ${top_srcdir}/src/documentation/constructs/logger.dox \ 19 ${top_srcdir}/src/documentation/constructs/molecules.dox \ 20 ${top_srcdir}/src/documentation/constructs/observers_observables.dox \ 21 ${top_srcdir}/src/documentation/constructs/parameters.dox \ 22 ${top_srcdir}/src/documentation/constructs/parsers.dox \ 23 ${top_srcdir}/src/documentation/constructs/potentials.dox \ 24 ${top_srcdir}/src/documentation/constructs/qt-gui.dox \ 25 ${top_srcdir}/src/documentation/constructs/queries.dox \ 26 ${top_srcdir}/src/documentation/constructs/randomnumbers.dox \ 27 ${top_srcdir}/src/documentation/constructs/serialization.dox \ 28 ${top_srcdir}/src/documentation/constructs/shaperegistry.dox \ 29 ${top_srcdir}/src/documentation/constructs/shapes.dox \ 30 ${top_srcdir}/src/documentation/constructs/tesselation.dox \ 31 ${top_srcdir}/src/documentation/constructs/validators.dox \ 32 ${top_srcdir}/src/documentation/constructs/values.dox \ 33 ${top_srcdir}/src/documentation/constructs/world.dox \ 34 ${top_srcdir}/src/documentation/howtos/action.dox \ 35 ${top_srcdir}/src/documentation/howtos/howtos.dox \ 36 ${top_srcdir}/src/documentation/tests/code-tests.dox \ 37 ${top_srcdir}/src/documentation/tests/regression-tests.dox \ 38 ${top_srcdir}/src/documentation/tests/tests.dox \ 39 ${top_srcdir}/src/documentation/tests/unit-tests.dox \ 40 ${top_srcdir}/src/documentation/userinterfaces/commandline.dox \ 41 ${top_srcdir}/src/documentation/userinterfaces/graphical.dox \ 42 ${top_srcdir}/src/documentation/userinterfaces/python.dox \ 43 ${top_srcdir}/src/documentation/userinterfaces/textmenu.dox \ 44 ${top_srcdir}/src/documentation/userinterfaces/userinterfaces.dox 45 -
src/documentation/mainpage.dox
r404d2b r363f28 2 2 * Project: MoleCuilder 3 3 * Description: creates and alters molecular systems 4 * Copyright (C) 201 2University of Bonn. All rights reserved.4 * Copyright (C) 2010 University of Bonn. All rights reserved. 5 5 * Please see the LICENSE file or "Copyright notice" in builder.cpp for details. 6 6 */ … … 11 11 * Here, the mainpage (index.html) for the doxygen documentation resides. 12 12 * 13 * Created on: May 18, 201213 * Created on: Oct 11, 2011 14 14 * Author: heber 15 15 */ 16 16 17 /*! \page Copyright notice17 /*! \page copyright Copyright notice 18 18 * 19 19 * MoleCuilder - to create and alter molecular systems 20 * Copyright (C) 201 2University Bonn. All rights reserved.20 * Copyright (C) 2010 University Bonn. All rights reserved. 21 21 * 22 22 */ 23 23 24 /* ! \mainpage JobMarket - a client/server/controller system for launching arbitrary jobs in C++.24 /** \mainpage MoleCuilder - a molecular set builder 25 25 * 26 * \li \ref jobmarket 26 * This is the main page of the Doxygen documentation of \e MoleCuilder. We give 27 * a brief description what the program is intended to do and then branch via 28 * the contents of this documentation into various topics. 27 29 * 28 * \date 2012-05-18 30 * \section about About the Program 31 * 32 * MoleCuilder is a program, written entirely in C++, that enables the 33 * construction of a coordinate set for the atoms making up a molecular system. It 34 * allows for both building of simple molecules by adding atom-wise giving bond 35 * angles and distances or absolute coordinates, but also using them as 36 * templates. Regions can be specified and ordered to be filled with a molecule 37 * in a certain manner. Greater conglomerations of molecules can be tesselated 38 * and recognized as a region themselves to be subsequently surrounded by other 39 * (surface solvated) molecules. 40 * Once initial configurations have been created, empirical potential functions 41 * can be fitted to ab-initio calculations -- calculated quickly via the BOSSANOVA 42 * scheme -- to enable subsequent (classical) molecular dynamics simulations. 43 * 44 * For copyright see \ref copyright. 45 * 46 * \section idea The central idea behind the program 47 * 48 * What are the central ideas? 49 * 50 * - Testedness: See \ref tests-policy which is meant \e seriously. Nothing is 51 * worse than one version behaving different to the next with respect to 52 * output. 53 * - Re-usability: Every piece of functionality should be easy to re-use at 54 * someplace else. Say no to specialized one-purpose scripts, say yes to 55 * a LEGO-like system of building your world. 56 * - Extendability: It's easy to add a new piece to the code. And it is even 57 * more so, if you have read this documentation and know what's all already 58 * in place. 59 * - Userfriendliness: Every Action can be undone, every Action gives lots 60 * of output (if desired) to tell you what's going on. It's easy to save 61 * files in between. There are also three kinds of GUIs, each of which 62 * have the same functionality. 63 * - Scriptability: Eventually, you want to create lots of configurations with 64 * only small differences. A session can be stored as either command-line or 65 * python script and extended to create all of the configurations in a straight- 66 * forward manner. 67 * 68 * \section contents Contents 69 * 70 * This manual is divided into the following sections: 71 * \li \ref install 72 * \li \ref tests 73 * \li \ref launch 74 * \li \ref data 75 * \li \ref debug 76 * \li \ref code 77 * \li \ref fileformats 78 * \li \ref userguide 79 * 80 * \date 2014-04-18 29 81 * 30 82 */ 31 83 84 85 -
src/unittests/Makefile.am
r404d2b r363f28 2 2 # Also indentation by a single tab 3 3 4 MOSTLYCLEANFILES =5 bin_PROGRAMS =6 TESTS =7 4 check_PROGRAMS = 8 5 noinst_PROGRAMS = 6 TESTS = 7 XFAIL_TESTS = 8 MOSTLYCLEANFILES = 9 9 noinst_LTLIBRARIES = 10 lib_LTLIBRARIES = 11 12 AM_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 13 AM_CPPFLAGS = -I$(top_srcdir)/src $(CPPUNIT_CFLAGS) $(BOOST_CPPFLAGS) ${CodePatterns_CFLAGS} 14 15 FRAGMENTATIONAUTOMATIONTESTSSOURCES = \ 16 FragmentJobUnitTest.cpp \ 17 FragmentResultUnitTest.cpp \ 18 FragmentQueueUnitTest.cpp \ 19 OperationQueueUnitTest.cpp \ 20 SystemCommandJobUnitTest.cpp \ 21 WorkerAddressUnitTest.cpp \ 22 WorkerPoolUnitTest.cpp 10 11 #AUTOMAKE_OPTIONS = no-dependencies 12 13 if CONDCPPUNIT 14 15 include ../../src/Actions/unittests/Makefile.am 16 include ../../src/Analysis/unittests/Makefile.am 17 include ../../src/Atom/unittests/Makefile.am 18 include ../../src/Descriptors/unittests/Makefile.am 19 include ../../src/Element/unittests/Makefile.am 20 include ../../src/Filling/unittests/Makefile.am 21 include ../../src/FunctionApproximation/unittests/Makefile.am 22 include ../../src/Fragmentation/unittests/Makefile.am 23 include ../../src/Fragmentation/Exporters/unittests/Makefile.am 24 include ../../src/Fragmentation/Homology/unittests/Makefile.am 25 include ../../src/Fragmentation/Summation/unittests/Makefile.am 26 include ../../src/Fragmentation/Summation/Containers/unittests/Makefile.am 27 include ../../src/Fragmentation/Summation/SetValues/unittests/Makefile.am 28 include ../../src/Graph/unittests/Makefile.am 29 30 if CONDJOBMARKET 31 include ../../src/Jobs/unittests/Makefile.am 32 endif 33 34 include ../../src/LinkedCell/unittests/Makefile.am 35 include ../../src/Parameters/unittests/Makefile.am 36 include ../../src/Parser/unittests/Makefile.am 37 include ../../src/Potentials/unittests/Makefile.am 38 include ../../src/Potentials/Specifics/unittests/Makefile.am 39 include ../../src/RandomNumbers/unittests/Makefile.am 40 include ../../src/Shapes/unittests/Makefile.am 41 include ../../src/Tesselation/unittests/Makefile.am 42 include ../../src/UIElements/CommandLineUI/unittests/Makefile.am 43 include ../../src/UIElements/Menu/unittests/Makefile.am 44 45 AM_LDFLAGS = \ 46 $(CodePatterns_LDFLAGS) ${CodePatterns_LIBS} \ 47 $(CPPUNIT_LIBS) \ 48 -ldl 49 AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/ThirdParty/LinearAlgebra/src ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS} 50 51 GENERALTESTS = \ 52 AtomIdSetUnitTest \ 53 BoxUnitTest \ 54 Box_BoundaryConditionsTest \ 55 FormulaUnittest \ 56 ListOfBondsUnitTest \ 57 MoleculeUnitTest \ 58 WorldTimeUnitTest 59 60 # these ones are checked 61 TESTS += $(GENERALTESTS) 62 # these ones are built for checking only 63 check_PROGRAMS += $(GENERALTESTS) 64 # ... and not installed 65 noinst_PROGRAMS += $(GENERALTESTS) 66 67 if CONDECUT 68 noinst_PROGRAMS += TestRunner 69 endif 70 71 noinst_LTLIBRARIES += libUnitTest.la 72 libUnitTest_la_LDFLAGS = \ 73 $(AM_LDFLAGS) 74 libUnitTest_la_LIBADD = 75 76 #nobase_libUnitTest_la_include_HEADERS = 77 78 ## Define the source file list for the "libexample-@MOLECUILDER_API_VERSION@.la" 79 ## target. Note that @MOLECUILDER_API_VERSION@ is not interpreted by Automake and 80 ## will therefore be treated as if it were literally part of the target name, 81 ## and the variable name derived from that. 82 ## The file extension .cc is recognized by Automake, and makes it produce 83 ## rules which invoke the C++ compiler to produce a libtool object file (.lo) 84 ## from each source file. Note that it is not necessary to list header files 85 ## which are already listed elsewhere in a _HEADERS variable assignment. 86 libUnitTest_la_SOURCES = UnitTestMain.cpp 87 88 ## Instruct libtool to include ABI version information in the generated shared 89 ## library file (.so). The library ABI version is defined in configure.ac, so 90 ## that all version information is kept in one place. 91 #libUnitTest_la_LDFLAGS = -version-info $(MOLECUILDER_SO_VERSION) 92 93 ## The generated configuration header is installed in its own subdirectory of 94 ## $(libdir). The reason for this is that the configuration information put 95 ## into this header file describes the target platform the installed library 96 ## has been built for. Thus the file must not be installed into a location 97 ## intended for architecture-independent files, as defined by the Filesystem 98 ## Hierarchy Standard (FHS). 99 ## The nodist_ prefix instructs Automake to not generate rules for including 100 ## the listed files in the distribution on 'make dist'. Files that are listed 101 ## in _HEADERS variables are normally included in the distribution, but the 102 ## configuration header file is generated at configure time and should not be 103 ## shipped with the source tarball. 104 #libUnitTest_la_libincludedir = $(libdir)/MoleCuilder/include 105 #nodist_libUnitTest_la_libinclude_HEADERS = $(top_builddir)/libmolecuilder_config.h 106 107 ## Install the generated pkg-config file (.pc) into the expected location for 108 ## architecture-dependent package configuration information. Occasionally, 109 ## pkg-config files are also used for architecture-independent data packages, 110 ## in which case the correct install location would be $(datadir)/pkgconfig. 111 #pkgconfigdir = $(libdir)/pkgconfig 112 #pkgconfig_DATA = $(top_builddir)/MoleCuilder.pc 113 114 115 BOOST_LIB = \ 116 $(BOOST_PROGRAM_OPTIONS_LDFLAGS) $(BOOST_PROGRAM_OPTIONS_LIBS) \ 117 $(BOOST_FILESYSTEM_LDFLAGS) $(BOOST_FILESYSTEM_LIBS) \ 118 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 119 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 120 $(BOOST_THREAD_LDFLAGS) $(BOOST_THREAD_LIBS) 121 122 GENERALLIBS = \ 123 ../libMolecuilder.la \ 124 $(top_builddir)/ThirdParty/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \ 125 ${CodePatterns_LIBS} \ 126 $(BOOST_LIB) 127 128 ALLLIBS = \ 129 libUnitTest.la \ 130 ../libMolecuilder.la \ 131 ../libMolecuilderUI.la 132 if CONDJOBMARKET 133 ALLLIBS += \ 134 ../libMolecuilderJobs.la 135 endif 136 ALLLIBS += \ 137 $(top_builddir)/ThirdParty/LinearAlgebra/src/LinearAlgebra/libLinearAlgebra.la \ 138 ${CodePatterns_LIBS} \ 139 $(BOOST_LIB) 140 141 TESTSOURCES = \ 142 ${ACTIONTESTSSOURCES} \ 143 ${ANALYSISTESTSSOURCES} \ 144 ${DESCRIPTORTESTSSOURCES} \ 145 ${ELEMENTTESTSSOURCES} \ 146 ${FILLINGTESTSSOURCES} \ 147 ${FRAGMENTATIONTESTSSOURCES} \ 148 ${GRAPHTESTSSOURCES} \ 149 ${LINKEDCELLTESTSSOURCES} \ 150 ${LINEARALGEBRATESTSSOURCES} \ 151 ${PARAMETERTESTSSOURCES} \ 152 ${PARSERTESTSSOURCES} \ 153 ${RANDOMNUMBERTESTSSOURCES} \ 154 ${SHAPETESTSSOURCES} \ 155 ${TESSELATIONTESTSSOURCES} \ 156 $(UIELEMENTSCOMMANDLINEPARSERTESTSSOURCES) \ 157 ${UIELEMENTSMENUTESTSSOURCES} \ 158 stubs/ObserverStub.cpp \ 159 AtomIdSetUnitTest.cpp \ 160 BoxUnitTest.cpp \ 161 Box_BoundaryConditionsUnitTest.cpp \ 162 FormulaUnitTest.cpp \ 163 ListOfBondsUnitTest.cpp \ 164 MoleculeUnitTest.cpp \ 165 WorldTimeUnitTest.cpp 166 167 TESTHEADERS = \ 168 ${ACTIONTESTSHEADERS} \ 169 ${ANALYSISTESTSHEADERS} \ 170 ${DESCRIPTORTESTSHEADERS} \ 171 ${ELEMENTTESTSHEADERS} \ 172 ${FILLINGTESTSHEADERS} \ 173 ${FRAGMENTATIONTESTSHEADERS} \ 174 ${GRAPHTESTSHEADERS} \ 175 ${LINKEDCELLTESTHEADERS} \ 176 ${LINEARALGEBRATESTSHEADERS} \ 177 ${PARAMETERTESTSHEADERS} \ 178 ${PARSERTESTSHEADERS} \ 179 ${RANDOMNUMBERTESTSHEADERS} \ 180 ${SHAPETESTSHEADERS} \ 181 ${TESSELATIONTESTSHEADERS} \ 182 $(UIELEMENTSCOMMANDLINEPARSERTESTSHEADERS) \ 183 ${UIELEMENTSMENUTESTSHEADERS} \ 184 stubs/ObserverStub.hpp \ 185 AtomIdSetUnitTest.hpp \ 186 BoxUnitTest.hpp \ 187 Box_BoundaryConditionsUnitTest.hpp \ 188 FormulaUnitTest.hpp \ 189 ListOfBondsUnitTest.hpp \ 190 MoleculeUnitTest.hpp \ 191 WorldTimeUnitTest.hpp 23 192 24 FRAGMENTATIONAUTOMATIONTESTSHEADERS = \ 25 FragmentJobUnitTest.hpp \ 26 FragmentResultUnitTest.hpp \ 27 FragmentQueueUnitTest.hpp \ 28 OperationQueueUnitTest.hpp \ 29 SystemCommandJobUnitTest.hpp \ 30 WorkerAddressUnitTest.hpp \ 31 WorkerPoolUnitTest.hpp 32 33 FRAGMENTATIONAUTOMATIONTESTS = \ 34 FragmentJobUnitTest \ 35 FragmentResultUnitTest \ 36 FragmentQueueUnitTest \ 37 OperationQueueUnitTest \ 38 SystemCommandJobUnitTest \ 39 WorkerAddressUnitTest \ 40 WorkerPoolUnitTest 41 42 43 TESTS += $(FRAGMENTATIONAUTOMATIONTESTS) 44 check_PROGRAMS += $(FRAGMENTATIONAUTOMATIONTESTS) 45 noinst_PROGRAMS += $(FRAGMENTATIONAUTOMATIONTESTS) 46 47 FRAGMENTATIONAUTOMATIONLIBS = \ 48 ../JobMarket/libJobMarketJobs.la \ 49 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 50 $(BOOST_THREAD_LDFLAGS) $(BOOST_THREAD_LIBS) \ 51 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 52 ${CodePatterns_LIBS} 53 54 FragmentJobUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 55 FragmentJobUnitTest_SOURCES = UnitTestMain.cpp \ 56 FragmentJobUnitTest.cpp \ 57 FragmentJobUnitTest.hpp \ 58 stubs/FragmentResultStub.cpp \ 59 stubs/FragmentJobStub.cpp \ 60 stubs/FragmentJobStub.hpp 61 FragmentJobUnitTest_LDADD = \ 62 ../JobMarket/libJobMarketJobs.la \ 63 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 64 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 65 ${CodePatterns_LIBS} 66 67 FragmentQueueUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 68 FragmentQueueUnitTest_SOURCES = UnitTestMain.cpp \ 69 FragmentQueueUnitTest.cpp \ 70 FragmentQueueUnitTest.hpp \ 71 stubs/FragmentJobStub.cpp \ 72 stubs/FragmentJobStub.hpp \ 73 stubs/ObserverStub.cpp \ 74 stubs/ObserverStub.hpp 75 FragmentQueueUnitTest_LDADD = \ 76 ../JobMarket/libJobMarketJobs.la \ 77 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 78 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 79 ${CodePatterns_LIBS} 80 81 FragmentResultUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 82 FragmentResultUnitTest_SOURCES = UnitTestMain.cpp \ 83 FragmentResultUnitTest.cpp \ 84 FragmentResultUnitTest.hpp 85 FragmentResultUnitTest_LDADD = \ 86 ../JobMarket/libJobMarketJobs.la \ 87 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 88 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 89 ${CodePatterns_LIBS} 90 91 OperationQueueUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 92 OperationQueueUnitTest_SOURCES = UnitTestMain.cpp \ 93 OperationQueueUnitTest.cpp \ 94 OperationQueueUnitTest.hpp \ 95 stubs/AsyncOperationStub.hpp 96 OperationQueueUnitTest_LDADD = \ 97 ../JobMarket/libJobMarketOperations.la \ 98 ../JobMarket/libJobMarketJobs.la \ 99 ../JobMarket/libJobMarketHelper.la \ 100 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 101 ${CodePatterns_LIBS} 102 103 SystemCommandJobUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 104 SystemCommandJobUnitTest_SOURCES = UnitTestMain.cpp \ 105 SystemCommandJobUnitTest.cpp \ 106 SystemCommandJobUnitTest.hpp 107 SystemCommandJobUnitTest_LDADD = \ 108 ../JobMarket/libJobMarketJobs.la \ 109 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 110 $(BOOST_IOSTREAMS_LDFLAGS) $(BOOST_IOSTREAMS_LIBS) \ 111 $(BOOST_FILESYSTEM_LDFLAGS) $(BOOST_FILESYSTEM_LIBS) \ 112 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 113 ${CodePatterns_LIBS} 114 115 WorkerAddressUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 116 WorkerAddressUnitTest_SOURCES = UnitTestMain.cpp \ 117 WorkerAddressUnitTest.cpp \ 118 WorkerAddressUnitTest.hpp 119 WorkerAddressUnitTest_LDADD = \ 120 ../JobMarket/libJobMarketHelper.la \ 121 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 122 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 123 ${CodePatterns_LIBS} 124 125 WorkerPoolUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl 126 WorkerPoolUnitTest_SOURCES = UnitTestMain.cpp \ 127 WorkerPoolUnitTest.cpp \ 128 WorkerPoolUnitTest.hpp \ 129 stubs/ObserverStub.cpp \ 130 stubs/ObserverStub.hpp 131 WorkerPoolUnitTest_LDADD = \ 132 ../JobMarket/libJobMarketPool.la \ 133 ../JobMarket/libJobMarketHelper.la \ 134 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \ 135 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \ 136 ${CodePatterns_LIBS} 193 194 BoxUnitTest_SOURCES = \ 195 BoxUnitTest.cpp \ 196 BoxUnitTest.hpp \ 197 stubs/ObserverStub.cpp \ 198 stubs/ObserverStub.hpp \ 199 ../Shapes/unittests/stubs/ApproximateShapeAreaStub.cpp \ 200 ../Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp 201 BoxUnitTest_LDADD = \ 202 $(ALLLIBS) \ 203 ../libMolecuilderShapes.la \ 204 ../libMolecuilderHelpers.la 205 206 AtomIdSetUnitTest_SOURCES = \ 207 AtomIdSetUnitTest.cpp \ 208 AtomIdSetUnitTest.hpp 209 AtomIdSetUnitTest_LDADD = $(ALLLIBS) 210 211 Box_BoundaryConditionsTest_SOURCES = \ 212 Box_BoundaryConditionsUnitTest.cpp \ 213 Box_BoundaryConditionsUnitTest.hpp 214 Box_BoundaryConditionsTest_LDADD = \ 215 $(ALLLIBS) \ 216 ../libMolecuilderShapes.la \ 217 ../libMolecuilderHelpers.la 218 219 FormulaUnittest_SOURCES = \ 220 FormulaUnitTest.cpp \ 221 FormulaUnitTest.hpp 222 FormulaUnittest_LDADD = $(ALLLIBS) 223 224 ListOfBondsUnitTest_SOURCES = \ 225 ListOfBondsUnitTest.cpp \ 226 ListOfBondsUnitTest.hpp 227 ListOfBondsUnitTest_LDADD = $(ALLLIBS) 228 229 MoleculeUnitTest_SOURCES = \ 230 MoleculeUnitTest.cpp \ 231 MoleculeUnitTest.hpp 232 MoleculeUnitTest_LDADD = \ 233 $(ALLLIBS) \ 234 ../libMolecuilderShapes.la \ 235 ../libMolecuilderHelpers.la 236 237 WorldTimeUnitTest_SOURCES = \ 238 WorldTimeUnitTest.cpp \ 239 WorldTimeUnitTest.hpp 240 WorldTimeUnitTest_LDADD = \ 241 $(ALLLIBS) \ 242 ../libMolecuilderShapes.la \ 243 ../libMolecuilderHelpers.la 244 245 246 TestRunner_SOURCES = TestRunnerMain.cpp $(TESTSOURCES) $(TESTHEADERS) 247 TestRunner_LDADD = ${UILIBS} ${ALLLIBS} 137 248 138 249 #AUTOMAKE_OPTIONS = parallel-tests 250 251 endif -
src/unittests/UnitTestMain.cpp
r404d2b r363f28 1 1 /* 2 * Project: JobMarket3 * Description: asynchronous Server/Controller/Client-approach to parallel computing, based on boost::asio4 * Copyright (C) 2010-2012 Frederik Heber. All rights reserved.2 * Project: MoleCuilder 3 * Description: creates and alters molecular systems 4 * Copyright (C) 2010-2012 University of Bonn. All rights reserved. 5 5 * 6 * 7 * This file is part of MoleCuilder. 8 * 9 * MoleCuilder is free software: you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as published by 11 * the Free Software Foundation, either version 2 of the License, or 12 * (at your option) any later version. 13 * 14 * MoleCuilder is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with MoleCuilder. If not, see <http://www.gnu.org/licenses/>. 6 21 */ 7 22 -
src/unittests/stubs/ObserverStub.cpp
r404d2b r363f28 1 1 /* 2 * Project: JobMarket3 * Description: asynchronous Server/Controller/Client-approach to parallel computing, based on boost::asio4 * Copyright (C) 2012 Frederik Heber. All rights reserved.2 * Project: MoleCuilder 3 * Description: creates and alters molecular systems 4 * Copyright (C) 2012 University of Bonn. All rights reserved. 5 5 * 6 * 7 * This file is part of MoleCuilder. 8 * 9 * MoleCuilder is free software: you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as published by 11 * the Free Software Foundation, either version 2 of the License, or 12 * (at your option) any later version. 13 * 14 * MoleCuilder is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with MoleCuilder. If not, see <http://www.gnu.org/licenses/>. 6 21 */ 7 22 -
tests/CodeChecks/Makefile.am
r404d2b r363f28 4 4 5 5 TESTSCRIPTS = \ 6 testsuite-action_present_in_userguide.at \ 6 7 testsuite-config_h.at \ 7 8 testsuite-date_in_dox.at \ 9 testsuite-globallistofactions_hpp.at \ 8 10 testsuite-header-dist.at \ 9 11 testsuite-memdebug.at \ 10 testsuite-project-disclaimer.at 12 testsuite-project-disclaimer.at \ 13 testsuite-testsuite-in-makefile.at 11 14 12 15 DISTCLEANFILES = atconfig … … 59 62 echo 'm4_define([AT_PACKAGE_STRING], [@PACKAGE_STRING@])' && \ 60 63 echo 'm4_define([AT_PACKAGE_BUGREPORT], [@PACKAGE_BUGREPORT@])'; \ 61 } >' $(srcdir)/package.m4'64 } >'package.m4' -
tests/CodeChecks/testsuite-config_h.at
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # 5 # This program is free software: you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by 7 # the Free Software Foundation, either version 3 of the License, or 8 # (at your option) any later version. 9 # 10 # This program is distributed in the hope that it will be useful, 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 # GNU General Public License for more details. 14 # 15 # You should have received a copy of the GNU General Public License 16 # along with this program. If not, see <http://www.gnu.org/licenses/>. 17 # 1 18 AT_SETUP([Checking for present config.h include]) 2 19 AT_KEYWORDS([CodeCheck config_h]) 3 ok=" "20 ok="unity.cpp AllActionHeaders.hpp AllActionPython.hpp AllPotentialHeaders.hpp pugiconfig.hpp pugixml.cpp pugixml.hpp" 4 21 echo `pwd` 5 22 echo "${#ok[*]} are ok to not contain config.h: ${ok[*]}." … … 17 34 fi 18 35 done 36 # no .moc.cpp 37 if test ! -z "`echo $file | grep '.moc.cpp'`"; then 38 found=1 39 fi 40 if test ! -z "`echo $file | grep 'moc_'`"; then 41 found=1 42 fi 19 43 # if not, check whether it contains the include 20 44 if test $found -eq 0 -
tests/CodeChecks/testsuite-date_in_dox.at
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # 5 # This program is free software: you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by 7 # the Free Software Foundation, either version 3 of the License, or 8 # (at your option) any later version. 9 # 10 # This program is distributed in the hope that it will be useful, 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 # GNU General Public License for more details. 14 # 15 # You should have received a copy of the GNU General Public License 16 # along with this program. If not, see <http://www.gnu.org/licenses/>. 17 # 1 18 AT_SETUP([Checking for present date stamp in .dox files]) 2 19 AT_KEYWORDS([CodeCheck dox date_in_dox]) -
tests/CodeChecks/testsuite-header-dist.at
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # 5 # This program is free software: you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by 7 # the Free Software Foundation, either version 3 of the License, or 8 # (at your option) any later version. 9 # 10 # This program is distributed in the hope that it will be useful, 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 # GNU General Public License for more details. 14 # 15 # You should have received a copy of the GNU General Public License 16 # along with this program. If not, see <http://www.gnu.org/licenses/>. 17 # 1 18 AT_SETUP([Checking that header files get distributed]) 2 19 AT_KEYWORDS([CodeCheck header]) 3 20 4 ok=" "21 ok="ExportGraph.hpp ExportGraph_ToFiles.hpp ExportGraph_ToJobs.hpp" 5 22 echo "${#ok[*]} are ok not to get distributed: ${ok[*]}." 6 23 Makefiles=`find ${abs_top_srcdir}/src -name Makefile.am` -
tests/CodeChecks/testsuite-memdebug.at
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # 5 # This program is free software: you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by 7 # the Free Software Foundation, either version 3 of the License, or 8 # (at your option) any later version. 9 # 10 # This program is distributed in the hope that it will be useful, 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 # GNU General Public License for more details. 14 # 15 # You should have received a copy of the GNU General Public License 16 # along with this program. If not, see <http://www.gnu.org/licenses/>. 17 # 1 18 AT_SETUP([Checking for present MemDebug.hpp include]) 2 19 AT_KEYWORDS([CodeCheck MemDebug]) 3 ok=" "20 ok="builder.cpp MemDebug.cpp SubspaceFactorizer.cpp TestRunner.cpp unity.cpp pugixml.cpp" 4 21 echo `pwd` 5 22 echo "${#ok[*]} are ok to not contain MemDebug.hpp: ${ok[0]} ${ok[1]}." … … 17 34 fi 18 35 done 36 # no .moc.cpp 37 if test ! -z "`echo $file | grep '.moc.cpp'`"; then 38 found=1 39 fi 40 if test ! -z "`echo $file | grep 'moc_'`"; then 41 found=1 42 fi 19 43 # if not, check whether it contains the include if its NOT a unit test 20 44 if test -z `echo $file | grep unittests` -
tests/CodeChecks/testsuite-project-disclaimer.at
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # Copyright (C) 2013 Frederik Heber 5 # 6 # This program is free software: you can redistribute it and/or modify 7 # it under the terms of the GNU General Public License as published by 8 # the Free Software Foundation, either version 3 of the License, or 9 # (at your option) any later version. 10 # 11 # This program is distributed in the hope that it will be useful, 12 # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 # GNU General Public License for more details. 15 # 16 # You should have received a copy of the GNU General Public License 17 # along with this program. If not, see <http://www.gnu.org/licenses/>. 18 # 1 19 AT_SETUP([Checking for present project disclaimer]) 2 20 AT_KEYWORDS([CodeCheck disclaimer]) 3 ok="" 21 ok="unity.cpp pugixml.cpp" 22 okdir="UIElements/Views/Qt4/Plotting UIElements/Views/Qt4/Plotting/QScrollZoomer UIElements/Views/Qt4/Plotting/XMLParser" 4 23 echo `pwd` 5 24 echo "${#ok[*]} are ok to not contain config.h: ${ok[*]}." … … 9 28 # check whether its one of the excluded ones 10 29 found=0 30 # skip files taken over from seismolo project 31 for item in $okdir 32 do 33 if test "`dirname $file`" == "${abs_top_srcdir}/src/$item" 34 then 35 found=1 36 break 37 fi 38 done 39 # skip other specific files from 3rd party source or created ones 11 40 for item in $ok 12 41 do … … 17 46 fi 18 47 done 48 # no .moc.cpp 49 if test ! -z "`echo $file | grep '.moc.cpp'`"; then 50 found=1 51 fi 52 if test ! -z "`echo $file | grep 'moc_'`"; then 53 found=1 54 fi 19 55 # if not, check whether it contains the include 20 56 if test $found -eq 0 21 57 then 22 AT_CHECK([egrep -q " * Project: JobMarket" $file], 0, [ignore], [ignore], [echo "Could not find project disclaimer in $file."]) 23 AT_CHECK([egrep -q " * Copyright.* Frederik Heber" $file], 0, [ignore], [ignore], [echo "Could not find copyright in $file."]) 58 AT_CHECK([egrep -q " * Project: MoleCuilder" $file], 0, [ignore], [ignore], [echo "Could not find project disclaimer in $file."]) 59 AT_CHECK([egrep -q " * Copyright.* University of Bonn" $file], 0, [ignore], [ignore], [ 60 AT_CHECK([egrep -q " * Copyright.* Frederik Heber" $file], 0, [ignore], [ignore], [echo "Could not find copyright with current year ${year} in $file."])]) 61 AT_CHECK([egrep -q " * MoleCuilder is free software" $file], 0, [ignore], [ignore], [echo "Could not find MoleCuilder reference in $file."]) 24 62 fi 25 63 done -
tests/CodeChecks/testsuite.at
-
Property mode
changed from
100755
to100644
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # 5 # This program is free software: you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by 7 # the Free Software Foundation, either version 3 of the License, or 8 # (at your option) any later version. 9 # 10 # This program is distributed in the hope that it will be useful, 11 # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 # GNU General Public License for more details. 14 # 15 # You should have received a copy of the GNU General Public License 16 # along with this program. If not, see <http://www.gnu.org/licenses/>. 17 # 1 18 # Process with autom4te to create an -*- Autotest -*- test suite. 2 19 # … … 4 21 # In pre initial files are placed, in post results can be found to be checked by diff in this testsuite. 5 22 6 AT_INIT([ Job Market])7 AT_TESTED( egrep find grep)23 AT_INIT([Molecular Builder]) 24 AT_TESTED(basename egrep find grep sed) 8 25 9 26 # Use colored output with new-enough Autotest. 10 27 m4_ifdef([AT_COLOR_TESTS], [AT_COLOR_TESTS]) 11 28 12 AT_BANNER([ JobMarket- Code Checks])29 AT_BANNER([MoleCuilder - Code Checks]) 13 30 m4_include(atlocal) 14 31 … … 17 34 m4_include(testsuite-date_in_dox.at) 18 35 36 m4_include(testsuite-globallistofactions_hpp.at) 37 19 38 m4_include(testsuite-memdebug.at) 20 39 … … 22 41 23 42 m4_include(testsuite-header-dist.at) 43 44 m4_include(testsuite-testsuite-in-makefile.at) 45 46 m4_include(testsuite-action_present_in_userguide.at) -
Property mode
changed from
-
tests/Makefile.am
r404d2b r363f28 2 2 3 3 SUBDIRS += \ 4 Calculations \ 4 5 CodeChecks \ 5 regression 6 GuiChecks \ 7 regression \ 8 Fragmentations \ 9 Tesselations \ 10 Python \ 11 JobMarket 6 12 13 .PHONY: extracheck guicheck installextracheck 14 15 guicheck: 16 cd GuiChecks && $(MAKE) guicheck 17 extracheck: 18 cd Calculations && $(MAKE) extracheck 19 installextracheck: 20 cd Calculations && $(MAKE) installextracheck -
tests/regression/Makefile.am
r404d2b r363f28 1 1 AUTOM4TE = $(SHELL) $(top_srcdir)/build-aux/missing --run autom4te 2 3 TESTSUITE = $(srcdir)/testsuite 2 4 3 5 EXTRA_DIST = \ 4 6 testsuite.at \ 5 7 $(TESTSUITE) \ 6 $(TESTSCRIPTS) \7 8 atlocal.in \ 8 $(srcdir)/package.m4 9 10 TESTSUITE = $(srcdir)/testsuite 9 molecuilder.in \ 10 package.m4 \ 11 runpython.in \ 12 trianglematcher.in \ 13 Analysis \ 14 Atoms \ 15 Bond \ 16 Domain \ 17 Filling \ 18 Fragmentation \ 19 Graph \ 20 Molecules \ 21 Options \ 22 Parser \ 23 Potential \ 24 RandomNumbers \ 25 Selection \ 26 Tesselation 11 27 12 28 DISTCLEANFILES = atconfig … … 14 30 TESTSCRIPTS = 15 31 32 # PLEASE adhere to alphabetical ordering of TESTSCRIPTS 33 16 34 TESTSCRIPTS += \ 17 $(srcdir)/testsuite-addingjobs.at \ 18 $(srcdir)/testsuite-checkstate.at \ 19 $(srcdir)/testsuite-checkalive.at \ 20 $(srcdir)/testsuite-completerun.at \ 21 $(srcdir)/testsuite-enrollinpool.at \ 22 $(srcdir)/testsuite-getresults.at \ 23 $(srcdir)/testsuite-resubmitjobs.at \ 24 $(srcdir)/testsuite-server-shutdown.at \ 25 $(srcdir)/testsuite-server-worker.at 35 $(srcdir)/Atoms/testsuite-atoms.at \ 36 $(srcdir)/Atoms/Add/testsuite-atoms-add.at \ 37 $(srcdir)/Atoms/ChangeElement/testsuite-atoms-change-element.at \ 38 $(srcdir)/Atoms/Mirror/testsuite-atoms-mirror.at \ 39 $(srcdir)/Atoms/Remove/testsuite-atoms-remove.at \ 40 $(srcdir)/Atoms/RemoveCuboid/testsuite-atoms-remove-cuboid.at \ 41 $(srcdir)/Atoms/RemoveSphere/testsuite-atoms-remove-sphere.at \ 42 $(srcdir)/Atoms/SaveSelectedAtoms/testsuite-atoms-save-selected-atoms.at \ 43 $(srcdir)/Atoms/Saturate/testsuite-atoms-saturate-atoms-bonded_atoms.at \ 44 $(srcdir)/Atoms/Saturate/testsuite-atoms-saturate-atoms-carbon.at \ 45 $(srcdir)/Atoms/Saturate/testsuite-atoms-saturate-atoms-nitrogen.at \ 46 $(srcdir)/Atoms/Translation/testsuite-atoms-translation.at \ 47 $(srcdir)/Atoms/TranslationToOrigin/testsuite-atoms-translation-to-origin.at \ 48 $(srcdir)/Bond/testsuite-bond.at \ 49 $(srcdir)/Bond/Add/testsuite-bond-add.at \ 50 $(srcdir)/Bond/Add/testsuite-bond-add_multiple.at \ 51 $(srcdir)/Bond/AdjacencyMatcher/testsuite-bond-adjacencymatcher.at \ 52 $(srcdir)/Bond/Remove/testsuite-bond-remove.at \ 53 $(srcdir)/Bond/Remove/testsuite-bond-remove_multiple.at \ 54 $(srcdir)/Bond/SetDegree/testsuite-bond-set-degree.at \ 55 $(srcdir)/Bond/SetDegree/testsuite-bond-set-degree_multiple.at \ 56 $(srcdir)/Analysis/testsuite-analysis.at \ 57 $(srcdir)/Analysis/DipoleAngularCorrelation/testsuite-analysis-dipole-angular-correlation.at \ 58 $(srcdir)/Analysis/DipoleAngularCorrelation-PeriodicBoundaries/testsuite-analysis-dipole-angular-correlation-periodic-boundaries.at \ 59 $(srcdir)/Analysis/DipoleCorrelation-DiscreteAngles/testsuite-analysis-dipole-correlation-discrete-angles.at \ 60 $(srcdir)/Analysis/DipoleCorrelation-Empty/testsuite-analysis-dipole-correlation-empty.at \ 61 $(srcdir)/Analysis/PairCorrelation/testsuite-analysis-pair-correlation.at \ 62 $(srcdir)/Analysis/PairCorrelation-RangeTest/testsuite-analysis-pair-correlation-range-test.at \ 63 $(srcdir)/Analysis/PointCorrelation/testsuite-analysis-point-correlation.at \ 64 $(srcdir)/Analysis/PrincipalAxisSystem/testsuite-analysis-principal-axis-system.at \ 65 $(srcdir)/Analysis/SurfaceCorrelation/testsuite-analysis-surface-correlation.at \ 66 $(srcdir)/Domain/testsuite-domain.at \ 67 $(srcdir)/Domain/AddEmptyBoundary/testsuite-domain-add-empty-boundary.at \ 68 $(srcdir)/Domain/BoundInBox/testsuite-domain-bound-in-box.at \ 69 $(srcdir)/Domain/CenterInBox/testsuite-domain-center-in-box.at \ 70 $(srcdir)/Domain/CenterOnEdge/testsuite-domain-center-on-edge.at \ 71 $(srcdir)/Domain/ChangeBox/testsuite-domain-change-box.at \ 72 $(srcdir)/Domain/RepeatBox/testsuite-domain-repeat-box.at \ 73 $(srcdir)/Domain/ScaleBox/testsuite-domain-scale-box.at \ 74 $(srcdir)/Domain/SetBoundaryConditions/testsuite-domain-set-boundary-conditions.at \ 75 $(srcdir)/Filling/testsuite-filling.at \ 76 $(srcdir)/Filling/FillSurface/testsuite-fill-surface-cube.at \ 77 $(srcdir)/Filling/FillSurface/testsuite-fill-surface-cylinder.at \ 78 $(srcdir)/Filling/FillSurface/testsuite-fill-surface-everywhere.at \ 79 $(srcdir)/Filling/FillSurface/testsuite-fill-surface-micelle.at \ 80 $(srcdir)/Filling/FillSurface/testsuite-fill-surface-nowhere.at \ 81 $(srcdir)/Filling/FillSurface/testsuite-fill-surface-sphere.at \ 82 $(srcdir)/Filling/FillVolume/testsuite-fill-volume-cube.at \ 83 $(srcdir)/Filling/FillVolume/testsuite-fill-volume-cylinder.at \ 84 $(srcdir)/Filling/FillVolume/testsuite-fill-volume-everywhere.at \ 85 $(srcdir)/Filling/FillVolume/testsuite-fill-volume-nowhere.at \ 86 $(srcdir)/Filling/FillVolume/testsuite-fill-volume-sphere.at \ 87 $(srcdir)/Filling/RegularGrid/testsuite-fill-regular-grid.at \ 88 $(srcdir)/Filling/RegularGrid/testsuite-fill-regular-grid-with-minimum-distance-to-surface.at \ 89 $(srcdir)/Filling/RegularGrid/testsuite-fill-regular-grid-with-surface.at \ 90 $(srcdir)/Filling/SuspendInWater/testsuite-suspend-in-water.at \ 91 $(srcdir)/Fragmentation/testsuite-fragmentation.at \ 92 $(srcdir)/Fragmentation/AnalyseFragmentationResults/testsuite-fragmentation-analyse-fragment-results.at \ 93 $(srcdir)/Fragmentation/FragmentationAutomation/testsuite-fragmentation-fragmentation-automation.at \ 94 $(srcdir)/Fragmentation/FragmentMolecule/testsuite-fragmentation-fragment-molecule.at \ 95 $(srcdir)/Fragmentation/FragmentMolecule-MaxOrder/testsuite-fragmentation-fragment-molecule-maxorder.at \ 96 $(srcdir)/Fragmentation/ParseSaveFragmentResults/testsuite-fragmentation-parse-save-fragment-results.at \ 97 $(srcdir)/Fragmentation/StoreSaturatedFragment/testsuite-fragmentation-store-saturated-fragment.at \ 98 $(srcdir)/Graph/testsuite-graph.at \ 99 $(srcdir)/Graph/CreateAdjacency/testsuite-graph-create-adjacency.at \ 100 $(srcdir)/Graph/DepthFirstSearch/testsuite-graph-depth-first-search.at \ 101 $(srcdir)/Graph/DestroyAdjacency/testsuite-graph-destroy-adjacency.at \ 102 $(srcdir)/Graph/SubgraphDissection/testsuite-graph-subgraph-dissection.at \ 103 $(srcdir)/Graph/SubgraphDissection-BoundaryConditions/testsuite-graph-subgraph-dissection_boundary-conditions.at \ 104 $(srcdir)/Molecules/testsuite-molecules.at \ 105 $(srcdir)/Molecules/BondFile/testsuite-molecules-fragmentation-bond-file.at \ 106 $(srcdir)/Molecules/BondFile/testsuite-molecules-tremolo-dbond-file.at \ 107 $(srcdir)/Molecules/ChangeBondAngle/testsuite-molecules-change-bond-angle.at \ 108 $(srcdir)/Molecules/Copy/testsuite-molecules-copy-molecule.at \ 109 $(srcdir)/Molecules/ForceAnnealing/testsuite-molecules-force-annealing.at \ 110 $(srcdir)/Molecules/LinearInterpolationofTrajectories/testsuite-molecules-linear-interpolation-of-trajectories.at \ 111 $(srcdir)/Molecules/Remove/testsuite-molecules-remove.at \ 112 $(srcdir)/Molecules/RotateAroundOrigin/testsuite-molecules-rotate-around-origin.at \ 113 $(srcdir)/Molecules/RotateAroundSelf/testsuite-molecules-rotate-around-self.at \ 114 $(srcdir)/Molecules/RotateToPrincipalAxisSystem/testsuite-molecules-rotate-to-principal-axis-system.at \ 115 $(srcdir)/Molecules/SaveAdjacency/testsuite-molecules-save-adjacency.at \ 116 $(srcdir)/Molecules/SaveBonds/testsuite-molecules-save-bonds.at \ 117 $(srcdir)/Molecules/SaveSelectedMolecules/testsuite-molecules-save-selected-molecules.at \ 118 $(srcdir)/Molecules/SaveTemperature/testsuite-molecules-save-temperature.at \ 119 $(srcdir)/Molecules/StretchBond/testsuite-molecules-stretch-bond.at \ 120 $(srcdir)/Molecules/Translation/testsuite-molecules-translation.at \ 121 $(srcdir)/Molecules/Translation-Periodic/testsuite-molecules-translation-periodic.at \ 122 $(srcdir)/Molecules/VerletIntegration/testsuite-molecules-verlet-integration.at \ 123 $(srcdir)/Options/testsuite-options.at \ 124 $(srcdir)/Options/BondLengthTable/testsuite-options-bond-length-table.at \ 125 $(srcdir)/Options/DryRun/testsuite-options-dryrun.at \ 126 $(srcdir)/Options/DryRun/testsuite-options-dryrun-storesession.at \ 127 $(srcdir)/Options/DryRun/testsuite-options-no-dryrun.at \ 128 $(srcdir)/Options/ElementsDb/testsuite-options-no-elements-db.at \ 129 $(srcdir)/Options/ElementsDb/testsuite-options-elements-db.at \ 130 $(srcdir)/Options/Empty/testsuite-options-empty-configs.at \ 131 $(srcdir)/Options/FastParsing/testsuite-options-fast-parsing.at \ 132 $(srcdir)/Options/Help/testsuite-options-help.at \ 133 $(srcdir)/Options/InvalidCommands/testsuite-options-invalid-commands.at \ 134 $(srcdir)/Options/Session/testsuite-options-load-session-python.at \ 135 $(srcdir)/Options/Session/testsuite-options-store-session-cli.at \ 136 $(srcdir)/Options/Session/testsuite-options-store-session-python.at \ 137 $(srcdir)/Options/SetDefaultName/testsuite-options-set-default-name.at \ 138 $(srcdir)/Options/Verbosity/testsuite-options-verbosity.at \ 139 $(srcdir)/Options/Warranty/testsuite-options-warranty.at \ 140 $(srcdir)/Parser/testsuite-parser.at \ 141 $(srcdir)/Parser/Mpqc/testsuite-parser-mpqc-empty.at \ 142 $(srcdir)/Parser/Mpqc/testsuite-parser-mpqc-load.at \ 143 $(srcdir)/Parser/Mpqc/testsuite-parser-mpqc-load-multiply.at \ 144 $(srcdir)/Parser/Mpqc/testsuite-parser-mpqc-save.at \ 145 $(srcdir)/Parser/Pcp/testsuite-parser-pcp-empty.at \ 146 $(srcdir)/Parser/Pcp/testsuite-parser-pcp-load.at \ 147 $(srcdir)/Parser/Pcp/testsuite-parser-pcp-load-multiply.at \ 148 $(srcdir)/Parser/Pcp/testsuite-parser-pcp-multiple-timesteps.at \ 149 $(srcdir)/Parser/Pcp/testsuite-parser-pcp-save.at \ 150 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-capital_letters_element.at \ 151 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-CONECTs_empty_space.at \ 152 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-empty.at \ 153 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-load.at \ 154 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-load-multiply.at \ 155 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-load-various.at \ 156 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-multiple-timesteps.at \ 157 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-save.at \ 158 $(srcdir)/Parser/Pdb/testsuite-parser-pdb-with-conects.at \ 159 $(srcdir)/Parser/Psi3/testsuite-parser-psi3-empty.at \ 160 $(srcdir)/Parser/Psi3/testsuite-parser-psi3-load.at \ 161 $(srcdir)/Parser/Psi3/testsuite-parser-psi3-load-multiply.at \ 162 $(srcdir)/Parser/Psi3/testsuite-parser-psi3-save.at \ 163 $(srcdir)/Parser/SetParameters/Mpqc/testsuite-parser-set-parameters-mpqc.at \ 164 $(srcdir)/Parser/SetParameters/Mpqc/testsuite-parser-set-parameters-mpqc-basis.at \ 165 $(srcdir)/Parser/SetParameters/Mpqc/testsuite-parser-set-parameters-mpqc-maxiterations.at \ 166 $(srcdir)/Parser/SetParameters/Mpqc/testsuite-parser-set-parameters-mpqc-none.at \ 167 $(srcdir)/Parser/SetParameters/Mpqc/testsuite-parser-set-parameters-mpqc-theory.at \ 168 $(srcdir)/Parser/SetParameters/Psi3/testsuite-parser-set-parameters-psi3-reference.at \ 169 $(srcdir)/Parser/SetParameters/Psi3/testsuite-parser-set-parameters-psi3-wavefunction.at \ 170 $(srcdir)/Parser/Tremolo/testsuite-parser-tremolo-empty.at \ 171 $(srcdir)/Parser/Tremolo/testsuite-parser-tremolo-improper.at \ 172 $(srcdir)/Parser/Tremolo/testsuite-parser-tremolo-load.at \ 173 $(srcdir)/Parser/Tremolo/testsuite-parser-tremolo-load-multiply.at \ 174 $(srcdir)/Parser/Tremolo/testsuite-parser-tremolo-save.at \ 175 $(srcdir)/Parser/Tremolo/testsuite-parser-tremolo-save-unique_usedfields.at \ 176 $(srcdir)/Parser/Tremolo-Exttypes/testsuite-parser-tremolo-save-selected-atoms-as-exttypes.at \ 177 $(srcdir)/Parser/Tremolo-Potentials/testsuite-parser-tremolo-potentials-load.at \ 178 $(srcdir)/Parser/Tremolo-Potentials/testsuite-parser-tremolo-potentials-save.at \ 179 $(srcdir)/Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-resetatomdata.at \ 180 $(srcdir)/Parser/Tremolo-SetAtomdata/testsuite-parser-tremolo-setatomdata.at \ 181 $(srcdir)/Parser/Xyz/testsuite-parser-xyz-empty.at \ 182 $(srcdir)/Parser/Xyz/testsuite-parser-xyz-load.at \ 183 $(srcdir)/Parser/Xyz/testsuite-parser-xyz-load-multiply.at \ 184 $(srcdir)/Parser/Xyz/testsuite-parser-xyz-load-various.at \ 185 $(srcdir)/Parser/Xyz/testsuite-parser-xyz-multiple-timesteps.at \ 186 $(srcdir)/Parser/Xyz/testsuite-parser-xyz-save.at \ 187 $(srcdir)/Potential/testsuite-potential.at \ 188 $(srcdir)/Potential/FitPartialCharges/testsuite-potential-fit-partial-charges.at \ 189 $(srcdir)/Potential/FitPotential/testsuite-potential-fit-potential.at \ 190 $(srcdir)/Potential/SaveParseParticleParameters/testsuite-potential-save-parse-particle-parameters.at \ 191 $(srcdir)/Potential/SaveParsePotentials/testsuite-potential-save-parse-potentials.at \ 192 $(srcdir)/RandomNumbers/testsuite-randomnumbers.at \ 193 $(srcdir)/RandomNumbers/Distribution/testsuite-set-random-number-distribution.at \ 194 $(srcdir)/RandomNumbers/Engine/testsuite-set-random-number-engine.at \ 195 $(srcdir)/Selection/testsuite-selection.at \ 196 $(srcdir)/Selection/Atoms/testsuite-selection-atoms.at \ 197 $(srcdir)/Selection/Atoms/AllAtoms/testsuite-selection-select-all-atoms.at \ 198 $(srcdir)/Selection/Atoms/AllAtoms/testsuite-selection-unselect-all-atoms.at \ 199 $(srcdir)/Selection/Atoms/AllAtomsOfMolecule/testsuite-selection-select-all-atoms-of-molecule.at \ 200 $(srcdir)/Selection/Atoms/AllAtomsOfMolecule/testsuite-selection-unselect-all-atoms-of-molecule.at \ 201 $(srcdir)/Selection/Atoms/AtomByElement/testsuite-selection-select-atoms-by-element.at \ 202 $(srcdir)/Selection/Atoms/AtomByElement/testsuite-selection-unselect-atoms-by-element.at \ 203 $(srcdir)/Selection/Atoms/AtomById/testsuite-selection-select-atom-by-id.at \ 204 $(srcdir)/Selection/Atoms/AtomById/testsuite-selection-select-atom-by-id-multiple.at \ 205 $(srcdir)/Selection/Atoms/AtomById/testsuite-selection-unselect-atom-by-id.at \ 206 $(srcdir)/Selection/Atoms/AtomById/testsuite-selection-unselect-atom-by-id-multiple.at \ 207 $(srcdir)/Selection/Atoms/AtomByOrder/testsuite-selection-select-atom-by-order.at \ 208 $(srcdir)/Selection/Atoms/AtomByOrder/testsuite-selection-unselect-atom-by-order.at \ 209 $(srcdir)/Selection/Atoms/AtomsInsideCuboid/testsuite-selection-select-atoms-inside-cuboid.at \ 210 $(srcdir)/Selection/Atoms/AtomsInsideCuboid/testsuite-selection-select-atoms-inside-cuboid-with-defaults.at \ 211 $(srcdir)/Selection/Atoms/AtomsInsideCuboid/testsuite-selection-unselect-atoms-inside-cuboid.at \ 212 $(srcdir)/Selection/Atoms/AtomsInsideSphere/testsuite-selection-select-atoms-inside-sphere.at \ 213 $(srcdir)/Selection/Atoms/AtomsInsideSphere/testsuite-selection-select-atoms-inside-tiny-sphere.at \ 214 $(srcdir)/Selection/Atoms/AtomsInsideSphere/testsuite-selection-unselect-atoms-inside-sphere.at \ 215 $(srcdir)/Selection/Atoms/AtomsInsideSphere/testsuite-selection-unselect-atoms-inside-tiny-sphere.at \ 216 $(srcdir)/Selection/Atoms/ClearAtoms/testsuite-selection-clear-atoms.at \ 217 $(srcdir)/Selection/Atoms/InvertAtoms/testsuite-selection-invert-atoms.at \ 218 $(srcdir)/Selection/Atoms/PopAtomSelection/testsuite-selection-pop-atom-selection.at \ 219 $(srcdir)/Selection/Atoms/PushAtomSelection/testsuite-selection-push-atom-selection.at \ 220 $(srcdir)/Selection/Molecules/testsuite-selection-molecules.at \ 221 $(srcdir)/Selection/Molecules/AllMolecules/testsuite-selection-select-all-molecules.at \ 222 $(srcdir)/Selection/Molecules/AllMolecules/testsuite-selection-unselect-all-molecules.at \ 223 $(srcdir)/Selection/Molecules/ClearMolecules/testsuite-selection-clear-molecules.at \ 224 $(srcdir)/Selection/Molecules/InvertMolecules/testsuite-selection-invert-molecules.at \ 225 $(srcdir)/Selection/Molecules/MoleculeByFormula/testsuite-selection-select-molecules-by-formula.at \ 226 $(srcdir)/Selection/Molecules/MoleculeByFormula/testsuite-selection-unselect-molecules-by-formula.at \ 227 $(srcdir)/Selection/Molecules/MoleculeById/testsuite-selection-select-molecule-by-id.at \ 228 $(srcdir)/Selection/Molecules/MoleculeById/testsuite-selection-unselect-molecule-by-id.at \ 229 $(srcdir)/Selection/Molecules/MoleculeByName/testsuite-selection-select-molecules-by-name.at \ 230 $(srcdir)/Selection/Molecules/MoleculeByName/testsuite-selection-unselect-molecules-by-name.at \ 231 $(srcdir)/Selection/Molecules/MoleculeByOrder/testsuite-selection-select-molecule-by-order-backward.at \ 232 $(srcdir)/Selection/Molecules/MoleculeByOrder/testsuite-selection-select-molecule-by-order-forward.at \ 233 $(srcdir)/Selection/Molecules/MoleculeByOrder/testsuite-selection-unselect-molecule-by-order-backward.at \ 234 $(srcdir)/Selection/Molecules/MoleculeByOrder/testsuite-selection-unselect-molecule-by-order-forward.at \ 235 $(srcdir)/Selection/Molecules/MoleculeOfAtom/testsuite-selection-select-atoms-molecules.at \ 236 $(srcdir)/Selection/Molecules/MoleculeOfAtom/testsuite-selection-unselect-atoms-molecules.at \ 237 $(srcdir)/Selection/Molecules/PopMoleculeSelection/testsuite-selection-pop-molecule-selection.at \ 238 $(srcdir)/Selection/Molecules/PushMoleculeSelection/testsuite-selection-push-molecule-selection.at \ 239 $(srcdir)/Tesselation/testsuite-tesselation.at \ 240 $(srcdir)/Tesselation/BigConvex/testsuite-tesselation-big-convex-envelope.at \ 241 $(srcdir)/Tesselation/BigNonConvex/testsuite-tesselation-big-non-convex-envelope.at \ 242 $(srcdir)/Tesselation/Convex/testsuite-tesselation-convex-envelope.at \ 243 $(srcdir)/Tesselation/NonConvex/testsuite-tesselation-non-convex-envelope.at \ 244 $(srcdir)/Tesselation/TriangleMatcher/testsuite-tesselation-trianglematcher.at \ 245 $(srcdir)/WorldTime/testsuite-worldtime.at \ 246 $(srcdir)/WorldTime/SetWorldTime/testsuite-worldtime-set-world-time.at \ 247 $(srcdir)/WorldTime/StepWorldTime/testsuite-worldtime-step-world-time.at 26 248 27 249 max_jobs = 4 28 250 29 check-local: a tconfig atlocal$(TESTSUITE)251 check-local: adjacencymatcher atconfig atlocal molecuilder runpython trianglematcher $(TESTSUITE) 30 252 nrjobs=; \ 31 253 for flag in $$MAKEFLAGS; do \ … … 35 257 esac; \ 36 258 done; \ 37 $(SHELL) '$(TESTSUITE)' $$nrjobs AUTOTEST_PATH='$(abs_top_builddir)/src /JobMarket' $(TESTSUITEFLAGS)38 39 installcheck-local: a tconfig atlocal$(TESTSUITE)259 $(SHELL) '$(TESTSUITE)' $$nrjobs AUTOTEST_PATH='$(abs_top_builddir)/src' $(TESTSUITEFLAGS) 260 261 installcheck-local: adjacencymatcher atconfig atlocal molecuilder runpython trianglematcher $(TESTSUITE) 40 262 nrjobs=; \ 41 263 for flag in $$MAKEFLAGS; do \ … … 65 287 echo 'm4_define([AT_PACKAGE_STRING], [@PACKAGE_STRING@])' && \ 66 288 echo 'm4_define([AT_PACKAGE_BUGREPORT], [@PACKAGE_BUGREPORT@])'; \ 67 } >' $(srcdir)/package.m4'289 } >'package.m4' -
tests/regression/atlocal.in
r404d2b r363f28 1 abs_top_srcdir='@abs_top_srcdir@' 1 prefix='@prefix@' 2 exec_prefix='@prefix@' 3 topdir='@abs_top_builddir@' 4 bindir='@bindir@' 5 valgrind='@VALGRIND@' -
tests/regression/testsuite.at
-
Property mode
changed from
100755
to100644
r404d2b r363f28 1 # 2 # MoleCuilder - creates and alters molecular systems 3 # Copyright (C) 2008-2012 University of Bonn 4 # Copyright (C) 2013 Frederik Heber 5 # 6 # This program is free software: you can redistribute it and/or modify 7 # it under the terms of the GNU General Public License as published by 8 # the Free Software Foundation, either version 3 of the License, or 9 # (at your option) any later version. 10 # 11 # This program is distributed in the hope that it will be useful, 12 # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 # GNU General Public License for more details. 15 # 16 # You should have received a copy of the GNU General Public License 17 # along with this program. If not, see <http://www.gnu.org/licenses/>. 18 # 1 19 # Process with autom4te to create an -*- Autotest -*- test suite. 2 20 # 21 # see regression/... subdirs wherein for each of the cases and each check (enumerated) is a pre and post dir. 22 # In pre initial files are placed, in post results can be found to be checked by diff in this testsuite. 3 23 4 AT_INIT([ JobMarket])5 AT_TESTED(diff grep egrep fgrep )24 AT_INIT([Molecular Builder]) 25 AT_TESTED(diff grep egrep fgrep awk) 6 26 7 27 # makes functions in CheckCommand.sh available within the tests … … 14 34 m4_ifdef([AT_COLOR_TESTS], [AT_COLOR_TESTS]) 15 35 16 # check whether server shutdown works 17 m4_include([testsuite-server-shutdown.at]) 36 m4_include(Options/testsuite-options.at) 18 37 19 # check whether poolworker may succesfully enroll in pool 20 m4_include([testsuite-enrollinpool.at]) 38 m4_include(WorldTime/testsuite-worldtime.at) 21 39 22 # check whether adding jobs works 23 m4_include([testsuite-addingjobs.at]) 40 m4_include(Parser/testsuite-parser.at) 24 41 25 # check whether dead busy poolworker is automatically removed 26 m4_include([testsuite-checkalive.at]) 42 m4_include(Atoms/testsuite-atoms.at) 27 43 28 # check whether checking state works 29 m4_include([testsuite-checkstate.at]) 44 m4_include(Bond/testsuite-bond.at) 30 45 31 # check whether getting results works 32 m4_include([testsuite-getresults.at]) 46 m4_include(Selection/testsuite-selection.at) 33 47 34 # check whether Server/Client construct for automatized calculation is working 35 m4_include([testsuite-server-worker.at]) 48 m4_include(RandomNumbers/testsuite-randomnumbers.at) 36 49 37 # check whether resubmitting of failed jobs works 38 m4_include([testsuite-resubmitjobs.at]) 50 m4_include(Domain/testsuite-domain.at) 39 51 40 # check whether complete run works 41 m4_include([testsuite-completerun.at]) 52 m4_include(Graph/testsuite-graph.at) 53 54 m4_include(Molecules/testsuite-molecules.at) 55 56 m4_include(Fragmentation/testsuite-fragmentation.at) 57 58 m4_include(Potential/testsuite-potential.at) 59 60 m4_include(Tesselation/testsuite-tesselation.at) 61 62 m4_include(Filling/testsuite-filling.at) 63 64 m4_include(Analysis/testsuite-analysis.at) -
Property mode
changed from
Note:
See TracChangeset
for help on using the changeset viewer.