Additions and bug fixes
31 Jan 2016
- Cleaned up the previous tutorial in the thrombin example.
5 Dec 2016
- Replaced a data structure in the auxillary programs that was causing a size limitation on the grids.
29 Nov 2016
- Added the feature that atoms with zero radius do not physically interact with other atoms but can pass freely through them. This allows better formulation of "dummy atoms" to describe reaction criteria.
4 Oct 2016
- Fix bug in weighted-ensemble implementation that could cause occasional crashes.
- Made pqr2xml more robust when dealing with extra characters at the end of a line.
18 Sep 2016
- Fixed bug in reading in desolvation forces. Fix of XML bug last December caused parser to read in only zeros, so desolvation force was absent.
- Added script "split_grid" that can decompose an electrostatic dx grid into
a fine grid near the molecule surface and coarse grid further away, allowing much memory to be spared while maintaining accuracy.
6 May 2016
- Fixed bug in weighted ensemble caused by the bug fix of April 22
22 Apr 2016
- Fixed bug that was causing occasional crashes in build_bins
5 Feb 2016
- More Makefile patches
- Clarification in documentation - reaction criteria distances are center-to-center
26 Jan 2016
- Incorporated changes to the Makefile to allow parallel compilation. Thanks to Tom Gillespie.
14 Jan 2016
- Put -charges flag back into mpole_grid fit. So, if you have a ligand
with just charges and no electrostatic grid, you can run a simulation on it.
15 Dec 2015
- Fix error in XML parser. Could have caused very infrequent problems.
17 Jun 2015
- Fixed serious bug in torque computation on Molecule 1.
- Put in more robust multipole model for off-grid electric potential values
- Put in a more consistent BD backstepping criterion
24 Mar 2015
- Fixed bug in error bars from newly-enhanced rates_of_distances.
20 Mar 2015
- BrownDye can now be compiled with clang++
19 Mar 2015
- Fixed bug that caused molecules to be bounced back too many times after several unsuccessful steps. This bug was introduced 10 Dec 2014. Probably does not affect rate constants much.
- Added error bars to rates_of_distances.
12 Mar 2015
- Fixed bug in surface_spheres that could occasionally cause a crash due to round-off error
- Replaced internal random number generator with one from C++11 standard library
10 Mar 2015
- Fixed bug, introduced 10 Dec 2014, that caused all configurations to be output regardless of the value of n-steps-per-output
28 Jan 2015
- Fixed a 32-bit to 64-bit conversion error in the grid indices which could cause errors for very large grids (with more than 2^32 points).
19 Dec 2014
- Fixed serious bug that got introduced in the version of 10 Dec 2014. When doing shortcut diffusional calculations near the b-sphere, the Debye length was left out. If you used the version of 10 Dec 2014, run it again with this version.
10 Dec 2014
- Fixed bug that caused an inaccuracy in time-step split formalization; probably didn't affect most simulations but caused about 3% error in sphere-sphere case.
- reorganized code
14 Mar 2014
- Fixed problem in mpole_grid_fit that was causing the computation of the b-radius not to converge for point charges.
27 Feb 2014
- Fixed code to eliminate compiler warnings.
5 Nov 2013
- Fixed bug in surface_spheres. It was not including insider spheres with the -all flag.
30 Sep 2013
- It is now possible to run simulations without an APBS file for Molecule 1. It figures out the effective charge and b-radius using the xml file of Molecule 1 charges when there is no APBS file.
24 Sep 2013
- Made some error messages in auxilliary programs a bit more informative
20 Sep 2013
- Fixed some file name parsing issues in bd_top.
29 Aug 2013
- Fixed a bug in the weighted-ensemble method.
26 Aug 2013
- "all-in-surface" tag is now properly implemented
17 Jun 2013
- Added information to output of process_trajectories to distinguish btween escaped and stuck trajectories.
10 Jun 2013
- Made process_trajectories more efficient
- Fixed problem in surface_spheres that could cause crash with large files
- Fixed bug in reaction pathway code that could cause problems with reaction coordinate when using nested reaction criteria and weighted-ensemble method.
3 Dec 2012
- Fixed a difficulty that pqr2xml was having with whitespace at
the end of lines.
18 Nov 2012
- Improved the Weighted-Ensemble algorithm
9 Nov 2012
- Removed expat library from the distribution since most computers have it anyway
- Fixed bug that caused stack overflow in rates_of_distance for large datasets.
3 Oct 2012
- Added program rates_of_distances to compute rates as a function of reaction criterion distance, using only one simulation.
- Added program protein_charges to generate test charges using the residue charges sites of SDA.
25 Sep 2012
- Fixed multipole approximation for off-grid region to be more stable
- Removed unneeded optimization in "lumped_charges" that was causing crashes
- Added warning for grids that are too small
- Should now work correctly even if atom numbers in the PQR files are not in sequence.
- Program make_rxn_pairs can now eliminate redundant pairs, such as one of two pairs that share an atom.
6 Sep 2012
- Fixed bug in make_surface_sphere_list that caused crashes in rare cases. No effect on cases that did not crash.
- Fixed problem in C++ code that caused compiling difficulties in latest versions of Fedora and Ubuntu
21 Aug 2012
- Made pqr2xml more robust against merged columns in pqr file
- Fixed uninitialized variable in outer trajectory propagator. Effect on most rate constants likely very small.
31 Jul 2012
- Added ability to make use of grids with anisotropic spacing.
- Now always includes last conformation of a reaction state in the
- Can now compile and run under Mac OS X and Cygwin under Windows.
16 Jul 2012
- Added ability to nest more than one grid on the same level.
4 Dec 2009
- included a new and improved process_trajectories program.
- fixed a bug in the trajectory output of nam_simulation. This affected the apparent orientation of Molecule 1 upon conversion of the output of process_trajectories by xyz_trajectory. (If you have existing trajectory files that need to be converted to xyz format, let me
know and I can provide you with some code to fix the problem.)
- fixed some compilation difficulties with regards to the included copy of Expat.
31 Aug 2009
- fixed a bug in the torque computations using the soft short-ranged forces.
an optional spring tether between atoms on the two molecules
25 Aug 2009 - changed the requirement that states and reactions be specified by consecutive numbers; they now can be given names.
4 Aug 2009 - eliminated requirement to separately list states, in addition to reactions, in the reaction specification file.
3 Aug 2009 - fixed bug in outputting of multiple reactions, bug in makefile
30 Jun 2009
- - changed the way that trajectories are processed in order to use less memory and to speed up trajectory analysis. Introduced two new programs: process_trajectories and xyz_trajectory to replace make_trajectory.
- - now using only makefiles to build; no more python scripts. Type "make all" to build everything.
5 May 2009 - added PQR file option to
16 Mar 2009 - in trajectory file, now prints out the first
configuration state after a change in reaction state
17 Feb 2009
- - added 6-8 Lennard-Jones-style forces as an option
- - fixed a difficulty with automatically generating b-radii that was
making them too small in certain cases
3 Feb 2009 - fixed a bug in the code that finds the
smallest enclosing sphere of a collection of spheres. This
could have affected collisions and short-ranged forces.
20 Jan 2009
- fixed a bug in the computation of the desolvation energy.
- added optional scaling factor
- made it easier to remove the desolvation forces using
7 Jan 2009 - made hydrodynamic interactions optional
6 Jan 2009
- fixed bug in
bd_top that was preventing dielectric information from getting passed to
- the program
make_surface_sphere_list can now work with pqrxml files that are not numbered sequentially.
5 Jan 2009
- adjusted compilation order in Makefile for auxiliary programs
- fixed bug in
make_trajectory which was causing selection of incorrect trajectories in cases of multiple trajectory files
2 Jan 2009 - the program
inside_spheres now can handle pqrxml files in which the spheres are not numbered sequentially or continuously.
30 Dec 2008 - added another time-step tolerance parameter which is useful for small steps near a reactive state.
17 Dec 2008 - Lennard-Jones parameters now can have zero radii
16 Dec 2008
- fixed bug in
make_trajectory program, and added the ability to pick out reacting trajectories.
compute_rate_constant_we to give a more accurate confidence interval.
12 Dec 2008 - fixed bug in
surface_spheres that was causing occasional problems with two-sided surface triangles.
11 Dec 2008
- fixed a logic error in the time-stepping algorithm that was causing hard-sphere overlaps at the minimum time step.
- fixed a problem that was greatly slowing down the evaluation of the LJ forces.
8 Dec 2008 - added the option of using Lennard-Jones forces among the spheres
18 Nov 2008 - fixed more 64-bit compatability issues
14 Nov 2008
- Eliminated need for
- Added soft repulsive 1/r^12 forces among spheres
7 Nov 2008
- Improved the time-stepping algorithm.
- Fixed a bug in the output of trajectories
- Fixed a bug in the computation of the hydrodynamic interactions
2 Nov 2008
- allow the user the choice of manually setting the
b-radius or having it computed automatically
- fixed a potential inconsistency in computing total charges for the
30 Oct 2008
- fixed numerical problem in mpole_grid_fit program
- b-radius is now computed automatically
20 Oct 2008 - added the ability to start molecules from a bound
16 Oct 2008
- added "Requirements" section to manual
- fixed more portability issues with compilation
surface_spheres auxilliary program more robust.
02 Oct 2008 -
Note: format for entering time-step tolerances has changed!
- fixed error that kept it from compiling with gcc 4.3.0
- fixed substantial bug in BD propagation code
- fixed bug in monopole_fit
- fixed memory leak at end
- fixed numerical bug in time step near outer boundary
- made some changes in the time-stepping algorithm
- added flexibility in defining tolerances that govern time-step size
- fixed undocumented "feature" that caused final number of trajectories
to be a small amount off from the specified value when using several threads.
18 Sept 2008 - fixed compiler warnings and a shell portability issue
17 Sept 2008 - Refactored multithread part of code and documented interface. Fixed some portability issues with integers and 32 versus 64-bit machines.
9 Sept 2008 - Fixed portability issues with 64-bit machines