黒木玄 Gen Kuroki
- いいね数 389,756/311,170
- フォロー 995 フォロワー 14,556 ツイート 293,980
- 現在地 (^-^)/
- Web https://genkuroki.github.io/documents/
- 自己紹介 私については https://twilog.org/genkuroki と https://genkuroki.github.io と https://github.com/genkuroki と https://github.com/genkuroki/public を見て下さい。
2021年03月14日(日)
#Julia言語 上のVan der Pol方程式のPlutoノートブックを使う方法
⓪Juliaの公式バイナリをインストール
julialang.org/downloads/
v1.6.0-rc2またはnightly buildがお勧め。
julialang.org/downloads/nigh...
①juliaを起動して、]と押して
pkg> add Pluto PlutoUI Plots MonteCarloMeasurements pic.twitter.com/NJ4FAXIcyE
タグ: Julia言語
posted at 23:57:37
#Julia言語
function f(x::Float64)::Float64
~
end
のようなコードを書いた途端に、NASAの人が
Solves the dependent input parameter problem
(no more "exploding complexity")
と強調しているところの、
no more "exploding complexity"
に至る道が閉ざされてしまうのです。 pic.twitter.com/nFivbv9zGS
タグ: Julia言語
posted at 23:07:45
#Julia言語 仮に添付画像のように Float64 (倍精度)のような型の指定をしないで済ますのではなく、Float64を指定してしまっていると、さまざまな害が起こります。
* Float32やFloat128では使えなくなる。
* 摂動した結果を表示するためのパッケージと組み合わせて使えなくなる。 pic.twitter.com/NvlOS9VO1d
タグ: Julia言語
posted at 22:58:31
#Julia言語 添付画像は私が書いたシンプレクティック・オイラー法のコードです。
このコードのどこにもFloat64のような浮動小数点数の型にあたる情報が何も書かれていないことに注目!
このような書き方でもJuliaは高速に計算してくれます(今回はpush!を使っているので計算速度に気を使っていない)。 pic.twitter.com/nKWPyvMsD3
タグ: Julia言語
posted at 22:54:18
#数楽 添付画像では最大εの大きさで初期条件に摂動がかけられた場合の様子もプロットされているのですが、リミットサイクルに引き込まれて行っているので、初期条件の違いの影響が時間とともに減少している様子も見えます。 pic.twitter.com/LiXKE3FQPd
タグ: 数楽
posted at 22:39:50
#Julia言語 誰か、太陽系内での宇宙船の軌道のシミュレーションを DifferentialEquations.jl でやって見せて欲しいです。
各種定数の取得には
github.com/cadojo/Unitful...
を使えます。
タグ: Julia言語
posted at 22:36:55
#Julia言語 NASAでもJuliaを使っているのだから、以下のリンク先のような仕事でもJuliaを使うと便利なのではないかと思いました。
twitter.com/madnoda/status...
タグ: Julia言語
posted at 22:26:45
#Julia言語 さらに微分方程式を数式で表示するためのコードも追加したのに、添付画像のようなことをするために自分が書いたコードは60行程度でしかありません。
Van der Pol方程式のリミットサイクルがしっかり見えています。
Pluto notebook のソースコード↓
gist.github.com/genkuroki/9013... pic.twitter.com/TZMemshO0X
タグ: Julia言語
posted at 22:22:47
#Julia言語 実は私は初期条件を摂動したときの結果の違いをプロットするためのコードを何も書いていません。
単に、using MonteCarloMeasurements して、初期条件を
u0 = u00 ± ε
と与えているだけです。± ε の部分を削ると、初期条件を摂動した場合の結果の違いは表示されなくなります。 pic.twitter.com/l1Nx7j6Ue7
タグ: Julia言語
posted at 22:18:17
#Julia言語 ソースコードも添付画像の形式で貼り付けておきます。
添付画像1に微分方程式を数値的に解くためのシンプレクティック・オイラー法のコードがあります。
その部分には、初期条件を摂動したときの効果を計算するためのコードが一切含まれていないことを確認して下さい! pic.twitter.com/EbwGRKnRiz
タグ: Julia言語
posted at 22:15:44
#Julia言語 似たようなシンプルな例を Van der Pol 方程式について作って来ました。
NASAでも使っている Pluto.jl のノートブックのソースコードを
gist.github.com/genkuroki/9013...
で公開しておきました。添付画像のようなことをできます。 pic.twitter.com/oXddOTFhIL
タグ: Julia言語
posted at 22:13:26
#Julia言語 NASA では Pluto.jl 上で宇宙船の分離のシミュレーションを行っているらしいのですが、スライダーを設置したり、MonteCarloMeasurements.jl で摂動をかけた場合の結果の違いをシミュレーションのコードを変更せずに表示させているようです。 pic.twitter.com/PXtEm37b8C
タグ: Julia言語
posted at 22:07:18
#Julia言語 NASAでの宇宙船の分離シミュレーションで使っているパッケージ続き
添付が画像③によればMATLABでやっていた場合よりも15000倍高速化されたらしい。
DifferentialEquations.jl で微分方程式を解いて、Optim.jl で最適化を実行しているらしい。
Pluto.jlを使っていることもわかる。 pic.twitter.com/ZbnERhKJyk
タグ: Julia言語
posted at 22:03:52
youtu.be/tQpqsmwlfY0
NASAでどのようにJuliaを使っているか
宇宙船の分離のJuliaによるシミュレーション
多分 #Julia言語 ユーザーはNASAでどのようなパッケージを使っているのか気になると思います。動画のスクショを見て下さい。 twitter.com/JuliaComputing... pic.twitter.com/StHf2mL1VU
タグ: Julia言語
posted at 22:03:51
新しいものを使い始めるのに、C, C++, Pythonなどでの経験で得たやり方を押し通そうとするのは色々な意味で損だと思う。今まで知らなかった考え方を覚える方が楽しい。
タグ:
posted at 21:53:48
julia foo.jl でJuliaのコードを実行することは非常に稀。
foo.jl の中で using DifferentialEquations していて、実質的な処理には数十ミリ秒程度しかかからない仕事に毎回10秒以上の時間をかけるのはかなり損。
julia foo.jlをやめるのが正解。
JITの場合に合わせた使い方に適応すれば良い。
タグ:
posted at 21:51:43
Re: RTs 何度もコンパイルし直す手間を考えたら、最初の読み込みに30秒ほどかかっても腹は立たないと思うのだが、もっと速くできるのにそうしないのはかなり損だよな。
私のWindows 8.1 (古い!)環境でも using DifferentialEquations.jl にかかる時間は10秒程度まで縮まります。
タグ:
posted at 21:48:44
非公開
タグ:
posted at xx:xx:xx
@sekibunnteisuu Twitterでよくお目にかかれる足し算や掛け算のダメなところのお手本みたいな感じですね。
なんというか、おかしな一部の教員がダメな算数を教えてるんじゃなくて偉い人たちがそもそもダメなんだなというのが、こういう本の存在から窺えます。
タグ:
posted at 21:09:33
スヤスヤ
伸びている猫がもはや“真っすぐ”! 飼い主さんとくっついてお昼寝するヘソ天猫ちゃんが幸せそうnlab.itmedia.co.jp/nl/articles/21... pic.twitter.com/pXZ3iy6RU0
タグ:
posted at 21:05:00
@hgn_no_otaku #超算数
志水廣氏は愛教大関係者(今はどうか知らない)で、トンデモ算数推奨です。連ツイでどうぞ
twitter.com/sekibunnteisuu...
タグ: 超算数
posted at 20:50:04
最近はにわか数値計算屋になって、最小化問題のプログラムを日がな走らせています。言語はJuliaで書いてみました。変数のスコープに慣れるのに少々時間がかかりましたが、慣れたら使いやすい言語です。
タグ:
posted at 20:36:51
@anirudhpammi @ChrisRackauckas @Viral_B_Shah @MoseGiordano @genkuroki @JuliaLanguage The problem is that you are using Julia v1.3.0, which is an old version. There have been a lot of latency improvements since v1.3.0. Try with the latest stable version 1.5.4 or the upcoming release version 1.6rc2. Both can be downloaded here: julialang.org/downloads/
タグ:
posted at 18:36:22
@ChrisRackauckas @Viral_B_Shah @MoseGiordano @genkuroki @JuliaLanguage Thank you everyone, I just updated my DifferentialEquations package, it still takes ~ 30s. While it isn't really a problem, is there a reason why it is ~3-4x slower? pic.twitter.com/3xltEu0Qgo
タグ:
posted at 17:51:01
1901年に発見された古代ギリシャの天体運動計算機を断片から解析して再現した多分野連携研究の動画.地球を中心に,月(月齢)と太陽,そして惑星の動きを歯車で計算する.www.youtube.com/watch?v=GQnE0B...
タグ:
posted at 17:07:43
経歴で差別するのがダメなのは承知として、例えば愛知教育大学の算数教育は信頼に値するんだろうか? twitter.com/nobuta314/stat...
タグ:
posted at 16:34:58
Int32 や Int64 といった範囲を指定する型を使ったことがなかったのですが、Julia で
typeof(parse(Int, "16"))
すると、戻り値によれば Int64 だそうです。他の言語でも Int はデフォルトで Int64 なのかな。
タグ:
posted at 15:42:52
チラチラ気になっていたので、玉木先生 @ttttamaki の数学本からJuliaやってみるかな。。 twitter.com/Atsushi_twi/st...
タグ:
posted at 15:05:04
速度がめっちゃ早くなったから、簡単なスライダーGUIでシステムの振る舞いをチューニングできるようになったっていうのもいい話。ForwardDiff.jlの自動微分を使ったシミュレーションとか、言語の特徴と用途がマッチしてていい感じで楽しそう。 pic.twitter.com/lE9VXVnqyO
タグ:
posted at 14:54:09
さらに 41, 43, ... 97までの素数でふるい落とすと 4660個残り、全体の処理は 0.045秒。さらに 199までの素数でふるい落とすと 905個残り、0.037秒。さらに多くの素数でふるい落とすと残りのresiduesは減るけど、全体の処理時間が増加する。これでは 199あたりが最適かも(現在の16桁の処理は 97)。
タグ:
posted at 14:15:51
W=2*3*5*7*11*13*17*19*23*29*37=239378649510のwheelで、Wに含まれる素数により長さ12未満の第1種カニンガム鎖をふるい落とすと、93600 residuesが残る。最初のCC15を含むwheelで、さらに31でふるい落とすと 81492 残り、カニンガム鎖の処理まで含むと 0.53秒かかる。さらに‥
タグ:
posted at 14:08:10
前にも言った気がするけど、「勉強よりも大事なことがある」と思ってる人達が教員になって、小中学校でそういう「教育」をしてきた結果、事実・現実を冷静に見て判断することのできないバカな大人が増えたんじゃないかなって思ってる。 twitter.com/sin007777/stat...
タグ:
posted at 12:56:49
【その本、図書館にあります】
超便利なのに、意外に知られていないんだよなぁ...
Chrome拡張機能で、最寄りの図書館を2個登録しておくと、amazonでページを開いた時に、その本が図書館で貸し出し可能か見れます。
この拡張機能は、年間数万円節約に貢献してくれています。
sonohon.com pic.twitter.com/oal2vwxhXt
タグ:
posted at 12:56:17
どの研究も同じですが、まだまだ謎は解決してないと感じています。学習するなら先生がいるはずで、それはおそらく他の感覚器からの情報。それらの情報がいかにして〈適切に統合〉されてザリガニは平衡感覚を調整しているのだろう…これらの生理学的な技術と学習の理論とで研究展開できないだろうか…
タグ:
posted at 12:50:19
この論文は、脱皮はさせてないですが(実験が非現実的)、片方の平衡石を除去し、平衡感覚を回復した個体としていない個体のNGIの電気生理学的な膜性質(入力抵抗や膜時定数)を調べたものです。結論はNGIの性質が変化するのはもちろん、さらに上流の神経回路変化があるこということです。
タグ:
posted at 12:18:47
ザリガニは体が傾くと眼を水平に保つ反射的な運動をします。このときの眼の筋肉に投射する運動ニューロンの直上流には、スパイクを発しないNGI(non-spiking giant interneuron)という巨大なニューロンがあります。NGIは平衡反射運動の要になる細胞です。 pic.twitter.com/p3wHCYo4K7
タグ:
posted at 12:18:46
Fujisawa, K., & Takahata, M. (2007). Physiological changes of premotor nonspiking interneurons in the central compensation of eyestalk posture following unilateral sensory ablation in crayfish. Journal of Comparative Physiology A, 193(1), 127-140.
link.springer.com/content/pdf/10...
タグ:
posted at 11:51:09
ザリガニは脱皮のときに平衡感覚器まで脱ぎすてます。新たに平衡感覚を取り戻すため、再校正(学習と言ってもいいかもしれない)しています。どうやってるんでしょう?
ニューロンレベルの研究についてFujisawa & Takahata, 2007 を紹介します。 twitter.com/katzkagaya/sta...
タグ:
posted at 11:51:09
非公開
タグ:
posted at xx:xx:xx
@tsatie 関連↓
表月の1個と裏月,裏火の2個をそれぞれm,nに一般化して、コイントスで表が出る確率もpに一般化する。
"1/2,1/4,1/4"の一般化は
P(表_i) = p/m
P(裏_j) = (1-p)/n
"1/3,1/3,1/3"の一般化は
P(表_i) = p/(mp+n(1-p))
P(裏_j) = (1-p)/(mp+n(1-p))
ただし i=1,…,m, j=1,…,n twitter.com/genkuroki/stat...
タグ:
posted at 11:15:34
@tsatie 表月, 裏月, 裏火の確率を1/3, 1/3, 1/3にしてもよいと納得して絨毯爆撃してくれるんですか?😊 twitter.com/genkuroki/stat...
タグ:
posted at 11:08:51
❌親が掛け算順序の超算数に触れて、なんで?ってなるのは、教科書を確認しても、ワークを見ても明記されていないから。
⭕️親が掛け算順序の超算数に触れて、なんで?ってなるのは、非常識・非論理的・不合理で子供にとって有害なことが明らかだから。
これは常識の問題。 #超算数 twitter.com/edunishi3/stat...
タグ: 超算数
posted at 10:56:13
自分の放射能デマを謝罪も反省もしていない太郎は、処理水の海洋放出反対と甲状腺検査継続を主張しています。10年経っても何も分かっていないのですよ、太郎には |
2021.3.11 山本太郎 代表談話『あの日から10年』 reiwa-shinsengumi.com/comment/6521/
タグ:
posted at 10:43:50
Link: TypeProfを使ってみました - あしたのチーム Tech Blog engineer.ashita-team.com/entry/2021/03/...
タグ:
posted at 10:13:05
ということで、17桁の処理は長さ12以上だけを求めることにして、p≡-1(mod 4290=2*3*5*11*13)のsieveを W=2*3*5*7*11*13*17*19*23*29*37=239378649510(12桁)あたりで作ってみようと考え中。Bool(byte)で53MB程度。
タグ:
posted at 10:05:57
次の37は長さ15未満をふるい落とす場合は、15/37=40.5%ふるい落とせる。p=2^k-1の場合は 31=2^5-1と同様だけど、7は1→3→0の3/7=42.9%ふるい落とせる。長さ15(あるいは12)未満をふるい落とす場合は、p=13の12/13=92.3%が最高。
タグ:
posted at 09:53:51
OokuboTact 大久保中二病中年 @OokuboTact
こういう表は・・・
日本国内で円(通貨)で生活している私達と関係ないわけで、ハッキリ言って詐欺 pic.twitter.com/9zLBN09pvM
タグ:
posted at 09:51:58
2018年の arxiv.org/abs/1807.08777 では、最初のCC15(90616211958465842219)を求めるのに、W=2*3*5*7*11*13*17*19*23*29*37*41*43*47=1011592868129453610を使ったとある。31は1→3→7→15→0の5つしかふるい落とせないのでわざと除外してある。5/31=16%しかふるい落とせない(only 5 redidues)。
タグ:
posted at 09:44:29
@markkitti @Bhartrihari_ @blelbach @nvidia Or a custom kernel. #julialang
タグ: julialang
posted at 09:38:40
Dr. Chris Rackauckas @ChrisRackauckas
@Viral_B_Shah @MoseGiordano @genkuroki @anirudhpammi @JuliaLanguage Someone the other day revealed that a dependency GenericSVD pirates some linear algebra, so we actively worked and removed it, just this week. That 12->6 seconds is likely from that, given the precompilation data I was sent. That was the only precompilation data I have been sent.
タグ:
posted at 09:34:41
Dr. Chris Rackauckas @ChrisRackauckas
@Viral_B_Shah @MoseGiordano @genkuroki @anirudhpammi @JuliaLanguage We do need someone in the community to help us out though. It would be great if someone in the community sets us up with the SnoopCompile bot and gives us an analysis: julialang.org/blog/2021/01/p... . Giving us a path forward would make it so much easier!
タグ:
posted at 09:33:53
Dr. Chris Rackauckas @ChrisRackauckas
@Viral_B_Shah @MoseGiordano @genkuroki @anirudhpammi @JuliaLanguage DiffEq is huge. I don't think people quite get how big of a thing it is. There's everything from memoryless Brownian motions via VirtualBrownianTrees to constrained geometric ODE solvers that are specialized for u'=A(t)u. I'm glad we got it down to 6 without much more work.
タグ:
posted at 09:32:07
今までは sieveの lo,hiパラメータは 10^9や10^10間隔、などと(適当に)与えていたけど、wheelの大きさをいくつかの素数の積、例えば W=2*3*5*7*11*13*17*19*23*29=6469693230 として、それらの素数で Wの大きさの sieveを 1回作れば、その間隔で処理をすれば使い回すことができる。
タグ:
posted at 09:30:24
陰謀論、家族引き裂く…SNSで傾倒 言動激化 : ニュース : 関西発 : 地域 : 読売新聞オンライン www.yomiuri.co.jp/local/kansai/n...
タグ:
posted at 08:19:05
Distance estimated Julia using matrix math.
C is a complex "constructor"
M is "modulo_squared"
Based on iq's article: www.iquilezles.org/www/articles/d...
and shader: www.shadertoy.com/view/Mss3R8
タグ:
posted at 08:08:06
bit.ly/3lcmMnH #つぶやきGLSL
#define C(x,y)mat2(x,-y,y,x)
#define M(m)dot(m[0],m[0])
vec2 p=(FC.xy*2.-r)/r.y;
mat2 z=C(p.x,p.y),c=C(.1,.64)+rotate2D(t)*.01,d=C(1,0);
for(int i;i++<99&&M(z)<1e3;){
d=2.*z*d;
z=z*z+c;
}
o+=2e2*sqrt(M(z)/M(d))*log(M(z)); pic.twitter.com/2PdZSijBWD
posted at 08:05:03
宮原篤 6th「小児科医ママとパパのやさ @atsushimiyahara
この児童相談所については、地元の不動産会社が仕掛けたと思われる反対運動があり。反対の根拠として、内海聡氏の意見をとりあげているあたり、児童相談所や児童虐待の知識はまったくない人たちということが分かる(リンクは貼らない)。 pic.twitter.com/cuoCXB1FKF
タグ:
posted at 07:26:26
@LimgTW @golgo_sardine #超算数
www.dainippon-tosho.co.jp/sansu/faq.html
>2年p.180などのテープ図では全体量が下にかかれているのに対し,p.185では全体量が上にかかれているのはなぜですか。
こういうのが本当に「よくある質問」だとしたら、余りにくだらなすぎる。
よくそんな細かいところに気付くもんだと、呆れる。
タグ: 超算数
posted at 07:09:59
@MoseGiordano @genkuroki @anirudhpammi @JuliaLanguage It is about 6 seconds for me. But the package has 86 dependencies! Chances are, if you are just calling one or two functions, you could use one of the other DiffEq packages directly. @ChrisRackauckas obviously will chime in since the words have been uttered.
タグ:
posted at 07:04:53
昨日は第1カニンガム鎖の処理を100倍程度高速化したけど、今朝さらに効率化出来ることに気づいた。Wheel sieveに関して今ひとつ理解していないところがあったけど、これで完全に理解できたと思う。twitter.com/kazmuzik/statu... twitter.com/kazmuzik/statu...
タグ:
posted at 06:47:04
@genkuroki @anirudhpammi @JuliaLanguage And also 12 seconds are a bit too much, it takes less than 8 seconds on my 5-year old laptop pic.twitter.com/dWsZ5uHsHr
タグ:
posted at 04:54:53
The Julia developers are pleased to announce two new releases: v1.5.4, the fourth patch release for Julia 1.5, and v1.6.0-rc2, the second release candidate for Julia 1.6. You can download binaries at julialang.org/downloads #julialang pic.twitter.com/agdWnNEScL
タグ: julialang
posted at 04:43:12
@anirudhpammi @JuliaLanguage No.
In my environment (Julia v1.6.0-rc1), it takes only twelve seconds to load DiiferentialEquations.jl.
#JuliaLang pic.twitter.com/OJVZkGM9ti
タグ: JuliaLang
posted at 03:28:07
#数楽
ガンマ分布モデルの最尤法の数値計算でもディガンマ函数ψ(x)やその導函数のトリガンマ函数が大活躍します。
ニュートン法を使うのですが、工夫してニュートン法を適用しないと無駄に効率が悪くなる。 twitter.com/genkuroki/stat...
タグ: 数楽
posted at 03:06:57
#数楽 Kempner級数は東工大入試2021の問題1で扱われています。その問題1は数学的に面白い部分に触らずに簡単に解ける。 twitter.com/power_inmyhand...
タグ: 数楽
posted at 02:55:38
@anirudhpammi @JuliaLanguage If you see the message "Precompiling ..." every time without updating any package or changing anything else, no, that's absolutely not normal. Also, what version of Julia?
タグ:
posted at 02:53:34
#数楽
私がFischer(1993)とは異なる方法で計算したKempner級数の近似値とI_pppさんがFischer(1993)の方法で計算した結果は小数点以下73桁目まで一致していました。
どちらも #Julia言語 を使っています。 twitter.com/genkuroki/stat... pic.twitter.com/Vx8ZqkxetM
posted at 02:47:46
#数楽 以上のまとめ
Fischer (1993)によれば、β₀=10から始まる漸化式(7)でβ_k達を定めると、(8)の右辺の公式によって効率的ぬKempner級数の値を数値計算できる。 pic.twitter.com/lRmYhOQcnR
タグ: 数楽
posted at 02:29:46
@JuliaLanguage Is it normal that every time I import a package (Eg DifferentialEquations) it takes a few minutes to precompile the package? #JuliaLang
タグ: JuliaLang
posted at 02:26:26
#数楽 結果は
r₁(x)
= log 10 + (1/10)(ψ((x+9)/10)+γ)
= log 10 - Σ_{n=2}^∞ 10ⁿ(1-x)ⁿ⁻¹ ζ(n)
2つ目の等号はdigamma函数のTaylor展開より。ゼータ函数の特殊値はこの形で出て来る。これを線形汎函数lで写せば
Kempner級数
= β₀log 10 - Σ_{n=2}^∞ 10ⁿβ_{n-1}ζ(n)
が得られる。 pic.twitter.com/g4jy2FPMeE
タグ: 数楽
posted at 02:21:33
#数楽 十進法表示で9を含まない正の整数の逆数の和をKempner級数と呼ぶらしいのですが、I_pppさんに
Gans-Jurgen Fischer (1993) ドイツ語
eudml.org/doc/141546
によるめっちゃ賢い計算の仕方を教えてもらいました。
Kempner級数 = β₀ log 10 - Σ_{n=2}^∞ 10ⁿ⁻¹ β_{n-1} ζ(n) twitter.com/ppp3141592ppp/...
タグ: 数楽
posted at 01:41:26
非公開
タグ:
posted at xx:xx:xx
NASAのエンジニアがこれまでMATLAB-Simulinkで書かれていた宇宙船の分離シミュレーションのコードをJuliaで書き直した所、15分かかっていたシミュレーションが60ms以下になり、15000倍早くなったそうな。 twitter.com/juliacomputing... pic.twitter.com/lfbdmO7w4o
タグ:
posted at 00:08:37
非公開
タグ:
posted at xx:xx:xx