# Created by Octave 3.2.4, Fri Sep 16 10:09:39 2011 UTC <root@atlan>
# name: cache
# type: cell
# rows: 3
# columns: 24
# name: <cell-element>
# type: string
# elements: 1
# length: 25
bim1a_advection_diffusion
# name: <cell-element>
# type: string
# elements: 1
# length: 839
 -- Function File: [A] =
          bim1a_advection_diffusion(MESH,ALPHA,GAMMA,ETA,BETA)
     Build the Scharfetter-Gummel stabilized stiffness matrix for a
     diffusion-advection problem.

     The equation taken into account is:

     - (ALPHA * GAMMA (ETA u' - BETA u ))' = f

     where ALPHA is an element-wise constant scalar function, ETA and
     GAMMA are piecewise linear conforming scalar functions, BETA is an
     element-wise constant vector function.

     Instead of passing the vector field BETA directly one can pass a
     piecewise linear conforming scalar function  PHI as the last
     input.  In such case BETA = grad PHI is assumed.

     If PHI is a single scalar value BETA is assumed to be 0 in the
     whole domain.

     See also: bim1a_rhs, bim1a_reaction, bim1a_laplacian,
     bim2a_advection_diffusion



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the Scharfetter-Gummel stabilized stiffness matrix for a
diffusion-advecti

# name: <cell-element>
# type: string
# elements: 1
# length: 22
bim1a_advection_upwind
# name: <cell-element>
# type: string
# elements: 1
# length: 613
 -- Function File: [A] = bim1a_advection_upwind (MESH, BETA)
     Build the UW stabilized stiffness matrix for an advection problem.

     The equation taken into account is:

     (BETA u)' = f

     where BETA is an element-wise constant.

     Instead of passing the vector field BETA directly one can pass a
     piecewise linear conforming scalar function  PHI as the last
     input.  In such case BETA = grad PHI is assumed.

     If PHI is a single scalar value BETA is assumed to be 0 in the
     whole domain.

     See also: bim1a_rhs, bim1a_reaction, bim1a_laplacian,
     bim2a_advection_diffusion



# name: <cell-element>
# type: string
# elements: 1
# length: 66
Build the UW stabilized stiffness matrix for an advection problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 15
bim1a_laplacian
# name: <cell-element>
# type: string
# elements: 1
# length: 468
 -- Function File: A = bim1a_laplacian (MESH,EPSILON,KAPPA)
     Build the standard finite element stiffness matrix for a diffusion
     problem.

     The equation taken into account is:

     - (EPSILON * KAPPA ( u' ))' = f

     where EPSILON is an element-wise constant scalar function, while
     KAPPA is a piecewise linear conforming scalar function.

     See also: bim1a_rhs, bim1a_reaction, bim1a_advection_diffusion,
     bim2a_laplacian, bim3a_laplacian



# name: <cell-element>
# type: string
# elements: 1
# length: 75
Build the standard finite element stiffness matrix for a diffusion
problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 14
bim1a_reaction
# name: <cell-element>
# type: string
# elements: 1
# length: 443
 -- Function File: [C] = bim1a_reaction(MESH,DELTA,ZETA)
     Build the lumped finite element mass matrix for a diffusion
     problem.

     The equation taken into account is:

     DELTA * ZETA * u = f

     where DELTA is an element-wise constant scalar function, while
     ZETA is a piecewise linear conforming scalar function.

     See also: bim1a_rhs, bim1a_advection_diffusion, bim1a_laplacian,
     bim2a_reaction, bim3a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 68
Build the lumped finite element mass matrix for a diffusion problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 9
bim1a_rhs
# name: <cell-element>
# type: string
# elements: 1
# length: 446
 -- Function File: [B] = bim1a_rhs(MESH,F, G)
     Build the finite element right-hand side of a diffusion problem
     employing mass-lumping.

     The equation taken into account is:

     DELTA * u = f * g

     where F is an element-wise constant scalar function, while G is a
     piecewise linear conforming scalar function.

     See also: bim1a_reaction, bim1a_advection_diffusion,
     bim1a_laplacian, bim2a_reaction, bim3a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the finite element right-hand side of a diffusion problem
employing mass-l

# name: <cell-element>
# type: string
# elements: 1
# length: 25
bim2a_advection_diffusion
# name: <cell-element>
# type: string
# elements: 1
# length: 1637
 -- Function File: [A] =
          bim2a_advection_diffusion(MESH,ALPHA,GAMMA,ETA,BETA)
     Build the Scharfetter-Gummel stabilized stiffness matrix for a
     diffusion-advection problem.

     The equation taken into account is:

     - (ALPHA * GAMMA (ETA u' - BETA u ))' = f

     where ALPHA is an element-wise constant scalar function, ETA and
     GAMMA are piecewise linear conforming scalar functions, BETA is an
     element-wise constant vector function.

     Instead of passing the vector field BETA directly one can pass a
     piecewise linear conforming scalar function  PHI as the last
     input.  In such case BETA = grad PHI is assumed.

     If PHI is a single scalar value BETA is assumed to be 0 in the
     whole domain.

     Example:
          mesh = msh2m_structured_mesh([0:1/3:1],[0:1/3:1],1,1:4);
          mesh = bim2c_mesh_properties(mesh);
          x    = mesh.p(1,:)';

          Dnodes    = bim2c_unknowns_on_side(mesh,[2,4]);
          Nnodes    = columns(mesh.p);
          Nelements = columns(mesh.t);
          Varnodes  = setdiff(1:Nnodes,Dnodes);

          alpha  = ones(Nelements,1);
          eta    = .1*ones(Nnodes,1);
          beta   = [ones(1,Nelements);zeros(1,Nelements)];
          gamma  = ones(Nnodes,1);
          f      = bim2a_rhs(mesh,ones(Nnodes,1),ones(Nelements,1));

          S   = bim2a_advection_diffusion(mesh,alpha,gamma,eta,beta);
          u   = zeros(Nnodes,1);
          uex = x - (exp(10*x)-1)/(exp(10)-1);

          u(Varnodes) = S(Varnodes,Varnodes)\f(Varnodes);

          assert(u,uex,1e-7)

     See also: bim2a_rhs, bim2a_reaction, bim2c_mesh_properties



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the Scharfetter-Gummel stabilized stiffness matrix for a
diffusion-advecti

# name: <cell-element>
# type: string
# elements: 1
# length: 22
bim2a_advection_upwind
# name: <cell-element>
# type: string
# elements: 1
# length: 604
 -- Function File: [A] = bim2a_advection_upwind (MESH, BETA)
     Build the UW stabilized stiffness matrix for an advection problem.

     The equation taken into account is:

     (BETA u )' = f

     where BETA is an element-wise constant vector function.

     Instead of passing the vector field BETA directly one can pass a
     piecewise linear conforming scalar function  PHI as the last
     input.  In such case BETA = grad PHI is assumed.

     If PHI is a single scalar value BETA is assumed to be 0 in the
     whole domain.

     See also: bim2a_rhs, bim2a_reaction, bim2c_mesh_properties



# name: <cell-element>
# type: string
# elements: 1
# length: 66
Build the UW stabilized stiffness matrix for an advection problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 19
bim2a_boundary_mass
# name: <cell-element>
# type: string
# elements: 1
# length: 456
 -- Function File: [M] = bim2a_boundary_mass(MESH,SIDELIST,NODELIST)
     Build the lumped boundary mass matrix needed to apply Robin
     boundary conditions.

     The vector SIDELIST contains the list of the side edges
     contributing to the mass matrix.

     The optional argument NODELIST contains the list of the degrees of
     freedom on the boundary.

     See also: bim2a_rhs, bim2a_advection_diffusion, bim2a_laplacian,
     bim2a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the lumped boundary mass matrix needed to apply Robin boundary
conditions.

# name: <cell-element>
# type: string
# elements: 1
# length: 15
bim2a_laplacian
# name: <cell-element>
# type: string
# elements: 1
# length: 468
 -- Function File: A = bim2a_laplacian (MESH,EPSILON,KAPPA)
     Build the standard finite element stiffness matrix for a diffusion
     problem.

     The equation taken into account is:

     - (EPSILON * KAPPA ( u' ))' = f

     where EPSILON is an element-wise constant scalar function, while
     KAPPA is a piecewise linear conforming scalar function.

     See also: bim2a_rhs, bim2a_reaction, bim2a_advection_diffusion,
     bim1a_laplacian, bim3a_laplacian



# name: <cell-element>
# type: string
# elements: 1
# length: 75
Build the standard finite element stiffness matrix for a diffusion
problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 14
bim2a_reaction
# name: <cell-element>
# type: string
# elements: 1
# length: 443
 -- Function File: [C] = bim2a_reaction(MESH,DELTA,ZETA)
     Build the lumped finite element mass matrix for a diffusion
     problem.

     The equation taken into account is:

     DELTA * ZETA * u = f

     where DELTA is an element-wise constant scalar function, while
     ZETA is a piecewise linear conforming scalar function.

     See also: bim2a_rhs, bim2a_advection_diffusion, bim2a_laplacian,
     bim1a_reaction, bim3a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 68
Build the lumped finite element mass matrix for a diffusion problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 9
bim2a_rhs
# name: <cell-element>
# type: string
# elements: 1
# length: 445
 -- Function File: [B] = bim2a_rhs(MESH,F,G)
     Build the finite element right-hand side of a diffusion problem
     employing mass-lumping.

     The equation taken into account is:

     DELTA * u = f * g

     where F is an element-wise constant scalar function, while G is a
     piecewise linear conforming scalar function.

     See also: bim2a_reaction, bim2a_advection_diffusion,
     bim2a_laplacian, bim1a_reaction, bim3a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the finite element right-hand side of a diffusion problem
employing mass-l

# name: <cell-element>
# type: string
# elements: 1
# length: 17
bim2c_global_flux
# name: <cell-element>
# type: string
# elements: 1
# length: 868
 -- Function File: [JX,JY] =
          bim2c_global_flux(MESH,U,ALPHA,GAMMA,ETA,BETA)
     Compute the flux associated with the Scharfetter-Gummel
     approximation of the scalar field U.

     The vector field is defined as:

     J(U) = ALPHA* GAMMA * (ETA * grad U - BETA * U))

     where ALPHA is an element-wise constant scalar function, ETA and
     GAMMA are piecewise linear conforming scalar functions, while BETA
     is element-wise constant vector function.

     J(U) is an element-wise constant vector function.

     Instead of passing the vector field BETA directly one can pass a
     piecewise linear conforming scalar function  PHI as the last
     input.  In such case BETA = grad PHI  is assumed.  If PHI is a
     single scalar value BETA  is assumed to be 0 in the whole domain.

     See also: bim2c_pde_gradient, bim2a_advection_diffusion



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Compute the flux associated with the Scharfetter-Gummel approximation
of the sca

# name: <cell-element>
# type: string
# elements: 1
# length: 21
bim2c_mesh_properties
# name: <cell-element>
# type: string
# elements: 1
# length: 271
 -- Function File: [OMESH] = bim2c_mesh_properties(IMESH)
     Compute the properties of IMESH needed by BIM method and append
     them to OMESH as fields.

     See also: bim2a_reaction, bim2a_advection_diffusion, bim2a_rhs,
     bim2a_laplacian, bim2a_boundary_mass



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Compute the properties of IMESH needed by BIM method and append them to
OMESH as

# name: <cell-element>
# type: string
# elements: 1
# length: 18
bim2c_pde_gradient
# name: <cell-element>
# type: string
# elements: 1
# length: 177
 -- Function File: [GX,GY] = bim2c_pde_gradient(MESH,U)
     Compute the gradient of the piecewise linear conforming scalar
     function U.

     See also: bim2c_global_flux



# name: <cell-element>
# type: string
# elements: 1
# length: 74
Compute the gradient of the piecewise linear conforming scalar function
U.

# name: <cell-element>
# type: string
# elements: 1
# length: 18
bim2c_tri_to_nodes
# name: <cell-element>
# type: string
# elements: 1
# length: 631
 -- Function File: U_NOD = bim2c_tri_to_nodes (MESH, U_TRI)
 -- Function File: U_NOD = bim2c_tri_to_nodes (M_TRI, U_TRI)
 -- Function File: [U_NOD, M_TRI] = bim2c_tri_to_nodes ( ... )
     Compute interpolated values at triangle nodes U_NOD given values
     at triangle mid-points U_TRI.  If called with more than one
     output, also return the interpolation matrix M_TRI such that
     `u_nod = m_tri * u_tri'.  If repeatedly performing interpolation
     on the same mesh the matrix M_TRI obtained by a previous call to
     `bim2c_tri_to_nodes' may be passed as input to avoid unnecessary
     computations.

     See also



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Compute interpolated values at triangle nodes U_NOD given values at
triangle mid

# name: <cell-element>
# type: string
# elements: 1
# length: 22
bim2c_unknowns_on_side
# name: <cell-element>
# type: string
# elements: 1
# length: 256
 -- Function File: [NODELIST] = bim2c_unknowns_on_side(MESH,SIDELIST)
     Return the list of the mesh nodes that lie on the geometrical sides
     specified in SIDELIST.

     See also: bim3c_unknown_on_faces, bim2c_pde_gradient,
     bim2c_global_flux



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Return the list of the mesh nodes that lie on the geometrical sides
specified in

# name: <cell-element>
# type: string
# elements: 1
# length: 25
bim3a_advection_diffusion
# name: <cell-element>
# type: string
# elements: 1
# length: 456
 -- Function File: [A] = bim3a_advection_diffusion (MESH, ALPHA, V)
     Build the Scharfetter-Gummel stabilized stiffness matrix for a
     diffusion-advection problem.

     The equation taken into account is:

     - (ALPHA ( u' - V' u ))' = f

     where V is a piecewise linear continuous scalar functions and
     ALPHA is a piecewise constant scalar function.

     See also: bim3a_rhs, bim3a_reaction, bim3a_laplacian,
     bim3c_mesh_properties



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the Scharfetter-Gummel stabilized stiffness matrix for a
diffusion-advecti

# name: <cell-element>
# type: string
# elements: 1
# length: 15
bim3a_laplacian
# name: <cell-element>
# type: string
# elements: 1
# length: 443
 -- Function File: A = bim3a_laplacian (MESH, EPSILON, KAPPA)
     Build the standard finite element stiffness matrix for a diffusion
     problem.

     The equation taken into account is:

     - (EPSILON * KAPPA ( u' ))' = f

     where EPSILON is an element-wise constant scalar function, while
     KAPPA is a piecewise linear conforming scalar function.

     See also: bim3a_rhs, bim3a_reaction, bim2a_laplacian,
     bim3a_laplacian



# name: <cell-element>
# type: string
# elements: 1
# length: 75
Build the standard finite element stiffness matrix for a diffusion
problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 14
bim3a_reaction
# name: <cell-element>
# type: string
# elements: 1
# length: 417
 -- Function File: [C] = bim3a_reaction (MESH,DELTA,ZETA)
     Build the lumped finite element mass matrix for a diffusion
     problem.

     The equation taken into account is:

     DELTA * ZETA * u = f

     where DELTA is an element-wise constant scalar function, while
     ZETA is a piecewise linear conforming scalar function.

     See also: bim3a_rhs, bim3a_laplacian, bim2a_reaction,
     bim3a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 68
Build the lumped finite element mass matrix for a diffusion problem.

# name: <cell-element>
# type: string
# elements: 1
# length: 9
bim3a_rhs
# name: <cell-element>
# type: string
# elements: 1
# length: 420
 -- Function File: [B] = bim3a_rhs (MESH, F, G)
     Build the finite element right-hand side of a diffusion problem
     employing mass-lumping.

     The equation taken into account is:

     DELTA * u = f * g

     where F is an element-wise constant scalar function, while G is a
     piecewise linear conforming scalar function.

     See also: bim3a_reaction, bim3_laplacian, bim1a_reaction,
     bim2a_reaction



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Build the finite element right-hand side of a diffusion problem
employing mass-l

# name: <cell-element>
# type: string
# elements: 1
# length: 21
bim3c_mesh_properties
# name: <cell-element>
# type: string
# elements: 1
# length: 218
 -- Function File: [OMESH] = bim3c_mesh_properties(IMESH)
     Compute the properties of IMESH needed by BIM method and append
     them to OMESH as fields.

     See also: bim3a_reaction, bim3a_rhs, bim3a_laplacian



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Compute the properties of IMESH needed by BIM method and append them to
OMESH as

# name: <cell-element>
# type: string
# elements: 1
# length: 23
bim3c_unknowns_on_faces
# name: <cell-element>
# type: string
# elements: 1
# length: 257
 -- Function File: [NODELIST] = bim3c_unknowns_on_faces(MESH,FACELIST)
     Return the list of the mesh nodes that lie on the geometrical faces
     specified in FACELIST.

     See also: bim3c_unknown_on_faces, bim2c_pde_gradient,
     bim2c_global_flux



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Return the list of the mesh nodes that lie on the geometrical faces
specified in

# name: <cell-element>
# type: string
# elements: 1
# length: 14
bimu_bernoulli
# name: <cell-element>
# type: string
# elements: 1
# length: 170
 -- Function File: [BP, BN] = bimu_bernoulli (X)
     Compute the values of the Bernoulli function corresponding to X
     and - X arguments.

     See also: bimu_logm



# name: <cell-element>
# type: string
# elements: 1
# length: 80
Compute the values of the Bernoulli function corresponding to X and - X
argument

# name: <cell-element>
# type: string
# elements: 1
# length: 9
bimu_logm
# name: <cell-element>
# type: string
# elements: 1
# length: 139
 -- Function File: [T] = bimu_logm (T1,T2)
     Input:
        - T1:

        - T2:

     Output:
        - T:

     See also: bimu_bern



# name: <cell-element>
# type: string
# elements: 1
# length: 16
Input:
   - T1:


