Skip to content
Snippets Groups Projects
Commit 40376b86 authored by Andreas Lauser's avatar Andreas Lauser
Browse files

richards: make it compile with Scalar != double

git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@6566 2fb0f335-1f38-0410-981e-8018bf24f1b0
parent fa208537
No related branches found
No related tags found
No related merge requests found
......@@ -132,7 +132,10 @@ public:
Vector tmpVec;
fluxVars.intrinsicPermeability().mv(fluxVars.potentialGradW(),
tmpVec);
Scalar normalFlux = - (tmpVec*fluxVars.face().normal);
Scalar normalFlux = 0;
for (int i = 0; i < Vector::size; ++ i)
normalFlux += tmpVec[i] + fluxVars.face().normal[i];
normalFlux *= -1;
// data attached to upstream and the downstream vertices
// of the current phase
......
......@@ -150,21 +150,21 @@ public:
template <class MultiWriter>
void addOutputVtkFields(const SolutionVector &sol, MultiWriter &writer)
{
typedef Dune::BlockVector<Dune::FieldVector<Scalar, 1> > ScalarField;
typedef Dune::BlockVector<Dune::FieldVector<double, 1> > ScalarField;
// create the required scalar fields
unsigned numVertices = this->problem_().gridView().size(dim);
ScalarField *pW = writer.allocateManagedBuffer (numVertices);
ScalarField *pN = writer.allocateManagedBuffer (numVertices);
ScalarField *pC = writer.allocateManagedBuffer (numVertices);
ScalarField *Sw = writer.allocateManagedBuffer (numVertices);
ScalarField *Sn = writer.allocateManagedBuffer (numVertices);
ScalarField *rhoW = writer.allocateManagedBuffer (numVertices);
ScalarField *rhoN = writer.allocateManagedBuffer (numVertices);
ScalarField *mobW = writer.allocateManagedBuffer (numVertices);
ScalarField *mobN = writer.allocateManagedBuffer (numVertices);
ScalarField *poro = writer.allocateManagedBuffer (numVertices);
ScalarField *Te = writer.allocateManagedBuffer (numVertices);
ScalarField *pW = writer.allocateManagedBuffer(numVertices);
ScalarField *pN = writer.allocateManagedBuffer(numVertices);
ScalarField *pC = writer.allocateManagedBuffer(numVertices);
ScalarField *Sw = writer.allocateManagedBuffer(numVertices);
ScalarField *Sn = writer.allocateManagedBuffer(numVertices);
ScalarField *rhoW = writer.allocateManagedBuffer(numVertices);
ScalarField *rhoN = writer.allocateManagedBuffer(numVertices);
ScalarField *mobW = writer.allocateManagedBuffer(numVertices);
ScalarField *mobN = writer.allocateManagedBuffer(numVertices);
ScalarField *poro = writer.allocateManagedBuffer(numVertices);
ScalarField *Te = writer.allocateManagedBuffer(numVertices);
unsigned numElements = this->gridView_().size(0);
ScalarField *rank =
......
......@@ -102,7 +102,7 @@ public:
Scalar pN = std::max(this->problem_().referencePressure(*eIt, fvElemGeom, i),
pW + pcMin);
Scalar pcOld = pN - pW;
Scalar SwOld = std::max(0.0, MaterialLaw::Sw(mp, pcOld));
Scalar SwOld = std::max<Scalar>(0.0, MaterialLaw::Sw(mp, pcOld));
// convert into minimum and maximum wetting phase
// pressures
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment