Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
b8dd8db
Make OrgByEnsStrat subclass of DefaultStrat
dwhswenson Jun 29, 2015
b1af386
Merge branch 'balance_and_choice_prob' into organize_by_ensemble_stra…
dwhswenson Jun 29, 2015
97abb06
Draft of OrgBeEns.make_chooser
dwhswenson Jun 30, 2015
3e4dba9
Tests for OrgByEns.make_chooser
dwhswenson Jul 1, 2015
52ef7e3
Merge remote-tracking branch 'upstream/master' into organize_by_ensem…
dwhswenson Jul 2, 2015
6517311
Starting skeleton of OrgByEns.make_movers
dwhswenson Jul 2, 2015
d07dba4
Merge branch 'move_scheme_cleanup' into organize_by_ensemble_strategy
dwhswenson Jul 6, 2015
29003eb
Fix for tests
dwhswenson Jul 6, 2015
fd8bda1
Early draft of EnsembleDictionaryMover
dwhswenson Jul 7, 2015
72e72b2
EnsDict runs, though tests don't check correctness
dwhswenson Jul 7, 2015
2821064
Working test for EnsDict with single replica
dwhswenson Jul 7, 2015
3db71f6
Tests for EnsDict with multiple replicas
dwhswenson Jul 7, 2015
77a6b87
Skeletons of OrgByEns and tests. Needs some redo.
dwhswenson Jul 7, 2015
0c47813
Cleaned up Default.make_chooser (now reusable?)
dwhswenson Jul 8, 2015
13a7849
Generalized choice_probability
dwhswenson Jul 8, 2015
57a3719
Reorg most of get_weights subsys to be general
dwhswenson Jul 8, 2015
122a9d4
I think that fully generalizes get_weight subsys
dwhswenson Jul 8, 2015
3eda6f0
Generalized mover keys. Ready to build new strat
dwhswenson Jul 8, 2015
960deb3
Draft of OrgByEns.make_movers
dwhswenson Jul 9, 2015
12cc5d2
first test of OrgByEns looks decent
dwhswenson Jul 9, 2015
5f20b9e
Upgraded EnsDictMover to support ensemble prob
dwhswenson Jul 9, 2015
6ab53ae
Test for weights in EnsDict
dwhswenson Jul 9, 2015
1eeca62
Test when we change the ensemble weight
dwhswenson Jul 10, 2015
8612f7e
Serious clean-up of mover weights normalization
dwhswenson Jul 10, 2015
77056fe
Added test for changing mover_weights in OrgByEns
dwhswenson Jul 10, 2015
2c81ab1
Various test fixes
dwhswenson Jul 10, 2015
fd58ca3
Committing screwy version before rewrite
dwhswenson Sep 30, 2015
604c8de
New version passes the first test....
dwhswenson Oct 1, 2015
34d4980
New version of choice_probability w/ tests
dwhswenson Oct 2, 2015
76a1a99
New make_movers in DefaultStrategy
dwhswenson Oct 2, 2015
6178d72
DefaultStrategy.weights_from_choice_prob & tests
dwhswenson Oct 2, 2015
2fb17b6
Fixed setting group weights when no shooting group
dwhswenson Oct 2, 2015
8e0bd42
Down to one test for DefaultStrategy
dwhswenson Oct 3, 2015
6a9d671
All tests for DefaultStrategy pass
dwhswenson Oct 3, 2015
2414a98
Looks like OrgByEns.choice_probability works
dwhswenson Oct 3, 2015
e55c7bf
More untested bits of code for OrgByEns
dwhswenson Oct 3, 2015
0d7c775
Fix for ensemble sig problems in test_choice_prob
dwhswenson Oct 4, 2015
0eca9cc
Test for OrgByEns.default_weights
dwhswenson Oct 4, 2015
cab0b2d
Test for chooser_movers
dwhswenson Oct 5, 2015
43302c4
Most of the OrgByEns.weights_from_choice_prob
dwhswenson Oct 5, 2015
67e861d
Separate out most_common calcs for renorming
dwhswenson Oct 6, 2015
4d97b55
OrgByEns.weights_from_choice_prob passes test
dwhswenson Oct 6, 2015
d9db71e
OrgByEns.make_movers (and test)
dwhswenson Oct 6, 2015
adc3e20
Fix bug in EnsDictMover test
dwhswenson Oct 6, 2015
180ba9c
Removed worthless old crap.
dwhswenson Oct 6, 2015
afa494c
DefaultStrategy => OrganizeByMoveGroupStrategy
dwhswenson Oct 6, 2015
daedfc0
Merge remote-tracking branch 'upstream/master' into organize_by_ensem…
dwhswenson Oct 7, 2015
c403c17
Partial fixes for unique ensemble stuff
dwhswenson Oct 7, 2015
a51df68
Fix the rest of stuff unique ensemble messed up
dwhswenson Oct 7, 2015
3f4676f
Removed EnsembleDictionaryMover
dwhswenson Oct 7, 2015
e75f393
testEnsDictMover => testRandomAllowedChoiceMover
dwhswenson Oct 7, 2015
ec36501
Outline of test for switching org strategies
dwhswenson Oct 8, 2015
75388d8
Can switch between global org strategies
dwhswenson Oct 8, 2015
e497fa9
Docstrings for MoveStrategies (part 1)
dwhswenson Oct 8, 2015
e12c0b9
No wonder it was failing. Too many RETIS steps!
dwhswenson Oct 8, 2015
2409601
Enough docstrings for now
dwhswenson Oct 8, 2015
ea1221d
Docstrings & some PEP8
dwhswenson Oct 12, 2015
d27ab0f
Merge remote-tracking branch 'upstream/master' into organize_by_ensem…
dwhswenson Oct 12, 2015
0cb98d9
Removed unused mover_key
dwhswenson Oct 12, 2015
5948097
First switch to using dict.get(key, default)
dwhswenson Oct 13, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 14 additions & 14 deletions examples/ipython/multistate_system_setup.ipynb

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions openpathsampling/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ version.py

