Code / Software Modules 


DarcyLite  (Version 2.0.1 on 2023/07/27) 
How To Use DarcyLite      DarcyLite Release Notes
Matlab code package for simulations of flow and transport in porous media;
Mainly for 2-dim problems by the weak Galerkin (WG) finite element methods


Darcy+ (Version 1.3.3)
C++ code package for simulations of flow and transport in porous media;
Mainly for 3-dim problems by the weak Galerkin (WG)  finite element methods
(Block diagonal Schur complement implemented)

Deformation of nearly incompressible block obtained
              by WG(Q0^3,Q_0^3;RT0^3,Q_0)

LinLite (Linear Solvers Lite Pack)
This is a compact/lite package of C++ code for vectors, matrices, and linear solvers.
   LinSys.h   matrix.h   vector.h
   LinSys.cpp   matrix.cpp   vector.cpp
For solving large scale linear systems, we recommend PETSc and Trilinos.


ELLAM:  Eulerian-Lagrangian Localized Adjoint Methods     MHD eddy flow,
      Example 1  MHD eddy flow, Example 3MHD eddy flow, Example 3 

Maxwell3dSolvers

This is an ongoing collaborative research project.  Nonconforming finite elements, including the locally divergence-free (LDF) elements, are used to solve Maxwell source and eigenvalue problems on 3-dim unstructured tetrahedral meshes.  Preliminary results are very encouraging: no spurious eigenvaules for eigenproblems and optimal convergence rates for source problems.  About 3000 lines of C++ code have been developed and tested, and more are coming.

QuadFVM

We would like to share our C++ code for the quadratic finite volume element methods on quadrilateral meshes for elliptic and parabolic problems.  All the files listed below have been compressed into QuadFVM.zip
Ex2Fxns.h       
fve2.h
GaussQuad.h
LinSys.h
matrix.h
PtVec2d.h
Quadri2Mesh.h
subs.h
vector.h
Ex2Fxns.cpp
fve2.cpp
LinSys.cpp
main.cpp
matrix.cpp
PtVec2d.cpp
Quadri2Mesh.cpp
subs.cpp
vector.cpp  

Ex2QuadriMesh16.dat
Ex2QuadriMesh32.dat Ex2QuadriMesh64.dat
Ex2QuadriMesh8.dat



See our recently published paper for the mathematical details:
Min Yang and Jiangguo Liu,
A quadratic finite volume element method for parabolic problems on quadrilateral meshes, IMA J. Numer. Anal., 31(2011), pp.1038--1061. PDF

UTMC: Uniform Tetrahedral Meshes for Cubes (3-dim Rectangles)

happyface   Nothing is really mysterious in our code.  But in some circumstances, we just want an instant production of tetrahedral meshes, usually uniform meshes are OK, without mentioning they can also be used for exploring superconvergence of finite element methods.  C++, Fortran, Matlab codes are furnished.  TetView can be used to visualize your tetrahedral meshes.  For generation of unstructured tetrahedral meshes, we recommend Gmsh and Tetgen.
 
  
  
utmc.cpp 
  
utmc.f90 
   utmc.m   
  

UniTetraMesh4