-
Notifications
You must be signed in to change notification settings - Fork 0
/
run_data_engine_s.py
37 lines (29 loc) · 1.04 KB
/
run_data_engine_s.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import numpy as np
from t_distr import t_distr
import os
# values for the engine
s = [5, 10, 20, 40, 80] #np.log(n_v/n_u)=np.log(100)
e_c = 1 # units of k_B T
e_h = [2, 3, 4, 5, 6, 7] #5
init_state = 0 # starting in state U
runs = 1000
tmax = [100, 250, 500, 750, 1000]
for sval in s:
e_hval = 5
directory = 'data_s' + str(sval) + '_eh' + str(e_hval)
os.makedirs(directory)
for max in tmax:
energies = np.array([e_c, e_hval]) # units of k_B T
# favouring the ATP based reaction
k_h_plus = 1 # units of s^-1
k_h_minus = k_h_plus * np.exp(e_hval - sval)
k_c_plus = 2
k_c_minus = k_c_plus * np.exp(e_c - sval)
rates = np.array([k_h_plus, k_h_minus, k_c_plus, k_c_minus])
drives = np.array([
[0, -25.5, 0, 0],
[25.5, 0, 0, 0],
[0, 0, 0, -e_hval+e_c],
[0, 0, e_hval-e_c, 0]
]) # units of k_B T
t_distr("engine", energies, drives, rates, init_state, runs, max, directory)