「ComplexRI」の版間の差分

提供: ComplexRI: Manual
ナビゲーションに移動 検索に移動
 
(同じ利用者による、間の138版が非表示)
1行目: 1行目:
__FORCETOC__
__FORCETOC__


== 概要例==
== 概要 ==
 本FreeFlexは、主に液体および界面系のさまざまな自由エネルギー計算に柔軟に対応できるMDプログラムとして開発された。液体界面でのwater finger座標によって初めてwater finger形成・切断の自由エネルギー障壁が明らかにされたように、既存の方法を超えた新たな座標が求められる場合も多い。<u>FreeFlexは、一般化座標の設定が容易で汎用性が高く、それに対する拘束条件やバイアス・ポテンシャルを課したり、その座標上の自由エネルギー計算を実行しやすいように設計された。</u>
 本ComplexRIは、全反射実験から得たデータを用いて、複素屈折率の分散を調べるためのWebアプリケーションである。複素屈折率の分散を調べることは和周波分光の解析に役立つ。界面SFG分光とは可視光と赤外光の2つの光を照射したときに、界面で選択的に発生する和周波光を検出するもので、2次の非線形効果を応用した分光法であり、近年液体界面や高分子界面などを含めた幅広い界面分析に応用されるようになった。この和周波発生はフレネル係数に大きく影響されており、また、フレネル係数は屈折率に依存した量である。そこで和周波分光を解析するには複素屈折率の分散を調べることが必要であり、本Complexそれを手軽に行えることを目的に開発された。


 現在のFreeFlexは、自由エネルギー計算手法として、
==主な特徴==
*自由エネルギー摂動法 (overlapping distribution法)
*全反射実験の実験データさえあれば、複素屈折率の分散を出すことが可能。
*アンブレラサンプリング法
*適用範囲は赤外領域。これは、和周波分光では官能基を調べることを目的としており、これに一致する光の周波数帯が赤外領域だからである。
*レプリカ交換アンブレラサンプリング法
の3通りをサポートしている。分子モデルは、点電荷および点双極子の分極モデルをサポートする。MD計算のチューニングについても多くの工夫がなされている。


==作成の経緯==
 和周波分光の結果をより正確に解析するための情報として様々な官能基に関する複素屈折率の分散を調べた論文<ref name = "ref1" /><ref name = "ref2" /><ref name = "ref3" />がある。これは全反射実験のデータに基づいて屈折率の分散をまとめたものになっている。本ComplexRIはこれに基づいて、全反射実験のデータさえ与えれば、同じようなフィッティングが簡単に行えるように開発された。<br />
 フィッティング計算には論文<ref name = "ref2" /><ref name = "ref3" />で用いられたものを主として用いている。これは、本研究室の王助教と以前森田グループに所属していた村田によって作成されたものである。本ComplexRIでは初期値を設定しなくてもフィッティングが行えるように、少しアルゴリズムを改良している。これは本研究室の森田教授、王助教の指導の下で上村が実装した。<br />
 また、WebアプリケーションとしてのUIも上村が実装した。


 FreeFlexは、吉川信明君が自らの研究のために作成していたMDプログラムを母体として、2014年度より汎用化を目指した開発が始められた。吉川君、王聆鉴君および森田が開発に加わり、液液界面に関わる吉川、聆鉴君それぞれの研究に必要なMDプログラムを包括する形で開発された。2015年より杉林君、2016年より田原君、2017年より平野君、内藤君、小泉さん、2018年より伊藤君が開発チームに加わって、液液界面での電子移動反応やfaciliated ion transfer、グランドカノニカルMDの研究へと進んでいる。また信田君によってparticle mesh Ewald法やOpenMP並列化が実装され、従来より格段に高速化した。
== チュートリアル ==
:チュートリアルでは4種類全10個の入力について、実際に解析を行い、その結果をもとに説明する。
{|class="wikitable"
! 目次(チュートリアル)
|-
|[[チュートリアル01|チュートリアル01]]:ファイルを入れて解析する(入力1⃣を与える練習)
|-
|[[チュートリアル02|チュートリアル02]]:解析に関する条件を指定する(入力4⃣を与える練習)
|-
|[[チュートリアル03|チュートリアル03]]:ファイルの形式を変える(入力2⃣を与える練習)
|-
|[[チュートリアル04|チュートリアル04]]:実験条件を正しく与える(入力3⃣を与える練習)
|}


