Python 为什么要使用healpix;alm";例程返回长度相同的数组l和m?
根据我对量子物理和大学数学的记忆,对于每一种模式,都存在着m=l-1,l,l+1。为什么healpix(特别是在我的例子中)球面调和例程,例如Python 为什么要使用healpix;alm";例程返回长度相同的数组l和m?,python,math,healpy,Python,Math,Healpy,根据我对量子物理和大学数学的记忆,对于每一种模式,都存在着m=l-1,l,l+1。为什么healpix(特别是在我的例子中)球面调和例程,例如healpy.sphtfunc.alm2map,返回长度相同的l和m数组?我想您指的是map2alm 让我们看一个例子: 将numpy导入为np 将healpy导入为hp m=np.arange(12)#定义一个地图 lmax=2 alm=hp.map2alm(m,lmax=lmax)#球谐变换 打印(alm) [1.94198894e+01+0.0000
healpy.sphtfunc.alm2map
,返回长度相同的l
和m
数组?我想您指的是map2alm
让我们看一个例子:
将numpy导入为np
将healpy导入为hp
m=np.arange(12)#定义一个地图
lmax=2
alm=hp.map2alm(m,lmax=lmax)#球谐变换
打印(alm)
[1.94198894e+01+0.00000000e+00j-1.22780488e+01+0.00000000e+00j
-3.22928935e-01+0.00000000e+00j 6.85510448e-01-2.13069336e+00j
4.66136940e-16+6.36302781e-18j-6.44680479e-01+1.16180552e+00j]
打印(alm.形状)
(6,)
因此,alm
实际上是一个一维向量
如何为alm编制索引
l,m=hp.Alm.getlm(lmax=lmax)
印刷品(l)
[0 1 2 1 2 2]
打印(m)
[0 0 0 1 1 2]
因此,对于l=2
,m
是[0,1,2]
您可以在
HEALPix
初级读本中找到有关HEALPix
的更多信息:我想您指的是map2alm
让我们看一个例子:
将numpy导入为np
将healpy导入为hp
m=np.arange(12)#定义一个地图
lmax=2
alm=hp.map2alm(m,lmax=lmax)#球谐变换
打印(alm)
[1.94198894e+01+0.00000000e+00j-1.22780488e+01+0.00000000e+00j
-3.22928935e-01+0.00000000e+00j 6.85510448e-01-2.13069336e+00j
4.66136940e-16+6.36302781e-18j-6.44680479e-01+1.16180552e+00j]
打印(alm.形状)
(6,)
因此,alm
实际上是一个一维向量
如何为alm编制索引
l,m=hp.Alm.getlm(lmax=lmax)
印刷品(l)
[0 1 2 1 2 2]
打印(m)
[0 0 0 1 1 2]
因此,对于l=2
,m
是[0,1,2]
您可以在
HEALPix
primer:Andrea Zonca的答案中找到有关HEALPix
的更多信息:
- 对于每种模式
,l
的范围实际上是从m
到-l
(其中+l
)。但我们处理的是真实信号,对于这些信号,相反的2l+1
的m
是复杂的共轭,因此alm
不会存储HEALPix
m的
值,安德烈·宗卡的答案中缺失的位:alm
- 对于每种模式
,l
的范围实际上是从m
到-l
(其中+l
)。但是我们处理的是实信号,对于实信号,相反的2l+1
的m
是复共轭,因此alm
不存储HEALPix
m的
值alm
- 对于每种模式