20080511~
13と7と11の倍数の論理積は13と7と11の積の倍数である。
和ァ・・・
ある数10m+nがあります。m,nは整数です。
これが任意の整数Aの倍数かどうかを判定する式を作りたいとき、どうするか。 たとえば7の倍数判定だったらA=7で -m+2nが7の倍数だったら10m+nも7の倍数 13の倍数判定だったらA=13で m+4nが13の倍数だったら10m+nも13の倍数なんですが、 この4とか-2とか、Aを一般化したいわけです。 10m+n=A*z1 B2*m+B1*n=A*z2 としてみましょう。 (z1,z2、B1,B2も整数です) 1つ目の式を変形して、 n=A*z1-10m このnを2つ目の式に代入して B2*m+B1*(A*z1-10m)=A*z2 展開して B2*m+A*B1*z1-10m*B1=A*z2 mを含む項と含まない項に分け B2*m-10m*B1=A*z2-A*B1*z1 (B2-10B1)*m=A*(z2-B1*z1) こうした上で、A=7だったら B2=-1、B1=2とすると、左辺のカッコの中が-1-10*2=-21になって、両辺が7で約分できるので、判定式として成立します。 同様にA=13だったら B2=1、B1=4とすると、左辺のカッコの中が1-10*4=-39になるため、両辺が13で約分できて、これも判定式として成立します。 つまり、以下の形に変形することにより、任意のAに対して (B2-10B1)*m=A*(z2-B1*z1) B2とB1を定めやすくなる、というわけです。 ためしにA=4だと B1=1、B2=6とか B2=2、B1=-1とかで成立します。 32が4の倍数だと判別するために、後者を採用すると 下1桁2から、それ以外3に2をかけて6にして引き算 -4になってこれは4の倍数なので、元の数32も4の倍数と、ちゃんとできています。 A=3だったら B1=1、B2=1とすると たとえば36だったら下1桁6とそれ以外3を足した9が3の倍数だったら、元の数36も3の倍数 A=11だったら B2=-1、B1=1 121を相手にしてみると 下1桁1からそれ以外12を引いて11なので、元の121も11の倍数 とできます。 任意の数の倍数判定に使うことができます。 が、速度は遅いし、あまり役に立たないです。 2のべき乗と3のべき乗と5のべき乗と11のべき乗などを区別しません。 ですので、2や5のべき乗の倍数判定(十進数)では必ず割り切れるのでほとんど意味がありませんし 3や9の倍数判定、「各桁を足す」に対して、完全下位互換となりますし(おそろしく遅い) 11の倍数判定「偶数桁の合計と奇数桁の合計を引く」に対しても完全下位互換になります。 たとえば1053が3の倍数だということを確かめたい場合、 1+5+3=9なのですぐにわかりますが、今回の方法では 105と3を足した108が3の倍数か知るために8に10を足した18が3の倍数か知るために 1+8=9と、数珠つなぎのような地獄を味わうことになり、大変判定が遅くなります。 なお、ある数Aの倍数判定のための式は1つではなく、無数に作りだすことができます 100m3+10m2+m1とかにしたらどうなるんでしょうね? PR
昨日までの、35を13でわったあまりの判別方法
証明しようにも証明するべき式がうまく確立できなくてずっとモヤモヤしてた。 今朝さっきトイレに入って、ああそうか両辺を4倍すれば割り算入らないからいけるやん! ってことにようやく気づいた。 m,nを整数として、 10m+n って数があったとすると、これを13でわったあまりd1は mod(10m+n,13)=d1 mod(4n+m,13)=4d2 のd2と等しいので、d1=d2 これを証明すればいい。 たぶんこれでかつる。 modが邪魔なので 勝手な整数L1、L2を用意して 10m+n=13*L1+d1 4n+m=13*L2+4*d2 のd1=d2である(L1=L2とは限らない) という問題に変換できそう。 2本目の式から m=13L2+4d2-4n を1本目の式に代入して 10(13L2+4d2-4n)+n=13L1+d1 130L2+40d2-40n+n=13L1+d1 130L2-13L1+40d2-d1-39n=0 13(10L2-L1-3n)=d1-40d2 もしd1=d2=だったら、 13(10L2-L1-3n)=-13*3d 両辺ともに13の倍数になる というのはやり方が強引だろうか?? もしこの証明ができたら、13や7以外の、4とか5とか17とか11とか3とか 必要だったりまったく不要な下位互換だったりの任意の数で割ったあまりの判別方法も 作りだせるんじゃないかって期待してたんだけど うーん…これだけだとどうなのかなあ?いまいちピンとこない 今日は起きたばっかりでストレスもほとんどなかったから 整数を扱っても頭の端っこがキューっとならなかった。 どうも大学を出てから整数を扱おうとすると時々不調になる。 元々整数論みたいの好きだったと思うんだけどね、 意味もなく3や9で割ったあまりとか計算しまくってたし でもなんかこう、あらかじめ得意だった分野をあとから学業で学ぶときの僕って 舐めプする癖があるみたいで、そういうのに限ってダメになる傾向があるような気がする 整数論とか確率とか、あるいは英語全般とかね 整数論は特に、「ああ、デジタルね~」って感じで舐めプする人が多いんじゃないかって 数学ガール読んだときに思った
昨日は、「下1桁を4倍してそれ以外と足して13で割る」っていうのは
本来は「下1桁以外を4分の1して下1桁と足して13で割る」から派生したオマケなんだよ っていうのを強調したくて、つい忘れていたんだけど、別アプローチがあるんだ。 というのは、「下1桁を4倍してそれ以外と足す」までは同じなんだ。 35を13で割ったあまりの例で見てみよう。 下1桁5を4倍して20 20と3を足して23 ここから事情が変わる。 ここで23を4で割ってさらに、それを13で割ったあまりを考えるんだけど 23は4の倍数じゃない。 そこで、今度は23に13の整数倍を足し引きして、4の倍数に持ってくる。 ちょうど、23+13=36が4の倍数になっている。 36÷4は9だ。 だから、元の数である35を13で割ったあまりも9 昨日の話とつじつまが合っている。 計算尺的な楽しみはこのアプローチでも相変わらず残ってくれる 4等分するときに物差しの折り紙をしたいのだ。 都合のいいことに、折り紙をした際の誤差は、整数を扱っているからという理由で キズモノのCDをコピーするみたいにノイズを消し去ることができる。
chouchoが舞えば気象兵器が儲かる
ローレンツ方程式 ほれ3行 '(ダッシュ・プライム)は微分を意味するので、この3行の方程式は連立微分方程式です。時間tで微分します。 なお、非線形ですので行列は帰って、どうぞ。 x,y,zが求められるべき関数で、x(t)、y(t)、z(t)らしいです。 p,r,bはパラメータです。 p=10、r=28、b=8/3っていうのが割りと注目されるらしいです。 今回数値計算でシミュレーションしましたが、初期値はx=10、y=12、z=15を参考にしました。 一度オイラー法での差分方程式によるシミュレーションを試しましたがすぐに変な値に収束してしまうので、ルンゲ・クッタ法でやり直したらExcelでもうまくいきました。陰的とかブッチャー配列とか知りません。古典的でやりました。 ルンゲクッタ法は以上のような手続きを取るそうです。 積分における短冊・台形近似をシンプソンの公式にしたやつの微分方程式版と言われて言葉ではなんとなく把握したけども、いまいち理解していません。 ですので、応用が利かず、たとえばy'=-xz+rx-yの場合任意の関数fはf=-xz+rx-yなのでf(x,z,y,t)なんでしょうが今はx,zのことは考えなくていいとして yにxとかzとか掛け算されてたらどうしよう!?gkbrとか思ってたんですが3本の式とも杞憂に終わってしまって助かりました。 たとえば y'=xyとかだったらどうしよう?って話でした! (PC版ではクリックすると原寸大が見れます、スマホ?ピンチアウト(スワイプみたいなあれ)でなんとかなるんじゃないすか(適当)) xの構成方法と、xに関するk1~k4の計算方法を図に記述しました。 y,zも同様です この状態で、h=0.01、n=2000くらいまで計算させました。 それからですね、 こんな感じの3次行列を用意します。 「x軸回転」のすぐ下にdegreeの角度θ、そのさらに下にradの角度θを格納し、行列の意味は こんな感じです。これをy軸回転、z軸回転で同様に繰り返し このような感じに並べます。 一番下の3次行列はx,y,z、3軸回転行列の積で このような意味合いです。 =MMULT(MMULT(x軸:x軸,y軸:y軸),z軸:z軸) という演算をやっています。配列全体に染み渡らせたいときは、演算させたい範囲を囲ってctrl+shift+エンターです。 なお、sinの符号は、片方がもう片方の逆符号であればどっちがプラスでもいいです。どうせ逆回転になるだけなんで。 そうして出来上がった3D回転行列を、 元のx,y,zに作用させましょう。 =MMULT(x:z,$合成行列) そうして出来上がった新しいx,y,z座標のxとyだけをグラフに反映させると このようになります。 x→y→z軸の順番で、180度ずつ回転させてますので、全部の回転が済めば元の回転角に戻ります この図が動く仕組みを説明しましょう まず now()-today() を入力します。 関数now()は時刻込み今のの日付のシリアル値を出力します。 関数today()は、時刻抜きの今日の日付のシリアル値を出力します。 シリアル値というのは、1900年1月1日の0時0分0秒を「0」とし、24時間を「1」と定義した表現方法なので、 たとえば同日の朝6時というのは0.25という数値になります。 6:00と打って、書式をシリアル値から数値に戻すと、0.25になっているはずです。 また、1900/2/1と「イコールなしで」打てば、1月1日から数えて32日目なので、書式を数値に戻すと32になるはずです。 これらを踏まえて、日付に半角スペースを入れてから時刻を入力すると、たとえば 1900/2/1 6:00:00 でしたら、32.25という数値になります。 now()はたとえば今が2019/6/4の10:57だったら 2019/6/4 10:57のシリアル値を算出するので 43620.45758 ぐらいの数値になります。 実はこの数値、一番小さい桁を見ると、ミリ秒単位ぐらいで動いています。 F4を連打するとうごめいているのがわかるかと思います。 これを動画の媒介変数に用いることができます。 たとえばnow()の値を700万倍に拡大してグラフに反映させることができれば、目に見えて動きます。 が、整数部が5桁もあるので、700万倍したらオーバーフローしてしまいます。 これを解決する手っ取り早い方法として、(色んな方法がありますが)「関数today()で関数now()を引き算する」というのがあげられると思います。 必ず1未満の数値になりますし、引き算という演算を行っているため、Excelはシリアル値ではなく数値と勝手に解釈して出力してくれます。 今回は、180度の回転を3回繰り返したいので、180×3=540°の周期が必要です。 ですので、now()-today()を700万倍した数値を540で割り算した剰余(あまり)が役に立ってくれます。 剰余の関数はモジュロ演算なので、modという関数です。 A=mod(700万*(now()-today()),540) という演算を行います。 x,y,z軸の回転角θ1、θ2、θ3のdegreeにそれぞれ θ1=IF(A<=180,A,180) θ2=IF(A<=180,0,IF(A<=180*2,A-180,180)) θ3=IF(A<=180*2,0,A-180*2) と入力すると、上のように動くグラフが作れます バタフライ効果という名前の由来そのものが ・「蝶が舞えば気象兵器が儲かる」 と ・ローレンツアトラクタのグラフが蝶のように見える の2種類あるというのがなんとも、 2つの過去が1つの未来に収束したみたいで興味深いです シュタッL・ψ・卍=3ゲー
この複素積分が楽しかった。
の線Cに沿って を計算するんですけどね、まずはコーシーの積分公式を使った方法から。 コーシーの積分公式では以下のように 積分が微分で表されてしまうので、今回の例題の場合はn=0、α=-iとすると、簡単に 解を導出できてしまいます。 ======== それでは、もう一つの方法、コーシーの積分定理と部分分数分解を用いた方法もやってみることにしましょう。 2つではなく3つの積になっているのですが、まずは(z+3)と(z-3)を部分分数分解して、(z+i)に分配して掛け算されるとみなします。 この式を恒等的に満たすAとBを見つけます。 A(z+3)+B(z-3)=z (A+B)z=z なので、A+B=1 もう1つの式が 3(B-A)=0 なのでA=B これを1つ目の式に代入すると、A=B=1/2が出てきます。 となったので、分配して、再度部分分数分解します。 つまり元の積分は以下のようになりますが 線Cで囲まれた領域の中にz=±3はないので、1/(z±3)の積分は正則によりゼロになります。 よって元の式は以下のようになり、 結局、さきほどの積分公式(積分定理ではなく)を使った計算結果と見事一致します。 コンピュータの技術の積層のボトムアップ感と違って 複素解析のまほう!はどんどん略されていくトップダウン感がありますね
今日は仕事が疲れたので、ファミマで複素解析の勉強しませんでした。
得た知識が曖昧なので、今日は割りと定性的なネタで日記をつぶします。 昨日の寝る前に、対数で何が得られるのか?対数という演算で何をやっているのか? ということを考えていたら、 指数(とかオイラーの公式とか):極座標→直交座標変換 対数:直交座標→極座標変換 という意味合いを見つけました。(ちょう今更なので、デジャブってるかもしれませn) そして、対数では、極座標に変換したデータを、実部に絶対値、虚部に偏角として出力し 足し算をしている! ここちょっと驚きました。絶対値と偏角は、足し算できる間柄だったんですよ!! じゃあこれを物理の現象に翻訳したらどうなる!? 僕は電気工学出身なので、一番身近なものだと、インピーダンスとかアンプのゲイン・位相とかそっちになります。量子力学はいまいちよくわかりません。 対数を取ると、電気工学的な意味合いでは、ゲインと位相を足し算していることになります。 まあ、無次元量同士なら足し算しても問題ないですし、実際無次元量として足し算しています。 ゲインとかもデシベルにしてから位相と足し算しますしね。 デシベルにする時点で、基本となる増幅率で割り算してから対数を取っているので、もちろん無次元量になってます。 興味深いのは、ゲインも位相も、周波数特性としてボード線図にすると ゲインは両対数、位相は片対数を取って、必然的に対数(無次元)にしている点です。 おそらく、縦軸にゲイン・横軸に位相を取ったような作図があるはず… ニコルス線図かナイキスト線図か、それともスミスチャートか。なんだったかな ところで、複素積分するとよく出てくる2πiとかいうやつ。 なんで積分した結果に出てくる語尾みたいのが、純虚数なんすかね?? 僕の中のイメージではまだ、複素平面をぐるりんと回して右ネジの法則~みたいなふわっとしたイメージしかないので もしそれなら複素平面の紙面に垂直な成分~?って稚拙なイメージしか出てきません。 しかし、あくまで元が2つの複素数を扱っているわけだから、複素平面の外側を考えることに意味がないのもなんとなくわかって、モヤっとしますね。 この辺、ベクトル解析とかだったらどうなるんだろう? アンペールの法則とかに相当するよね?たぶん。あるいはストークスの定理かなあ? 本にはグリーンの定理の複素版って書いてた気がするけど、グリーンの定理がいまいちわからない 線積分や面積分についてもまだまだ知らないことばかりだし、回転楕円体の積分(二重積分?)とかとの関連もまださっぱり。 で、おとといの日記だったか、1/zの積分は有限なのに、1/z^2とかのそれ以外のやつはゼロになるってやつが妙に気になりだしてて じゃあ、周回積分で有限になるのって、逆1乗則と密接な関係でもあるの!?とか考え始めたりして。
複素解析
この複素積分をwwwww この経路でwwww 経路CをC1,C2,C3,C4に分けます。 C1:z=1+it C2:z=-t+i C3:z=-1-it C4:z=t-i 媒介変数tは実数で、範囲は4つとも-1≦t≦1です。 2項目、3項目、4項目の分母分子にそれぞれ、-i、-1、iを掛け算すると、 4項とも同じ数式になるので、1項目の4倍になります。 定積分を行うと、このような対数になります。 しかし中身が複素数に拡張された対数なので、気を付けて計算しなければなりません。 指数やオイラーの公式に立ち戻って考えますと、以上のようになります。 複素数の場合、わりと常に多価関数を意識する必要がありますが、今回は特に意識しなくて大丈夫でした。 与式はA-Bを計算したいので、最終的に√2の対数の項が打ち消しあって、 iπ/4が2倍され、さらに4倍されるので、 積分の答えは2πiと、昨日の定理と同じ値になることが確認できました。
ここんとこ、割りと毎日「複素解析」の演習問題に手を出せているので嬉しい。
20年前くらいにやった複素積分や留数定理をリベンジしようと本を買ったんだけど まさか、複素積分の手前に複素微分があるのをまったく認識していなかったとは思わず 自分で呆れかえってしまった。 しかし、積分が出てくるまで、この複素微分、どう応用したらいいのか全然思い浮かばない。 だから当時は習っても簡単に忘れ去ったのかもしれない。 「領域」や「正則」、「線(経路)の媒介表現」など、よくわからずに習った部品が次々と合体していく。コイツはアツい!フルパワーグリッドマンだ!! nを整数、aが複素定数、zを任意の複素変数とすると aの周りにおいて(z-a)^nをzで積分した場合 n=-1でだけ積分値が2πiになり、それ以外のnでは0になるという、大変お得な定理の証明を習った。 なお、(z-a)^nは正則な関数である。(らしい) たぶん、そのうちこれを部分分数展開とかやって、留数定理に持っていく算段だろう。 少なくともフーリエ・ラプラス逆変換には応用が利くし、 ベクトル解析とのアナロジーも結構あると思う そいで、この証明がまた萌えるもので まるで直交関数系みを感じてすこなのだ。 いつもファミマで数式いじってるので、書類が車の中にあってうろ覚えなんだけど と置いて、複素数zではなく実数tについて積分するんだったっけな 置換のための準備としてzをtで微分しておくとこうで n≠-1の場合は n=-1だったら な?なかなか直交関数系みあふれるじゃろ?^^ ためしに、1/zをz=0周りの正方形の経路で積分した結果も載せたかったけど明日にします 20年ぶりにようやく実体がつかめるようになりました。 (円1)(円2)(円3)(円4)<0 ってやったんですけど、領域4つだとはっきり、排他的論理和じゃないことがわかってきますよね。 というか、円を(|z-a|-r)って表現して、それを掛け算してる時点で実数確定なんだから、プラスかマイナスしかないわけですよ。 そんなんに都合よく4つの円の排他的論理和だけを振り分けるほうが無茶ブリでしたよね でも、この領域のイメージの仕方自体は排他的論理和 というか加法標準形なんですよね。 (円1>0&& 円2<0&& 円3<0&& 円4<0) || (円1<0&& 円2>0&& 円3<0&& 円4<0) || (円1<0&& 円2<0&& 円3>0&& 円4<0) || (円1<0&& 円2<0&& 円3<0&& 円4>0) || (円1<0&& 円2>0&& 円3>0&& 円4>0) || (円1>0&& 円2<0&& 円3>0&& 円4>0) || (円1>0&& 円2>0&& 円3<0&& 円4>0) || (円1>0&& 円2>0&& 円3>0&& 円4<0) ほらね、組み合わせ=領域の数が8通りあるでそ? 2つ以下の掛け算じゃないと排他的論理和にならず、 「領域レイヤーの枚数が奇数毎重なってるところが条件を満たす」にしかならんのですよ 要素3つのベン図みたいの作りたかったらまるで想像と逆の領域が血塗られてしまいますわね |
カレンダー
カテゴリー
最新CM
[12/30 buy steroids credit card]
[09/26 Rositawok]
[03/24 hydraTep]
[03/18 Thomaniveigo]
[03/17 Robertaverm]
最新記事
(01/01)
(03/19)
(03/18)
(03/18)
(02/23)
(02/14)
(02/12)
(01/03)
(09/23)
(09/23)
(02/11)
(05/30)
(05/28)
(05/28)
(05/27)
最新TB
プロフィール
HN:
量子きのこ
年齢:
44
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)
アクセス解析
|