# ignore tag files
tags
version.py
24 changes: 23 additions & 1 deletion openpathsampling/analysis/move_scheme.py
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,10 @@ def find_hidden_ensembles(self, root=None):
"""
All ensembles which exist in the move scheme but not in the network.

Hidden ensembles are typically helper ensembles for moves; for
example, the minus move uses a "segment" helper ensemble which is
almost, but not quite, the innermost interface ensemble.

Parameters
----------
root : PathMover
Expand All @@ -207,6 +211,10 @@ def find_unused_ensembles(self, root=None):
"""
All ensembles which exist in the network but not in the move scheme.

Not all move schemes will use all the ensembles. For example, a move
scheme might choose not to use the network's automatically generated
minus ensemble or multistate ensemble.

Parameters
----------
root : PathMover
Expand All @@ -224,6 +232,16 @@ def find_unused_ensembles(self, root=None):
unused_ensembles = unhidden_ensembles - mover_ensembles
return unused_ensembles

def find_used_ensembles(self, root=None):
"""
All ensembles which are both in the network and in the move scheme.

"""
unhidden_ensembles = set(self.network.all_ensembles)
mover_ensembles = set(self.ensembles_for_move_tree(root))
used_ensembles = unhidden_ensembles & mover_ensembles
return used_ensembles

def check_for_root(self, fcn_name):
"""
Raises runtime warning if self.root_mover not set.
Expand Down Expand Up @@ -486,11 +504,13 @@ class DefaultScheme(MoveScheme):
"""
def __init__(self, network):
super(DefaultScheme, self).__init__(network)
n_ensembles = len(network.transition_ensembles)
self.append(strategies.NearestNeighborRepExStrategy())
self.append(strategies.OneWayShootingStrategy())
self.append(strategies.PathReversalStrategy())
self.append(strategies.DefaultStrategy())
self.append(strategies.MinusMoveStrategy())
global_strategy = strategies.OrganizeByMoveGroupStrategy()
self.append(global_strategy)

msouters = self.network.special_ensembles['ms_outer']
for ms in msouters.keys():
Expand All @@ -507,4 +527,6 @@ def __init__(self, network):
self.append(strategies.SelectedPairsRepExStrategy(
ensembles=pairs
))
#ms_outer_shoot_w = float(len(msouters)) / n_ensembles
#global_strategy.group_weights['ms_outer_shooting'] = ms_outer_shoot_w

Loading