日本の月探査機SLIMは着陸精度3-4mでの月着陸に成功したとのことです!おめでとうございます!

今日はこのニュースですよね。

月探査機「SLIM」がピンポイント着陸に成功 月面写真を公開 JAXA会見(2024年1月25日)
https://www.youtube.com/live/fUDOyGQ5s7E?si=8v_uGf8bhXKUyVcL

写真は探査機が放出した小型ロボットが自動で探査機を探し出して撮影して送ってきた写真だそうです。タカラトミーとJAXAが共同で開発搭載していたロボット(同じタイプが販売中らしいです)による撮影です。上の動画での説明によると、予定着陸地点より東に55mあたりにSLIMはいるとのことです。

着陸前に障害物回避を行ったため、目標地点から東に55mの地点にいるのですが、障害物回避前で着陸精度を評価すると3-4mの精度でピンポイント着陸に成功したとのことです。従来の探査機の着陸精度は6kmとかでkmオーダーだったそうです。今回は悪く見積もっても10m、おそらく3-4mの精度で着陸しているので、ものすごい成功のようです。事前予測でも正常に着陸すれば10回に7回は10m精度で着陸すると見込んでいたそうで、今回はそれよりはよかったとのことでした。おめでとうございます。日本の宇宙開発の輝かしい成果をみることができて感動しました。

LinuxやPython, Ruby, C++, Bashなどなど様々な言語についての参考資料(無料ダウンロード可)が集まっているサイトがあります。

Linuxの初心者は、まずWindowsなどとおなじグラフィカルユーザーインターフェイスでLinuxを使い始めることが多いと思います。ファイルの消去や作成、移動などをコマンドラインで行うのは最初はあまりやらないのではないでしょうか。ところが、初心者がGUIを使いながら、どうしても利用しなくてはならなくなるようなコマンドがあります。

ChatGPTにソフトウエアのインストール、アンインストール、システムのアップグレードに関連するそんなコマンドを重要度順に並べてもらいました。

sudo apt update – パッケージリストを更新し、利用可能なアップグレードがあるか確認します。
sudo apt upgrade – システム上の全てのパッケージを最新のバージョンにアップグレードします。
sudo apt install [package_name] – 新しいソフトウェアパッケージをインストールします。
sudo apt remove [package_name] – インストールされたパッケージをアンインストールします。
sudo apt autoremove – もはや必要とされないパッケージを自動的に削除します。
sudo add-apt-repository [repository] – 新しいリポジトリをシステムに追加します。
sudo apt-key add [file] – 新しいリポジトリのためのGPGキーを追加します。
wget [url] / curl -O [url] – ウェブからファイルをダウンロードします。
tar -xvzf [file.tar.gz] – tar.gz形式のアーカイブを解凍します。
./configure ; make ; sudo make install – ソースからソフトウェアをビルドしてインストールします(特定のソフトウェアに必要)。
sudo dpkg -i [package.deb] – Debianパッケージをインストールします。
sudo dpkg -r [package_name] – Debianパッケージをアンインストールします。

どうでしょう。これらのコマンドはよく使いますね。こうしたコマンドを集めて紹介している英語の本が以下から無料でダウンロードできます。
Linux® commands Notes for Professionals book
https://goalkicker.com/LinuxBook/
pdfへのリンクはこちらです。https://goalkicker.com/LinuxBook/LinuxNotesForProfessionals.pdf
ダウンロードしてよさそうだったら、他の言語の本もダウンロードしてながめてみてください。きっと役立つ資料があると思います。

このサイトには、記事のタイトルに書いたようにPHPやR、Python、Bash、Swift、Java、CSSなどいろんな言語の資料もあります。ダウンロードして読んでみるとよいでしょう。こちらがトップページです。
https://goalkicker.com

分子動力学シミュレーションソフトOpenMM8をLinuxにインストールしてみました。

いつも有益な情報をおしえてもらっているこちらのツイート https://nitter.net/830RDEkpvteEODM
でOpenMM8のインストールの仕方の記事がリツイートされていました。これは機械学習の分子動力学 (MD) シミュレーションへの適用で開発された最新のMDシミュレーションソフトウエアです。


