diff --git a/dumux/common/boundarytypes.hh b/dumux/common/boundarytypes.hh index c65f634ca920a530b0faabf622a3591b9265ea9d..cd5a31e5827088277c1165f436bc33e597a11723 100644 --- a/dumux/common/boundarytypes.hh +++ b/dumux/common/boundarytypes.hh @@ -23,6 +23,8 @@ #ifndef BOUNDARY_TYPES_HH #define BOUNDARY_TYPES_HH +#include <dune/common/deprecated.hh> + #include <dumux/common/valgrind.hh> namespace Dumux diff --git a/dumux/common/pointsource.hh b/dumux/common/pointsource.hh index b5cbe73ea6ad944a23d6e7480dd2f5ebb04992df..2afe091b746be3c6d3fae6b7925be63e5a2bb845 100644 --- a/dumux/common/pointsource.hh +++ b/dumux/common/pointsource.hh @@ -26,24 +26,24 @@ #define DUMUX_POINTSOURCE_HH #include <dumux/common/boundingboxtree.hh> +#include <dumux/common/parameters.hh> +#include <dumux/common/propertysystem.hh> namespace Dumux { namespace Properties { - // Property forward declarations -NEW_PROP_TAG(Scalar); +NEW_PROP_TAG(ElementVolumeVariables); +NEW_PROP_TAG(FVElementGeometry); NEW_PROP_TAG(GridView); +NEW_PROP_TAG(ImplicitIsBox); +NEW_PROP_TAG(PointSource); NEW_PROP_TAG(PrimaryVariables); NEW_PROP_TAG(Problem); -NEW_PROP_TAG(FVElementGeometry); -NEW_PROP_TAG(ElementVolumeVariables); -NEW_PROP_TAG(PointSource); -NEW_PROP_TAG(ImplicitIsBox); +NEW_PROP_TAG(Scalar); NEW_PROP_TAG(TimeManager); - } // end namespace Properties // forward declarations diff --git a/dumux/io/cpgridcreator.hh b/dumux/io/cpgridcreator.hh index d05dc637834ceee4d319f3c72e4acb5532709a53..11e7ff92b0fa92e2a004a0bd3bed87b53bcfed55 100644 --- a/dumux/io/cpgridcreator.hh +++ b/dumux/io/cpgridcreator.hh @@ -24,6 +24,7 @@ #ifndef DUMUX_CPGRID_CREATOR_HH #define DUMUX_CPGRID_CREATOR_HH +#if (HAVE_DUNE_CORNERPOINT && HAVE_OPM_PARSER) #include <dune/grid/CpGrid.hpp> #include <opm/parser/eclipse/Parser/Parser.hpp> #include <opm/parser/eclipse/Deck/Deck.hpp> @@ -101,5 +102,6 @@ public: } }; } +#endif // (HAVE_DUNE_CORNERPOINT && HAVE_OPM_PARSER) #endif diff --git a/dumux/multidomain/2cnistokes2p2cni/2p2cnicouplinglocalresidual.hh b/dumux/multidomain/2cnistokes2p2cni/2p2cnicouplinglocalresidual.hh index be851508dd0afca5fd956010104477b86814766d..4d284078cd62593f7cc3223231076cf0bcdbeaff 100644 --- a/dumux/multidomain/2cnistokes2p2cni/2p2cnicouplinglocalresidual.hh +++ b/dumux/multidomain/2cnistokes2p2cni/2p2cnicouplinglocalresidual.hh @@ -27,6 +27,7 @@ #include <dune/common/deprecated.hh> #include <dumux/porousmediumflow/nonisothermal/implicit/localresidual.hh> +#include <dumux/porousmediumflow/2p2c/implicit/indices.hh> #include <dumux/porousmediumflow/2p2c/implicit/properties.hh> namespace Dumux diff --git a/dumux/multidomain/2cstokes2p2c/2p2ccouplinglocalresidual.hh b/dumux/multidomain/2cstokes2p2c/2p2ccouplinglocalresidual.hh index 2ed3755b6082603b38652c3a4f6c8c0d53c2071c..05aba53831658a27845524469e54fa285a854ba6 100644 --- a/dumux/multidomain/2cstokes2p2c/2p2ccouplinglocalresidual.hh +++ b/dumux/multidomain/2cstokes2p2c/2p2ccouplinglocalresidual.hh @@ -26,6 +26,7 @@ #include <dune/common/deprecated.hh> +#include <dumux/porousmediumflow/2p2c/implicit/indices.hh> #include <dumux/porousmediumflow/2p2c/implicit/localresidual.hh> #include <dumux/porousmediumflow/2p2c/implicit/properties.hh> diff --git a/dumux/nonlinear/newtoncontroller.hh b/dumux/nonlinear/newtoncontroller.hh index 1e9ee4f23366efc4918b226f927d379fe8da9fd1..a72471cad8511ac638ddbc0da6cd9c0e47511e1d 100644 --- a/dumux/nonlinear/newtoncontroller.hh +++ b/dumux/nonlinear/newtoncontroller.hh @@ -25,6 +25,7 @@ #ifndef DUMUX_NEWTON_CONTROLLER_HH #define DUMUX_NEWTON_CONTROLLER_HH +#include <dumux/common/basicproperties.hh> #include <dumux/common/propertysystem.hh> #include <dumux/common/exceptions.hh> #include <dumux/common/math.hh> @@ -32,6 +33,7 @@ #include <dumux/linear/seqsolverbackend.hh> #include "newtonconvergencewriter.hh" +#include "newtonmethod.hh" namespace Dumux { @@ -69,6 +71,11 @@ NEW_PROP_TAG(NewtonWriteConvergence); //! if the current solution deviates too much from the evaluation point NEW_PROP_TAG(ImplicitEnablePartialReassemble); +//! Specify whether the jacobian matrix of the last iteration of a +//! time step should be re-used as the jacobian of the first iteration +//! of the next time step. +NEW_PROP_TAG(ImplicitEnableJacobianRecycling); + /*! * \brief Specifies whether the update should be done using the line search * method instead of the plain Newton method. diff --git a/dumux/nonlinear/newtonconvergencewriter.hh b/dumux/nonlinear/newtonconvergencewriter.hh index 224539f2c8cdcd8c09755a7307868df2d2af22a6..9517d365b7ca6a28ec2b3dd619e118a0a7a08548 100644 --- a/dumux/nonlinear/newtonconvergencewriter.hh +++ b/dumux/nonlinear/newtonconvergencewriter.hh @@ -25,10 +25,18 @@ #ifndef DUMUX_NEWTON_CONVERGENCE_WRITER_HH #define DUMUX_NEWTON_CONVERGENCE_WRITER_HH +#include <dumux/common/basicproperties.hh> #include "newtoncontroller.hh" namespace Dumux { + +namespace Properties +{ +NEW_PROP_TAG(NewtonController); +NEW_PROP_TAG(SolutionVector); +} + /*! * \ingroup Newton * \brief Writes the intermediate solutions during diff --git a/dumux/porousmediumflow/1p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh b/dumux/porousmediumflow/1p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh index 15f4a74d66ad0a323c72ee23a533ff0cd1579b22..1d50dc14fd63bbd8d0d1429f8ad7e2f53db06d8f 100644 --- a/dumux/porousmediumflow/1p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh +++ b/dumux/porousmediumflow/1p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh @@ -60,8 +60,8 @@ NEW_TYPE_TAG(FVPressureVelocityOneP, INHERITS_FROM(PressureOneP)); } } -#include "fvvelocity1p.hh" -#include "fvpressurevelocity1p.hh" +#include "velocity.hh" +#include "pressurevelocity.hh" namespace Dumux { diff --git a/dumux/porousmediumflow/2p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh b/dumux/porousmediumflow/2p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh index 7d5ca1e36602920f5a71698a5948ef638431b5e7..0ee673447793f0f1b915f71d53148b87f9260d0d 100644 --- a/dumux/porousmediumflow/2p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh +++ b/dumux/porousmediumflow/2p/sequential/diffusion/cellcentered/pressurevelocityproperties.hh @@ -60,8 +60,8 @@ NEW_TYPE_TAG(FVPressureVelocityTwoP, INHERITS_FROM(PressureTwoP)); } } -#include "fvvelocity2p.hh" -#include "fvpressurevelocity2p.hh" +#include "velocity.hh" +#include "pressurevelocity.hh" namespace Dumux { diff --git a/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh b/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh index 6fc08b9ba642327c88e8fcddc94e34f0a0d369af..42fe8826eda3dd351cf6d14ed66e9cd6339122e0 100644 --- a/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh +++ b/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh @@ -48,11 +48,6 @@ SET_TYPE_PROP(Stokes2cniSubProblem, Problem, Dumux::Stokes2cniSubProblem<TypeTag // Use the Stokes2cniCouplingLocalResidual for the computation of the local residual in the Stokes domain SET_TYPE_PROP(Stokes2cniSubProblem, LocalResidual, StokesncniCouplingLocalResidual<TypeTag>); -// Set the property for the material parameters by extracting it from the material law. -SET_TYPE_PROP(Stokes2cniSubProblem, - MaterialLawParams, - typename GET_PROP_TYPE(TypeTag, MaterialLaw)::Params); - // Used the fluid system from the coupled problem SET_TYPE_PROP(Stokes2cniSubProblem, FluidSystem, diff --git a/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh b/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh index 15f52e7cb0d0b29c3df1578e93f946b9e81a50d3..1ee01339a7702691092a2b16684d525a8ca9fb6b 100644 --- a/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh +++ b/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh @@ -45,11 +45,6 @@ SET_TYPE_PROP(ZeroEq2cniSubProblem, Problem, Dumux::ZeroEq2cniSubProblem<TypeTag // Use the StokesncniCouplingLocalResidual for the computation of the local residual in the ZeroEq domain SET_TYPE_PROP(ZeroEq2cniSubProblem, LocalResidual, StokesncniCouplingLocalResidual<TypeTag>); -// Set the property for the material parameters by extracting it from the material law. -SET_TYPE_PROP(ZeroEq2cniSubProblem, - MaterialLawParams, - typename GET_PROP_TYPE(TypeTag, MaterialLaw)::Params); - // Use the fluid system from the coupled problem SET_TYPE_PROP(ZeroEq2cniSubProblem, FluidSystem, diff --git a/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh b/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh index 9c2d290d7274badb83b3a21e38edae54ce40c7a0..cb9245a02614cb5799363446da4d085dbd6092a8 100644 --- a/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh +++ b/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh @@ -42,11 +42,6 @@ NEW_TYPE_TAG(Stokes2cSubProblem, // Set the problem property SET_TYPE_PROP(Stokes2cSubProblem, Problem, Dumux::Stokes2cSubProblem<TypeTag>); -// Set the property for the material parameters by extracting it from the material law. -SET_TYPE_PROP(Stokes2cSubProblem, - MaterialLawParams, - typename GET_PROP_TYPE(TypeTag, MaterialLaw)::Params); - // Use the local residual extended for the coupling the local residual extended for the coupling SET_TYPE_PROP(Stokes2cSubProblem, LocalResidual, StokesncCouplingLocalResidual<TypeTag>); diff --git a/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh b/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh index 82d4bbb4f651da1db08b01e5a1eac037be0345d0..dcad6889d6ffbbfbd7095923da93974c4046a712 100644 --- a/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh +++ b/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh @@ -42,11 +42,6 @@ NEW_TYPE_TAG(ZeroEq2cSubProblem, // Set the problem property SET_TYPE_PROP(ZeroEq2cSubProblem, Problem, Dumux::ZeroEq2cSubProblem<TypeTag>); -// Set the property for the material parameters by extracting it from the material law. -SET_TYPE_PROP(ZeroEq2cSubProblem, - MaterialLawParams, - typename GET_PROP_TYPE(TypeTag, MaterialLaw)::Params); - // Use the StokencCouplingLocalResidual for the computation of the local residual in the ZeroEq domain SET_TYPE_PROP(ZeroEq2cSubProblem, LocalResidual, StokesncCouplingLocalResidual<TypeTag>); diff --git a/test/porousmediumflow/2p/implicit/cc2pcornerpointproblem.hh b/test/porousmediumflow/2p/implicit/cc2pcornerpointproblem.hh index b69a6f0fd3d69cee5273eda28da26adf526370e9..e84dc1933c0661c9d49e034fa0d9b80d4effe717 100644 --- a/test/porousmediumflow/2p/implicit/cc2pcornerpointproblem.hh +++ b/test/porousmediumflow/2p/implicit/cc2pcornerpointproblem.hh @@ -19,6 +19,7 @@ #ifndef DUMUX_CC2P_CORNERPOINT_PROBLEM_HH #define DUMUX_CC2P_CORNERPOINT_PROBLEM_HH +#if HAVE_DUNE_CORNERPOINT #include <dumux/material/components/simpleh2o.hh> #include <dumux/material/components/dnapl.hh> #include <dumux/porousmediumflow/2p/implicit/model.hh> @@ -340,4 +341,6 @@ private: }; } //end namespace +#endif // HAVE_DUNE_CORNERPOINT + #endif diff --git a/test/porousmediumflow/2p/implicit/test_cc2pcornerpoint.cc b/test/porousmediumflow/2p/implicit/test_cc2pcornerpoint.cc index 38ba04bd0968a60753a027dda7ca0388c1a4786b..54b4b21099adbd61b7c68fd81ccd484b12652853 100644 --- a/test/porousmediumflow/2p/implicit/test_cc2pcornerpoint.cc +++ b/test/porousmediumflow/2p/implicit/test_cc2pcornerpoint.cc @@ -23,9 +23,13 @@ * a cornerpoint grid. */ #include <config.h> + +#if (HAVE_DUNE_CORNERPOINT && HAVE_OPM_CORE && HAVE_OPM_PARSER) + #include "cc2pcornerpointproblem.hh" #include <dumux/common/start.hh> #include <opm/core/io/eclipse/EclipseGridInspector.hpp> + /*! * \brief Provides an interface for customizing error messages associated with * reading in parameters. @@ -60,4 +64,11 @@ int main(int argc, char** argv) { typedef TTAG(CC2PCornerPointProblem) TypeTag; return Dumux::start<TypeTag>(argc, argv, usage); +#else +int main(int argc, char** argv) +{ +#warning You need to have dune-cornerpoint, opm-core and opm-parser installed to run this test + std::cerr << "You need to have dune-cornerpoint, opm-core and opm-parser installed to run this test\n"; + return 77; } +#endif diff --git a/tutorial/solutions_decoupled/ex5_tutorialspatialparams_decoupled.hh b/tutorial/solutions_decoupled/ex5_tutorialspatialparams_decoupled.hh index 079c33649ab5112993a23e0788d36da1ffdd14e7..3419ca563fb5d7def1dff3b22463fb925b2ed1c5 100644 --- a/tutorial/solutions_decoupled/ex5_tutorialspatialparams_decoupled.hh +++ b/tutorial/solutions_decoupled/ex5_tutorialspatialparams_decoupled.hh @@ -22,7 +22,7 @@ * \brief spatial parameters for the sequential tutorial */ #ifndef DUMUX_TUTORIAL_EX5_SPATIAL_PARAMS_DECOUPLED_HH -#define DUMUX_TUTORIAL_EX%_SPATIAL_PARAMS_DECOUPLED_HH +#define DUMUX_TUTORIAL_EX5_SPATIAL_PARAMS_DECOUPLED_HH #include <dumux/material/spatialparams/fv.hh>