unfold-protein.git
11 years agoREADME: Remove duplicate pyafm target master
W. Trevor King [Mon, 27 May 2013 16:30:04 +0000 (12:30 -0400)]
README: Remove duplicate pyafm target

11 years agoREADME: Update to discuss unfold.py script and workflow
W. Trevor King [Mon, 27 May 2013 10:52:47 +0000 (06:52 -0400)]
README: Update to discuss unfold.py script and workflow

The old instructions were from back when I ran unfolding scans from
the IPython prompt.

11 years agoconfig: No need to import FFT_tools.window_hann
W. Trevor King [Mon, 27 May 2013 10:18:33 +0000 (06:18 -0400)]
config: No need to import FFT_tools.window_hann

11 years agoConvert to load_from_config() handling v0.2
W. Trevor King [Fri, 24 May 2013 21:31:56 +0000 (17:31 -0400)]
Convert to load_from_config() handling

Rather than juggling independent configurations, consolidate them
under ScanConfig in the style of pyafm.storage.  This makes it easy to
load a full scanning config from ~/.config/unfold-default.yaml, which
is a plain-text file that can easily be tweaked by hand.

To generate an initial unfold-default.yaml file, try something like:

  >>> import unfold_protein.storage as storage
  >>> config = storage.get_default_config()
  >>> storage.save_scan_config(config=config)'

which uses defaults from unfold_protein.config as well as the default
AFM configuration from pyafm.storage.load_config().

11 years agoconfig: Use native Python types for default unfolding velocities
W. Trevor King [Fri, 24 May 2013 21:26:08 +0000 (17:26 -0400)]
config: Use native Python types for default unfolding velocities

This avoids the need for funkyness when saving the configuration with
h5config's YAML storage backend.

11 years agoAdd packaging boilerplate
W. Trevor King [Fri, 24 May 2013 19:27:04 +0000 (15:27 -0400)]
Add packaging boilerplate

11 years ago.be: Upgrade bugs-everywhere repository from v1.0 to v1.5
W. Trevor King [Fri, 24 May 2013 19:22:27 +0000 (15:22 -0400)]
.be: Upgrade bugs-everywhere repository from v1.0 to v1.5

11 years agoplot-unfold.py: Autoscale tight (to avoid wasting space)
W. Trevor King [Sun, 12 May 2013 20:36:54 +0000 (16:36 -0400)]
plot-unfold.py: Autoscale tight (to avoid wasting space)

11 years agounfold.py: Remove config overrides for unfolding distance, etc.
W. Trevor King [Sat, 11 May 2013 15:14:17 +0000 (11:14 -0400)]
unfold.py: Remove config overrides for unfolding distance, etc.

These snuck in during 87f12e4 (Update unfold_protein to use the new
pyafm.storage._load_afm, 2012-05-11).  Obviously, I should be using
h5config to load a user-written YAML file instead of hard-coding these
values in the unfolding script.

11 years agoplot-unfold.py: Add a simple h5 -> png converter
W. Trevor King [Wed, 13 Mar 2013 14:03:41 +0000 (10:03 -0400)]
plot-unfold.py: Add a simple h5 -> png converter

This makes it easy to filter successful pulls by eye using your
favorite image viewer.

11 years agoscan: Add stepper_tweaks (--no-stepper-tweaks) to UnfoldScanner.run()
W. Trevor King [Thu, 7 Feb 2013 06:13:42 +0000 (01:13 -0500)]
scan: Add stepper_tweaks (--no-stepper-tweaks) to UnfoldScanner.run()

This is useful if you're not around to monitor a long run.  If the
laser is disrupted (e.g. via a bubble in the fluid cell), the
photodiode voltage can flatlign, even if you aren't off the surface.
A confused UnfoldScanner with *think* it's off the surface, and charge
blindly in, crushing the cantilever into itsy bits ;).

Laser disruption detection is a great reason to measure the total
photodiode voltage.  Unfortunately, that signal is not carried on the
cable between the MultiMode and the NanoScope.  I tried jumping it out
of the MultiMode by hand, but after a few weeks like that, the board
died.  I'm not sure it was related, but I think it's safer to just
disable stepper tweaks when you're not around to monitor the signal.

11 years agoscan: Approach the surface with stepper_approach() before looping
W. Trevor King [Thu, 7 Feb 2013 06:07:34 +0000 (01:07 -0500)]
scan: Approach the surface with stepper_approach() before looping

This makes the initial approach much faster if you are starting far
from the surface (e.g. after a calibcant calibration).

11 years agoscan: Log the loop index
W. Trevor King [Thu, 7 Feb 2013 06:05:55 +0000 (01:05 -0500)]
scan: Log the loop index

So the user can gauge the remaining experiment time.

11 years agounfolder: Save the timestamp, x-position, and temp under environment/
W. Trevor King [Thu, 7 Feb 2013 06:03:00 +0000 (01:03 -0500)]
unfolder: Save the timestamp, x-position, and temp under environment/

Keep the HDF5 root clean by moving these parameters under the
environment/ group.  Earlier versions of unfold-protein did not record
the x-position.

11 years agoStandardize matplotlib rendering on figure.canvas.draw() and figure.show().
W. Trevor King [Thu, 7 Feb 2013 06:01:25 +0000 (01:01 -0500)]
Standardize matplotlib rendering on figure.canvas.draw() and figure.show().

In interactive mode, skip the no-op pyplot.show().  In non-interactive
mode, the show() calls will block until the window is closed.

12 years agoRan update-copyright.py.
W. Trevor King [Fri, 11 May 2012 18:22:38 +0000 (14:22 -0400)]
Ran update-copyright.py.

12 years agoAdd .update-copyright.conf.
W. Trevor King [Fri, 11 May 2012 18:21:40 +0000 (14:21 -0400)]
Add .update-copyright.conf.

Use my update-copyright project to manage copyright blurbs.

http://pypi.python.org/pypi/update-copyright/

12 years agoChange my email address from drexel.edu to tremily.us.
W. Trevor King [Wed, 18 Apr 2012 17:24:54 +0000 (13:24 -0400)]
Change my email address from drexel.edu to tremily.us.

12 years agoUpdate unfold_protein to use the new pyafm.storage._load_afm.
W. Trevor King [Fri, 11 May 2012 17:42:47 +0000 (13:42 -0400)]
Update unfold_protein to use the new pyafm.storage._load_afm.

This is a messy commit to get my Git repo in sync with the version I'm
currently using in the lab, but most of the changes have to do with
the nested-config overhaul starting with pypiezo's:

  commit de497a3734372f5fa7c92d6ff7bdb6b2e327c345
  Author: W. Trevor King <wking@drexel.edu>
  Date:   Thu Mar 15 10:13:20 2012 -0400

    Optional config-based-setup for PiezoAxis, OutputChannel, and InputChannel.

    See the module docstring for details on why this is useful.

12 years agoRemove TemperatureConfig from unfold_protein.config.UnfoldCycleConfig.
W. Trevor King [Mon, 26 Mar 2012 18:53:32 +0000 (14:53 -0400)]
Remove TemperatureConfig from unfold_protein.config.UnfoldCycleConfig.

Replaced by pyafm.config.AFMConfig['temperature'].

12 years agoRemove unfold_protein.temperature (replaced by pyafm.temperature).
W. Trevor King [Mon, 26 Mar 2012 18:50:51 +0000 (14:50 -0400)]
Remove unfold_protein.temperature (replaced by pyafm.temperature).

12 years agoRemove unfold_protein.afm now that there is a configurable default AFM in pyafm.
W. Trevor King [Mon, 26 Mar 2012 18:32:02 +0000 (14:32 -0400)]
Remove unfold_protein.afm now that there is a configurable default AFM in pyafm.

Now you can use pyafm.storage.load_afm() and instead of hardcoding your
configuration in the unfold_protein.afm module.

12 years agoUpdate unfold.py config to show temp in Kelvin.
W. Trevor King [Wed, 25 Jan 2012 15:33:43 +0000 (10:33 -0500)]
Update unfold.py config to show temp in Kelvin.

By default, `calibcant.config.TemperatureConfig` assumes you'll give
temperatures in Celsius, but in
`unfold_python.temperature.Temperature.get_temperature`, we convert
the backend temperature from Celsius to Kelvin.

12 years agoAssorted plots and bug-fixes in unfolder.py.
W. Trevor King [Tue, 24 Jan 2012 13:08:42 +0000 (08:08 -0500)]
Assorted plots and bug-fixes in unfolder.py.

* Updated `ExceptionTooFar` plot and `Unfolder._plot` to use `FIGURE`
  and `_pyplot`.
* Fix configs used in `Unfolder._unfold`'s bit/meter conversions.
* Remove unrecognized keyword `dtype` from the `.astype` call.
* Reshape `out` so it is 2D (as required by `Piezo.ramp`).
* Don't force unfold log values to be integers.
* Fix filename generation in `Unfolder._save`.
* Removed trailing whitespace.

12 years agoMake ExceptionTooFar check more robust with .max().
W. Trevor King [Tue, 24 Jan 2012 13:02:08 +0000 (08:02 -0500)]
Make ExceptionTooFar check more robust with .max().

12 years agoStylistic cleanups in UnfoldScanner.move_far_from_surface.
W. Trevor King [Tue, 24 Jan 2012 12:59:04 +0000 (07:59 -0500)]
Stylistic cleanups in UnfoldScanner.move_far_from_surface.

12 years agoIncrease 'far' in ApproachConfig to 30 microns.
W. Trevor King [Tue, 24 Jan 2012 12:57:50 +0000 (07:57 -0500)]
Increase 'far' in ApproachConfig to 30 microns.

12 years agoRemove buggy self argument from Temperature self() call.
W. Trevor King [Mon, 23 Jan 2012 19:29:05 +0000 (14:29 -0500)]
Remove buggy self argument from Temperature self() call.

12 years agoMerge irrelevant "Update to data_logger v0.4." by dropping the changes.
W. Trevor King [Tue, 17 Jan 2012 22:53:03 +0000 (17:53 -0500)]
Merge irrelevant "Update to data_logger v0.4." by dropping the changes.

The new h5config framework no longer uses data_logger to locate or
save data.

12 years agoUpdate to use new h5config, pycomedi, etc.
W. Trevor King [Tue, 17 Jan 2012 22:49:26 +0000 (17:49 -0500)]
Update to use new h5config, pycomedi, etc.

12 years agoAdd .gitignore.
W. Trevor King [Tue, 17 Jan 2012 22:04:34 +0000 (17:04 -0500)]
Add .gitignore.

14 years agoUpdate to data_logger v0.4.
W. Trevor King [Tue, 9 Nov 2010 20:14:58 +0000 (15:14 -0500)]
Update to data_logger v0.4.

15 years agoAvoid banded non-contact region by reducing default stepsize.
W. Trevor King [Mon, 6 Jul 2009 20:23:26 +0000 (16:23 -0400)]
Avoid banded non-contact region by reducing default stepsize.

See bug 18dd6d0a-3c45-4aba-80da-fa32ffaaf5db for example banded data.
(plot deflection without lines to see why I call it "banded").  Reducing
the stepsize reduces the jolt on the cantilever, and reducing the
points-per-step accordingly means we don't have to change the
card-clock rate.  It might be worth adding "target-clock-rate" option,
and letting the stepsize be determined automatically (as an
alternative to setting the stepsize explicitly) but we'll
put that off for now...

15 years agoAdded README file.
W. Trevor King [Fri, 26 Jun 2009 18:55:20 +0000 (14:55 -0400)]
Added README file.

Also a bug/thoughts on packaging trouble (blocked by temperature).

15 years agoUpdated to work with newly bundled pizeo package.
W. Trevor King [Fri, 26 Jun 2009 18:32:20 +0000 (14:32 -0400)]
Updated to work with newly bundled pizeo package.

15 years agoAdded EFILE debugging output to ExceptionTooClose case.
W. Trevor King [Wed, 3 Jun 2009 19:22:41 +0000 (15:22 -0400)]
Added EFILE debugging output to ExceptionTooClose case.

15 years agoBegan versioning.
W. Trevor King [Wed, 3 Jun 2009 19:19:40 +0000 (15:19 -0400)]
Began versioning.