読者です 読者をやめる 読者になる 読者になる

fortran66のブログ

fortran について書きます。

ハードウェア乱数生成

#古典講読
アンソニー・ラルストン、ハーバード・S・ウィルフ共編「電子計算機のための数学的方法II」中の第12章乱数生成の脚注によると、Ferranti Mark 1 には雑音二極管による乱数生成装置が付いていたそうである。

Ferranti Mark 1 - Wikipedia

f:id:fortran66:20170319022033j:plain

maxloc, minloc の mask = .false. の時の挙動

いつの間にか、intel fortran での maxloc, minloc の mask 全部不成立時のデフォでの挙動が変わっていてちょっと焦りました。

intel fortran v.17 のヘルプより引用

If array has size zero, or every element of mask has the value .FALSE., the value of the result is controlled by compiler option assume [no]old_maxminloc, which can set the value of the result to either 1 or 0.

コンパイラ・オプションで/assume:noold_maxminlocとすると、以下のプログラムで 0 が返されます。

    program test
      implicit none
      integer :: ia(5), i
      do i = 1, 5
        ia(i) = i
      end do
      print *, maxloc(ia, mask = .false.)
    end program test


規格によると、Fortran2003 では 0 を返すことになっていますが、それ以前は処理系依存だった模様です。

しばらくぶりにリコンパイルして実行したら結果が変わったので困惑しました。

Damian Rouson による co-array に関する講演

Scientific Software Design: The Object-Oriented Way の著者 Damian Rouson の Fortran 2015 に関する講演が youtube にあっぷされていました。主に coarray の機能の内 Fortran 2015 で採用される予定のものについて解説しています。
insidehpc.com


Tutorial: Towards Exascale Computing with Fortran 2015

ロ氏は sourcery institute (魔法研究所)という厨二全開の名前のグループを率いて、open-coarray その他の開発、Fortan 啓蒙活動等を行っているようです。Unix 系の人々は昔から魔法使いとかが大好き過ぎてドン引きです。同サイトには、Fortran がらみのソフト一式を束ねた Virtual Box の Lightweigt UbuntuVM を配布しております。面白そうな試みなので、覗いてみてください。
www.sourceryinstitute.org

https://dl.dropboxusercontent.com/u/7038972/SourceryLubuntu/Overview.pdf

355/113 - π

円周率の近似分数に 22/7 がありますが、この値が円周率{\pi}に如何ほど近いのかは、積分によって評価できることが知られています。

{
\int_0^1{x^4(1-x)^4\over1+x^2}dx=22/7-\pi
}

これは分子を展開して地道に計算することで証明されます。

これを知れば、{355/113-\pi}も同様にして求められるのではないかと思うのが人情でしょう。私も昔、計算機の記号積分に冪を高めた式を入れて、式が出てこないかと試してみたりしましたが、単純には求まらない感じでした。

先日ネットをぶらぶらブラウジングしていると、{355/113-\pi}積分に出会いました。積分式だけは紙切れにメモしておいたのですが、元ページは失念してしまいました。ただググるwikipediaにより詳しい記事がありました。

円周率が22/7より小さいことの証明 - Wikipedia

式は結構ごてごてしていて、以下の通りです。
{\int_0^1{x^8(1-x)^8(25+816x^2)\over3164(1+x^2)}dx}

この積分は、被積分関数の端点での微分値が0なので台形公式でいい値が出そうな気がします。そこで台形積分で計算してみることにしました。

プログラム

面倒なので文関数などを使ってみました。解析解による近似の度合いの見積もりは引き算による桁落ちで精度が下がるので、倍々精度で計算しています。

    program pi_approx
      implicit none
      integer, parameter :: kd = kind(0.0q0)
      real(kd), parameter :: pi = 4 * atan(1.0_kd)
      integer, parameter :: n = 64 + 1
      real(kd) :: x(n), y(n), h, s, f
      integer :: i
      ! statement function
      f(x) = x**8 * (1 - x)**8 * (25 + 816 * x**2) / ( 3164 * (1 + x**2 ) )
      !
      h = (1.0_kd - 0.0_kd) / (n - 1)
      forall (i = 1:n) 
        x(i) = 0.0_kd + (i - 1) * h 
        y(i) = f(x(i))
      end forall
      ! Trapezoidal rule
      s =  sum(y) - (y(1) + y(n)) / 2
      s = s * h
      print *, s, 355.0_kd / 113.0_kd - pi
    end program pi_approx

