20080511~
13と7と11の倍数の論理積は13と7と11の積の倍数である。
和ァ・・・
自作の簡易3Dモデリングで、今まで避けてきたことがあってですね
z軸方向、つまり奥ゆきがあまりなかったので意識してなかったんですが 一度考えてみたっきりあまり考えないようにしていた問題 奥ゆきがすごくあったら遠近法はどうなるの? という問題です 等間隔で奥行きを増やしてみたんですが × こうじゃなくて ○ こうですよね、感覚的に考えて。 横をx、縦をyとして 遠近法にのっとって描くなら x2=x×z y2=y×z なのはいいんですが zの定義が曖昧なままでしてね z1=zではなくz2=exp(z)であるべきだろうなぁと。 x2=x×z1=x×z y2=y×z1=x×z ではなく x2=x×z2=x×exp(z) y2=y×z2=y×exp(z) のはずですよね。 zの正負とか下駄は今はおいておきます。過去日記のどこかに書いてあると思います にほんブログ村 PR 改善点はですね、奥と手前で塗り分けるために、ワイヤーフレームのワイヤーをドットにしたことと ちょうつがいの式を導出したことですね。 アプローチの仕方が以前よりはいくらかはマシに可視化できたかなぁと。 動作がですね19フェイズあります。 Excelファイルはこちら。 結構ボリューミーになってしまいましたが、それでも無圧縮で上のgifとサイズ同じくらいなんですね 準プラトン立体 半正多面体 正多面体 プラトン立体 アルキメデス立体 c60 なう関数 3Dモデリング ワイヤーフレーム フラーレン バッキボール サッカーボール にほんブログ村 このように、多重に連なったちょうつがいを連続的に配置するには、図のような式である必要が あると思います。 一般化するとこうです。 n+1枚の板が、n個のちょうつがいでつながっているとき、k番目の板の重心位置は図のような式になるはずです。 真四角の場合はこんなかんじ(rとθがすべて等しい θの最大値は90度) 長方形ならこんなかんじ(2種類のrが存在する ∀のθmax=90°) 五角形ならこんなかんじ(rはすべて等しいが、すべてのθmaxは180-108=72度) ※360/5=72とするとミスの元です。内角はあくまで内角、外角は外角です。 真横から見たドリル型ならこんなかんじ(rもθmaxもバラバラ) Excelを添付するとしたらこんなかんじ にほんブログ村
昨日の続きです。
ようやくgifが完成しました。 x軸回転→平行移動→z軸回転の順に作用させておきながら 変数を動かすのはz軸→平行移動&x軸の順なので、頭の体操が必要でした。 イメージできないので絵コンテを手で書こうとしたら字心も絵心もないからExcelのオートシェイプで書く始末です。 この式の中で 正六面体のちょうつがいの式はこう 正四面体はこうです。 三角形と四角形では隣接する同じ多角形同士の接合面がアレなので、y0のちょうつがいの式で±が逆転してますが、基本的には同じ式をどの多角形にも流用できることが確かめられました。 変(型合)態モードはこんな感じです 正六面体 正四面体 Excelファイルはこちらです。正六面体、正四面体 手作業でいじりやすいところをオレンジ色で塗っておきました。 空白セルでdelボタンを押すとなんとなく動きます。 動きが見えづらかったら1000000とか書いてるセルの値を変えて、速さ調整をしてみてください。 (1000000も色つけとけばよかった) delおしっぱで動く方と動かない方がいると思いますので、おしっぱではなく連打も試してみてください 今度は蓋が閉じよう!そして私はしまわれる にほんブログ村 ちゃぼい画像しか用意できなくてすまない。 以前、ちょうつがいのときのと似たようなことをやっているように見えるかもしれませんが どうもこのように、x軸回転→平行移動→z軸回転と作用させていきつつ 数値は右のθzを変化させてからθxを変化させることで、目的の動きがより簡素な式で記述できるようなのです。 こんな調子じゃ3DCGの汎用性・感覚的・無計画な操作には程遠いとは思いつつも、なんかこういう性分なのかなとか思ったり。 平行移動させるための座標調整を、ちょうつがい的にするための数式を一度作ったはずなのですが忘れてしまったのでもう一度導出するつもりで、 これが格子状でない多角形でも有効なのを確かめるため 次は正四面体あたりでテストしようかなと思っています さっさとgifで提出しろ 以前、こういった準プラトニック・ロボの変形合体を知人に見せたところ「わかりづらい」とのダメ出しを食らいまして それをわかりやすくするために努力しようと思ったら、びっくりするほど時間がかかってしまうくらい面倒くさい処理どもが増えやがりまして。 いつかリベンジしてやるです いつか!死ぬまでに!死なない程度に! にほんブログ村 これを勢いよく作っていた最中に、日本が負けたんです。 裏側を表示しないようにしてたんです。 でも、色を変えればいいんだと思ったら 今度は表側がどっかに行っちゃったのかもしれません 具合が悪くなったんだったかで、気分転換にパウリ行列指数関数のことを考えていたら思いのほか時間がかかってしまいまして。 とりあえず奮起させてさっさと終わらせようと思って今にいたります。 にほんブログ村
またまた昨日の続き。
今更気づいたんですが、 そもそもこの回転のための行列自体、 A= パウリ行列Aにどうやって作用させればいいんすか・・・ せっかく用意したのに出番がわからない・・・orz なんか堂々巡りしてるみたいでいやだなぁ(;ω;) といいますか、リボってるよ!リボる爺だよ!最近のことからすっぽり忘れてる気がしますよ!! ======== それはともかく、 パウリ行列の指数関数exp(iΣσnθn=exp(iA))、昨日の晩にようやく計算過程まで整備したんで公開します。 まず指数関数の中身、A=Σσnθnを対角化するとexpに入れやすいわけですが これには固有値・固有ベクトルが必要ですので、固有値と固有ベクトルを求めましょう。 まず固有値λは、 det(A-λE)=0 となるスカラー量λが定義です。 detは行列式、Eは単位行列を意味します。 解くと、λはrを として(θってつけるの忘れた)、λ=±rが得られますので、(ほらぁ!エルミート行列の固有値が実数でしょ!?) λ=rの場合と、λ=-rの場合とで、固有ベクトルを求めます。 固有ベクトルは (A-λE)v=0 を満足する縦ベクトル のことです。 今回の場合は2本の連立方程式が、必ず永年方程式の形で現れるので、具体的なv1とv2は求まりません。 したがって、v1とv2の比がわかればokとします。 (θx+iθy)v1=(θz+r)v2 が得られるので となります。 同様に、λ=-rの場合も解きますと が得られます。 この2つの固有ベクトルを横に並べると このような行列になります。これを慣習的にPで表します。 のちのちのために、Pの中身をa,b,cで簡略化しておきましょう。 ここで、Pの逆行列P-1を求める作業に移ります。 2行2列なので単純です。Pの行列式を|P|とすると 行列式は|P|=a(b-c)です。 このPとP-1を用いて、 P-1APと掛け算することにより、 対角成分しか存在しない行列の計算が可能になります。また、対角成分は先ほど求めた2つの固有値となります。 これは以下のgifアニメに示すように、行列のべき乗Anに大変有効です。 両辺に右からP-1を、左からPをかけることで An=PDnP-1となるからです。 行列指数関数においても例外ではなく こんなんでましたけども! ======= うっかり前置きが長くなってしまいました。いつもの癖ですね |P|の中身を代入してaで約分し、 これから、a,b,cの中身を代入するのですが bc/aというのはどのように計算されるのかといいますと bc=(θz+r)(θz-r)=θz2-r2 なんですがこれは、θz2-(θx2+θy2+θz2)なので bc=-(θx2+θy2) なのです。 さらにこれを、a=θx+iθyで割るのですが (θx+iθy)(θx-iθy)=θx2+θy2なので、 bc/a=-(θx-iθy)であることがわかります。 さらに代入して整理すると、結局このような形になります。 ただし、θはrのことで、(最初からθって書いてればよかった^^;) Lx,Ly,Lzはそれぞれ、θx/θ,θy/θ,θz/θといった、θのノルムで規格化された角度のことを言います。 もちろん、パウリ行列系座標系Σσnθnは のエルミート行列です。 ======== θx=θy=0のz軸のみの回転のときと θy=θz=0のx軸回転 θz=θx=0のy軸回転のときのこの行列が、それぞれ こうなることと、 となることを利用して(*印は複素共役)、行列式が1になる(ユニタリ)ことを、暇があったら示してみなさい^^ お疲れ様でした にほんブログ村
昨日の続きです。
おそらくですね、 このような形にした3次元ベクトル(のような行列)に これを足すと平行移動 これをかけると3軸独立に拡大・縮小 そしてこれをかけると 任意のベクトルを回転軸とした回転ができると思うんです。 ここで、x,y,zは3次元の座標、x0,y0,z0は基準点、A,B,Cは縮尺 Lx,Ly,Lzはトルクベクトルのようなもの(回転面に垂直なベクトル)で、全部実数であり 特にLx,Ly,LzはノルムLx^2+Ly^2+Lz^2=1になるように規格化されているものとします。 パウリ行列σの行列指数関数exp(iΣ(σnLn))を、対角化を利用して展開してみて、 それっぽい形にまではたどり着いたのですが 符号が整理できてないので、計算過程は後々公開します。 いちおう、Lx=Ly=0(z軸回転)、Ly=Lz=0(x軸回転)、Lz=Lx=0(y軸回転)で正しく機能するように符号を見積もってみましたが、ちゃんと右手系になっているかどうかなどはまだ確認していません。 あー・・・sinとcosの中身がこれじゃ常に1になってしまいますねorz どうするんだっけな、合成ベクトル的なやつなんですが、関数の中身はスカラーかつ、定数ではない変数のはずですし にほんブログ村 追記:なんてこった!何の疑いもなく示した拡大・縮小がうまくいってねえ! 方法がないわけじゃないんだろうが、何かこうコツがいるんだきっと あれ?でもそういえば、パウリ行列にパウリ行列指数関数を実際にかけたことがまだない!
先日の予感、見事に外れました。
パウリ行列の指数関数 exp(iΣσnθn)は、一般にはexp(iσxθx)・exp(iσyθy)・exp(iσzθz)とイコールとは限らないそうです。 どおりで右辺同士が積に関して非可換なわけです。左辺ともちゃんとイコールじゃなかったのね クォータニオンと回転行列の関係性を予感していたのに、 実際にはクォータニオンと回転行列の無関係性を示してしまったとかいう皮肉・・・ exp(iΣσnθn)=?=exp(iσxθx)・exp(iσyθy)・exp(iσzθz) この左辺がクォータニオン、右辺が3軸の回転行列を順番に掛け算することを意味するわけで 左辺のΣσnθnは回転軸が合成ベクトルであり、任意なことを示しているわけです。 まだちゃんと計算し終えてませんが、合成ベクトル(行列?)の固有値rがノルムr^2=θx^2+θy^2+θz^2の関係にあることまでは確かめました。 しかしこの展開、どこかで見覚えがあるのです。 クォータニオンそのものですね。クォータニオンで3D回転をしたい場合 このようにするといいとされているのですが もっとシンプルになったりしないでしょうか? 平行移動のために余剰次元を1次元追加することもなく ただ単に行列の形をしたベクトルがあって、そのスカラー倍が伸縮、行列同士の加減算が平行移動、(回転に相当する)行列の掛け算が回転を意味したりしないでしょうか?? 困るのはこのベクトルのようなものがExcelだと2行にまたがることですが この際ユーザー定義関数を作って使って1行にまとめてしまえばなんてことはないじゃないですか。 どうせ2行2列の行列って相場が決まってるんですし、一般化する必要もなく、 ユーザー定義関数程度ならマクロ素人の僕でも手に届きます。 どーせ複素行列のアドインが動かない現状だしなぁwwwwあはははは いつぞやのゲルマン行列可視化器は、ユニタリ行列だったからたまたまトレース、というかたぶん固有値まで一致した奇跡のような状態だったようですが 大小?嘘書いてすんませんでした>< にほんブログ村
パウリ行列σ1~3があって
exp(iσ1θ1)=U1 exp(iσ2θ2)=U2 exp(iσ3θ3)=U3 uIJK=UI・UJ・UK IJKは1~3の整数で、I≠J≠K とすると すべてのIJKでuIJKは同じもんだろうか たかだか3つだから元気になったらちゃんと計算しよう にほんブログ村 他利器本願寺
111111111×111111111=12345678987654321
1が9回を2乗 ということはですよ、 12345678987654321を9で割った結果もなお9で割り切れることを意味しているわけで。 しかし12345678987654321を手作業で割り算するのは面倒ですよね。 かといってExcelや電卓で割り算すると、有効数字がポロリしてしまうわけで でも推理することはできるよ! 12345678987654321÷9=1371742109739370と表示されるんですが sum(1,3,7,1,7,4,2,1,0,9,7,3,9,3,7,0)≡0 mod9 じゃありませんよね?≒≠「似て非なるもの」の演算をコンピュータでやる無茶ぶり記号はない でも近似ではあるので、直近の9の倍数を探せばいいのです。 mod(sum(1,3,7,1,7,4,2,1,0,9,7,3,9,3,7,0),9)はいくつでしょうか =mod(sum(1,3,7,1,7,4,2,1,7,3,3,7),9) =mod(sum(1,3,7,1,7,2,1,3,3),9) =mod(sum(1,3,7,1,7),9) =mod(sum(1),9) つまり1あまってるってことですね ということは1371742109739369が四捨五入されて1371742109739370になった可能性が一番高いわけで 正しくは12345678987654321÷9=1371742109739369だったということになりますね まあ、実際に割り算したから言えることなんですけどね 2桁以上ポロリしてたらなんともいえない。 2桁ポロリだったらmod11 4桁ポロリだったらそうですね、mod7とmod13も合わせて誤り訂正でもしますか。 犯して謝らせるプレイ? ガリバーティンポ! ショウマ、それは君の前シッポだ。あくまでシッポ。 のうりんのベッキーってぱにぽにのベッキーだったのか!!! にほんブログ村 20140614の日記でこのようなExcelファイルをアップしたんですが、赤枠で囲ったこの部分がチラチラ動くのに気付いた方がいたらうれしいなーって感じ。 新PCで、キャプチャーツールをカハマルカの瞳に収束して慣れるべく、 こんなに時間がかかってしまいました。 動きます。このためにデータを全部芋づる式につなげておいたのです。 \地球の裏側に生まれてよかったー/(シャイな人) にほんブログ村
XPと一緒にどっかいってもうた><
MATRIX and LINEAR ALGEBRA Package For EXCEL という名前らしい(調べるのが必然的に超今更になってしまいました)のですが オフィス2013でアドインしてみたらExcelが止まるぅぅぅぅぅ なんてこった・・・! 実対称行列以外の固有値・固有ベクトルは算出できないにしても スカラー並みの四則演算ができたりして便利だったのに~ なぜだろう、オフィス2013対応版が見当たりません それどころか、同様の機能を有するアドインがまったく見当たらない様子です 「まだ作られてない」のか「もう作られない」のか微妙ですね はぁ・・・ 久々にちょっとプログラミング界隈に探検に行きますか・・・ 配列関数のユーザー定義関数が作れるようになればいいっすねえ 欲を言えばアドインを作れればいいな(遠い目@VBちょう初心者) そういえば「ソルバー」がどのようなものかぐぐってみました。 ざっくり言えば「与えられた方程式」の解を求めるためのもの という感じですか。 ニュートン法っすね。(まあアルゴリズムは選べるようですが) 非常に古参くさい発言になってしまって申し訳ないのですが 「地上デジタルラジオ」のような複雑な心境です。 アナログラジオが放送されなくなったら電子工作の第一歩ご紹介はどうすればええんや! ってかんじの。 ICやLSIすっ飛ばしていきなりPICやインタフェースから始めるんすか・・・なんかいやだなぁ さあて、2013で循環参照をオンにする手続きをぐぐってきましょうか。 にほんブログ村 |
カレンダー
カテゴリー
最新CM
[12/30 buy steroids credit card]
[09/26 Rositawok]
[03/24 hydraTep]
[03/18 Thomaniveigo]
[03/17 Robertaverm]
最新記事
(01/01)
(01/03)
(09/23)
(09/23)
(02/11)
(05/30)
(05/28)
(05/28)
(05/27)
(08/04)
(10/24)
(06/08)
(05/22)
(01/13)
(11/04)
最新TB
プロフィール
HN:
量子きのこ
年齢:
43
HP:
性別:
男性
誕生日:
1981/04/04
職業:
WinDOS.N臣T
趣味:
妄想・計算・測定・アニメ
自己紹介:
日記タイトルの頭についてるアルファベットは日記の番号です
26進数を右から読みます 例:H→7番目、XP→15(P)×26+23(X)=413番目。 A=0とする仕様につき一番右の桁はAにできませんのでご了承くださいズコー
ブログ内検索
アーカイブ
最古記事
(05/11)
(05/11)
(05/13)
(05/13)
(05/13)
(05/13)
(05/13)
(05/13)
(05/14)
(05/14)
(05/14)
(05/14)
(05/16)
(05/16)
(05/16)
アクセス解析
|