見出し画像

Juliaで物理探査#0 準備編

新年度になったので、新しい試みとして、Julia言語を用いた物理探査の手法の紹介をしたい考えています。今回は準備編ですので、Juliaが使える環境をPC上に構築します。皆さんのPCのOS環境は、Windows、McOS、Linuxなどで異なると思いますが、Juliaの本家WEBサイト↓↓から、必要なファイルをダウンロードして、環境を整備して下さい。

Windowsの場合、Julia公式サイトからWindows用のインストーラをダウンロードします。あとは、インストーラを起動してインストールするだけです。ただし、途中に出てくる”パスを通す?”箇所のチェックを忘れずに!。

通常のJuliaは、REPL (Read-Eval-Print Loop) と言われるシェル環境で実行できます。Juliaはインタプリタなので、このREPLを使って、ユーザーとインタプリタが対話的にプログラムのコードを実行できます。

これだけでもJuliaをインターラクティブに使える環境は構築できますが、Jupyter Notebookなどを入れておくと、プログラムの開発環境が格段に上がります。初回はこれくらいにして、Juliaのサンプルプログラムを載せておきます。このプログラムは二次方程式(ax^2+bx+c=0)の解を求めるファンクション(function)です。計算には、二次方程式の解の公式を利用していて、複素数の2つの解を出力します。計算れの答えは複素数ですが、実数解の場合はimの前の数字が0(ゼロ)になります。

Julia> function solve(a, b, c)
         rd=sqrt(complex(b^2-4*a*c,0.0))
         x1=(-b+rd)/2.0/a
         x2=(-b-rd)/2.0/a
         return x1, x2
       end

Julia> x1, x2 = solve(1.0,2.0,3.0)
(-1.0 + 1.4142135623730951im, -1.0 - 1.4142135623730951im)

Julia>

今回のサンプルプログラムは、初等数学の問題で、物理探査とはあまり関係ありませんが、少しづつ物理探査に関連する問題をJuliaで解決していこうと考えています。どこまで出来る(続く?)かわかりませんが、Julia(ジュリア)ならぬGeolia(ジオリア)となるようなパッケージにまとめられたら、地球科学に少しだけ貢献できるかもしれません。

ただし、あまり期待せずに見守って下さい。題名の通り、不定期の気紛れな記事になると思います。

いいなと思ったら応援しよう!