sawsim.git
14 years ago-m/--manager now defaults to auto-select.
W. Trevor King [Wed, 27 Oct 2010 19:19:50 +0000 (12:19 -0700)]
-m/--manager now defaults to auto-select.

14 years agoAdd ability to import a default manager with get_manager().
W. Trevor King [Wed, 27 Oct 2010 19:10:58 +0000 (12:10 -0700)]
Add ability to import a default manager with get_manager().

14 years agopysawsim/parameter_error.py should not be executable.
W. Trevor King [Wed, 27 Oct 2010 17:28:51 +0000 (10:28 -0700)]
pysawsim/parameter_error.py should not be executable.

14 years agoAdd support for nosetests multiprocessing plugin.
W. Trevor King [Wed, 27 Oct 2010 16:21:49 +0000 (09:21 -0700)]
Add support for nosetests multiprocessing plugin.

See
  python-nose/doc/doc_tests/test_multiprocess/multiprocess.rst
for an explanation of the plugin and its peculiarities.

On a 16-core SMP machine, the test suite now runs with:
  Ran 27 tests in 58.077s
vs the old:
  Ran 23 tests in 69.325s

The extra tests are repeats, probably having to do with a
split-vs-share issue that I haven't tracked down yet.  The tests could
be faster still if we used the subproc manager by default for Python
>= 2.6.  I'll do that next.

14 years agoUse single-quote delimited strings when possssible.
W. Trevor King [Wed, 27 Oct 2010 15:07:08 +0000 (08:07 -0700)]
Use single-quote delimited strings when possssible.

14 years agoHistogramMatcher should not plot residual comparisons by default.
W. Trevor King [Wed, 27 Oct 2010 15:01:59 +0000 (08:01 -0700)]
HistogramMatcher should not plot residual comparisons by default.

14 years agoAdded bin/sawsim_param_error.py and pysawsim/parameter_error.py
W. Trevor King [Wed, 27 Oct 2010 14:59:40 +0000 (07:59 -0700)]
Added bin/sawsim_param_error.py and pysawsim/parameter_error.py

14 years agoAssorted minor cleanups to pysawsim/parameter_scan.py.
W. Trevor King [Wed, 27 Oct 2010 00:35:24 +0000 (20:35 -0400)]
Assorted minor cleanups to pysawsim/parameter_scan.py.

14 years agoRemove some more velocity-specific cruft from pysawsim/parameter_scan.py.
W. Trevor King [Tue, 26 Oct 2010 22:00:26 +0000 (18:00 -0400)]
Remove some more velocity-specific cruft from pysawsim/parameter_scan.py.

14 years agoparameter_scan.py no longer needs to import anything from the .manager submod.
W. Trevor King [Tue, 26 Oct 2010 21:23:58 +0000 (17:23 -0400)]
parameter_scan.py no longer needs to import anything from the .manager submod.

14 years agoPrint the CommandError of failed sawsim executions.
W. Trevor King [Sun, 24 Oct 2010 14:19:30 +0000 (10:19 -0400)]
Print the CommandError of failed sawsim executions.

14 years agoSave CommandError in failed InvokeJobs.
W. Trevor King [Sun, 24 Oct 2010 14:16:42 +0000 (10:16 -0400)]
Save CommandError in failed InvokeJobs.

14 years agoAdd pysawsim.invoke.CommandError.__repr__() method and doctest.
W. Trevor King [Sun, 24 Oct 2010 14:15:58 +0000 (10:15 -0400)]
Add pysawsim.invoke.CommandError.__repr__() method and doctest.

14 years agoMake pysawsim.invoke.CommandError picklable, and add doctest proof.
W. Trevor King [Sun, 24 Oct 2010 14:04:24 +0000 (10:04 -0400)]
Make pysawsim.invoke.CommandError picklable, and add doctest proof.

14 years agoFix cache shuffling (random.shuffle() shuffles in place, returns None).
W. Trevor King [Sun, 24 Oct 2010 13:47:53 +0000 (09:47 -0400)]
Fix cache shuffling (random.shuffle() shuffles in place, returns None).

14 years agoMove __version__ import from sawsim_histogram to sawsim (for caching).
W. Trevor King [Sun, 24 Oct 2010 13:45:02 +0000 (09:45 -0400)]
Move __version__ import from sawsim_histogram to sawsim (for caching).