== チュートリアル 例==
----
 
;[[チュートリアル01:水-DCM 界面のシミュレーション]]
: FreeFlex の基本的な使用方法のチュートリアルとして、コンパイル、系の作成、MD の実行といった一連の流れを説明する。
: また、計算結果を確認するために [[tools/show_energy.exe|show_energy.exe]] を用いてエネルギーの時間変化をグラフとして表示する。


==マニュアル==


== 概要 ==
本ComplexRIは全反射実験から得られた反射率あるいは吸光度のデータをもとにして媒質の複素屈折率の分散を出力するWebアプリケーションである。
<span style="font-size: 100%; color:red;">1⃣実験の結果、</span>
<span style="font-size: 100%; color:red;">2⃣ファイル形式に関する入力、</span>
<span style="font-size: 100%; color:red;">3⃣実験の条件、</span>
<span style="font-size: 100%; color:red;">4⃣解析に関する条件</span>
という四つの情報を入力として与えると、解析が行える。
== チュートリアル ==
{|class="wikitable"
{|class="wikitable"
! 目次
! 目次(入力)
|-
|[[入力#入力01|入力01]]:タイトル
|-
|[[入力#入力02|入力02]]:ファイル
|-
|[[入力#入力03|入力03]]:反射率か吸光度か?
|-
|[[入力#入力04|入力04]]:波数範囲
|-
|[[入力#入力05|入力05]]:データの列の指定
|-
|[[入力#入力06|入力06]]:昇順か降順か?
|-
|-
|[[#チュートリアル01|チュートリアル01]]:ファイルを入れて解析してみよう(入力1⃣を与える練習)
|[[入力#入力07|入力07]]:実験で用いた基質の種類
|-
|-
|[[#チュートリアル02|チュートリアル02]]:解析に関する条件を指定しよう(入力4⃣を与える練習)
|[[入力#入力08|入力08]]:入射角
|-
|-
|[[#チュートリアル03|チュートリアル03]]:ファイルの形式を変えてみよう(入力2⃣を与える練習)
|[[入力#入力09|入力09]]:吸収がないときの屈折率
|-
|-
|[[#チュートリアル04|チュートリアル04]]:実験条件を変えてみよう。(入力3⃣を与える練習)
|[[入力#入力10|入力10]]:残差の指定
|-
|-
|[[#チュートリアル05|チュートリアル05]]:自分で入力を考えてみよう。(入力1⃣,2⃣,3⃣,4⃣を与える練習)
|[[入力#入力11|入力11]]:フィッティング関数のパラメータの設定の有無
|}
{|class="wikitable"
! 目次(出力)
|-
|[[出力#出力01|出力01]]:数値
|-
|[[出力#出力02|出力02]]:表
|-
|[[出力#出力03|出力03]]:グラフ
|-
|[[出力#出力04|出力04]]:アウトプットファイル
|}
|}


----
----
<div><span id="チュートリアル01"  style="font-size: 150%; color:Aqua;">チュートリアル01:ファイルを入れて解析してみよう</span>➡[[#チュートリアル01の解説|チュートリアル01の解説へ]]</div>
: ここでは<span style="font-size: 100%; color:red;">1⃣実験の結果</span>を入力として与えて解析結果を出力させてみよう。
: 実験結果のファイルはComplexRIの<span style="font-size: 100%; color:red;">MANUALページ</span>の<span style="font-size: 100%; color:red;">File List</span>からダウンロードできる。
[[File:MANUAL.png|1000px]]
: 今回は<span style="font-size: 100%; color:red;">Download the File01</span>のボタンを押してダウンロードしてこれを使用してほしい。
[[File:FILE_DL1.png|500px]]
: ダウンロードが出来たら<span style="font-size: 100%; color:red;">LSRページ</span>に行きファイルを入れてみよう。
[[File:LSR.png|1000px]]
: 入力は①から⑩の10個だ。今回は<span style="font-size: 100%; color:red;">②File</span>にダウンロードしたファイルを与えるだけでよい。
: それでは<span style="font-size: 100%; color:red;">execute LSR</span>ボタンをクリックして解析してみよう。
<div id="チュートリアル01の解説" style="font-size: 150%; color:aqua;">チュートリアル01の解説</div>
: 解析結果は以下の画像のようなったはずである。
<div id = image1-1 style="font-size: 120%;">[図1-1]</div>
<span style="font-size: 170%; color:green;">画像</span>
[[File:01結果.png|caption]]
: ここまでComplexRIの基本的な流れを体験してもらった。
: ここで入れたファイルについて簡単に説明する。
: この様になっているはずである。
<span style="font-size: 170%; color:green;">画像</span>
: 一列目には波数、二列目に一列目の波数の光が入射した時の反射率が(%)単位が並んだ構成になっている。
: この様に解析に必要な実験結果は波数とそれに対応する反射率の二種類だけであり、これだけの実験結果から解析が行えるということである。
: 結果については次のチュートリアルで説明する。
----
<div><span id="チュートリアル02"  style="font-size: 150%; color:Aqua;">チュートリアル02:解析に関する条件を指定しよう</span>➡[[#チュートリアル02の解説|チュートリアル02の解説へ]]</div>
: ここでは<span style="font-size: 100%; color:red;">4⃣解析に関する条件</span>を入力として与えてみよう。
: まず、先程と同様にLSRページ</span>に行き<span style="font-size: 100%; color:red;">②File</span>にファイルを与える。これは前回と同じものを使用してほしい。
: 先程はこれで実行していたが、以下のように④と⑩に追加の設定をしてみよう。
[[File:02入力ー4.png|frameless|caption]][[File:02入力ー10.png|frameless|caption]]
: それでは<span style="font-size: 100%; color:red;">execute LSR</span>ボタンをクリックして解析してみよう。
<div id="チュートリアル02の解説" style="font-size: 150%; color:aqua;">チュートリアル02の解説</div>
: 解析結果は以下のようなったはずである。
<div id = image1-1 style="font-size: 120%;">[図1-2]</div>
<span style="font-size: 170%; color:green;">画像</span>
[[File:02結果.png|caption]]
: ④と⑩の入力の意味を説明する前に、結果の見方について簡単に説明する。
: <u>(1)数字、(2)表、(3)グラフ</u>が並んでいる。
: <u>(2)表</u>の数値はフィッティング関数のパラメータである。このフィッティング関数を足し合わせることで、左側の<u>(3)グラフ</u>を描いている。また、このグラフの各点の値から反射率を計算してプロットしたのが右側の<u>(3)グラフ</u>の<span style="color:green;">calculate</span>である。実際の回帰ではこの表の数値をいろいろ試して、右側の<u>(3)グラフ</u>の<span style="color:green;">calculate</span>と<span style="color:red;">experiment</span>と比較するということを行っている。ここで、<span style="color:red;">experiment</span>は入力ファイルとして与えられた反射率の値である。<u>(1)数字</u>は解析が終了した時点で、この比較の差がどれくらい小さくなったかを示している。具体的なフィッティング関数の形や方法については<u>[[#内部処理の説明など|内部処理の説明など]]</u>の<u>[[#説明01|説明01:フィッティング方法]]</u>を参考にしてほしい。
: これを踏まえて、④と⑩の入力の意味を説明していこう。
: 説明は今回の結果をチュートリアル01の時と比較しながら行っていく。
: 図の比較は以下のようになる。
[[File:01結果.png|frameless|caption]][[File:02結果.png|frameless|caption]]
: ④の入力をしたことは、グラフの横軸の幅を設定することなっている。確かに、[入力4の図]と同じ範囲になっている。デフォルトの値で行われたチュートリアル01の時と比べると変化がわかりやすいと思う。
:このグラフの幅の設定は、言い換えると、解析する波数の範囲設定したことになっている。これは直前に説明した解析の原理から考えればわかる。<u>(3)グラフ</u>の<span style="color:green;">calculate</span>と<span style="color:red;">experiment</span>を比較するのであった。このときグラフの横幅を変えれば、比べる範囲つまり解析の範囲を変えることに相当するということだ。
: 次に⑩について説明する。今回は[入力10の図]のように0.01した。解析は<u>(1)数字</u>がこの値より小さくなったら終了するようになっている。つまり解析の正確さもしくは厳しさを設定することになっている。これは小さくしすぎないように注意してほしい。なぜなら、比較の差分がこれよりも小さくならず、解析がとても長くなることがあるからだ。目安としてはデフォルトの0.02から0.01がよい。これは適宜試してみてほしい。
----
<div><span id="チュートリアル03"  style="font-size: 150%; color:Aqua;">チュートリアル03:ファイルの形式を変えてみよう</span>➡[[#チュートリアル03の解説|チュートリアル03の解説へ]]</div>
: ここでは<span style="font-size: 100%; color:red;">2⃣ファイル形式に関する条件</span>を入力として与えてみよう。
: チュートリアル01の時と同様に<span style="font-size: 100%; color:red;">MANUALページ</span>の<span style="font-size: 100%; color:red;">File List</span>からファイルをダウンロードしてほしい。
: 今回は<span style="font-size: 100%; color:red;">File02</span>を使う。
[[File:FILE_DL2.png|500px]]
: ダウンロード出来たら、LSRページ</span>に行き<span style="font-size: 100%; color:red;">②File</span>にファイルを与える。
: 今回は③,⑤,⑥の入力を以下のように変更してみよう。
[[File:03入力ー3.png|frameless|caption]]
[[File:03入力ー5.png|frameless|caption]]
[[File:03入力ー6.png|frameless|caption]]
<span style="font-size: 170%; color:green;">画像</span>
: それでは<span style="font-size: 100%; color:red;">execute LSR</span>ボタンをクリックして解析してみよう。
<div id="チュートリアル03の解説" style="font-size: 150%; color:aqua;">チュートリアル03の解説</div>
: 解析結果は以下のようなったはずである。
[[File:03結果.png|caption]]
: じつはこれはチュートリアル01と同じ結果になっている。
図1-1と見比べてみてほしい。
: これは同じ実験結果を入力したことを意味している。しかし、チュートリアル01と02で使用した入力ファイルと今回使用した入力ファイルを比較すると、以下のように一見同じには見えない。これが同じであることを説明する。(一部分のみ示す。)
<span style="font-size: 170%; color:green;">画像</span>
: 異なる点は2つある。
: 1つは行が3行になっていることである。これは波数、反射率、吸光度の順に並んでいる。ここで新しく出てきた吸光度というのは反射率と等価な情報を表している。なぜなら、○○という関係式が成り立っており、これによって吸光度を反射率に変換することができるからだ。
: もう1つは波数と反射率の並びが昇順から降順になっていることだ。ここで、吸光度はこの様に並び替えた後で反射率から計算したので波数に対応している。
: このように形は異なるが等価な実験結果を与えた。だから結果が同じだったのだ。
: ③,⑤,⑥の入力はこのファイルの形の違いをアプリ側に考慮させるために入力した。
: ⑤では読み込む列の番号を与えたことになっている。今回は入力として1行目の波数と3行目の吸光度を使うのでこのように設定した。
: 吸光度を使うときは、忘れずに③をabsorptanceに設定してほしい。すると、解析時に反射率に変換して解析する。
: この設定はデフォルトではreflectanceになっているのでこれまでは変更する必要がなかった。
: 最後に⑥はデータの波数のの並び方昇順か降順かを入力している。今回は降順なのでこのように設定した。デフォルトは昇順なので今までは設定する必要がなかった。
----
<div><span id="チュートリアル04"  style="font-size: 150%; color:Aqua;">チュートリアル04:実験条件を変えてみよう</span>➡[[#チュートリアル04の解説|チュートリアル04の解説へ]]</div>
: ここでは<span style="font-size: 100%; color:red;">3⃣実験の条件</span>を入力として与えてみよう。
: <span>LSRページ</span>に行き<span style="font-size: 100%; color:red;">②File</span>にファイルを与える。これはチュートリアル01と02で使ったものと同じものを使ってほしい。
: 今回は⑦,⑧,⑨の入力を以下のように変更してみよう。
<span style="font-size: 170%; color:green;">画像</span>
: それでは<span style="font-size: 100%; color:red;">execute LSR</span>ボタンをクリックして解析してみよう。
<div id="チュートリアル04の解説" style="font-size: 120%; color:red;>チュートリアル04の解説</div>
: 解析結果は以下のようなったはずである。


: チュートリアル01とグラフを比較してみると以下のようになる。
==内部処理==


: 同じファイルを与えているが、実験条件が違えば、出力も異なることがわかる。正しい分散を求めるには自身の行った実験の条件を正しく与える必要があるということだ。
{|class="wikitable"
: 各入力を説明しよう。
! 目次(内部処理)
: ⑦では全反射実験のときに使った基質の種類を指定している。
|-
: ⑧では全反射実験のときの入射光の角度を指定している。
|[[説明01|説明01]]:フィッティング方法
: ⑨では分散のバックグラウンドを与えている。これは測定する基質の赤外領域での屈折率を与える必要がある。
|}
: これは可視光領域の光に対する屈折率からコーシの方程式のパラメータを求め、これを外挿することによって求めることができる。
<span style="font-size: 100%; color:red;">※このページを見るにはブラウザとしてchromeを使用されることを推奨しています。ブラウザによっては読み込みにかなり時間がかかることがあります。</span>
: 詳しい求め方は[[#内部処理の説明など|内部処理の説明など]]</u>の<u>[[#説明02|説明02:屈折率のバックグラウンド]]</u>を参考にしてほしい。
<span style="font-size: 170%; color:green;">画像</span>
----
<div><span id="チュートリアル05"  style="font-size: 150%; color:Aqua;">チュートリアル05:実験条件を変えてみよう</span>➡[[#チュートリアル05の解説|チュートリアル05の解説へ]]</div>
<div id="チュートリアル05の解説" style="font-size: 120%; color:red;>チュートリアル05の解説</div>




[https://www.google.co.jp/ google]
----
 
[[#チュートリアル|チュートリアルtopへ]]


==内部処理の説明など==
==詳細==


{|class="wikitable"
{|class="wikitable"
! 目次
! 目次(詳細)
|-
|[[#説明01|説明01]]:フィッティング方法
|-
|-
|[[#説明02|説明02]]:屈折率のバックグラウンド
|[[詳細01|詳細01]]:ローレンツ関数を使う理由
|-
|-
|[[#説明03|説明03]]
|[[詳細02|詳細02]]:p波とs波の平均値で与えられる理由
|-
|-
|[[#説明04|説明04]]
|[[詳細03|詳細03]]:屈折率の虚部が吸収を表す理由
|}
|}
<div id="説明01" style="font-size: 120%; color:Lime;>説明01</div>
<div id="説明02" style="font-size: 120%; color:yellow;>説明02</div>
<div id="説明03" style="font-size: 120%; color:orange;>説明03</div>
<div id="解説04" style="font-size: 120%; color:purple;>説明04</div>


[[#内部処理の説明など|内部処理の説明などtopへ]]
----


  [http://comp.chem.tohoku.ac.jp/mediawiki/index.php/ComplexRI ComplexRIページtopへ]]
  [http://comp.chem.tohoku.ac.jp/mediawiki/index.php/ComplexRI ComplexRIページtopへ]]


<span style="font-size: 170px; color:red;">[http://comp.chem.tohoku.ac.jp/mediawiki/index.php/ComplexRI ComplexRI]</span>
==参考文献==
<references>
<ref name = "ref1">"Effect of Frequency-Dependent Fresnel Factor on the Vibrational Sum Frequency Generation Spectra for Liquid/Solid Interfaces"
Lin Wang, Satoshi Nihonyanagi, Ken-ichi Inoue, Kei Nishikawa, Akihiro Morita, Shen Ye, Tahei Tahara, J. Phys. Chem. C, 123(25) 15665-15673 (2019).</ref>
<ref name = "ref2">"Dispersion of Complex Refractive Indices for Intense Vibrational Bands. II Implication to Sum Frequency Generation Spectroscopy"
Lin Wang, Ryo Murata, Ken-ichi Inoue, Shen Ye, and Akihiro Morita, J. Phys. Chem. B, 125(34), 9804-9810 (2021).</ref>
<ref name = "ref3">"Dispersion of Complex Refractive Indices for Intense Vibrational Bands. I Quantitative Spectra"
Ryo Murata, Ken-ichi Inoue, Lin Wang, Shen Ye, and Akihiro Morita, J. Phys. Chem. B, 125(34), 9794-9803 (2021).</ref>
</references>

2021年12月14日 (火) 08:19時点における最新版


概要

 本ComplexRIは、全反射実験から得たデータを用いて、複素屈折率の分散を調べるためのWebアプリケーションである。複素屈折率の分散を調べることは和周波分光の解析に役立つ。界面SFG分光とは可視光と赤外光の2つの光を照射したときに、界面で選択的に発生する和周波光を検出するもので、2次の非線形効果を応用した分光法であり、近年液体界面や高分子界面などを含めた幅広い界面分析に応用されるようになった。この和周波発生はフレネル係数に大きく影響されており、また、フレネル係数は屈折率に依存した量である。そこで和周波分光を解析するには複素屈折率の分散を調べることが必要であり、本Complexそれを手軽に行えることを目的に開発された。

主な特徴

  • 全反射実験の実験データさえあれば、複素屈折率の分散を出すことが可能。
  • 適用範囲は赤外領域。これは、和周波分光では官能基を調べることを目的としており、これに一致する光の周波数帯が赤外領域だからである。

作成の経緯

 和周波分光の結果をより正確に解析するための情報として様々な官能基に関する複素屈折率の分散を調べた論文[1][2][3]がある。これは全反射実験のデータに基づいて屈折率の分散をまとめたものになっている。本ComplexRIはこれに基づいて、全反射実験のデータさえ与えれば、同じようなフィッティングが簡単に行えるように開発された。
 フィッティング計算には論文[2][3]で用いられたものを主として用いている。これは、本研究室の王助教と以前森田グループに所属していた村田によって作成されたものである。本ComplexRIでは初期値を設定しなくてもフィッティングが行えるように、少しアルゴリズムを改良している。これは本研究室の森田教授、王助教の指導の下で上村が実装した。
 また、WebアプリケーションとしてのUIも上村が実装した。

チュートリアル

チュートリアルでは4種類全10個の入力について、実際に解析を行い、その結果をもとに説明する。
目次(チュートリアル)
チュートリアル01:ファイルを入れて解析する(入力1⃣を与える練習)
チュートリアル02:解析に関する条件を指定する(入力4⃣を与える練習)
チュートリアル03:ファイルの形式を変える(入力2⃣を与える練習)
チュートリアル04:実験条件を正しく与える(入力3⃣を与える練習)

マニュアル

目次(入力)
入力01:タイトル
入力02:ファイル
入力03:反射率か吸光度か?
入力04:波数範囲
入力05:データの列の指定
入力06:昇順か降順か?
入力07:実験で用いた基質の種類
入力08:入射角
入力09:吸収がないときの屈折率
入力10:残差の指定
入力11:フィッティング関数のパラメータの設定の有無
目次(出力)
出力01:数値
出力02:表
出力03:グラフ
出力04:アウトプットファイル

内部処理

目次(内部処理)
説明01:フィッティング方法

※このページを見るにはブラウザとしてchromeを使用されることを推奨しています。ブラウザによっては読み込みにかなり時間がかかることがあります。



詳細

目次(詳細)
詳細01:ローレンツ関数を使う理由
詳細02:p波とs波の平均値で与えられる理由
詳細03:屈折率の虚部が吸収を表す理由

ComplexRIページtopへ]

参考文献

  1. "Effect of Frequency-Dependent Fresnel Factor on the Vibrational Sum Frequency Generation Spectra for Liquid/Solid Interfaces" Lin Wang, Satoshi Nihonyanagi, Ken-ichi Inoue, Kei Nishikawa, Akihiro Morita, Shen Ye, Tahei Tahara, J. Phys. Chem. C, 123(25) 15665-15673 (2019).
  2. 2.0 2.1 "Dispersion of Complex Refractive Indices for Intense Vibrational Bands. II Implication to Sum Frequency Generation Spectroscopy" Lin Wang, Ryo Murata, Ken-ichi Inoue, Shen Ye, and Akihiro Morita, J. Phys. Chem. B, 125(34), 9804-9810 (2021).
  3. 3.0 3.1 "Dispersion of Complex Refractive Indices for Intense Vibrational Bands. I Quantitative Spectra" Ryo Murata, Ken-ichi Inoue, Lin Wang, Shen Ye, and Akihiro Morita, J. Phys. Chem. B, 125(34), 9794-9803 (2021).