def get_series_g2_taus( fra_max_list, acq_time=1, max_fra_num=None, log_taus = True,
num_bufs = 8):
'''
Get taus for dose dependent analysis
Parameters:
fra_max_list: a list, a lsit of largest available frame number
acq_time: acquistion time for each frame
log_taus: if true, will use the multi-tau defined taus bu using buf_num (default=8),
otherwise, use deltau =1
Return:
tausd, a dict, with keys as taus_max_list items
e.g.,
get_series_g2_taus( fra_max_list=[20,30,40], acq_time=1, max_fra_num=None, log_taus = True, num_bufs = 8)
-->
{20: array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16]),
30: array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28]),
40: array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 20, 24, 28, 32])
}
'''
tausd = {}
for n in fra_max_list:
if max_fra_num is not None:
L = max_fra_num
else:
L = np.infty
if n>L:
warnings.warn("Warning: the dose value is too large, and please"
"check the maxium dose in this data set and give a smaller dose value."
"We will use the maxium dose of the data.")
n = L
if log_taus:
lag_steps = get_multi_tau_lag_steps(n, num_bufs)
else:
lag_steps = np.arange( n )
tausd[n] = lag_steps * acq_time
return tausd
评论列表
文章目录