diff --git a/dune/mmdg/problems/mmdgproblem1.hh b/dune/mmdg/problems/mmdgproblem1.hh index f35a61ff999ac3eb073e87408dc67cf92c07a1b1..e1caa9b773a8869f508b410b0286097b6235eee2 100644 --- a/dune/mmdg/problems/mmdgproblem1.hh +++ b/dune/mmdg/problems/mmdgproblem1.hh @@ -37,14 +37,52 @@ public: //aperture d of the fracture at position pos Scalar aperture (const Coordinate& pos) const { + return d_ * (pos[1] + 0.01); return d_; } + //interface source term at position pos + Scalar qInterface (const Coordinate& pos) const + { + const Scalar de = aperture(pos); + const Scalar dPrime2 = gradAperture(pos) * gradAperture(pos); + const Scalar dPrimePrime = 0.0; + + return (-de * dPrimePrime - dPrime2) * de; + + return Scalar(0.0); + } + + //tangential gradient of the aperture d of the fracture at position pos + Coordinate gradAperture (const Coordinate& pos) const + { + Coordinate gradD(0.0); + gradD[1] = d_; + return gradD; + + return Coordinate(0.0); + } + + //tangential permeability per aperture tensor of the interface at position pos + Matrix Kparallel (const Coordinate& pos) const + { + Matrix permeability(0.0); + + for (int i = 0; i < dim; i++) + { + permeability[i][i] = 1.0 * aperture(pos); + } + + //return identity matrix + return permeability; + } + + //returns the recommended quadrature order to compute an integral //over x * boundary(x) int quadratureOrderBoundary () const { - return 2; + return 10;//2; } private: