R

Rで暗号化

素因数分解に基づく(RSA)公開鍵と秘密鍵の生成や、共通鍵を持ち合うAES方式を実装したopensslパッケージ それのラッパーパッケージであるencryptrパッケージ AESについて 公開鍵暗号について encryptrパッケージの説明 genkeys()の内部でopenssl::write_pem(…

Tropical algebra

Rのtropical algebraを用いたパッケージtropicalSparseを使って、tropical 代数の計算をいじってみる 資料

Rmdファイルをipynbファイルに変換する

Rmdをipynbに変換したいです。 いくつか方法があるようですが、jupytest (pip でインストールこちら)と言う仕組みを使うと jupytext --to notebook hoge.Rmd とすることで hoge.ipynbと言うファイルができるようです。 ただし、このまま、hoge.ipynbをJupyte…

行列の番地の扱い~R

Rで行列に関して、ある条件を付けて、その2次元番地を取り出したいとする 逆にその2次元番地を使って、Rの要素に付値したいとする

置換行列、サイクル~R

置換行列ができたら、そこからサイクルを取り出したい

覚えていられない、いつも使うパッケージ~R

PCを変えたら、Rのバージョンが遅れていてパッケージインストールがエラーになった 少し前までは、Rをアップデートして、インストールしておくべきパッケージの基本リストがすぐに思い出せたけれど、ヒトの名前もすぐには出てこないこの頃…、全然、パッケー…

等長辺多角形を作る

Rの文字列行列を数値行列に変換する

X<- mapply(X, FUN=as.numeric)

平面三角メッシュグラフの生成

雑なメモコード

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

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

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

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

三角メッシュの縫合手術

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

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

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

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

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

2つの団変数

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

団代数(cluster algebra)

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

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個 …

RのrSymPyは使いにくいので

シンボリック計算はRではやりにく pythonにはSymPyパッケージがあってかなり楽 RにはこのpithonのSymPyをjava経由で使うというパッケージrSymPyというものがあるのだが、java SDKの設定など難関・陥穽が厳しく、断念…。WindowsもMacも断念 じゃあ、というこ…

Rcppを使ってパッケージを作る

Rcppパッケージには、Rcppを介してcppを使ったパッケージの見本を作成する関数 Rcpp.package.skeleton() がある Rstudioで新たにcppファイルを作成して、然るべきフォルダに保存して Rcppパッケージの compileAttributes() 関数を実行して、出来上がり あと…

グラフスペクトル:隣接行列・ラプラシアン・Normal行列

グラフが持つ3つの正方行列(隣接行列・ラプラシアン・Normal行列)の固有値分解・スペクトル解析に関する短い文書をRで確かめる作業をしてみた

京都大学(一般入試)数学の問題を計算機で解く(2019)

第一問 第二問 第三問 第四問 第五問 第六問 問題と解答例はこちらなどで 第一問 問1 が無理数でととが有理数となるような この手の計算の桁落ちなどの影響が出るタイプの問題は、整数割る整数などを、整数を用いたまま計算するタイプのパッケージなどを使…

パーシステントホモロジーのパッケージ

パーシステントホモロジーのRパッケージTDAのVignetteをなぞってみる

Rでお手軽パラレル・コンピューティング

ある処理をする関数 FUN( ) があるとする 処理 FUN( ) に渡したい入力データセットがいくつもあって、その一つ一つがlistオブジェクト X になっているとする コンピュータがLINUX(またはMac)のとき parallel パッケージを使って library(parallel) out <- mc…

球面→球面の多価関数の図示

昨日の記事で球面の色塗りをした 球面から球面への多価関数があったとき、球面の点の半径に多価関数の緯度分の上乗せをして、色相・色調によって経度情報も盛り込むことにすれば

球面に色を塗る

複素平面に無限遠点を加えたリーマン球面での多価関数の視覚化の準備として、球面に色を塗ってみる 経度を色相に、緯度を明度に

リーマン面の視覚化

昨日は円環上の多価関数の視覚化をしてみた 今日は複素平面上の多価複素関数の視覚化をしてみる 台である複素平面を第1・第2軸の平面に取り、複素関数の値の実部を第3軸にとることとし、複素関数値の虚部を色相で表し、複素関数値の虚部の絶対値を明度の…

多価関数

多価関数、複素解析での多価関数について理解を深めたい 特に複素平面に無限遠点を加えたリーマン球面を台とした複素多価関数について解りたい その助走として、実1次元数直線とそれの正負の無限遠点を同一視してできる円環を台とした多価関数をいじってみ…

球面三角形の内部にある?

球面上の点が与えられたときに、球面の3点が張る三角形の内部にあるかどうかを判定しよう