勇闖新世界︰ W!o《卡夫卡村》變形祭︰ ○ 局 □ 陣【☵】

方將剛起步,就感覺脖子被掛上個什麼東西?低頭一看,彷彿是張卡片,耳邊響起 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:

 

目前官方版 raspbian 的『 scipy 』是 0.10.1 ,或許這是個開始處,

pi@raspberrypi ~ apt-cache search scipy mayavi2 - scientific visualization package for 2-D and 3-D data python-guiqwt - efficient 2D data-plotting library python-scipy - scientific tools for Python python-scipy-dbg - scientific tools for Python - debugging symbols python-sciscipy - Python binding of Scilab python3-scipy - scientific tools for Python 3 python3-scipy-dbg - scientific tools for Python 3 - debugging symbols stimfit - A program for viewing and analyzing electrophysiological data stimfit-dbg - Debug symbols for stimfit  # scipy 版本 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 ~ sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose  # 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

 

一舉打開『科學計算』之門乎?!