14 years agoStart fleshing out "Related work" section in the manual.
W. Trevor King [Sat, 23 Oct 2010 17:57:16 +0000 (13:57 -0400)]
Start fleshing out "Related work" section in the manual.

To facilitate this, I've added the following new keys to sawsim.bib:
  jollymore09, kellermayer97, king10, marszalek98, oberhauser98, rief97a
I also renamed the old rief97 -> rief97b to avoid confusion with rief97a.

Also, run a second bibtex/pdflatex pass on compilation to handle a
single layer of cross referencing in the `note` field.

14 years agoFix some long URLs that had been wrapped by pybtex.
W. Trevor King [Sat, 23 Oct 2010 15:40:19 +0000 (11:40 -0400)]
Fix some long URLs that had been wrapped by pybtex.

14 years agoUpdate the README with more information about the pysawsim wrappers.
W. Trevor King [Sat, 23 Oct 2010 14:48:16 +0000 (10:48 -0400)]
Update the README with more information about the pysawsim wrappers.

14 years agoAdd namedtuple definition from Python 2.6's collections.py as _collections.py
W. Trevor King [Sat, 23 Oct 2010 14:03:48 +0000 (10:03 -0400)]
Add namedtuple definition from Python 2.6's collections.py as _collections.py

14 years agoMove `import with_statement` from sawsim_histogram to sawsim.
W. Trevor King [Sat, 23 Oct 2010 13:31:47 +0000 (09:31 -0400)]
Move `import with_statement` from sawsim_histogram to sawsim.

14 years agoReplace EXAMPLE_HISTOGRAM_FILE_CONTENTS histograms with N=400 examples.
W. Trevor King [Sat, 23 Oct 2010 13:10:02 +0000 (09:10 -0400)]
Replace EXAMPLE_HISTOGRAM_FILE_CONTENTS histograms with N=400 examples.

14 years agoAdd epilogs to each OptionParser in pysawsim.
W. Trevor King [Sat, 23 Oct 2010 12:38:04 +0000 (08:38 -0400)]
Add epilogs to each OptionParser in pysawsim.

14 years agoMove sawsim running into a new pysawsim.sawsim.SawsimRunner class.
W. Trevor King [Sat, 23 Oct 2010 11:42:02 +0000 (07:42 -0400)]
Move sawsim running into a new pysawsim.sawsim.SawsimRunner class.

14 years agoAdd 'mpi' to pysawsim.manager.MANAGERS.
W. Trevor King [Thu, 21 Oct 2010 01:38:43 +0000 (18:38 -0700)]
Add 'mpi' to pysawsim.manager.MANAGERS.

14 years agoRelax command-not-found doctest messages.
W. Trevor King [Thu, 21 Oct 2010 01:36:25 +0000 (18:36 -0700)]
Relax command-not-found doctest messages.

14 years agoMerge branch 'master' of http://www.physics.drexel.edu/~wking/code/git/sawsim
W. Trevor King [Thu, 21 Oct 2010 01:31:54 +0000 (18:31 -0700)]
Merge branch 'master' of physics.drexel.edu/~wking/code/git/sawsim

14 years agoFix dropped receive during ThreadManager._spawn_jobs.
W. Trevor King [Thu, 21 Oct 2010 01:29:25 +0000 (18:29 -0700)]
Fix dropped receive during ThreadManager._spawn_jobs.

14 years agoAdd autogenerated .be/id-cache to .gitignore.
W. Trevor King [Wed, 20 Oct 2010 23:48:32 +0000 (19:48 -0400)]
Add autogenerated .be/id-cache to .gitignore.

14 years agoMerge branch 'master' of ssh://wking@einstein/~/public_html/code/git/sawsim
W. Trevor King [Wed, 20 Oct 2010 23:42:00 +0000 (19:42 -0400)]
Merge branch 'master' of ssh://wking@einstein/~/public_html/code/git/sawsim

14 years agoUpgrade .be bug cache to Bugs Everywhere Directory v1.4.
W. Trevor King [Wed, 20 Oct 2010 23:35:55 +0000 (19:35 -0400)]
Upgrade .be bug cache to Bugs Everywhere Directory v1.4.

