pySpherepts > getHammersleyNodes () 이식 완료 > IcosNodes와 비교하여 중심으로부터의 거리가 작습니까?

운영 환경
GeForce GTX 1070 (8GB)
ASRock Z170M Pro4S [Intel Z170chipset]
Ubuntu 16.04 LTS desktop amd64
TensorFlow v1.2.1
cuDNN v5.1 for Linux
CUDA v8.0
Python 3.5.2
IPython 6.0.0 -- An enhanced Interactive Python.
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)
scipy v0.19.1
geopandas v0.3.0
MATLAB R2017b (Home Edition)

pySpherepts > on GitHub > 구면상의 점: Icosahedral Nodes를 취하는 Numpy+Scipy 구현
계속.

getHammersleyNodes()의 이식이 완료되었다.

실제로 사용했는데, 신경이 쓰이는 점이 발견되었다.

신경이 쓰이는 부분



Jupyter Notebook on GitHub

samplePlotSphNodes_gHN_171203.ipynb
'''
HammersleyNodes 
'''

import numpy as np
from pylab import rcParams
import getHammersleyNodes_171203 as gHN
import plotSphNodes_171127 as pSN

rcParams['figure.figsize'] = 10,10
rcParams['figure.dpi'] = 75

xs = gHN.getHammersleyNodes(100)

elev, azm = 30.0, -30.0

#NG: hidden by the central sphere
pSN.plotSphNodes(xs, elevation=elev, azimuth=azm)

# *1.05: required not to be hidden by the central sphere
pSN.plotSphNodes(xs * 1.05, elevation=elev, azimuth=azm)

print(xs)


첫 번째 plotSphNodes()에 의한 그림에서는 구상의 점이 보이지 않는다.
(중심의 대구로 숨어 버리고 있다)



두 번째 그림 (점의 중심에서 거리를 늘렸다)의 경우는 다음과 같습니다.


MATLAB 코드의 결과는 아래에서 두 번째 그림과 분포는 거의 동일합니다.
(거리를 늘린 분의 어긋남은 있다).
(거리를 늘리지 않는 경우의 양자의 값은 일치한다).
(azimuth의 차이 때문에 view(60,30)로 하고 있다).


getIcosNodes()와의 차이


  • getIcosNodes() : 점이 숨기지 않는다
  • getHammersleyNodes() : 점이 숨겨진다

  • 양자의 점 분포 생성 결과에 관해서, 중심으로부터의 거리가 다르게 보인다.
    이 경우 두 결과를 사용한 계산 (예 : 구각 적분) 결과를 비교하면 오차가 발생할 수 있습니다.

    좋은 웹페이지 즐겨찾기