EJIIM code for the 2D Poisson equation
simplified version: 05.01.2005
Vita Rutka, while at ITWM

Geometry data: codes by A. Wiegmann 
(Directory GEOM2D_WIEGMANN/)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

The main file: 
  driver.m

Geometry and computational parameters are set in 
ASSEMBLE/problem_setup.m

The right hand side and the boundary conditions are set in 
ASSEMBLE/set_rhs.m


The geometry pre-processor has to provide the 
intersection points (structure array IX) and inside/outside
information (array M)

Currently used (line 8 in POISSON_SOLVE)
  [IX,M] = make_geometry(ax,bx,xc,yc,R,GEOM);
is based on the spline approximation (ALW). It can be 
replaced by your favourite geometry preprocessor. The structure array
IX has to have fields
         coord: x and y coordinates of the intersections
         type : 'x' or 'y'. For later purposes they have to be
                 ordered, at first come all 'x'-type intersections
                 and then all 'y'-type.
         anch: indices of the achnor points   
         n   : normal
         t   : tangent
               The pair (n,t) forms the positively oriented
               coordinate system 
and the array M has values 1 at the inner grid points and 0 otherwise.


The file relations are as follows:
--------
|driver|
--------
   |
   v
-------------------------
|poisson_solve          |
|   ------------------  |
|   problem_setup       |
|   ------------------  |
|   make_grid           |
|   ------------------  |
|       ---------------------> make_geometry -> GEOMETRY PRE-PROCESSOR
|   ------------------  |
|   separate_boundaries |
|   ------------------- |
|   set_rhs             |
|   ------------------- |
|   run_ejiim  --------------> sysmatrix_poisson
|              --------------> corrections
|              --------------> d_matrix
|   ------------------- |
|   visualise_solution  |
|   ------------------- |
-------------------------





