diff --git a/dumux/decoupled/2p2c/cellData2p2c.hh b/dumux/decoupled/2p2c/cellData2p2c.hh index 72a134208e2ef956e797ae188712574eb2ebea7d..edb6f0ac9de27f337ff1150e5b1ca118e087082b 100644 --- a/dumux/decoupled/2p2c/cellData2p2c.hh +++ b/dumux/decoupled/2p2c/cellData2p2c.hh @@ -286,23 +286,23 @@ public: /*** b) from fluidstate ***/ - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::setSaturation() + //! \copydoc Dumux::TwoPTwoCFluidState::setSaturation() void setSaturation(int phaseIdx, Scalar value) { fluidState_->setSaturation(phaseIdx, value); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::saturation() + //! \copydoc Dumux::TwoPTwoCFluidState::saturation() const Scalar saturation(int phaseIdx) const { return fluidState_->saturation(phaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::setViscosity() + //! \copydoc Dumux::TwoPTwoCFluidState::setViscosity() void setViscosity(int phaseIdx, Scalar value) { fluidState_->setViscosity(phaseIdx, value); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::viscosity() + //! \copydoc Dumux::TwoPTwoCFluidState::viscosity() const Scalar viscosity(int phaseIdx) const { return fluidState_->viscosity(phaseIdx); @@ -316,31 +316,31 @@ public: return fluidState_->pressure(nPhaseIdx) - fluidState_->pressure(wPhaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::density() + //! \copydoc Dumux::TwoPTwoCFluidState::density() const Scalar density(int phaseIdx) const { return (fluidState_->density(phaseIdx)); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::massFraction() + //! \copydoc Dumux::TwoPTwoCFluidState::massFraction() const Scalar massFraction(int phaseIdx, int compIdx) const { return fluidState_->massFraction(phaseIdx, compIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::moleFraction() + //! \copydoc Dumux::TwoPTwoCFluidState::moleFraction() const Scalar moleFraction(int phaseIdx, int compIdx) const { return fluidState_->moleFraction(phaseIdx, compIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::temperature() + //! \copydoc Dumux::TwoPTwoCFluidState::temperature() const Scalar temperature(int phaseIdx) const { return fluidState_->temperature(phaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::phaseMassFraction() + //! \copydoc Dumux::TwoPTwoCFluidState::phaseMassFraction() const Scalar phaseMassFraction(int phaseIdx) const { return fluidState_->phaseMassFraction(phaseIdx); diff --git a/dumux/decoupled/2p2c/cellData2p2cmultiphysics.hh b/dumux/decoupled/2p2c/cellData2p2cmultiphysics.hh index 27004ad40b106b5256712343ac626cb64c59c8ee..0adafe8456a955a599d613ffe1602703d78c3513 100644 --- a/dumux/decoupled/2p2c/cellData2p2cmultiphysics.hh +++ b/dumux/decoupled/2p2c/cellData2p2cmultiphysics.hh @@ -89,7 +89,7 @@ public: /*! \name Acess to primary variables */ //@{ - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::pressure() + //! \copydoc Dumux::TwoPTwoCFluidState::pressure() Scalar pressure(int phaseIdx) { if(fluidStateType_ == simple) @@ -99,7 +99,7 @@ public: else return this->fluidState_->pressure(phaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::pressure() + //! \copydoc Dumux::TwoPTwoCFluidState::pressure() const Scalar pressure(int phaseIdx) const { if(fluidStateType_ == simple) @@ -152,7 +152,7 @@ public: /*! \name Acess to secondary variables */ //@{ - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::setSaturation() + //! \copydoc Dumux::TwoPTwoCFluidState::setSaturation() void setSaturation(int phaseIdx, Scalar value) { if(fluidStateType_ == simple) @@ -163,7 +163,7 @@ public: else manipulateFluidState().setSaturation(phaseIdx, value); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::saturation() + //! \copydoc Dumux::TwoPTwoCFluidState::saturation() const Scalar saturation(int phaseIdx) const { if(fluidStateType_ == simple) @@ -174,7 +174,7 @@ public: return this->fluidState_->saturation(phaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::setViscosity() + //! \copydoc Dumux::TwoPTwoCFluidState::setViscosity() void setViscosity(int phaseIdx, Scalar value) { if(fluidStateType_ == simple) @@ -185,7 +185,7 @@ public: else manipulateFluidState().setViscosity(phaseIdx, value); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::viscosity() + //! \copydoc Dumux::TwoPTwoCFluidState::viscosity() const Scalar viscosity(int phaseIdx) const { if(fluidStateType_ == simple) @@ -199,7 +199,7 @@ public: } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::capillaryPressure() + //! \copydoc Dumux::TwoPTwoCFluidState::capillaryPressure() const Scalar capillaryPressure() const { if(fluidStateType_ == simple) @@ -208,7 +208,7 @@ public: return this->fluidState_->pressure(nPhaseIdx) - this->fluidState_->pressure(wPhaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::density() + //! \copydoc Dumux::TwoPTwoCFluidState::density() const Scalar density(int phaseIdx) const { if(fluidStateType_ == simple) @@ -219,7 +219,7 @@ public: return this->fluidState_->density(phaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::massFraction() + //! \copydoc Dumux::TwoPTwoCFluidState::massFraction() const Scalar massFraction(int phaseIdx, int compIdx) const { if(fluidStateType_ == simple) @@ -230,7 +230,7 @@ public: return this->fluidState_->massFraction(phaseIdx, compIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::moleFraction() + //! \copydoc Dumux::TwoPTwoCFluidState::moleFraction() const Scalar moleFraction(int phaseIdx, int compIdx) const { if(fluidStateType_ == simple) @@ -240,7 +240,7 @@ public: else return this->fluidState_->moleFraction(phaseIdx, compIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::temperature() + //! \copydoc Dumux::TwoPTwoCFluidState::temperature() const Scalar temperature(int phaseIdx) const { if(fluidStateType_ == simple) @@ -251,7 +251,7 @@ public: return this->fluidState_->temperature(phaseIdx); } - //! \copydoc Dumux::DecoupledTwoPTwoCFluidState::phaseMassFraction() + //! \copydoc Dumux::TwoPTwoCFluidState::phaseMassFraction() const Scalar phaseMassFraction(int phaseIdx) const { if(fluidStateType_ == simple) diff --git a/dumux/decoupled/2p2c/fvtransport2p2c.hh b/dumux/decoupled/2p2c/fvtransport2p2c.hh index 01c30333a7126a4ad74a65fa07b6d91ea90a0545..febab01a642e6121cf7d12ff71e650edf83c19d7 100644 --- a/dumux/decoupled/2p2c/fvtransport2p2c.hh +++ b/dumux/decoupled/2p2c/fvtransport2p2c.hh @@ -164,7 +164,13 @@ public: >> totalConcentration_[nCompIdx][globalIdx]; } - //! \copydoc transportedQuantity() + /*! \name Access functions for protected variables */ + //@{ + //! Return the vector of the transported quantity + /*! For an immiscible IMPES scheme, this is the saturation. For compositional simulations, however, + * the total concentration of all components is transported. + * @param transportedQuantity Vector of both transported components + */ void getTransportedQuantity(TransportSolutionType& transportedQuantity) { // resize update vector and set to zero @@ -174,7 +180,14 @@ public: transportedQuantity = totalConcentration_; } - //! \copydoc transportedQuantity() + /*! \name Access functions for protected variables */ + //@{ + //! Return the the total concentration stored in the transport vector + /*! To get real cell values, do not acess this method, but rather + * call the respective function in the cell data object. + * @param compIdx The index of the component + * @param globalIdx The global index of the current cell. + */ Scalar& totalConcentration(int compIdx, int globalIdx) { return totalConcentration_[compIdx][globalIdx][0]; @@ -553,14 +566,18 @@ void FVTransport2P2C<TypeTag>::getFlux(Dune::FieldVector<Scalar, 2>& fluxEntries potential[phaseIdx] * faceArea / volume * harmonicMean(cellDataI.mobility(phaseIdx),cellDataJ.mobility(phaseIdx))/SmobI[phaseIdx]); - //d) output (only for one side) - averagedFaces_++; - #if DUNE_MINIMAL_DEBUG_LEVEL < 3 - // verbose (only for one side) - if(globalIdxI > globalIdxJ) - Dune::dinfo << "harmonicMean flux of phase" << phaseIdx <<" used from cell" << globalIdxI<< " into " << globalIdxJ - << " ; TE upwind I = "<< cellDataI.isUpwindCell(intersection.indexInInside(), contiEqIdx) << " but pot = "<< potential[phaseIdx] << " \n"; - #endif + //d) output + if(!(cellDataI.wasRefined() && cellDataJ.wasRefined() && elementPtrI->father() == neighborPtr->father()) + && globalIdxI > globalIdxJ) //(only for one side) + { + averagedFaces_++; + #if DUNE_MINIMAL_DEBUG_LEVEL < 3 + // verbose (only for one side) + if(globalIdxI > globalIdxJ) + Dune::dinfo << "harmonicMean flux of phase" << phaseIdx <<" used from cell" << globalIdxI<< " into " << globalIdxJ + << " ; TE upwind I = "<< cellDataI.isUpwindCell(intersection.indexInInside(), contiEqIdx) << " but pot = "<< potential[phaseIdx] << " \n"; + #endif + } //e) stop further standard calculations potential[phaseIdx] = 0;