こちらのサイトで紹介されている方法で、Ubuntu Linux (Ubuntu 22.04.3 LTS) のPCにOpenMM8をインストールしてみました。
https://hira-labo.com/archives/2409
いろいろトラブルがおこりました。原因は、
1) anaconda3の不具合が原因で、インストールの時にライブラリが存在しているのにソフトがみつけられないというエラーがでたこと。そして、
2) NVIDIAのGPUのドライバーが純正のものでなかったので、GPUをMD計算に使う設定ができなかったの二点です。
それらを解消するのは簡単です。
1) まずanaconda3をインストールしている場合は最新版にアップデートします。私の場合はanaconda3が入っていたのですがインストール中にエラーメッセージがでて消えなかったのでChatGPT といろいろ改善策をためして、結局既存のanaconda3を完全にアンインストールしたうえで、公式サイトから最新版のLinux用のanaconda3のインストーラー(シェルスクリプト)をダウンロードしてきました。これをbashコマンドで実行して anaconda3 をクリーンインストールしました。またNvidiaのGPUを搭載しているPCなのでGPU計算をするためのcudatoolkitもインストールしました。これもNvidiaの純正ドライバーではなくて、オープンソースのX.Org X serverのものを使っていたのでエラーがでました。NVIDAの公式サイトから自分のPCにあうドライバをダウンロードしてセットアップしようとしましたが、面倒でうまくいきませんでした。結局、次のようにもっと簡単、手軽にNVIDIAのドライバー変更ができました。やり方は、Ubuntuの「ソフトウエアとアップデート」から「追加のドライバー」タブを開き、NVIDIAドライバーのプロプライエタリ、検証済みのものを選んで変更を適用ボタンを押すだけです。これでドライバが変わりました。あとは再起動してドラバが変更されているのをかくにんすればOKです。NvidiaのGPUドライバーにしておくと、OpenMM8をインストールしたときにGPUを計算に使うように設定されるので計算が高速になります。

では実際に私が実際にインストールした手順をメモしておきます。Ubuntuは一番ポピュラーなLinuxのディストリビューションですので参考になると思います。コマンドにはアンダーラインをつけておきます。

まずanaconda3の完全アンインストール
rm -rf ~/anaconda3
公式サイトから最新版のインストーラーをダウンロード。
Anaconda3-2023.09-0-Linux-x86_64.sh
というシェルスクリプトである。

シェルスクリプトがあるディレクトリ(Downloads)に移動。
cd Downloads/
移動後シェルスクリプトを実行。
bash Anaconda3-2023.09-0-Linux-x86_64.sh
anacondaの利用許諾条件がまず表示されるので、enterを何度もおして最後のyes,noの選択のところまでたどりつく。これが一番うざい。
いきすぎると、デフォルトでnoになっているのでenterを押し続けていると、インストーラースクリプトが終了してしまうので注意。
ときどききいてくるyes, noの選択にyesで答えてインストールを完了させる。

(注意:condaが最新版でないというwarningは無視したが、最新版にするには、conda update -n base -c defaults condaを実行する。又はconda install conda=23.11.0などとバージョン番号をいれたコマンドを実行する。)

OpenMMというディレクトリがなければつくり、そのディレクトリへ移動。
cd OpenMM
openmmをインストールする。ここでは最新のpython 3.11シリーズで使うことを指定する。
conda create -n openmm python=3.11
(仮想環境でOpenMM8を使うのは、anacondaの設定などがPCで使う別のプログラムの設定と衝突したりしないようにするためです。計算速度には影響がなく、エラーがおこりにくいそうです。)

次に
conda activate openmm
でopenmm環境を開始。この環境をストップするには、conda deactivateというコマンドを使う)
次にopenmmのソフト本体をインストールする。
conda install -c conda-forge openmm cudatoolkit=11.2
ここでcudatoolkitのバージョンを11.2にしていることに注意。
このコマンドラインを実行すると、openmmがインストールされる。同時にその他必要なライブラリ(numpyとかscipyその他)などと、GPUを利用できるcudatoolkitも一緒にインストールされる。ただしこのインストールには、PCの環境によるのかもしれないが、ものすごく長時間かかることがある。インストーラーが止まっているように思えるほどだが、インストール中の印(くるくる回っている)がでているかぎりそのまま放置でOKである。昼飯前にとまっているのが、昼食後インストール完了しているというような時間がかかることもある。
インストールが終わったら、次のコマンド
python -m openmm.testInstallation
でうまくインストールできているか確認する。
こんな感じのアウトプットが出ると成功。
OpenMM Version: 8.1.1
Git Revision: ec797acabe5de4ce9f56c92d349baa889f4b0821

