From 892e61d03de2ebb341c211ca42fcf30c4a0ecfc2 Mon Sep 17 00:00:00 2001
From: Benjamin Faigle <benjamin.faigle@posteo.de>
Date: Mon, 20 Feb 2012 10:21:49 +0000
Subject: [PATCH] remove volume-derivatives functions of the old model which
 was totally accidentially comitted. This will also remove the strange and
 unnecessary warning.

git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@7823 2fb0f335-1f38-0410-981e-8018bf24f1b0
---
 .../decoupled/2p2c/fvpressurecompositional.hh | 121 ------------------
 1 file changed, 121 deletions(-)

diff --git a/dumux/decoupled/2p2c/fvpressurecompositional.hh b/dumux/decoupled/2p2c/fvpressurecompositional.hh
index 4b3b43f5ea..d3d03aa7f6 100644
--- a/dumux/decoupled/2p2c/fvpressurecompositional.hh
+++ b/dumux/decoupled/2p2c/fvpressurecompositional.hh
@@ -605,8 +605,6 @@ void FVPressureCompositional<TypeTag>::initialMaterialLaws(bool compositional)
  * \param globalPos The global position of the current element
  * \param ep A pointer to the current element
  */
-#if 1
-#warning decide which one!!!
 template<class TypeTag>
 void FVPressureCompositional<TypeTag>::volumeDerivatives(const GlobalPosition& globalPos, const Element& element)
 {
@@ -717,125 +715,6 @@ void FVPressureCompositional<TypeTag>::volumeDerivatives(const GlobalPosition& g
     }
     cellData.confirmVolumeDerivatives();
 }
-#else
-template<class TypeTag>
-void FVPressureCompositional<TypeTag>::volumeDerivatives(const GlobalPosition& globalPos, const Element& element)
-{
-    // cell index
-    int globalIdx = problem_.variables().index(element);
-
-    CellData& cellData = problem_.variables().cellData(globalIdx);
-
-    // get cell temperature
-    Scalar temperature_ = problem_.temperatureAtPos(globalPos);
-
-    // initialize an Fluid state for the update
-    FluidState updFluidState;
-
-    /**********************************
-     * a) get necessary variables
-     **********************************/
-    //determine phase pressures from primary pressure variable
-    PhaseVector pressure(0.);
-    switch (pressureType)
-    {
-    //TODO: use pressure from cellData here
-        case pw:
-        {
-            pressure[wPhaseIdx] = this->pressure()[globalIdx];
-            pressure[nPhaseIdx] = this->pressure()[globalIdx]
-                          + cellData.capillaryPressure();
-            break;
-        }
-        case pn:
-        {
-            pressure[wPhaseIdx] = this->pressure()[globalIdx]
-                          - cellData.capillaryPressure();
-            pressure[nPhaseIdx] = this->pressure()[globalIdx];
-            break;
-        }
-    }
-
-    // mass of components inside the cell
-    ComponentVector mass(0.);
-    mass[0] = cellData.massConcentration(wCompIdx);
-    mass[1] = cellData.massConcentration(nCompIdx);
-
-    // shortcuts for density
-    Scalar densityW = cellData.density(wPhaseIdx);
-    Scalar densityNW = cellData.density(nPhaseIdx);
-
-    // actual fluid volume
-    Scalar volalt = (mass[0]+mass[1])
-            * (cellData.phaseMassFraction(wPhaseIdx) / densityW
-                    + cellData.phaseMassFraction(nPhaseIdx) / densityNW);
-
-    /**********************************
-     * b) define increments
-     **********************************/
-    // increments for numerical derivatives
-    ComponentVector massIncrement(0.);
-    massIncrement[0] = updateEstimate_[wCompIdx][globalIdx];
-    massIncrement[1] = updateEstimate_[nCompIdx][globalIdx];
-    if(fabs(massIncrement[0]) < 1e-8 * densityW)
-        massIncrement[0] = 1e-8* densityW;
-    if(fabs(massIncrement[1]) < 1e-8 * densityNW)
-        massIncrement[1] = 1e-8 * densityNW;
-    Scalar incp = 1e-2;
-
-
-    /**********************************
-     * c) Secant method for derivatives
-     **********************************/
-
-    // numerical derivative of fluid volume with respect to pressure
-    PhaseVector p_(incp);
-    p_ += pressure;
-    Scalar Z1 = mass[0] / (mass[0] + mass[1]);
-    updFluidState.update(Z1,
-            p_, problem_.spatialParameters().porosity(globalPos, element), temperature_);
-    cellData.dv_dp() = (((mass[0]+mass[1]) * (updFluidState.phaseMassFraction(wPhaseIdx) /updFluidState.density(wPhaseIdx)
-            + updFluidState.phaseMassFraction(nPhaseIdx) /updFluidState.density(nPhaseIdx))) - volalt) /incp;
-
-    if (cellData.dv_dp()>0)
-    {
-        // dV_dp > 0 is unphysical: Try inverse increment for secant
-        Dune::dinfo << "dv_dp larger 0 at Idx " << globalIdx << " , try and invert secant"<< std::endl;
-
-        p_ -= 2*incp;
-        updFluidState.update(Z1,
-                    p_, problem_.spatialParameters().porosity(globalPos, element), temperature_);
-        cellData.dv_dp() = (((mass[0]+mass[1]) * (updFluidState.phaseMassFraction(wPhaseIdx) /updFluidState.density(wPhaseIdx)
-                + updFluidState.phaseMassFraction(nPhaseIdx) /updFluidState.density(nPhaseIdx))) - volalt) /incp;
-        // dV_dp > 0 is unphysical: Try inverse increment for secant
-        if (cellData.dv_dp()>0)
-        {
-            Dune::dinfo << "dv_dp still larger 0 after inverting secant"<< std::endl;
-        }
-    }
-
-    // numerical derivative of fluid volume with respect to mass of components
-    for (int comp = 0; comp<numComponents; comp++)
-    {
-        mass[comp] +=  massIncrement[comp];
-        Z1 = mass[0] / (mass[0] + mass[1]);
-        updFluidState.update(Z1, pressure, problem_.spatialParameters().porosity(globalPos, element), temperature_);
-
-        cellData.dv(comp) = ((mass[0]+mass[1])
-                * (updFluidState.phaseMassFraction(wPhaseIdx) / updFluidState.density(wPhaseIdx)
-                        + updFluidState.phaseMassFraction(nPhaseIdx) / updFluidState.density(nPhaseIdx)) - volalt)
-                / massIncrement[comp];
-        mass[comp] -= massIncrement[comp];
-
-        //check routines if derivatives are meaningful
-        if (isnan(cellData.dv(comp)) || isinf(cellData.dv(comp)) )
-        {
-            DUNE_THROW(Dune::MathError, "NAN/inf of dV_dm. If that happens in first timestep, try smaller firstDt!");
-        }
-    }
-    cellData.confirmVolumeDerivatives();
-}
-#endif
 
 }//end namespace Dumux
 #endif
-- 
GitLab