2014-06-01から1ヶ月間の記事一覧

9. Rubik's Cube: index2singmaster 関数 ( SAGE )

小面のシングマスター記法 「群論の味わい」 David Joyner 著、川辺治之訳 の 91ページに次の文章がある。 図4.3 のような番号付けが与えられたときに、SAGE を使って小面のシングマスター記法による表記を求めることができます。たとえば、41 と番号が付け…

8. Rubik's Cube: 色配置リストから置換リストへの変換

ブログを書いていて疑問に思ったことがある。キューブの配置リストでは数字(index)を使うことを前提にしている。しかし、実際のキューブには数字は書かれていない。色だけです。これまでの議論は数字の配置リストがあることが前提でした。色の配置リストから…

5. Vector 関数について

Vector を表示する便利な関数を見つけたのでここに載せることにする。以下の本て載っていたものです。 CalcLab with Mathematica , Multivariable Calculus, Setwyn Hollis, Brooks/Cole, ISBN-13:978-0-8400-5813-3 設定 Step 1. 次の関数定義をノートブッ…

7. Rubik's Cube: 配置リスト(置換リスト)の意味

Cubie と Cubicle Handbook of Cubik Math( A.H.Frey and D.Singmaster) に cubie と cubicle の定義が書いてある。cubicle の定義には cubie で占められる場所と書いてある。 Cubies The small cube pieces which make up the whole cube. Cubicles The spa…

メタン(CH4)の分子を 3D グラフィックスで描く

次の本にメタン(CH4)の分子を 3D グラフィックスで描く例が載っていたのでここに載せる。 Getting Started with Mathematica, Third Edition , C-K. Cheung et al., Wiley, ISBN 978-0-470-45687-3 p.123 とp.182 にメタン(CH4)の分子の例が載っている。 h1 …

Graphics3D: Cube の試作(3) Polygon + Texture

面に Texture で文字を書く。 vtc = {{0, 0}, {1, 0}, {1, 1}, {0, 1}};(*VertexTextureCoordinates*); (* front *) front = {{0, 0, 0}, {1, 0, 0}, {1, 0, 1}, {0, 0, 1}}; ffc = # + {0, 0, 0} & /@ front; fF = {Texture[ Graphics[{Red, Text[Style["F"…

Graphics3D: Cube の試作(2) Polygon + Text

小キューブに 文字をText で書き込む。 L, B, D の文字が透けて見える。 (* front *) front = {{0, 0, 0}, {1, 0, 0}, {1, 0, 1}, {0, 0, 1}}; ffc = # + {0, 0, 0} & /@ front; textF = {Red, Text[Style["F", 18, Bold, FontFamily -> "Courier"], Plus @@…

Graphics3D: Cube の試作(1)

Graphics3D と Polygon を使って Cube の試作してみた。色の使い方が 2D とは勝手が違うことを実感した。 (* fornt *) front = {{0, 0, 0}, {1, 0, 0}, {1, 0, 1}, {0, 0, 1}}; ffc = # + {0, 0, 0} & /@ front; fF = {Glow[Green], Green, Polygon[ffc]}; (…

6. Rubik's Cube: 回転について

回転の表現 「3. Rubik's Cube: RubikGroup の定義」を再度ここに載せる。 rotF = Cycles[{{17,19,24,22},{18,21,23,20},{6,25,43,16},{7,28,42,13},{8,30,41,11}}]; rotB = Cycles[{{33,35,40,38},{34,37,39,36},{3,9,46,32},{2,12,47,29},{1,14,48,27}}]; …

4. Rubik's Cube: 立体図を描く

ルービックキューブの展開図を 2. で描いたので、次に立体図を描くコードを作った。 この立体図の配置リストは次で、これを入力データとして関数 PlotCube3D を使って描いた。 Needs["PlotRubiksCube`"] p0= {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14…

3. Rubik's Cube : RubikGroupの定義

参考文献 2, 3 と Mathematica チュートリアルにルービックキューブの定義が載っているが、面の命名や正面の番号付けが異なる。ここでは、図に示すような記述にする。ルービックキューブの定義について GAP, Sage とMathematicaを使ったコードを以下に示す。…

2. Rubik's Cube の表現と展開図

ルービックキューブの配置の番号付けと色については参考文献 1, 2 と 3 を参考に決め、展開図を次に示す。 小面にこのように番号を付けると、この配置は Mathematica のリスト Range[48] で表現できる。このリストを8個ずつ分割すると、最初の8個は up に属…

Mathematica 9 の散策: Pythonikaの設定 (Mathematica から Python を実行する)

目次へ Pythonika を知るに至った背景 IPython のノートブックが Mathematica に似ているので興味を持ったが、次の背景があった。 1) IPython について書いてある本を読むにつけ Python を知らないことが分かった。 2) Sage Beginner's Gude を読むと Python…