本文整理汇总了Python中msmbuilder.msm.MarkovStateModel.transmat_方法的典型用法代码示例。如果您正苦于以下问题:Python MarkovStateModel.transmat_方法的具体用法?Python MarkovStateModel.transmat_怎么用?Python MarkovStateModel.transmat_使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类msmbuilder.msm.MarkovStateModel
的用法示例。
在下文中一共展示了MarkovStateModel.transmat_方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: post
# 需要导入模块: from msmbuilder.msm import MarkovStateModel [as 别名]
# 或者: from msmbuilder.msm.MarkovStateModel import transmat_ [as 别名]
def post(self):
io = StringIO(self.get_argument('matrix'))
w = sio.mmread(io)
msm = MarkovStateModel()
msm.transmat_, msm.populations_ = _transmat_mle_prinz(w)
msm.n_states_ = msm.populations_.shape[0]
if bool(int(self.get_argument('mode'))):
self.write(make_json_paths(msm, self)) # TP
else:
self.write(make_json_graph(msm, self)) # MSM
示例2: test_hubscore
# 需要导入模块: from msmbuilder.msm import MarkovStateModel [as 别名]
# 或者: from msmbuilder.msm.MarkovStateModel import transmat_ [as 别名]
def test_hubscore():
# Make an actual hub!
tprob = np.array([[0.8, 0.0, 0.2, 0.0, 0.0],
[0.0, 0.8, 0.2, 0.0, 0.0],
[0.1, 0.1, 0.6, 0.1, 0.1],
[0.0, 0.0, 0.2, 0.8, 0.0],
[0.0, 0.0, 0.2, 0.0, 0.8]])
msm = MarkovStateModel(lag_time=1)
msm.transmat_ = tprob
msm.n_states_ = 5
score = tpt.hub_scores(msm, 2)[0]
assert score == 1.0
示例3: test_2
# 需要导入模块: from msmbuilder.msm import MarkovStateModel [as 别名]
# 或者: from msmbuilder.msm.MarkovStateModel import transmat_ [as 别名]
def test_2():
model = MarkovStateModel(verbose=False)
C = np.array([
[4380, 153, 15, 2, 0, 0],
[211, 4788, 1, 0, 0, 0],
[169, 1, 4604, 226, 0, 0],
[3, 13, 158, 4823, 3, 0],
[0, 0, 0, 4, 4978, 18],
[7, 5, 0, 0, 62, 4926]], dtype=float)
C = C + 1.0 / 6.0
model.n_states_ = C.shape[0]
model.countsmat_ = C
model.transmat_, model.populations_ = model._fit_mle(C)
n_trials = 5000
random = np.random.RandomState(0)
all_timescales = np.zeros((n_trials, model.n_states_ - 1))
all_eigenvalues = np.zeros((n_trials, model.n_states_))
for i in range(n_trials):
T = np.vstack([random.dirichlet(C[i]) for i in range(C.shape[0])])
u = _solve_msm_eigensystem(T, k=6)[0]
all_eigenvalues[i] = u
all_timescales[i] = -1 / np.log(u[1:])
pp.figure(figsize=(12, 8))
for i in range(3):
pp.subplot(2,3,i+1)
pp.title('Timescale %d' % i)
kde = scipy.stats.gaussian_kde(all_timescales[:, i])
xx = np.linspace(all_timescales[:,i].min(), all_timescales[:,i].max())
r = scipy.stats.norm(loc=model.timescales_[i], scale=model.uncertainty_timescales()[i])
pp.plot(xx, kde.evaluate(xx), c='r', label='Samples')
pp.plot(xx, r.pdf(xx), c='b', label='Analytic')
for i in range(1, 4):
pp.subplot(2,3,3+i)
pp.title('Eigenvalue %d' % i)
kde = scipy.stats.gaussian_kde(all_eigenvalues[:, i])
xx = np.linspace(all_eigenvalues[:,i].min(), all_eigenvalues[:,i].max())
r = scipy.stats.norm(loc=model.eigenvalues_[i], scale=model.uncertainty_eigenvalues()[i])
pp.plot(xx, kde.evaluate(xx), c='r', label='Samples')
pp.plot(xx, r.pdf(xx), c='b', label='Analytic')
pp.tight_layout()
pp.legend(loc=4)
pp.savefig('test_msm_uncertainty_plots.png')
示例4: test_mfpt2
# 需要导入模块: from msmbuilder.msm import MarkovStateModel [as 别名]
# 或者: from msmbuilder.msm.MarkovStateModel import transmat_ [as 别名]
def test_mfpt2():
tprob = np.array([[0.90, 0.10],
[0.22, 0.78]])
pi0 = 1
pi1 = pi0 * tprob[0, 1] / tprob[1, 0]
pops = np.array([pi0, pi1]) / (pi0 + pi1)
msm = MarkovStateModel(lag_time=1)
msm.transmat_ = tprob
msm.n_states_ = 2
msm.populations_ = pops
mfpts = np.vstack([tpt.mfpts(msm, i) for i in range(2)]).T
# since it's a 2x2 the mfpt from 0 -> 1 is the
# same as the escape time of 0
npt.assert_almost_equal(1 / (1 - tprob[0, 0]), mfpts[0, 1])
npt.assert_almost_equal(1 / (1 - tprob[1, 1]), mfpts[1, 0])
示例5: test_countsmat
# 需要导入模块: from msmbuilder.msm import MarkovStateModel [as 别名]
# 或者: from msmbuilder.msm.MarkovStateModel import transmat_ [as 别名]
def test_countsmat():
model = MarkovStateModel(verbose=False)
C = np.array([
[4380, 153, 15, 2, 0, 0],
[211, 4788, 1, 0, 0, 0],
[169, 1, 4604, 226, 0, 0],
[3, 13, 158, 4823, 3, 0],
[0, 0, 0, 4, 4978, 18],
[7, 5, 0, 0, 62, 4926]], dtype=float)
C = C + (1.0 / 6.0)
model.n_states_ = C.shape[0]
model.countsmat_ = C
model.transmat_, model.populations_ = model._fit_mle(C)
n_trials = 5000
random = np.random.RandomState(0)
all_timescales = np.zeros((n_trials, model.n_states_ - 1))
all_eigenvalues = np.zeros((n_trials, model.n_states_))
for i in range(n_trials):
T = np.vstack([random.dirichlet(C[i]) for i in range(C.shape[0])])
u = _solve_msm_eigensystem(T, k=6)[0]
u = np.real(u) # quiet warning. Don't know if this is legit
all_eigenvalues[i] = u
all_timescales[i] = -1 / np.log(u[1:])