14 years agoDisable pysawsim.manager.subproc is multiprocessing is missing.
W. Trevor King [Wed, 20 Oct 2010 23:20:14 +0000 (19:20 -0400)]
Disable pysawsim.manager.subproc is multiprocessing is missing.

14 years agoWork around namedtuple import for Pythons < 2.6.
W. Trevor King [Wed, 20 Oct 2010 23:09:40 +0000 (19:09 -0400)]
Work around namedtuple import for Pythons < 2.6.

14 years agoAlso cleanup local mpd if the pysawsim nosetests fail.
W. Trevor King [Wed, 20 Oct 2010 19:57:45 +0000 (15:57 -0400)]
Also cleanup local mpd if the pysawsim nosetests fail.

14 years agoAdd CC, CFLAGS, and LDFLAGS to the Makefile for easy customization.
W. Trevor King [Wed, 20 Oct 2010 19:49:02 +0000 (15:49 -0400)]
Add CC, CFLAGS, and LDFLAGS to the Makefile for easy customization.

14 years agoWork around missing MPD with a more elaborate pysawsim nosetest hook.
W. Trevor King [Wed, 20 Oct 2010 19:23:16 +0000 (15:23 -0400)]
Work around missing MPD with a more elaborate pysawsim nosetest hook.

14 years agoKill off worker-node implementations of master code.
W. Trevor King [Wed, 20 Oct 2010 17:57:28 +0000 (13:57 -0400)]
Kill off worker-node implementations of master code.

14 years agoAdd pysawsim.manager.mpi with an mpi4py-based manager.
W. Trevor King [Wed, 20 Oct 2010 17:34:48 +0000 (13:34 -0400)]
Add pysawsim.manager.mpi with an mpi4py-based manager.

Test with:
  mpdboot -1 -n 1 -f <(hostname)
  mpiexec -n 5 nosetests --with-doctest --doctest-tests pysawsim/manager/mpi.py
  mpdallexit

I still need to find a way to turn off the doctests when mpi4py is
installed, but the tests are not being run from an `mpiexec`ed
environment.

14 years agoAdd link to Python wiki's parallel processing page.
W. Trevor King [Wed, 20 Oct 2010 11:41:48 +0000 (07:41 -0400)]
Add link to Python wiki's parallel processing page.

14 years agoAdjust pysawsim.manager.pbs to skip most doctests if pbs mod is missing.
W. Trevor King [Wed, 20 Oct 2010 11:30:45 +0000 (07:30 -0400)]
Adjust pysawsim.manager.pbs to skip most doctests if pbs mod is missing.

14 years agoRemove execute permission from pysawsim/manager/pbs.py.
W. Trevor King [Wed, 20 Oct 2010 10:42:14 +0000 (06:42 -0400)]
Remove execute permission from pysawsim/manager/pbs.py.

14 years agoAdd pysawsim.manager.subproc using subprocessing.
W. Trevor King [Wed, 20 Oct 2010 10:38:36 +0000 (06:38 -0400)]
Add pysawsim.manager.subproc using subprocessing.

14 years agoAdd pysawsim.sawsim.main() and bin/sawsim_hist.py calling it.
W. Trevor King [Wed, 20 Oct 2010 10:08:53 +0000 (06:08 -0400)]
Add pysawsim.sawsim.main() and bin/sawsim_hist.py calling it.

Also fix a number of bugs turned up by trial calls to the new
sawsim_hist.py.

14 years agoAdd Histogram.to_stream() and .headings.
W. Trevor King [Wed, 20 Oct 2010 10:05:51 +0000 (06:05 -0400)]
Add Histogram.to_stream() and .headings.

14 years agoFix 'intil_state' -> 'initial_state' typo in pysawsim.sawsim.Event.
W. Trevor King [Wed, 20 Oct 2010 09:53:17 +0000 (05:53 -0400)]
Fix 'intil_state' -> 'initial_state' typo in pysawsim.sawsim.Event.

14 years agoAdd Histogram.calculate_bin_edges().
W. Trevor King [Wed, 20 Oct 2010 09:51:50 +0000 (05:51 -0400)]
Add Histogram.calculate_bin_edges().

