Abstract
The majority of carbon on earth is in the form of soil organic matter. And its degradation by microorganisms leads to the remineralization of carbon as carbon dioxide. The microbial activity causes a reduction of soil carbon and increases atmospheric carbon. However, most models of organic matter do not explicitly take into account this reality. We try to answer these questions by developing and validating a model describing the action of microorganisms on degradation of organic matter. We use simulation domain as the pores in the soil modeled by a network of balls. The model is solved numerically in the balls by the finite element method with the solver of partial differential equations (PDEs) Freefem3d. We compare the numerical results with experimental data on the mineralization of soil carbon.
Similar content being viewed by others
References
Allison, S.D.: Cheaters, diffusion and nutrients constrain decomposition by microbial enzymes in spatially structured environments. Ecol. Lett. 8, 626–635 (2005)
Coucheney, E.: Effets Combinés de Facteurs Climatiques et de la Diversité sur le Fonctionnement de Communautés Bactériennes: Respiration et Métabolomique. Université Pierre et Marie Curie (2009)
Del Pino, S., Pironneau, O.: Asymptotic analysis and layer decomposition for the couplex exercise. Comput. Geosci. 8, 149–162 (2004)
Dobrzynski, C., Frey, P.J., Mohammadi, B., Pironneau, O.: Fast and accurate simulations of air-cooled structures. Comput. Methods Appl. Mech. Eng. 195, 3168–3180 (2006)
Falconer, R.E., Bown, J.L., White, N.A., Crawford, J.W.: Biomass recycling: a key to efficient foraging by fungal colonies. OIKOS 116, 1558–1568 (2007)
Fang, C., Smith, P., Smith, J.U., Monrieff, J.B.: Incorporating microorganisms as decomposers into models to simulate soil organic matter decomposition. Geoderma 129, 139–146 (2005)
Ingwersena, J., Pollb, C., Strecka, T., Kandelerb, E.: Micro-scale modelling of carbon turnover driven by microbial succession at a biogeochemical interface. Soil Biol. Biochem. 40, 864–878 (2008)
George, P.L., Borouchaki, H.: Premières expériences de maillage automatique par une méthode de Delaunay anisotrope en trois dimensions. RT-027, Inria (2002)
Gignoux, J., House, J., Hall, D., Masse, D., Nacro, H.B., Abbadie, L.: Design and test of a generic cohort model of soil organic matter decomposition: the SOMKO model. Glob. Ecol. Biogeogr. 10, 639–660 (2001)
Killham, K., Amato, M., Ladd, J.N.: Effect of substrate location in soil and soil pore-water regime on carbon turnover. Soil Biol. Biochem. 25, 57–62 (1993)
Long, T., Or, D.: Aquatic habitats and diffusion constraints affecting microbial coexistence in unsaturated porous media. Water Resour. Res. 41 (2005). doi:10.1029/2004WR003796
Marilleau, N., Cambier, C., Drogoul, A., Chotte, J.L., Perrier, E., Blanchart, E.: Multiscale MAS modelling to simulate the soil environment: Application to soil ecology. Simul. Model. Pract. Theory 16, 736–745 (2008)
Manzoni, S., Porporato, A.: Soil carbon and nitrogen mineralization: theory and models across scales. Soil Biochem. 41, 1355–1379 (2009)
Monga, O., Bousso, M., Garnier, P., Pot, V.: 3D geometric structures and biological activity: Application to microbial soil organic matter decomposition in pore space. Ecol. Model. 216, 291–302 (2008)
Monga, O., Bousso, M., Garnier, P., Pot, V.: Using pore space 3D geometrical modelling to simulate biological activity: impact of soil structure. Comput. Geosci. 35, 1789–1801 (2009)
Monga, O., Ngom, N.F., Delerue, J.F.: Representing geometric structures in 3D tomography soil images: Application to pore-space modeling. Comput. Geosci. 33, 1140–1161 (2007)
Murray, J.D.: Mathematical Biology. I. An Introduction. Springer, New York (2003)
Schimel, J.P., Weintraub, M.N.: The implications of exoenzyme activity on microbial carbon and nitrogen limitation in soil: a theoretical model. Soil Biol. Biochem. 35, 549–563 (2003)
Semenov, M.A., Halford, N.G.: Identifying target traits and molecular mechanisms for wheat breeding under a changing climate. J. Exp. Bot. 60, 2791–2804 (2009)
Tartakovsky, A.M, Scheibe, T.D, Meakin, P.: Pore-scale model for reactive transport and biomass growth. J. Porous Media 12, 417–434 (2009)
Treves, D.S., Xia, B., Zhou, J., Tiedje, J.M.: A two-species test of the hypothesis that spatial isolation influences microbial diversity in soil. Microb. Ecol. 45, 20–28 (2003)
Vetter, Y.A, Deming, J.W., Jumars, P.A, Krieger-Brockett, B.B.: A predictive model of bacterial foraging by means of freely released extracellular enzymes. Microb. Ecol. 36, 75–92 (1998)
Acknowledgments
This work was done while the second author was at Vietnam Institute for Advanced Study in Mathematics (VIASM). The work was partially supported by the project VAST.DLT.01/12-13. The authors would like to thank anonymous referees for their valuable comments.
Author information
Authors and Affiliations
Corresponding author
Appendices
Appendix A: Numerical Scheme
1.1 A.1 Variational Formulation
We simplify the system writing by transforming it into a vector form by defining:
and
The diffusion coefficients matrix \(\underline {D}\) is defined as follows:
The reaction terms of equations are represented by functions F i , i = 1,2,…,6 defined as follows:
and
The vector form of the system is
Assuming that data are sufficiently regular, the variational formulation consists in finding a function u(t)∈(H 1(Ω))6 such that:
After building a mesh Ωh of domain Ω, we solve variational formulation in the following discrete space:
A.2 Numerical Scheme
We discretize the problem via finite element method in the finite dimensional space V h . The problem consists in solving the following system
where
and
Ndof is the number of freedom degrees. The sequence (ϕ i )1 ≤ i ≤ Ndof defines the basis functions of the space V h.
We use an explicit scheme to discretize time. We denote by N t the number of time steps. The time step is \(dt =\frac {T}{N_{\mathrm {t}}}\). The numerical scheme is:
which can be as follows:
where I is the identity matrix and U n is the solution at time n∗dt.
We give in annex B the Freefem3d code we implement for solving the system.
Appendix B: Algorithm Code Using Freefem3d
The freefem3d code corresponding to the algorithm is the following one:
mesh H = structured((64,64,64),(0,0,0),(1,1,1));
// reading the pore space mesh
function PHI = read(medit,"image.bb",H);
ᅟ
// extract the mesh of the pore space
ᅟ
domain D = domain(PHI>0);
ᅟ
mesh M = tetrahedrize(D,H);
ᅟ
// reaction functions
femfunction f1(M);
femfunction f2(M);
femfunction f3(M);
femfunction f4(M);
femfunction f5(M);
femfunction f6(M);
femfunction ue1(M);
femfunction ue2(M);
femfunction ue3(M);
femfunction ue4(M);
femfunction ue5(M);
femfunction ue6(M);
ᅟ
// parameters double d1 = 1;
double d2 = 1;
double d3 = 1;
double d4 = 1;
double d5 = 1;
double d6 = 1;
double k = 17;
double Kb = 0.0005;
double Km = 0.0005;
double r = 0.2;
double mmu = 1.5;
double nnu = 0;
double zet = 0;
double c1 = 0;
double c2 = 0;
double dt = 0.0416667;
double T = 0;
function Id = 1;
femfunction u1(M) = 6.5⋆10̂-6/int[M](Id);
femfunction u2(M) = 300⋆cos(x⋆y)/int[M](cos(x⋆y)⋆Id);
femfunction u3(M) = 0;
femfunction u4(M) = 0;
femfunction u5(M) = 0;
femfunction u6(M) = 0;
ᅟ
ofstream masse = ofstream("masse.dat");
ᅟ
// save the solutions
masse <<0<<" "<<int[M](u1)<<" "
<<int[M](u2)<<" " <<int[M](u3)<<" "<<int[M](u4)<<" "
<<int[M](u5)<<" "<<int[M](u6)<<"\n";
for(double t=1;t<=168;t++)
{
// save the previous solution
ᅟ
ue1 = u1;
ue2 = u2;
ue3 = u3;
ue4 = u4;
ue5 = u5;
ue6 = u6;
ᅟ
f1 = k⋆ue1⋆ue2/(Kb+ue1)-(mmu+r+nnu)⋆ue1;
f2 = -k⋆ue1⋆ue2/(Kb+ue1)+0.5⋆(zet⋆ue5+mmu⋆ue1)
+(c1⋆ue3+c2⋆ue4)⋆ue5/(Km+ue5);
f3 = -c1⋆ue3⋆ue5/(Km+ue5)+0.5⋆(zet⋆ue5+mmu⋆ue1);
f4 = -c2⋆ue4⋆ue5/(Km+ue5);
f5 = nnu⋆ue1-zet⋆ue5;
f6 = r⋆ue1;
ᅟ
solve(u1,u2,u3,u4,u5,u6) in M
{
test(v1,v2,v3,v4,v5,v6)
int(u1⋆v1) + int(dt⋆d1⋆grad(u1)⋆grad(v1))+
int(u2⋆v2) + int(dt⋆d2⋆grad(u2)⋆grad(v2))+
int(u3⋆v3) + int(dt⋆d3⋆grad(u3)⋆grad(v3))+
int(u4⋆v4) + int(dt⋆d4⋆grad(u4)⋆grad(v4))+
int(u5⋆v5) + int(dt⋆d5⋆grad(u5)⋆grad(v5))+
int(u6⋆v6) + int(dt⋆d6⋆grad(u6)⋆grad(v6))
=
int((ue1+dt⋆f1)⋆v1)+
int((ue2+dt⋆f2)⋆v2)+
int((ue3+dt⋆f3)⋆v3)+
int((ue4+dt⋆f4)⋆v4)+
int((ue5+dt⋆f5)⋆v5)+
int((ue6+dt⋆f6)⋆v6);
}
T = T + dt;
ᅟ
// save the solutions masse <<T<<" "<<int[M](u1)<<" "
<<int[M](u2)<<" " <<int[M](u3)<<" "<<int[M](u4)<<" "
<<int[M](u5)<<" "<<int[M](u6)<<"\n"; }
1.1 Appendix C: Reducing the Image Size by Using Octree Method
To compute the solution requires important memory and computing time costs. So, we need to improve calculations cost by reducing the size of the image sample. The method consists in reducing the number of voxels of the image by applying the octree method on the image. In this section, we describe the algorithm written in C++ language. We define the table colourtab such that colourtab[x][y][z] represents the voxels whose coordinates are (x, y, z). dim is the number of subdivisions of each size of the image sample. The statement of colourtab is:
float colourtab[dim][dim][dim];
We define a function CreateCell to implement octree structure from the set of eight voxels. Its inputs are the lower coordinates of the voxels constituting the collection.
void CreateCell(int x,int y,int z)
{
float colour;
ᅟ
// updating data
ᅟ
colour = (tabcolour[x][y][z] + tabcolour[x+1][y][z] +
tabcolour[x+1][y+1][z] + tabcolour[x][y+1][z] +
tabcolour[x][y][z+1] + tabcolour[x+1][y][z+1]+
tabcolour[x+1][y+1][z+1] + tabcolour[x][y+1][z+1])/8;
ᅟ
//saving the results in a file whose identifier is output output
ᅟ
<<x/2<<" "<<y/2<<" "<<z/2<<" "<<(colour>=(1/8)) <<endl;
}
ᅟ
The function CreateOctree creates the approximate image.
void CreateOctree()
{
int x, y, z;
x = 0;
while(x < dim)
{
y = 0;
while(y < dim)
{
z = 0;
while(z < dim)
{
CreateCell(x,y,z);
z += 2;
}
y += 2;
}
x += 2;
}
}
Rights and permissions
About this article
Cite this article
Lèye, B., Nguyen-Ngoc, D., Monga, O. et al. Simulating Biological Dynamics Using Partial Differential Equations: Application to Decomposition of Organic Matter in 3D Soil Structure. Vietnam J. Math. 43, 801–817 (2015). https://doi.org/10.1007/s10013-015-0159-6
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10013-015-0159-6