| import numpy as np | |
| import math | |
| def _cal_freq_list(freq_init, frequency_num, max_radius, min_radius): | |
| if freq_init == "random": | |
| freq_list = np.random.random(size=[frequency_num]) * max_radius | |
| elif freq_init == "geometric": | |
| log_timescale_increment = (math.log(float(max_radius) / float(min_radius)) / (frequency_num * 1.0 - 1)) | |
| timescales = min_radius * np.exp(np.arange(frequency_num).astype(float) * log_timescale_increment) | |
| freq_list = 1.0 / timescales | |
| return freq_list | |