14 years agoReduce ThreadManager default worker_thread to 2.
W. Trevor King [Wed, 20 Oct 2010 09:25:50 +0000 (05:25 -0400)]
Reduce ThreadManager default worker_thread to 2.

14 years agoAdd --sawsim option to velocity_dependant_scan.main().
W. Trevor King [Wed, 20 Oct 2010 08:04:59 +0000 (04:04 -0400)]
Add --sawsim option to velocity_dependant_scan.main().

14 years agoAllow Job status logging when .status is an Exception.
W. Trevor King [Wed, 20 Oct 2010 08:00:52 +0000 (04:00 -0400)]
Allow Job status logging when .status is an Exception.

14 years agoAllow Job.__str__() to work when .id == None.
W. Trevor King [Wed, 20 Oct 2010 07:57:15 +0000 (03:57 -0400)]
Allow Job.__str__() to work when .id == None.

14 years agoTeardown manager after use in velocity_dependant_scan.main().
W. Trevor King [Wed, 20 Oct 2010 07:51:29 +0000 (03:51 -0400)]
Teardown manager after use in velocity_dependant_scan.main().

14 years agoAdd --clean-cache option to velocity_dependant_scan.main().
W. Trevor King [Wed, 20 Oct 2010 07:30:27 +0000 (03:30 -0400)]
Add --clean-cache option to velocity_dependant_scan.main().

14 years agoNo need for `if __name__ == '__main__'` in velocity_dependant_scan.
W. Trevor King [Wed, 20 Oct 2010 07:21:41 +0000 (03:21 -0400)]
No need for `if __name__ == '__main__'` in velocity_dependant_scan.

bin/vel_dep_scan.py provides access to velocity_dependant_scan.main().

14 years agoRearrange velocity_dependant_scan.main() to group residual-related options together.
W. Trevor King [Wed, 20 Oct 2010 07:19:01 +0000 (03:19 -0400)]
Rearrange velocity_dependant_scan.main() to group residual-related options together.

14 years agoPass velocity_dependant_scan.main() --manager through to SawsimHistogram.
W. Trevor King [Wed, 20 Oct 2010 07:16:11 +0000 (03:16 -0400)]
Pass velocity_dependant_scan.main() --manager through to SawsimHistogram.

14 years agoReposition matplotlib.use() call in velocity_dependant_scan.py.
W. Trevor King [Wed, 20 Oct 2010 07:10:51 +0000 (03:10 -0400)]
Reposition matplotlib.use() call in velocity_dependant_scan.py.

This fixes:

.../matplotlib/__init__.py:833: UserWarning:
This call to matplotlib.use() has no effect because the the backend
has already been chosen; matplotlib.use() must be called *before*
pylab, matplotlib.pyplot, or matplotlib.backends is imported for the
first time.

14 years agoFix sawsim_histogram imports in velocity_dependant_scan.py.
W. Trevor King [Wed, 20 Oct 2010 07:09:24 +0000 (03:09 -0400)]
Fix sawsim_histogram imports in velocity_dependant_scan.py.

14 years agoAdd bin/vel_dep_scan.py calling pysawsim.velocity_dependant_scan.main().
W. Trevor King [Wed, 20 Oct 2010 07:06:05 +0000 (03:06 -0400)]
Add bin/vel_dep_scan.py calling pysawsim.velocity_dependant_scan.main().

14 years agoAdd --manager option to velocity_dependant_scan.py.
W. Trevor King [Wed, 20 Oct 2010 07:05:18 +0000 (03:05 -0400)]
Add --manager option to velocity_dependant_scan.py.

14 years agoAdd pysawsim.manager.SUBMODS and .IsSubclass and .get_manager.
W. Trevor King [Wed, 20 Oct 2010 06:49:17 +0000 (02:49 -0400)]
Add pysawsim.manager.SUBMODS and .IsSubclass and .get_manager.

IsSubclass is from my hooke.util.pluggable module.  get_manager() is
based on hooke.util.pluggable.submods() and .construct_odict().

.. _hooke: http://code.google.com/p/hooke/

14 years agoTransition more of the pysawsim framework into Python.
W. Trevor King [Wed, 20 Oct 2010 01:27:12 +0000 (21:27 -0400)]
Transition more of the pysawsim framework into Python.

