Eidors-logo    

EIDORS: Electrical Impedance Tomography and Diffuse Optical Tomography Reconstruction Software

EIDORS (mirror)
Main
Documentation
Tutorials
− Image Reconst
− Data Structures
− Applications
− FEM Modelling
− GREIT
− Old tutorials
Workshop
Download
Contrib Data
GREIT
Browse Docs
Browse SVN

News
Mailing list
(archive)
FAQ
Developer
                       

 

Hosted by
SourceForge.net Logo

 

Using Netgen to create elliptical EIDORS Models

EIDORS can use Netgen to create sophisticated 2D and 3D models

Here are some examples of the varity of models which can be generated using the function: ng_mk_ellip_models.

Simple 3D ellipse. Major, minor axes = [1.5, 0.8]. No electrodes

fmdl= ng_mk_ellip_models([1,1.5,0.8],[0],[]); 
show_fem(fmdl);

Simple 2D cylinder. Axes = [1.5,0.8]. Refined to 0.1

    fmdl= ng_mk_ellip_models([0,1.5,0.8,0.1],[],[]); 
show_fem(fmdl);

3D cylinder. Axes = [1.5,0.8]. 2 planes of 8 elecs with radius 0.1

    fmdl= ng_mk_ellip_models([1,1.2,0.8],[8,0.3,0.7],[0.1]); 
show_fem(fmdl);

3D cylinder. Axes= [1.3,1] = 1. 7 rect elecs with no refinement

    fmdl= ng_mk_ellip_models([3,1.3],[7,1],[0.2,0.3]); 
show_fem(fmdl);

2D cylinder. Axes = [1.2,0.8]. 11 rect elecs with refinement. Rotated 45 degrees

    fmdl= ng_mk_ellip_models([0,1.2,0.8],[11],[0.2,0,0.05]); 
th = 45* [2*pi/360];
fmdl.nodes = fmdl.nodes*[cos(th),sin(th);-sin(th),cos(th)];
show_fem(fmdl);

2D cylinder. elecs at 0, 90 and 120 degrees

    fmdl= ng_mk_ellip_models([0,1.2,0.8],[0;90;120],[0.2,0,0.03]); 
show_fem(fmdl);

3D cylinder. Various elecs at 0, 30, 60, 90 in planes

    el_pos = [0,0.5;30,1;60,1.5;90,2.0];
    el_sz  = [0.2,0,0.1;0.1,0,0.05;0.2,0.2,0.02;0.2,0.4,0.5];
    fmdl= ng_mk_ellip_models([3,0.8,1.2],el_pos,el_sz); 
show_fem(fmdl);

Simple 3D cylinder with a ball

    extra={'ball','solid ball = sphere(0.5,0.5,1;0.4);'};
    fmdl= ng_mk_ellip_models([2,1.2,0.8],[8,1],[0.1],extra); 
    img= mk_image(fmdl, 1);
    img.elem_data(fmdl.mat_idx{2}) = 2;
show_fem(img);

3D cylinder with a two separate balls

b1 = 'solid ball1= sphere(0.5, 0.5,1;0.2);';
b2 = 'solid ball2= sphere(0.5,-0.5,1;0.2);';
extra = {'ball1','ball2',[b1,b2]};
[fmdl,mat_idx]= ng_mk_ellip_models([2,1.2,0.8],[8,1],[0.1],extra);
img= mk_image(fmdl, 1);
img.elem_data(mat_idx{2}) = 2; 
img.elem_data(mat_idx{3}) = 0.5;
show_fem(img);

Last Modified: $Date: 2017-02-28 13:12:08 -0500 (Tue, 28 Feb 2017) $ by $Author: aadler $