sawsim.git
14 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.

14 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.

14 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...

14 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.

14 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...

14 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

14 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 ;).

14 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

14 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.

14 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 ;).

14 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.

14 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.

15 years agoAdded inverse tension functions for speed. Bumped to version 0.7. v0.7
W. Trevor King [Tue, 24 Mar 2009 17:40:02 +0000 (13:40 -0400)]
Added inverse tension functions for speed.  Bumped to version 0.7.

15 years agoFixed up the guts to support the new multi-state capabilities.
W. Trevor King [Mon, 9 Mar 2009 19:06:30 +0000 (15:06 -0400)]
Fixed up the guts to support the new multi-state capabilities.

15 years agoStarting on version 0.6, with generalized discrete reactions. v0.6
W. Trevor King [Thu, 5 Mar 2009 18:39:37 +0000 (13:39 -0500)]
Starting on version 0.6, with generalized discrete reactions.

Added domain-chain and reaction-graph figures.

Added timescale section and cleaned up some of the overview text.

15 years agoAdded stiffness env. parameter and stiffness-corrected Bell model. v0.5
W. Trevor King [Wed, 25 Feb 2009 22:27:23 +0000 (17:27 -0500)]
Added stiffness env. parameter and stiffness-corrected Bell model.

Following Walton et al. and my poster.  Currently a fairly ugly hack to
get some simulation data for my poster (in 4 days!).  I will come
back and clean things up afterwards.  Due to the coarseness of the
tension balancer, it's probably a better idea to get stiffnesses
for each of the groups separately and then add the stiffnesses in
series.  This removes the balancer completely.

15 years agoIncreased verbose output from tension_model_utils.
W. Trevor King [Tue, 24 Feb 2009 00:08:38 +0000 (19:08 -0500)]
Increased verbose output from tension_model_utils.

15 years agoCorrected some strings for tension_model_utils.
W. Trevor King [Tue, 24 Feb 2009 00:01:23 +0000 (19:01 -0500)]
Corrected some strings for tension_model_utils.

15 years agoFixed a few minor typos.
W. Trevor King [Mon, 2 Feb 2009 16:47:09 +0000 (11:47 -0500)]
Fixed a few minor typos.

15 years agoAdded Fmax and Xmax options to tension_model_utils
W. Trevor King [Tue, 11 Nov 2008 20:59:10 +0000 (15:59 -0500)]
Added Fmax and Xmax options to tension_model_utils

Also added Fmax/Xmax/xmax_special/etc current value outputs to
tension_model_utils and k_model_utils.

15 years agoAdded testing scripts, comparing sawsim with theory
W. Trevor King [Tue, 9 Sep 2008 17:14:07 +0000 (13:14 -0400)]
Added testing scripts, comparing sawsim with theory

TODO, adjust bell & kramers testing to read param files like
const_rate does.

15 years agoRemoved debugging printfs from sawsim.c stepping
W. Trevor King [Sun, 7 Sep 2008 19:08:51 +0000 (15:08 -0400)]
Removed debugging printfs from sawsim.c stepping

15 years agoAdded the option to make discrete steps in x.
W. Trevor King [Sat, 6 Sep 2008 01:48:59 +0000 (21:48 -0400)]
Added the option to make discrete steps in x.

15 years agoMade directory prerequisites order-only prerequisites.
W. Trevor King [Tue, 2 Sep 2008 13:21:46 +0000 (09:21 -0400)]
Made directory prerequisites order-only prerequisites.

Avoids excessive rebuilding. See
  http://www.kolpackov.net/pipermail/notes/2004-January/000001.html
  http://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html
  http://savannah.gnu.org/support/?104349
for details

15 years agoAdded a better introduction and UTF-8 capability in sawsim.nw.
W. Trevor King [Tue, 2 Sep 2008 12:41:18 +0000 (08:41 -0400)]
Added a better introduction and UTF-8 capability in sawsim.nw.

15 years agoFixed linker error running wlc check in check_sawsim.
W. Trevor King [Tue, 2 Sep 2008 11:39:24 +0000 (07:39 -0400)]
Fixed linker error running wlc check in check_sawsim.

Obviously, the wlc check should be in check_tension_model, but that
doesn't exist yet.  When it does, it will still need the wlc()
declaration, since wlc() is not exported directly by tension_model.h.
I also added protective #ifndef-#def-#endif protection to the headers.

TODO: Determine which modules depend on which other modules and make
the appropriate includes in the headers themselves.  Then the .c files
need only include the headers they use directly.

15 years agoFixed some bugs with `make clean'
W. Trevor King [Mon, 1 Sep 2008 03:31:47 +0000 (23:31 -0400)]
Fixed some bugs with `make clean'

I had forgotten to clean up all the sawsim modules :p.

15 years agoMajor rewrite of the build system/Makefile reorganized.
W. Trevor King [Mon, 1 Sep 2008 03:25:36 +0000 (23:25 -0400)]
Major rewrite of the build system/Makefile reorganized.

Almost everything got pushed out into subdirectories of the base
`sawsim/' dir.  All the versioned source got sent to `src'.
Processing `sawsim.nw' generates C code, which is placed in `build'
along with the odd bits of code not in the noweb file.  Finally, we
compile the code in `build' into executibles placed in `bin' and
documents placed in `doc'.  TODO: add appropriate commentary to
`sawsim.nw'.

Standardizing the Makefile also cut down on the module-specific code
needed in the makefile, which should encourage better modulization.

I hadn't been able to compile the checks in a while with the old
system, and now they compile, but they don't pass the checks.  Well,
that's what checks are for ;), although in this case I suspect it's
just that I've been ignoring the checks for a while and the code has
moved on, leaving incompatible checks.  Fixing the checks is the next
order of business, so we can implement fast, pre-commit sanity-checks.

15 years agoAdded some missing cleanup targets to the Makefile
W. Trevor King [Fri, 29 Aug 2008 23:26:09 +0000 (19:26 -0400)]
Added some missing cleanup targets to the Makefile

15 years agoAdded a .gitignore file
W. Trevor King [Fri, 29 Aug 2008 21:04:16 +0000 (17:04 -0400)]
Added a .gitignore file

Noweb produces a lot of unversioned source files.  .gitignore keeps
track of them so they don't clutter up your `git status' calls and so
on.

15 years agoFixed a few minor typos
W. Trevor King [Fri, 8 Aug 2008 17:09:16 +0000 (17:09 +0000)]
Fixed a few minor typos

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@15 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoFixed LaTeX typos
W. Trevor King [Wed, 6 Aug 2008 10:57:18 +0000 (10:57 +0000)]
Fixed LaTeX typos

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@14 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoFixed some other tension model bugs in tension_model_handler.
W. Trevor King [Tue, 22 Jul 2008 17:04:21 +0000 (17:04 +0000)]
Fixed some other tension model bugs in tension_model_handler.

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@13 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoPassed INIT_MODEL() alterations on to the utility programs.
W. Trevor King [Tue, 22 Jul 2008 17:00:40 +0000 (17:00 +0000)]
Passed INIT_MODEL() alterations on to the utility programs.

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@12 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoFixed 'y > yub' error by reducing default tolerances min_d{x,y} in
W. Trevor King [Mon, 21 Jul 2008 23:53:25 +0000 (23:53 +0000)]
Fixed 'y > yub' error by reducing default tolerances min_d{x,y} in
tension_balance() and x_of_xo().  Now that this is known to be a
problem, I need to come up with a more permanent fix...

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@11 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoFixed group implementation, still need to test it.
W. Trevor King [Mon, 21 Jul 2008 17:30:57 +0000 (17:30 +0000)]
Fixed group implementation, still need to test it.

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@10 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoAdded Fmax, xmin, and xmax options to k_model_utils
W. Trevor King [Wed, 16 Jul 2008 23:50:01 +0000 (23:50 +0000)]
Added Fmax, xmin, and xmax options to k_model_utils

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@9 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoAdded noweb dependency information to README
W. Trevor King [Wed, 16 Jul 2008 21:32:06 +0000 (21:32 +0000)]
Added noweb dependency information to README

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@8 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoAdded GSL dependency notes.
W. Trevor King [Wed, 16 Jul 2008 19:34:22 +0000 (19:34 +0000)]
Added GSL dependency notes.

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@6 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoAdded interpolating lookup table files. They are from my interp_table package
W. Trevor King [Wed, 16 Jul 2008 19:26:56 +0000 (19:26 +0000)]
Added interpolating lookup table files.  They are from my interp_table package
(a GNU libavl spinoff), so they aren't included in sawsim.nw.

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@5 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agofixed some citation typos
W. Trevor King [Wed, 16 Jul 2008 19:21:43 +0000 (19:21 +0000)]
fixed some citation typos

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@4 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoAdded sawsim.bib so sawsim.pdf will compile with citations.
W. Trevor King [Wed, 16 Jul 2008 18:39:34 +0000 (18:39 +0000)]
Added sawsim.bib so sawsim.pdf will compile with citations.

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@3 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoadded a README explaining how to get the makefile out of sawsim.nw
W. Trevor King [Wed, 16 Jul 2008 18:36:26 +0000 (18:36 +0000)]
added a README explaining how to get the makefile out of sawsim.nw

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@2 865a22a6-13cc-4084-8aa6-876098d8aa20

15 years agoinitial package import. version 0.4 v0.4
W. Trevor King [Wed, 16 Jul 2008 18:12:18 +0000 (18:12 +0000)]
initial package import. version 0.4

git-svn-id: svn://abax.physics.drexel.edu/sawsim/trunk@1 865a22a6-13cc-4084-8aa6-876098d8aa20