実行結果

分割が少ない割に解析値と良い一致が出ています。

  2.667641890624304779248581088571583E-0007
  2.667641890624223123689328865557821E-0007

【悲報】マイロー・ヤノプルス氏転落!

ネトウヨ界のアイドル、マイロー・ヤノプルス氏が過去の発言をほじくられて転落の危機に陥ったようです。今回はサヨク側ではなく、保守本流共和党主流派などからの奇襲攻撃でずっこけたようです。

出版予定の本は出版社からキャンセル、保守派講演会からも講演キャンセル、さらにスティーブ・バノン氏のブライトバードニュースからも辞職を余儀なくされ、大転落の模様です。

www.newsweekjapan.jp

宮廷道化師のように言いにくいことを口に出すオモシロ存在でしたが、謎の一線を越えてしまったようです。

イギリスのホモ界&カソリック界の小児虐待のの闇は深いw

マイロー・ヤノプルスの興亡 
www.theguardian.com


ハイパフォーマンスフォートランの興亡
www.semanticscholar.org

スティーブ・バノンと終末論??(その2)

スティーブ・バノンと終末論に関して別の記事もあるようです。
blogos.com


溜池通信によるその要約

バノンは組合員労働者の家庭に生まれ、ハーバード大学を出て海軍に進み、ゴールドマンサックスを経て「エスタブリッシュメント」に成り上がった。
...
その結論部分を抜き出すと以下のようになる。
(1)グローバル資本主義への不信と一種の階級闘争史観
(2)グローバル化現象の中での国家主権回復への強いこだわり
(3)制度腐敗と戦争前夜を強く意識するキリスト教終末論に近い時代認識と文明衝突観

blogos.com

関係ないが、この図は良い。
http://static.blogos.com/media/img/16238/free_l.jpg



スティーブン・バノンの愛読書 : 地政学を英国で学んだ
この記事で引用されている以下の講演でも、ティーパーティー的な一般常識人の直観を肯定するところまではいいのですが、その子供達の世代に不幸な社会しか残せなかったことへの罪悪感的なものをのべ、すべてをひっくり返そう的なことを言っているのは如何なものかと。

動機が暗すぎて冗談が通じない感じで嫌ですねw サヨクちゃんたちとどっこいどっこいです。

www.youtube.com

スティーブ・バノンと終末論?

元ブライトバート・ニュース・ネットワークの会長にして、トランプ大統領の現首席戦略官スティーブ・バノン氏に関する面白い記事がありました。元記事とともに紹介されています。
geopoli.exblog.jp
www.businessinsider.com

これによると、スティーブ・バノン氏は循環論的な歴史観を信じていて、しかも現在を終末期とみているということです。つまり氏は、一種の終末論信者と見なせると思います。一方、循環論の中身の方は、記事を見る限り秦の始皇帝以前の呂氏春秋レベルの春夏秋冬循環的な素朴なものに見えます。

それにつけても終末論者は、なかなか終末が来ないと自分で終末を起こそうとするから困っちゃいます。石原莞爾先生の最終戦争論も日蓮宗的終末論思想が背景にあると言われていますし、事変の予感がしますw

ブライトバート・ニュースにはマイロー・ヤノプルス氏も編集者として在籍しており、アメリカ版ネトウヨw界がいよいよ面白くなってまいりました。マイロー氏はオカマだけあって中々弁が立つ人物のようです。サヨクの皆さんは言い負かされるので、近頃は暴力で対抗しているようです。