opm-simulators/examples
Andreas Lauser b93a61fd38 make the property system work with multiple compile units
so far, the linker bailed out due to duplicate definitions of
variables if multiple compile units used the same type tag. This is
problematic if the sources are split into separate compile units and
that use the same type tag; in particular, this applies for
traditional libraries.

Due to various C++ peculiarities, this patch complicates the internal
implementation of the property system quite a bit, but given that the
usage of it (as well as the compile time) stay unchanged, I do not
consider this to be a big problem. Note that the introspection code is
particularly problematic because it needs static initializers that do
not cause the linker to choke in the case of multiple compile units.

Finally, to prevent future regressions, this patch adds a unit test
for the lens problem which uses multiple compile units. (This test is
called lens_immiscible_ecfv_ad_mcu and basically identical to the
existing lens_immiscible_ecfv_ad test and I thus think that it is
pretty unimaginative -- improvement proposals are welcome.)
2017-09-03 15:27:35 +02:00
..
problems remove the Stokes model 2017-07-21 21:38:13 +02:00
art2dgf.cpp move all applications into their top-level directory 2016-11-11 15:04:04 +01:00
co2injection_flash_ecfv.cpp remove the modified version of the linear solvers from dune-istl 2017-01-02 15:45:41 +01:00
co2injection_flash_ni_ecfv.cpp remove the modified version of the linear solvers from dune-istl 2017-01-02 15:45:41 +01:00
co2injection_flash_ni_vcfv.cpp remove the modified version of the linear solvers from dune-istl 2017-01-02 15:45:41 +01:00
co2injection_flash_vcfv.cpp remove the modified version of the linear solvers from dune-istl 2017-01-02 15:45:41 +01:00
co2injection_immiscible_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_immiscible_ni_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_immiscible_ni_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_immiscible_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_ncp_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_ncp_ni_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_ncp_ni_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_ncp_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_pvs_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_pvs_ni_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_pvs_ni_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
co2injection_pvs_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
cuvette_pvs.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
diffusion_flash.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
diffusion_ncp.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
diffusion_pvs.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
finger_immiscible_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
finger_immiscible_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
fracture_discretefracture.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
groundwater_immiscible.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
infiltration_pvs.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
lens_immiscible_ecfv_ad_cu1.cpp make the property system work with multiple compile units 2017-09-03 15:27:35 +02:00
lens_immiscible_ecfv_ad_cu2.cpp make the property system work with multiple compile units 2017-09-03 15:27:35 +02:00
lens_immiscible_ecfv_ad_main.cpp make the property system work with multiple compile units 2017-09-03 15:27:35 +02:00
lens_immiscible_ecfv_ad.cpp make the property system work with multiple compile units 2017-09-03 15:27:35 +02:00
lens_immiscible_ecfv_ad.hh make the property system work with multiple compile units 2017-09-03 15:27:35 +02:00
lens_immiscible_vcfv_ad.cpp make the vertex centered FV method work with automatic differentiation 2017-07-21 18:35:08 +02:00
lens_immiscible_vcfv_fd.cpp make the vertex centered FV method work with automatic differentiation 2017-07-21 18:35:08 +02:00
lens_richards_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
lens_richards_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
obstacle_immiscible.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
obstacle_ncp.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
obstacle_pvs.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
outflow_pvs.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
powerinjection_darcy_ad.cpp make the vertex centered FV method work with automatic differentiation 2017-07-21 18:35:08 +02:00
powerinjection_darcy_fd.cpp make the vertex centered FV method work with automatic differentiation 2017-07-21 18:35:08 +02:00
powerinjection_forchheimer_ad.cpp make the vertex centered FV method work with automatic differentiation 2017-07-21 18:35:08 +02:00
powerinjection_forchheimer_fd.cpp make the vertex centered FV method work with automatic differentiation 2017-07-21 18:35:08 +02:00
reservoir_blackoil_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
reservoir_blackoil_vcfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
reservoir_ncp_ecfv.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
reservoir_ncp_vcfv.cpp reservoir_ncp_vcfv: change the epsilon base value for the finite difference method to 1e-11 2016-12-16 21:24:36 +01:00
tutorial1.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00
tutorial1problem.hh fix most pedantic compiler warnings in the basic infrastructure 2016-11-09 14:54:22 +01:00
waterair_pvs_ni.cpp clean up the licensing preable of source files 2016-03-17 13:20:20 +01:00