=====  VBMEG リリースノート

バージョン：0.5-0.b.0
CVSタグ：version_0_5_0_b_0

=====  CVS情報

CVSROOT
  :pserver:username@lobule2:/home/cnb/rhayashi/cvs_repository/vbmeg_genesis


===== 前バージョン(0.5-0.a.0)からの修正・追加項目一覧

■変更項目一覧

(★)…データフォーマット変更、パラメータ変更、関数インターフェース変更の
      いずれかを表す

1.brain
  1-1.脳モデルチェック関数の機能追加
2.basis
  2-1.basisファイルの互換性対応
3.bayes
  3-1.job_vb でのパラメタチェック方法修正(★)
  3-2.推定時間がMEGデータのサンプル数より小さいかどうかのチェック追加
  3-3.推定前のデータ整合性チェックを実施
4.current
  4-1.currentファイルの変数変更(★)
  4-2.current_parm.overlap_mode追加(★)
5.バグ修正
  5-1.vb_load_resultのバグ修正
  5-2.proj_runのバグ修正
  5-3.plot functionのバグ修正
6.GUI
  6-1.job_plot_currentmapの機能追加
  6-2.推定GUIのバグ修正
  6-3.推定GUIのタブオーダー修正
7.その他変更
  7-1.err_cell, err_arrayの仕様変更(★)

■追加項目一覧

1.current
  1-1.推定電流読み込み関数load_currentを追加
2.GUI
  2-1.球中心, 球半径をMRI画像から求めるGUI追加
  2-2.位置合わせプログラム一式(GUI)追加
  2-3.job_select_area追加
3.その他追加
  3-1.vb_versionの追加
  3-2.matlab_versionにバージョン比較機能を追加

===== 詳細

■変更項目詳細

1.brain
  1-1.脳モデルチェック関数の機能追加
    ・MRIスライス上に皮質点を重ね書きするグラフを増やした。
    ファイル：
      check_model/check_brain_model.m 
2.basis
  2-1.basisファイルの互換性対応
    ・過去のバージョン（ver 0.1)で作ったファイルを読み込めるように修正
    ファイル：
      common/loadfunc/load_basis_info.m, load_basis.m
3.bayes
  3-1.job_vb でのパラメタチェック方法修正(★)
    関数インタフェイスの変更：
      vb_check_variable(B, Cov, Gact, Gall, ix)
                 ↓
      vb_check_variable(B, Cov, Gact, Gall)
    ファイル：
      job/job_vb.m,
      estimation/bayes/vb_set_vb_parm.m, vb_check_variable.m
  3-2.推定時間がMEGデータのサンプル数より小さいかどうかのチェック追加
    ファイル：
      estimation/bayes/get_megdata.m
  3-3.推定前のデータ整合性チェックを実施
    ファイル：
       Modified Files:
         job/job_vb.m
       Added Files:
         estimation/bayes/vb_check_variable.m
4.current
  4-1.currentファイルの変数変更(★)
    ・事後分散の変数仕様
      ver 0.41
        Varact(Nact,Nwindow) : 時間窓毎に計算
      ver 0.5
        Varact(Nact,Nsample) : 各時刻で計算

    ・推定電流の時間インデックスを保存
      Tsample = Time sample index for 'Jact/Jbck'
        Jact( :, t, :) 
       Time sample in MEG data :
         t_meg = Tsample(t) <-> bexp(:, t_meg,:)
       Time (ms)   in MEG data : 
         t_ms  = (t_meg - Pretriger)*(1000/SampleFreq)
  4-2.current_parm.overlap_mode追加(★)
    ・スペクトル計算用に重なり合う時間窓で平均せずに、各時間窓で計算した
      電流時系列を単純に結合して出力するモードを追加した。
       = 0 : current is averaged over overlapped time window
       = 1 : current is not averaged for overlapped window
             current time series of each time windows 
             are concatenated sequentially for spectral analysis

    関数インタフェイスの変更：
       [weight ,Tindex, Nindex] = overlapped_timewindow_weight
                      ↓
       [weight ,Tindex, Nindex, Nsample] = overlapped_timewindow_weight
    ファイル：
        estimation/bayes
          vbmeg_current_reconstruct_tr.m vbmeg_current_reconstruct.m 
          overlapped_timewindow_weight.m
        template/
          set_current_parm_test.m set_current_parm.m
        job/
          job_current_tr.m job_current.m 
5.バグ修正：
  5-1.vb_load_resultのバグ修正
      Ver0.4との互換性に関するバグの修正
    ファイル：
      estimate/bayes/vb_load_result.m
  5-2.proj_runのバグ修正
      job_currentの実行行に、セミコロンがなかったので、戻り値が
      画面に大量に表示される不具合があった
    ファイル：
      template/proj_run.m
  5-3.plot functionのバグ修正
     以下の関数について、行と列のindexに関するバグがあったので修正
    ファイル：
      plotfunc/plot_meg_2D.m plot_brain_inflate.m plot_brain.m 
