def Interpolate_Old(self, dictionary, SpT):
#First, we must convert the relations above into a monotonically increasing system
#Just add ten when we get to each new spectral type
relation = DataStructures.xypoint(len(dictionary))
# Strip the spectral type of the luminosity class information
SpT = re.search('[A-Z]([0-9]\.?[0-9]*)', SpT).group()
xpoints = []
ypoints = []
for key, index in zip(dictionary, range(len(dictionary))):
#Convert key to a number
xpoints.append(self.SpT_To_Number(key))
ypoints.append(dictionary[key])
sorting_indices = [i[0] for i in sorted(enumerate(xpoints), key=lambda x: x[1])]
for index in range(len(dictionary)):
i = sorting_indices[index]
relation.x[index] = xpoints[i]
relation.y[index] = ypoints[i]
RELATION = UnivariateSpline(relation.x, relation.y, s=0)
spnum = self.SpT_To_Number(SpT)
if spnum > 0:
return RELATION(spnum)
else:
return np.nan
SpectralTypeRelations.py 文件源码
python
阅读 19
收藏 0
点赞 0
评论 0
评论列表
文章目录