Link Search Menu Expand Document

フォワードの問題: 境界要素法

境界要素法(BEM)は数値計算技術です。 部分的な差分を解決するため。 電磁波の源で 脳活動のイメージング(EMSI)、前方を解決するために使用されます 現実的なヘッド モデルを使用して問題。 ヘッドモデリングでBEMを使う場合、 頭部は均一伝導性の区域で構成されると仮定されます (例、頭皮、頭骨、脳など)および組織の境界は 三角形の表面要素によって表される。 BEMの詳細 このツールボックスで使用される実装は [2] と [3] にあります。 このセクションでは、BEM Toolboxについて説明します。

  • メインメニューの「Forward Model Generation」を押します。
  • ファイルからメッシュをロードします。 モデルやモデルをロードすることも可能です 以前に作成したセッション。
  • モデル名と導電性値を入力し、「Create Model」を押します。 ボタン。
  • モデルが作成されると、セッション名とロードセンサーを入力します。 センサーは、ノード(.datファイル)またはメッシュから読み込むことができます。 座標(.sensファイル)
  • 「転送マトリックスの生成」を押します。
  • .dipファイルからソーススペースをロードします。 ダイポールの数でなければなりません 6つの行列によって、ダイポールの位置と方向を与えます。
  • 「コンピュートリードフィールドマトリックス」を押します。
  • あなたは、nthダイポールの潜在的な分布をプロットすることができます.

‘session_name’_LFM を Matlab .mat ファイルとして保存します。 ユーザインタフェースは図12で表示されます。

![図12:フォワードモデル生成のためのインターフェイス。](NFT_forward_ui.png "wikilink")

BEMを用いたフォワードの問題ソリューションは以下の手順で構成されています。

  1. 与えられたヘッドモデルのためのBEMのマトリックスを計算して下さい。
  2. 特定の電極のセットの転送行列を計算します。
  3. 特定のセットのダイポールのソースベクトルを計算します。
  4. ダイポール活動により電極の電位を取得。

MATLABからBEMを計算するBEMソルバー matricesは以下のとおりです。 次に、データ構造と機能 BEMツールボックスで使用しているものが記載されています。

BEMソルバー

BEMソルバーはC++で書かれており、実行可能なプログラムです。 MATLAB を始め、正しいパラメータで BEM を計算し保存 マトリクス。 ソルバーはMATLABから透明に呼び出され、 ツールボックスのユーザが明示的に呼び出されない。 しかし、 基本的なオプションとプログラムの出力に精通したほうが便利です。

$ bem_matrix

BEM係数を生成します。, IPAのための内部のマトリックスを含みます

使用法: bem_matrix [-f の matname] [-m の magsens] [-o mod] 網の名前 [s=sig …]

-f: matrices を matname に保存します。[cdi]mat (既定のメッシュ名)

-m:磁気センサーファイル名

-o:変更された方程式の使用するインターフェイス

(1:外側、0:無効化)

s=sig: s:region (1: 外), sig: 導電性

(既定の導電率:全地域0.2)

使用テキストから見ることができるように、bem_matrixアプリケーションは 計算の可能性と磁気のためのBEMのマトリックスを生成し、保存します フィールド。 分離された問題のアプローチ(IPA)を使用して、 頭蓋骨の低い伝導性による精度の低下。

BEMのマトリックス

IPAが使用されていない場合、BEM係数の行列のみが生成されます。 拡張子.cmtで保存されます。 IPAが適用される場合、2つ以上 matrices が生成され、保存されます: .dmt と .imt.

BEMソルバーによって作成されたマトリックスに加えて、追加 マトリックスは内部の係数のマトリックスの逆です。 この行列は imt のマトリックスの逆。 ビルトインMATLABを使用して反転 関数 inv() と拡張子 .iinv を使用してディスクに保存します。

トランスファー・マトリックス

転送行列は、非常に高速転送の問題を持つことを可能にします ソリューション 選択した列を反転させることで計算されます 係数のマトリックス。 ツールボックスでは、MATLAB で inversion を実行します。 GMRESの反復的な解決装置を使用して。 結果の行列が保存されます ファイル名拡張子 .tmte を使用してディスク。

行列生成は大きなメッシュに長時間かかる可能性があるため、 ディスクコピーは、将来の計算ができるように常に存在します 傷からマトリを発生させない。 これはすべてのために本当です BEMは、ソルバーとMATLABによって生成されたマトリックスを転送します。必要に応じてMATLABにmatricesがロードされ、 メモリを保存するために必要なユーザー。 この追加の利点 アプローチは、行列が外部に作成できるということです(マニュアルでは、 他のコンピュータ等)およびツールボックスによって使用される。

構造体

BEMツールボックスは3つの主要なデータ構造で実装されています。 さまざまなステージで利用できる情報を表す 問題解決のプロシージャ。 BEMメッシュに対応した構造 メッシュ、導電性の組み合わせであるヘッドモデル ソルバーパラメータと、センサー(電極)を指定するセッション データを取得するために使用される位置。 構造は以下のとおりです。

メッシュ構造

メッシュ構造には、座標と接続と境界が含まれています メッシュファイルからの情報。

モデル構造

モデル構造にはメッシュ構造と導電性値が含まれています。 メッシュ組織のクラスと修正境界のインデックスのために、 IPAでの使用。 1よりも小さいインデックスが設定されている場合、IPAは 応用。 たとえば、3 で設定して、4 個の組織クラスがある場合、 その後3rdと4thレイヤーは内部レイヤーであり、RHSベクトルは 変更しました。

また、モデルマトリクス(.cmt、.dmt、.imt、.iinv)は、 読み込み、同じフィールドとしてモデル構造の中に保存されます。 名前。 モデルの名前は、ロード時にベースファイル名として使用されます。 モデルのマトリックス。

セッション構成

セッション構造は「録画セッション」を表しています。 それは含んでいます モデル構造とセンサーの位置に関するマトリックス メッシュ(Smatrix)のノードへのスカルプ。 各電極は 要素のノードの合計を重くしました。 体重は重量によって決定されます 要素形状関数。 Smatrixの形式は次のとおりです。 [electrode_index node_index 重量] を指定します。 行列の行は必須 電極_index でソートされ、複数の行が 1 つ以上ある 与えられた電極の索引。

転送行列(.tmte)が読み込まれると内部に格納されます セッション構造。 セッションの名前は、ベースファイル名として使用されます。 転送行列を保存してロードするとき。


参考文献:

[2] Z. アカリン・アカル、N.G. Gencer、 高度なBEM実装 電磁波の発生源のイメージング、Medの物理のフォワードの問題。 とBiol., Vol. 49(5), 2004, PP 5011-28.

[3] N.G. Gencer、Z.Akalin Acar、 隔離された問題のアプローチの使用 多部品 BEM のモデルのための電磁石の源のイメージ投射、 Med.とBiol.の物理, vol. 50, 2005, PP 3007-22.