14 years agoAdd pysawsim.sawsim module.
W. Trevor King [Wed, 20 Oct 2010 00:55:27 +0000 (20:55 -0400)]
Add pysawsim.sawsim module.

14 years agoMove 'qwait' to pysawsim.manager.pbs and add the rest of PBSManager.
W. Trevor King [Tue, 19 Oct 2010 23:02:19 +0000 (19:02 -0400)]
Move 'qwait' to pysawsim.manager.pbs and add the rest of PBSManager.

14 years agoFix a few deadlock errors in pysawsim.manager.thread.
W. Trevor King [Tue, 19 Oct 2010 20:43:26 +0000 (16:43 -0400)]
Fix a few deadlock errors in pysawsim.manager.thread.

14 years agoMove Histogram class from fit_force_histogram to new pysawsim.histogram module.
W. Trevor King [Tue, 19 Oct 2010 14:16:50 +0000 (10:16 -0400)]
Move Histogram class from fit_force_histogram to new pysawsim.histogram module.

14 years agoJobManager.async_invoke() should accept Job instances.
W. Trevor King [Tue, 19 Oct 2010 13:04:07 +0000 (09:04 -0400)]
JobManager.async_invoke() should accept Job instances.

It used to attempt to construct them on its own, but with multiple
subclasses (e.g. InvokeJob), that becomes too difficult.

14 years agoAdd pysawsim.manager and pysawsim.manager.thread for running asynchronous jobs.
W. Trevor King [Tue, 19 Oct 2010 12:42:54 +0000 (08:42 -0400)]
Add pysawsim.manager and pysawsim.manager.thread for running asynchronous jobs.

Also:
* simplify .gitignore and add *.pyc.
* add log() and __version__ to pysawsim.
* fix exception handling in pysawsim.invoke.invoke().

14 years agoAdd pysawsim/__init__.py and break invoke out into its own module.
W. Trevor King [Mon, 18 Oct 2010 21:18:21 +0000 (17:18 -0400)]
Add pysawsim/__init__.py and break invoke out into its own module.

14 years agoAdd nosetests line to misc/hooks/REAMDE for pre-commit hook.
W. Trevor King [Mon, 18 Oct 2010 21:03:51 +0000 (17:03 -0400)]
Add nosetests line to misc/hooks/REAMDE for pre-commit hook.

14 years agoIntroduce pysawsim in the README and add fit_force_histograms.py & friends.
W. Trevor King [Mon, 18 Oct 2010 20:54:07 +0000 (16:54 -0400)]
Introduce pysawsim in the README and add fit_force_histograms.py & friends.

14 years agoDocument suggested Git hooks.
W. Trevor King [Mon, 18 Oct 2010 20:39:50 +0000 (16:39 -0400)]
Document suggested Git hooks.

`pre-commit-diff-check` is the current stock pre-commit.sample that
`git init` installs.

14 years ago"% pop. per s" -> "%% pop. per s" in printf() for k_model_utils.
W. Trevor King [Mon, 18 Oct 2010 19:55:23 +0000 (15:55 -0400)]
"% pop. per s" -> "%% pop. per s" in printf() for k_model_utils.

14 years agoAdd prelimiary check_* code for each *.h file in sawsim.nw.
W. Trevor King [Mon, 18 Oct 2010 19:50:23 +0000 (15:50 -0400)]
Add prelimiary check_* code for each *.h file in sawsim.nw.

14 years agoCorrections to sawsim.bib after earlier pybtex run.
W. Trevor King [Mon, 18 Oct 2010 18:00:18 +0000 (14:00 -0400)]
Corrections to sawsim.bib after earlier pybtex run.

Remove extra quotes from around author values
  fixed in pybtex revision:
  wking@drexel.edu-20101016180914-98tpuw47ojcl4zsf

Unwrap broken MCarrion-Vazquez macro.
  pybtex shouldn't break macros after a '-' character, but it does as
  of now.

14 years agoAdd missing comma between references to tension and rate appendicies.
W. Trevor King [Mon, 18 Oct 2010 13:33:06 +0000 (09:33 -0400)]
Add missing comma between references to tension and rate appendicies.