There are 4 Platforms available:

1 Reference – Successfully computed forces
2 CPU – Successfully computed forces
3 CUDA – Successfully computed forces
4 OpenCL – Successfully computed forces

Median difference in forces between platforms:

Reference vs. CPU: 6.30278e-06
Reference vs. CUDA: 6.74181e-06
CPU vs. CUDA: 7.36039e-07
Reference vs. OpenCL: 6.73427e-06
CPU vs. OpenCL: 7.76535e-07
CUDA vs. OpenCL: 2.35576e-07

All differences are within tolerance.

次にグラフィカルユーザーインターフェイスのopenmm-setupをインストールして、ブラウザ上で設定ができるようにしましょう。
conda install -c conda-forge openmm-setup
でインストールできます。
インストールに成功するとこんなメッセージがかえってブラウザが開きます。
* Serving Flask app ‘openmmsetup.openmmsetup’
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on http://127.0.0.1:5000
Press CTRL+C to quit
127.0.0.1 – – [23/Jan/2024 14:50:58] “GET / HTTP/1.1” 200 –
127.0.0.1 – – [23/Jan/2024 14:50:58] “GET /static/Icon.svg HTTP/1.1” 200 –
127.0.0.1 – – [23/Jan/2024 14:50:58] “GET /favicon.ico HTTP/1.1” 404 –
co

openmm-setupについては以下の記事をご覧ください。
https://magattaca.hatenablog.com/entry/2022/02/12/201641#f-8187c53b
実際の計算例は最初に紹介したサイトにあるとおりに実行してみると一分ちょっとで計算終了となりました。できたoutput.pdbをPymolで開くと動画でシミュレーションの結果をみることができました。その辺のところは明日にでも紹介することにします。

福岡は今、外で雪が降り風が強まっています。ではおやすみなさい。

電磁気学のわかりやすい日本語の講義ノートと日本語、英語の動画の紹介。

電磁気学のわかりやすい講義ノートと動画を紹介します。

東京大学の白石直人先生の講義ノートはとてもわかりやすく新鮮な教科書だと思います。
https://sites.google.com/site/naotoshiraishiphys/home-jp/lecture/electrodynamics-2023
が講義の紹介で、講義ノートのpdfはこちらです。
https://naotoshiraishi.files.wordpress.com/2024/01/2023-electrodynamics-2.pdf

最初の一ページ目から、ぐんぐん引き込まれる講義ノートです。いままでもやもやしていた部分がすっきりするよいノートです。講義動画も公開してもらえればありがたいのですが‥‥。

動画のほうでは電磁気学の計算の部分を詳しく講義してくださっているこちらの動画はいかがでしょうか。電気通信大学の安藤 芳晃先生の講義動画です。
https://www.youtube.com/@user-oz4ps4qt2i/videos
たとえば電磁気学の講義は「コロナ禍で急遽作った講義動画です。使わなくなってきたので公開します。大学に入って計算をあまりしなくなった学生向けに、電磁気学の諸法則を計算できるようにする、という意図で講義をしています。「ベクトルから逃げない」「電磁場を場(field)として扱う」「法則の式を(フワッとした理解でなく)具体的に計算できるようにして理解する」が目標です。 …」という講義です。聴講してみたい動画です。
電磁気学第一 第1回「クーロンの法則、静電場」 1.数学の準備(I)「ベクトル」
https://youtu.be/WAKMWAm3Qv4?si=NkyK5dXyF3kEKXtR

また他にもいろいろ有益な動画を公開して下さっています。たとえば電磁波工学の講義動画は、波動方程式をしっかり扱っていて勉強になります。
https://www.youtube.com/playlist?list=PLVoJxpWdbE1B0E3B6-y5FseE2nmlkVsEE

