2019-08-01から1ヶ月間の記事一覧

2グループの友人関係を突き止める

複数のエレメントが2郡に分かれていることがわかっているとする エレメントペアについて、同じグループなのか、別のグループなのかの情報が部分的にわかっているものとする このとき、同じグループのエレメント同士は同じグループだ、というルールを使って…

ランダム正則グラフを作る

ランダム正則グラフの隣接行列の作成方法がWikipediaにある(こちら) 次数rの正則グラフが、頂点数nだとする 今、個のアイテムをn個のバケツにr個ずつ入れる N個のアイテムを2個ずつのペアにする このようにすると、頂点数Nのr正則グラフができるが、このr正…

三角メッシュの縫合手術

こちらの記事 ryamada.hatenadiary.jp で、色々な凸多面体(正三角形が作る)を用意した それらの正三角形を貼り合わせると、複雑な正三角形メッシュが作れる 以下の関数はその縫合手術関数

正三角形で覆われた穴のない立体

多面体を考える 凸多面体に限らないと列挙が終わらないので、凸多面体に限ることが多い 以下では原則として凸多面体を扱いつつ、場合によっては凸ではない多面体も扱うことになる 一番、制約がきついのは正多面体 正多面体 regular polyhedron は、すべての…

正四面体の積み上げ。内部にピラミッドの張り合わせ

正四面体を積み上げてスケールの大きな正四面体を作っていくことを考える 内部には、正四面体ではない空洞ができて、その空洞は、底面が正方形であるピラミッドを正方形底面で張り合わせた正八面体が埋め込まれる 以下のコードは、その正八面体を描くもの

ぱらぱらめくる『曲線 折り紙デザイン 曲線で織る7つの技法』

曲線折り紙デザイン [ 三谷 純 ]ジャンル: 本・雑誌・コミック > ホビー・スポーツ・美術 > 工芸・工作 > 折り紙ショップ: 楽天ブックス価格: 2,160円 0 曲線を折るということ 1 1本の曲線を折る 2 曲線を並べる 3 曲線を回転させて並べる 4 折り込む 5 円…

python で内包表現

pythonに内包表現があり、速いという(たとえばこちら) ちょっと使ってみる 辺の長さが自然数の三角形を列挙する n = [i for i in range(1,10**2,1)] triangles = [(a, b,c) for a in n for b in n for c in n if (a + b > c) & (b + c > a) & (a + c > b) ] …

SAGE で団代数

こちらにSAGEの団代数パッケージのチュートリアルがある こちらにその文書PDF 団代数についてはこちらにメモした SAGEについてはこちらにメモした

SAGEでカバーする数学アプリケーション

こちらからSAGEがインストールできる SAGEは、以下の数学アプリをラッピングしている GP/PARI("計算機代数システムで、整数論 (因数分解、 代数的数理論、楕円曲線等) における計算を高速に行なえる") pari.math.u-bordeaux.fr GAP www.gap-system.org ("com…

2つの団変数

団代数には、反対称化可能行列Bによって定まる2通りの変化様式がある それぞれの変化様式には、x変数とy変数と呼ばれる有理式が対応する 団変数の変化 n変数の団(クラスター)で変化するものとする Bはnxn行列 今、n個のうちk番目に関する変化をさせるものと…

団変数の行列による変化

団変数は有理式 団変数は団(クラスタ)をなし、そのクラスタに対して行列で定まる変化が起きる nxn行列はn個の変数を変化させるが、n通りの変化を定める 以下は、それのR実装 Rのシンボリック演算パッケージRyacasを使っているが、Simplify()関数が有理多項式…

三角形分割の箙

昨日の記事で団代数についてメモしている 団代数の適用例として多角形の三角形分割がある 多角形も頂点と辺でできており、箙も頂点と辺でできているので、どういう対応になっているのかがわからないとこんがらがる 以下はその関係についての簡単なメモ 多角…

団代数(cluster algebra)

こちらが資料 団代数という代数がある 応用が面白いという ちょっと面倒くさいので、自分がわかりにくかった点を補強しながら、説明文を書いておく 団代数は、面倒臭い規則によって定められる「変数(団変数)」の整数係数線形和のこと この「変数(団変数)…

PyQuboを使ってみる、openjijも使ってみる

QUBOは制約条件下での解探索をしてくれる pyQuboは制約式を書いて、それをコスト関数QUBOにしてくれる Macで Cmakeが入っていなくて、brewも使えない状態だったので まずbrew を使える様にする Homebrewのコピペコマンドを使ってbrewを使える様にする ついで…

Quantum Oracle

昨日の記事の続き RのQuantumOpsパッケージのQuantum Oracleの演算子作成関数Uf()の中身を勉強する

ぱらぱらめくる『高校数学からはじめる量子コンピュータ』

こちらに本の資料 第1章 量子コンピュータへの誘い 第2章 1量子ビットの世界 第3章 1量子ビットの量子回路 第4章 2量子ビットの世界 第5章 2量子ビットの量子回路 第6章 量子プログラミング・入門編 第7章 量子プログラミング・実機編 Appendix …

正三角形で作る立体

底面と上面が正三角形x6でできた正六角形で、底面と上面をだけ角度をずらし、側面に正三角形を貼る。側面の正三角形は、1点を底面(もしくは上面)と共有し、その対辺を、もう片方の上面(もしくは底面)と共有する 次数6の頂点が2個、次数5の頂点が12個 …