SCIRun User Mailing List

Text archives Help


[SCIRUN-USERS] Re: larger linear system for testing in FwdInvToolbox


Chronological Thread 
  • From: Jaume Coll-Font <jcollfont@gmail.com>
  • To: 向华 <hxiang@whu.edu.cn>
  • Cc: Dan White <dwhite@sci.utah.edu>, Petar Petrov <pip010@gmail.com>, "scirun-users@sci.utah.edu" <scirun-users@sci.utah.edu>
  • Subject: [SCIRUN-USERS] Re: larger linear system for testing in FwdInvToolbox
  • Date: Sat, 11 Jan 2014 10:55:09 -0500

Hi Hua,

Let's see if I can help you.
Right now, I am not sure what is your need exactly so let me try to explain what I understood so you know where I am.
(I'll be using the toolkit guide as a reference for both of us)


You are trying to use the network tikhonov-inverse from the FWD/INV_ECG toolkit but found that the system it is solving is too simple for you.
When you say this, do you mean that you would like to see how SCIRUN solves any big inverse problem or that you need it for a particular bioelectric case?
This is the main point that confuses me and can lead to two answers, one simple and the other complex.


To simply load new matrices take look at the network (there's an image at page 35 of the guide). You'll see that there are three input modules: two ReadMatrix and one ReadField.
In order from left to right, these load the forward matrix (A), the solution potentials (x) and a heart geometry for visualization. These load the files you mentioned above. 
So if you click on the UI button of each one of them, a menu will pop-up where you can choose a new file, there are different formats you can choose from too.

Nevertheless, these files must have the following format:
- A - must be a MXN real matrix (current SCIRUN does not support complex, will come in the next version)
- x - must be a NXT real matrix with the hidden data, (we can now consider T=1 for simplicity).
- and the field a geometry of N nodes to plot the potentials on top.

Note that this netwrok first solves y, adds noise to it and then tries to estimate x from that noisy y, so you don't have to load y in this network (you could change this in general).

Now, if you want to solve any linear system, just change A and x  for any pair of matrices of appropriate dimensions and see how it works.


If, instead you are interested in solving a bioelectric problem, it gets a little more complicated.
You will first need the discretized closed surface geometries of, in this case, heart and torso and then solve the forward problem.
An option to do so would be BEM from which you can find an example network in torso-tank-bem.srn .
Once you have solved this problem you could now use the resulting forward matrix A (output of module BuildBEMatrix) as an input for the tikhnov case.


I hope this is helpful. Please, don't hesitate to ask if you still have doubts.

Best,

Jaume Coll-Font


On Thu, Jan 9, 2014 at 4:16 AM, 向华 <hxiang@whu.edu.cn> wrote:
Hello,
Excuse me. I have a simple question about using FwdInvToolbox, in which there is an example, tikhonov-inverse.srn.
The module that solves the inverse problem by means of Tikhonov regularization is SolveInverseProblemWithTikhonov, in which I find that there is a linear system
Ax=b.
After importing it into Matlab, I find that A is a matrix of the size 771-by-128. The size of this linear system is small.
I am interested in this linear system, and want to test a larger linear system, for example, the matrix A with the size of several thousands. My question is how I can get such larger linear system.
I think I need to use finer grids and change the three input data files:
for_mat_128.mat
epi_pot_128_fr_170to190.mat
25feb97_sock_closed.fld
But how to generate these files? Can anybody here help me? Thank you very much in advance.
Best regards,
Hua





Archive powered by MHonArc 2.6.16.

Top of page