あと英語ですが、こちらはとても興味深いチャンネルだと思います。
ミネソタ大学のTony Low教授の動画チャンネルです。ナノサイエンスにむけた解説動画が満載です。
https://www.youtube.com/@professornanoscience/featured

たとえば電磁気学の基礎についてはこんな一連の動画があります。
Basics of Electromagnetism
https://youtube.com/playlist?list=PLWt5FuzgdX4m8a5bPD2QTW_ue8MBVduRY&si=b2VwOCB-Wd6DJ1cM

動画の一例を埋め込んでおきます。
Most intuitive understanding of the Maxwell equations
https://youtu.be/KDIaKOW8BRQ?si=5t8ys8v7GJfNuZt6

創薬研究のためのRの利用法についてのワークショップの動画をみつけたので紹介します。

創薬研究のためのR言語についてのワークショップの動画をみつけたので紹介します。
英語ですが以下のチャンネルにあります。
R in Pharma
というチャンネルで、以下が再生リストです。
https://www.youtube.com/@RinPharma/playlists
2023年開催のワークショップの動画リストは以下にあります。
https://youtube.com/playlist?list=PLMtxz1fUYA5C0csy8-wTfFmRYQEB30vr3&si=3HhPhswhxb0QuD2T

その中から二つ動画を紹介しておきます。
1)Introduction to Machine Learning with {tidymodels}
https://piped.video/watch?v=i-Rm2HUWgnc
またはこちらから視聴できます。
https://youtu.be/i-Rm2HUWgnc?si=EbehDMu1DauGEcXW

この機械学習の動画の資料は以下にあります。
https://github.com/nrennie/r-pharma-2023-tidymodels
このリンクには講義のスライドの置き場所や、質問への回答などのリンクものっています。
スライドはこちらです。https://nrennie.github.io/r-pharma-2023-tidymodels/#/title-slide
開いたオープニングスライド画面の左上、線が三本重なっている部分をクリックすると全スライドをみることができます。またこの講演後の質問への回答はこちら。https://nrennie.rbind.io/blog/answering-some-tidymodels-questions/

2)Visual Studio Code for Pharma これは創薬の研究者むけのVSCodeの使い方の紹介のようです。
https://youtu.be/TclI9DjXK2c?si=IsXfheJdXXme8b-E

資料はこちら。
https://github.com/procogia/VSCodeforPharmaIntro

SLIM (Smart Lander for Investigating Moon)の月面着陸成功おめでとうございます!!

SLIM(Smart Lander for Investigating Moon)の月面着陸成功おめでとうございます!!!
ライブ中継でみていた人は大成功と大喜びでした。太陽電池パネルも太陽の方向をむいていないだけかもしれないので、太陽の向きが変わるころには動き出すかもしれないそうですね。探査機とはもちろん、切り離したロボットとのリンクもとれていて、ロボットの開発ラボは歓喜しておられます。探査機は着陸するときに加速度を刻々と送ってきていて、着陸したと思われる時点以降は、1.6 m/s2(月面上の重力加速度=地球の重力加速度9.8 m/s2の1/6)のままで月表面に到達したのが重力からも推察できましたね。

写真は、SLIMが無事着陸したと思われるとのアナウンスがあったあたりでの動画のスクリーンショットです。本日公開された記者会見こみの動画
https://www.youtube.com/live/Udh6kvjZYC8?si=6XjxXExVfr76Z6qc
からスクショしました。探査機の測定している重力加速度は左下のAという緑部分の上にでていて、1.628 m/s2 となっています。

今朝、米国にいる人と話したのですが、向うはちょうど午前中だったのでYouTubeの記者会見がはじまるところから見たそうです。画面をみると皆なんか沈んでいるので、てっきり失敗したのかなと思ってみていたら大成功だったと喜んでいました。日本人はまじめすぎるというか、もっと喜ぶべきだとというのがアメリカ人の感覚だと思います。大成功おめでとうございました。時々刻々と変わる状況にAIで対応しながら自動着陸していく探査機の時代がきたんですね。感無量です。

脳はなんのために存在するのか? ショウジョウバエの全神経回路網を決定するプロジェクトからの解答:こんな内容の一般向け講演動画があります。