14 years agoAdd Tame the BeaST link and von-naming blurbs to README.bibtex.
W. Trevor King [Sun, 17 Oct 2010 21:19:54 +0000 (17:19 -0400)]
Add Tame the BeaST link and von-naming blurbs to README.bibtex.

14 years agoPreserve space after \copy macro in sawsim.bib.
W. Trevor King [Sat, 16 Oct 2010 16:31:06 +0000 (12:31 -0400)]
Preserve space after \copy macro in sawsim.bib.

14 years agoConsolidated ...X macros and abbreviated journal/publisher macros in sawsim.bib.
W. Trevor King [Sat, 16 Oct 2010 16:28:41 +0000 (12:28 -0400)]
Consolidated ...X macros and abbreviated journal/publisher macros in sawsim.bib.

14 years agoPassed sawsim.bib through pybtex and updated keys in sawsim.nw accordingly.
W. Trevor King [Sat, 16 Oct 2010 16:10:49 +0000 (12:10 -0400)]
Passed sawsim.bib through pybtex and updated keys in sawsim.nw accordingly.

14 years agoCorrections to saswim.bib before reformating with pybtex.
W. Trevor King [Sat, 16 Oct 2010 15:58:52 +0000 (11:58 -0400)]
Corrections to saswim.bib before reformating with pybtex.

14 years agoMoved BibTeX comments from src/sawsim.bib to README.bibtex.
W. Trevor King [Sat, 16 Oct 2010 15:58:25 +0000 (11:58 -0400)]
Moved BibTeX comments from src/sawsim.bib to README.bibtex.

14 years agoAdd examples/Marszalek_Fernandez_1999/titin_intermediate.sh.
W. Trevor King [Thu, 14 Oct 2010 13:58:59 +0000 (09:58 -0400)]
Add examples/Marszalek_Fernandez_1999/titin_intermediate.sh.

14 years agoUpdate copyright/licensing blurbs with newer GPLv3+.
W. Trevor King [Thu, 14 Oct 2010 13:48:09 +0000 (09:48 -0400)]
Update copyright/licensing blurbs with newer GPLv3+.

14 years agoAdded README.git to point Git newbies towards good documentation.
W. Trevor King [Thu, 14 Oct 2010 13:26:42 +0000 (09:26 -0400)]
Added README.git to point Git newbies towards good documentation.

15 years agoAdded inverse piston comments + whitespace in tension_balance()
W. Trevor King [Tue, 13 Oct 2009 11:28:59 +0000 (07:28 -0400)]
Added inverse piston comments + whitespace in tension_balance()

15 years agoFixed mispelled 'sec.transtion_rate' reference
W. Trevor King [Fri, 25 Sep 2009 10:52:27 +0000 (06:52 -0400)]
Fixed mispelled 'sec.transtion_rate' reference

15 years agoAdded cased equation to piston tension model description
W. Trevor King [Fri, 25 Sep 2009 10:43:55 +0000 (06:43 -0400)]
Added cased equation to piston tension model description

15 years agoFixed typo in "Transition rate" section equation
W. Trevor King [Fri, 25 Sep 2009 10:30:19 +0000 (06:30 -0400)]
Fixed typo in "Transition rate" section equation

15 years agoBumped to version 0.10. v0.10
W. Trevor King [Sun, 13 Sep 2009 15:55:50 +0000 (11:55 -0400)]
Bumped to version 0.10.

15 years agoAdded max dF "-F" option to sawsim.
W. Trevor King [Sun, 13 Sep 2009 15:47:58 +0000 (11:47 -0400)]
Added max dF "-F" option to sawsim.

Also added const_env argument to find_tension().  As I state in a
comment in find_tension(), it should really be a
step_call/new_step/whatever option.

15 years agoAdded full_chain_stiffness() to handle stiffness with piston tension.
W. Trevor King [Sun, 13 Sep 2009 14:10:18 +0000 (10:10 -0400)]
Added full_chain_stiffness() to handle stiffness with piston tension.

Currently just sets a hardcoded stiffness dx, but that's pretty ugly.
A slightly better solution would be a user-controlled option, but that
is low on my agenda...

15 years agoAdded piston tension model.
W. Trevor King [Sun, 13 Sep 2009 12:13:13 +0000 (08:13 -0400)]
Added piston tension model.

