方將剛起步,就感覺脖子被掛上個什麼東西?低頭一看,彷彿是張卡片,耳邊響起 W!o 的聲音,說道︰這是『邀請護照』,無照亂走 ,小心一會就被逮了。一時錯愕,怎麼『神遊』也能被逮了! W!o 接著說︰你不要以為這只是個『洞徑』而已,事實上這裡是出入《卡夫卡村》之『保安關卡』。古來就有多處暗巷密室,由於陽光進不來這裡,傳聞昔日壁上都用油燈照明。現今可不一樣了,發光可撓性薄膜顯示器、攝像鏡頭、軟 X 光透視、頻譜分析儀、…布滿整個通道,甚至還有『神遊者』感知器的哩。不禁問到︰這真的是可能的嗎?只聽 W!o 自顧自的說︰詳情我也不知。然而凡能『感知者』就可能『被感知』;宛如牛頓力學之凡有『作用』通常都會有『反作用』一般。如果從數學的角度看『萬象模型』,大體總落入『如何計算』罷了。你既是能來,它又豈不能測的呢?雖然講的像這麼回事,終究是匪夷所思的耶!!只不過,假使問已知的『科學原理』是什麼?當下的『工藝技術』依賴著什麼?果真要用『數理邏輯』觀點來看,若說不是『 □○ 計算』又是什麼呢??……
當面對『奧秘』,單靠『好奇心』是不夠的。問題是該打哪講起的哩?不得已遁之以『君子務本』的啊!先行介紹『派生科學』軟件集成的吧!!
SciPy (pronounced “Sigh Pie”) is a Python-based ecosystem of open-source software for mathematics, science, and engineering. In particular, these are some of the core packages:
-
NumPy
Base N-dimensional array package
-
SciPy library
Fundamental library for scientific computing
-
Matplotlib
Comprehensive 2D Plotting
-
IPython
Enhanced Interactive Console
-
Sympy
Symbolic mathematics
-
pandas
Data structures & analysis
目前官方版 raspbian 的『 scipy 』是 0.10.1 ,或許這是個開始處,
pi@raspberrypi ~ apt-cache show python-scipy Package: python-scipy Version: 0.10.1+dfsg2-1 Architecture: armhf Maintainer: Debian Python Modules Team <python-modules-team@lists.alioth.debian.org> Installed-Size: 31947 Depends: python-numpy (>= 1:1.6.1), python-numpy-abi9, python2.7 | python2.6, python (>= 2.6.6-7~), python (<< 2.8), libamd2.2.0 (>= 1:3.4.0), libblas3 | libblas.so.3 | libatlas3-base, libc6 (>= 2.13-28), libgcc1 (>= 1:4.4.0), libgfortran3 (>= 4.6), liblapack3 | liblapack.so.3 | libatlas3-base, libstdc++6 (>= 4.4.0), libumfpack5.4.0 (>= 1:3.4.0) Recommends: g++ | c++-compiler, python-dev, python-imaging Suggests: python-profiler Provides: python2.6-scipy, python2.7-scipy Homepage: http://www.scipy.org/ Priority: extra Section: python Filename: pool/main/p/python-scipy/python-scipy_0.10.1+dfsg2-1_armhf.deb Size: 10293878 SHA256: 2fc2ade74630169b8b5e6bc602ee65b02a0df95d1341d7366d8c4801637df345 SHA1: 02de2d5f0037c776c13a244f2c7e63e8d0a7fd3c MD5sum: 14d140b574f8409b44e9b1402cb62882 Description: scientific tools for Python SciPy supplements the popular NumPy module (python-numpy package), gathering a variety of high level science and engineering modules together as a single package. . SciPy is a set of Open Source scientific and numeric tools for Python. It currently supports special functions, integration, ordinary differential equation (ODE) solvers, gradient optimization, genetic algorithms, parallel programming tools, an expression-to-C++ compiler for fast execution, and others.
當然最好『驗證』那選擇的『安裝』,
# scipy 以及相關軟體安裝 pi@raspberrypi ~ python Python 2.7.3 (default, Mar 18 2014, 05:13:23) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import scipy >>> scipy.test() Running unit tests for scipy NumPy version 1.6.2 NumPy is installed in /usr/lib/pymodules/python2.7/numpy SciPy version 0.10.1 SciPy is installed in /usr/lib/python2.7/dist-packages/scipy Python version 2.7.3 (default, Mar 18 2014, 05:13:23) [GCC 4.6.3] nose version 1.1.2 ..........................................................................K..K..................................................................................................................................................................................................................................................................................../usr/lib/python2.7/dist-packages/scipy/io/wavfile.py:31: WavFileWarning: Unfamiliar format bytes warnings.warn("Unfamiliar format bytes", WavFileWarning) /usr/lib/python2.7/dist-packages/scipy/io/wavfile.py:121: WavFileWarning: chunk not understood warnings.warn("chunk not understood", WavFileWarning) .................................................................................................................................................................................................................SSSSSS......SSSSSS...................................................................................................................................................................................................................................................................K........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................./usr/lib/python2.7/dist-packages/scipy/sparse/linalg/eigen/arpack/arpack.py:63: UserWarning: Single-precision types in `eigs` and `eighs` are not supported currently. Double precision routines are used instead. warnings.warn("Single-precision types in `eigs` and `eighs` " ..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................K...............................................................K...........................................................................................................................................................KK................................................................................................................................................................................................................................................................K.K.................................................................................................................................................................................../usr/lib/python2.7/dist-packages/scipy/special/tests/test_basic.py:824: RuntimeWarning: invalid value encountered in ellipj special.ellipj(0.5, np.nan) ..........................................................................................................................................................................................................K........K........................................................../usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6457: RuntimeWarning: invalid value encountered in greater_equal return where(temp >= q, vals1, vals) .............................................................................................../usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6739: RuntimeWarning: invalid value encountered in greater_equal return where((temp >= q), vals1, vals) ......................S................................................................................................................................................................................................../usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1255: RuntimeWarning: invalid value encountered in greater_equal cond1 = (scale > 0) & (x >= self.a) & (x <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1255: RuntimeWarning: invalid value encountered in less_equal cond1 = (scale > 0) & (x >= self.a) & (x <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1297: RuntimeWarning: invalid value encountered in greater_equal cond1 = (scale > 0) & (x >= self.a) & (x <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1297: RuntimeWarning: invalid value encountered in less_equal cond1 = (scale > 0) & (x >= self.a) & (x <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1507: RuntimeWarning: invalid value encountered in greater cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1507: RuntimeWarning: invalid value encountered in less cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1548: RuntimeWarning: invalid value encountered in greater cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:1548: RuntimeWarning: invalid value encountered in less cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5935: RuntimeWarning: invalid value encountered in greater_equal cond1 = (k >= self.a) & (k < self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5935: RuntimeWarning: invalid value encountered in less cond1 = (k >= self.a) & (k < self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5936: RuntimeWarning: invalid value encountered in greater_equal cond2 = (k >= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5895: RuntimeWarning: invalid value encountered in greater_equal cond1 = (k >= self.a) & (k < self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5895: RuntimeWarning: invalid value encountered in less cond1 = (k >= self.a) & (k < self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5896: RuntimeWarning: invalid value encountered in greater_equal cond2 = (k >= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6015: RuntimeWarning: invalid value encountered in greater_equal cond1 = (k >= self.a) & (k <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6015: RuntimeWarning: invalid value encountered in less_equal cond1 = (k >= self.a) & (k <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6016: RuntimeWarning: invalid value encountered in less cond2 = (k < self.a) & cond0 /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5976: RuntimeWarning: invalid value encountered in greater_equal cond1 = (k >= self.a) & (k <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5976: RuntimeWarning: invalid value encountered in less_equal cond1 = (k >= self.a) & (k <= self.b) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5977: RuntimeWarning: invalid value encountered in less cond2 = (k < self.a) & cond0 /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5820: RuntimeWarning: invalid value encountered in greater_equal cond1 = (k >= self.a) & (k <= self.b) & self._nonzero(k,*args) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5820: RuntimeWarning: invalid value encountered in less_equal cond1 = (k >= self.a) & (k <= self.b) & self._nonzero(k,*args) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5857: RuntimeWarning: invalid value encountered in greater_equal cond1 = (k >= self.a) & (k <= self.b) & self._nonzero(k,*args) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:5857: RuntimeWarning: invalid value encountered in less_equal cond1 = (k >= self.a) & (k <= self.b) & self._nonzero(k,*args) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6056: RuntimeWarning: invalid value encountered in greater cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6056: RuntimeWarning: invalid value encountered in less cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6098: RuntimeWarning: invalid value encountered in greater cond1 = (q > 0) & (q < 1) /usr/lib/python2.7/dist-packages/scipy/stats/distributions.py:6098: RuntimeWarning: invalid value encountered in less cond1 = (q > 0) & (q < 1) ............................................................................................................................................................................................................................................................................................................................................................................................................................ ---------------------------------------------------------------------- Ran 4266 tests in 253.540s OK (KNOWNFAIL=11, SKIP=13) <nose.result.TextTestResult run=4266 errors=0 failures=0> >>>
有興趣嚐鮮的,也可試著直奔『 scipy 』 0.16.0 最新版
sudo pip install scipy sudo apt-get install python-matplotlib sudo apt-get install python-nose
一舉打開『科學計算』之門乎?!