MRC LMBで行われた一般向け講演動画が昨日公開されました。

MRC LMBのその他の一般向け講演動画は以下から見ることができます。
https://youtube.com/playlist?list=PLQbPquAyEw4cL38rgPGkUC46QJWngG–r&si=3p08Xf6f91geiDnq

日本の探査機SLIMの月面着陸は明日から明後日にかけて実施されます!

明日19日の夜中から、日本の月面探査機SLIMの月面着陸があります。着陸は1/20(土曜日)午前0:20分ごろの予定だそうです。
こちらに今までの日本の月探査の歴史とこれからの展望が動画でまとまっています。
SLIM 月着陸 〜月探査の過去から未来へ〜
https://youtu.be/lHkSx696fuc?si=Ep63gs3opTVQvcZr

明日のライブ中継はこちらからみられます!
小型月着陸実証機SLIM ピンポイント月着陸ライブ・記者会見
https://www.youtube.com/live/Udh6kvjZYC8?si=UJNHchU0BN6MAGAj

楽しみですね。

MITのオープンコースウエアから、コンピュータサイエンスのための数学、科学者のための圏論の2冊と、話し方のビデオを紹介します。

福岡は今日は暖かかったです。明日はもっとあたたかくて四月上旬並みの気温になるとのことです。冬もちょうど半分おわったとNHKテレビでいってました。
今日も忙しかったので簡単な記事ですみません。マサチューセッツ工科大学MITのOpen Course Wareにはいろいろオンラインでよめる教科書がアップロードされています。その中から、英文の教科書を2冊紹介します。

1)コンピュータ・サイエンスのための数学
https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-spring-2015/resources/mit6_042js15_textbook/
またはこちらからダウンロードできます。
https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-science-spring-2015/pages/readings/
講義の資料はこちら。
https://openlearninglibrary.mit.edu/courses/course-v1:OCW+6.042J+2T2019/9817b7d039b942c3aad1cdb9524b7c5d/

2)科学者のための圏論
こちらからダウンロードできます。
https://ocw.mit.edu/courses/18-s996-category-theory-for-scientists-spring-2013/pages/textbook/
また講義の案内はこちらです。
https://ocw.mit.edu/courses/18-s996-category-theory-for-scientists-spring-2013/

また話し方についてのこんなビデオも公開されています。
How to Speak
https://youtu.be/Unzc731iCUY?si=2zIjhO0_rwPWn0Co

講義の案内はこちらです。
https://ocw.mit.edu/courses/res-tll-005-how-to-speak-january-iap-2018/

機械学習やタンパク質のバイオインフォマティクスの英語の無料版教科書をいくつか紹介します。

今日は何かと忙しかったので、無料の教科書がダウンロードできるリンクをいくつか紹介するだけにします。

Understanding Deep Learning
by Simon J.D. Prince
Published by MIT Press Dec 5th 2023.
深層学習の最新の教科書です。
https://udlbook.github.io/udlbook/

こちらは機械学習の教科書
Understanding Machine Learning: From Theory to Algorithms
By Shai Shalev-Shwartz and Shai Ben-David
Cambridge University Press
https://www.cs.huji.ac.il/~shais/UnderstandingMachineLearning/index.html
個人使用のみ限定でダウンロードできます。

こちらもdeep learningの教科書です。プレプリントサーバーにアップロードされている本です。
Mathematical Introduction to Deep Learning: Methods, Implementations, and Theory
Arnulf Jentzen, Benno Kuckuck, Philippe von Wurstemberger
https://arxiv.org/abs/2310.20360

プレプリントサーバーで検索キーワードをbookとintroductionにして探してみると上の本以外にもいろいろ本がヒットします。たとえば次は蛋白質のバイオインフォマティクスの教科書Introduction to Protein Structural Bioinformaticsの各章がアップロードされているサイトのリンクを含む序文のpdfです。
Preface to Introduction to Protein Structural Bioinformatics
K. Anton Feenstra, Sanne Abeln
https://arxiv.org/abs/1801.09442

プレプリントサーバーには結構、よい教科書がありますので自分の興味のあるキーワードで探してみてください。