Also typographic cleanup 'assert (' -> 'assert('.

Currently broken: stiffness calculation with the tension model.

15 years ago-P option now sets target P_N, not P_1. Bumped to version 0.9. v0.9
W. Trevor King [Fri, 21 Aug 2009 12:57:06 +0000 (08:57 -0400)]
-P option now sets target P_N, not P_1.  Bumped to version 0.9.

This cleans up the trouble I had before with
  testing/bell_rate/bell_rate.sh 50 1e-6 0.05 1e-3 1e-9 300
where the large number of domains was making P_N much larger than P_1.
This lead to more "ignored double unfoldings", creating a banded
structure in the simulated histogram.

The new '-P sets target P_N' configuration makes it more
straightforward to use -P for it's intended purpose, avoiding "ignored
double unfoldings", without forcing unnecessarily long timesteps once
the population of the limiting state is reduced.

Note that the second purpose of the -P option, avoiding significant
force changes in a single timestep, is either unaffected (for states
with population 1) or improved (for states with population > 1), but
this should perhaps be separately controllable through it's own
"--dF-max" option, or similar...

15 years agoExtended bell and const rate tests to multi-domain chains
W. Trevor King [Wed, 19 Aug 2009 16:59:49 +0000 (12:59 -0400)]
Extended bell and const rate tests to multi-domain chains

15 years agoThe (P_N = NP_1) bug that triggered 0.7 -> 0.8 isn't so bad.
W. Trevor King [Thu, 13 Aug 2009 18:03:17 +0000 (14:03 -0400)]
The (P_N = NP_1) bug that triggered 0.7 -> 0.8 isn't so bad.

Added notes to that effect.  Still, it's better for having thought it
out more clearly ;).

15 years agosafe_strto*() now also checks for empty input
W. Trevor King [Thu, 13 Aug 2009 11:53:04 +0000 (07:53 -0400)]
safe_strto*() now also checks for empty input

15 years agoSafer string to number conversion with ato*() -> safe_strto*().
W. Trevor King [Thu, 13 Aug 2009 10:09:42 +0000 (06:09 -0400)]
Safer string to number conversion with ato*() -> safe_strto*().

Current hack to avoid including string.h for strlen() in every *.c
file that uses safe_strto*(), which I should fix when I pull them out
into utils.h/c files or similar.

15 years agoRemoved TODO in favor of BugsEverywhere bugtracking.
W. Trevor King [Thu, 13 Aug 2009 00:14:01 +0000 (20:14 -0400)]
Removed TODO in favor of BugsEverywhere bugtracking.

See http://bugseverywhere.org for details on BE.

I also removed the following entry from TODO:
  maybe histogram without dice rolling for identical domains?
since I decided it was a bad idea.  Better to focus the simulation on
what it's good at.  Of course, I may change my mind later and
reinstate the issue ;).

15 years agoFixed _major_ bug in multi-domain unfolding calculations & bumped to 0.8. v0.8
W. Trevor King [Thu, 13 Aug 2009 00:06:24 +0000 (20:06 -0400)]
Fixed _major_ bug in multi-domain unfolding calculations & bumped to 0.8.

The relavant lines of code are:

@@ -548,7 +574,7 @@ int domain_transitions(double F, double dt, environment_t *env, int num_domains,
   k = accel_k(transition->k, F, env, transition->k_params);
   //(*transition->k)(F, env, domain->k_params);
   //printf("k = %g,\tdt = %g,\tk dt = %g\n", k, dt, k*dt);
-  return happens(k*dt*num_domains); /* N dice rolls for prob. k*dt event */
+  return happens(1-pow((1.0-k*dt), num_domains)); /* N dice rolls for prob. k*dt event */
 }
 @ [[happens]] is a random decision making function defined in Appendix \ref{sec.utils}.

Yes, I feel very stupid.  Sorry.

I also took the oportunity to skim over the explanatory text (up to
the Appendix break), making a few updates and typo corrections as well
as adding more detail to the "Timescales" section discussing
multi-unfolding timesteps.

15 years agoinverse_wlc now handles F=HUGE_VAL.
W. Trevor King [Mon, 3 Aug 2009 20:16:19 +0000 (16:16 -0400)]
inverse_wlc now handles F=HUGE_VAL.