6.GUI
  6-1.job_plot_currentmapの機能追加
      強度情報の表示をスライダ、エディットボックスで画面を見ながら
      変更する機能を追加した
    ファイル：
       Modified Files:
         job/job_plot_currentmap/
            job_plot_cmap.fig job_plot_cmap_plotbrain.m 
            job_plot_cmap_print_spatialpattern.m 
            job_plot_cmap_print_temporalpattern.m 
            job_plot_cmap_update_spatialpattern.m job_plot_currentmap.m 
       Added Files:
         job/job_plot_currentmap/
            job_plot_cmap_change_Jratio.m 
  6-2.bayes_parm_editorのバグ修正
      Execボタンを押すと実行前のパラメータチェック関数でエラーが発生する
    ファイル：
      gui/bayes_parm_editor/bayes_parm_editor.m
  6-3.推定GUIのタブオーダー修正
      タブ押下によるコンポーネントのフォーカス移動の順序がおかしかった
      ので修正した。
    ファイル：
       gui/bayes_parm_editor/
          bayes_parm_editor.fig, bayes_parm_editor_advanced.fig
7.その他変更
  7-1.err_cell, err_arrayの仕様変更(★)
    以下のように仕様変更
        [err , Sx, Sy, indx ] = err_cell(x,y)

            if size of cell array x & y is different, 
              err = -1 is returned, and error massage is printed
              Sx, Sy = size of x & y
              indx = []
            if size of each element in the cell is different, 
              err = -2 is returned, and error massage is printed
              indx   = element index with different 
              Sx, Sy = size of elements x{indx} & y{indx}

        [err, Sx, Sy] = err_array(x,y)

            if size of x & y is different, 
             err = -1 is returned, and error massage is printed
             Sx, Sy = size of x & y

    ファイル：
       common/utility/err_cell.m, err_array.m

■追加項目詳細
1.current
  1-1.推定電流読み込み関数load_currentを追加
　　ファイル：
        common/loadfunc/load_current.m
    関数仕様：
        % USAGE:
        %  [Jinfo,Jact,Jbck,Varact] = load_current(currfile)
        %
        % --- INPUT:
        %  currfile - current file name
        %
        % --- OUTPUT:
        % Jinfo : structure of current info
        %    .ix_act = Vertex index corresponding to active current
        %    .ix_bck = Vertex index corresponding to background current
        %    .Lact   = # of current direction at one vertex in active region
        %    .Lbck   = # of current direction at one vertex in background
        %    .Tsample    = Time sample index for 'Jact/Jbck'
        %    .SampleFreq = Sample Frequency [Hz]
        %    .Pretriger  = Pretriger period
        % 
        % Jact    : current in focal region
        %   Jact(Nact,Nsample)          for trial_average = ON 
        %   Jact(Nact,Nsample,Ntrials)  for trial_average = OFF
        %     Nact     = Lact * Nvact,  Nvact = length(ix_act)
        %     Nsample  : # of time sample, 
        %     Ntrials  : # of trials in all session]
        %
        %   Jact( n + Nvact*(i-1), t, :) 
        %    current at the vertex 'ix_act(n)', 'i-th' direction, time index 't'
        %
        %   Time sample in MEG data 
        %     t_meg = Tsample(t)
        %   Time (ms)   in MEG data : 
        %     t_ms  = (t_meg - Pretriger)*(1000/SampleFreq)
        %
        %
        % Jbck     : background current
        %   Jbck(Nbck,Nsample)          for trial_average = ON 
        %   Jbck(Nbck,Nsample,Ntrials)  for trial_average = OFF

        % Varact      : posterior variance of act_area
        %   Varact(Nact,Nsample)
        %     When active area is empty,
        %     posterior variance for background area is calculated
2.GUI
  2-1.球中心, 球半径をMRI画像から求めるGUI追加
     MRI画像上の点を、axial, coronal, sagittalの各面で最低３点ずつ
     クリックしてボタンを押下すると球中心・球半径をグラフィカルに確認し、
     数値として取得することができる。
     ファイル：
       mri_toolbox/sphere_head/*
  2-2.位置合わせプログラム一式(GUI)追加
     vivid, fastscan, MEG, MRIの座標系の位置合わせをする
     プログラム一式を追加
     ファイル：
       gui/meg_location/*
  2-3.job_select_area追加
     ファイル：
       job/job_select_area/*
3.その他追加
  3-1.vb_versionの追加
     ファイル：
       common/utility/vb_version.m
  3-2.matlab_versionにバージョン比較機能を追加
    関数インターフェースの追加：
      [result] = matlab_version(comparative_operator, ver_str)
      [result] = matlab_version(ver_str)
